11#ifndef ROL_DYNAMICOBJECTIVE_CHECKINTERFACE_HPP
12#define ROL_DYNAMICOBJECTIVE_CHECKINTERFACE_HPP
17#include "ROL_FunctionBindings.hpp"
23namespace ph = std::placeholders;
25template<
typename Real>
71 f_scalar_t<Real>
value_z(
const V& uo,
const V& un ) {
72 return std::bind( &
Obj::value, &
obj_, std::cref(uo), std::cref(un), ph::_1,
ts_ );
176template<
typename Real>
181template<
typename Real>
Defines the time-dependent objective function interface for simulation-based optimization....
virtual void hessVec_un_z(V &hv, const V &v, const V &uo, const V &un, const V &z, const TS &timeStamp) const
virtual void hessVec_z_uo(V &hv, const V &v, const V &uo, const V &un, const V &z, const TS &timeStamp) const
virtual void hessVec_un_uo(V &hv, const V &v, const V &uo, const V &un, const V &z, const TS &timeStamp) const
virtual void gradient_un(V &g, const V &uo, const V &un, const V &z, const TS &timeStamp) const
virtual void hessVec_z_z(V &hv, const V &v, const V &uo, const V &un, const V &z, const TS &timeStamp) const
virtual void hessVec_uo_uo(V &hv, const V &v, const V &uo, const V &un, const V &z, const TS &timeStamp) const
virtual Real value(const V &uo, const V &un, const V &z, const TS &timeStamp) const =0
virtual void gradient_z(V &g, const V &uo, const V &un, const V &z, const TS &timeStamp) const
virtual void hessVec_uo_un(V &hv, const V &v, const V &uo, const V &un, const V &z, const TS &timeStamp) const
virtual void hessVec_un_un(V &hv, const V &v, const V &uo, const V &un, const V &z, const TS &timeStamp) const
virtual void update(const V &uo, const V &un, const V &z, const TS &timeStamp)
virtual void gradient_uo(V &g, const V &uo, const V &un, const V &z, const TS &timeStamp) const
virtual void hessVec_z_un(V &hv, const V &v, const V &uo, const V &un, const V &z, const TS &timeStamp) const
virtual void hessVec_uo_z(V &hv, const V &v, const V &uo, const V &un, const V &z, const TS &timeStamp) const
Defines the linear algebra or vector space interface.
f_vector_t< Real > gradient_uo_uo(const V &un, const V &z)
f_vector_t< Real > gradient_z_un(const V &uo, const V &z)
f_dderiv_t< Real > hessVec_un_z(const V &uo, const V &un)
f_vector_t< Real > gradient_un(const V &uo, const V &z)
f_dderiv_t< Real > hessVec_un_uo(const V &un, const V &z)
DynamicObjective_CheckInterface(Obj &obj, TimeStamp< Real > &ts)
f_update_t< Real > update_z(const V &uo, const V &un)
f_update_t< Real > update_un(const V &uo, const V &z)
f_scalar_t< Real > value_uo(const V &un, const V &z)
f_vector_t< Real > gradient_un_un(const V &uo, const V &z)
f_vector_t< Real > gradient_un_uo(const V &un, const V &z)
f_vector_t< Real > gradient_uo(const V &un, const V &z)
f_dderiv_t< Real > hessVec_z_uo(const V &un, const V &z)
f_vector_t< Real > gradient_un_z(const V &uo, const V &un)
f_vector_t< Real > gradient_uo_z(const V &uo, const V &un)
f_scalar_t< Real > value_z(const V &uo, const V &un)
f_vector_t< Real > gradient_z_uo(const V &un, const V &z)
f_vector_t< Real > gradient_uo_un(const V &uo, const V &z)
f_update_t< Real > update_uo(const V &un, const V &z)
f_dderiv_t< Real > hessVec_z_un(const V &uo, const V &z)
f_dderiv_t< Real > hessVec_z_z(const V &uo, const V &un)
f_vector_t< Real > gradient_z_z(const V &uo, const V &un)
f_dderiv_t< Real > hessVec_uo_uo(const V &un, const V &z)
DynamicObjective_CheckInterface(Obj &obj)
f_scalar_t< Real > value_un(const V &uo, const V &z)
f_vector_t< Real > gradient_z(const V &uo, const V &un)
f_dderiv_t< Real > hessVec_un_un(const V &uo, const V &z)
f_dderiv_t< Real > hessVec_uo_un(const V &uo, const V &z)
f_dderiv_t< Real > hessVec_uo_z(const V &uo, const V &un)
DynamicConstraint_CheckInterface< Real > make_check(DynamicConstraint< Real > &con)
Contains local time step information.