Package cosmolopy :: Module luminosityfunction :: Class BrokenPowerlawSED

Class BrokenPowerlawSED

source code

object --+
         |
        BrokenPowerlawSED

Define an SED with a break at 912 Angstroms and different slopes above and below the break.
Instance Methods
 
lambdanu(self, wavelength)
Convert between wavelength (Ang) and frequency (Hz) or vice-versa.
source code
 
luminosity_wavelength(wavelength0, wavelength1)
Normalized luminosity in the defined band.
source code
 
photonRate_wavelength(self, wavelength0, wavelength1)
Normalized photon emission rate in the band between wavelength0 and wavelength1.
source code
 
__init__(self, s_ion=-3.0, s_red=0.0, break_factor=6.0)
Return a model SED for a galaxy.
source code
 
__call__(self, nu)
The spectrum at the given frequency/frequencies.
source code
 
iPhotonRateRatio(self, wavelength=1500.0)
The ratio of ionizing photon emission rate to luminosity.
source code

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__, __subclasshook__

Class Variables
  planck_erg_s = 6.6260755e-27
Properties

Inherited from object: __class__

Method Details

luminosity_wavelength(wavelength0, wavelength1)

source code 

Normalized luminosity in the defined band.

wavelength0 and wavelength1 in Angstroms.

This is the fraction of total luminosity in the band. Multiply the result by the total luminosity (energy per second) to get physical units.

photonRate_wavelength(self, wavelength0, wavelength1)

source code 

Normalized photon emission rate in the band between wavelength0 and wavelength1.

Units are erg^-1 (which could also be expressed as s^-1 per (erg/s)).

Multiply the result by the total luminosity (in ergs per unit time), to get the actual photon emission rate.

Example

To get the ionizing photon emission rate (per unit luminosity): >>> BrokenPowerlawSED().photonRate_wavelength(0., 912.) 3272819078.0292048

__init__(self, s_ion=-3.0, s_red=0.0, break_factor=6.0)
(Constructor)

source code 

Return a model SED for a galaxy.

Parameters

s_ion:
spectral index (f_nu ~ nu^s_ion) at lambda < 912 Ang
s_red:
spectral index (f_nu ~ nu^s_red) at lambda > 912 Ang

Notes

Bolton and Haehnelt (2007MNRAS.382..325B) use an SED with

eps_nu ~ v^0 for 912 < lambda < 3000 Ang.
~ v^-3 for labmda < 912 Ang.

'with an additional break in the spectrum at the Lyman limit'

eps_L = eps(1500)/6
Overrides: object.__init__

__call__(self, nu)
(Call operator)

source code 

The spectrum at the given frequency/frequencies.

Multiply by the total luminosity to get the luminosity per unit frequency.

Units are (fraction of total luminosity) per Hz.

iPhotonRateRatio(self, wavelength=1500.0)

source code 

The ratio of ionizing photon emission rate to luminosity.

Paramters

lambda:
wavelength in Angstroms

Returns

The ratio of ionizing photon emission rate to luminosity at the given wavelength Q/L_nu(lambda) in units of photons s^-1 (erg s^-1 Hz^-1)^-1.

Notes

While this function takes an argument in angstroms, the ratio is calculated using the luminosity per unit frequence, so as to be easily comensurate with luminosities inferred from AB magnitudes.