TUV-x
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | List of all members
tuvx_temperature_parameterization_harwood::temperature_parameterization_harwood_t Interface Reference

Parameterization for calculating cross section values TODO: need reference. More...

Inheritance diagram for tuvx_temperature_parameterization_harwood::temperature_parameterization_harwood_t:
tuvx_temperature_parameterization::temperature_parameterization_t

Public Member Functions

procedure calculate
 Calculate the cross section value for a specific temperature and wavelength. More...
 
- Public Member Functions inherited from tuvx_temperature_parameterization::temperature_parameterization_t
procedure merge_wavelength_grids
 Merges NetCDF wavelength grid with parameterization grid.
 
procedure calculate => calculate
 Calculate the cross section value for a specific temperature and wavelength. More...
 
procedure pack_size => pack_size
 Returns the number of bytes required to pack the parameterization onto a character buffer. More...
 
procedure mpi_pack => mpi_pack
 Packs the parameterization onto a character buffer. More...
 
procedure mpi_unpack => mpi_unpack
 Unpacks the parameterization from a character buffer. More...
 

Private Member Functions

type(temperature_parameterization_harwood_t) function constructor (config, wavelengths)
 Constructs a Harwood (TODO: need ref) temperature-based parameterization. More...
 

Additional Inherited Members

- Public Attributes inherited from tuvx_temperature_parameterization::temperature_parameterization_t
integer n_sets_ = 0
 
real(kind=dk), dimension(:), allocatable aa_
 
real(kind=dk), dimension(:), allocatable bb_
 
real(kind=dk), dimension(:), allocatable lp_
 
real(kind=dk), dimension(:), allocatable wavelengths_
 Wavelengths in parameterization range [nm].
 
real(kind=dk) base_temperature_ = 0.0_dk
 Base temperature [K] to use in calculations.
 
real(kind=dk) base_wavelength_ = 0.0_dk
 Base wavelength [nm] to use in calcuations.
 
logical is_base_10_ = .true.
 Flag indicating whether cross section algorithm is base 10 (true) or base e (false)
 
logical is_temperature_inverted_ = .false.
 Flad indicating whether to subtract base temperature from actual temperature (false) or to subtract actual temperature from base temperature (true)
 
real(kind=dk) min_wavelength_ = 0.0_dk
 Minimum wavelength [nm] to calculate values for.
 
real(kind=dk) max_wavelength_ = 0.0_dk
 Maximum wavelength [nm] to calculate values for.
 
integer min_wavelength_index_ = 0
 Index of minimum wavelength [nm] to calculate values for.
 
integer max_wavelength_index_ = 0
 Index of maximum wavelength to calculate values for.
 
type(temperature_range_t), dimension(:), allocatable ranges_
 Temperature ranges used in parameterization.
 

Detailed Description

Parameterization for calculating cross section values TODO: need reference.

Constructor for temperature_parameterization_harwood_t.

Cross section elements are calculated as:

\[
 \sigma(T,\lambda_i) = 10^{\‍(aa_i + bb_i / T\‍)}
 \]

where aa_i and bb_i are constants, T is temperature [K], and $\lambda_i$ is wavelength [nm]. The size of the aa and bb arrays must equal the number of wavelengths in the parameterization range.

Member Function/Subroutine Documentation

◆ calculate()

procedure tuvx_temperature_parameterization_harwood::temperature_parameterization_harwood_t::calculate

Calculate the cross section value for a specific temperature and wavelength.

Implements tuvx_temperature_parameterization::temperature_parameterization_t.

◆ constructor()

type(temperature_parameterization_harwood_t) function tuvx_temperature_parameterization_harwood::temperature_parameterization_harwood_t::constructor ( type(config_t), intent(inout)  config,
class(grid_t), intent(in)  wavelengths 
)
private

Constructs a Harwood (TODO: need ref) temperature-based parameterization.

Implements tuvx_temperature_parameterization::temperature_parameterization_t.


The documentation for this interface was generated from the following file: