ReFRACtor
stokes_coefficient_fraction.h
Go to the documentation of this file.
1 #ifndef STOKES_COEFFICIENT_FRACTION_H
2 #define STOKES_COEFFICIENT_FRACTION_H
3 
5 #include <boost/lexical_cast.hpp>
6 
7 namespace FullPhysics {
8 /****************************************************************/
14 public:
15  StokesCoefficientFraction(const blitz::Array<double, 2>& Stokes_coeff_parallel,
16  const blitz::Array<double, 1>& Coeffs,
17  const blitz::Array<bool, 1>& Flag);
19  virtual void print(std::ostream& Os) const;
21  virtual std::string sub_state_identifier() const { return "parallel_polarization_fraction"; }
22  virtual std::string state_vector_name_i(int i) const
23  { return "Parallel Polarization Band " +
24  boost::lexical_cast<std::string>(i + 1); }
25 
26 //-----------------------------------------------------------------------
29 //-----------------------------------------------------------------------
30 
31  double f_uncertainty(int Spec_index) const
32  {
33  if(sv_cov_sub.rows() < 1)
34  return 0;
35  double t = sv_cov_sub(Spec_index,Spec_index);
36  return (t < 0 ? 0 : sqrt(t));
37  }
38 
39 protected:
40  virtual void calc_stokes_coeff() const;
41 private:
42  blitz::Array<double, 2> stokes_coeff_parallel;
43 };
44 }
45 #endif
46 
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...
blitz::Array< double, 2 > sv_cov_sub
The subset of cov_full that is "owned" by this class, what was passed through update_sub_state.
double f_uncertainty(int Spec_index) const
f uncertainty.
virtual std::string state_vector_name_i(int i) const
Return state vector name for ith entry in coeff.
virtual boost::shared_ptr< StokesCoefficient > clone() const
Clone a StokesCoefficient object.
This class maintains the stokes coefficient portion of the state.
virtual void calc_stokes_coeff() const
Derived classes should provide a function to fill in pgrid when this is called.
As a design principle, we have each base class with the absolutely minimum interface needed for use f...
StokesCoefficientFraction(const blitz::Array< double, 2 > &Stokes_coeff_parallel, const blitz::Array< double, 1 > &Coeffs, const blitz::Array< bool, 1 > &Flag)
Constructor.
Contains classes to abstract away details in various Spurr Radiative Transfer software.
Definition: doxygen_python.h:1
virtual void print(std::ostream &Os) const
Print to stream.

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