ReFRACtor
aerosol_extinction_log.cc
Go to the documentation of this file.
2 #include "fp_exception.h"
3 #include "ostream_pad.h"
4 #include <boost/lexical_cast.hpp>
5 
6 using namespace FullPhysics;
7 using namespace blitz;
8 
9 #ifdef HAVE_LUA
10 #include "register_lua.h"
12 .def(luabind::constructor<const boost::shared_ptr<Pressure>&,
13  const blitz::Array<bool, 1>&,
14  const blitz::Array<double, 1>&,
15  const std::string&>())
17 #endif
18 
19 // See base class for description
21 (const boost::shared_ptr<Pressure>& Pres) const
22 {
24  (new AerosolExtinctionLog(Pres, used_flag, coeff.value(), aerosol_name()));
25 }
26 
28 {
29  aext.resize(coeff.rows(), coeff.number_variable());
30  for(int i = 0; i < coeff.rows(); ++i)
31  aext(i) = exp(coeff(i));
32 }
33 
34 void AerosolExtinctionLog::print(std::ostream& Os) const
35 {
36  OstreamPad opad(Os, " ");
37  Os << "AerosolExtinctionLog:\n"
38  << " Coefficient:\n";
39  opad << coeff.value() << "\n";
40  opad.strict_sync();
41  Os << " Retrieval flag:\n";
42  opad << used_flag << "\n";
43  opad.strict_sync();
44 }
virtual boost::shared_ptr< AerosolExtinction > clone() const
Clone a AerosolExtinction object.
This is a filtering stream that adds a pad to the front of every line written out.
Definition: ostream_pad.h:32
This class maps the state vector to the aerosol extinction on each level.
#define REGISTER_LUA_DERIVED_CLASS(X, Y)
Definition: register_lua.h:136
Apply value function to a blitz array.
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.
Contains classes to abstract away details in various Spurr Radiative Transfer software.
Definition: doxygen_python.h:1
#define REGISTER_LUA_END()
Definition: register_lua.h:134
This class maps the state vector to the aerosol extinction on each level.

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