Rayleigh

The rayleigh module contains structures for computing Rayleigh scattering.

class pyrt.rayleigh.RayleighCO2(wavelength, column_density)[source]

A structure to compute CO 2 Rayleigh scattering arrays.

RayleighCO2 creates the optical depth, single scattering albedo, and Legendre coefficient decomposition phase function arrays due to Rayleigh scattering by CO 2 in each of the layers.

Parameters
  • wavelength (numpy.ndarray) – Wavelength at which Rayleigh scattering will be computed.

  • column_density (numpy.ndarray) – Column density in the model layers.

Raises
  • TypeError – Raised if wavelength or column_density is not a numpy.ndarray.

  • ValueError – Raised if any values in wavelength or column_density are unphysical, or if they have incompatible shapes. See the note below for more details.

Return type

None

Notes

In the general case of a hyperspectral imager with MxN pixels and W wavelengths, wavelength can have shape WxMxN. In this case, column_density should have shape ZxMxN, where Z is the number of model layers. The 0 th dimension can have different shapes between the arrays but the subsequent dimensions (if any) should have the same shape.

References

The values used here are from Sneep and Ubachs 2005

Due to a typo in the paper, I changed the coefficient to 10 3 when using equation 13 for computing the index of refraction.

property optical_depth: numpy.ndarray

Get the Rayleigh optical depth.

property phase_function: numpy.ndarray

Get the Legendre decomposition of the phase function.

Notes

The shape of this array is (3, n_layers, (spectral_shape)). The 0 th and 2 nd coefficient along the 0 th axis are 1 and 0.5, respectively.

property single_scattering_albedo: numpy.ndarray

Get the Rayleigh single scattering albedo.

Notes

The shape of this array is (n_layers, (spectral_shape)). It is filled with all 1s.