casa
$Rev:20696$
|
Provides a model for use in model fitting applications. More...
#include <LinearModel.h>
Public Member Functions | |
virtual | ~LinearModel () |
A virtual destructor is necessary. | |
virtual const Domain & | getModel () const =0 |
Return the current model. | |
virtual void | setModel (const Domain &model)=0 |
Set the current model. |
Provides a model for use in model fitting applications.
Public interface
<h3>Review Status</h3><dl><dt>Date Reviewed:<dd>yyyy/mm/dd</dl>
class should be read in conjunction with: LinearEquation ResidualEquation
LinearModel was originally conceived for providing the model, and optionally for derived classes the iterative solution methods for linear equations (like Ax=b) but may be more general in scope.
This abstract class defines the interface between a model of the sky (or any other quantity) and the equation used to predict the measured quantities. It provides the current best guess model, and given measures of the discrepency between the current model and the data (as provided by the ResidualEquation class) derived classes may be able to solve for a better model that corresponds more closely to the measured data.
I'll pass this class into a function as an actual instance of an abstract class cannot be constructed.
void foo(LinearModel< Image<Float> > mod, ResidualEquation< Image<Float> > eqn) { Image<Float> currentModel, newModel; currentModel = mod.getModel(); // get the current model; }
This class was originally conceived to be used in implementing deconvolution algorithms. I would not be surprised if it found wider applicability.
template determines the external representation of the model used. So complicated templates can be expected and should be OK.
is an abstract class and does not contain any implementation (and hence does not throw exceptions)
Definition at line 100 of file LinearModel.h.
virtual casa::LinearModel< Domain >::~LinearModel | ( | ) | [virtual] |
A virtual destructor is necessary.
virtual const Domain& casa::LinearModel< Domain >::getModel | ( | ) | const [pure virtual] |
Return the current model.
Implemented in casa::IncCEMemModel, casa::CEMemModel, casa::ClarkCleanLatModel, casa::MaskedArrayModel< T >, casa::ArrayModel< T >, casa::ArrayModel< Float >, and casa::LatticeModel.
virtual void casa::LinearModel< Domain >::setModel | ( | const Domain & | model | ) | [pure virtual] |
Set the current model.
Implemented in casa::IncCEMemModel, casa::CEMemModel, casa::ClarkCleanLatModel, casa::ClarkCleanModel, casa::MaskedArrayModel< T >, casa::ArrayModel< T >, casa::ArrayModel< Float >, and casa::LatticeModel.