ROL
ROL::InactiveSet_PrimalVector< Real > Class Template Reference

Defines the a Vector which has a diagonally scaled dot product that neglects active set elements Used to simplify Semi-smooth Newton method implementation. More...

#include <ROL_InactiveSetVector.hpp>

Inheritance diagram for ROL::InactiveSet_PrimalVector< Real >:

Public Member Functions

 InactiveSet_PrimalVector (const Ptr< V > &vec, const Ptr< V > &scaling_vec, const Ptr< V > &x, const Ptr< Bnd > &bnd)
virtual ~InactiveSet_PrimalVector ()
Real dot (const V &x) const override
Ptr< Vclone () const override
Ptr< Vbasis (const int i) const override
void const Vdual () const override
void setIterateVector (const Ptr< V > &x) const
const Ptr< V > & getIterateVector ()
const Ptr< const V > & getIterateVector () const
Public Member Functions inherited from ROL::PrimalScaledVector< Real >
 PrimalScaledVector (const Ptr< V > &vec, const Ptr< V > &scaling_vec)
virtual ~PrimalScaledVector ()
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 norm () const override
virtual void axpy (const Real alpha, const V &x) override
virtual int dimension () const override
virtual void set (const V &x) override
virtual Real apply (const V &x) 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

Private Types

using V = Vector<Real>
using Primal = InactiveSet_PrimalVector<Real>
using Dual = InactiveSet_DualVector<Real>
using Bnd = BoundConstraint<Real>

Private Attributes

Ptr< Vx_
Ptr< Bndbnd_

Additional Inherited Members

Protected Member Functions inherited from ROL::PrimalScaledVector< Real >
VectorWorkspace< Real > & getWorkspace () const
void multiply_scaling (const Ptr< V > &y) const

Detailed Description

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

Defines the a Vector which has a diagonally scaled dot product that neglects active set elements Used to simplify Semi-smooth Newton method implementation.

Definition at line 35 of file ROL_InactiveSetVector.hpp.

Member Typedef Documentation

◆ V

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

Definition at line 37 of file ROL_InactiveSetVector.hpp.

◆ Primal

template<typename Real>
using ROL::InactiveSet_PrimalVector< Real >::Primal = InactiveSet_PrimalVector<Real>
private

Definition at line 38 of file ROL_InactiveSetVector.hpp.

◆ Dual

template<typename Real>
using ROL::InactiveSet_PrimalVector< Real >::Dual = InactiveSet_DualVector<Real>
private

Definition at line 39 of file ROL_InactiveSetVector.hpp.

◆ Bnd

template<typename Real>
using ROL::InactiveSet_PrimalVector< Real >::Bnd = BoundConstraint<Real>
private

Definition at line 40 of file ROL_InactiveSetVector.hpp.

Constructor & Destructor Documentation

◆ InactiveSet_PrimalVector()

template<typename Real>
ROL::InactiveSet_PrimalVector< Real >::InactiveSet_PrimalVector ( const Ptr< V > & vec,
const Ptr< V > & scaling_vec,
const Ptr< V > & x,
const Ptr< Bnd > & bnd )
inline

◆ ~InactiveSet_PrimalVector()

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

Definition at line 55 of file ROL_InactiveSetVector.hpp.

Member Function Documentation

◆ dot()

template<typename Real>
Real ROL::InactiveSet_PrimalVector< Real >::dot ( const V & x) const
inlineoverridevirtual

◆ clone()

template<typename Real>
Ptr< V > ROL::InactiveSet_PrimalVector< Real >::clone ( ) const
inlineoverridevirtual

◆ basis()

template<typename Real>
Ptr< V > ROL::InactiveSet_PrimalVector< Real >::basis ( const int i) const
inlineoverridevirtual

◆ dual()

◆ setIterateVector()

template<typename Real>
void ROL::InactiveSet_PrimalVector< Real >::setIterateVector ( const Ptr< V > & x) const
inline

Definition at line 90 of file ROL_InactiveSetVector.hpp.

References x_.

◆ getIterateVector() [1/2]

template<typename Real>
const Ptr< V > & ROL::InactiveSet_PrimalVector< Real >::getIterateVector ( )
inline

Definition at line 91 of file ROL_InactiveSetVector.hpp.

References x_.

◆ getIterateVector() [2/2]

template<typename Real>
const Ptr< const V > & ROL::InactiveSet_PrimalVector< Real >::getIterateVector ( ) const
inline

Definition at line 92 of file ROL_InactiveSetVector.hpp.

References x_.

Member Data Documentation

◆ x_

template<typename Real>
Ptr<V> ROL::InactiveSet_PrimalVector< Real >::x_
mutableprivate

◆ bnd_

template<typename Real>
Ptr<Bnd> ROL::InactiveSet_PrimalVector< Real >::bnd_
private

Definition at line 45 of file ROL_InactiveSetVector.hpp.

Referenced by basis(), clone(), dot(), dual(), and InactiveSet_PrimalVector().


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