1 #include <boost/algorithm/string.hpp> 17 const std::string&>())
30 const std::string& Gas_name)
33 std::string gname = gas_name();
34 boost::to_upper(gname);
37 std::stringstream err_msg;
38 err_msg <<
"Only H2O and O3 is supported by AbsorberVmrMet, unknown absorber: " 46 return met->specific_humidity();
51 return met->vmr(gas_name());
56 return met->pressure_levels();
70 Os <<
"AbsorberVmrMet:\n" 71 <<
" Gas name: " << gas_name() <<
"\n" 72 <<
" Scale: " << scale_factor() <<
"\n" 73 <<
" Retrieval flag: " << (used_flag_value()(0) ?
blitz::Array< double, 1 > specific_humidity() const
Humidity from MET, used to write to output file.
This is a filtering stream that adds a pad to the front of every line written out.
virtual boost::shared_ptr< AbsorberVmr > clone() const
Clone a AbsorberVmr object.
This is the base of the exception hierarchy for Full Physics code.
AbsorberVmrMet(const boost::shared_ptr< Meteorology > &Met_file, const boost::shared_ptr< Pressure > &Press, double Scale, bool Scale_flag, const std::string &Gas_name)
Constructor.
virtual void print(std::ostream &Os) const
Print to stream.
#define REGISTER_LUA_DERIVED_CLASS(X, Y)
Apply value function to a blitz array.
virtual blitz::Array< double, 1 > vmr_profile() const
VMR values converted from specific humidity.
This class maps the state vector to the absorber VMR on each level.
This gives the Gas Absorber Volumn mixing ratio for a single gas.
virtual blitz::Array< double, 1 > pressure_profile() const
Pressure levels that humidity is on from MET, used to write to output file.
Contains classes to abstract away details in various Spurr Radiative Transfer software.
#define REGISTER_LUA_END()
This class maps the state vector to the absorber VMR on each level.
double value(const FullPhysics::AutoDerivative< double > &Ad)