ReFRACtor
FullPhysics::Rayleigh Class Reference

This class calculates the Rayleigh portion of the optical depth. More...

#include <rayleigh.h>

+ Inheritance diagram for FullPhysics::Rayleigh:
+ Collaboration diagram for FullPhysics::Rayleigh:

Public Member Functions

 Rayleigh (const boost::shared_ptr< Pressure > &Pres, const std::vector< boost::shared_ptr< Altitude > > &Alt, const Constant &C)
 Constructor. More...
 
virtual void notify_add (Altitude &Observed_object)
 Called when an object is added to an Observable. More...
 
virtual void notify_add (Pressure &Observed_object)
 Called when an object is added to an Observable. More...
 
virtual void notify_add ()
 
virtual void notify_add ()
 
virtual void notify_remove (Pressure &Observed_object)
 Called when an object is removed from an Observable. More...
 
virtual void notify_remove (Altitude &Observed_object)
 Called when an object is removed from an Observable. More...
 
virtual void notify_remove ()
 
virtual void notify_remove ()
 
virtual void notify_update (const Pressure &P)
 Called when the Observed object is updated. More...
 
virtual void notify_update (const Altitude &A)
 Called when the Observed object is updated. More...
 
ArrayAd< double, 1 > optical_depth_each_layer (double wn, int spec_index) const
 This gives the optical depth for each layer, for the given wave number. More...
 
virtual void print (std::ostream &Os) const
 
std::string print_to_string () const
 Print to string. More...
 

Static Public Member Functions

static DoubleWithUnit cross_section (const DoubleWithUnit &W, const Constant &C=DefaultConstant())
 Calculate the rayleigh cross section for the given wavenumber/wavelength. More...
 

Detailed Description

This class calculates the Rayleigh portion of the optical depth.

Definition at line 13 of file rayleigh.h.

Constructor & Destructor Documentation

◆ Rayleigh()

Rayleigh::Rayleigh ( const boost::shared_ptr< Pressure > &  Pres,
const std::vector< boost::shared_ptr< Altitude > > &  Alt,
const Constant C 
)

Constructor.

Definition at line 20 of file rayleigh.cc.

Member Function Documentation

◆ cross_section()

DoubleWithUnit Rayleigh::cross_section ( const DoubleWithUnit W,
const Constant C = DefaultConstant() 
)
static

Calculate the rayleigh cross section for the given wavenumber/wavelength.

Definition at line 39 of file rayleigh.cc.

◆ notify_add() [1/4]

virtual void FullPhysics::Observer< Altitude >::notify_add ( Altitude Observed_object)
inlinevirtualinherited

Called when an object is added to an Observable.

Default is to do nothing.

Definition at line 47 of file observer.h.

◆ notify_add() [2/4]

virtual void FullPhysics::Observer< Pressure >::notify_add ( Pressure Observed_object)
inlinevirtualinherited

Called when an object is added to an Observable.

Default is to do nothing.

Definition at line 47 of file observer.h.

◆ notify_add() [3/4]

virtual void FullPhysics::Observer< Altitude >::notify_add ( )
inlinevirtualinherited

Definition at line 48 of file observer.h.

◆ notify_add() [4/4]

virtual void FullPhysics::Observer< Pressure >::notify_add ( )
inlinevirtualinherited

Definition at line 48 of file observer.h.

◆ notify_remove() [1/4]

virtual void FullPhysics::Observer< Pressure >::notify_remove ( Pressure Observed_object)
inlinevirtualinherited

Called when an object is removed from an Observable.

Default is to do nothing.

Definition at line 55 of file observer.h.

◆ notify_remove() [2/4]

virtual void FullPhysics::Observer< Altitude >::notify_remove ( Altitude Observed_object)
inlinevirtualinherited

Called when an object is removed from an Observable.

Default is to do nothing.

Definition at line 55 of file observer.h.

◆ notify_remove() [3/4]

virtual void FullPhysics::Observer< Pressure >::notify_remove ( )
inlinevirtualinherited

Definition at line 56 of file observer.h.

◆ notify_remove() [4/4]

virtual void FullPhysics::Observer< Altitude >::notify_remove ( )
inlinevirtualinherited

Definition at line 56 of file observer.h.

◆ notify_update() [1/2]

virtual void FullPhysics::Rayleigh::notify_update ( const Pressure Observed_object)
inlinevirtual

Called when the Observed object is updated.

Reimplemented from FullPhysics::Observer< Pressure >.

Definition at line 20 of file rayleigh.h.

◆ notify_update() [2/2]

virtual void FullPhysics::Rayleigh::notify_update ( const Altitude Observed_object)
inlinevirtual

Called when the Observed object is updated.

Reimplemented from FullPhysics::Observer< Altitude >.

Definition at line 22 of file rayleigh.h.

◆ optical_depth_each_layer()

ArrayAd< double, 1 > Rayleigh::optical_depth_each_layer ( double  wn,
int  spec_index 
) const

This gives the optical depth for each layer, for the given wave number.

Note this only includes the Rayleigh portion of this, Atmosphere class combines this with Absorbers and Aerosol scattering.

This has size of pres->number_active_layer().

Todo:
Determine what the mysterious a0 number is, and if it needs to be changed.

Definition at line 64 of file rayleigh.cc.

◆ print()

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

Definition at line 28 of file rayleigh.h.

◆ print_to_string()

std::string FullPhysics::Printable< Rayleigh >::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:13