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

Provides a wrapper for multiple constraints. More...

#include <ROL_NewConstraintManager.hpp>

Public Member Functions

virtual ~NewConstraintManager (void)
 
 NewConstraintManager (const std::unordered_map< std::string, ConstraintData< Real > > &con, const Ptr< Vector< Real > > &xprim, const Ptr< Vector< Real > > &xdual, const Ptr< BoundConstraint< Real > > &bnd=nullPtr)
 
 NewConstraintManager (const std::unordered_map< std::string, ConstraintData< Real > > &con, const std::unordered_map< std::string, ConstraintData< Real > > &linear_con, const Ptr< Vector< Real > > &xprim, const Ptr< Vector< Real > > &xdual, const Ptr< BoundConstraint< Real > > &bnd=nullPtr)
 
const Ptr< Constraint< Real > > getConstraint (void) const
 
const Ptr< Vector< Real > > getMultiplier (void) const
 
const Ptr< Vector< Real > > getResidual (void) const
 
const Ptr< Constraint< Real > > getLinearConstraint (void) const
 
const Ptr< Vector< Real > > getLinearMultiplier (void) const
 
const Ptr< Vector< Real > > getLinearResidual (void) const
 
const Ptr< Vector< Real > > getOptVector (void) const
 
const Ptr< Vector< Real > > getDualOptVector (void) const
 
const Ptr< BoundConstraint< Real > > getBoundConstraint (void) const
 
bool isNull (void) const
 
bool hasInequality (void) const
 
void resetSlackVariables (void)
 

Private Member Functions

void initializeSlackVariable (const Ptr< Constraint< Real > > &con, const Ptr< BoundConstraint< Real > > &cbnd, const Ptr< Vector< Real > > &s, const Ptr< Vector< Real > > &x) const
 
void initialize (const std::unordered_map< std::string, ConstraintData< Real > > &input_con, const Ptr< Vector< Real > > &xprim, const Ptr< Vector< Real > > &xdual, const Ptr< BoundConstraint< Real > > &bnd)
 
void initialize (const std::unordered_map< std::string, ConstraintData< Real > > &input_con, const std::unordered_map< std::string, ConstraintData< Real > > &input_lcon, const Ptr< Vector< Real > > &xprim, const Ptr< Vector< Real > > &xdual, const Ptr< BoundConstraint< Real > > &bnd)
 

Private Attributes

Ptr< Constraint< Real > > con_
 
Ptr< Vector< Real > > mul_
 
Ptr< Vector< Real > > res_
 
Ptr< Constraint< Real > > linear_con_
 
Ptr< Vector< Real > > linear_mul_
 
Ptr< Vector< Real > > linear_res_
 
Ptr< Vector< Real > > xprim_
 
Ptr< Vector< Real > > xdual_
 
Ptr< BoundConstraint< Real > > bnd_
 
std::vector< Ptr< Constraint< Real > > > cvec_
 
std::vector< Ptr< Vector< Real > > > lvec_
 
std::vector< Ptr< Vector< Real > > > rvec_
 
std::vector< Ptr< Constraint< Real > > > lcvec_
 
std::vector< Ptr< Vector< Real > > > llvec_
 
std::vector< Ptr< Vector< Real > > > lrvec_
 
std::vector< Ptr< Vector< Real > > > psvec_
 
std::vector< Ptr< Vector< Real > > > dsvec_
 
std::vector< Ptr< BoundConstraint< Real > > > sbnd_
 
std::vector< bool > isInequality_
 
std::vector< bool > isLinearInequality_
 
bool isNull_
 
bool hasInequality_
 

Detailed Description

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

Provides a wrapper for multiple constraints.


Definition at line 76 of file ROL_NewConstraintManager.hpp.

Constructor & Destructor Documentation

◆ ~NewConstraintManager()

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

Definition at line 120 of file ROL_NewConstraintManager.hpp.

◆ NewConstraintManager() [1/2]

template<typename Real >
ROL::NewConstraintManager< Real >::NewConstraintManager ( const std::unordered_map< std::string, ConstraintData< Real > > &  con,
const Ptr< Vector< Real > > &  xprim,
const Ptr< Vector< Real > > &  xdual,
const Ptr< BoundConstraint< Real > > &  bnd = nullPtr 
)

◆ NewConstraintManager() [2/2]

template<typename Real >
ROL::NewConstraintManager< Real >::NewConstraintManager ( const std::unordered_map< std::string, ConstraintData< Real > > &  con,
const std::unordered_map< std::string, ConstraintData< Real > > &  linear_con,
const Ptr< Vector< Real > > &  xprim,
const Ptr< Vector< Real > > &  xdual,
const Ptr< BoundConstraint< Real > > &  bnd = nullPtr 
)

Member Function Documentation

◆ initializeSlackVariable()

template<typename Real >
void ROL::NewConstraintManager< Real >::initializeSlackVariable ( const Ptr< Constraint< Real > > &  con,
const Ptr< BoundConstraint< Real > > &  cbnd,
const Ptr< Vector< Real > > &  s,
const Ptr< Vector< Real > > &  x 
) const
private

Definition at line 50 of file ROL_NewConstraintManager_Def.hpp.

◆ initialize() [1/2]

template<typename Real >
void ROL::NewConstraintManager< Real >::initialize ( const std::unordered_map< std::string, ConstraintData< Real > > &  input_con,
const Ptr< Vector< Real > > &  xprim,
const Ptr< Vector< Real > > &  xdual,
const Ptr< BoundConstraint< Real > > &  bnd 
)
private

◆ initialize() [2/2]

template<typename Real >
void ROL::NewConstraintManager< Real >::initialize ( const std::unordered_map< std::string, ConstraintData< Real > > &  input_con,
const std::unordered_map< std::string, ConstraintData< Real > > &  input_lcon,
const Ptr< Vector< Real > > &  xprim,
const Ptr< Vector< Real > > &  xdual,
const Ptr< BoundConstraint< Real > > &  bnd 
)
private

Definition at line 148 of file ROL_NewConstraintManager_Def.hpp.

◆ getConstraint()

template<typename Real >
const Ptr< Constraint< Real > > ROL::NewConstraintManager< Real >::getConstraint ( void  ) const

Definition at line 302 of file ROL_NewConstraintManager_Def.hpp.

◆ getMultiplier()

template<typename Real >
const Ptr< Vector< Real > > ROL::NewConstraintManager< Real >::getMultiplier ( void  ) const

Definition at line 307 of file ROL_NewConstraintManager_Def.hpp.

◆ getResidual()

template<typename Real >
const Ptr< Vector< Real > > ROL::NewConstraintManager< Real >::getResidual ( void  ) const

Definition at line 312 of file ROL_NewConstraintManager_Def.hpp.

◆ getLinearConstraint()

template<typename Real >
const Ptr< Constraint< Real > > ROL::NewConstraintManager< Real >::getLinearConstraint ( void  ) const

Definition at line 317 of file ROL_NewConstraintManager_Def.hpp.

◆ getLinearMultiplier()

template<typename Real >
const Ptr< Vector< Real > > ROL::NewConstraintManager< Real >::getLinearMultiplier ( void  ) const

Definition at line 322 of file ROL_NewConstraintManager_Def.hpp.

◆ getLinearResidual()

template<typename Real >
const Ptr< Vector< Real > > ROL::NewConstraintManager< Real >::getLinearResidual ( void  ) const

Definition at line 327 of file ROL_NewConstraintManager_Def.hpp.

◆ getOptVector()

template<typename Real >
const Ptr< Vector< Real > > ROL::NewConstraintManager< Real >::getOptVector ( void  ) const

Definition at line 332 of file ROL_NewConstraintManager_Def.hpp.

◆ getDualOptVector()

template<typename Real >
const Ptr< Vector< Real > > ROL::NewConstraintManager< Real >::getDualOptVector ( void  ) const

Definition at line 337 of file ROL_NewConstraintManager_Def.hpp.

◆ getBoundConstraint()

template<typename Real >
const Ptr< BoundConstraint< Real > > ROL::NewConstraintManager< Real >::getBoundConstraint ( void  ) const

Definition at line 342 of file ROL_NewConstraintManager_Def.hpp.

◆ isNull()

template<typename Real >
bool ROL::NewConstraintManager< Real >::isNull ( void  ) const

Definition at line 347 of file ROL_NewConstraintManager_Def.hpp.

◆ hasInequality()

template<typename Real >
bool ROL::NewConstraintManager< Real >::hasInequality ( void  ) const

Definition at line 352 of file ROL_NewConstraintManager_Def.hpp.

◆ resetSlackVariables()

template<typename Real >
void ROL::NewConstraintManager< Real >::resetSlackVariables ( void  )

Definition at line 357 of file ROL_NewConstraintManager_Def.hpp.

Member Data Documentation

◆ con_

template<typename Real >
Ptr<Constraint<Real> > ROL::NewConstraintManager< Real >::con_
private

Definition at line 78 of file ROL_NewConstraintManager.hpp.

◆ mul_

template<typename Real >
Ptr<Vector<Real> > ROL::NewConstraintManager< Real >::mul_
private

Definition at line 79 of file ROL_NewConstraintManager.hpp.

◆ res_

template<typename Real >
Ptr<Vector<Real> > ROL::NewConstraintManager< Real >::res_
private

Definition at line 80 of file ROL_NewConstraintManager.hpp.

◆ linear_con_

template<typename Real >
Ptr<Constraint<Real> > ROL::NewConstraintManager< Real >::linear_con_
private

Definition at line 81 of file ROL_NewConstraintManager.hpp.

◆ linear_mul_

template<typename Real >
Ptr<Vector<Real> > ROL::NewConstraintManager< Real >::linear_mul_
private

Definition at line 82 of file ROL_NewConstraintManager.hpp.

◆ linear_res_

template<typename Real >
Ptr<Vector<Real> > ROL::NewConstraintManager< Real >::linear_res_
private

Definition at line 83 of file ROL_NewConstraintManager.hpp.

◆ xprim_

template<typename Real >
Ptr<Vector<Real> > ROL::NewConstraintManager< Real >::xprim_
private

Definition at line 84 of file ROL_NewConstraintManager.hpp.

◆ xdual_

template<typename Real >
Ptr<Vector<Real> > ROL::NewConstraintManager< Real >::xdual_
private

Definition at line 85 of file ROL_NewConstraintManager.hpp.

◆ bnd_

template<typename Real >
Ptr<BoundConstraint<Real> > ROL::NewConstraintManager< Real >::bnd_
private

Definition at line 86 of file ROL_NewConstraintManager.hpp.

◆ cvec_

template<typename Real >
std::vector<Ptr<Constraint<Real> > > ROL::NewConstraintManager< Real >::cvec_
private

Definition at line 88 of file ROL_NewConstraintManager.hpp.

◆ lvec_

template<typename Real >
std::vector<Ptr<Vector<Real> > > ROL::NewConstraintManager< Real >::lvec_
private

Definition at line 89 of file ROL_NewConstraintManager.hpp.

◆ rvec_

template<typename Real >
std::vector<Ptr<Vector<Real> > > ROL::NewConstraintManager< Real >::rvec_
private

Definition at line 90 of file ROL_NewConstraintManager.hpp.

◆ lcvec_

template<typename Real >
std::vector<Ptr<Constraint<Real> > > ROL::NewConstraintManager< Real >::lcvec_
private

Definition at line 91 of file ROL_NewConstraintManager.hpp.

◆ llvec_

template<typename Real >
std::vector<Ptr<Vector<Real> > > ROL::NewConstraintManager< Real >::llvec_
private

Definition at line 92 of file ROL_NewConstraintManager.hpp.

◆ lrvec_

template<typename Real >
std::vector<Ptr<Vector<Real> > > ROL::NewConstraintManager< Real >::lrvec_
private

Definition at line 93 of file ROL_NewConstraintManager.hpp.

◆ psvec_

template<typename Real >
std::vector<Ptr<Vector<Real> > > ROL::NewConstraintManager< Real >::psvec_
private

Definition at line 94 of file ROL_NewConstraintManager.hpp.

◆ dsvec_

template<typename Real >
std::vector<Ptr<Vector<Real> > > ROL::NewConstraintManager< Real >::dsvec_
private

Definition at line 95 of file ROL_NewConstraintManager.hpp.

◆ sbnd_

template<typename Real >
std::vector<Ptr<BoundConstraint<Real> > > ROL::NewConstraintManager< Real >::sbnd_
private

Definition at line 96 of file ROL_NewConstraintManager.hpp.

◆ isInequality_

template<typename Real >
std::vector<bool> ROL::NewConstraintManager< Real >::isInequality_
private

Definition at line 98 of file ROL_NewConstraintManager.hpp.

◆ isLinearInequality_

template<typename Real >
std::vector<bool> ROL::NewConstraintManager< Real >::isLinearInequality_
private

Definition at line 98 of file ROL_NewConstraintManager.hpp.

◆ isNull_

template<typename Real >
bool ROL::NewConstraintManager< Real >::isNull_
private

Definition at line 100 of file ROL_NewConstraintManager.hpp.

◆ hasInequality_

template<typename Real >
bool ROL::NewConstraintManager< Real >::hasInequality_
private

Definition at line 101 of file ROL_NewConstraintManager.hpp.


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