ARTS  2.4.0(git:4fb77825)
LineShape::SingleSpeciesModel Class Reference

Compute the line shape parameters for a single broadening species. More...

#include <lineshapemodel.h>

Public Member Functions

constexpr SingleSpeciesModel (ModelParameters G0=ModelParameters{}, ModelParameters D0=ModelParameters{}, ModelParameters G2=ModelParameters{}, ModelParameters D2=ModelParameters{}, ModelParameters FVC=ModelParameters{}, ModelParameters ETA=ModelParameters{}, ModelParameters Y=ModelParameters{}, ModelParameters G=ModelParameters{}, ModelParameters DV=ModelParameters{})
 Default initialization. More...
 
Numeric compute (Numeric T, Numeric T0, Variable var) const noexcept
 Compute the broadening parameter at the input. More...
 
Numeric compute_dX0 (Numeric T, Numeric T0, Variable var) const noexcept
 Derivative of compute(...) wrt x0. More...
 
Numeric compute_dX1 (Numeric T, Numeric T0, Variable var) const noexcept
 Derivative of compute(...) wrt x1. More...
 
Numeric compute_dX2 (Numeric T, Numeric T0, Variable var) const noexcept
 Derivative of compute(...) wrt x2. More...
 
Numeric compute_dX3 (Numeric T, Numeric T0, Variable var) const noexcept
 Derivative of compute(...) wrt x3. More...
 
Numeric compute_dT (Numeric T, Numeric T0, Variable var) const noexcept
 Derivative of compute(...) wrt T. More...
 
Numeric compute_dT0 (Numeric T, Numeric T0, Variable var) const noexcept
 Derivative of compute(...) wrt T0. More...
 
 ACCESS_INTERNAL (G0)
 
 ACCESS_INTERNAL (D0)
 
 ACCESS_INTERNAL (G2)
 
 ACCESS_INTERNAL (D2)
 
 ACCESS_INTERNAL (FVC)
 
 ACCESS_INTERNAL (ETA)
 
 ACCESS_INTERNAL (Y)
 
 ACCESS_INTERNAL (G)
 
 ACCESS_INTERNAL (DV)
 
std::array< ModelParameters, nVars > & Data () noexcept
 Get internal Data reference. More...
 
const std::array< ModelParameters, nVars > & Data () const noexcept
 Get const internal Data reference. More...
 
void Set (Variable var, const ModelParameters &x) noexcept
 Set variable to a different ModelParameters. More...
 
ModelParameters Get (Variable var) const noexcept
 Get variable by type. More...
 
bifstreamread (bifstream &bif)
 Binary read for SingleSpeciesModel. More...
 
bofstreamwrite (bofstream &bof) const
 Binary write for SingleSpeciesModel. More...
 
bool MatchTypes (const SingleSpeciesModel &other) const noexcept
 

Private Member Functions

constexpr Numeric special_linemixing_aer (Numeric T, ModelParameters mp) const noexcept
 Line mixing as done by AER data in ARTS. More...
 
constexpr Numeric special_linemixing_aer_dT (Numeric T, ModelParameters mp) const noexcept
 The temperature derivative of special_linemixing_aer. More...
 

Private Attributes

std::array< ModelParameters, nVarsX
 

Detailed Description

Compute the line shape parameters for a single broadening species.

Definition at line 359 of file lineshapemodel.h.

Constructor & Destructor Documentation

◆ SingleSpeciesModel()

constexpr LineShape::SingleSpeciesModel::SingleSpeciesModel ( ModelParameters  G0 = ModelParameters{},
ModelParameters  D0 = ModelParameters{},
ModelParameters  G2 = ModelParameters{},
ModelParameters  D2 = ModelParameters{},
ModelParameters  FVC = ModelParameters{},
ModelParameters  ETA = ModelParameters{},
ModelParameters  Y = ModelParameters{},
ModelParameters  G = ModelParameters{},
ModelParameters  DV = ModelParameters{} 
)
inlineconstexpr

Default initialization.

Definition at line 401 of file lineshapemodel.h.

Member Function Documentation

◆ ACCESS_INTERNAL() [1/9]

LineShape::SingleSpeciesModel::ACCESS_INTERNAL ( D0  )

◆ ACCESS_INTERNAL() [2/9]

LineShape::SingleSpeciesModel::ACCESS_INTERNAL ( D2  )

◆ ACCESS_INTERNAL() [3/9]

LineShape::SingleSpeciesModel::ACCESS_INTERNAL ( DV  )

◆ ACCESS_INTERNAL() [4/9]

LineShape::SingleSpeciesModel::ACCESS_INTERNAL ( ETA  )

◆ ACCESS_INTERNAL() [5/9]

LineShape::SingleSpeciesModel::ACCESS_INTERNAL ( FVC  )

◆ ACCESS_INTERNAL() [6/9]

LineShape::SingleSpeciesModel::ACCESS_INTERNAL ( )

◆ ACCESS_INTERNAL() [7/9]

LineShape::SingleSpeciesModel::ACCESS_INTERNAL ( G0  )

◆ ACCESS_INTERNAL() [8/9]

LineShape::SingleSpeciesModel::ACCESS_INTERNAL ( G2  )

◆ ACCESS_INTERNAL() [9/9]

LineShape::SingleSpeciesModel::ACCESS_INTERNAL ( )

◆ compute()

Numeric LineShape::SingleSpeciesModel::compute ( Numeric  T,
Numeric  T0,
Variable  var 
) const
inlinenoexcept

Compute the broadening parameter at the input.

Parameters
[in]TThe temperature
[in]T0The temperature used to derive the coefficients
[in]varThe variable
Returns
The broadening parameter at temperature

Definition at line 426 of file lineshapemodel.h.

◆ compute_dT()

Numeric LineShape::SingleSpeciesModel::compute_dT ( Numeric  T,
Numeric  T0,
Variable  var 
) const
inlinenoexcept

Derivative of compute(...) wrt T.

Parameters
[in]TThe temperature
[in]T0The temperature used to derive the coefficients
[in]varThe variable
Returns
Derivative of compute(...) wrt T

Definition at line 606 of file lineshapemodel.h.

◆ compute_dT0()

Numeric LineShape::SingleSpeciesModel::compute_dT0 ( Numeric  T,
Numeric  T0,
Variable  var 
) const
inlinenoexcept

Derivative of compute(...) wrt T0.

Parameters
[in]TThe temperature
[in]T0The temperature used to derive the coefficients
[in]varThe variable
Returns
Derivative of compute(...) wrt T0

Definition at line 644 of file lineshapemodel.h.

◆ compute_dX0()

Numeric LineShape::SingleSpeciesModel::compute_dX0 ( Numeric  T,
Numeric  T0,
Variable  var 
) const
inlinenoexcept

Derivative of compute(...) wrt x0.

Parameters
[in]TThe temperature
[in]T0The temperature used to derive the coefficients
[in]varThe variable
Returns
Derivative of compute(...) wrt x0

Definition at line 462 of file lineshapemodel.h.

◆ compute_dX1()

Numeric LineShape::SingleSpeciesModel::compute_dX1 ( Numeric  T,
Numeric  T0,
Variable  var 
) const
inlinenoexcept

Derivative of compute(...) wrt x1.

Parameters
[in]TThe temperature
[in]T0The temperature used to derive the coefficients
[in]varThe variable
Returns
Derivative of compute(...) wrt x1

Definition at line 498 of file lineshapemodel.h.

◆ compute_dX2()

Numeric LineShape::SingleSpeciesModel::compute_dX2 ( Numeric  T,
Numeric  T0,
Variable  var 
) const
inlinenoexcept

Derivative of compute(...) wrt x2.

Parameters
[in]TThe temperature
[in]T0The temperature used to derive the coefficients
[in]varThe variable
Returns
Derivative of compute(...) wrt x2

Definition at line 534 of file lineshapemodel.h.

◆ compute_dX3()

Numeric LineShape::SingleSpeciesModel::compute_dX3 ( Numeric  T,
Numeric  T0,
Variable  var 
) const
inlinenoexcept

Derivative of compute(...) wrt x3.

Parameters
[in]TThe temperature
[in]T0The temperature used to derive the coefficients
[in]varThe variable
Returns
Derivative of compute(...) wrt x3

Definition at line 570 of file lineshapemodel.h.

◆ Data() [1/2]

const std::array<ModelParameters, nVars>& LineShape::SingleSpeciesModel::Data ( ) const
inlinenoexcept

Get const internal Data reference.

Definition at line 697 of file lineshapemodel.h.

References X.

◆ Data() [2/2]

std::array<ModelParameters, nVars>& LineShape::SingleSpeciesModel::Data ( )
inlinenoexcept

Get internal Data reference.

Definition at line 694 of file lineshapemodel.h.

References X.

Referenced by LineShape::operator<<(), and LineShape::operator>>().

◆ Get()

ModelParameters LineShape::SingleSpeciesModel::Get ( Variable  var) const
inlinenoexcept

Get variable by type.

Parameters
[in]varThe variable type
Returns
ModelParameters copy

Definition at line 729 of file lineshapemodel.h.

References LineShape::G0, MODELPARAMCASEGETTER, and linalg::var().

◆ MatchTypes()

bool LineShape::SingleSpeciesModel::MatchTypes ( const SingleSpeciesModel other) const
inlinenoexcept

Definition at line 765 of file lineshapemodel.h.

References X.

◆ read()

bifstream& LineShape::SingleSpeciesModel::read ( bifstream bif)
inline

Binary read for SingleSpeciesModel.

Definition at line 748 of file lineshapemodel.h.

References data, ARTS::Var::x(), and X.

◆ Set()

void LineShape::SingleSpeciesModel::Set ( Variable  var,
const ModelParameters x 
)
inlinenoexcept

Set variable to a different ModelParameters.

Parameters
[in]varThe variable
[in]xThe new ModelParameters for var

Definition at line 704 of file lineshapemodel.h.

References LineShape::G0, MODELPARAMCASESETTER, and linalg::var().

◆ special_linemixing_aer()

constexpr Numeric LineShape::SingleSpeciesModel::special_linemixing_aer ( Numeric  T,
ModelParameters  mp 
) const
inlineconstexprprivatenoexcept

Line mixing as done by AER data in ARTS.

Uses piece-wise linear interpolation and extrapolates at the edges

var must be G or Y

Parameters
[in]TThe temperature
[in]varThe variable
Returns
The broadening parameter at temperature

Definition at line 374 of file lineshapemodel.h.

◆ special_linemixing_aer_dT()

constexpr Numeric LineShape::SingleSpeciesModel::special_linemixing_aer_dT ( Numeric  T,
ModelParameters  mp 
) const
inlineconstexprprivatenoexcept

The temperature derivative of special_linemixing_aer.

Parameters
[in]TThe temperature
[in]varThe variable
Returns
The temperature derivative of the broadening parameter at temperature

Definition at line 390 of file lineshapemodel.h.

◆ write()

bofstream& LineShape::SingleSpeciesModel::write ( bofstream bof) const
inline

Binary write for SingleSpeciesModel.

Definition at line 758 of file lineshapemodel.h.

References data, and X.

Member Data Documentation

◆ X

std::array<ModelParameters, nVars> LineShape::SingleSpeciesModel::X
private

Definition at line 361 of file lineshapemodel.h.

Referenced by Data(), MatchTypes(), read(), and write().


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