10 #ifndef ROL_CONSTRAINT_DYNAMICSTATE_H
11 #define ROL_CONSTRAINT_DYNAMICSTATE_H
21 const Ptr<DynamicConstraint<Real>>
con_;
22 const Ptr<const Vector<Real>>
uo_;
23 const Ptr<const Vector<Real>>
z_;
24 const Ptr<const TimeStamp<Real>>
ts_;
50 con_->applyAdjointHessian_un_un(ahwv,w,v,*
uo_,u,*
z_,*
ts_);
const Ptr< DynamicConstraint< Real > > con_
virtual ROL::Ptr< Vector > clone() const =0
Clone to make a new (uninitialized) vector.
void update(const Vector< Real > &u, bool flag=true, int iter=-1)
Update constraint functions. x is the optimization variable, flag = true if optimization variable is ...
Defines the time-dependent constraint operator interface for simulation-based optimization.
void value(Vector< Real > &c, const Vector< Real > &u, Real &tol)
Evaluate the constraint operator at .
void applyJacobian(Vector< Real > &jv, const Vector< Real > &v, const Vector< Real > &u, Real &tol)
Apply the constraint Jacobian at , , to vector .
Defines the linear algebra or vector space interface.
const Ptr< const Vector< Real > > z_
void applyAdjointHessian(Vector< Real > &ahwv, const Vector< Real > &w, const Vector< Real > &v, const Vector< Real > &u, Real &tol)
Apply the derivative of the adjoint of the constraint Jacobian at to vector in direction ...
Constraint_DynamicState(const Ptr< DynamicConstraint< Real >> &con, const Ptr< const Vector< Real >> &uo, const Ptr< const Vector< Real >> &z, const Ptr< const TimeStamp< Real >> &ts)
const Ptr< const TimeStamp< Real > > ts_
void applyAdjointJacobian(Vector< Real > &ajv, const Vector< Real > &v, const Vector< Real > &u, Real &tol)
Apply the adjoint of the the constraint Jacobian at , , to vector .
Ptr< Vector< Real > > ijv_
const Ptr< const Vector< Real > > uo_
void applyPreconditioner(Vector< Real > &pv, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &g, Real &tol)
Apply a constraint preconditioner at , , to vector . Ideally, this preconditioner satisfies the follo...
Defines the general constraint operator interface.