Class BlackbodyPhotonField

Inheritance Relationships

Base Type

Derived Type

Class Documentation

class BlackbodyPhotonField : public PhotonField

Photon field decorator for black body photon fields.

Subclassed by CMB

Public Functions

BlackbodyPhotonField(const std::string fieldName, const double blackbodyTemperature)
virtual double getPhotonDensity(double ePhoton, double z = 0.) const

returns comoving photon density [1/m^3]. multiply with (1+z^3) for physical number density.

Parameters:
  • ePhoton – photon energy [J]

  • z – redshift (if redshift dependent, default = 0.)

virtual double getMinimumPhotonEnergy(double z) const
virtual double getMaximumPhotonEnergy(double z) const
void setQuantile(double q)
inline virtual std::string getFieldName() const
inline virtual double getRedshiftScaling(double z) const

returns overall comoving scaling factor (cf. CRPropa3-data/calc_scaling.py)

Parameters:

z – redshift

inline bool hasRedshiftDependence() const
inline void setFieldName(std::string fieldName)
inline size_t addReference() const
inline size_t removeReference() const
inline int removeReferenceNoDelete() const
inline size_t getReferenceCount() const

Protected Attributes

double blackbodyTemperature
double quantile
std::string fieldName
bool isRedshiftDependent
mutable size_t _referenceCount