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 with spectral units

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

T_cmbQuantity 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

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>