KASKADE 7 development version
Public Member Functions | List of all members
Kaskade::LagrangeLinearization Class Reference

#include <lagrangeLinearization.hh>

Detailed Description

Definition at line 11 of file lagrangeLinearization.hh.

Inheritance diagram for Kaskade::LagrangeLinearization:
Kaskade::AbstractLinearization

Public Member Functions

 LagrangeLinearization (AbstractLinearization *Nlin_, AbstractLinearization *Tlin_, AbstractFunctionSpaceElement const &adjointCorrection, int stateId_=1, int controlId_=0, bool hasTlin_uu_=false)
 
virtual ~LagrangeLinearization ()
 
virtual double eval () const
 Evaluate f(origin) More...
 
virtual double evalL1norm () const
 Evaluate L1 norm of integrand. More...
 
virtual void evald (AbstractFunctionSpaceElement &g, int rbegin=0, int rend=-1) const
 Evaluate f'(origin)(.) + <Lag. Multiplier, c'(origin)(.) > this is dual element. More...
 
virtual void d2axpy (double a, AbstractFunctionSpaceElement &y, AbstractFunctionSpaceElement const &x, int rbegin=0, int rend=-1, int cbegin=0, int cend=-1) const
 Evaluate scaled hessian (of Lagrangian) times second argument. More...
 
virtual void d2taxpy (double a, AbstractFunctionSpaceElement &y, AbstractFunctionSpaceElement const &x, int rbegin=0, int rend=-1, int cbegin=0, int cend=-1) const
 Evaluate hessian times second argument: y = y+a*ddf*x. More...
 
virtual AbstractFunctionSpaceElement const & getOrigin () const
 Get point of linearization. More...
 
virtual void precompute ()
 Precompute data. More...
 
virtual void flush ()
 
AbstractLinearizationgetTangentialLinearization ()
 
AbstractLinearization const & getTangentialLinearization () const
 
AbstractLinearizationgetNormalLinearization ()
 
AbstractLinearization const & getNormalLinearization () const
 
virtual void getMatrixBlocks (MatrixAsTriplet< double > &mat, int rbegin=0, int rend=-1, int cbegin=0, int cend=-1) const
 Access matrix representation if available. More...
 
void ddxpy (AbstractFunctionSpaceElement &y, AbstractFunctionSpaceElement const &x, int rbegin=0, int rend=-1, int cbegin=0, int cend=-1) const
 Evaluate hessian times second argument: y = y+ddf*x. More...
 
void ddtxpy (AbstractFunctionSpaceElement &y, AbstractFunctionSpaceElement const &x, int rbegin=0, int rend=-1, int cbegin=0, int cend=-1) const
 Evaluate hessian times second argument: y = y+ddf*x. More...
 

Constructor & Destructor Documentation

◆ LagrangeLinearization()

Kaskade::LagrangeLinearization::LagrangeLinearization ( AbstractLinearization Nlin_,
AbstractLinearization Tlin_,
AbstractFunctionSpaceElement const &  adjointCorrection,
int  stateId_ = 1,
int  controlId_ = 0,
bool  hasTlin_uu_ = false 
)

◆ ~LagrangeLinearization()

virtual Kaskade::LagrangeLinearization::~LagrangeLinearization ( )
virtual

Member Function Documentation

◆ d2axpy()

virtual void Kaskade::LagrangeLinearization::d2axpy ( double  a,
AbstractFunctionSpaceElement y,
AbstractFunctionSpaceElement const &  x,
int  rbegin = 0,
int  rend = -1,
int  cbegin = 0,
int  cend = -1 
) const
virtual

Evaluate scaled hessian (of Lagrangian) times second argument.

Implements Kaskade::AbstractLinearization.

◆ d2taxpy()

virtual void Kaskade::LagrangeLinearization::d2taxpy ( double  a,
AbstractFunctionSpaceElement y,
AbstractFunctionSpaceElement const &  x,
int  rbegin = 0,
int  rend = -1,
int  cbegin = 0,
int  cend = -1 
) const
virtual

Evaluate hessian times second argument: y = y+a*ddf*x.

Implements Kaskade::AbstractLinearization.

◆ ddtxpy()

void Kaskade::AbstractLinearization::ddtxpy ( AbstractFunctionSpaceElement y,
AbstractFunctionSpaceElement const &  x,
int  rbegin = 0,
int  rend = -1,
int  cbegin = 0,
int  cend = -1 
) const
inlineinherited

Evaluate hessian times second argument: y = y+ddf*x.

Definition at line 181 of file abstract_interface.hh.

◆ ddxpy()

void Kaskade::AbstractLinearization::ddxpy ( AbstractFunctionSpaceElement y,
AbstractFunctionSpaceElement const &  x,
int  rbegin = 0,
int  rend = -1,
int  cbegin = 0,
int  cend = -1 
) const
inlineinherited

Evaluate hessian times second argument: y = y+ddf*x.

Definition at line 176 of file abstract_interface.hh.

◆ eval()

virtual double Kaskade::LagrangeLinearization::eval ( ) const
virtual

Evaluate f(origin)

Implements Kaskade::AbstractLinearization.

◆ evald()

virtual void Kaskade::LagrangeLinearization::evald ( AbstractFunctionSpaceElement g,
int  rbegin = 0,
int  rend = -1 
) const
virtual

Evaluate f'(origin)(.) + <Lag. Multiplier, c'(origin)(.) > this is dual element.

Implements Kaskade::AbstractLinearization.

◆ evalL1norm()

virtual double Kaskade::LagrangeLinearization::evalL1norm ( ) const
virtual

Evaluate L1 norm of integrand.

Implements Kaskade::AbstractLinearization.

◆ flush()

virtual void Kaskade::LagrangeLinearization::flush ( )
virtual

◆ getMatrixBlocks()

virtual void Kaskade::LagrangeLinearization::getMatrixBlocks ( MatrixAsTriplet< double > &  mat,
int  rbegin = 0,
int  rend = -1,
int  cbegin = 0,
int  cend = -1 
) const
virtual

Access matrix representation if available.

Implements Kaskade::AbstractLinearization.

◆ getNormalLinearization() [1/2]

AbstractLinearization & Kaskade::LagrangeLinearization::getNormalLinearization ( )

◆ getNormalLinearization() [2/2]

AbstractLinearization const & Kaskade::LagrangeLinearization::getNormalLinearization ( ) const

◆ getOrigin()

virtual AbstractFunctionSpaceElement const & Kaskade::LagrangeLinearization::getOrigin ( ) const
virtual

Get point of linearization.

Implements Kaskade::AbstractLinearization.

◆ getTangentialLinearization() [1/2]

AbstractLinearization & Kaskade::LagrangeLinearization::getTangentialLinearization ( )

◆ getTangentialLinearization() [2/2]

AbstractLinearization const & Kaskade::LagrangeLinearization::getTangentialLinearization ( ) const

◆ precompute()

virtual void Kaskade::LagrangeLinearization::precompute ( )
virtual

Precompute data.

Implements Kaskade::AbstractLinearization.


The documentation for this class was generated from the following file: