ARTS
2.3.1285(git:92a29ea9-dirty)
|
#include <absorptionlines.h>
Public Member Functions | |
Lines (bool selfbroadening=false, bool bathbroadening=false, CutoffType cutoff=CutoffType::None, MirroringType mirroring=MirroringType::None, PopulationType population=PopulationType::ByLTE, NormalizationType normalization=NormalizationType::None, LineShape::Type lineshapetype=LineShape::Type::DP, Numeric T0=296, Numeric cutofffreq=-1, Numeric linemixinglimit=-1, const QuantumIdentifier &quantumidentity=QuantumIdentifier(), const std::vector< QuantumNumberType > &localquanta={}, const ArrayOfSpeciesTag &broadeningspecies={}, const std::vector< SingleLine > &lines={}) | |
Default initialization. More... | |
Lines (bool selfbroadening, bool bathbroadening, size_t nlines, CutoffType cutoff, MirroringType mirroring, PopulationType population, NormalizationType normalization, LineShape::Type lineshapetype, Numeric T0, Numeric cutofffreq, Numeric linemixinglimit, const QuantumIdentifier &quantumidentity, const std::vector< QuantumNumberType > &localquanta, const ArrayOfSpeciesTag &broadeningspecies, const LineShape::Model &metamodel) | |
XML-tag initialization. More... | |
void | AppendSingleLine (SingleLine &&sl) |
Appends a single line to the absorption lines. More... | |
void | AppendSingleLine (const SingleLine &sl) |
Appends a single line to the absorption lines. More... | |
bool | MatchWithExternal (const SingleLineExternal &sle, const QuantumIdentifier &quantumidentity) const noexcept |
Checks if an external line matches this structure. More... | |
bool | Match (const Lines &l) const noexcept |
Checks if another line list matches this structure. More... | |
void | sort_by_frequency () |
Sort inner line list by frequency. More... | |
void | sort_by_einstein () |
Sort inner line list by Einstein coefficient. More... | |
void | truncate_global_quantum_numbers () |
Removes all global quantum numbers. More... | |
String | SpeciesName () const noexcept |
Species Name. More... | |
String | UpperQuantumNumbers () const noexcept |
Upper quantum numbers string. More... | |
String | LowerQuantumNumbers () const noexcept |
Lower quantum numbers string. More... | |
String | LineShapeMetaData () const noexcept |
Meta data for the line shape if it exists. More... | |
Index | Species () const noexcept |
Species Index. More... | |
Index | Isotopologue () const noexcept |
Isotopologue Index. More... | |
Index | NumLines () const noexcept |
Number of lines. More... | |
const std::vector< SingleLine > & | AllLines () const noexcept |
Lines. More... | |
std::vector< SingleLine > & | AllLines () noexcept |
Lines. More... | |
Index | NumBroadeners () const noexcept |
Number of broadening species. More... | |
Index | NumLocalQuanta () const noexcept |
Number of local quantum numbers. More... | |
void | RemoveUnusedLocalQuantums () |
Remove quantum numbers that are not used by even a single line. More... | |
void | RemoveLocalQuantum (size_t) |
Remove quantum numbers at the given position from all lines. More... | |
Rational | LowerQuantumNumber (size_t k, QuantumNumberType qnt) const noexcept |
Quantum number lower level. More... | |
Rational | UpperQuantumNumber (size_t k, QuantumNumberType qnt) const noexcept |
Quantum number upper level. More... | |
Rational & | LowerQuantumNumber (size_t k, QuantumNumberType qnt) noexcept |
Quantum number lower level. More... | |
Rational & | UpperQuantumNumber (size_t k, QuantumNumberType qnt) noexcept |
Quantum number upper level. More... | |
Index | ZeemanCount (size_t k, Zeeman::Polarization type) const noexcept |
Returns the number of Zeeman split lines. More... | |
Numeric | ZeemanStrength (size_t k, Zeeman::Polarization type, Index i) const noexcept |
Returns the strength of a Zeeman split line. More... | |
Numeric | ZeemanSplitting (size_t k, Zeeman::Polarization type, Index i) const noexcept |
Returns the splitting of a Zeeman split line. More... | |
void | SetAutomaticZeeman () noexcept |
Set Zeeman effect for all lines that have the correct quantum numbers. More... | |
Numeric | F0 (size_t k) const noexcept |
Central frequency. More... | |
Numeric & | F0 (size_t k) noexcept |
Central frequency. More... | |
Numeric | F_mean () const noexcept |
Mean frequency by weight of line strengt. More... | |
Numeric | F_mean (const ConstVectorView wgts) const noexcept |
Mean frequency by weight of line strengt. More... | |
Numeric | E0 (size_t k) const noexcept |
Lower level energy. More... | |
Numeric & | E0 (size_t k) noexcept |
Lower level energy. More... | |
Numeric | I0 (size_t k) const noexcept |
Reference line strength. More... | |
Numeric & | I0 (size_t k) noexcept |
Reference line strength. More... | |
Numeric | A (size_t k) const noexcept |
Einstein spontaneous emission. More... | |
Numeric & | A (size_t k) noexcept |
Einstein spontaneous emission. More... | |
Numeric | g_low (size_t k) const noexcept |
Lower level statistical weight. More... | |
Numeric & | g_low (size_t k) noexcept |
Lower level statistical weight. More... | |
Numeric | g_upp (size_t k) const noexcept |
Upper level statistical weight. More... | |
Numeric & | g_upp (size_t k) noexcept |
Upper level statistical weight. More... | |
MirroringType | Mirroring () const noexcept |
Returns mirroring style. More... | |
void | Mirroring (MirroringType x) noexcept |
Returns mirroring style. More... | |
NormalizationType | Normalization () const noexcept |
Returns normalization style. More... | |
void | Normalization (NormalizationType x) noexcept |
Returns normalization style. More... | |
CutoffType | Cutoff () const noexcept |
Returns cutoff style. More... | |
void | Cutoff (CutoffType x) noexcept |
Sets cutoff style. More... | |
PopulationType | Population () const noexcept |
Returns population style. More... | |
void | Population (PopulationType x) noexcept |
Sets population style. More... | |
LineShape::Type | LineShapeType () const noexcept |
Returns lineshapetype style. More... | |
void | LineShapeType (LineShape::Type x) noexcept |
Sets lineshapetype style. More... | |
bool | DoLineMixing (Numeric P) const noexcept |
Returns if the pressure should do line mixing. More... | |
LineShape::Output | ShapeParameters (size_t k, Numeric T, Numeric P, const Vector &vmrs) const noexcept |
Line shape parameters. More... | |
LineShape::Output | ShapeParameters_dT (size_t k, Numeric T, Numeric P, const Vector &vmrs) const noexcept |
Line shape parameters temperature derivatives. More... | |
Index | LineShapePos (const Index &spec) const noexcept |
Position among broadening species or -1. More... | |
Index | LineShapePos (const QuantumIdentifier &qid) const noexcept |
Position among broadening species or -1. More... | |
LineShape::Output | ShapeParameters_dVMR (size_t k, Numeric T, Numeric P, const QuantumIdentifier &vmr_qid) const noexcept |
Line shape parameters vmr derivative. More... | |
Numeric | ShapeParameter_dInternal (size_t k, Numeric T, Numeric P, const Vector &vmrs, const RetrievalQuantity &derivative) const noexcept |
Line shape parameter internal derivative. More... | |
Numeric | CutoffFreq (size_t k) const noexcept |
Returns cutoff frequency or maximum value. More... | |
Numeric | CutoffFreqMinus (size_t k, Numeric fmean) const noexcept |
Returns negative cutoff frequency or lowest value. More... | |
Numeric | T0 () const noexcept |
Returns reference temperature. More... | |
void | T0 (Numeric x) noexcept |
Sets reference temperature. More... | |
Numeric | CutoffFreqValue () const noexcept |
Returns internal cutoff frequency value. More... | |
void | CutoffFreqValue (Numeric x) noexcept |
Sets internal cutoff frequency value. More... | |
Numeric | LinemixingLimit () const noexcept |
Returns line mixing limit. More... | |
void | LinemixingLimit (Numeric x) noexcept |
Sets line mixing limit. More... | |
const std::vector< QuantumNumberType > & | LocalQuanta () const noexcept |
Returns local quantum numbers. More... | |
std::vector< QuantumNumberType > & | LocalQuanta () noexcept |
Returns local quantum numbers. More... | |
const ArrayOfSpeciesTag & | BroadeningSpecies () const noexcept |
Returns the broadening species. More... | |
ArrayOfSpeciesTag & | BroadeningSpecies () noexcept |
Returns the broadening species. More... | |
bool | Self () const noexcept |
Returns self broadening status. More... | |
void | Self (bool x) noexcept |
Returns self broadening status. More... | |
bool | Bath () const noexcept |
Returns bath broadening status. More... | |
void | Bath (bool x) noexcept |
Returns bath broadening status. More... | |
const QuantumIdentifier & | QuantumIdentity () const noexcept |
Returns identity status. More... | |
QuantumIdentifier & | QuantumIdentity () noexcept |
Returns identity status. More... | |
QuantumIdentifier | QuantumIdentityOfLine (Index k) const noexcept |
Returns identity status. More... | |
String | MetaData () const |
Returns a printable statement about the lines. More... | |
void | RemoveLine (Index) noexcept |
Removes a single line. More... | |
SingleLine | PopLine (Index) noexcept |
Pops a single line. More... | |
SingleLine & | Line (Index) noexcept |
Returns a single line. More... | |
const SingleLine & | Line (Index) const noexcept |
Returns a single line. More... | |
void | ReverseLines () noexcept |
Reverses the order of the internal lines. More... | |
Numeric | SpeciesMass () const noexcept |
Mass of the molecule. More... | |
Vector | BroadeningSpeciesVMR (const ConstVectorView, const ArrayOfArrayOfSpeciesTag &) const |
Returns the VMRs of the broadening species. More... | |
Numeric | SelfVMR (const ConstVectorView, const ArrayOfArrayOfSpeciesTag &) const |
Returns the VMR of the species. More... | |
bifstream & | read (bifstream &is) |
Binary read for Lines. More... | |
bofstream & | write (bofstream &os) const |
Binary write for Lines. More... | |
bool | OK () const noexcept |
Static Public Member Functions | |
static bool | validIndexForMirroring (Index x) noexcept |
Checks if index is a valid mirroring. More... | |
static MirroringType | string2Mirroring (const String &in) noexcept |
static bool | validIndexForNormalization (Index x) noexcept |
Checks if index is a valid normalization. More... | |
static NormalizationType | string2Normalization (const String &in) noexcept |
static bool | validIndexForCutoff (Index x) noexcept |
Checks if index is a valid cutoff. More... | |
static CutoffType | string2Cutoff (const String &in) noexcept |
static bool | validIndexForPopulation (Index x) noexcept |
Checks if index is a valid population. More... | |
static PopulationType | string2Population (const String &in) noexcept |
static bool | validIndexForLineShapeType (Index x) noexcept |
Checks if index is a valid lineshapetype. More... | |
static LineShape::Type | string2LineShapeType (const String &type) noexcept |
Private Attributes | |
bool | mselfbroadening |
Does the line broadening have self broadening. More... | |
bool | mbathbroadening |
Does the line broadening have bath broadening. More... | |
CutoffType | mcutoff |
cutoff type, by band or by line More... | |
MirroringType | mmirroring |
Mirroring type. More... | |
PopulationType | mpopulation |
Line population distribution. More... | |
NormalizationType | mnormalization |
Line normalization type. More... | |
LineShape::Type | mlineshapetype |
Type of line shape. More... | |
Numeric | mT0 |
Reference temperature for all parameters of the lines. More... | |
Numeric | mcutofffreq |
cutoff frequency More... | |
Numeric | mlinemixinglimit |
linemixing limit More... | |
QuantumIdentifier | mquantumidentity |
Catalog ID. More... | |
std::vector< QuantumNumberType > | mlocalquanta |
List of local quantum numbers, these must be defined. More... | |
ArrayOfSpeciesTag | mbroadeningspecies |
A list of broadening species. More... | |
std::vector< SingleLine > | mlines |
A list of individual lines. More... | |
Definition at line 547 of file absorptionlines.h.
|
inline |
Default initialization.
[in] | selfbroadening | Do self broadening |
[in] | bathbroadening | Do bath broadening |
[in] | cutoff | Type of cutoff frequency |
[in] | mirroring | Type of mirroring |
[in] | population | Type of line strengths distributions |
[in] | normalization | Type of normalization |
[in] | lineshapetype | Type of line shape |
[in] | T0 | Reference temperature |
[in] | cutofffreq | Cutoff frequency |
[in] | linemixinglimit | Line mixing limit |
[in] | quantumidentity | Identity of global lines |
[in] | localquanta | List of local quantum number(s) |
[in] | broadeningspecies | List of broadening species |
[in] | lines | List of SingleLine(s) |
Definition at line 609 of file absorptionlines.h.
|
inline |
XML-tag initialization.
[in] | selfbroadening | Do self broadening |
[in] | bathbroadening | Do bath broadening |
[in] | nlines | Number of SingleLine(s) to initiate as empty |
[in] | cutoff | Type of cutoff frequency |
[in] | mirroring | Type of mirroring |
[in] | population | Type of line strengths distributions |
[in] | normalization | Type of normalization |
[in] | lineshapetype | Type of line shape |
[in] | T0 | Reference temperature |
[in] | cutofffreq | Cutoff frequency |
[in] | linemixinglimit | Line mixing limit |
[in] | quantumidentity | Identity of global lines |
[in] | localquanta | List of local quantum number(s) |
[in] | broadeningspecies | List of broadening species |
[in] | metamodel | A line shape model with defined shapes |
Definition at line 656 of file absorptionlines.h.
|
inlinenoexcept |
Einstein spontaneous emission.
[in] | k | Line number (less than NumLines()) |
Definition at line 1038 of file absorptionlines.h.
|
inlinenoexcept |
Einstein spontaneous emission.
[in] | k | Line number (less than NumLines()) |
Definition at line 1045 of file absorptionlines.h.
|
inlinenoexcept |
Definition at line 855 of file absorptionlines.h.
Referenced by Absorption::operator<<(), and Absorption::operator>>().
|
inlinenoexcept |
Definition at line 858 of file absorptionlines.h.
|
inline |
Appends a single line to the absorption lines.
Useful for reading undefined number of lines and setting their structures
Warning: caller must guarantee that the broadening species and the quantum numbers of both levels have the correct order and the correct size. Only the sizes can be and are tested.
[in] | sl | A single line |
Definition at line 700 of file absorptionlines.h.
|
inline |
Appends a single line to the absorption lines.
Useful for reading undefined number of lines and setting their structures
Warning: caller must guarantee that the broadening species and the quantum numbers of both levels have the correct order and the correct size. Only the sizes can be and are tested.
[in] | sl | A single line |
Definition at line 724 of file absorptionlines.h.
References Absorption::SingleLine::LineShapeElems(), Absorption::SingleLine::LowerQuantumElems(), and Absorption::SingleLine::UpperQuantumElems().
|
inlinenoexcept |
Returns bath broadening status.
Definition at line 1371 of file absorptionlines.h.
Referenced by BroadeningSpeciesVMR(), and xml_write_to_stream().
|
inlinenoexcept |
Returns bath broadening status.
Definition at line 1376 of file absorptionlines.h.
|
inlinenoexcept |
Returns the broadening species.
Definition at line 1351 of file absorptionlines.h.
Referenced by BroadeningSpeciesVMR(), and xml_write_to_stream().
|
inlinenoexcept |
Returns the broadening species.
Definition at line 1356 of file absorptionlines.h.
Vector Absorption::Lines::BroadeningSpeciesVMR | ( | const ConstVectorView | atm_vmrs, |
const ArrayOfArrayOfSpeciesTag & | atm_spec | ||
) | const |
Returns the VMRs of the broadening species.
[in] | atm_vmrs | Atmospheric VMRs |
[in] | atm_spec | Atmospheric Species |
Definition at line 2730 of file absorptionlines.cc.
References Bath(), BroadeningSpecies(), LineShapeType(), QuantumIdentity(), Self(), and LineShape::vmrs().
Referenced by xsec_species().
|
inlinenoexcept |
Returns cutoff style.
Definition at line 1128 of file absorptionlines.h.
Referenced by Linefunctions::set_cross_section_of_band(), and xml_write_to_stream().
|
inlinenoexcept |
Sets cutoff style.
Definition at line 1131 of file absorptionlines.h.
|
inlinenoexcept |
Returns cutoff frequency or maximum value.
[in] | k | Line number (less than NumLines()) |
Definition at line 1281 of file absorptionlines.h.
References Absorption::BandFixedFrequency, F0, Absorption::LineByLineOffset, max, and Absorption::None.
Referenced by Linefunctions::set_cross_section_of_band().
Returns negative cutoff frequency or lowest value.
[in] | k | Line number (less than NumLines()) |
Definition at line 1298 of file absorptionlines.h.
References Absorption::BandFixedFrequency, F0, Absorption::LineByLineOffset, and Absorption::None.
Referenced by Linefunctions::set_cross_section_of_band().
|
inlinenoexcept |
Returns internal cutoff frequency value.
Definition at line 1321 of file absorptionlines.h.
Referenced by xml_write_to_stream().
|
inlinenoexcept |
Sets internal cutoff frequency value.
Definition at line 1326 of file absorptionlines.h.
|
inlinenoexcept |
Returns if the pressure should do line mixing.
[in] | P | Atmospheric pressure |
Definition at line 1212 of file absorptionlines.h.
References LineShape::vmrs().
|
inlinenoexcept |
Lower level energy.
[in] | k | Line number (less than NumLines()) |
Definition at line 1010 of file absorptionlines.h.
|
inlinenoexcept |
Lower level energy.
[in] | k | Line number (less than NumLines()) |
Definition at line 1017 of file absorptionlines.h.
|
inlinenoexcept |
Central frequency.
[in] | k | Line number (less than NumLines()) |
Definition at line 970 of file absorptionlines.h.
Referenced by Linefunctions::set_cross_section_of_band().
|
inlinenoexcept |
Central frequency.
[in] | k | Line number (less than NumLines()) |
Definition at line 977 of file absorptionlines.h.
|
inlinenoexcept |
Mean frequency by weight of line strengt.
Definition at line 983 of file absorptionlines.h.
Referenced by Linefunctions::set_cross_section_of_band().
|
inlinenoexcept |
Mean frequency by weight of line strengt.
[in] | wgts | Weight of averaging |
Definition at line 997 of file absorptionlines.h.
|
inlinenoexcept |
Lower level statistical weight.
[in] | k | Line number (less than NumLines()) |
Definition at line 1052 of file absorptionlines.h.
|
inlinenoexcept |
Lower level statistical weight.
[in] | k | Line number (less than NumLines()) |
Definition at line 1059 of file absorptionlines.h.
|
inlinenoexcept |
Upper level statistical weight.
[in] | k | Line number (less than NumLines()) |
Definition at line 1066 of file absorptionlines.h.
|
inlinenoexcept |
Upper level statistical weight.
[in] | k | Line number (less than NumLines()) |
Definition at line 1073 of file absorptionlines.h.
|
inlinenoexcept |
Reference line strength.
[in] | k | Line number (less than NumLines()) |
Definition at line 1024 of file absorptionlines.h.
|
inlinenoexcept |
Reference line strength.
[in] | k | Line number (less than NumLines()) |
Definition at line 1031 of file absorptionlines.h.
|
inlinenoexcept |
Isotopologue Index.
Definition at line 849 of file absorptionlines.h.
References QuantumIdentifier::Isotopologue().
Referenced by Absorption::id_in_line(), Absorption::id_in_line_lower(), Absorption::id_in_line_upper(), Absorption::line_in_id(), Absorption::line_lower_in_id(), Absorption::line_upper_in_id(), SpeciesMass(), and SpeciesName().
|
noexcept |
Returns a single line.
Definition at line 2709 of file absorptionlines.cc.
Referenced by Linefunctions::set_cross_section_of_band().
|
noexcept |
Returns a single line.
Definition at line 2715 of file absorptionlines.cc.
|
inlinenoexcept |
Returns line mixing limit.
Definition at line 1331 of file absorptionlines.h.
Referenced by Linefunctions::set_cross_section_of_band(), and xml_write_to_stream().
|
inlinenoexcept |
Sets line mixing limit.
Definition at line 1336 of file absorptionlines.h.
|
inlinenoexcept |
Meta data for the line shape if it exists.
Definition at line 839 of file absorptionlines.h.
References LineShape::ModelShape2MetaData().
Referenced by xml_write_to_stream().
Position among broadening species or -1.
[in] | A | species index that might be among the broadener species |
Definition at line 84 of file absorptionlines.cc.
|
inlinenoexcept |
Position among broadening species or -1.
[in] | An | identity that might be among the broadener species |
Definition at line 1248 of file absorptionlines.h.
|
inlinenoexcept |
Returns lineshapetype style.
Definition at line 1180 of file absorptionlines.h.
Referenced by BroadeningSpeciesVMR(), Linefunctions::set_cross_section_of_band(), and xml_write_to_stream().
|
inlinenoexcept |
Sets lineshapetype style.
Definition at line 1183 of file absorptionlines.h.
|
inlinenoexcept |
Returns local quantum numbers.
Definition at line 1341 of file absorptionlines.h.
Referenced by xml_write_to_stream().
|
inlinenoexcept |
Returns local quantum numbers.
Definition at line 1346 of file absorptionlines.h.
|
noexcept |
Quantum number lower level.
[in] | k | Line number (less than NumLines()) |
[in] | qnt | Quantum number type |
Definition at line 40 of file absorptionlines.cc.
Referenced by Absorption::id_in_line(), Absorption::id_in_line_lower(), Absorption::line_in_id(), and Absorption::line_lower_in_id().
|
noexcept |
Quantum number lower level.
[in] | k | Line number (less than NumLines()) |
[in] | qnt | Quantum number type |
Definition at line 54 of file absorptionlines.cc.
|
noexcept |
Lower quantum numbers string.
Definition at line 2570 of file absorptionlines.cc.
References QuantumIdentifier::LowerQuantumNumbers(), and mquantumidentity.
Referenced by MetaData(), and xml_write_to_stream().
|
inlinenoexcept |
Checks if another line list matches this structure.
[in] | sle | Full external lines |
[in] | quantumidentity | Expected global quantum id of the line |
Definition at line 779 of file absorptionlines.h.
|
inlinenoexcept |
Checks if an external line matches this structure.
[in] | sle | Full external lines |
[in] | quantumidentity | Expected global quantum id of the line |
Definition at line 741 of file absorptionlines.h.
String Absorption::Lines::MetaData | ( | ) | const |
Returns a printable statement about the lines.
Definition at line 2580 of file absorptionlines.cc.
References Absorption::cutofftype2metadatastring(), i, LowerQuantumNumbers(), mbathbroadening, mbroadeningspecies, mcutoff, mcutofffreq, Absorption::mirroringtype2metadatastring(), mlinemixinglimit, mlines, mlineshapetype, mlocalquanta, mmirroring, mnormalization, LineShape::ModelMetaDataArray(), mpopulation, mselfbroadening, mT0, Absorption::normalizationtype2metadatastring(), NumLines(), Absorption::populationtype2metadatastring(), quantumnumbertype2string(), LineShape::shapetype2metadatastring(), SpeciesName(), and UpperQuantumNumbers().
Referenced by xml_write_to_stream().
|
inlinenoexcept |
Returns mirroring style.
Definition at line 1076 of file absorptionlines.h.
Referenced by Linefunctions::set_cross_section_of_band(), and xml_write_to_stream().
|
inlinenoexcept |
Returns mirroring style.
Definition at line 1079 of file absorptionlines.h.
|
inlinenoexcept |
Returns normalization style.
Definition at line 1102 of file absorptionlines.h.
Referenced by Linefunctions::set_cross_section_of_band(), and xml_write_to_stream().
|
inlinenoexcept |
Returns normalization style.
Definition at line 1105 of file absorptionlines.h.
|
inlinenoexcept |
Number of broadening species.
Definition at line 861 of file absorptionlines.h.
References Array< base >::nelem().
|
inlinenoexcept |
Number of lines.
Definition at line 852 of file absorptionlines.h.
Referenced by MetaData(), Absorption::nelem(), Linefunctions::set_cross_section_of_band(), xml_write_to_stream(), and xsec_species().
|
inlinenoexcept |
Number of local quantum numbers.
Definition at line 864 of file absorptionlines.h.
|
noexcept |
Definition at line 3527 of file absorptionlines.cc.
References mbathbroadening, mbroadeningspecies, mlines, mlocalquanta, mselfbroadening, mT0, and Array< base >::nelem().
|
noexcept |
Pops a single line.
Definition at line 2693 of file absorptionlines.cc.
References i, mlines, and RemoveLine().
|
inlinenoexcept |
Returns population style.
Definition at line 1152 of file absorptionlines.h.
Referenced by Linefunctions::set_cross_section_of_band(), and xml_write_to_stream().
|
inlinenoexcept |
Sets population style.
Definition at line 1155 of file absorptionlines.h.
|
inlinenoexcept |
Returns identity status.
Definition at line 1381 of file absorptionlines.h.
Referenced by Linefunctions::apply_rosenkranz_quadratic_scaling(), Linefunctions::apply_VVH_scaling(), Linefunctions::apply_VVW_scaling(), BroadeningSpeciesVMR(), Linefunctions::set_cross_section_of_band(), Linefunctions::set_doppler(), Linefunctions::set_lorentz(), and Linefunctions::set_voigt().
|
inlinenoexcept |
Returns identity status.
Definition at line 1386 of file absorptionlines.h.
|
inlinenoexcept |
Returns identity status.
Definition at line 1391 of file absorptionlines.h.
References i, and QuantumIdentifier::UpperQuantumNumber().
Binary read for Lines.
Definition at line 1438 of file absorptionlines.h.
|
noexcept |
void Absorption::Lines::RemoveLocalQuantum | ( | size_t | x | ) |
Remove quantum numbers at the given position from all lines.
Definition at line 2669 of file absorptionlines.cc.
References mlines, and mlocalquanta.
Referenced by RemoveUnusedLocalQuantums().
void Absorption::Lines::RemoveUnusedLocalQuantums | ( | ) |
Remove quantum numbers that are not used by even a single line.
Definition at line 2643 of file absorptionlines.cc.
References i, mlines, mlocalquanta, and RemoveLocalQuantum().
|
noexcept |
Reverses the order of the internal lines.
Definition at line 2720 of file absorptionlines.cc.
References mlines.
|
inlinenoexcept |
Returns self broadening status.
Definition at line 1361 of file absorptionlines.h.
Referenced by BroadeningSpeciesVMR(), and xml_write_to_stream().
|
inlinenoexcept |
Returns self broadening status.
Definition at line 1366 of file absorptionlines.h.
Numeric Absorption::Lines::SelfVMR | ( | const ConstVectorView | atm_vmrs, |
const ArrayOfArrayOfSpeciesTag & | atm_spec | ||
) | const |
Returns the VMR of the species.
[in] | atm_vmrs | Atmospheric VMRs |
[in] | atm_spec | Atmospheric Species |
Definition at line 2737 of file absorptionlines.cc.
References i, Array< base >::nelem(), ConstVectorView::nelem(), Absorption::nelem(), and Species().
|
inlinenoexcept |
Set Zeeman effect for all lines that have the correct quantum numbers.
Definition at line 960 of file absorptionlines.h.
|
noexcept |
Line shape parameter internal derivative.
[in] | k | Line number (less than NumLines()) |
[in] | T | Atmospheric temperature |
[in] | P | Atmospheric pressure |
[in] | vmrs | Line broadener's volume mixing ratio |
[in] | derivative | Type of line shape derivative |
Definition at line 131 of file absorptionlines.cc.
Referenced by Linefunctions::apply_lineshapemodel_jacobian_scaling().
|
noexcept |
Line shape parameters.
[in] | k | Line number (less than NumLines()) |
[in] | T | Atmospheric temperature |
[in] | P | Atmospheric pressure |
[in] | vmrs | Line broadener species's volume mixing ratio |
Definition at line 68 of file absorptionlines.cc.
Referenced by Linefunctions::set_cross_section_of_band().
|
noexcept |
Line shape parameters temperature derivatives.
[in] | k | Line number (less than NumLines()) |
[in] | T | Atmospheric temperature |
[in] | P | Atmospheric pressure |
[in] | vmrs | Line broadener's volume mixing ratio |
Definition at line 76 of file absorptionlines.cc.
Referenced by Linefunctions::set_cross_section_of_band().
|
noexcept |
Line shape parameters vmr derivative.
[in] | k | Line number (less than NumLines()) |
[in] | T | Atmospheric temperature |
[in] | P | Atmospheric pressure |
[in] | vmr_qid | Identity of species whose VMR derivative is requested |
Definition at line 102 of file absorptionlines.cc.
Referenced by Linefunctions::set_cross_section_of_band().
|
inline |
Sort inner line list by Einstein coefficient.
Definition at line 819 of file absorptionlines.h.
References Absorption::SingleLine::A().
|
inline |
Sort inner line list by frequency.
Definition at line 813 of file absorptionlines.h.
References Absorption::SingleLine::F0().
|
inlinenoexcept |
Species Index.
Definition at line 846 of file absorptionlines.h.
References QuantumIdentifier::Species().
Referenced by Absorption::id_in_line(), Absorption::id_in_line_lower(), Absorption::id_in_line_upper(), Absorption::line_in_id(), Absorption::line_lower_in_id(), Absorption::line_upper_in_id(), SelfVMR(), SpeciesDataOfBand(), SpeciesMass(), and SpeciesName().
|
noexcept |
Mass of the molecule.
Definition at line 2725 of file absorptionlines.cc.
References Isotopologue(), Species(), and global_data::species_data.
Referenced by xsec_species().
|
noexcept |
Species Name.
Definition at line 2547 of file absorptionlines.cc.
References SpeciesRecord::Isotopologue(), Isotopologue(), SpeciesRecord::Name(), Species(), and global_data::species_data.
Referenced by MetaData(), and xml_write_to_stream().
|
inlinestaticnoexcept |
Definition at line 1140 of file absorptionlines.h.
References Absorption::BandFixedFrequency, Absorption::LineByLineOffset, and Absorption::None.
|
inlinestaticnoexcept |
Definition at line 1192 of file absorptionlines.h.
References LineShape::DP, LineShape::HTP, LineShape::LP, LineShape::SDVP, and LineShape::VP.
|
inlinestaticnoexcept |
Definition at line 1088 of file absorptionlines.h.
References Absorption::Lorentz, Absorption::Manual, Absorption::None, and Absorption::SameAsLineShape.
|
inlinestaticnoexcept |
Definition at line 1114 of file absorptionlines.h.
References Absorption::None, Absorption::RosenkranzQuadratic, Absorption::VVH, and Absorption::VVW.
|
inlinestaticnoexcept |
Definition at line 1164 of file absorptionlines.h.
References Absorption::ByHITRANFullRelmat, Absorption::ByHITRANRosenkranzRelmat, Absorption::ByLTE, Absorption::ByNLTEPopulationDistribution, and Absorption::ByNLTEVibrationalTemperatures.
|
inlinenoexcept |
Returns reference temperature.
Definition at line 1311 of file absorptionlines.h.
Referenced by Linefunctions::set_cross_section_of_band(), xml_write_to_stream(), and xsec_species().
|
inlinenoexcept |
Sets reference temperature.
Definition at line 1316 of file absorptionlines.h.
|
inline |
Removes all global quantum numbers.
Definition at line 825 of file absorptionlines.h.
References QuantumIdentifier::SetTransition().
|
noexcept |
Quantum number upper level.
[in] | k | Line number (less than NumLines()) |
[in] | qnt | Quantum number type |
Definition at line 47 of file absorptionlines.cc.
Referenced by Absorption::id_in_line(), Absorption::id_in_line_upper(), Absorption::line_in_id(), and Absorption::line_upper_in_id().
|
noexcept |
Quantum number upper level.
[in] | k | Line number (less than NumLines()) |
[in] | qnt | Quantum number type |
Definition at line 61 of file absorptionlines.cc.
|
noexcept |
Upper quantum numbers string.
Definition at line 2560 of file absorptionlines.cc.
References mquantumidentity, and QuantumIdentifier::UpperQuantumNumbers().
Referenced by MetaData(), and xml_write_to_stream().
|
inlinestaticnoexcept |
Checks if index is a valid cutoff.
Definition at line 1134 of file absorptionlines.h.
References Absorption::BandFixedFrequency, Absorption::LineByLineOffset, Absorption::None, and stdarrayify().
|
inlinestaticnoexcept |
Checks if index is a valid lineshapetype.
Definition at line 1186 of file absorptionlines.h.
References LineShape::DP, LineShape::HTP, LineShape::LP, LineShape::SDVP, stdarrayify(), and LineShape::VP.
|
inlinestaticnoexcept |
Checks if index is a valid mirroring.
Definition at line 1082 of file absorptionlines.h.
References Absorption::Lorentz, Absorption::Manual, Absorption::None, Absorption::SameAsLineShape, and stdarrayify().
|
inlinestaticnoexcept |
Checks if index is a valid normalization.
Definition at line 1108 of file absorptionlines.h.
References Absorption::None, Absorption::RosenkranzQuadratic, stdarrayify(), Absorption::VVH, and Absorption::VVW.
|
inlinestaticnoexcept |
Checks if index is a valid population.
Definition at line 1158 of file absorptionlines.h.
References Absorption::ByHITRANFullRelmat, Absorption::ByHITRANRosenkranzRelmat, Absorption::ByLTE, Absorption::ByNLTEPopulationDistribution, Absorption::ByNLTEVibrationalTemperatures, and stdarrayify().
Binary write for Lines.
Definition at line 1445 of file absorptionlines.h.
References Absorption::createEmptyCopy(), Absorption::id_in_line(), Absorption::id_in_line_lower(), Absorption::id_in_line_upper(), Absorption::line_in_id(), Absorption::line_is_id(), Absorption::line_lower_in_id(), Absorption::line_upper_in_id(), Absorption::operator<<(), Absorption::operator>>(), Absorption::ReadFromArtscat3Stream(), Absorption::ReadFromArtscat4Stream(), Absorption::ReadFromArtscat5Stream(), Absorption::ReadFromHitran2001Stream(), Absorption::ReadFromHitran2004Stream(), Absorption::ReadFromHitranOnlineStream(), Absorption::ReadFromJplStream(), Absorption::ReadFromLBLRTMStream(), Absorption::ReadFromMytran2Stream(), and Absorption::split_list_of_external_lines().
Referenced by xml_write_to_stream().
|
inlinenoexcept |
Returns the number of Zeeman split lines.
[in] | k | Line number (less than NumLines()) |
[in] | type | Type of Zeeman polarization |
Definition at line 911 of file absorptionlines.h.
References F, J, and Zeeman::nelem().
Referenced by Linefunctions::set_cross_section_of_band().
|
inlinenoexcept |
Returns the splitting of a Zeeman split line.
[in] | k | Line number (less than NumLines()) |
[in] | type | Type of Zeeman polarization |
[in] | i | Zeeman line count |
Definition at line 947 of file absorptionlines.h.
References F.
Referenced by Linefunctions::set_cross_section_of_band().
|
inlinenoexcept |
Returns the strength of a Zeeman split line.
[in] | k | Line number (less than NumLines()) |
[in] | type | Type of Zeeman polarization |
[in] | i | Zeeman line count |
Definition at line 929 of file absorptionlines.h.
References F.
Referenced by Linefunctions::set_cross_section_of_band().
|
private |
Does the line broadening have bath broadening.
Definition at line 553 of file absorptionlines.h.
Referenced by MetaData(), and OK().
|
private |
A list of broadening species.
Definition at line 586 of file absorptionlines.h.
Referenced by MetaData(), and OK().
|
private |
cutoff type, by band or by line
Definition at line 556 of file absorptionlines.h.
Referenced by MetaData().
|
private |
|
private |
|
private |
A list of individual lines.
Definition at line 589 of file absorptionlines.h.
Referenced by Line(), MetaData(), OK(), PopLine(), RemoveLine(), RemoveLocalQuantum(), RemoveUnusedLocalQuantums(), and ReverseLines().
|
private |
|
private |
List of local quantum numbers, these must be defined.
Definition at line 583 of file absorptionlines.h.
Referenced by MetaData(), OK(), RemoveLocalQuantum(), and RemoveUnusedLocalQuantums().
|
private |
|
private |
Line normalization type.
Definition at line 565 of file absorptionlines.h.
Referenced by MetaData().
|
private |
Line population distribution.
Definition at line 562 of file absorptionlines.h.
Referenced by MetaData().
|
private |
Catalog ID.
Definition at line 580 of file absorptionlines.h.
Referenced by LowerQuantumNumbers(), and UpperQuantumNumbers().
|
private |
Does the line broadening have self broadening.
Definition at line 550 of file absorptionlines.h.
Referenced by MetaData(), and OK().
|
private |
Reference temperature for all parameters of the lines.
Definition at line 571 of file absorptionlines.h.
Referenced by MetaData(), and OK().