Class TabularPhotonField
Defined in File PhotonBackground.h
Inheritance Relationships
Base Type
public PhotonField
(Class PhotonField)
Derived Types
public IRB_Dominguez11
(Class IRB_Dominguez11)public IRB_Finke10
(Class IRB_Finke10)public IRB_Finke22
(Class IRB_Finke22)public IRB_Franceschini08
(Class IRB_Franceschini08)public IRB_Gilmore12
(Class IRB_Gilmore12)public IRB_Kneiske04
(Class IRB_Kneiske04)public IRB_Saldana21
(Class IRB_Saldana21)public IRB_Saldana21_lower
(Class IRB_Saldana21_lower)public IRB_Saldana21_upper
(Class IRB_Saldana21_upper)public IRB_Stecker05
(Class IRB_Stecker05)public IRB_Stecker16_lower
(Class IRB_Stecker16_lower)public IRB_Stecker16_upper
(Class IRB_Stecker16_upper)public URB_Fixsen11
(Class URB_Fixsen11)public URB_Nitu21
(Class URB_Nitu21)public URB_Protheroe96
(Class URB_Protheroe96)
Class Documentation
-
class TabularPhotonField : public PhotonField
Photon field decorator for tabulated photon fields.
This class reads photon field data from files; The first file must be a list of photon energies [J], named fieldName_photonEnergy.txt The second file must be a list of comoving photon field densities [1/m^3], named fieldName_photonDensity.txt Optionally, a third file contains redshifts, named fieldName_redshift.txt
Subclassed by IRB_Dominguez11, IRB_Finke10, IRB_Finke22, IRB_Franceschini08, IRB_Gilmore12, IRB_Kneiske04, IRB_Saldana21, IRB_Saldana21_lower, IRB_Saldana21_upper, IRB_Stecker05, IRB_Stecker16_lower, IRB_Stecker16_upper, URB_Fixsen11, URB_Nitu21, URB_Protheroe96
Public Functions
-
TabularPhotonField(const std::string fieldName, const bool isRedshiftDependent = true)
-
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 getRedshiftScaling(double z) const
returns overall comoving scaling factor (cf. CRPropa3-data/calc_scaling.py)
- Parameters:
z – redshift
-
virtual double getMinimumPhotonEnergy(double z) const
-
virtual double getMaximumPhotonEnergy(double z) const
-
inline virtual std::string getFieldName() const
-
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
-
TabularPhotonField(const std::string fieldName, const bool isRedshiftDependent = true)