ARTS  2.3.1285(git:92a29ea9-dirty)
lm_hitran_2017 Namespace Reference

Namespaces

 parameters
 

Classes

struct  CommonBlock
 
struct  ConvTPOut
 
struct  EqvLinesOut
 

Enumerations

enum  calctype {
  calctype::FullVP, calctype::FullRosenkranz, calctype::FullW, calctype::SDVP,
  calctype::SDRosenkranz, calctype::SDW, calctype::NoneVP, calctype::NoneRosenkranz,
  calctype::NoneW
}
 
enum  ModeOfLineMixing {
  ModeOfLineMixing::VP, ModeOfLineMixing::VP_Y, ModeOfLineMixing::SDVP, ModeOfLineMixing::SDVP_Y,
  ModeOfLineMixing::FullW, ModeOfLineMixing::VP_W
}
 Class that controls ReadFromLineMixingStream output. More...
 

Functions

Rational toRationalSum (char a, char b=' ')
 
void readlines (CommonBlock &cmn, const String &basedir="data_new/")
 
template<size_t NT>
Numeric atob (const Numeric &aa, const std::array< Numeric, NT > &a, const std::array< Numeric, NT > &b)
 
void qt_co2 (const Numeric &t, const Index &iso, Numeric &gsi, Numeric &qt)
 
void calcw (CommonBlock &cmn, const Index &n, const Index &iband, const Numeric &temp)
 
void calcw (ConvTPOut &out, const HitranRelaxationMatrixData &hitran, const AbsorptionLines &band, const Numeric T)
 
void eqvlines (CommonBlock &cmn, const Index &iband, const Index &n, const Numeric &sigmoy)
 
EqvLinesOut eqvlines (const ConstComplexMatrixView W, const ConstVectorView pop, const ConstVectorView dip, const Numeric &fmean)
 
void convtp (CommonBlock &cmn, const Index &iband, const Index &isotc, const Index &nlinec, const Numeric &xh2o, const Numeric &xco2, const Numeric &temp, const Numeric &ptot, Numeric &sigmoy, Numeric &gamd_gam0_mx, const bool mixfull, const bool mixsdv)
 
ConvTPOut convtp (const ConstVectorView vmrs, const HitranRelaxationMatrixData &hitran, const AbsorptionLines &band, const Numeric T, const Numeric P, const SpeciesAuxData::AuxType &partition_type, const ArrayOfGriddedField1 &partition_data)
 
void qsdv (const Numeric &sg0, const Numeric &gamd, const Numeric &gam0, const Numeric &gam2, const Numeric &shift0, const Numeric &shift2, const Numeric &sg, Numeric &ls_qsdv_r, Numeric &ls_qsdv_i)
 
Complex qsdv_si (const Numeric F0, const Numeric gamd, const Numeric gam0, const Numeric gam2, const Numeric shift0, const Numeric shift2, const Numeric f)
 
void compabs (CommonBlock &cmn, const Numeric &temp, const Numeric &ptot, const Numeric &xco2, const Numeric &xh2o, const ConstVectorView invcm_grid, const bool mixsdv, const bool mixfull, VectorView absv, VectorView absy, VectorView absw)
 
Vector compabs (const Numeric T, const Numeric P, const HitranRelaxationMatrixData &hitran, const ArrayOfAbsorptionLines &bands, const ConstVectorView vmrs, const ConstVectorView f_grid, const SpeciesAuxData &partition_functions)
 
void detband (CommonBlock &cmn, const Numeric &sgminr, const Numeric &sgmaxr, const Numeric &stotmax, const String &basedir="data_new/")
 
void readw (CommonBlock &cmn, const String &basedir="data_new/")
 
Vector compute (const Numeric p, const Numeric t, const Numeric xco2, const Numeric xh2o, const ConstVectorView invcm_grid, const Numeric stotmax, const calctype type)
 
Vector compute (const HitranRelaxationMatrixData &hitran, const ArrayOfAbsorptionLines &bands, const Numeric P, const Numeric T, const ConstVectorView vmrs, const ConstVectorView f_grid, const SpeciesAuxData &partition_functions)
 Compute the absorptionlines. More...
 
void read (HitranRelaxationMatrixData &hitran, ArrayOfAbsorptionLines &bands, const String &basedir, const Numeric linemixinglimit, const Numeric fmin, const Numeric fmax, const Numeric stot, const ModeOfLineMixing mode)
 Read from HITRAN online line mixing file. More...
 
constexpr bool typeVP (ModeOfLineMixing x)
 
constexpr bool typeLP (ModeOfLineMixing x)
 
constexpr bool typeFull (ModeOfLineMixing x)
 

Enumeration Type Documentation

◆ calctype

Enumerator
FullVP 
FullRosenkranz 
FullW 
SDVP 
SDRosenkranz 
SDW 
NoneVP 
NoneRosenkranz 
NoneW 

Definition at line 66 of file linemixing_hitran.h.

◆ ModeOfLineMixing

Class that controls ReadFromLineMixingStream output.

Enumerator
VP 
VP_Y 
SDVP 
SDVP_Y 
FullW 
VP_W 

Definition at line 106 of file linemixing_hitran.h.

Function Documentation

◆ atob()

template<size_t NT>
Numeric lm_hitran_2017::atob ( const Numeric aa,
const std::array< Numeric, NT > &  a,
const std::array< Numeric, NT > &  b 
)

Definition at line 406 of file linemixing_hitran.cc.

◆ calcw() [1/2]

void lm_hitran_2017::calcw ( CommonBlock cmn,
const Index n,
const Index iband,
const Numeric temp 
)

Definition at line 782 of file linemixing_hitran.cc.

◆ calcw() [2/2]

void lm_hitran_2017::calcw ( ConvTPOut out,
const HitranRelaxationMatrixData hitran,
const AbsorptionLines band,
const Numeric  T 
)

Definition at line 974 of file linemixing_hitran.cc.

◆ compabs() [1/2]

void lm_hitran_2017::compabs ( CommonBlock cmn,
const Numeric temp,
const Numeric ptot,
const Numeric xco2,
const Numeric xh2o,
const ConstVectorView  invcm_grid,
const bool  mixsdv,
const bool  mixfull,
VectorView  absv,
VectorView  absy,
VectorView  absw 
)

Definition at line 1541 of file linemixing_hitran.cc.

◆ compabs() [2/2]

Vector lm_hitran_2017::compabs ( const Numeric  T,
const Numeric  P,
const HitranRelaxationMatrixData hitran,
const ArrayOfAbsorptionLines bands,
const ConstVectorView  vmrs,
const ConstVectorView  f_grid,
const SpeciesAuxData partition_functions 
)

Definition at line 1658 of file linemixing_hitran.cc.

◆ compute() [1/2]

Vector lm_hitran_2017::compute ( const Numeric  p,
const Numeric  t,
const Numeric  xco2,
const Numeric  xh2o,
const ConstVectorView  invcm_grid,
const Numeric  stotmax,
const calctype  type 
)

◆ compute() [2/2]

Vector lm_hitran_2017::compute ( const HitranRelaxationMatrixData hitran,
const ArrayOfAbsorptionLines bands,
const Numeric  P,
const Numeric  T,
const ConstVectorView  vmrs,
const ConstVectorView  f_grid,
const SpeciesAuxData partition_functions 
)

Compute the absorptionlines.

Parameters
[in]hitranHitran data for the relaxation matrix calculations
[in]bandsList of absorption bands
[in]PPressure in Pascal
[in]TTemperatures in Kelvin
[in]vmrsVMR ratio. Must be 3-long containing {air, h2o, co2} vmrs
[in]f_gridFrequency grid in Hz
[in]partition_functionsAs WSV
Returns
The absorption, a vector same length as f_grid

Definition at line 1929 of file linemixing_hitran.cc.

◆ convtp() [1/2]

void lm_hitran_2017::convtp ( CommonBlock cmn,
const Index iband,
const Index isotc,
const Index nlinec,
const Numeric xh2o,
const Numeric xco2,
const Numeric temp,
const Numeric ptot,
Numeric sigmoy,
Numeric gamd_gam0_mx,
const bool  mixfull,
const bool  mixsdv 
)

Definition at line 1250 of file linemixing_hitran.cc.

◆ convtp() [2/2]

ConvTPOut lm_hitran_2017::convtp ( const ConstVectorView  vmrs,
const HitranRelaxationMatrixData hitran,
const AbsorptionLines band,
const Numeric  T,
const Numeric  P,
const SpeciesAuxData::AuxType partition_type,
const ArrayOfGriddedField1 partition_data 
)

Definition at line 1323 of file linemixing_hitran.cc.

◆ detband()

void lm_hitran_2017::detband ( CommonBlock cmn,
const Numeric sgminr,
const Numeric sgmaxr,
const Numeric stotmax,
const String basedir = "data_new/" 
)

Definition at line 1745 of file linemixing_hitran.cc.

◆ eqvlines() [1/2]

void lm_hitran_2017::eqvlines ( CommonBlock cmn,
const Index iband,
const Index n,
const Numeric sigmoy 
)

Definition at line 1178 of file linemixing_hitran.cc.

◆ eqvlines() [2/2]

EqvLinesOut lm_hitran_2017::eqvlines ( const ConstComplexMatrixView  W,
const ConstVectorView  pop,
const ConstVectorView  dip,
const Numeric fmean 
)

Definition at line 1211 of file linemixing_hitran.cc.

◆ qsdv()

void lm_hitran_2017::qsdv ( const Numeric sg0,
const Numeric gamd,
const Numeric gam0,
const Numeric gam2,
const Numeric shift0,
const Numeric shift2,
const Numeric sg,
Numeric ls_qsdv_r,
Numeric ls_qsdv_i 
)

Definition at line 1374 of file linemixing_hitran.cc.

◆ qsdv_si()

Complex lm_hitran_2017::qsdv_si ( const Numeric  F0,
const Numeric  gamd,
const Numeric  gam0,
const Numeric  gam2,
const Numeric  shift0,
const Numeric  shift2,
const Numeric  f 
)

Definition at line 1461 of file linemixing_hitran.cc.

◆ qt_co2()

void lm_hitran_2017::qt_co2 ( const Numeric t,
const Index iso,
Numeric gsi,
Numeric qt 
)

Definition at line 466 of file linemixing_hitran.cc.

◆ read()

void lm_hitran_2017::read ( HitranRelaxationMatrixData hitran,
ArrayOfAbsorptionLines bands,
const String basedir,
const Numeric  linemixinglimit,
const Numeric  fmin,
const Numeric  fmax,
const Numeric  stot,
const ModeOfLineMixing  mode 
)

Read from HITRAN online line mixing file.

Parameters
[out]hitranHitran data for the relaxation matrix calculations
[out]bandsList of absorption bands
[in]basedirThe base directory of the HITRAN line mixing files
[in]linemixinglimitThe pressure limit for using line mixing instead of pure Voigt
[in]fminMinimum frequency
[in]fmaxMaximum frequency
[in]stotMinimum band-strength
[in]modeThe type of calculations

Definition at line 1940 of file linemixing_hitran.cc.

Referenced by abs_hitran_relmat_dataReadHitranRelmatDataAndLines(), binistream::readString(), test_hitran2017(), and typeFull().

◆ readlines()

void lm_hitran_2017::readlines ( CommonBlock cmn,
const String basedir = "data_new/" 
)

Definition at line 281 of file linemixing_hitran.cc.

◆ readw()

void lm_hitran_2017::readw ( CommonBlock cmn,
const String basedir = "data_new/" 
)

Definition at line 1810 of file linemixing_hitran.cc.

◆ toRationalSum()

Rational lm_hitran_2017::toRationalSum ( char  a,
char  b = ' ' 
)

Definition at line 269 of file linemixing_hitran.cc.

◆ typeFull()

constexpr bool lm_hitran_2017::typeFull ( ModeOfLineMixing  x)

Definition at line 125 of file linemixing_hitran.h.

References read().

◆ typeLP()

constexpr bool lm_hitran_2017::typeLP ( ModeOfLineMixing  x)

Definition at line 120 of file linemixing_hitran.h.

◆ typeVP()

constexpr bool lm_hitran_2017::typeVP ( ModeOfLineMixing  x)

Definition at line 115 of file linemixing_hitran.h.