ARTS  2.0.49
SpeciesTag Class Reference

A tag group can consist of the sum of several of these. More...

#include <abs_species_tags.h>

Public Member Functions

 SpeciesTag ()
 Default constructor. More...
 
 SpeciesTag (String def)
 Constructor from a tag definition String. More...
 
String Name () const
 Return the full name of the tag. More...
 
Index Species () const
 Molecular species index. More...
 
Index Isotope () const
 Isotopic species index. More...
 
Numeric Lf () const
 The lower line center frequency in Hz. More...
 
Numeric Uf () const
 The upper line center frequency in Hz: If this is <0 it means no upper limit. More...
 
bool operator== (const SpeciesTag &other) const
 Comparison operator for species tags. More...
 

Private Attributes

Index mspecies
 Molecular species index. More...
 
Index misotope
 Isotopic species index. More...
 
Numeric mlf
 The lower limit line center frequency in Hz. More...
 
Numeric muf
 The upper line center frequency in Hz. More...
 

Detailed Description

A tag group can consist of the sum of several of these.

Author
Stefan Buehler

Definition at line 45 of file abs_species_tags.h.

Constructor & Destructor Documentation

◆ SpeciesTag() [1/2]

SpeciesTag::SpeciesTag ( )
inline

Default constructor.

Definition at line 48 of file abs_species_tags.h.

◆ SpeciesTag() [2/2]

SpeciesTag::SpeciesTag ( String  def)

Constructor from a tag definition String.

For examples see documentation of member function Name().

Parameters
defString containing tag definition.
Exceptions
runtime_errorThe given String could not be mapped to a sensible tag description.

Definition at line 47 of file abs_species_tags.cc.

References find_first(), SpeciesRecord::Isotope(), misotope, mlf, mspecies, muf, Array< base >::nelem(), my_basic_string< charT >::nelem(), my_basic_string< charT >::npos, species_data, and species_index_from_species_name().

Member Function Documentation

◆ Isotope()

Index SpeciesTag::Isotope ( ) const
inline

Isotopic species index.

If this is equal to the number of isotopes (one more than allowed) it means all isotopes of this species.

Definition at line 66 of file abs_species_tags.h.

References misotope.

Referenced by abs_lines_per_speciesCreateFromLines().

◆ Lf()

Numeric SpeciesTag::Lf ( ) const
inline

The lower line center frequency in Hz.

If this is <0 it means no lower limit.

Definition at line 70 of file abs_species_tags.h.

References mlf.

Referenced by abs_lines_per_speciesCreateFromLines().

◆ Name()

String SpeciesTag::Name ( ) const

Return the full name of the tag.

Examples:

O3-*-*-*         : All O3 lines
O3-nl            : O3, but without any lines
O3-666-*-*       : All O3-666 lines
O3-*-500e9-501e9 : All O3 lines between 500 and 501 GHz.
Returns
The tag name as a string.

Definition at line 227 of file abs_species_tags.cc.

References SpeciesRecord::Isotope(), misotope, mlf, mspecies, muf, SpeciesRecord::Name(), Array< base >::nelem(), precision, and species_data.

Referenced by operator<<(), and xml_write_to_stream().

◆ operator==()

bool SpeciesTag::operator== ( const SpeciesTag other) const
inline

Comparison operator for species tags.

This returns false as soon as a singe discrepancy is detected. Otherwise it returns true at the end.

Parameters
otherThe other tag to compare to.
Returns
true if the two tags are equal.
Author
Stefan Buehler
Date
2002-11-29

Definition at line 88 of file abs_species_tags.h.

References misotope, mlf, mspecies, and muf.

◆ Species()

Index SpeciesTag::Species ( ) const
inline

Molecular species index.

Definition at line 61 of file abs_species_tags.h.

References mspecies.

Referenced by abs_lines_per_speciesCreateFromLines(), and array_species_tag_from_string().

◆ Uf()

Numeric SpeciesTag::Uf ( ) const
inline

The upper line center frequency in Hz: If this is <0 it means no upper limit.

Definition at line 74 of file abs_species_tags.h.

References muf.

Referenced by abs_lines_per_speciesCreateFromLines().

Member Data Documentation

◆ misotope

Index SpeciesTag::misotope
private

Isotopic species index.

If this is equal to the number of isotopes (one more than allowed) it means all isotopes of this species. If it is <0 it means no isotope (no lines), corresponding to "H2O-nl"

Definition at line 107 of file abs_species_tags.h.

Referenced by Isotope(), Name(), operator==(), and SpeciesTag().

◆ mlf

Numeric SpeciesTag::mlf
private

The lower limit line center frequency in Hz.

If this is <0 it means no lower limit.

Definition at line 111 of file abs_species_tags.h.

Referenced by Lf(), Name(), operator==(), and SpeciesTag().

◆ mspecies

Index SpeciesTag::mspecies
private

Molecular species index.

Definition at line 100 of file abs_species_tags.h.

Referenced by Name(), operator==(), Species(), and SpeciesTag().

◆ muf

Numeric SpeciesTag::muf
private

The upper line center frequency in Hz.

If this is <0 it means no upper limit.

Definition at line 115 of file abs_species_tags.h.

Referenced by Name(), operator==(), SpeciesTag(), and Uf().


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