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