ReFRACtor
aerosol_extinction_log.h
Go to the documentation of this file.
1 #ifndef AEROSOL_EXTINCTION_LOG_H
2 #define AEROSOL_EXTINCTION_LOG_H
3 
5 #include "pressure.h"
6 #include <boost/lexical_cast.hpp>
7 
8 namespace FullPhysics {
9 /****************************************************************/
17 public:
18 //-----------------------------------------------------------------------
28 //-----------------------------------------------------------------------
29 
31  const blitz::Array<bool, 1>& Flag,
32  const blitz::Array<double, 1>& Aext,
33  const std::string& Aerosol_name)
34  : AerosolExtinctionImpBase(Aerosol_name, Aext, Flag, Press) {}
35  virtual ~AerosolExtinctionLog() {}
37  { return clone(press->clone()); }
39  (const boost::shared_ptr<Pressure>& P) const;
40  virtual std::string sub_state_identifier() const { return "aerosol_extinction/" + aerosol_name() + "/log"; }
41  virtual std::string state_vector_name_i(int i) const
42  { return "Aerosol " + aerosol_name() + " Log(extinction) for Press Lvl " +
43  boost::lexical_cast<std::string>(i + 1); }
44  virtual std::string model_short_name() const { return "profile_log"; }
45  virtual void print(std::ostream& Os) const;
46 protected:
47  virtual void calc_aerosol_extinction() const;
48 };
49 }
50 #endif
virtual std::string model_short_name() const
A short name representing the type of extinction model being implemented.
virtual boost::shared_ptr< AerosolExtinction > clone() const
Clone a AerosolExtinction object.
virtual std::string sub_state_identifier() const
Return a string to identify this part of the state, this name should be all lower case and seperate p...
This class maps the state vector to the aerosol extinction on each level.
virtual void print(std::ostream &Os) const
Print to stream.
virtual void calc_aerosol_extinction() const
Derived classes should provide a function to fill in vmr when this is called.
virtual std::string aerosol_name() const
Name of aerosol.
Contains classes to abstract away details in various Spurr Radiative Transfer software.
Definition: doxygen_python.h:1
As a design principle, we have each base class with the absolutely minimum interface needed for use f...
AerosolExtinctionLog(const boost::shared_ptr< Pressure > &Press, const blitz::Array< bool, 1 > &Flag, const blitz::Array< double, 1 > &Aext, const std::string &Aerosol_name)
Constructor.
virtual std::string state_vector_name_i(int i) const
Return state vector name for ith entry in coeff.

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