44 #ifndef OPTIPACK_DEFAULT_POLY_LINE_SEARCH_POINT_EVALUATOR_HPP
45 #define OPTIPACK_DEFAULT_POLY_LINE_SEARCH_POINT_EVALUATOR_HPP
49 #include "Thyra_VectorStdOps.hpp"
68 template<
typename Scalar>
92 const Ptr<Thyra::VectorBase<Scalar> > &p
108 template<
typename Scalar>
124 template<
typename Scalar>
129 template<
typename Scalar>
131 const ArrayView<
const RCP<
const Thyra::VectorBase<Scalar> > > &vecs
144 template<
typename Scalar>
146 const Ptr<Thyra::VectorBase<Scalar> > &p
154 if (alpha != ST::zero()) {
156 const int n = vecs_.size();
157 for (
int i = 1; i < n; ++i, alpha_i *= alpha) {
158 Vp_StV(p, alpha_i, *vecs_[i]);
167 #endif // OPTIPACK_DEFAULT_POLY_LINE_SEARCH_POINT_EVALUATOR_HPP
Default line search point evaluator using a polynomial linear combination of vectors.
virtual void computePoint(const ScalarMag &alpha, const Ptr< Thyra::VectorBase< Scalar > > &p) const
DefaultPolyLineSearchPointEvaluator()
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
TypeTo as(const TypeFrom &t)
void initialize(const ArrayView< const RCP< const Thyra::VectorBase< Scalar > > > &vecs)
Base class interface for line search point updates.
const RCP< DefaultPolyLineSearchPointEvaluator< Scalar > > defaultPolyLineSearchPointEvaluator()
Nonmember constructor.
#define TEUCHOS_ASSERT(assertion_test)
Array< RCP< const Thyra::VectorBase< Scalar > > > vecs_
ScalarTraits< Scalar >::magnitudeType ScalarMag