synthesizer.emission_models.generators.dust.greybody

A submodule defining greybody dust emission generators.

Classes

class synthesizer.emission_models.generators.dust.greybody.Greybody(temperature, emissivity=1.5, optically_thin=True, lam_0=unyt_quantity(100., 'μm'), do_cmb_heating=False, intrinsic=None, attenuated=None, scaler=None)[source]

A class to generate a greybody emission spectrum.

This can be used to generate standalone normalised greybody spectra, or it can be used to generate scaled greybody spectra by providing either a scaler EmissionModel or an intrinsic/attenuated EmissionModel pair to scale the greybody spectrum accordingly. For more details see the base DustEmission parent class.

temperature

The temperature of the greybody.

Type:

unyt_quantity

temperature_z

The temperature of the greybody at redshift z, accounting for CMB heating. Stores the last used temperature (important when used with emitter temperatures).

Type:

unyt_quantity

emissivity

The emissivity of the dust (dimensionless).

Type:

float

cmb_factor

The multiplicative factor to account for CMB heating at high-redshift.

Type:

float

optically_thin

If dust is optically thin?

Type:

bool

lam_0

Wavelength (in um) where the dust optical depth is unity.

Type:

unyt_quantity

get_spectra(lams, redshift=0)[source]

Generate dust emission spectra for given wavelength grid.

This will return the scaling free spectra for a given wavelength grid. It will not consider any emitter or model, so the temperature must have been provided directly to the class.

Parameters:
  • lams (unyt_array) – The wavelength grid on which to generate the spectra.

  • redshift (float) – The redshift at which to calculate the CMB heating.

Returns:

The generated dust emission SED.

Return type:

Sed