ARTS  2.3.1285(git:92a29ea9-dirty)
cia.cc File Reference

Implementation file for work with HITRAN collision induced absorption (CIA). More...

#include "cia.h"
#include <cmath>
#include "abs_species_tags.h"
#include "absorption.h"
#include "file.h"
#include "interpolation_poly.h"

Go to the source code of this file.

Functions

void cia_interpolation (VectorView result, ConstVectorView f_grid, const Numeric &temperature, const GriddedField2 &cia_data, const Numeric &T_extrapolfac, const Index &robust, const Verbosity &verbosity)
 Interpolate CIA data. More...
 
Index cia_get_index (const ArrayOfCIARecord &cia_data, const Index sp1, const Index sp2)
 Get the index in cia_data for the two given species. More...
 
ostream & operator<< (ostream &os, const CIARecord &)
 Output operator for CIARecord. More...
 

Variables

const Numeric SPEED_OF_LIGHT
 

Detailed Description

Implementation file for work with HITRAN collision induced absorption (CIA).

The CIA data are part of the HITRAN distribution. They are described in Richard, C., I. E. Gordon, L. S. Rothman, M. Abel, L. Frommhold, M. Gustafsson, J.-M. Hartmann, C. Hermans, W. J. Lafferty, G. S. Orton, K.M. Smith, and H. Tran (2012), New section of the HITRAN database: Collision-induced absorption (CIA), J. Quant. Spectrosc. Radiat. Transfer, 113, 1276-1285, doi:10.1016/j.jqsrt.2011.11.004.

Author
Stefan Buehler
Date
2012-11-30

Definition in file cia.cc.

Function Documentation

◆ cia_get_index()

Index cia_get_index ( const ArrayOfCIARecord cia_data,
const Index  sp1,
const Index  sp2 
)

Get the index in cia_data for the two given species.

Parameters
[in]cia_dataCIA data array
[in]sp1First species index
[in]sp2Second species index
Returns
Index of this species combination in cia_data. -1 if not found.

Definition at line 237 of file cia.cc.

References i, Array< base >::nelem(), and Species.

Referenced by abs_cia_dataAddCIARecord(), abs_cia_dataReadFromCIA(), abs_cia_dataReadFromXML(), and abs_xsec_per_speciesAddCIA().

◆ cia_interpolation()

void cia_interpolation ( VectorView  result,
ConstVectorView  f_grid,
const Numeric temperature,
const GriddedField2 cia_data,
const Numeric T_extrapolfac,
const Index robust,
const Verbosity verbosity 
)

Interpolate CIA data.

Interpolate CIA data to given frequency vector and given scalar temperature. Uses third order interpolation in both coordinates, if grid length allows, otherwise lower order or no interpolation.

Parameters
[out]resultCIA value for given frequency grid and temperature.
[in]f_gridFrequency grid.
[in]temperatureScalar temperature.
[in]cia_dataThe CIA dataset to interpolate.
[in]robustSet to 1 to suppress runtime errors (and return NAN values instead).
[in]verbosityStandard verbosity object.

Definition at line 53 of file cia.cc.

References chk_interpolation_grids(), CREATE_OUTS, GriddedField::get_numeric_grid(), ConstVectorView::nelem(), and _CS_basic_sstream_base< _CS_cT, _CS_Tr, _CS_Al >::str().

Referenced by CIARecord::Extract(), and test01().

◆ operator<<()

ostream& operator<< ( ostream &  os,
const CIARecord  
)

Output operator for CIARecord.

Outputs the grids for the given CIARecord.

Parameters
[in,out]osOutput stream.
[in]crCIARecord.
Returns
os

Definition at line 509 of file cia.cc.

Variable Documentation

◆ SPEED_OF_LIGHT