RVL::QuadraticForm< Scalar > Class Template Reference

QuadraticForm creates a function of the form $ x \mapsto \frac{1}{2} |A x|^2 $ in which A is a linear operator. More...

#include <ls.hh>

Inheritance diagram for RVL::QuadraticForm< Scalar >:

RVL::Functional< Scalar > RVL::Writeable List of all members.

Public Member Functions

 QuadraticForm (const LinearOp< Scalar > &AA)
 QuadraticForm (const QuadraticForm< Scalar > &q)
 ~QuadraticForm ()
const Space< Scalar > & getDomain () const
ostream & write (ostream &str) const

Protected Member Functions

void apply (const Vector< Scalar > &x, Scalar &val) const
void applyGradient (const Vector< Scalar > &x, Vector< Scalar > &g) const
void applyHessian (const Vector< Scalar > &x, const Vector< Scalar > &delx, Vector< Scalar > &dely) const
virtual Functional< Scalar > * clone () const

Detailed Description

template<class Scalar>
class RVL::QuadraticForm< Scalar >

QuadraticForm creates a function of the form $ x \mapsto \frac{1}{2} |A x|^2 $ in which A is a linear operator.

Only differentiable when Scalar is not a complex type.

Definition at line 314 of file ls.hh.


Constructor & Destructor Documentation

template<class Scalar>
RVL::QuadraticForm< Scalar >::QuadraticForm ( const LinearOp< Scalar > &  AA  ) 

Definition at line 377 of file ls.hh.

template<class Scalar>
RVL::QuadraticForm< Scalar >::QuadraticForm ( const QuadraticForm< Scalar > &  q  ) 

Definition at line 380 of file ls.hh.

template<class Scalar>
RVL::QuadraticForm< Scalar >::~QuadraticForm (  ) 

Definition at line 383 of file ls.hh.


Member Function Documentation

template<class Scalar>
void RVL::QuadraticForm< Scalar >::apply ( const Vector< Scalar > &  x,
Scalar &  val 
) const [protected, virtual]

Implements RVL::Functional< Scalar >.

Definition at line 326 of file ls.hh.

template<class Scalar>
void RVL::QuadraticForm< Scalar >::applyGradient ( const Vector< Scalar > &  x,
Vector< Scalar > &  g 
) const [protected, virtual]

Implements RVL::Functional< Scalar >.

Definition at line 341 of file ls.hh.

template<class Scalar>
void RVL::QuadraticForm< Scalar >::applyHessian ( const Vector< Scalar > &  x,
const Vector< Scalar > &  delx,
Vector< Scalar > &  dely 
) const [protected, virtual]

Implements RVL::Functional< Scalar >.

Definition at line 356 of file ls.hh.

template<class Scalar>
virtual Functional<Scalar>* RVL::QuadraticForm< Scalar >::clone (  )  const [protected, virtual]

Implements RVL::Functional< Scalar >.

Definition at line 371 of file ls.hh.

template<class Scalar>
const Space<Scalar>& RVL::QuadraticForm< Scalar >::getDomain (  )  const [virtual]

Implements RVL::Functional< Scalar >.

Definition at line 385 of file ls.hh.

template<class Scalar>
ostream& RVL::QuadraticForm< Scalar >::write ( ostream &  str  )  const [virtual]

Implements RVL::Writeable.

Definition at line 387 of file ls.hh.


The documentation for this class was generated from the following file:
Generated on 5 Jan 2017 for RVL by  doxygen 1.4.7