ReFRACtor
FullPhysics::AbscoInterpolator Class Reference

This is a helper class that calculates the absorption cross section for a fixed set of Pressure, Temperature, and Broadner VMR (e.g. More...

#include <absco.h>

+ Inheritance diagram for FullPhysics::AbscoInterpolator:
+ Collaboration diagram for FullPhysics::AbscoInterpolator:

Public Member Functions

 AbscoInterpolator (const boost::shared_ptr< Absco > &A, const ArrayWithUnit< double, 1 > &Press, const ArrayAdWithUnit< double, 1 > &Temp, const ArrayAdWithUnit< double, 1 > &Broadener_vmr)
 Set up a AbscoInterpolator for the given set up pressure, temperature, and broadner VMR. More...
 
virtual ~AbscoInterpolator ()
 
ArrayAd< double, 1 > absorption_cross_section_deriv (double wn) const
 Return absorption cross section, with derivatives. More...
 
blitz::Array< double, 1 > absorption_cross_section_noderiv (double wn) const
 Return absorption cross section, without derivatives. More...
 
template<class T >
Array< double, 1 > absorption_cross_section_noderiv_calc (double wn) const
 
virtual void print (std::ostream &Os) const
 
std::string print_to_string () const
 Print to string. More...
 

Detailed Description

This is a helper class that calculates the absorption cross section for a fixed set of Pressure, Temperature, and Broadner VMR (e.g.

H2O VMR). It turns out this is a bottle neck, which we can speed up if we know ahead of time the values to use.

Definition at line 20 of file absco.h.

Constructor & Destructor Documentation

◆ AbscoInterpolator()

AbscoInterpolator::AbscoInterpolator ( const boost::shared_ptr< Absco > &  A,
const ArrayWithUnit< double, 1 > &  Press,
const ArrayAdWithUnit< double, 1 > &  Temp,
const ArrayAdWithUnit< double, 1 > &  Broadener_vmr 
)

Set up a AbscoInterpolator for the given set up pressure, temperature, and broadner VMR.

Parameters
AAbsco data to use
PressSet of pressures.
TempSet of Temperatures. Should be same size as press.
Broadener_vmrSet of Broadner VMR (e.g., H2O VMR). Not all tables will make use of this information.

Definition at line 136 of file absco.cc.

◆ ~AbscoInterpolator()

virtual FullPhysics::AbscoInterpolator::~AbscoInterpolator ( )
inlinevirtual

Definition at line 26 of file absco.h.

Member Function Documentation

◆ absorption_cross_section_deriv()

ArrayAd< double, 1 > AbscoInterpolator::absorption_cross_section_deriv ( double  wn) const

Return absorption cross section, with derivatives.

Parameters
wnwave number
Returns
Absorption cross section in cm^2 / molecule

Definition at line 286 of file absco.cc.

◆ absorption_cross_section_noderiv()

Array< double, 1 > AbscoInterpolator::absorption_cross_section_noderiv ( double  wn) const

Return absorption cross section, without derivatives.

Parameters
wnwave number
Returns
Absorption cross section in cm^2 / molecule

Definition at line 209 of file absco.cc.

◆ absorption_cross_section_noderiv_calc()

template<class T >
template Array< double, 1 > AbscoInterpolator::absorption_cross_section_noderiv_calc< float > ( double  wn) const

Definition at line 178 of file absco.cc.

◆ print()

virtual void FullPhysics::AbscoInterpolator::print ( std::ostream &  Os) const
inlinevirtual

Definition at line 27 of file absco.h.

◆ print_to_string()

std::string FullPhysics::Printable< AbscoInterpolator >::print_to_string ( ) const
inlineinherited

Print to string.

This is primarily useful for SWIG wrappers to this class, e.g. a to_s method in ruby.

Definition at line 31 of file printable.h.


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

Copyright © 2017, California Institute of Technology.
ALL RIGHTS RESERVED.
U.S. Government Sponsorship acknowledged.
Generated Fri Aug 24 2018 15:44:11