ARTS
2.3.1285(git:92a29ea9-dirty)
|
Contains the line shape namespace. More...
#include <numeric>
#include <algorithm>
#include "abs_species_tags.h"
#include "constants.h"
#include "file.h"
#include "jacobian.h"
Go to the source code of this file.
Classes | |
struct | LineShape::ModelParameters |
Coefficients and temperature model for SingleSpeciesModel. More... | |
class | LineShape::SingleSpeciesModel |
Compute the line shape parameters for a single broadening species. More... | |
struct | LineShape::Output |
Main output of Model. More... | |
class | LineShape::Model |
Main line shape model class. More... | |
Namespaces | |
LineShape | |
Computations of line shape derived parameters. | |
LineShape::LegacyLineFunctionData | |
Legacy dealing with reading old LineFunctionData. | |
LineShape::LegacyLineMixingData | |
Legacy dealing with reading old LineMixingData. | |
LineShape::LegacyPressureBroadeningData | |
Legacy dealing with reading old PressureBroadeningData. | |
Macros | |
#define | VARIABLE2STRINGDEF(X) |
#define | STRING2VARIABLEDEF(X) if (type == #X) return Variable::X |
#define | x0 X[Index(var)].X0 |
#define | x1 X[Index(var)].X1 |
#define | x2 X[Index(var)].X2 |
#define | x3 X[Index(var)].X3 |
#define | ACCESS_INTERNAL(VARPOS) |
#define | MODELPARAMCASESETTER(X) |
#define | MODELPARAMCASEGETTER(X) case Variable::X: out = X(); break; |
#define | LSPC(XVAR, PVAR) |
#define | LSPCV(XVAR, PVAR) |
#define | LSPCT(XVAR, PVAR) |
#define | LSPDC(XVAR, DERIV, PVAR) |
#define | RETURNINTERNALDERIVATIVE(TYPE) |
Typedefs | |
typedef LineShape::Model | LineShapeModel |
typedef LineShape::SingleSpeciesModel | LineShapeSingleSpeciesModel |
Functions | |
JacPropMatType | select_derivativeLineShape (const String &var, const String &coeff) |
Return the derivative type based on string input. More... | |
ArrayOfString | AllLineShapeCoeffs () |
All available line shape coefficients. More... | |
ArrayOfString | AllLineShapeVars () |
All available line shape variables. More... | |
String | LineShape::temperaturemodel2string (TemperatureModel type) noexcept |
Turns selected TemperatureModel type into a string. More... | |
TemperatureModel | LineShape::string2temperaturemodel (const String &type) |
Turns predefined strings into a TemperatureModel type. More... | |
std::ostream & | LineShape::operator<< (std::ostream &os, Variable v) |
Output operator for Variable to be human-readable. More... | |
String | LineShape::variable2string (Variable type) noexcept |
Turns selected Variable type into a string. More... | |
Variable | LineShape::string2variable (const String &type) |
Turns predefined strings into a Variable type. More... | |
String | LineShape::modelparameters2metadata (const ModelParameters mp, const Numeric T0) |
Numeric & | LineShape::SingleModelParameter (ModelParameters &mp, const String &type) |
Get a coefficient from ModelParameters by name. More... | |
bool | LineShape::modelparameterEmpty (const ModelParameters mp) noexcept |
std::ostream & | LineShape::operator<< (std::ostream &os, const ModelParameters &mp) |
Output operator for ModelParameters. More... | |
std::istream & | LineShape::operator>> (std::istream &is, ModelParameters &mp) |
Input operator for ModelParameters. More... | |
std::ostream & | LineShape::operator<< (std::ostream &os, const SingleSpeciesModel &ssm) |
Output operator for SingleSpeciesModel. More... | |
std::istream & | LineShape::operator>> (std::istream &is, SingleSpeciesModel &ssm) |
Input operator for SingleSpeciesModel. More... | |
String | LineShape::shapetype2string (Type type) noexcept |
Turns selected Type into a string. More... | |
String | LineShape::shapetype2metadatastring (Type type) noexcept |
Turns selected Type into a human readable string. More... | |
Type | LineShape::string2shapetype (const String &type) |
Turns predefined strings into a Type. More... | |
std::ostream & | LineShape::operator<< (std::ostream &os, Output x) |
Output operator for LineShape::Output. More... | |
constexpr Output | LineShape::mirroredOutput (Output x) noexcept |
Output to be used by mirroring calls. More... | |
constexpr Output | LineShape::negativeOutput (Output x) noexcept |
Output turned negative. More... | |
constexpr Output | LineShape::si2cgs (Output x) noexcept |
Output turned from SI to CGS units. More... | |
constexpr Output | LineShape::differenceOutput (Output y, Output x) noexcept |
Diff of two output. More... | |
Vector | LineShape::vmrs (const ConstVectorView &atmospheric_vmrs, const ArrayOfArrayOfSpeciesTag &atmospheric_species, const QuantumIdentifier &self, const ArrayOfSpeciesTag &lineshape_species, bool self_in_list, bool bath_in_list, Type type) |
Returns a VMR vector for this model's main calculations. More... | |
std::ostream & | LineShape::operator<< (std::ostream &os, const Model &m) |
std::istream & | LineShape::operator>> (std::istream &is, Model &m) |
String | LineShape::ModelShape2MetaData (const Model &m) |
Model | LineShape::MetaData2ModelShape (const String &s) |
ArrayOfString | LineShape::ModelMetaDataArray (const Model &m, const bool self, const bool bath, const ArrayOfSpeciesTag &sts, const Numeric T0) |
std::istream & | LineShape::from_artscat4 (std::istream &is, Type &type, bool &self, bool &bath, Model &m, ArrayOfSpeciesTag &species, const QuantumIdentifier &qid) |
std::istream & | LineShape::from_linefunctiondata (std::istream &data, Type &type, bool &self, bool &bath, Model &m, ArrayOfSpeciesTag &species) |
std::istream & | LineShape::from_linemixingdata (std::istream &data, Model &lsc) |
Legacy reading of old deprecated LineMixingData class. More... | |
std::istream & | LineShape::from_pressurebroadeningdata (std::istream &data, LineShape::Type &type, bool &self, bool &bath, Model &m, ArrayOfSpeciesTag &species, const QuantumIdentifier &qid) |
Legacy reading of old deprecated PressureBroadeningData class. More... | |
Index | LineShape::LegacyLineFunctionData::temperaturemodel2legacynelem (TemperatureModel type) noexcept |
Length per variable. More... | |
std::vector< Variable > | LineShape::LegacyLineFunctionData::lineshapetag2variablesvector (String type) |
Line shape models. More... | |
std::vector< Variable > | LineShape::LegacyLineFunctionData::linemixingtag2variablesvector (String type) |
Line mixing models. More... | |
LegacyLineMixingData::TypeLM | LineShape::LegacyLineMixingData::string2typelm (String type) |
Line mixing types from string. More... | |
Index | LineShape::LegacyLineMixingData::typelm2nelem (LegacyLineMixingData::TypeLM type) |
Line mixing types to number. More... | |
Model | LineShape::LegacyLineMixingData::vector2modellm (Vector x, LegacyLineMixingData::TypeLM type) |
LineShape::Model from legacy input vector. More... | |
LegacyPressureBroadeningData::TypePB | LineShape::LegacyPressureBroadeningData::string2typepb (String type) |
Pressure broadening types from string. More... | |
bool | LineShape::LegacyPressureBroadeningData::self_listed (const QuantumIdentifier &qid, LegacyPressureBroadeningData::TypePB t) |
Pressure broadening if self exist. More... | |
Index | LineShape::LegacyPressureBroadeningData::typepb2nelem (LegacyPressureBroadeningData::TypePB type) |
Pressure broadening types to number of elements. More... | |
void | LineShape::LegacyPressureBroadeningData::vector2modelpb (LineShape::Type &mtype, bool &self, bool &bath, Model &m, ArrayOfSpeciesTag &species, Vector x, LegacyPressureBroadeningData::TypePB type, bool self_in_list) |
LineShape::Model from legacy input vector. More... | |
Contains the line shape namespace.
Contains the line shape namespace
This namespace computes all line shape parameters for any set of line shape we can use in ARTS. Should be extended for more use as seen fit.
Definition in file lineshapemodel.h.
#define ACCESS_INTERNAL | ( | VARPOS | ) |
Definition at line 679 of file lineshapemodel.h.
#define LSPC | ( | XVAR, | |
PVAR | |||
) |
Definition at line 1060 of file lineshapemodel.h.
#define LSPCT | ( | XVAR, | |
PVAR | |||
) |
Definition at line 1107 of file lineshapemodel.h.
#define LSPCV | ( | XVAR, | |
PVAR | |||
) |
Definition at line 1086 of file lineshapemodel.h.
#define LSPDC | ( | XVAR, | |
DERIV, | |||
PVAR | |||
) |
Definition at line 1134 of file lineshapemodel.h.
#define MODELPARAMCASEGETTER | ( | X | ) | case Variable::X: out = X(); break; |
Referenced by LineShape::SingleSpeciesModel::Get().
#define MODELPARAMCASESETTER | ( | X | ) |
Referenced by LineShape::SingleSpeciesModel::Set().
#define RETURNINTERNALDERIVATIVE | ( | TYPE | ) |
Referenced by LineShape::Model::GetInternalDeriv().
#define STRING2VARIABLEDEF | ( | X | ) | if (type == #X) return Variable::X |
#define VARIABLE2STRINGDEF | ( | X | ) |
#define x0 X[Index(var)].X0 |
#define x1 X[Index(var)].X1 |
Definition at line 414 of file lineshapemodel.h.
Referenced by LineShape::SingleSpeciesModel::compute(), LineShape::SingleSpeciesModel::compute_dT(), LineShape::SingleSpeciesModel::compute_dT0(), LineShape::SingleSpeciesModel::compute_dX0(), LineShape::SingleSpeciesModel::compute_dX1(), and LineShape::SingleSpeciesModel::compute_dX2().
#define x2 X[Index(var)].X2 |
Definition at line 415 of file lineshapemodel.h.
Referenced by LineShape::SingleSpeciesModel::compute(), LineShape::SingleSpeciesModel::compute_dT(), LineShape::SingleSpeciesModel::compute_dT0(), LineShape::SingleSpeciesModel::compute_dX0(), LineShape::SingleSpeciesModel::compute_dX1(), LineShape::SingleSpeciesModel::compute_dX2(), and LineShape::SingleSpeciesModel::compute_dX3().
#define x3 X[Index(var)].X3 |
typedef LineShape::Model LineShapeModel |
Definition at line 1658 of file lineshapemodel.h.
Definition at line 1661 of file lineshapemodel.h.
ArrayOfString AllLineShapeCoeffs | ( | ) |
All available line shape coefficients.
Definition at line 37 of file lineshapemodel.cc.
Referenced by jacobianAddShapeCatalogParameters(), and select_derivativeLineShape().
ArrayOfString AllLineShapeVars | ( | ) |
All available line shape variables.
Definition at line 39 of file lineshapemodel.cc.
Referenced by jacobianAddShapeCatalogParameters(), LineShape::MetaData2ModelShape(), LineShape::ModelShape2MetaData(), and select_derivativeLineShape().
JacPropMatType select_derivativeLineShape | ( | const String & | var, |
const String & | coeff | ||
) |
Return the derivative type based on string input.
[in] | var | Variable in AllLineShapeVars() |
[in] | coeff | Coefficient in AllLineShapeCoeffs() |
Return the derivative type based on string input.
Definition at line 38 of file linefunctiondata.cc.
References all_coefficientsLineFunctionData(), all_variablesLineFunctionData(), AllLineShapeCoeffs(), and AllLineShapeVars().
Referenced by jacobianAddShapeCatalogParameter().