double GetTparallel_polPerpendicular(int i)
Get the parallel transmission coefficient value stored at the specified index.
Definition: screen.cc:253
double CalcXindex(int i)
Calculates the X index of the screen corresponding to the specified counter value.
Definition: screen.cc:88
void SetNvalidPoints(int i)
Sets the total number of points on the screen.
Definition: screen.cc:153
std::vector< double > fVmmhz0
container for vmmhz[0]
Definition: screen.hh:36
std::vector< double > fTransAngles
container for transmission angle
Definition: screen.hh:44
double GetTperpendicular_polParallel(int i)
Get the perpendicular transmission coefficient value stored at the specified index.
Definition: screen.cc:245
void AddVmmhz_freq(double A)
Appends a Vmmhz value to the fVmmhz_freq array.
Definition: screen.cc:115
Position GetCentralPoint()
Gets the position of the screen's central point.
Definition: screen.cc:68
double GetDelay(int i)
Get the delay value stores at the specified index.
Definition: screen.cc:148
double GetWeight(int i)
Gets the weight value at the specified index.
Definition: screen.cc:197
double GetCosineProjectionFactor()
Gets the projection factor.
Definition: screen.cc:47
Vector GetPol(int i)
Gets the polarization vector at the specified index.
Definition: screen.cc:178
void AddTperpendicular_polParallel(double A)
Appends a perpendicular transmission coefficient value to the fTcoeff_perp array. ...
Definition: screen.cc:241
double GetIncidenceAngle(int i)
Get the incidence angle value stored at the specified index.
Definition: screen.cc:213
Vector funit_y
Y unit vector in screen (~ perp. to ground surface, perp. to screen normal)
Definition: screen.hh:30
void AddIncidenceAngle(double A)
Appends an incidence angle value to the fIncAngles array.
Definition: screen.cc:209
Vector fnormal
screen orientation, '+' = pointing back to balloon
Definition: screen.hh:28
std::vector< double > fTcoeff_parl_polperp
transmission coefficients of parallel components for perpendicular polarization
Definition: screen.hh:49
This class represents a three-vector. Operators are overloaded to provide for the familiar operations...
Definition: vector.hh:27
Position GetImpactPt(int i)
Gets the position at the specified index.
Definition: screen.cc:188
std::vector< double > fDelays
container for the relative propagation phase delays for each frequency and screen point; final size w...
Definition: screen.hh:38
Vector funit_x
X unit vector in screen (parallel to ground surface, perp. to screen normal)
Definition: screen.hh:29
void AddTransmissionAngle(double A)
Appends a transmission angle value to the fTransAngles array.
Definition: screen.cc:217
void SetUnitX(Vector a)
Sets an orientation vector of the screen.
Definition: screen.cc:55
std::vector< double > fTcoeff_perp_polparl
transmission coefficients of perpendicular components for parallel polarization
Definition: screen.hh:48
void SetNormal(Vector a)
Sets the screen normal.
Definition: screen.cc:51
double GetWeightNorm()
Gets the weight normalization factor.
Definition: screen.cc:205
double GetVmmhz_freq(int i)
Get the Vmmhz value stored at the specified index.
Definition: screen.cc:121
Vector GetVec2bln(int i)
Gets the to-balloon vector at the specified index.
Definition: screen.cc:168
void AddTparallel_polParallel(double A)
Appends a parallel transmission coefficient value to the fTcoeff_parl array.
Definition: screen.cc:233
Vector GetUnitX()
Gets an orientation vector.
Definition: screen.cc:78
std::vector< double > fIncAngles
container for incidence angles
Definition: screen.hh:43
Vector GetUnitY()
Gets another orientation vector.
Definition: screen.cc:83
void AddImpactPt(Position p)
Appends a vector to the fImpactPt array.
Definition: screen.cc:183
void AddViewangle(double A)
Appends a viewangle value to the fViewangle array.
Definition: screen.cc:134
void AddTparallel_polPerpendicular(double A)
Appends a parallel transmission coefficient value to the fTcoeff_parl array.
Definition: screen.cc:249
double GetTparallel_polParallel(int i)
Get the parallel transmission coefficient value stored at the specified index.
Definition: screen.cc:237
int fNsamples
number of samples in X-direction (and Y-, assuming symmetry)
Definition: screen.hh:32
This class is a 3-vector that represents a position on the Earth's surface.
Definition: position.hh:26
double GetVmmhz0(int i)
Gets the Vmmhz0 value stored at the specified index.
Definition: screen.cc:130
double GetTransmissionAngle(int i)
Get the transmission angle value stored at the specified index.
Definition: screen.cc:221
double fcosineProjectionFactor
cosine projection factor of the screen onto the ground, corrects for the long extension so sampling i...
Definition: screen.hh:26
std::vector< double > fFacetLength
edge length [m] of individual contributing facet
Definition: screen.hh:46
double GetNvalidPoints()
Gets the total number of points.
Definition: screen.cc:158
std::vector< double > fVmmhz_freq
container for the valid screen points giving the frequency dependence magnitude for each point; every...
Definition: screen.hh:35
int fNvalidpoints
total number of points on the screen
Definition: screen.hh:33
Screen(int a)
Creates an instance of a screen.
Definition: screen.cc:8
void SetNsamples(int i)
Sets number of grid divisions for the base screen.
Definition: screen.cc:23
Position GetPosition(int i, int j)
Calculates the physical position of the screen corresponding to the specified counter value...
Definition: screen.cc:98
void AddWeight(double a)
Appends a weight value to the fWeight array.
Definition: screen.cc:193
std::vector< double > fTcoeff_perp_polperp
transmission coefficients of perpendicular components for perpendicular polarization ...
Definition: screen.hh:50
double GetFacetLength(int i)
Get the facet edge length value stored at the specified index.
Definition: screen.cc:229
std::vector< Position > fImpactPt
container of ground impact points
Definition: screen.hh:41
double GetViewangle(int i)
Get the viewangle value stored at the specified index.
Definition: screen.cc:138
void SetEdgeLength(double a)
Sets the physical length of a side of the screen.
Definition: screen.cc:33
std::vector< Vector > fPols
container of transmitted polarizations
Definition: screen.hh:40
std::vector< Vector > fVec2blns
container of 'vector to balloon'
Definition: screen.hh:39
void AddPol(Vector v)
Appends a vector to the fPols array.
Definition: screen.cc:173
void SetCentralPoint(Position a)
Sets the position of the central point of the screen.
Definition: screen.cc:38
void AddFacetLength(double A)
Appends a facet edge length value to the fFacetLength array.
Definition: screen.cc:225
Vector GetNormal()
Gets the screen normal.
Definition: screen.cc:73
void AddVec2bln(Vector v)
Appends a vector to the fVec2blns array.
Definition: screen.cc:163
Position fcentralPoint
coordinates of screen center
Definition: screen.hh:25
void AddDelay(double A)
Appends a delay value to the fDelays array.
Definition: screen.cc:143
double CalcYindex(int i)
Calculates the Y index of the screen corresponding to the specified counter value.
Definition: screen.cc:93
double GetEdgeLength()
Gets the screen length.
Definition: screen.cc:63
std::vector< double > fWeight
container for weight of a screen point ( == area of screen element), normalized when used ...
Definition: screen.hh:42
double GetTperpendicular_polPerpendicular(int i)
Get the perpendicular transmission coefficient value stored at the specified index.
Definition: screen.cc:261
void AddVmmhz0(double A)
Appends a Vmmhz value (for the lowest Anita frequency) to the fVmmhz0 array.
Definition: screen.cc:126
void AddTperpendicular_polPerpendicular(double A)
Appends a perpendicular transmission coefficient value to the fTcoeff_perp array. ...
Definition: screen.cc:257
std::vector< double > fViewangle
Definition: screen.hh:37
std::vector< double > fTcoeff_parl_polparl
transmission coefficients of parallel components for parallel polarization
Definition: screen.hh:47
void SetUnitY(Vector a)
Sets another orientation vector of the screen.
Definition: screen.cc:59
void SetCosineProjectionFactor(double a)
Sets the projection factor of the screen relative to the specular RF exit point.
Definition: screen.cc:42
double fWeightNorm
normalization of the weights == simple weight sum
Definition: screen.hh:45
void SetWeightNorm(double a)
Sets the normalization factor for the weights (so they sum to 1)
Definition: screen.cc:201
int GetNsamples()
Gets number of grid divisions for the base screen.
Definition: screen.cc:28
double fedgeLength
the full length of one side
Definition: screen.hh:24
void ResetParameters()
Resets the following screen parameters (fNvalidpoints,fVmmhz_freq,fVmmhz0,fViewangle,fDelays,fVec2blns,fPols,fImpactPt,fWeight,fWeightNorm)
Definition: screen.cc:265