10#ifndef ROL_LINEARCOMBINATIONOBJECTIVE_DEF_H
11#define ROL_LINEARCOMBINATIONOBJECTIVE_DEF_H
15template<
typename Real>
23template<
typename Real>
29template<
typename Real>
31 for (
size_t i=0; i<
size_; ++i) {
32 obj_[i]->update(x,type,iter);
36template<
typename Real>
38 for (
size_t i=0; i<
size_; ++i) {
39 obj_[i]->update(x,flag,iter);
43template<
typename Real>
46 for (
size_t i = 0; i <
size_; i++) {
52template<
typename Real>
59 for (
size_t i = 0; i <
size_; i++) {
65template<
typename Real>
72 for (
size_t i = 0; i <
size_; i++) {
78template<
typename Real>
81 for (
size_t i = 0; i <
size_; ++i) {
82 obj_[i]->setParameter(param);
void setParameter(const std::vector< Real > ¶m) override
Ptr< Vector< Real > > xdual_
const std::vector< Ptr< Objective< Real > > > obj_
Real value(const Vector< Real > &x, Real &tol) override
LinearCombinationObjective(const std::vector< Ptr< Objective< Real > > > &obj)
void gradient(Vector< Real > &g, const Vector< Real > &x, Real &tol) override
void hessVec(Vector< Real > &hv, const Vector< Real > &v, const Vector< Real > &x, Real &tol) override
std::vector< Real > weights_
void update(const Vector< Real > &x, UpdateType type, int iter=-1) override
virtual void setParameter(const std::vector< Real > ¶m)
Defines the linear algebra or vector space interface.
virtual void zero()
Set to zero vector.
virtual ROL::Ptr< Vector > clone() const =0
Clone to make a new (uninitialized) vector.
virtual void axpy(const Real alpha, const Vector &x)
Compute where .