44#ifndef ROL_PQNOBJECTIVEDEF_H
45#define ROL_PQNOBJECTIVEDEF_H
50template<
typename Real>
58template<
typename Real>
61 pwa_->axpy(
static_cast<Real
>(-1),*
x_);
63 dwa_->scale(
static_cast<Real
>(0.5));
68template<
typename Real>
71 pwa_->axpy(
static_cast<Real
>(-1),*
x_);
76template<
typename Real>
81template<
typename Real>
83 x_->set(x);
g_->set(g);
void setAnchor(const Vector< Real > &x, const Vector< Real > &g)
const Ptr< Vector< Real > > dwa_
const Ptr< Secant< Real > > secant_
void gradient(Vector< Real > &g, const Vector< Real > &x, Real &tol) override
const Ptr< Vector< Real > > x_
const Ptr< Vector< Real > > pwa_
void hessVec(Vector< Real > &hv, const Vector< Real > &v, const Vector< Real > &x, Real &tol) override
Real value(const Vector< Real > &x, Real &tol) override
PQNObjective(const Ptr< Secant< Real > > &secant, const Vector< Real > &x, const Vector< Real > &g)
const Ptr< Vector< Real > > g_
Provides interface for and implements limited-memory secant operators.
Defines the linear algebra or vector space interface.
virtual void plus(const Vector &x)=0
Compute , where .