10 #ifndef ROL_LINEARCOMBINATIONOBJECTIVE_H
11 #define ROL_LINEARCOMBINATIONOBJECTIVE_H
14 #include "ROL_Ptr.hpp"
18 template<
typename Real>
21 const std::vector<Ptr<Objective<Real>>>
obj_;
38 void setParameter(
const std::vector<Real> ¶m)
override;
Provides the interface to evaluate objective functions.
const std::vector< Ptr< Objective< Real > > > obj_
Ptr< Vector< Real > > xdual_
const double weights[4][5]
Real value(const Vector< Real > &x, Real &tol) override
Compute value.
void gradient(Vector< Real > &g, const Vector< Real > &x, Real &tol) override
Compute gradient.
LinearCombinationObjective(const std::vector< Ptr< Objective< Real >>> &obj)
Defines the linear algebra or vector space interface.
void setParameter(const std::vector< Real > ¶m) override
void hessVec(Vector< Real > &hv, const Vector< Real > &v, const Vector< Real > &x, Real &tol) override
Apply Hessian approximation to vector.
std::vector< Real > weights_
void update(const Vector< Real > &x, UpdateType type, int iter=-1) override
Update objective function.