Class StellarSource

Inheritance Relationships

Base Type

Derived Types

Class Documentation

class StellarSource : public Source

Subclassed by Blackbody, CoehloSpectrum, CustomSpectrum, PhoenixSpectrum

Public Functions

StellarSource(double magnitude, double telescope_area)

Protected Functions

void calc_flux_scale()

Scales the spectral density of the source by converting to photon density and normalizing against integrated photon flux

Spectral density is assumed to be in the units [micro watt] / ([micro meter] * [meter]^2). To convert to photon density we divide the spectral density by the energy in a photon at a specific wavelength (Planck’s Equation). This results in the multiplied factors Source::inten_pho and wavelength which is represented by (a + (i + 0.5) * step). We integrate over all available wavelengths, Source::min_w to Source::max_w, to obtain the photon flux. We then produce a scaling factor Source::s_val for the spectral density by comparing the photon flux to the flux from the star Vega. We then normalize so that our source is at a fixed magnitude Source::mag with respect to Vega.

Protected Attributes

double mag

Source apparent magnitude.

double telescope_area

telescope collecting light area

double v_zp = 3.68E-02

Reference flux obtained from integration of vega over bessel filter (units are microwatts/m^2*micrometer)

double min_w = 0

minimum wavelength recorded for source [micro meters]

double max_w = 10.

maximum wavelength recorded for source [micro meters]