Thermal Atmosphere Element Types
The following types can be used to instantiate objects that count as AbstractAtmosphereElement, and thus can be used in e.g. EarthAtmosphere objects. Their role is to signify to the radiative transfer routines that the surface or the atmosphere itself shall emit thermal radiation, based on Planck's law. If the chosen radiative transfer solver is able, it will automatically set the correct options in the radiative transfer interface. At the moment, only the XRTM RT type is capable of using thermal emission. Users have to make sure to set source_thermal in their model options, and only some of XRTM's solvers are able to account for thermal radiation.
For a thermally active atmosphere, the temperature information is taken straight from the .temperature profile of the EarthAtmosphere object. For a thermal surface, the surface temperature is stated in the object itself. To retrieve the surface temperature via a state vector element, see the SurfaceTemperatureSVE state vector element. Retrieving the atmospheric temperature profile is currently possible via the TemperatureOffsetSVE state vector element.
RetrievalToolbox.ThermalAtmosphereIsotropic — Type
Defines an element that represents isotropic thermal emission from the atmosphere itself.
RetrievalToolbox.ThermalSurfaceIsotropic — Type
temperature::Anytemperature_unit::Unitful.Units{U, 𝚯} where U
Defines an element that represents a surface with a finite temperature, defined only by the surface temperature itself. The radiance emission from the surface is isotropoic. Only Kelvin are supported for the temperature unit, using any other temperature unit will throw an error!
For now, this surface temperature is applied scene-wide, so each surface that is coupled to spectral windows, will be considered to have this surface temperature.
Implementation of Planck's law
RetrievalToolbox.Planck_radiance — Method
Planck_radiance(
λ::Unitful.Length,
T::Unitful.Temperature,
rad_unit::Unitful.Units
) -> Unitful quantity converted to `rad_unit`Top-level function to calculate thermal (Planckian blackbody) radiance emission for some wavelength λ and temperature T. Input parameters must be Unitful quantities with associated and correct units.
Only radiance units compatible with either W μm^-1 m^-2 sr^-1 or ph μm^-1 m^-2 s^-1 sr^-1 will work, since the lower-lying function will dispatch to another function that must be compatible with those units.