Class flt

Class Documentation

class flt

Class to store filter information. A filter class instance is in essence a vector of oneElLambda elements.

Public Functions

inline flt()
inline flt(const int k, string cname, const int transt, const int calibt)

generic constructor, with all internals set to unphysical defaults

Parameters:
  • k – index of the filter in the list of filters

  • cname – filter filename

  • transt – configuration keyword TRANS_TYPE

  • calibt – configuration keyword FILTER_CALIB

inline flt(const int k, ifstream &cname, const int transt, const int calibt)

generic constructor, with all internals set to unphysical defaults

Parameters:
  • k – index of the filter in the list of filters

  • filestream – filter file stream

  • transt – configuration keyword TRANS_TYPE

  • calibt – configuration keyword FILTER_CALIB

inline flt(const double lmin, const double lmax, const int nsteps)

constructor for a heavyside filter.

The filter transmission is 1 between lmin and lmax, and 0 outside (a value of O is added at lmin-1 and lmax+1 to enforce it).

Parameters:
  • lmin – lower bound of the Heaviside function

  • lmax – upper bound of the Heaviside function

  • nsteps – number of steps in \(\lambda\) from lmin to lmax

inline ~flt()
void read(const string &fltFile)

read a filter ascii file and store its content as a vector of oneElLambda elements

void read(ifstream &sfiltIn)

build the vector of oneElLambda elements out of a filter stream directly

double lambdaMean()

Mean wavelength of the filter: \(\lambda_{mean} = \frac{\int T(\lambda)\lambda d\lambda}{\int T(\lambda) d\lambda}\).

double width()

full width at half maximum

double peak()

maximum transmission value of the filter

double lambdaEff()

effective wavelength based on the Vega spectrum as calibration SED.

The Vega spectrum \(V(\lambda)\) is included in LePhare ($LEPHAREDIR/vega/VegaLCB.sed). Then \(\lambda_{eff} = \frac{\int V(\lambda)\, T(\lambda)\, \lambda\, d\lambda}{\int V(\lambda)\, T(\lambda)\, d\lambda}\).

double lambdaEff2()

effective wavelength based on a specific calibration SED.

If \(C(\lambda)\) is a specific calibration SED defined by keyword FILTER_CALIB (see SED::generateCalib), then \(\lambda_{eff2} = \frac{\int C(\lambda)\, T(\lambda)\, \lambda\, d\lambda}{\int C(\lambda)\, T(\lambda)\, d\lambda}\).

double magsun()

absolute magnitude of the Sun

double vega()

Vega magnitude in this filter: \(mag(Vega) = 2.5\cdot\log10\left(\frac{\int Vega(\lambda)\, T(\lambda)\, d\lambda}{\int T(\lambda)\, d\lambda}\right)\) where \(Vega(\lambda)\) is the Vega SED.

double fcorrec()

compute the flux correction based on keyword FILTER_CALIB

\(fcorrec = B_0\cdot\lambda_{eff2}^2\cdot\frac{\int T(\lambda)\,\lambda^{-2}\, d\lambda}{\int C(\lambda)\, T(\lambda)\, d\lambda}\), where \(C(\lambda)\) is a calibration function defined through the value of FILTER_CALIB (see SED::generateCalib), \(\lambda_{eff2}\) is the alternative effective wavelength using \(C(\lambda)\) (see flt::lambdaEff2), and

  • FILTER_CALIB=0 \(B_0 = \lambda_{eff}^{-2}\)

  • FILTER_CALIB=1 \(B_0 = \lambda_{eff}^{-1}\)

  • FILTER_CALIB=2 \(B_0 = \lambda_{eff}^{-3}\)

  • FILTER_CALIB=3 \(B_0 = Blackbody(10000K,\lambda_{eff})\)

  • FILTER_CALIB=4 \(B_0 = Blackbody(10000K,\lambda_{eff})\)

  • FILTER_CALIB=5 \(B_0 = \lambda_{eff}^{-3}\)

Pour les cas 4 et 5, \(\lambda_{eff2}\) est évaluée en utilisant le calibrator \(C(\lambda)\) sélectionné par FILTER_CALIB=1.

double abcorr()

AB-Vega correction \( = -2.5\,\log10\left(\frac{\int F(Vega)\,T(\lambda)\,d\lambda}{\int T(\lambda)\, c\lambda^{-2}\,d\lambda}\right)\)

double tgcorr()

Thuan Gunn correction \( = 2.5\,\log10\left(\frac{\int F(BD+17o4708)\,T(\lambda)\,d\lambda}{\int Vega(\lambda)\, T(\lambda)\, d\lambda}\right) + 9.5 - 0.03\)

inline double lmin() const

lowest stored lambda value

inline double lmax() const

highest stored lambda value

void compute_all()

Public Members

vector<oneElLambda> lamb_trans
int id
string name
int transtyp
int calibtyp
double leff
double lmean
double dwidth
double ab
double tg
double veg
double msun
double fcorr
double tpeak