ARTS
2.4.0(git:4fb77825)
|
An Antenna object used by MCGeneral. More...
#include <mc_antenna.h>
Public Member Functions | |
MCAntenna () | |
void | set_pencil_beam () |
set_pencil_beam More... | |
void | set_gaussian (const Numeric &za_sigma, const Numeric &aa_sigma) |
set_gaussian. More... | |
void | set_gaussian_fwhm (const Numeric &za_fwhm, const Numeric &aa_fwhm) |
set_gaussian_fwhm. More... | |
void | set_lookup (ConstVectorView za_grid, ConstVectorView aa_grid, ConstMatrixView G_lookup) |
set_lookup. More... | |
AntennaType | get_type () const |
AntennaType get_type. More... | |
void | return_los (Numeric &wgt, ConstMatrixView R_return, ConstMatrixView R_enu2ant) const |
return_los More... | |
void | draw_los (VectorView sampled_rte_los, MatrixView R_los, Rng &rng, ConstMatrixView R_ant2enu, ConstVectorView bore_sight_los) const |
draw_los. More... | |
AntennaType | Type () const |
Index | Type (AntennaType x) |
Numeric & | saa () |
Numeric & | sza () |
Vector & | aag () |
Vector & | zag () |
Matrix & | G () |
Static Public Member Functions | |
static bool | validType (AntennaType x) noexcept |
Private Attributes | |
AntennaType | atype |
Numeric | sigma_aa |
Numeric | sigma_za |
Vector | aa_grid |
Vector | za_grid |
Matrix | G_lookup |
An Antenna object used by MCGeneral.
This class provides the means of sampling various types of 2D antenna functions.
Definition at line 51 of file mc_antenna.h.
|
inline |
Definition at line 58 of file mc_antenna.h.
|
inline |
Definition at line 174 of file mc_antenna.h.
References aa_grid.
void MCAntenna::draw_los | ( | VectorView | sampled_rte_los, |
MatrixView | R_los, | ||
Rng & | rng, | ||
ConstMatrixView | R_ant2enu, | ||
ConstVectorView | bore_sight_los | ||
) | const |
draw_los.
Draws a line of sight by sampling the antenna response function.
[out] | sampled_rte_los | The sampled line of sight. |
[out] | R_los | Line-of-sight propagation vector in ENU frame. |
[in] | rng | A random number generator. |
[in] | R_ant2enu | Rotation matrix from antenna frame to ENU frame. |
[in] | bore_sight_los | The bore sight LOS. |
Definition at line 180 of file mc_antenna.cc.
References abs, ANTENNA_TYPE_GAUSSIAN, ANTENNA_TYPE_PENCIL_BEAM, atype, cross3(), DEG2RAD, joker, mult(), RAD2DEG, ran_gaussian(), sigma_aa, sigma_za, and sqrt().
|
inline |
Definition at line 176 of file mc_antenna.h.
References G_lookup.
AntennaType MCAntenna::get_type | ( | ) | const |
AntennaType get_type.
Returns the antenna type.
Definition at line 141 of file mc_antenna.cc.
References atype.
void MCAntenna::return_los | ( | Numeric & | wgt, |
ConstMatrixView | R_return, | ||
ConstMatrixView | R_enu2ant | ||
) | const |
return_los
Returns the normalized Gaussian weight for a photon line of sight relative to the boresight.
Modified 2016-09-07 by ISA to take a rotation matrix instead of boresight los for reasons of computational efficiency.
[out] | wgt | Line-of-sight propagation vector in ENU frame. |
[in] | rte_los | The line-of-sight of incoming photon. |
[in] | bore_sight_los | the bore sight LOS. |
[in] | R_enu2ant | Rotation matrix from ENU frame to antenna frame. |
Definition at line 143 of file mc_antenna.cc.
References ANTENNA_TYPE_GAUSSIAN, ANTENNA_TYPE_PENCIL_BEAM, atype, joker, mult(), RAD2DEG, sigma_aa, and sigma_za.
|
inline |
Definition at line 172 of file mc_antenna.h.
References sigma_aa.
set_gaussian.
Makes the antenna pattern a 2D gaussian specified by za and aa standard deviations. Gives the MCAntenna object a 2D gaussian response function.
[in] | za_sigma | The std. dev. parameter for zenith angle. |
[in] | aa_sigma | The std. dev. parameter for azimuthal angle. |
Definition at line 119 of file mc_antenna.cc.
References ANTENNA_TYPE_GAUSSIAN, atype, sigma_aa, and sigma_za.
set_gaussian_fwhm.
Makes the antenna pattern a 2D gaussian specified by za and aa FWHM. Gives the MCAntenna object a 2D gaussian response function.
[in] | za_fwhm | The full width half maximum zenith angle. |
[in] | aa_fwhm | The full width half maximum azimuthal angle. |
Definition at line 125 of file mc_antenna.cc.
References ANTENNA_TYPE_GAUSSIAN, atype, sigma_aa, and sigma_za.
void MCAntenna::set_lookup | ( | ConstVectorView | za_grid, |
ConstVectorView | aa_grid, | ||
ConstMatrixView | G_lookup | ||
) |
set_lookup.
Makes the antenna pattern use a 2D lookup table to define the antenna response. The lookup antenna type is not yet implemented. *** FIXMEDOC ***
[in] | za_grid_ | zenith angle grid for the antenna response lookup table. |
[in] | aa_grid_ | azimuthal angle grid for the antenna response lookup table. |
[in] | G_lookup_ | the lookup table data. |
Definition at line 132 of file mc_antenna.cc.
References aa_grid, ANTENNA_TYPE_LOOKUP, atype, G_lookup, and za_grid.
void MCAntenna::set_pencil_beam | ( | ) |
set_pencil_beam
Makes the antenna pattern a pencil beam.
Definition at line 117 of file mc_antenna.cc.
References ANTENNA_TYPE_PENCIL_BEAM, and atype.
|
inline |
Definition at line 173 of file mc_antenna.h.
References sigma_za.
|
inline |
Definition at line 165 of file mc_antenna.h.
References atype.
|
inline |
Definition at line 166 of file mc_antenna.h.
References atype, validType(), and ARTS::Var::x().
|
inlinestaticnoexcept |
Definition at line 167 of file mc_antenna.h.
References ANTENNA_TYPE_GAUSSIAN, ANTENNA_TYPE_LOOKUP, ANTENNA_TYPE_PENCIL_BEAM, stdarrayify(), ARTS::Var::x(), and ARTS::Var::y().
Referenced by Type().
|
inline |
Definition at line 175 of file mc_antenna.h.
References za_grid.
|
private |
Definition at line 54 of file mc_antenna.h.
Referenced by aag(), and set_lookup().
|
private |
Definition at line 52 of file mc_antenna.h.
Referenced by draw_los(), get_type(), return_los(), set_gaussian(), set_gaussian_fwhm(), set_lookup(), set_pencil_beam(), and Type().
|
private |
Definition at line 55 of file mc_antenna.h.
Referenced by G(), and set_lookup().
|
private |
Definition at line 53 of file mc_antenna.h.
Referenced by draw_los(), return_los(), saa(), set_gaussian(), and set_gaussian_fwhm().
|
private |
Definition at line 53 of file mc_antenna.h.
Referenced by draw_los(), return_los(), set_gaussian(), set_gaussian_fwhm(), and sza().
|
private |
Definition at line 54 of file mc_antenna.h.
Referenced by set_lookup(), and zag().