46#ifndef ROL_DYNAMICCONSTRAINT_CHECKINTERFACE_HPP
47#define ROL_DYNAMICCONSTRAINT_CHECKINTERFACE_HPP
49#include "ROL_FunctionBindings.hpp"
56namespace ph = std::placeholders;
58template<
typename Real>
74 ts_.t.at(1) = 0.02345;
97 ph::_1, ph::_2, cref(un), cref(z),
ts_ );
102 ph::_1, cref(uo), ph::_2, cref(z),
ts_ );
107 ph::_1, cref(uo), cref(un), ph::_2,
ts_ );
112 ph::_1, cref(uo), ph::_2, cref(z),
ts_ );
119 cref(un), cref(z),
ts_ );
124 ph::_3, cref(z),
ts_ );
129 ph::_3, cref(z),
ts_ );
134 cref(un), ph::_3,
ts_ );
141 cref(un), cref(z),
ts_ );
146 ph::_3, cref(z),
ts_ );
151 ph::_3, cref(z),
ts_ );
156 cref(un), ph::_3,
ts_ );
163 cref(un), cref(z),
ts_ );
168 ph::_3, cref(z),
ts_ );
173 cref(un), ph::_3,
ts_ );
178 cref(un), cref(z),
ts_ );
183 ph::_3, cref(z),
ts_ );
188 cref(un), ph::_3,
ts_ );
193 cref(un), cref(z),
ts_ );
198 ph::_3, cref(z),
ts_ );
203 cref(un), ph::_3,
ts_ );
210 cref(uo), ph::_3, cref(z),
ts_ );
215 cref(uo), ph::_3, cref(z),
ts_ );
220 cref(uo), ph::_3, cref(z),
ts_ );
227 ph::_3, cref(un), cref(z),
ts_ );
232 ph::_3, cref(un), cref(z),
ts_ );
237 ph::_3, cref(un), cref(z),
ts_ );
244 cref(uo), cref(un), ph::_3,
ts_ );
249 cref(uo), cref(un), ph::_3,
ts_ );
254 cref(uo), cref(un), ph::_3,
ts_ );
263template<
typename Real>
268template<
typename Real>
Defines the time-dependent constraint operator interface for simulation-based optimization.
virtual void applyAdjointHessian_z_uo(V &ahwv, const V &w, const V &vz, const V &uo, const V &un, const V &z, const TS &ts) const
virtual void applyJacobian_z(V &jv, const V &vz, const V &uo, const V &un, const V &z, const TS &ts) const
virtual void applyAdjointHessian_uo_un(V &ahwv, const V &w, const V &vo, const V &uo, const V &un, const V &z, const TS &ts) const
virtual void applyAdjointHessian_uo_uo(V &ahwv, const V &w, const V &v, const V &uo, const V &un, const V &z, const TS &ts) const
virtual void applyAdjointHessian_z_un(V &ahwv, const V &w, const V &vz, const V &uo, const V &un, const V &z, const TS &ts) const
virtual void applyInverseAdjointJacobian_un(V &iajv, const V &vn, const V &uo, const V &un, const V &z, const TS &ts) const
virtual void applyAdjointHessian_uo_z(V &ahwv, const V &w, const V &vo, const V &uo, const V &un, const V &z, const TS &ts) const
virtual void applyAdjointHessian_un_z(V &ahwv, const V &w, const V &vn, const V &uo, const V &un, const V &z, const TS &ts) const
virtual void solve(V &c, const V &uo, V &un, const V &z, const TS &ts)
virtual void applyAdjointHessian_un_uo(V &ahwv, const V &w, const V &vn, const V &uo, const V &un, const V &z, const TS &ts) const
virtual void value(V &c, const V &uo, const V &un, const V &z, const TS &ts) const =0
virtual void applyJacobian_uo(V &jv, const V &vo, const V &uo, const V &un, const V &z, const TS &ts) const
virtual void applyAdjointJacobian_uo(V &ajv, const V &dualv, const V &uo, const V &un, const V &z, const TS &ts) const
virtual void update(const V &uo, const V &un, const V &z, const TS &ts)
virtual void applyInverseJacobian_un(V &ijv, const V &vn, const V &uo, const V &un, const V &z, const TS &ts) const
virtual void applyAdjointHessian_z_z(V &ahwv, const V &w, const V &vz, const V &uo, const V &un, const V &z, const TS &ts) const
virtual void applyJacobian_un(V &jv, const V &vn, const V &uo, const V &un, const V &z, const TS &ts) const
virtual void applyAdjointJacobian_un(V &ajv, const V &dualv, const V &uo, const V &un, const V &z, const TS &ts) const
virtual void applyAdjointJacobian_z(V &ajv, const V &dualv, const V &uo, const V &un, const V &z, const TS &ts) const
virtual void applyAdjointHessian_un_un(V &ahwv, const V &wn, const V &vn, const V &uo, const V &un, const V &z, const TS &ts) const
Defines the linear algebra or vector space interface.
f_dderiv_t< Real > jacobian_z(const V &uo, const V &un)
f_dderiv_t< Real > adjointJacobian_un_un(const V &uo, const V &z)
f_update_t< Real > update_un(const V &uo, const V &z)
f_dderiv_t< Real > adjointHessian_z_un(const V &uo, const V &un, const V &l)
f_dderiv_t< Real > adjointJacobian_uo_un(const V &uo, const V &z)
f_dderiv_t< Real > adjointJacobian_uo_uo(const V &un, const V &z)
DynamicConstraint_CheckInterface(Con &con)
f_dderiv_t< Real > adjointJacobian_un_z(const V &uo, const V &un)
f_solve_t< Real > solve_un(const V &uo, const V &z)
f_update_t< Real > update_uo(const V &un, const V &z)
f_dderiv_t< Real > inverseAdjointJacobian_un(const V &uo, const V &z)
f_dderiv_t< Real > adjointHessian_z_z(const V &uo, const V &un, const V &l)
f_dderiv_t< Real > adjointJacobian_un(const V &uo, const V &z)
f_vector_t< Real > value_un(const V &uo, const V &z)
f_dderiv_t< Real > adjointHessian_un_uo(const V &uo, const V &z, const V &l)
f_dderiv_t< Real > adjointJacobian_uo(const V &un, const V &z)
f_dderiv_t< Real > adjointHessian_uo_z(const V &un, const V &z, const V &l)
f_dderiv_t< Real > adjointJacobian_z_uo(const V &un, const V &z)
f_dderiv_t< Real > adjointHessian_un_z(const V &uo, const V &z, const V &l)
f_dderiv_t< Real > jacobian_un(const V &uo, const V &z)
f_dderiv_t< Real > adjointJacobian_z_z(const V &uo, const V &un)
f_update_t< Real > update_z(const V &uo, const V &un)
f_dderiv_t< Real > adjointHessian_uo_un(const V &un, const V &z, const V &l)
f_vector_t< Real > value_uo(const V &un, const V &z)
DynamicConstraint_CheckInterface(Con &con, TimeStamp< Real > &ts)
f_dderiv_t< Real > adjointHessian_un_un(const V &uo, const V &z, const V &l)
f_dderiv_t< Real > adjointJacobian_uo_z(const V &uo, const V &un)
f_dderiv_t< Real > jacobian_uo(const V &un, const V &z)
f_dderiv_t< Real > adjointJacobian_z_un(const V &uo, const V &z)
f_dderiv_t< Real > inverseJacobian_un(const V &uo, const V &z)
f_vector_t< Real > value_z(const V &uo, const V &un)
f_dderiv_t< Real > adjointJacobian_z(const V &uo, const V &un)
f_dderiv_t< Real > adjointHessian_uo_uo(const V &un, const V &z, const V &l)
f_dderiv_t< Real > adjointHessian_z_uo(const V &uo, const V &un, const V &l)
f_dderiv_t< Real > adjointJacobian_un_uo(const V &un, const V &z)
DynamicConstraint_CheckInterface< Real > make_check(DynamicConstraint< Real > &con)
Contains local time step information.