Go to the documentation of this file.
75 x = -1 + 2 * rng.
draw();
76 y = -1 + 2 * rng.
draw();
81 while (r2 > 1.0 || r2 == 0);
84 return sigma * y * sqrt (-2.0 * log (r2) / r2);
175 sampled_rte_los=bore_sight_los;
180 if ( sampled_rte_los[1]>180 )
182 sampled_rte_los[1]-=360;
192 os <<
"invalid Antenna type.";
193 throw runtime_error( os.str() );
200 os <<
"MCAntenna: Output operator not implemented";
Numeric ran_gaussian(Rng &rng, const Numeric sigma)
ran_gaussian
@ ANTENNA_TYPE_PENCIL_BEAM
An Antenna object used by MCGeneral.
void set_gaussian_fwhm(const Numeric &za_fwhm, const Numeric &aa_fwhm)
makes the antenna pattern a 2D gaussian specified by za and aa FWHM
AntennaType get_type(void) const
returns the antenna type
ostream & operator<<(ostream &os, const MCAntenna &)
void draw_los(VectorView &sampled_rte_los, Rng &rng, ConstVectorView bore_sight_los) const
draws a line of sight by sampling the antenna response function
NUMERIC Numeric
The type to use for all floating point numbers.
Workspace functions for the solution of cloud-box radiative transfer by Monte Carlo methods....
void set_lookup(ConstVectorView &za_grid, ConstVectorView &aa_grid, ConstMatrixView &G_lookup)
makes the antenna pattern use a 2D lookup table to define the antenna response
A constant view of a Matrix.
void set_pencil_beam(void)
makes the antenna pattern a pencil beam
A constant view of a Vector.
void set_gaussian(const Numeric &za_sigma, const Numeric &aa_sigma)
makes the antenna pattern a 2D gaussian specified by za and aa standard deviations