1 #ifndef COMPOSITE_INITIAL_GUESS_H 2 #define COMPOSITE_INITIAL_GUESS_H 6 #include <boost/shared_ptr.hpp> 9 class CompositeInitialGuess;
63 virtual void build_apriori(blitz::Array<double, 1>& v,
int index)
const = 0;
79 virtual void print(std::ostream& Os)
const {Os <<
"InitialGuessBuilder";}
106 virtual blitz::Array<double, 1> initial_guess()
const;
107 virtual blitz::Array<double, 1> apriori()
const;
108 virtual blitz::Array<double, 2> apriori_covariance()
const;
109 virtual void print(std::ostream& Os)
const;
114 virtual void build_apriori(blitz::Array<double, 1>& v,
int index)
const;
125 B->attach_notify(*
this);
137 std::list<boost::shared_ptr<InitialGuessBuilder> > blist;
void remove_builder(const boost::shared_ptr< InitialGuessBuilder > &B)
Remove a builder to the build list.
void add_builder(const boost::shared_ptr< InitialGuessBuilder > &B)
Add a builder to the build list.
virtual void build_apriori_covariance(blitz::Array< double, 2 > &m, int index) const =0
Called when we need this class to do its part in setting up the covariance matrix for the a priori st...
virtual void build_apriori(blitz::Array< double, 1 > &v, int index) const =0
Called when we need this class to do its part in setting up the apriori state vector.
virtual ~CompositeInitialGuess()
virtual void build_initial_value(blitz::Array< double, 1 > &v, int index) const =0
Called when we need this class to do its part in setting up the initial state vector.
A common way to create an initial guess is to have other classes responsible for portions of the stat...
virtual void print(std::ostream &Os) const
virtual ~InitialGuessBuilder()
This is a Mixin for classes that can be printed.
Class that builds a portion of the state vector.
virtual void attach_notify(CompositeInitialGuess &Comp_ig)
Called when we get attached to a CompositeInitialGuess.
const Unit m("m", 1.0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
Contains classes to abstract away details in various Spurr Radiative Transfer software.
virtual int number_element() const =0
Number of elements we will be adding to the state vector.
This gets the initial guess and the apriori state vector values.