Class PiZeroAbsorptionIntegrator¶
- Defined in File PiZeroAbsorptionIntegrator.h
Inheritance Relationships¶
Base Type¶
- public IntegratorTemplate< QDiffIntensity, QEnergy >(Template Class IntegratorTemplate)
Class Documentation¶
- 
class PiZeroAbsorptionIntegrator: public IntegratorTemplate<QDiffIntensity, QEnergy>¶
- 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 - 
~PiZeroAbsorptionIntegrator()¶
 - 
void setEnergy(const QEnergy &Egamma)
 - 
QEnergy getEnergy() const
 - 
QPDensity densityProfile(const Vector3QLength &pos) const¶
 - 
QDiffIntensity 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) \]
 - 
QDiffIntensity integrateOverLOS(const QDirection &dir, const QEnergy&) const¶
- Additionally, for a frequency or energy dependent integrals one should implement the following method too. 
 - 
QPiZeroIntegral integrateOverEnergy(const Vector3QLength &pos, const QEnergy &Egamma) const
 - 
QInverseLength integrateOverPhotonEnergy(const Vector3QLength &pos, const QEnergy &Egamma) const¶
 - 
void setupCacheTable(int N_x, int N_y, int N_z)
- Caching helpers 
 - 
void initCacheTable()
 - 
std::string getDescription() const
- Get Description of the integrator 
 - 
void setDescription(const std::string &description)
- Set Description of the integrator 
 - 
void setSkymapParameter(const QEnergy &p)¶
- Setter for the skymap parameter (requires for the cacheTable, if enabled, to be re-initialized) 
 - 
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) 
 - 
bool isCacheTableEnabled() const
 - 
bool isCacheTableInitialized() const
 - 
virtual tLOSProfile getLOSProfile(const QDirection &dir, int Nsteps) const
 - 
virtual tLOSProfile getLOSProfile(const QDirection &dir, const QEnergy&, int Nsteps) const¶
 - Protected Attributes - 
Vector3QLength positionSun
 - 
QEnergy skymapParameter
 - 
bool cacheEnabled
 - 
bool cacheTableInitialized
 - 
std::string description
 
- 
typedef std::pair<std::vector<QLength>, std::vector<double>>