Class GalSED

Inheritance Relationships

Base Type

Class Documentation

class GalSED : public SED

concrete SED implementation for galaxy objects (object_type GAL)

Public Functions

inline GalSED(SED const &p)

Copy constructor from base class.

inline GalSED(GalSED const &p)

Copy constructor.

GalSED(const string nameC, int nummodC = 0)

Standard constructor.

GalSED(const string nameC, double tauC, double ageC, string formatC, int nummodC, string typeC, int idAgeC)
inline ~GalSED()
virtual void SEDproperties()

Compute some integrals to be stored in the object This computes variables SED::luv, SED::lopt, SED::lnir, and SED::ltir luv, lopt, lnir, are monochromatic equivalent luminosities, for a source at 10 parsecs. As the SED unit is taken as erg/cm2/s/Hz, the monochromatic luminosity is obtained by integrating the SED in an interval [lmin, lmax], divided by (lmax-lmin) and multiplied by \(4\pi(10pc)^2\). Note that given the units of an SED, it is defined as dF/dnu for F the corresponding flux. As a result the integral shows a \(\lambda^2/c\) term so that \(\frac{dF}{d\nu} = \frac{dF}{d\lambda} \frac{\lambda^2}{c}\) can be integrated in \(\lambda\). For the variables computed here, in order to speed computation, \(\lambda^2/c\) is evaluated at the center of the interval and taken out of the integral.

virtual void add_neb_cont()
GalSED generateEmSED(const string &emtype)
void generateEmEmpUV(double MNUV_int, double NUVR)
void generateEmEmpSFR(double MNUV_int, double NUVR)
void generateEmPhys(double zmet, double qi)
void generateEmSpectra(int nstep)
virtual void sumEmLines()
virtual void kcorrec(const vector<double> &magz0)

Compute the k-correction in each filter as : \(k = mag(z) - mag(z=0) - \mu\)

void rescaleEmLines()
void zdepEmLines(int flag)
virtual void calc_ph()

Compute the number flux of photons able to ionize HeII, HeI, H, and H2 For a given SED, this amounts to compute the integral \(\int_0^{w_i} SED(\lambda)\cdot \frac{\lambda}{hc}\,d\lambda\quad,\) where \(w_i\)=54.42, 24.52, 13.60, and 1108.7 A for HeII, HeI, H, and H2 respectively, and where \(hc\) is in ergs.A. This normalization assumes that the SED are provided in args/cm2/s/A. In practice the integral is approximated by : \(\sum_{\lambda_{min}}^{w_k}\frac{SED_{j-1}+SED_j}{2}\cdot(\lambda_j-\lambda_{j-1})\cdot\frac{\lambda_j}{hc}\).

Results are stored in the q_i array member of size 4 of the SED instance.

virtual void writeSED(ofstream &ofs, ofstream &ofsPhys, ofstream &ofsDoc)
virtual void readSEDBin(ifstream &ins)

read the SED library when it is in binary format

void writeMag(bool outasc, ofstream &ofsBin, ofstream &ofsDat, vector<flt> allFilters, string magtyp) const
virtual void readMagBin(ifstream &ins)

clean content of class

inline virtual void clean()

Public Members

vector<double> flEm
string format
double tau
double zmet
double d4000
double fracEm