53 virtual std::string
gas_name()
const = 0;
70 virtual blitz::Array<bool, 1>
state_used()
const = 0;
virtual void remove_observer(Observer< AbsorberVmr > &Obs)
Remove an observer.
void add_observer_do(Observer< AbsorberVmr > &Obs, AbsorberVmr &t)
Add an observer.
This is an observer of a StateVector.
void remove_observer_do(Observer< AbsorberVmr > &Obs, AbsorberVmr &t)
Remove an observer.
virtual std::string gas_name() const =0
This indicates the name of this particular Absorber.
virtual AutoDerivative< double > volume_mixing_ratio(const AutoDerivative< double > &P) const =0
This returns the volume mixing ratio at the given pressure level.
virtual ArrayAd< double, 1 > vmr_grid(const Pressure &P) const
Return the vmr on the pressure grid.
Mixin for a class that allows other classes to observe it state.
virtual boost::shared_ptr< AbsorberVmr > clone() const =0
Clone a AbsorberVmr object.
This gives the Gas Absorber Volumn mixing ratio for a single gas.
This class maintains the pressure portion of the state.
virtual void add_observer(Observer< AbsorberVmr > &Obs)
Add an observer.
Contains classes to abstract away details in various Spurr Radiative Transfer software.
virtual blitz::Array< bool, 1 > state_used() const =0
Indicate what portion of the state vector is used to calculate the VMR.