1 #include <boost/bind.hpp> 22 Array<bool, 1> flag(1);
23 Array<double, 1> val(flag.shape());
26 init(val, flag, Press,
false);
35 blitz::Array<double, 1> temp_profile( temperature_profile() );
36 blitz::Array<double, 1> press_profile( pressure_profile() );
38 std::vector<AutoDerivative<double> > plist;
39 std::vector<AutoDerivative<double> > tlist;
40 if (press_profile.rows() != temp_profile.rows()) {
41 std::stringstream err_msg;
42 err_msg <<
"Size of pressure grid: " 43 << press_profile.rows()
44 <<
" != size of temperature levels: " 45 << temp_profile.rows();
48 for(
int i = 0; i < press_profile.rows(); ++i) {
51 plist.push_back(press_profile(i));
56 (
new lin_type(plist.begin(), plist.end(), tlist.begin()));
57 tgrid = boost::bind(&lin_type::operator(), lin, _1);
63 return "Temperature Offset (Kelvin)";
72 if(!used_flag_value()(0) ||
76 return sqrt(cov(0,0));
81 Os <<
"TemperatureOffset\n";
double temperature_offset_uncertainty() const
Uncertainty of temperature offset.
virtual void print(std::ostream &Os) const
Print to stream.
TemperatureOffset(const boost::shared_ptr< Pressure > &Press, double Temp_offset, bool Temp_flag)
Create an Temperature Offset.
This class takes a set of points and values, and linearly interpolates between those values...
This is the base of the exception hierarchy for Full Physics code.
#define REGISTER_LUA_DERIVED_CLASS(X, Y)
This class maintains the temperature portion of the state.
Apply value function to a blitz array.
virtual std::string state_vector_name_i(int i) const
Return state vector name for ith entry in coeff.
Contains classes to abstract away details in various Spurr Radiative Transfer software.
#define REGISTER_LUA_END()
This class maintains the temperature portion of the state.
void calc_temperature_grid() const
This calculates temperature grid to use for layer retrieval.