#include <ls.hh>
Inheritance diagram for RVL::LeastSquaresFcnlGN< Scalar >:
Public Member Functions | |
LeastSquaresFcnlGN (Operator< Scalar > const &op) | |
Usual constructor. | |
LeastSquaresFcnlGN (const LeastSquaresFcnlGN< Scalar > &J) | |
Copy constructor. | |
virtual | ~LeastSquaresFcnlGN () |
Space< Scalar > const & | getDomain () const |
Scalar | getMaxStep (const Vector< Scalar > &x, const Vector< Scalar > &dx) const |
ostream & | write (ostream &str) const |
Protected Member Functions | |
void | apply (Vector< Scalar > const &x, Scalar &val) const |
void | applyGradient (Vector< Scalar > const &x, Vector< Scalar > &g) const |
void | applyHessian (Vector< Scalar > const &x, Vector< Scalar > const &dx, Vector< Scalar > &dy) const |
virtual Functional< Scalar > * | clone () const |
This is a so called bridge class, i.e. it exists merely to make objects of some class behave like objects of another class. The input object is an operator \form::25 (an instance of Operator ). The class uses a reference to this object to construct the least squares functinal , its gradient
, and the Gauss-Newton approximation to its Hessian operator
and presents the result as an instance of the Functional interface.
As with all LS functions, only defines a differentiable function is Scalar is a real type.
Definition at line 508 of file ls.hh.
RVL::LeastSquaresFcnlGN< Scalar >::LeastSquaresFcnlGN | ( | Operator< Scalar > const & | op | ) |
RVL::LeastSquaresFcnlGN< Scalar >::LeastSquaresFcnlGN | ( | const LeastSquaresFcnlGN< Scalar > & | J | ) |
virtual RVL::LeastSquaresFcnlGN< Scalar >::~LeastSquaresFcnlGN | ( | ) | [virtual] |
void RVL::LeastSquaresFcnlGN< Scalar >::apply | ( | Vector< Scalar > const & | x, | |
Scalar & | val | |||
) | const [protected, virtual] |
Implements RVL::Functional< Scalar >.
Definition at line 520 of file ls.hh.
References RVL::Functional< Scalar >::export_apply().
void RVL::LeastSquaresFcnlGN< Scalar >::applyGradient | ( | Vector< Scalar > const & | x, | |
Vector< Scalar > & | g | |||
) | const [protected, virtual] |
Implements RVL::Functional< Scalar >.
Definition at line 530 of file ls.hh.
References RVL::Functional< Scalar >::export_applyGradient().
void RVL::LeastSquaresFcnlGN< Scalar >::applyHessian | ( | Vector< Scalar > const & | x, | |
Vector< Scalar > const & | dx, | |||
Vector< Scalar > & | dy | |||
) | const [protected, virtual] |
Implements RVL::Functional< Scalar >.
Definition at line 540 of file ls.hh.
References RVL::Functional< Scalar >::export_applyHessian().
virtual Functional<Scalar>* RVL::LeastSquaresFcnlGN< Scalar >::clone | ( | ) | const [protected, virtual] |
Space<Scalar> const& RVL::LeastSquaresFcnlGN< Scalar >::getDomain | ( | ) | const [virtual] |
Scalar RVL::LeastSquaresFcnlGN< Scalar >::getMaxStep | ( | const Vector< Scalar > & | x, | |
const Vector< Scalar > & | dx | |||
) | const [virtual] |
ostream& RVL::LeastSquaresFcnlGN< Scalar >::write | ( | ostream & | str | ) | const [virtual] |