ROL
Public Member Functions | Protected Member Functions | Private Types | Private Attributes | List of all members
ROL::PrimalScaledVector< Real > Class Template Reference

Provides the implementation of the ROL::Vector interface that handles scalings in the inner product. A more generic version of ROL::PrimalScaledStdVector. More...

#include <ROL_ScaledVector.hpp>

+ Inheritance diagram for ROL::PrimalScaledVector< Real >:

Public Member Functions

 PrimalScaledVector (const Ptr< V > &vec, const Ptr< V > &scaling_vec)
 
virtual ~PrimalScaledVector ()
 
virtual Real dot (const V &x) const override
 
virtual Ptr< Vclone () const override
 
virtual Ptr< Vbasis (const int i) const override
 
virtual void const Vdual () const override
 
const Ptr< V > & getScalingVector ()
 
const Ptr< const V > & getScalingVector () const
 
void setScalingVector (const Ptr< const V & > &scaling_vec) const
 
 WrappedVector (const Ptr< V > &vec)
 
virtual ~WrappedVector ()
 
virtual void plus (const V &x) override
 
virtual void scale (const Real alpha) override
 
virtual Real dot (const V &x) const override
 
virtual Real norm () const override
 
virtual Ptr< Vclone () const override
 
virtual void axpy (const Real alpha, const V &x) override
 
virtual Ptr< Vbasis (const int i) const override
 
virtual int dimension () const override
 
virtual void set (const V &x) override
 
virtual void const Vdual () const override
 
virtual void applyUnary (const Elementwise::UnaryFunction< Real > &f) override
 
virtual void applyBinary (const Elementwise::BinaryFunction< Real > &f, const V &x) override
 
virtual Real reduce (const Elementwise::ReductionOp< Real > &r) const override
 
virtual void setScalar (const Real C) override
 
virtual void randomize (const Real l=0.0, const Real u=1.0) override
 
virtual void print (std::ostream &os) override
 
const Ptr< V > & getVector ()
 
const Ptr< const V > & getVector () const
 
virtual void setVector (const Ptr< const V > &vec) const
 

Protected Member Functions

VectorWorkspace< Real > & getWorkspace () const
 
void multiply_scaling (const Ptr< V > &y) const
 

Private Types

using V = Vector< Real >
 
using VPrim = PrimalScaledVector< Real >
 
using VDual = DualScaledVector< Real >
 
using V = Vector< Real >
 
using VPrim = PrimalScaledVector< Real >
 
using VDual = DualScaledVector< Real >
 

Private Attributes

Ptv< Vscaling_vec_
 
VectorWorkspace< Real > workspace_
 
Elementwise::Multiply< Real > mult_
 
Ptr< Vvec_
 

Detailed Description

template<typename Real>
class ROL::PrimalScaledVector< Real >

Provides the implementation of the ROL::Vector interface that handles scalings in the inner product. A more generic version of ROL::PrimalScaledStdVector.

Definition at line 69 of file ROL_ScaledVector.hpp.

Member Typedef Documentation

template<typename Real >
using ROL::PrimalScaledVector< Real >::V = Vector<Real>
private

Definition at line 75 of file ROL_ScaledVector.hpp.

template<typename Real >
using ROL::PrimalScaledVector< Real >::VPrim = PrimalScaledVector<Real>
private

Definition at line 76 of file ROL_ScaledVector.hpp.

template<typename Real >
using ROL::PrimalScaledVector< Real >::VDual = DualScaledVector<Real>
private

Definition at line 77 of file ROL_ScaledVector.hpp.

template<typename Real >
using ROL::PrimalScaledVector< Real >::V = Vector<Real>
private

Definition at line 69 of file ROL_WrappedVector.hpp.

template<typename Real >
using ROL::PrimalScaledVector< Real >::VPrim = PrimalScaledVector<Real>
private

Definition at line 70 of file ROL_WrappedVector.hpp.

template<typename Real >
using ROL::PrimalScaledVector< Real >::VDual = DualScaledVector<Real>
private

Definition at line 71 of file ROL_WrappedVector.hpp.

Constructor & Destructor Documentation

template<typename Real >
ROL::PrimalScaledVector< Real >::PrimalScaledVector ( const Ptr< V > &  vec,
const Ptr< V > &  scaling_vec 
)
inline

Definition at line 97 of file ROL_ScaledVector.hpp.

template<typename Real >
virtual ROL::PrimalScaledVector< Real >::~PrimalScaledVector ( )
inlinevirtual

Definition at line 100 of file ROL_ScaledVector.hpp.

template<typename Real >
virtual ROL::PrimalScaledVector< Real >::~WrappedVector ( )
inlinevirtual

Definition at line 82 of file ROL_WrappedVector.hpp.

Member Function Documentation

template<typename Real >
VectorWorkspace<Real>& ROL::PrimalScaledVector< Real >::getWorkspace ( ) const
inlineprotected
template<typename Real >
void ROL::PrimalScaledVector< Real >::multiply_scaling ( const Ptr< V > &  y) const
inlineprotected
template<typename Real >
virtual Real ROL::PrimalScaledVector< Real >::dot ( const V x) const
inlineoverridevirtual
template<typename Real >
virtual Ptr<V> ROL::PrimalScaledVector< Real >::clone ( void  ) const
inlineoverridevirtual
template<typename Real >
virtual Ptr<V> ROL::PrimalScaledVector< Real >::basis ( const int  i) const
inlineoverridevirtual
template<typename Real >
virtual void const V& ROL::PrimalScaledVector< Real >::dual ( void  ) const
inlineoverridevirtual
template<typename Real >
const Ptr<V>& ROL::PrimalScaledVector< Real >::getScalingVector ( )
inline
template<typename Real >
const Ptr<const V>& ROL::PrimalScaledVector< Real >::getScalingVector ( ) const
inline
template<typename Real >
void ROL::PrimalScaledVector< Real >::setScalingVector ( const Ptr< const V & > &  scaling_vec) const
inline
template<typename Real >
ROL::PrimalScaledVector< Real >::WrappedVector ( const Ptr< V > &  vec)
inline

Definition at line 80 of file ROL_WrappedVector.hpp.

template<typename Real >
virtual void ROL::PrimalScaledVector< Real >::plus ( const V x)
inlineoverridevirtual

Definition at line 84 of file ROL_WrappedVector.hpp.

References ROL::PrimalScaledVector< Real >::vec_.

template<typename Real >
virtual void ROL::PrimalScaledVector< Real >::scale ( const Real  alpha)
inlineoverridevirtual

Definition at line 85 of file ROL_WrappedVector.hpp.

References ROL::PrimalScaledVector< Real >::vec_.

template<typename Real >
virtual Real ROL::PrimalScaledVector< Real >::dot ( const V x) const
inlineoverridevirtual
template<typename Real >
virtual Real ROL::PrimalScaledVector< Real >::norm ( void  ) const
inlineoverridevirtual

Definition at line 89 of file ROL_WrappedVector.hpp.

References ROL::PrimalScaledVector< Real >::dot().

template<typename Real >
virtual Ptr<V> ROL::PrimalScaledVector< Real >::clone ( void  ) const
inlineoverridevirtual
template<typename Real >
virtual void ROL::PrimalScaledVector< Real >::axpy ( const Real  alpha,
const V x 
)
inlineoverridevirtual

Definition at line 95 of file ROL_WrappedVector.hpp.

References ROL::PrimalScaledVector< Real >::vec_.

template<typename Real >
virtual Ptr<V> ROL::PrimalScaledVector< Real >::basis ( const int  i) const
inlineoverridevirtual
template<typename Real >
virtual int ROL::PrimalScaledVector< Real >::dimension ( void  ) const
inlineoverridevirtual

Definition at line 103 of file ROL_WrappedVector.hpp.

References ROL::PrimalScaledVector< Real >::vec_.

template<typename Real >
virtual void ROL::PrimalScaledVector< Real >::set ( const V x)
inlineoverridevirtual

Definition at line 105 of file ROL_WrappedVector.hpp.

References ROL::PrimalScaledVector< Real >::vec_.

template<typename Real >
virtual void const V& ROL::PrimalScaledVector< Real >::dual ( void  ) const
inlineoverridevirtual
template<typename Real >
virtual void ROL::PrimalScaledVector< Real >::applyUnary ( const Elementwise::UnaryFunction< Real > &  f)
inlineoverridevirtual

Definition at line 109 of file ROL_WrappedVector.hpp.

References ROL::PrimalScaledVector< Real >::vec_.

template<typename Real >
virtual void ROL::PrimalScaledVector< Real >::applyBinary ( const Elementwise::BinaryFunction< Real > &  f,
const V x 
)
inlineoverridevirtual

Definition at line 113 of file ROL_WrappedVector.hpp.

References ROL::PrimalScaledVector< Real >::vec_.

template<typename Real >
virtual Real ROL::PrimalScaledVector< Real >::reduce ( const Elementwise::ReductionOp< Real > &  r) const
inlineoverridevirtual

Definition at line 118 of file ROL_WrappedVector.hpp.

References ROL::PrimalScaledVector< Real >::vec_.

template<typename Real >
virtual void ROL::PrimalScaledVector< Real >::setScalar ( const Real  C)
inlineoverridevirtual

Definition at line 122 of file ROL_WrappedVector.hpp.

References ROL::PrimalScaledVector< Real >::vec_.

template<typename Real >
virtual void ROL::PrimalScaledVector< Real >::randomize ( const Real  l = 0.0,
const Real  u = 1.0 
)
inlineoverridevirtual

Definition at line 124 of file ROL_WrappedVector.hpp.

References ROL::PrimalScaledVector< Real >::vec_.

template<typename Real >
virtual void ROL::PrimalScaledVector< Real >::print ( std::ostream &  os)
inlineoverridevirtual

Definition at line 128 of file ROL_WrappedVector.hpp.

References ROL::PrimalScaledVector< Real >::vec_.

template<typename Real >
const Ptr<V>& ROL::PrimalScaledVector< Real >::getVector ( void  )
inline
template<typename Real >
const Ptr<const V>& ROL::PrimalScaledVector< Real >::getVector ( void  ) const
inline

Definition at line 131 of file ROL_WrappedVector.hpp.

References ROL::PrimalScaledVector< Real >::vec_.

template<typename Real >
virtual void ROL::PrimalScaledVector< Real >::setVector ( const Ptr< const V > &  vec) const
inlinevirtual

Definition at line 133 of file ROL_WrappedVector.hpp.

References ROL::PrimalScaledVector< Real >::vec_.

Member Data Documentation

template<typename Real >
Ptv<V> ROL::PrimalScaledVector< Real >::scaling_vec_
mutableprivate
template<typename Real >
VectorWorkspace<Real> ROL::PrimalScaledVector< Real >::workspace_
mutableprivate
template<typename Real >
Elementwise::Multiply<Real> ROL::PrimalScaledVector< Real >::mult_
private
template<typename Real >
Ptr<V> ROL::PrimalScaledVector< Real >::vec_
mutableprivate

The documentation for this class was generated from the following files: