46 #ifndef ROL_DYNAMICFUNCTION_HPP
47 #define ROL_DYNAMICFUNCTION_HPP
49 #include <initializer_list>
67 template<
typename Real>
116 const V&
getNew(
const V& x )
const;
119 const V&
getOld(
const V& x )
const;
126 template<
typename First>
132 template<
typename First,
typename...Rest>
133 void add_terms(
const First& first,
const Rest&... rest ) {
148 #endif // ROL_DYNAMICFUNCTION_HPP
DynamicFunction(std::initializer_list< std::string > zero_deriv_terms={})
VectorWorkspace< Real > & getVectorWorkspace() const
PartitionedVector< Real > PV
void add_terms(const First &first, const Rest &...rest)
Defines the linear algebra of vector space on a generic partitioned vector.
Provides update interface, casting and vector management to DynamicConstraint and DynamicObjective...
bool is_zero_derivative(const std::string &key)
Defines the linear algebra or vector space interface.
virtual void update_z(const V &x, const TS &ts)
virtual void update_uo(const V &x, const TS &ts)
std::vector< std::string > zero_deriv_terms_
PV & partition(V &x) const
VectorWorkspace< Real > workspace_
void add_terms(const First &first)
virtual void update_un(const V &x, const TS &ts)
virtual ~DynamicFunction()