thermodynamic_temperature

astropy.units.equivalencies.thermodynamic_temperature(frequency, T_cmb=None)[source]

Defines the conversion between Jy/sr and “thermodynamic temperature”, \(T_{CMB}\), in Kelvins. The thermodynamic temperature is a unit very commonly used in cosmology. See eqn 8 in [1]

\(K_{CMB} \equiv I_\nu / \left(2 k \nu^2 / c^2 f(\nu) \right)\)

with \(f(\nu) = \frac{ x^2 e^x}{(e^x - 1 )^2}\) where \(x = h \nu / k T\)

Parameters
frequencyQuantity

The observed spectral equivalent Unit (e.g., frequency or wavelength). Must have spectral units.

T_cmbQuantity [:ref: ‘temperature’] or None

The CMB temperature at z=0. If None, the default cosmology will be used to get this temperature. Must have units of temperature.

Notes

For broad band receivers, this conversion do not hold as it highly depends on the frequency

References

1

Planck 2013 results. IX. HFI spectral response https://arxiv.org/abs/1303.5070

Examples

Planck HFI 143 GHz:

>>> from astropy import units as u
>>> from astropy.cosmology import Planck15
>>> freq = 143 * u.GHz
>>> equiv = u.thermodynamic_temperature(freq, Planck15.Tcmb0)
>>> (1. * u.mK).to(u.MJy / u.sr, equivalencies=equiv)  
<Quantity 0.37993172 MJy / sr>