ROL
ROL::ConstraintManager< Real > Class Template Reference

Provides a wrapper for multiple constraints. More...

#include <ROL_ConstraintManager.hpp>

Public Member Functions

virtual ~ConstraintManager (void)
 ConstraintManager (const std::vector< ROL::Ptr< Constraint< Real > > > &cvec, const std::vector< ROL::Ptr< Vector< Real > > > &lvec, const std::vector< ROL::Ptr< BoundConstraint< Real > > > &bvec, const ROL::Ptr< Vector< Real > > &x, const ROL::Ptr< BoundConstraint< Real > > &bnd=ROL::nullPtr)
 ConstraintManager (const std::vector< ROL::Ptr< Constraint< Real > > > &cvec, const std::vector< ROL::Ptr< Vector< Real > > > &lvec, const ROL::Ptr< Vector< Real > > &x, const ROL::Ptr< BoundConstraint< Real > > &bnd=ROL::nullPtr)
 ConstraintManager (const ROL::Ptr< Constraint< Real > > &con, const ROL::Ptr< Vector< Real > > &l, const ROL::Ptr< BoundConstraint< Real > > &cbnd, const ROL::Ptr< Vector< Real > > &x, const ROL::Ptr< BoundConstraint< Real > > &bnd=ROL::nullPtr)
 ConstraintManager (const ROL::Ptr< Constraint< Real > > &con, const ROL::Ptr< Vector< Real > > &l, const ROL::Ptr< Vector< Real > > &x, const ROL::Ptr< BoundConstraint< Real > > &bnd=ROL::nullPtr)
const ROL::Ptr< Constraint< Real > > getConstraint (void) const
const ROL::Ptr< Vector< Real > > getMultiplier (void) const
const ROL::Ptr< Vector< Real > > getOptVector (void) const
const ROL::Ptr< BoundConstraint< Real > > getBoundConstraint (void) const
bool isNull (void) const
bool hasInequality (void) const
void resetSlackVariables (void)

Private Member Functions

void initializeSlackVariable (const ROL::Ptr< Constraint< Real > > &con, const ROL::Ptr< BoundConstraint< Real > > &cbnd, const ROL::Ptr< Vector< Real > > &s, const ROL::Ptr< Vector< Real > > &x) const
void initialize (const std::vector< ROL::Ptr< Constraint< Real > > > &cvec, const std::vector< ROL::Ptr< Vector< Real > > > &lvec, const std::vector< ROL::Ptr< BoundConstraint< Real > > > &bvec, const ROL::Ptr< Vector< Real > > &x, const ROL::Ptr< BoundConstraint< Real > > &bnd)

Private Attributes

ROL::Ptr< Constraint< Real > > con_
ROL::Ptr< Vector< Real > > l_
ROL::Ptr< Vector< Real > > x_
ROL::Ptr< BoundConstraint< Real > > bnd_
std::vector< ROL::Ptr< Constraint< Real > > > cvec_
std::vector< ROL::Ptr< Vector< Real > > > lvec_
std::vector< ROL::Ptr< Vector< Real > > > svec_
std::vector< ROL::Ptr< BoundConstraint< Real > > > sbnd_
std::vector< bool > isInequality_
bool isNull_
bool hasInequality_

Detailed Description

template<class Real>
class ROL::ConstraintManager< Real >

Provides a wrapper for multiple constraints.


Definition at line 27 of file ROL_ConstraintManager.hpp.

Constructor & Destructor Documentation

◆ ~ConstraintManager()

template<class Real>
virtual ROL::ConstraintManager< Real >::~ConstraintManager ( void )
inlinevirtual

Definition at line 140 of file ROL_ConstraintManager.hpp.

◆ ConstraintManager() [1/4]

template<class Real>
ROL::ConstraintManager< Real >::ConstraintManager ( const std::vector< ROL::Ptr< Constraint< Real > > > & cvec,
const std::vector< ROL::Ptr< Vector< Real > > > & lvec,
const std::vector< ROL::Ptr< BoundConstraint< Real > > > & bvec,
const ROL::Ptr< Vector< Real > > & x,
const ROL::Ptr< BoundConstraint< Real > > & bnd = ROL::nullPtr )
inline

Definition at line 142 of file ROL_ConstraintManager.hpp.

References hasInequality_, initialize(), and isNull_.

◆ ConstraintManager() [2/4]

template<class Real>
ROL::ConstraintManager< Real >::ConstraintManager ( const std::vector< ROL::Ptr< Constraint< Real > > > & cvec,
const std::vector< ROL::Ptr< Vector< Real > > > & lvec,
const ROL::Ptr< Vector< Real > > & x,
const ROL::Ptr< BoundConstraint< Real > > & bnd = ROL::nullPtr )
inline

Definition at line 151 of file ROL_ConstraintManager.hpp.

References hasInequality_, initialize(), and isNull_.

◆ ConstraintManager() [3/4]

template<class Real>
ROL::ConstraintManager< Real >::ConstraintManager ( const ROL::Ptr< Constraint< Real > > & con,
const ROL::Ptr< Vector< Real > > & l,
const ROL::Ptr< BoundConstraint< Real > > & cbnd,
const ROL::Ptr< Vector< Real > > & x,
const ROL::Ptr< BoundConstraint< Real > > & bnd = ROL::nullPtr )
inline

Definition at line 160 of file ROL_ConstraintManager.hpp.

References hasInequality_, initialize(), and isNull_.

◆ ConstraintManager() [4/4]

template<class Real>
ROL::ConstraintManager< Real >::ConstraintManager ( const ROL::Ptr< Constraint< Real > > & con,
const ROL::Ptr< Vector< Real > > & l,
const ROL::Ptr< Vector< Real > > & x,
const ROL::Ptr< BoundConstraint< Real > > & bnd = ROL::nullPtr )
inline

Definition at line 172 of file ROL_ConstraintManager.hpp.

References hasInequality_, initialize(), and isNull_.

Member Function Documentation

◆ initializeSlackVariable()

template<class Real>
void ROL::ConstraintManager< Real >::initializeSlackVariable ( const ROL::Ptr< Constraint< Real > > & con,
const ROL::Ptr< BoundConstraint< Real > > & cbnd,
const ROL::Ptr< Vector< Real > > & s,
const ROL::Ptr< Vector< Real > > & x ) const
inlineprivate

Definition at line 44 of file ROL_ConstraintManager.hpp.

References ROL::ROL_EPSILON().

Referenced by initialize(), and resetSlackVariables().

◆ initialize()

template<class Real>
void ROL::ConstraintManager< Real >::initialize ( const std::vector< ROL::Ptr< Constraint< Real > > > & cvec,
const std::vector< ROL::Ptr< Vector< Real > > > & lvec,
const std::vector< ROL::Ptr< BoundConstraint< Real > > > & bvec,
const ROL::Ptr< Vector< Real > > & x,
const ROL::Ptr< BoundConstraint< Real > > & bnd )
inlineprivate

◆ getConstraint()

template<class Real>
const ROL::Ptr< Constraint< Real > > ROL::ConstraintManager< Real >::getConstraint ( void ) const
inline

Definition at line 183 of file ROL_ConstraintManager.hpp.

References con_.

◆ getMultiplier()

template<class Real>
const ROL::Ptr< Vector< Real > > ROL::ConstraintManager< Real >::getMultiplier ( void ) const
inline

Definition at line 187 of file ROL_ConstraintManager.hpp.

References l_.

◆ getOptVector()

template<class Real>
const ROL::Ptr< Vector< Real > > ROL::ConstraintManager< Real >::getOptVector ( void ) const
inline

Definition at line 191 of file ROL_ConstraintManager.hpp.

References x_.

◆ getBoundConstraint()

template<class Real>
const ROL::Ptr< BoundConstraint< Real > > ROL::ConstraintManager< Real >::getBoundConstraint ( void ) const
inline

Definition at line 195 of file ROL_ConstraintManager.hpp.

References bnd_.

◆ isNull()

template<class Real>
bool ROL::ConstraintManager< Real >::isNull ( void ) const
inline

Definition at line 199 of file ROL_ConstraintManager.hpp.

References isNull_.

◆ hasInequality()

template<class Real>
bool ROL::ConstraintManager< Real >::hasInequality ( void ) const
inline

Definition at line 203 of file ROL_ConstraintManager.hpp.

References hasInequality_.

◆ resetSlackVariables()

template<class Real>
void ROL::ConstraintManager< Real >::resetSlackVariables ( void )
inline

Member Data Documentation

◆ con_

template<class Real>
ROL::Ptr<Constraint<Real> > ROL::ConstraintManager< Real >::con_
private

Definition at line 29 of file ROL_ConstraintManager.hpp.

Referenced by getConstraint(), and initialize().

◆ l_

template<class Real>
ROL::Ptr<Vector<Real> > ROL::ConstraintManager< Real >::l_
private

Definition at line 30 of file ROL_ConstraintManager.hpp.

Referenced by getMultiplier(), and initialize().

◆ x_

template<class Real>
ROL::Ptr<Vector<Real> > ROL::ConstraintManager< Real >::x_
private

Definition at line 31 of file ROL_ConstraintManager.hpp.

Referenced by getOptVector(), and initialize().

◆ bnd_

template<class Real>
ROL::Ptr<BoundConstraint<Real> > ROL::ConstraintManager< Real >::bnd_
private

Definition at line 32 of file ROL_ConstraintManager.hpp.

Referenced by getBoundConstraint(), and initialize().

◆ cvec_

template<class Real>
std::vector<ROL::Ptr<Constraint<Real> > > ROL::ConstraintManager< Real >::cvec_
private

Definition at line 34 of file ROL_ConstraintManager.hpp.

Referenced by initialize(), and resetSlackVariables().

◆ lvec_

template<class Real>
std::vector<ROL::Ptr<Vector<Real> > > ROL::ConstraintManager< Real >::lvec_
private

Definition at line 35 of file ROL_ConstraintManager.hpp.

Referenced by initialize().

◆ svec_

template<class Real>
std::vector<ROL::Ptr<Vector<Real> > > ROL::ConstraintManager< Real >::svec_
private

Definition at line 36 of file ROL_ConstraintManager.hpp.

Referenced by initialize(), and resetSlackVariables().

◆ sbnd_

template<class Real>
std::vector<ROL::Ptr<BoundConstraint<Real> > > ROL::ConstraintManager< Real >::sbnd_
private

Definition at line 37 of file ROL_ConstraintManager.hpp.

Referenced by initialize(), and resetSlackVariables().

◆ isInequality_

template<class Real>
std::vector<bool> ROL::ConstraintManager< Real >::isInequality_
private

Definition at line 39 of file ROL_ConstraintManager.hpp.

Referenced by initialize(), and resetSlackVariables().

◆ isNull_

template<class Real>
bool ROL::ConstraintManager< Real >::isNull_
private

◆ hasInequality_

template<class Real>
bool ROL::ConstraintManager< Real >::hasInequality_
private

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