ARTS 2.5.9 (git: 825fa5f2)
XsecRecord Class Reference

Hitran crosssection class. More...

#include <xsec_fit.h>

Public Member Functions

const Species::Species & Species () const
 Return species index. More...
 
String SpeciesName () const
 Return species name. More...
 
void SetSpecies (const Species::Species species)
 Set species name. More...
 
Index Version () const
 Return species index. More...
 
void SetVersion (Index version)
 Set species name. More...
 
void Extract (VectorView result, const Vector &f_grid, Numeric pressure, Numeric temperature, const Verbosity &verbosity) const
 Calculate hitran cross section data. More...
 
const VectorFitMinPressures () const
 Get mininum pressures from fit. More...
 
const VectorFitMaxPressures () const
 Get maximum pressures from fit. More...
 
const VectorFitMinTemperatures () const
 Get mininum temperatures from fit. More...
 
const VectorFitMaxTemperatures () const
 Get maximum temperatures. More...
 
const ArrayOfGriddedField2FitCoeffs () const
 Get coefficients. More...
 
VectorFitMinPressures ()
 Get mininum pressures from fit. More...
 
VectorFitMaxPressures ()
 Get maximum pressures from fit. More...
 
VectorFitMinTemperatures ()
 Get mininum temperatures from fit. More...
 
VectorFitMaxTemperatures ()
 Get maximum temperatures. More...
 
ArrayOfGriddedField2FitCoeffs ()
 Get coefficients. More...
 

Private Member Functions

void CalcXsec (VectorView &xsec, Index dataset, Numeric pressure, Numeric temperature) const
 Calculate crosssections. More...
 
void RemoveNegativeXsec (VectorView &xsec) const
 Remove negative cross sections and adjust integral. More...
 

Private Attributes

Index mversion {2}
 
Species::Species mspecies
 
Vector mfitminpressures
 
Vector mfitmaxpressures
 
Vector mfitmintemperatures
 
Vector mfitmaxtemperatures
 
ArrayOfGriddedField2 mfitcoeffs
 

Static Private Attributes

static const Index P00 = 0
 
static const Index P10 = 1
 
static const Index P01 = 2
 
static const Index P20 = 3
 

Friends

std::ostream & operator<< (std::ostream &os, const XsecRecord &xd)
 

Detailed Description

Hitran crosssection class.

Stores the coefficients from our model for hitran crosssection data and applies them to calculate the crossections.

Definition at line 43 of file xsec_fit.h.

Member Function Documentation

◆ CalcXsec()

void XsecRecord::CalcXsec ( VectorView xsec,
Index  dataset,
Numeric  pressure,
Numeric  temperature 
) const
private

Calculate crosssections.

Definition at line 176 of file xsec_fit.cc.

References joker, mfitcoeffs, ConstVectorView::nelem(), P00, P01, P10, and P20.

Referenced by Extract().

◆ Extract()

void XsecRecord::Extract ( VectorView  result,
const Vector f_grid,
Numeric  pressure,
Numeric  temperature,
const Verbosity verbosity 
) const

Calculate hitran cross section data.

Calculate crosssections at each frequency for given pressure and temperature.

Parameters
[out]resultCrosssections for given frequency grid.
[in]f_gridFrequency grid.
[in]pressureScalar pressure.
[in]temperatureScalar temperature.
[in]verbosityVerbosity.

Definition at line 52 of file xsec_fit.cc.

References ARTS_ASSERT, CalcXsec(), chk_interpolation_grids(), CREATE_OUTS, ConstVectorView::get_c_array(), gridpos(), interp(), interpweights(), mfitcoeffs, Array< base >::nelem(), ConstVectorView::nelem(), RemoveNegativeXsec(), and ConstVectorView::size().

Referenced by abs_xsec_per_speciesAddXsecFit(), and propmat_clearskyAddXsecFit().

◆ FitCoeffs() [1/2]

ArrayOfGriddedField2 & XsecRecord::FitCoeffs ( )
inline

Get coefficients.

Definition at line 116 of file xsec_fit.h.

References mfitcoeffs.

◆ FitCoeffs() [2/2]

const ArrayOfGriddedField2 & XsecRecord::FitCoeffs ( ) const
inline

Get coefficients.

Definition at line 99 of file xsec_fit.h.

References mfitcoeffs.

Referenced by xml_read_from_stream(), and xml_write_to_stream().

◆ FitMaxPressures() [1/2]

Vector & XsecRecord::FitMaxPressures ( )
inline

Get maximum pressures from fit.

Definition at line 107 of file xsec_fit.h.

References mfitmaxpressures.

◆ FitMaxPressures() [2/2]

const Vector & XsecRecord::FitMaxPressures ( ) const
inline

Get maximum pressures from fit.

Definition at line 84 of file xsec_fit.h.

References mfitmaxpressures.

Referenced by xml_read_from_stream(), and xml_write_to_stream().

◆ FitMaxTemperatures() [1/2]

Vector & XsecRecord::FitMaxTemperatures ( )
inline

Get maximum temperatures.

Definition at line 113 of file xsec_fit.h.

References mfitmaxtemperatures.

◆ FitMaxTemperatures() [2/2]

const Vector & XsecRecord::FitMaxTemperatures ( ) const
inline

Get maximum temperatures.

Definition at line 94 of file xsec_fit.h.

References mfitmaxtemperatures.

Referenced by xml_read_from_stream(), and xml_write_to_stream().

◆ FitMinPressures() [1/2]

Vector & XsecRecord::FitMinPressures ( )
inline

Get mininum pressures from fit.

Definition at line 104 of file xsec_fit.h.

References mfitminpressures.

◆ FitMinPressures() [2/2]

const Vector & XsecRecord::FitMinPressures ( ) const
inline

Get mininum pressures from fit.

Definition at line 79 of file xsec_fit.h.

References mfitminpressures.

Referenced by xml_read_from_stream(), and xml_write_to_stream().

◆ FitMinTemperatures() [1/2]

Vector & XsecRecord::FitMinTemperatures ( )
inline

Get mininum temperatures from fit.

Definition at line 110 of file xsec_fit.h.

References mfitmintemperatures.

◆ FitMinTemperatures() [2/2]

const Vector & XsecRecord::FitMinTemperatures ( ) const
inline

Get mininum temperatures from fit.

Definition at line 89 of file xsec_fit.h.

References mfitmintemperatures.

Referenced by xml_read_from_stream(), and xml_write_to_stream().

◆ RemoveNegativeXsec()

void XsecRecord::RemoveNegativeXsec ( VectorView xsec) const
private

Remove negative cross sections and adjust integral.

Definition at line 205 of file xsec_fit.cc.

Referenced by Extract().

◆ SetSpecies()

void XsecRecord::SetSpecies ( const Species::Species  species)
inline

Set species name.

Definition at line 52 of file xsec_fit.h.

References mspecies.

Referenced by xml_read_from_stream().

◆ SetVersion()

void XsecRecord::SetVersion ( Index  version)

Set species name.

Definition at line 44 of file xsec_fit.cc.

References ARTS_USER_ERROR, and mversion.

Referenced by xml_read_from_stream().

◆ Species()

const Species::Species & XsecRecord::Species ( ) const
inline

Return species index.

Definition at line 46 of file xsec_fit.h.

References mspecies.

◆ SpeciesName()

String XsecRecord::SpeciesName ( ) const

Return species name.

Definition at line 38 of file xsec_fit.cc.

References mspecies.

Referenced by xml_write_to_stream().

◆ Version()

Index XsecRecord::Version ( ) const
inline

Return species index.

Definition at line 55 of file xsec_fit.h.

References mversion.

Referenced by xml_write_to_stream().

Friends And Related Function Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream &  os,
const XsecRecord xd 
)
friend

Definition at line 234 of file xsec_fit.cc.

Member Data Documentation

◆ mfitcoeffs

ArrayOfGriddedField2 XsecRecord::mfitcoeffs
private

Definition at line 152 of file xsec_fit.h.

Referenced by CalcXsec(), Extract(), and FitCoeffs().

◆ mfitmaxpressures

Vector XsecRecord::mfitmaxpressures
private

Definition at line 149 of file xsec_fit.h.

Referenced by FitMaxPressures().

◆ mfitmaxtemperatures

Vector XsecRecord::mfitmaxtemperatures
private

Definition at line 151 of file xsec_fit.h.

Referenced by FitMaxTemperatures().

◆ mfitminpressures

Vector XsecRecord::mfitminpressures
private

Definition at line 148 of file xsec_fit.h.

Referenced by FitMinPressures().

◆ mfitmintemperatures

Vector XsecRecord::mfitmintemperatures
private

Definition at line 150 of file xsec_fit.h.

Referenced by FitMinTemperatures().

◆ mspecies

Species::Species XsecRecord::mspecies
private

Definition at line 146 of file xsec_fit.h.

Referenced by SetSpecies(), Species(), and SpeciesName().

◆ mversion

Index XsecRecord::mversion {2}
private

Definition at line 145 of file xsec_fit.h.

Referenced by SetVersion(), and Version().

◆ P00

const Index XsecRecord::P00 = 0
staticprivate

Definition at line 140 of file xsec_fit.h.

Referenced by CalcXsec().

◆ P01

const Index XsecRecord::P01 = 2
staticprivate

Definition at line 142 of file xsec_fit.h.

Referenced by CalcXsec().

◆ P10

const Index XsecRecord::P10 = 1
staticprivate

Definition at line 141 of file xsec_fit.h.

Referenced by CalcXsec().

◆ P20

const Index XsecRecord::P20 = 3
staticprivate

Definition at line 143 of file xsec_fit.h.

Referenced by CalcXsec().


The documentation for this class was generated from the following files: