Class FreeFreeIntegrator¶
- Defined in File FreeFreeIntegrator.h
Inheritance Relationships¶
Base Type¶
- public IntegratorTemplate< QTemperature, QFrequency >(Template Class IntegratorTemplate)
Class Documentation¶
- 
class FreeFreeIntegrator: public IntegratorTemplate<QTemperature, QFrequency>¶
- Public Types - 
typedef std::pair<std::vector<QLength>, std::vector<double>> tLOSProfile
- Get the line of sight profile (integrand of integrateOverLOS) of a direction where N is equidistant number of steps from the Sun’s position to the galactic border 
 - Public Functions - 
~FreeFreeIntegrator()¶
 - 
void setFrequency(const QFrequency &freq)¶
 - 
QFrequency getFrequency() const¶
 - 
QTemperature integrateOverLOS(const QDirection &dir) const
- Every instantiation/derived class must implement this method which represents an integral over the line of sight of an accumulated quantity \( f(s)\) for a given units::QDirection - dir. When multiplied with units::QLength gives the pixel type,- QPXL\[ I(\mathrm{dir}) \sim \int_0^\infty \mathrm{d}s f(s) \]
 - 
QTemperature integrateOverLOS(const QDirection &dir, const QFrequency&) const¶
- Additionally, for a frequency or energy dependent integrals one should implement the following method too. 
 - 
QNumber gauntFactor(const QFrequency &freq, const QTemperature &T, int Z) const¶
 - 
QEmissivity spectralEmissivityExplicit(const QPDensity &N, const QPDensity &N_e, const QFrequency &freq, const QTemperature &T, int Z) const¶
 - 
QEmissivity spectralEmissivity(const Vector3QLength &pos, const QFrequency &freq) const¶
 - 
QInverseLength absorptionCoefficient(const Vector3QLength &pos, const QFrequency &freq) const¶
 - 
std::string getDescription() const
- Get Description of the integrator 
 - 
void setDescription(const std::string &description)
- Set Description of the integrator 
 - 
void setSkymapParameter(const QFrequency &p)¶
- Setter for the skymap parameter (requires for the cacheTable, if enabled, to be re-initialized) 
 - 
QFrequency setSkymapParameter() const¶
- Getter for the skymap parameter 
 - 
void setSunPosition(const Vector3QLength &pos)
- Set the position of the Sun in the galaxy as a vector (x, y, z) from which the LOS integration starts, default: (8.5_kpc, 0, 0) 
 - 
Vector3QLength getSunPosition() const
- Get the position of the Sun in the galaxy as a vector (x, y, z) 
 - 
QLength getMaxDistance(const QDirection &direction) const
- Wrapper within the class for distanceToGalBorder(positionSun, direction) becomes getMaxDistance(direction) 
 - 
virtual void setupCacheTable(int N_x, int N_y, int N_z)
- Caching helpers 
 - 
virtual void initCacheTable()
 - 
bool isCacheTableEnabled() const
 - 
bool isCacheTableInitialized() const
 - 
virtual tLOSProfile getLOSProfile(const QDirection &dir, int Nsteps) const
 - 
virtual tLOSProfile getLOSProfile(const QDirection &dir, const QFrequency&, int Nsteps) const¶
 - Protected Attributes - 
Vector3QLength positionSun
 - 
QFrequency skymapParameter
 - 
bool cacheEnabled
 - 
bool cacheTableInitialized
 - 
std::string description
 
- 
typedef std::pair<std::vector<QLength>, std::vector<double>>