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

frequency : Quantity with spectral units

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

T_cmb : Quantity with temperature units or None

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

Notes

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

References

R121

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>