10 #ifndef ROL_QUADRATIC_OBJECTIVE_H 
   11 #define ROL_QUADRATIC_OBJECTIVE_H 
   15 #include "ROL_Ptr.hpp" 
   36 template<
typename Real>
 
   39   const Ptr<const LinearOperator<Real>> 
H_;
 
   40   const Ptr<const Vector<Real>> 
g_;
 
QuadraticObjective(const Ptr< const LinearOperator< Real >> &H, const Ptr< const Vector< Real >> &g, Real c=Real(0))
Provides the interface to evaluate objective functions. 
void gradient(Vector< Real > &g, const Vector< Real > &x, Real &tol) override
Compute gradient. 
void hessVec(Vector< Real > &hv, const Vector< Real > &v, const Vector< Real > &x, Real &tol) override
Apply Hessian approximation to vector. 
Provides the interface to evaluate quadratic objective functions. 
Defines the linear algebra or vector space interface. 
const Ptr< const LinearOperator< Real > > H_
Real value(const Vector< Real > &x, Real &tol) override
Compute value. 
Provides the interface to apply a linear operator. 
void invHessVec(Vector< Real > &hv, const Vector< Real > &v, const Vector< Real > &x, Real &tol) override
Apply inverse Hessian approximation to vector. 
const Ptr< const Vector< Real > > g_
Ptr< Vector< Real > > tmp_