brightness_temperature¶

astropy.units.equivalencies.
brightness_temperature
(frequency, beam_area=None)[source] [edit on github]¶ Defines the conversion between Jy/sr and “brightness temperature”, \(T_B\), in Kelvins. The brightness temperature is a unit very commonly used in radio astronomy. See, e.g., “Tools of Radio Astronomy” (Wilson 2009) eqn 8.16 and eqn 8.19 (these pages are available on google books).
\(T_B \equiv S_\nu / \left(2 k \nu^2 / c^2 \right)\)
If the input is in Jy/beam or Jy (assuming it came from a single beam), the beam area is essential for this computation: the brightness temperature is inversely proportional to the beam area.
Parameters: frequency :
Quantity
with spectral unitsThe observed
spectral
equivalentUnit
(e.g., frequency or wavelength). The variable is named ‘frequency’ because it is more commonly used in radio astronomy. BACKWARD COMPATIBILITY NOTE: previous versions of the brightness temperature equivalency used the keyworddisp
, which is no longer supported.beam_area : angular area equivalent
Beam area in angular units, i.e. steradian equivalent
Examples
Arecibo Cband beam:
>>> import numpy as np >>> from astropy import units as u >>> beam_sigma = 50*u.arcsec >>> beam_area = 2*np.pi*(beam_sigma)**2 >>> freq = 5*u.GHz >>> equiv = u.brightness_temperature(freq) >>> (1*u.Jy/beam_area).to(u.K, equivalencies=equiv) <Quantity 3.526295144567176 K>
VLA synthetic beam:
>>> bmaj = 15*u.arcsec >>> bmin = 15*u.arcsec >>> fwhm_to_sigma = 1./(8*np.log(2))**0.5 >>> beam_area = 2.*np.pi*(bmaj*bmin*fwhm_to_sigma**2) >>> freq = 5*u.GHz >>> equiv = u.brightness_temperature(freq) >>> (u.Jy/beam_area).to(u.K, equivalencies=equiv) <Quantity 217.2658703625732 K>
Any generic surface brightness:
>>> surf_brightness = 1e6*u.MJy/u.sr >>> surf_brightness.to(u.K, equivalencies=u.brightness_temperature(500*u.GHz)) <Quantity 130.1931904778803 K>