ARTS 2.5.4 (git: bcd8c674)
Absorption::SingleLine Struct Reference

Computations and data for a single absorption line. More...

#include <absorptionlines.h>

Public Member Functions

 SingleLine (Numeric F0_=0, Numeric I0_=0, Numeric E0_=0, Numeric glow_=0, Numeric gupp_=0, Numeric A_=0, Zeeman::Model zeeman_=Zeeman::Model(), LineShape::Model lineshape_=LineShape::Model(), Quantum::Number::LocalState localquanta_={})
 Default initialization. More...
 
 SingleLine (Quantum::Number::LocalState metaquanta, LineShape::Model metamodel)
 Initialization for constant sizes. More...
 
Index LineShapeElems () const noexcept
 Number of lineshape elements. More...
 
Index LocalQuantumElems () const noexcept
 Number of lower quantum numbers. More...
 
void SetAutomaticZeeman (QuantumIdentifier qid)
 Set Zeeman effect by automatic detection. More...
 
void SetLineMixing2SecondOrderData (const Vector &d)
 Set the line mixing model to 2nd order. More...
 
void SetLineMixing2AER (const Vector &d)
 Set the line mixing model to AER kind. More...
 
bifstreamread (bifstream &bif)
 Binary read for AbsorptionLines. More...
 
bofstreamwrite (bofstream &bof) const
 Binary write for AbsorptionLines. More...
 

Public Attributes

Numeric F0 {}
 Central frequency. More...
 
Numeric I0 {}
 Reference intensity. More...
 
Numeric E0 {}
 Lower state energy level. More...
 
Numeric glow {}
 Lower level statistical weight. More...
 
Numeric gupp {}
 Upper level statistical weight. More...
 
Numeric A {}
 Einstein spontaneous emission coefficient. More...
 
Zeeman::Model zeeman {}
 Zeeman model. More...
 
LineShape::Model lineshape {}
 Line shape model. More...
 
Quantum::Number::LocalState localquanta {}
 Local quantum numbers. More...
 

Friends

std::ostream & operator<< (std::ostream &, const SingleLine &)
 
std::istream & operator>> (std::istream &, SingleLine &)
 

Detailed Description

Computations and data for a single absorption line.

Definition at line 167 of file absorptionlines.h.

Constructor & Destructor Documentation

◆ SingleLine() [1/2]

Absorption::SingleLine::SingleLine ( Numeric  F0_ = 0,
Numeric  I0_ = 0,
Numeric  E0_ = 0,
Numeric  glow_ = 0,
Numeric  gupp_ = 0,
Numeric  A_ = 0,
Zeeman::Model  zeeman_ = Zeeman::Model(),
LineShape::Model  lineshape_ = LineShape::Model(),
Quantum::Number::LocalState  localquanta_ = {} 
)
inline

Default initialization.

Parameters
[in]F0_Central frequency
[in]I0_Reference line strength at external T0
[in]E0_Lower energy level
[in]glow_Lower level statistical weight
[in]gupp_Upper level statistical weight
[in]A_Einstein spontaneous emission coefficient
[in]zeeman_Zeeman model
[in]lineshape_Line shape model
[in]localquanta_Local quantum numbers

Definition at line 207 of file absorptionlines.h.

◆ SingleLine() [2/2]

Absorption::SingleLine::SingleLine ( Quantum::Number::LocalState  metaquanta,
LineShape::Model  metamodel 
)
inline

Initialization for constant sizes.

Parameters
metaquantaA quantum number state with the right sizes and access points
metamodelA line shape model with the right sizes and access points

Definition at line 231 of file absorptionlines.h.

Member Function Documentation

◆ LineShapeElems()

Index Absorption::SingleLine::LineShapeElems ( ) const
inlinenoexcept

Number of lineshape elements.

Definition at line 239 of file absorptionlines.h.

Referenced by Absorption::Lines::AppendSingleLine().

◆ LocalQuantumElems()

Index Absorption::SingleLine::LocalQuantumElems ( ) const
inlinenoexcept

Number of lower quantum numbers.

Definition at line 242 of file absorptionlines.h.

Referenced by Absorption::Lines::AppendSingleLine().

◆ read()

bifstream & Absorption::SingleLine::read ( bifstream bif)

Binary read for AbsorptionLines.

Standard parameters

Line shape model

Lower level quantum numbers

Definition at line 2189 of file absorptionlines.cc.

References A, E0, F0, glow, gupp, I0, lineshape, localquanta, LineShape::Model::read(), Quantum::Number::LocalState::val, and zeeman.

◆ SetAutomaticZeeman()

void Absorption::SingleLine::SetAutomaticZeeman ( QuantumIdentifier  qid)

Set Zeeman effect by automatic detection.

Will fail if the available and provided quantum numbers are bad

Parameters
[in]qidCopy of the global identifier to fill by local numbers

Definition at line 2165 of file absorptionlines.cc.

References localquanta, Quantum::Number::ValueList::set(), Quantum::Number::LocalState::val, Quantum::Number::GlobalState::val, and zeeman.

◆ SetLineMixing2AER()

void Absorption::SingleLine::SetLineMixing2AER ( const Vector d)

Set the line mixing model to AER kind.

Parameters
[in]dData in AER format

Definition at line 2178 of file absorptionlines.cc.

References d, LineShape::Model::Data(), LineShape::G, lineshape, and LineShape::Y.

◆ SetLineMixing2SecondOrderData()

void Absorption::SingleLine::SetLineMixing2SecondOrderData ( const Vector d)

Set the line mixing model to 2nd order.

Parameters
[in]dData in 2nd order format

Definition at line 2171 of file absorptionlines.cc.

References d, lineshape, LineShape::LegacyLineMixingData::LM_2NDORDER, LineShape::Model::SetLineMixingModel(), and LineShape::LegacyLineMixingData::vector2modellm().

◆ write()

bofstream & Absorption::SingleLine::write ( bofstream bof) const

Binary write for AbsorptionLines.

Standard parameters

Line shape model

Lower level quantum numbers

Definition at line 2202 of file absorptionlines.cc.

References A, E0, F0, glow, gupp, I0, lineshape, localquanta, Quantum::Number::LocalState::val, LineShape::Model::write(), and zeeman.

Friends And Related Function Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream &  os,
const SingleLine line 
)
friend

Definition at line 1804 of file absorptionlines.cc.

◆ operator>>

std::istream & operator>> ( std::istream &  is,
Absorption::SingleLine line 
)
friend

Definition at line 1812 of file absorptionlines.cc.

Member Data Documentation

◆ A

Numeric Absorption::SingleLine::A {}

Einstein spontaneous emission coefficient.

Definition at line 184 of file absorptionlines.h.

Referenced by read(), Absorption::ReadFromArtscat4Stream(), Absorption::ReadFromArtscat5Stream(), and write().

◆ E0

◆ F0

◆ glow

Numeric Absorption::SingleLine::glow {}

Lower level statistical weight.

Definition at line 178 of file absorptionlines.h.

Referenced by read(), Absorption::ReadFromArtscat4Stream(), Absorption::ReadFromArtscat5Stream(), and write().

◆ gupp

Numeric Absorption::SingleLine::gupp {}

Upper level statistical weight.

Definition at line 181 of file absorptionlines.h.

Referenced by read(), Absorption::ReadFromArtscat4Stream(), Absorption::ReadFromArtscat5Stream(), and write().

◆ I0

◆ lineshape

◆ localquanta

Quantum::Number::LocalState Absorption::SingleLine::localquanta {}

◆ zeeman

Zeeman::Model Absorption::SingleLine::zeeman {}

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