SatAndLight  2.2.2-hubble
Simulation toolkit for space telescopes
Loading...
Searching...
No Matches
Extinction Class Reference

Model extinction processes. More...

#include <Extinction.h>

Inheritance diagram for Extinction:

Public Member Functions

double GetMeiksin2006 (const double aRedshift, const double aEnergyObs)
 Returns the intergalactic extinction factor predicted by the Meiksin 2006 model.
 
TGraph * GetMeiksin2006 (const double aRedshift, const unsigned int aN, const double aWavelengthObsMin, const double aWavelengthObsMax)
 Returns the intergalactic extinction factor as a function of the wavelength predicted by the Meiksin 2006 model.
 
double GetPei1992 (const double aEnergy, const double aExtinctionV, const string aExtLaw)
 Returns the galactic dust extinction factor predicted by the Pei 1992 model.
 
TGraph * GetScaleFactorPei1992 (const string aExtLaw="MW")
 Returns the extinction scaling factor as a function of the wavelength.
 
double GetSourceExtinction (const double aEnergyObs)
 Returns the overall extinction factor (transmission) for an astrophysical source.
 
void SetSource (const double aRedshift, const double aMwExtinctionV, const double aHostExtinctionV)
 Defines the source properties.
 
Constructors and destructors
 Extinction (void)
 Constructor of the Extinction class.
 
virtual ~Extinction (void)
 Destructor of the Extinction class.
 

Private Member Functions

double Meiksin2006 (const double aWavelengthObs, const double aRedshift)
 Returns the intergalactic extinction factor predicted by the Meiksin 2006 model.
 
double Pei1992 (const double aWavelength, const double aExtinctionV, const string aExtLaw="MW")
 Returns the galatic dust extinction factor predicted by the Pei 1992 model.
 

Private Attributes

TGraph * G_LMC_pei1992
 Pei 1992 extinction model (Large Magellanic Cloud).
 
TGraph * G_MW_pei1992
 Pei 1992 extinction model (Milky Way).
 
TGraph * G_SMC_pei1992
 Pei 1992 extinction model (Small Magellanic Cloud).
 
double src_Ahost_V
 Amount of extinction for the host galaxy in the V band (magnitude).
 
double src_Amw_V
 Amount of extinction for the Milky Way in the V band (magnitude).
 
double src_redshift
 Source redshift.
 

Detailed Description

Model extinction processes.

This class is designed to calculate the extinction factor resulting from multiple processes between an astrophysical source and the observer. Only a fraction of the particle flux from a source is transmitted.

First, the astrophysical source properties must be defined with SetSource(). Then, the extinction factor is calculated with GetSourceExtinction() at a given energy.

Author
Florent Robinet

Constructor & Destructor Documentation

◆ Extinction()

Extinction::Extinction ( void  )

Constructor of the Extinction class.

The Pei 1992 extinction curves are intialized. the source properties are initialized to 0.

◆ ~Extinction()

Extinction::~Extinction ( void  )
virtual

Destructor of the Extinction class.

Member Function Documentation

◆ GetMeiksin2006() [1/2]

double Extinction::GetMeiksin2006 ( const double  aRedshift,
const double  aEnergyObs 
)
inline

Returns the intergalactic extinction factor predicted by the Meiksin 2006 model.

The intergalactic extinction is computed with Meiksin2006() for a given redshift. The user must provide an observed energy in \(keV\).

Parameters
[in]aRedshiftSource redshift.
[in]aEnergyObsObserved energy in \(keV\).

◆ GetMeiksin2006() [2/2]

TGraph * Extinction::GetMeiksin2006 ( const double  aRedshift,
const unsigned int  aN,
const double  aWavelengthObsMin,
const double  aWavelengthObsMax 
)

Returns the intergalactic extinction factor as a function of the wavelength predicted by the Meiksin 2006 model.

The intergalactic extinction is computed with Meiksin2006() for a given redshift. The user must provide a range of wavelengths and a number of points for the graph. The returned TGraph must be deleted by the user.

Parameters
[in]aRedshiftSource redshift.
[in]aNNumber of points in the TGraph.
[in]aWavelengthObsMinMinimum wavelength in the observer reference frame [mm].
[in]aWavelengthObsMaxMaximum wavelength in the observer reference frame [mm].

◆ GetPei1992()

double Extinction::GetPei1992 ( const double  aEnergy,
const double  aExtinctionV,
const string  aExtLaw 
)
inline

Returns the galactic dust extinction factor predicted by the Pei 1992 model.

See Pei1992() for more details.

Parameters
[in]aEnergyEnergy in \(keV\).
[in]aExtinctionVAmount of galactic extinction in the V band: \(A_V^{gal}\).
[in]aExtLawType of extinction law: "MW", "LMC", "SMC", or "MEAN".

◆ GetScaleFactorPei1992()

TGraph * Extinction::GetScaleFactorPei1992 ( const string  aExtLaw = "MW")
inline

Returns the extinction scaling factor as a function of the wavelength.

The extinction scaling factor \(A_\lambda/A_V\) is modeled by Pei: see Pei1992() for more details.

Parameters
[in]aExtLawType of extinction law: "MW", "LMC", or "SMC".
Returns
A copy of the TGraph is returned. The user is in charge of deleting the TGraph object after use. A pointer to NULL is returned if the type of extinction is unknown.

◆ GetSourceExtinction()

double Extinction::GetSourceExtinction ( const double  aEnergyObs)

Returns the overall extinction factor (transmission) for an astrophysical source.

The source properties must be defined first with SetSource(). The overall extinction factor is a number between 0 (fully absorbed) and 1 (fully transparent) which combines 3 contributions:

  • The host galaxy dust reddening (Pei 1992 model)
  • The Milky Way dust extinction (Pei 1992 model)
  • The intergalactic medium transmission (Meiksin 2006)
Parameters
[in]aEnergyObsEnergy in the observer reference frame in \(keV\).
Returns
A copy of the TGraph is returned. The user is in charge of deleting the TGraph object after use. A pointer to NULL is returned if the type of extinction is unknown.

◆ Meiksin2006()

double Extinction::Meiksin2006 ( const double  aWavelengthObs,
const double  aRedshift 
)
private

Returns the intergalactic extinction factor predicted by the Meiksin 2006 model.

The intergalactic extinction curve is modeled in Meiksin 2006 as the sum of three contributions:

  • The optical depth for the Lyman transitions up to n=31: \(\tau_n\)
  • The contribution due to photoelectric absorption from systems optically thin at the Lyman edge: \(\tau_{IGM}\)
  • The contribution from Lyman Limit Systems: \(\tau_{LLS}\)

This function returns the total extinction value: \(\exp(-\sum_n\tau_n-\tau_{IGM}-\tau_{LLS})\).

Intergalactic transmission as modeled by Meiksin.
See also
https://arxiv.org/pdf/astro-ph/0512435
Parameters
[in]aWavelengthObsWavelength in the observer reference frame [mm].
[in]aRedshiftSource redshift.

◆ Pei1992()

double Extinction::Pei1992 ( const double  aWavelength,
const double  aExtinctionV,
const string  aExtLaw = "MW" 
)
private

Returns the galatic dust extinction factor predicted by the Pei 1992 model.

The galatic dust extinction curve is modeled in Pei 1992 for three local galaxies: the Milky Way, the Large Magellanic Cloud and the Small Magellanic Cloud. The extinction coefficient is computed as:

\[ \exp\left(-0.92\times A_V^{gal}\times \frac{A_\lambda}{A_V}\right), \]

where \(A_V^{gal}\) is the galaxy amount of extinction in the V band. The scaling factor \(A_\lambda/A_V\) is modeled by Pei.

Extinction scaling factor as modeled by Pei.
Warning
The extinction model is only valid in a range of wavelength (100-4700 nm). Outside of this range, an extrapolation is performed.
Todo:
What is the 0.92 factor?
See also
https://articles.adsabs.harvard.edu/pdf/1992ApJ...395..130P
Parameters
[in]aWavelengthWavelength [mm].
[in]aExtinctionVAmount of galactic extinction in the V band: \(A_V^{gal}\).
[in]aExtLawType of extinction law: "MW", "LMC", "SMC", or "MEAN".

◆ SetSource()

void Extinction::SetSource ( const double  aRedshift,
const double  aMwExtinctionV,
const double  aHostExtinctionV 
)
inline

Defines the source properties.

The source properties are used to derive the overall extinction factor.

See also
GetSourceExtinction().
Parameters
[in]aRedshiftSource redshift.
[in]aMwExtinctionVAmount of extinction from the Milky Way in the V band: \(A_V^{MW}\).
[in]aHostExtinctionVAmount of extinction from the host galaxy in the V band: \(A_V^{HOST}\).

Member Data Documentation

◆ G_LMC_pei1992

TGraph* Extinction::G_LMC_pei1992
private

Pei 1992 extinction model (Large Magellanic Cloud).

◆ G_MW_pei1992

TGraph* Extinction::G_MW_pei1992
private

Pei 1992 extinction model (Milky Way).

◆ G_SMC_pei1992

TGraph* Extinction::G_SMC_pei1992
private

Pei 1992 extinction model (Small Magellanic Cloud).

◆ src_Ahost_V

double Extinction::src_Ahost_V
private

Amount of extinction for the host galaxy in the V band (magnitude).

◆ src_Amw_V

double Extinction::src_Amw_V
private

Amount of extinction for the Milky Way in the V band (magnitude).

◆ src_redshift

double Extinction::src_redshift
private

Source redshift.


The documentation for this class was generated from the following files: