ReFRACtor
FullPhysics::OcoRefractiveIndex Class Reference

Computes refractive index per level/layer using a method that takes into account knowledge of OCO spectral domains. More...

#include <refractive_index.h>

+ Inheritance diagram for FullPhysics::OcoRefractiveIndex:
+ Collaboration diagram for FullPhysics::OcoRefractiveIndex:

Public Member Functions

 OcoRefractiveIndex (double reference_wavelength, const blitz::Array< AutoDerivative< double >, 1 > &press, const blitz::Array< AutoDerivative< double >, 1 > &temp, const blitz::Array< AutoDerivative< double >, 1 > &co2_vmr, const blitz::Array< AutoDerivative< double >, 1 > &h2o_vmr)
 Creates a refractive index class that can better calculate refractive index for data with in the OCO spectral bounds reference_wavelength - microns press - Pascals temp - Kelvin co2_vmr, h2o_vmr - VMR. More...
 
virtual ~OcoRefractiveIndex ()
 
virtual AutoDerivative< double > at_layer (int layer_index, const AutoDerivative< double > &interp_val) const
 Returns refractive index at a layer index interpolated between bounding levels using a linear interpolation factor [0,1]. More...
 
virtual AutoDerivative< double > at_layer_midpoint (int layer_index) const
 Convenience routine to returns refractive index ay layer index where layer data is taken as mean of bounding level values. More...
 
virtual AutoDerivative< double > at_level (int level_index) const
 Returns refractive index at a level index. More...
 
virtual blitz::Array< AutoDerivative< double >, 1 > layer_midpoint_values () const
 Returns refractive index at the middle of each layer. More...
 
virtual blitz::Array< AutoDerivative< double >, 1 > layer_values (const blitz::Array< AutoDerivative< double >, 1 > &interp_vals) const
 Returns refractive index at all layers according to a mapping of where each layer value should be calculated between levels. More...
 
virtual blitz::Array< AutoDerivative< double >, 1 > level_values () const
 Returns refractive index at all levels. More...
 
virtual int number_layer () const
 Number of layers of atmospheric data represented. More...
 
virtual int number_level () const
 Number of levels of atmospheric data represented. More...
 

Static Public Member Functions

static bool wavelength_in_bounds (double wavelength)
 Determines if the passed wavelength value in microns is within the bounds of those accepted by the class. More...
 

Detailed Description

Computes refractive index per level/layer using a method that takes into account knowledge of OCO spectral domains.

However, this method will fail when using spectral ranges outside of the OCO bands.

Definition at line 121 of file refractive_index.h.

Constructor & Destructor Documentation

◆ OcoRefractiveIndex()

OcoRefractiveIndex::OcoRefractiveIndex ( double  reference_wavelength,
const blitz::Array< AutoDerivative< double >, 1 > &  press,
const blitz::Array< AutoDerivative< double >, 1 > &  temp,
const blitz::Array< AutoDerivative< double >, 1 > &  co2_vmr,
const blitz::Array< AutoDerivative< double >, 1 > &  h2o_vmr 
)

Creates a refractive index class that can better calculate refractive index for data with in the OCO spectral bounds reference_wavelength - microns press - Pascals temp - Kelvin co2_vmr, h2o_vmr - VMR.

Definition at line 39 of file refractive_index.cc.

◆ ~OcoRefractiveIndex()

virtual FullPhysics::OcoRefractiveIndex::~OcoRefractiveIndex ( )
inlinevirtual

Definition at line 136 of file refractive_index.h.

Member Function Documentation

◆ at_layer()

AutoDerivative< double > OcoRefractiveIndex::at_layer ( int  layer_index,
const AutoDerivative< double > &  interp_val 
) const
virtual

Returns refractive index at a layer index interpolated between bounding levels using a linear interpolation factor [0,1].

Implements FullPhysics::AtmRefractiveIndex.

Definition at line 66 of file refractive_index.cc.

◆ at_layer_midpoint()

virtual AutoDerivative<double> FullPhysics::AtmRefractiveIndex::at_layer_midpoint ( int  layer_index) const
inlinevirtualinherited

Convenience routine to returns refractive index ay layer index where layer data is taken as mean of bounding level values.

Definition at line 74 of file refractive_index.h.

◆ at_level()

AutoDerivative< double > OcoRefractiveIndex::at_level ( int  level_index) const
virtual

Returns refractive index at a level index.

Implements FullPhysics::AtmRefractiveIndex.

Definition at line 60 of file refractive_index.cc.

◆ layer_midpoint_values()

virtual blitz::Array<AutoDerivative<double>, 1> FullPhysics::AtmRefractiveIndex::layer_midpoint_values ( ) const
inlinevirtualinherited

Returns refractive index at the middle of each layer.

Definition at line 81 of file refractive_index.h.

◆ layer_values()

virtual blitz::Array<AutoDerivative<double>, 1> FullPhysics::AtmRefractiveIndex::layer_values ( const blitz::Array< AutoDerivative< double >, 1 > &  interp_vals) const
inlinevirtualinherited

Returns refractive index at all layers according to a mapping of where each layer value should be calculated between levels.

Definition at line 62 of file refractive_index.h.

◆ level_values()

virtual blitz::Array<AutoDerivative<double>, 1> FullPhysics::AtmRefractiveIndex::level_values ( ) const
inlinevirtualinherited

Returns refractive index at all levels.

Definition at line 45 of file refractive_index.h.

◆ number_layer()

virtual int FullPhysics::AtmRefractiveIndex::number_layer ( ) const
inlinevirtualinherited

Number of layers of atmospheric data represented.

Definition at line 35 of file refractive_index.h.

◆ number_level()

virtual int FullPhysics::OcoRefractiveIndex::number_level ( ) const
inlinevirtual

Number of levels of atmospheric data represented.

Implements FullPhysics::AtmRefractiveIndex.

Definition at line 137 of file refractive_index.h.

◆ wavelength_in_bounds()

bool OcoRefractiveIndex::wavelength_in_bounds ( double  wavelength)
static

Determines if the passed wavelength value in microns is within the bounds of those accepted by the class.

Definition at line 79 of file refractive_index.cc.


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:13