44 #ifndef ROL_BOUND_TO_CONSTRAINT_H
45 #define ROL_BOUND_TO_CONSTRAINT_H
61 ROL::Ptr<InequalityConstraint<Real> >
lo_;
62 ROL::Ptr<InequalityConstraint<Real> >
up_;
63 ROL::Ptr<Vector<Real> >
tmp_;
67 lo_ = ROL::makePtr<LowerBoundToConstraint<Real>>(bnd,x);
68 up_ = ROL::makePtr<UpperBoundToConstraint<Real>>(bnd,x);
73 lo_ = ROL::makePtr<LowerBoundToConstraint<Real>>(lo);
74 up_ = ROL::makePtr<UpperBoundToConstraint<Real>>(up);
88 lo_->applyJacobian(jv0,v,x,tol);
89 up_->applyJacobian(jv1,v,x,tol);
95 lo_->applyAdjointJacobian(ajv,v0,x,tol);
96 up_->applyAdjointJacobian(*
tmp_,v1,x,tol);
void applyAdjointJacobian(Vector< Real > &ajv, const Vector< Real > &v, const Vector< Real > &x, Real &tol)
Apply the adjoint of the the constraint Jacobian at , , to vector .
BoundToConstraint(const Vector< Real > &lo, const Vector< Real > &up)
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.
Provides an implementation for bound constraints.
BoundToConstraint(BoundConstraint< Real > &bnd, const Vector< Real > &x)
ROL::Ptr< InequalityConstraint< Real > > up_
virtual void zero()
Set to zero vector.
Defines the linear algebra or vector space interface.
void applyAdjointHessian(Vector< Real > &ahuv, const Vector< Real > &u, const Vector< Real > &v, const Vector< Real > &x, Real &tol)
Apply the derivative of the adjoint of the constraint Jacobian at to vector in direction ...
Provides the interface to apply upper and lower bound constraints.
ROL::Ptr< Vector< Real > > tmp_
void applyJacobian(Vector< Real > &jv, const Vector< Real > &v, const Vector< Real > &x, Real &tol)
Apply the constraint Jacobian at , , to vector .
Defines the general constraint operator interface.
void value(Vector< Real > &c, const Vector< Real > &x, Real &tol)
Evaluate the constraint operator at .
ROL::Ptr< InequalityConstraint< Real > > lo_