ARTS 2.5.11 (git: 725533f0)
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.
 
 SingleLine (Quantum::Number::LocalState metaquanta, LineShape::Model metamodel)
 Initialization for constant sizes.
 
Index LineShapeElems () const noexcept
 Number of lineshape elements.
 
Index LocalQuantumElems () const ARTS_NOEXCEPT
 Number of lower quantum numbers.
 
void SetAutomaticZeeman (QuantumIdentifier qid)
 Set Zeeman effect by automatic detection.
 
void SetLineMixing2SecondOrderData (const Vector &d)
 Set the line mixing model to 2nd order.
 
void SetLineMixing2AER (const Vector &d)
 Set the line mixing model to AER kind.
 
bifstreamread (bifstream &bif)
 Binary read for AbsorptionLines.
 
bofstreamwrite (bofstream &bof) const
 Binary write for AbsorptionLines.
 

Public Attributes

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

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 140 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 180 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 204 of file absorptionlines.h.

Member Function Documentation

◆ LineShapeElems()

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

Number of lineshape elements.

Definition at line 212 of file absorptionlines.h.

◆ LocalQuantumElems()

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

Number of lower quantum numbers.

Definition at line 215 of file absorptionlines.h.

◆ read()

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

Binary read for AbsorptionLines.

Standard parameters

Line shape model

Lower level quantum numbers

Definition at line 2166 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 2142 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 2155 of file absorptionlines.cc.

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

◆ 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 2148 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 2179 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 Symbol Documentation

◆ operator<<

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

Definition at line 1781 of file absorptionlines.cc.

◆ operator>>

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

Definition at line 1789 of file absorptionlines.cc.

Member Data Documentation

◆ A

Numeric Absorption::SingleLine::A {}

◆ E0

◆ F0

◆ glow

Numeric Absorption::SingleLine::glow {}

◆ gupp

Numeric Absorption::SingleLine::gupp {}

◆ I0

◆ lineshape

◆ localquanta

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

Local quantum numbers.

Definition at line 166 of file absorptionlines.h.

Referenced by read(), ReadArrayOfARTSCAT(), ReadARTSCAT(), ReadHITRAN(), SetAutomaticZeeman(), and write().

◆ zeeman

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

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