Class PhotonField
Defined in File PhotonBackground.h
Inheritance Relationships
Base Type
public Referenced
(Class Referenced)
Derived Types
public BlackbodyPhotonField
(Class BlackbodyPhotonField)public TabularPhotonField
(Class TabularPhotonField)
Class Documentation
-
class PhotonField : public Referenced
Abstract base class for photon fields.
Subclassed by BlackbodyPhotonField, TabularPhotonField
Public Functions
-
inline PhotonField()
-
virtual double getPhotonDensity(double ePhoton, double z = 0.) const = 0
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 = 0
-
virtual double getMaximumPhotonEnergy(double z) const = 0
-
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
-
inline PhotonField()