10 #ifndef ROL_QUADRATICPENALTY_H
11 #define ROL_QUADRATICPENALTY_H
17 #include "ROL_Ptr.hpp"
53 const ROL::Ptr<Constraint<Real> >
con_;
87 const Real penaltyParameter,
90 const bool useScaling =
false,
91 const int HessianApprox = 0 )
107 con_->update(x,flag,iter);
119 const Real half(0.5);
196 Real tol = std::sqrt(ROL_EPSILON<Real>());
Provides the interface to evaluate objective functions.
virtual const Vector & dual() const
Return dual representation of , for example, the result of applying a Riesz map, or change of basis...
virtual void scale(const Real alpha)=0
Compute where .
virtual void reset(const Vector< Real > &multiplier, const Real penaltyParameter)
virtual ROL::Ptr< Vector > clone() const =0
Clone to make a new (uninitialized) vector.
virtual void hessVec(Vector< Real > &hv, const Vector< Real > &v, const Vector< Real > &x, Real &tol)
Apply Hessian approximation to vector.
virtual void plus(const Vector &x)=0
Compute , where .
ROL::Ptr< Vector< Real > > primalConVector_
QuadraticPenalty(const ROL::Ptr< Constraint< Real > > &con, const Vector< Real > &multiplier, const Real penaltyParameter, const Vector< Real > &optVec, const Vector< Real > &conVec, const bool useScaling=false, const int HessianApprox=0)
Provides the interface to evaluate the quadratic constraint penalty.
Contains definitions of custom data types in ROL.
virtual void zero()
Set to zero vector.
Defines the linear algebra or vector space interface.
const ROL::Ptr< Constraint< Real > > con_
void evaluateConstraint(const Vector< Real > &x, Real &tol)
virtual void gradient(Vector< Real > &g, const Vector< Real > &x, Real &tol)
Compute gradient.
ROL::Ptr< Vector< Real > > multiplier_
virtual int getNumberConstraintEvaluations(void) const
virtual Real value(const Vector< Real > &x, Real &tol)
Compute value.
bool isConstraintComputed_
void setScaling(const Real cscale=1)
ROL::Ptr< Vector< Real > > conValue_
virtual void set(const Vector &x)
Set where .
virtual void update(const Vector< Real > &x, bool flag=true, int iter=-1)
Update objective function.
virtual void getConstraintVec(Vector< Real > &c, const Vector< Real > &x)
ROL::Ptr< Vector< Real > > primalMultiplierVector_
Defines the general constraint operator interface.
ROL::Ptr< Vector< Real > > dualOptVector_