KASKADE 7 development version
|
Abstract linearization. More...
#include <abstract_interface.hh>
Abstract linearization.
Given a nonlinear functional, this class represents second order information at the point of linearization
Definition at line 166 of file abstract_interface.hh.
Public Member Functions | |
virtual double | eval () const =0 |
Evaluate functional. More... | |
virtual double | evalL1norm () const =0 |
Evaluate L1 norm of integrand. More... | |
virtual void | evald (AbstractFunctionSpaceElement &g, int rbegin=0, int rend=-1) const =0 |
Evaluate derivative. 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... | |
virtual void | d2axpy (double a, AbstractFunctionSpaceElement &y, AbstractFunctionSpaceElement const &x, int rbegin=0, int rend=-1, int cbegin=0, int cend=-1) const =0 |
Evaluate hessian times second argument: y = y+a*ddf*x. More... | |
virtual void | d2taxpy (double a, AbstractFunctionSpaceElement &y, AbstractFunctionSpaceElement const &x, int rbegin=0, int rend=-1, int cbegin=0, int cend=-1) const =0 |
Evaluate hessian times second argument: y = y+a*ddf*x. More... | |
virtual void | getMatrixBlocks (MatrixAsTriplet< double > &mat, int rbegin=0, int rend=-1, int cbegin=0, int cend=-1) const =0 |
Access matrix representation if available. More... | |
virtual AbstractFunctionSpaceElement const & | getOrigin () const =0 |
Get point of linearization. More... | |
virtual void | precompute ()=0 |
virtual void | flush ()=0 |
virtual | ~AbstractLinearization () |
|
inlinevirtual |
Definition at line 198 of file abstract_interface.hh.
|
pure virtual |
Evaluate hessian times second argument: y = y+a*ddf*x.
Implemented in Kaskade::Bridge::KaskadeLinearization< Functional >, and Kaskade::LagrangeLinearization.
Referenced by ddxpy().
|
pure virtual |
Evaluate hessian times second argument: y = y+a*ddf*x.
Implemented in Kaskade::Bridge::KaskadeLinearization< Functional >, and Kaskade::LagrangeLinearization.
Referenced by ddtxpy().
|
inline |
Evaluate hessian times second argument: y = y+ddf*x.
Definition at line 181 of file abstract_interface.hh.
|
inline |
Evaluate hessian times second argument: y = y+ddf*x.
Definition at line 176 of file abstract_interface.hh.
|
pure virtual |
Evaluate functional.
Implemented in Kaskade::Bridge::KaskadeLinearization< Functional >, and Kaskade::LagrangeLinearization.
|
pure virtual |
Evaluate derivative.
Implemented in Kaskade::LagrangeLinearization, and Kaskade::Bridge::KaskadeLinearization< Functional >.
|
pure virtual |
Evaluate L1 norm of integrand.
Implemented in Kaskade::Bridge::KaskadeLinearization< Functional >, and Kaskade::LagrangeLinearization.
|
pure virtual |
Implemented in Kaskade::Bridge::KaskadeLinearization< Functional >, and Kaskade::LagrangeLinearization.
|
pure virtual |
Access matrix representation if available.
Implemented in Kaskade::LagrangeLinearization.
|
pure virtual |
Get point of linearization.
Implemented in Kaskade::Bridge::KaskadeLinearization< Functional >, and Kaskade::LagrangeLinearization.
Referenced by Kaskade::IdentityChart::addPerturbation(), Kaskade::PrimalChart::addPerturbation(), Kaskade::NormalStepNewton< Newton >::getSearchDirection(), Kaskade::TangentialStepNewton< Newton >::getSearchDirection(), and Kaskade::TangentialStepArmijo::setLinearization().
|
pure virtual |
Implemented in Kaskade::Bridge::KaskadeLinearization< Functional >, and Kaskade::LagrangeLinearization.