ARTS  2.3.1285(git:92a29ea9-dirty)
LineShape::Model Class Reference

Main line shape model class. More...

#include <linefunctiondata.h>

Public Member Functions

 Model () noexcept
 
 Model (Numeric sgam, Numeric nself, Numeric agam, Numeric nair, Numeric psf, std::array< Numeric, nmaxInterpModels > interp={0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}) noexcept
 
 Model (const SingleSpeciesModel &bath, Type type) noexcept
 
 Model (Type type, bool self, bool bath, const ArrayOfSpeciesTag &species, const std::vector< SingleSpeciesModel > &ssms)
 
bool same_broadening_species (const Model &other) const noexcept
 
Vector vmrs (const ConstVectorView &atmospheric_vmrs, const ArrayOfArrayOfSpeciesTag &atmospheric_species, const QuantumIdentifier &self) const
 
Index this_species (const Index &self_species) const noexcept
 
Index this_species (const QuantumIdentifier &self) const noexcept
 
 LSPC (G0, P) LSPC(G2
 
P LSPC (D0, P) LSPC(D2
 
P P LSPC (ETA, 1) LSPC(FVC
 
P P P LSPC (Y, P) LSPC(G
 
P P P P *P LSPC (DV, P *P) LSPC(G0
 
P P P P *P P LSPC (G2, P) LSPC(D0
 
P P P P *P P P LSPC (D2, P) LSPC(ETA
 
P P P P *P P P LSPC (FVC, P) LSPC(Y
 
P P P P *P P P P LSPC (G, P *P) LSPC(DV
 
 LSPC (G0, P) LSPC(G2
 
P LSPC (D0, P) LSPC(D2
 
P P LSPC (ETA, 1) LSPC(FVC
 
P P P LSPC (Y, P) LSPC(G
 
P P P P *P LSPC (DV, P *P) LSPDC(G0
 
P P P P *P P LSPDC (G0, _dX0, P) LSPDC(G0
 
P P P P *P P P LSPDC (G0, _dX2, P) LSPDC(G2
 
P P P P *P P P P LSPDC (G2, _dX0, P) LSPDC(G2
 
P P P P *P P P P P LSPDC (G2, _dX2, P) LSPDC(D0
 
P P P P *P P P P P P LSPDC (D0, _dX0, P) LSPDC(D0
 
P P P P *P P P P P P P LSPDC (D0, _dX2, P) LSPDC(D2
 
P P P P *P P P P P P P P LSPDC (D2, _dX0, P) LSPDC(D2
 
P P P P *P P P P P P P P P LSPDC (D2, _dX2, P) LSPDC(ETA
 
P P P P *P P P P P P P P P LSPDC (ETA, _dX0, 1) LSPDC(ETA
 
P P P P *P P P P P P P P P LSPDC (ETA, _dX2, 1) LSPDC(FVC
 
P P P P *P P P P P P P P P P LSPDC (FVC, _dX0, P) LSPDC(FVC
 
P P P P *P P P P P P P P P P P LSPDC (FVC, _dX2, P) LSPDC(Y
 
P P P P *P P P P P P P P P P P P LSPDC (Y, _dX0, P) LSPDC(Y
 
P P P P *P P P P P P P P P P P P P LSPDC (Y, _dX2, P) LSPDC(G
 
P P P P *P P P P P P P P P P P P P P *P LSPDC (G, _dX0, P *P) LSPDC(G
 
P P P P *P P P P P P P P P P P P P P *P P *P LSPDC (G, _dX2, P *P) LSPDC(DV
 
P P P P *P P P P P P P P P P P P P P *P P *P P *P LSPDC (DV, _dX0, P *P) LSPDC(DV
 
P P P P *P P P P P P P P P P P P P P *P P *P P *P P *P LSPDC (DV, _dX2, P *P) Output GetParams(Numeric T
 
Output GetTemperatureDerivs (Numeric T, Numeric T0, Numeric P, const Vector &vmrs) const
 
Output GetVMRDerivs (Numeric T, Numeric T0, Numeric P, const Index pos) const noexcept
 
Numeric GetInternalDeriv (Numeric T, Numeric T0, Numeric P, Index pos, const Vector &vmrs, JacPropMatType deriv) const
 
Index nelem () const
 
void resize (Index n)
 
void reserve (Index n)
 
Type ModelType () const noexcept
 
bool Self () const noexcept
 
bool Bath () const noexcept
 
const std::vector< SingleSpeciesModel > & Data () const noexcept
 
const ArrayOfSpeciesTagSpecies () const noexcept
 
std::vector< SingleSpeciesModel > & Data () noexcept
 
void Set (const ModelParameters &param, const String &spec, const Variable var)
 
ModelParameters Get (const String &spec, const Variable var) const
 
void Remove (Index i)
 
void SetLineMixingModel (SingleSpeciesModel x)
 
 Model (Index n=0) noexcept
 Default init just sets the size. More...
 
 Model (const std::vector< SingleSpeciesModel > &assm) noexcept
 Init from copying a vector. More...
 
 Model (const Model &m) noexcept
 Init from copying itself. More...
 
 Model (std::vector< SingleSpeciesModel > &&assm) noexcept
 Init from moving a vector. More...
 
 Model (Model &&m) noexcept
 Init from moving a itself. More...
 
Modeloperator= (const Model &m)
 Copy and equals. More...
 
Modeloperator= (Model &&m)
 Move and equals. More...
 
 Model (Numeric sgam, Numeric nself, Numeric agam, Numeric nair, Numeric psf, std::array< Numeric, 12 > aer_interp={0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}) noexcept
 Standard HITRAN init. More...
 
bool OK (Type type, bool self, bool bath, const std::vector< SpeciesTag > &species) const noexcept
 The Model is good to use. More...
 
Output GetParams (Numeric T, Numeric T0, Numeric P, ConstVectorView vmrs) const noexcept
 Compute all shape parameters. More...
 
Output GetTemperatureDerivs (Numeric T, Numeric T0, Numeric P, ConstVectorView vmrs) const noexcept
 Derivative of GetParams(...) wrt T. More...
 
Output GetVMRDerivs (Numeric T, Numeric T0, Numeric P, const Index pos) const noexcept
 Derivative of GetParams(...) wrt VMR. More...
 
Numeric GetInternalDeriv (Numeric T, Numeric T0, Numeric P, Index pos, ConstVectorView vmrs, JacPropMatType deriv) const noexcept
 Derivative of GetParams(...) wrt Coefficient. More...
 
Index nelem () const
 Number of species in Model. More...
 
Index size () const
 Number of species in Model. More...
 
void resize (Index n)
 Resize function for Model. More...
 
void reserve (Index n)
 Reserve function for Model. More...
 
SingleSpeciesModeloperator[] (Index i)
 Get a SingleSpeciesModel. More...
 
const SingleSpeciesModeloperator[] (Index i) const
 Get a SingleSpeciesModel. More...
 
const std::vector< SingleSpeciesModel > & Data () const noexcept
 The line shape model data. More...
 
std::vector< SingleSpeciesModel > & Data () noexcept
 The line shape model data reference. More...
 
void Remove (Index i, ArrayOfSpeciesTag &specs)
 Remove species and data at position. More...
 
void SetLineMixingModel (SingleSpeciesModel x)
 Sets the same line mixing model to all species. More...
 
bool Match (const Model &other) const noexcept
 
bifstreamread (bifstream &bif)
 Binary read for Model. More...
 
bofstreamwrite (bofstream &bof) const
 Binary write for Model. More...
 

Public Attributes

P P P P *P _dT0
 
P P P P *P P _dX1
 
P P P P *P P P _dT0
 
P P P P *P P P P _dX1
 
P P P P *P P P P P _dT0
 
P P P P *P P P P P P _dX1
 
P P P P *P P P P P P P _dT0
 
P P P P *P P P P P P P P _dX1
 
P P P P *P P P P P P P P P _dT0
 
P P P P *P P P P P P P P P _dX1
 
P P P P *P P P P P P P P P P _dX1
 
P P P P *P P P P P P P P P P P _dT0
 
P P P P *P P P P P P P P P P P P _dX1
 
P P P P *P P P P P P P P P P P P P _dT0
 
P P P P *P P P P P P P P P P P P P P *P _dX1
 
P P P P *P P P P P P P P P P P P P P *P P *P _dT0
 
P P P P *P P P P P P P P P P P P P P *P P *P P *P _dX1
 
P P P P *P P P P P P P P P P P P P P *P P *P P *P P *P Numeric T0
 
P P P P *P P P P P P P P P P P P P P *P P *P P *P P *P Numeric Numeric P
 
P P P P *P P P P P P P P P P P P P P *P P *P P *P P *P Numeric Numeric const Vector &vmrs const
 

Private Member Functions

bool OK () const noexcept
 

Private Attributes

Type mtype
 
bool mself
 
bool mbath
 
ArrayOfSpeciesTag mspecies
 
std::vector< SingleSpeciesModelmdata
 

Friends

std::istream & operator>> (std::istream &is, Model &m)
 
std::ostream & operator<< (std::ostream &os, const Model &m)
 
std::istream & from_artscat4 (std::istream &is, Model &lsc, const QuantumIdentifier &qid)
 
std::istream & from_linefunctiondata (std::istream &data, Model &lsc)
 
std::istream & from_linefunctiondata (std::istream &data, Type &type, bool &self, bool &bath, Model &m, ArrayOfSpeciesTag &species)
 
std::istream & from_artscat4 (std::istream &is, Type &type, bool &self, bool &bath, Model &m, ArrayOfSpeciesTag &species, const QuantumIdentifier &qid)
 

Detailed Description

Main line shape model class.

Computes the line shape parameters for a given atmosphere

Definition at line 576 of file linefunctiondata.h.

Constructor & Destructor Documentation

◆ Model() [1/10]

LineShape::Model::Model ( )
inlinenoexcept

Definition at line 596 of file linefunctiondata.h.

◆ Model() [2/10]

LineShape::Model::Model ( Numeric  sgam,
Numeric  nself,
Numeric  agam,
Numeric  nair,
Numeric  psf,
std::array< Numeric, nmaxInterpModels interp = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} 
)
inlinenoexcept

◆ Model() [3/10]

LineShape::Model::Model ( const SingleSpeciesModel bath,
Type  type 
)
inlinenoexcept

Definition at line 612 of file linefunctiondata.h.

◆ Model() [4/10]

LineShape::Model::Model ( Type  type,
bool  self,
bool  bath,
const ArrayOfSpeciesTag species,
const std::vector< SingleSpeciesModel > &  ssms 
)
inline

Definition at line 615 of file linefunctiondata.h.

◆ Model() [5/10]

LineShape::Model::Model ( Index  n = 0)
inlinenoexcept

Default init just sets the size.

Definition at line 978 of file lineshapemodel.h.

◆ Model() [6/10]

LineShape::Model::Model ( const std::vector< SingleSpeciesModel > &  assm)
inlineexplicitnoexcept

Init from copying a vector.

Definition at line 981 of file lineshapemodel.h.

◆ Model() [7/10]

LineShape::Model::Model ( const Model m)
inlinenoexcept

Init from copying itself.

Definition at line 984 of file lineshapemodel.h.

◆ Model() [8/10]

LineShape::Model::Model ( std::vector< SingleSpeciesModel > &&  assm)
inlineexplicitnoexcept

Init from moving a vector.

Definition at line 987 of file lineshapemodel.h.

◆ Model() [9/10]

LineShape::Model::Model ( Model &&  m)
inlinenoexcept

Init from moving a itself.

Definition at line 990 of file lineshapemodel.h.

◆ Model() [10/10]

LineShape::Model::Model ( Numeric  sgam,
Numeric  nself,
Numeric  agam,
Numeric  nair,
Numeric  psf,
std::array< Numeric, 12 >  aer_interp = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} 
)
inlinenoexcept

Standard HITRAN init.

Parameters
[in]sgamSelf pressure broadening coefficient
[in]nselfSelf pressure broadening exponent
[in]agamAir pressure broadening coefficient
[in]nairAir pressure broadening exponent
[in]psfAll pressure shifting coefficient
[in]interpThe interpolation variable for AER type line mixing

Definition at line 1007 of file lineshapemodel.h.

References LineShape::LM_AER, LineShape::T1, and LineShape::T5.

Member Function Documentation

◆ Bath()

bool LineShape::Model::Bath ( ) const
inlinenoexcept

Definition at line 803 of file linefunctiondata.h.

◆ Data() [1/4]

◆ Data() [2/4]

std::vector<SingleSpeciesModel>& LineShape::Model::Data ( )
inlinenoexcept

Definition at line 807 of file linefunctiondata.h.

References linalg::var().

◆ Data() [3/4]

const std::vector<SingleSpeciesModel>& LineShape::Model::Data ( ) const
inlinenoexcept

The line shape model data.

Definition at line 1345 of file lineshapemodel.h.

◆ Data() [4/4]

std::vector<SingleSpeciesModel>& LineShape::Model::Data ( )
inlinenoexcept

The line shape model data reference.

Definition at line 1348 of file lineshapemodel.h.

◆ Get()

ModelParameters LineShape::Model::Get ( const String spec,
const Variable  var 
) const
inline

Definition at line 811 of file linefunctiondata.h.

References i, Absorption::nelem(), and SpeciesTag::Species().

◆ GetInternalDeriv() [1/2]

Numeric LineShape::Model::GetInternalDeriv ( Numeric  T,
Numeric  T0,
Numeric  P,
Index  pos,
const Vector vmrs,
JacPropMatType  deriv 
) const
inline

Definition at line 768 of file linefunctiondata.h.

References LineShape::G0, and RETURNINTERNALDERIVATIVE.

◆ GetInternalDeriv() [2/2]

Numeric LineShape::Model::GetInternalDeriv ( Numeric  T,
Numeric  T0,
Numeric  P,
Index  pos,
ConstVectorView  vmrs,
JacPropMatType  deriv 
) const
inlinenoexcept

Derivative of GetParams(...) wrt Coefficient.

Parameters
[in]TThe temperature
[in]T0The temperature used to derive the coefficients
[in]PThe pressure
[in]posPosition of species in mspecies
[in]vmrsThe VMR vector as derived by this.vmrs()
[in]derivThe derivative
Returns
Derivative of GetParams(...) wrt Coefficient

Definition at line 1274 of file lineshapemodel.h.

References LineShape::D0, LineShape::D2, LineShape::FVC, LineShape::G0, LineShape::G2, and RETURNINTERNALDERIVATIVE.

◆ GetParams()

Output LineShape::Model::GetParams ( Numeric  T,
Numeric  T0,
Numeric  P,
ConstVectorView  vmrs 
) const
inlinenoexcept

Compute all shape parameters.

Parameters
[in]TThe temperature
[in]T0The temperature used to derive the coefficients
[in]PThe pressure
[in]vmrsThe VMR vector as derived by this.vmrs()
Returns
Shape parameters

Definition at line 1202 of file lineshapemodel.h.

References LineShape::D0, LineShape::D2, LineShape::DV, LineShape::ETA, LineShape::FVC, LineShape::G, LineShape::G0, LineShape::G2, and LineShape::Y.

◆ GetTemperatureDerivs() [1/2]

Output LineShape::Model::GetTemperatureDerivs ( Numeric  T,
Numeric  T0,
Numeric  P,
const Vector vmrs 
) const
inline

Definition at line 754 of file linefunctiondata.h.

◆ GetTemperatureDerivs() [2/2]

Output LineShape::Model::GetTemperatureDerivs ( Numeric  T,
Numeric  T0,
Numeric  P,
ConstVectorView  vmrs 
) const
inlinenoexcept

Derivative of GetParams(...) wrt T.

Parameters
[in]TThe temperature
[in]T0The temperature used to derive the coefficients
[in]PThe pressure
[in]vmrsThe VMR vector as derived by this.vmrs()
Returns
Derivative of GetParams(...) wrt T

Definition at line 1226 of file lineshapemodel.h.

◆ GetVMRDerivs() [1/2]

Output LineShape::Model::GetVMRDerivs ( Numeric  T,
Numeric  T0,
Numeric  P,
const Index  pos 
) const
inlinenoexcept

Definition at line 761 of file linefunctiondata.h.

References LineShape::T0.

◆ GetVMRDerivs() [2/2]

Output LineShape::Model::GetVMRDerivs ( Numeric  T,
Numeric  T0,
Numeric  P,
const Index  pos 
) const
inlinenoexcept

Derivative of GetParams(...) wrt VMR.

Parameters
[in]TThe temperature
[in]T0The temperature used to derive the coefficients
[in]PThe pressure
[in]posPosition of species in mspecies
Returns
Derivative of GetParams(...) wrt VMR

Definition at line 1250 of file lineshapemodel.h.

◆ LSPC() [1/14]

LineShape::Model::LSPC ( G0  ,
P   
)

◆ LSPC() [2/14]

P P LineShape::Model::LSPC ( ETA  ,
 
)

◆ LSPC() [3/14]

P P P LineShape::Model::LSPC ( Y  ,
P   
)

◆ LSPC() [4/14]

P P P P* P LineShape::Model::LSPC ( DV  ,
P P 
)

◆ LSPC() [5/14]

P LineShape::Model::LSPC ( D0  ,
P   
)

◆ LSPC() [6/14]

P P P P* P P LineShape::Model::LSPC ( G2  ,
P   
)

◆ LSPC() [7/14]

P P P P* P P P LineShape::Model::LSPC ( D2  ,
P   
)

◆ LSPC() [8/14]

P P P P* P P P LineShape::Model::LSPC ( FVC  ,
P   
)

◆ LSPC() [9/14]

P P P P* P P P P LineShape::Model::LSPC ( G  ,
P P 
)

◆ LSPC() [10/14]

P LineShape::Model::LSPC ( D0  ,
P   
)

◆ LSPC() [11/14]

P P LineShape::Model::LSPC ( ETA  ,
 
)

◆ LSPC() [12/14]

P P P P* P LineShape::Model::LSPC ( DV  ,
P P 
)

◆ LSPC() [13/14]

P P P LineShape::Model::LSPC ( Y  ,
P   
)

◆ LSPC() [14/14]

LineShape::Model::LSPC ( G0  ,
P   
)

◆ LSPDC() [1/18]

P P P P* P P LineShape::Model::LSPDC ( G0  ,
_dX0  ,
P   
)

◆ LSPDC() [2/18]

P P P P* P P P LineShape::Model::LSPDC ( G0  ,
_dX2  ,
P   
)

◆ LSPDC() [3/18]

P P P P* P P P P LineShape::Model::LSPDC ( G2  ,
_dX0  ,
P   
)

◆ LSPDC() [4/18]

P P P P* P P P P P LineShape::Model::LSPDC ( G2  ,
_dX2  ,
P   
)

◆ LSPDC() [5/18]

P P P P* P P P P P P LineShape::Model::LSPDC ( D0  ,
_dX0  ,
P   
)

◆ LSPDC() [6/18]

P P P P* P P P P P P P LineShape::Model::LSPDC ( D0  ,
_dX2  ,
P   
)

◆ LSPDC() [7/18]

P P P P* P P P P P P P P LineShape::Model::LSPDC ( D2  ,
_dX0  ,
P   
)

◆ LSPDC() [8/18]

P P P P* P P P P P P P P P LineShape::Model::LSPDC ( D2  ,
_dX2  ,
P   
)

◆ LSPDC() [9/18]

P P P P* P P P P P P P P P LineShape::Model::LSPDC ( ETA  ,
_dX0  ,
 
)

◆ LSPDC() [10/18]

P P P P* P P P P P P P P P LineShape::Model::LSPDC ( ETA  ,
_dX2  ,
 
)

◆ LSPDC() [11/18]

P P P P* P P P P P P P P P P LineShape::Model::LSPDC ( FVC  ,
_dX0  ,
P   
)

◆ LSPDC() [12/18]

P P P P* P P P P P P P P P P P LineShape::Model::LSPDC ( FVC  ,
_dX2  ,
P   
)

◆ LSPDC() [13/18]

P P P P* P P P P P P P P P P P P LineShape::Model::LSPDC ( Y  ,
_dX0  ,
P   
)

◆ LSPDC() [14/18]

P P P P* P P P P P P P P P P P P P LineShape::Model::LSPDC ( Y  ,
_dX2  ,
P   
)

◆ LSPDC() [15/18]

P P P P* P P P P P P P P P P P P P P* P LineShape::Model::LSPDC ( G  ,
_dX0  ,
P P 
)

◆ LSPDC() [16/18]

P P P P* P P P P P P P P P P P P P P* P P* P LineShape::Model::LSPDC ( G  ,
_dX2  ,
P P 
)

◆ LSPDC() [17/18]

P P P P* P P P P P P P P P P P P P P* P P* P P* P LineShape::Model::LSPDC ( DV  ,
_dX0  ,
P P 
)

◆ LSPDC() [18/18]

P P P P* P P P P P P P P P P P P P P* P P* P P* P P* P LineShape::Model::LSPDC ( DV  ,
_dX2  ,
P P 
)

◆ Match()

bool LineShape::Model::Match ( const Model other) const
inlinenoexcept

◆ ModelType()

Type LineShape::Model::ModelType ( ) const
inlinenoexcept

Definition at line 801 of file linefunctiondata.h.

◆ nelem() [1/2]

◆ nelem() [2/2]

Index LineShape::Model::nelem ( ) const
inline

Number of species in Model.

Definition at line 1308 of file lineshapemodel.h.

◆ OK() [1/2]

bool LineShape::Model::OK ( ) const
inlineprivatenoexcept

Definition at line 584 of file linefunctiondata.h.

References n.

◆ OK() [2/2]

bool LineShape::Model::OK ( Type  type,
bool  self,
bool  bath,
const std::vector< SpeciesTag > &  species 
) const
inlinenoexcept

The Model is good to use.

Returns
true/false

Definition at line 1049 of file lineshapemodel.h.

References n.

◆ operator=() [1/2]

Model& LineShape::Model::operator= ( const Model m)
inline

Copy and equals.

Definition at line 993 of file lineshapemodel.h.

References mdata.

◆ operator=() [2/2]

Model& LineShape::Model::operator= ( Model &&  m)
inline

Move and equals.

Definition at line 996 of file lineshapemodel.h.

◆ operator[]() [1/2]

SingleSpeciesModel& LineShape::Model::operator[] ( Index  i)
inline

Get a SingleSpeciesModel.

Parameters
[in]iPosition in mdata
Returns
reference to SingleSpeciesModel

Definition at line 1334 of file lineshapemodel.h.

◆ operator[]() [2/2]

const SingleSpeciesModel& LineShape::Model::operator[] ( Index  i) const
inline

Get a SingleSpeciesModel.

Parameters
[in]iPosition in mdata
Returns
reference to SingleSpeciesModel

Definition at line 1341 of file lineshapemodel.h.

◆ read()

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

Binary read for Model.

Definition at line 1403 of file lineshapemodel.h.

Referenced by Absorption::SingleLine::read().

◆ Remove() [1/2]

void LineShape::Model::Remove ( Index  i)
inline

Definition at line 834 of file linefunctiondata.h.

References Absorption::nelem().

◆ Remove() [2/2]

void LineShape::Model::Remove ( Index  i,
ArrayOfSpeciesTag specs 
)
inline

Remove species and data at position.

Uses standard algorithm "erase" to remove, see it for behavior when an error occurs

Parameters
[in]iIndex of position to remove

Definition at line 1357 of file lineshapemodel.h.

◆ reserve() [1/2]

void LineShape::Model::reserve ( Index  n)
inline

◆ reserve() [2/2]

void LineShape::Model::reserve ( Index  n)
inline

Reserve function for Model.

Just reserves, does nothing with the new data

Parameters
[in]nNew reserves of mspecies and mdata

Definition at line 1327 of file lineshapemodel.h.

◆ resize() [1/2]

void LineShape::Model::resize ( Index  n)
inline

Definition at line 793 of file linefunctiondata.h.

◆ resize() [2/2]

void LineShape::Model::resize ( Index  n)
inline

Resize function for Model.

Just resizes, does nothing with the new data

Parameters
[in]nNew size of mspecies and mdata

Definition at line 1319 of file lineshapemodel.h.

◆ same_broadening_species()

bool LineShape::Model::same_broadening_species ( const Model other) const
inlinenoexcept

Definition at line 623 of file linefunctiondata.h.

References i, Array< base >::nelem(), and Species.

◆ Self()

bool LineShape::Model::Self ( ) const
inlinenoexcept

Definition at line 802 of file linefunctiondata.h.

◆ Set()

void LineShape::Model::Set ( const ModelParameters param,
const String spec,
const Variable  var 
)

Definition at line 393 of file linefunctiondata.cc.

References i, mbath, mdata, mself, mspecies, nelem(), and SpeciesTag::Species().

◆ SetLineMixingModel() [1/2]

◆ SetLineMixingModel() [2/2]

void LineShape::Model::SetLineMixingModel ( SingleSpeciesModel  x)
inline

Sets the same line mixing model to all species.

Looks at x and sets it Y, G and DV values to all the Y, G, and DV values in this

If LM_AER is used, Interp data is written over as well otherwise it remains untouched

Parameters
[in]xModel containing new line mixing data

Definition at line 1372 of file lineshapemodel.h.

◆ size()

Index LineShape::Model::size ( ) const
inline

Number of species in Model.

Definition at line 1311 of file lineshapemodel.h.

◆ Species()

const ArrayOfSpeciesTag& LineShape::Model::Species ( ) const
inlinenoexcept

Definition at line 805 of file linefunctiondata.h.

◆ this_species() [1/2]

Index LineShape::Model::this_species ( const Index self_species) const
inlinenoexcept

Definition at line 686 of file linefunctiondata.h.

References i, Absorption::nelem(), and Species.

◆ this_species() [2/2]

Index LineShape::Model::this_species ( const QuantumIdentifier self) const
inlinenoexcept

◆ vmrs()

Vector LineShape::Model::vmrs ( const ConstVectorView atmospheric_vmrs,
const ArrayOfArrayOfSpeciesTag atmospheric_species,
const QuantumIdentifier self 
) const
inline

◆ write()

Friends And Related Function Documentation

◆ from_artscat4 [1/2]

std::istream& from_artscat4 ( std::istream &  is,
Model lsc,
const QuantumIdentifier qid 
)
friend

◆ from_artscat4 [2/2]

std::istream& from_artscat4 ( std::istream &  is,
Type type,
bool &  self,
bool &  bath,
Model m,
ArrayOfSpeciesTag species,
const QuantumIdentifier qid 
)
friend

◆ from_linefunctiondata [1/2]

std::istream& from_linefunctiondata ( std::istream &  data,
Model lsc 
)
friend

◆ from_linefunctiondata [2/2]

std::istream& from_linefunctiondata ( std::istream &  data,
Type type,
bool &  self,
bool &  bath,
Model m,
ArrayOfSpeciesTag species 
)
friend

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
const Model m 
)
friend

Definition at line 858 of file linefunctiondata.h.

◆ operator>>

std::istream& operator>> ( std::istream &  is,
Model m 
)
friend

Definition at line 871 of file linefunctiondata.h.

Member Data Documentation

◆ _dT0 [1/8]

P P P P *P P P P P P P P P LineShape::Model::_dT0

Definition at line 736 of file linefunctiondata.h.

◆ _dT0 [2/8]

P P P P* P P P LineShape::Model::_dT0

Definition at line 737 of file linefunctiondata.h.

◆ _dT0 [3/8]

P P P P* P P P P P LineShape::Model::_dT0

Definition at line 738 of file linefunctiondata.h.

◆ _dT0 [4/8]

P P P P* P P P P P P P LineShape::Model::_dT0

Definition at line 739 of file linefunctiondata.h.

◆ _dT0 [5/8]

P P P P* P P P P P P P P P LineShape::Model::_dT0

Definition at line 740 of file linefunctiondata.h.

◆ _dT0 [6/8]

P P P P* P P P P P P P P P P P LineShape::Model::_dT0

Definition at line 742 of file linefunctiondata.h.

◆ _dT0 [7/8]

P P P P* P P P P P P P P P P P P P LineShape::Model::_dT0

Definition at line 743 of file linefunctiondata.h.

◆ _dT0 [8/8]

P P P P* P P P P P P P P P P P P P P* P P* P LineShape::Model::_dT0

Definition at line 744 of file linefunctiondata.h.

◆ _dX1 [1/9]

P P P P* P P LineShape::Model::_dX1

Definition at line 736 of file linefunctiondata.h.

◆ _dX1 [2/9]

P P P P* P P P P LineShape::Model::_dX1

Definition at line 737 of file linefunctiondata.h.

◆ _dX1 [3/9]

P P P P* P P P P P P LineShape::Model::_dX1

Definition at line 738 of file linefunctiondata.h.

◆ _dX1 [4/9]

P P P P* P P P P P P P P LineShape::Model::_dX1

Definition at line 739 of file linefunctiondata.h.

◆ _dX1 [5/9]

P P P P* P P P P P P P P P LineShape::Model::_dX1

Definition at line 740 of file linefunctiondata.h.

◆ _dX1 [6/9]

P P P P* P P P P P P P P P P LineShape::Model::_dX1

Definition at line 741 of file linefunctiondata.h.

◆ _dX1 [7/9]

P P P P* P P P P P P P P P P P P LineShape::Model::_dX1

Definition at line 742 of file linefunctiondata.h.

◆ _dX1 [8/9]

P P P P* P P P P P P P P P P P P P P* P LineShape::Model::_dX1

Definition at line 743 of file linefunctiondata.h.

◆ _dX1 [9/9]

P P P P* P P P P P P P P P P P P P P* P P* P P* P LineShape::Model::_dX1

Definition at line 744 of file linefunctiondata.h.

◆ const

P P P P* P P P P P P P P P P P P P P* P P* P P* P P* P Numeric Numeric const Vector& vmrs LineShape::Model::const
Initial value:
{
return {G0(T, T0, P, vmrs), D0(T, T0, P, vmrs),
G2(T, T0, P, vmrs), D2(T, T0, P, vmrs),
FVC(T, T0, P, vmrs), ETA(T, T0, P, vmrs),
Y(T, T0, P, vmrs), G(T, T0, P, vmrs), DV(T, T0, P, vmrs)}

Definition at line 747 of file linefunctiondata.h.

◆ mbath

bool LineShape::Model::mbath
private

◆ mdata

std::vector< SingleSpeciesModel > LineShape::Model::mdata
private

◆ mself

bool LineShape::Model::mself
private

◆ mspecies

◆ mtype

Type LineShape::Model::mtype
private

◆ P

P P P P* P P P P P P P P P P P P P P* P P* P P* P P* P Numeric Numeric LineShape::Model::P

Definition at line 747 of file linefunctiondata.h.

◆ T0

P P P P* P P P P P P P P P P P P P P* P P* P P* P P* P Numeric LineShape::Model::T0

Definition at line 747 of file linefunctiondata.h.


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