Convert radiance to brightness temperatureΒΆ

The observed values in the level 1 satellite data products are sometimes in spectral radiance values. This variable transform allows for the values to be converted into brightness temperatures using an input spectral radiance and a choice of frequency, wavenumber or wavelength.

Transform: SatBrightnessTempFromRad

- filter: Variable Transforms
  Transform: SatBrightnessTempFromRad
  transform from:
    name: ObsValue/radiance
    channels: 1-22
  spectral variable:
    name: MetaData/sensorCentralWavenumber
    channels: 1-22
  radiance units: wavenumber

Parameters

  • transform from is a required parameter and is of type ufo::Variable. This type requires a name and usually a list of channels.

  • spectral variable is a required parameter and is of type ufo::Variable. This type requires a name and usually a list of channels.

  • radiance units is a required parameter and takes a string variable which must be sensorCentralWavenumber, sensorCentralWavelength or sensorCentralFrequency. In ufo, wavenumbers are in \(m^{-1}\), wavelengths are in \(\mu m\) and frequencies are in Hz.

  • minimum value is an optional parameter and specifies the minimum tolerable output value. Any values below this are filled with the missing value indicator.

  • maximum value is an optional parameter and specifies the maximum tolerable output value. Any values above this are filled with the missing value indicator.

  • planck1 is a parameter which species the value of of the first planck constant, \(c_1\) in the formula below. The default value is 1.191042972e-16. This option is only included to allow backwards compatibility and is not recommended to use.

  • planck2 is a parameter which species the value of of the second planck constant, \(c_2\) in the formula below. The default value is 1.4387769e-2. This option is only included to allow backwards compatibility and is not recommended to use.

Examples with additional options

The below yaml extract shows how all the filter options can be used:

- filter: Variable Transforms
  Transform: SatBrightnessTempFromRad
  transform from:
    name: ObsValue/radiance
    channels: 1-22
  spectral variable:
    name: MetaData/sensorCentralFrequency
    channels: 1-22
  radiance units: frequency
  minimum value: 150.0
  maximum value: 350.0
  planck1: 1.191042953e-16
  planck2: 1.4387774e-2

Method

The brightness temperature at a given wavenumber (\(T_b(\nu)\)) is derived using the inverse planck formula with the formulation below:

\[T_b(\nu)=\frac{c_2 \nu}{ln(1+\frac{c_1 \nu^3}{I_\nu})}\]
where:
  • \(c_1\) is a pre-computed constant (\(2hc^2 = 1.191042972\times10^{-16}\) \(W / (m^2 sr m^{-4})\))

  • \(c_2\) is a pre-computed constant (\(hc/k = 1.4387769\times10^{-2}\) \(m K\))

  • \(\nu\) is the wavenumber in \(m^{-1}\)

  • \(I(\nu)\) is the radiance.

As shown in the parameters above, there is also the option to provide values for \(c_1\) and \(c_2\). This is to allow backwards compatibility with the values in RTTOV which have rounding errors.