44 #ifndef ROL_BOUND_TO_CONSTRAINT_H
45 #define ROL_BOUND_TO_CONSTRAINT_H
49 template<
typename Real>
51 lo_ = makePtr<LowerBoundToConstraint<Real>>(bnd);
52 up_ = makePtr<UpperBoundToConstraint<Real>>(bnd);
56 template<
typename Real>
58 lo_ = makePtr<LowerBoundToConstraint<Real>>(lo);
59 up_ = makePtr<UpperBoundToConstraint<Real>>(up);
63 template<
typename Real>
71 template<
typename Real>
76 lo_->applyJacobian(jv0,v,x,tol);
77 up_->applyJacobian(jv1,v,x,tol);
80 template<
typename Real>
85 lo_->applyAdjointJacobian(ajv,v0,x,tol);
86 up_->applyAdjointJacobian(*tmp_,v1,x,tol);
90 template<
typename Real>
virtual ROL::Ptr< Vector > clone() const =0
Clone to make a new (uninitialized) vector.
virtual void plus(const Vector &x)=0
Compute , where .
Defines the linear algebra of vector space on a generic partitioned vector.
virtual void zero()
Set to zero vector.
Defines the linear algebra or vector space interface.
void value(Vector< Real > &c, const Vector< Real > &x, Real &tol) override
Evaluate the constraint operator at .
Provides the interface to apply upper and lower bound constraints.
void applyAdjointJacobian(Vector< Real > &ajv, const Vector< Real > &v, const Vector< Real > &x, Real &tol) override
Apply the adjoint of the the constraint Jacobian at , , to vector .
void applyAdjointHessian(Vector< Real > &ahuv, const Vector< Real > &u, const Vector< Real > &v, const Vector< Real > &x, Real &tol) override
Apply the derivative of the adjoint of the constraint Jacobian at to vector in direction ...
BoundToConstraint(BoundConstraint< Real > &bnd)
void applyJacobian(Vector< Real > &jv, const Vector< Real > &v, const Vector< Real > &x, Real &tol) override
Apply the constraint Jacobian at , , to vector .