ARTS 2.5.4 (git: 31ce4f0e)
MCAntenna Struct Reference

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...
 
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...
 

Public Attributes

AntennaType atype {}
 
Numeric sigma_aa {}
 
Numeric sigma_za {}
 
Vector aa_grid
 
Vector za_grid
 
Matrix G_lookup
 

Friends

ostream & operator<< (ostream &os, const MCAntenna &mca)
 

Detailed Description

An Antenna object used by MCGeneral.

This class provides the means of sampling various types of 2D antenna functions.

Definition at line 50 of file mc_antenna.h.

Constructor & Destructor Documentation

◆ MCAntenna()

MCAntenna::MCAntenna ( )
inline

Definition at line 56 of file mc_antenna.h.

Member Function Documentation

◆ draw_los()

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.

Parameters
[out]sampled_rte_losThe sampled line of sight.
[out]R_losLine-of-sight propagation vector in ENU frame.
[in]rngA random number generator.
[in]R_ant2enuRotation matrix from antenna frame to ENU frame.
[in]bore_sight_losThe bore sight LOS.
Author
Cory Davis
Date
2005-12-02

Definition at line 178 of file mc_antenna.cc.

References abs, ANTENNA_TYPE_GAUSSIAN, ANTENNA_TYPE_PENCIL_BEAM, ARTS_USER_ERROR, atype, cross3(), DEG2RAD, joker, mult(), RAD2DEG, ran_gaussian(), sigma_aa, sigma_za, and sqrt().

Referenced by MCGeneral(), and MCRadar().

◆ return_los()

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.

Parameters
[out]wgtLine-of-sight propagation vector in ENU frame.
[in]rte_losThe line-of-sight of incoming photon.
[in]bore_sight_losthe bore sight LOS.
[in]R_enu2antRotation matrix from ENU frame to antenna frame.
Author
Ian S. Adams.
Date
2015-09-09.

Definition at line 143 of file mc_antenna.cc.

References ANTENNA_TYPE_GAUSSIAN, ANTENNA_TYPE_PENCIL_BEAM, ARTS_USER_ERROR, atype, joker, mult(), RAD2DEG, sigma_aa, and sigma_za.

Referenced by MCRadar().

◆ set_gaussian()

void MCAntenna::set_gaussian ( const Numeric za_sigma,
const Numeric aa_sigma 
)

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.

Parameters
[in]za_sigmaThe std. dev. parameter for zenith angle.
[in]aa_sigmaThe std. dev. parameter for azimuthal angle.
Author
Cory Davis
Date
2005-12-02

Definition at line 121 of file mc_antenna.cc.

References ANTENNA_TYPE_GAUSSIAN, atype, sigma_aa, and sigma_za.

Referenced by mc_antennaSetGaussian().

◆ set_gaussian_fwhm()

void MCAntenna::set_gaussian_fwhm ( const Numeric za_fwhm,
const Numeric aa_fwhm 
)

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.

Parameters
[in]za_fwhmThe full width half maximum zenith angle.
[in]aa_fwhmThe full width half maximum azimuthal angle.
Author
Cory Davis
Date
2005-12-02

Definition at line 127 of file mc_antenna.cc.

References ANTENNA_TYPE_GAUSSIAN, atype, sigma_aa, and sigma_za.

Referenced by mc_antennaSetGaussianByFWHM().

◆ set_lookup()

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 ***

Parameters
[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.
Author
Cory Davis
Date
2005-12-02

Definition at line 134 of file mc_antenna.cc.

References aa_grid, ANTENNA_TYPE_LOOKUP, atype, G_lookup, and za_grid.

◆ set_pencil_beam()

void MCAntenna::set_pencil_beam ( )

set_pencil_beam

Makes the antenna pattern a pencil beam.

Definition at line 119 of file mc_antenna.cc.

References ANTENNA_TYPE_PENCIL_BEAM, and atype.

Referenced by iyMC(), and mc_antennaSetPencilBeam().

Friends And Related Function Documentation

◆ operator<<

ostream & operator<< ( ostream &  os,
const MCAntenna mca 
)
friend

Definition at line 243 of file mc_antenna.cc.

Member Data Documentation

◆ aa_grid

Vector MCAntenna::aa_grid

Definition at line 53 of file mc_antenna.h.

Referenced by set_lookup().

◆ atype

AntennaType MCAntenna::atype {}

◆ G_lookup

Matrix MCAntenna::G_lookup

Definition at line 54 of file mc_antenna.h.

Referenced by set_lookup().

◆ sigma_aa

Numeric MCAntenna::sigma_aa {}

Definition at line 52 of file mc_antenna.h.

Referenced by draw_los(), return_los(), set_gaussian(), and set_gaussian_fwhm().

◆ sigma_za

Numeric MCAntenna::sigma_za {}

Definition at line 52 of file mc_antenna.h.

Referenced by draw_los(), return_los(), set_gaussian(), and set_gaussian_fwhm().

◆ za_grid

Vector MCAntenna::za_grid

Definition at line 53 of file mc_antenna.h.

Referenced by set_lookup().


The documentation for this struct was generated from the following files: