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

Performs null-space transformation for explicit linear equality constraints. More...

#include <ROL_ExplicitLinearConstraint.hpp>

Public Member Functions

virtual ~ExplicitLinearConstraint (void)
 
 ExplicitLinearConstraint (const Ptr< Constraint< Real >> &lcon, const Ptr< Objective< Real >> &obj, const Ptr< Vector< Real >> &x, const Ptr< Vector< Real >> &c)
 
 ExplicitLinearConstraint (const Ptr< Constraint< Real >> &lcon, const Ptr< Objective< Real >> &obj, const Ptr< Constraint< Real >> &con, const Ptr< Vector< Real >> &x, const Ptr< Vector< Real >> &c)
 
acon_ clear ()
 
acon_ push_back (makePtr< AffineTransformConstraint< Real >>(con, nsop_, x_, storage_))
 
 ExplicitLinearConstraint (const Ptr< Constraint< Real >> &lcon, const Ptr< Objective< Real >> &obj, const std::vector< Ptr< Constraint< Real >>> &con, const Ptr< Vector< Real >> &x, const Ptr< Vector< Real >> &c)
 
const ROL::Ptr< Constraint
< Real > > 
getExplicitConstraint (void) const
 
const ROL::Ptr< Objective< Real > > getObjective (void) const
 
const ROL::Ptr< Constraint
< Real > > 
getConstraint (const int ind=0) const
 
const ROL::Ptr< Vector< Real > > getFeasibleVector (void) const
 
const ROL::Ptr< Objective< Real > > getTransformedObjective (void) const
 
const ROL::Ptr< Constraint
< Real > > 
getTransformedConstraint (const int ind=0) const
 
virtual void project (Ptr< Vector< Real >> &x, const Ptr< Vector< Real >> &y) const
 

Public Attributes

 storage_ = makePtr<SimController<Real>>()
 
 nsop_ = makePtr<NullSpaceOperator<Real>>(lcon,x_,c)
 
 aobj_ = makePtr<AffineTransformObjective<Real>>(obj,nsop_,x_,storage_)
 

Private Member Functions

void feasible (const Ptr< Vector< Real >> &c)
 

Private Attributes

const Ptr< Constraint< Real > > lcon_
 
const Ptr< Objective< Real > > obj_
 
const Ptr< Vector< Real > > x_
 
std::vector< Ptr< Constraint
< Real > > > 
con_
 
Ptr< SimController< Real > > storage_
 
Ptr< NullSpaceOperator< Real > > nsop_
 
Ptr< AffineTransformObjective
< Real > > 
aobj_
 
std::vector< Ptr
< AffineTransformConstraint
< Real > > > 
acon_
 

Detailed Description

template<class Real>
class ROL::ExplicitLinearConstraint< Real >

Performs null-space transformation for explicit linear equality constraints.


Definition at line 63 of file ROL_ExplicitLinearConstraint.hpp.

Constructor & Destructor Documentation

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

Definition at line 92 of file ROL_ExplicitLinearConstraint.hpp.

template<class Real >
ROL::ExplicitLinearConstraint< Real >::ExplicitLinearConstraint ( const Ptr< Constraint< Real >> &  lcon,
const Ptr< Objective< Real >> &  obj,
const Ptr< Vector< Real >> &  x,
const Ptr< Vector< Real >> &  c 
)
inline
template<class Real >
ROL::ExplicitLinearConstraint< Real >::ExplicitLinearConstraint ( const Ptr< Constraint< Real >> &  lcon,
const Ptr< Objective< Real >> &  obj,
const Ptr< Constraint< Real >> &  con,
const Ptr< Vector< Real >> &  x,
const Ptr< Vector< Real >> &  c 
)
inline

Definition at line 105 of file ROL_ExplicitLinearConstraint.hpp.

template<class Real >
ROL::ExplicitLinearConstraint< Real >::ExplicitLinearConstraint ( const Ptr< Constraint< Real >> &  lcon,
const Ptr< Objective< Real >> &  obj,
const std::vector< Ptr< Constraint< Real >>> &  con,
const Ptr< Vector< Real >> &  x,
const Ptr< Vector< Real >> &  c 
)
inline

Member Function Documentation

template<class Real >
void ROL::ExplicitLinearConstraint< Real >::feasible ( const Ptr< Vector< Real >> &  c)
inlineprivate
template<class Real >
acon_ ROL::ExplicitLinearConstraint< Real >::clear ( )
template<class Real >
acon_ ROL::ExplicitLinearConstraint< Real >::push_back ( makePtr< AffineTransformConstraint< Real >>  con, nsop_, x_, storage_)
template<class Real >
const ROL::Ptr<Constraint<Real> > ROL::ExplicitLinearConstraint< Real >::getExplicitConstraint ( void  ) const
inline
template<class Real >
const ROL::Ptr<Objective<Real> > ROL::ExplicitLinearConstraint< Real >::getObjective ( void  ) const
inline
template<class Real >
const ROL::Ptr<Constraint<Real> > ROL::ExplicitLinearConstraint< Real >::getConstraint ( const int  ind = 0) const
inline
template<class Real >
const ROL::Ptr<Vector<Real> > ROL::ExplicitLinearConstraint< Real >::getFeasibleVector ( void  ) const
inline
template<class Real >
const ROL::Ptr<Objective<Real> > ROL::ExplicitLinearConstraint< Real >::getTransformedObjective ( void  ) const
inline
template<class Real >
const ROL::Ptr<Constraint<Real> > ROL::ExplicitLinearConstraint< Real >::getTransformedConstraint ( const int  ind = 0) const
inline
template<class Real >
virtual void ROL::ExplicitLinearConstraint< Real >::project ( Ptr< Vector< Real >> &  x,
const Ptr< Vector< Real >> &  y 
) const
inlinevirtual

Definition at line 166 of file ROL_ExplicitLinearConstraint.hpp.

Member Data Documentation

template<class Real >
const Ptr<Constraint<Real> > ROL::ExplicitLinearConstraint< Real >::lcon_
private
template<class Real >
const Ptr<Objective<Real> > ROL::ExplicitLinearConstraint< Real >::obj_
private
template<class Real >
const Ptr<Vector<Real> > ROL::ExplicitLinearConstraint< Real >::x_
private
template<class Real >
std::vector<Ptr<Constraint<Real> > > ROL::ExplicitLinearConstraint< Real >::con_
private
template<class Real >
Ptr<SimController<Real> > ROL::ExplicitLinearConstraint< Real >::storage_
private
template<class Real >
Ptr<NullSpaceOperator<Real> > ROL::ExplicitLinearConstraint< Real >::nsop_
private
template<class Real >
Ptr<AffineTransformObjective<Real> > ROL::ExplicitLinearConstraint< Real >::aobj_
private
template<class Real >
std::vector<Ptr<AffineTransformConstraint<Real> > > ROL::ExplicitLinearConstraint< Real >::acon_
private
template<class Real >
ROL::ExplicitLinearConstraint< Real >::storage_ = makePtr<SimController<Real>>()

Definition at line 112 of file ROL_ExplicitLinearConstraint.hpp.

template<class Real >
ROL::ExplicitLinearConstraint< Real >::nsop_ = makePtr<NullSpaceOperator<Real>>(lcon,x_,c)

Definition at line 113 of file ROL_ExplicitLinearConstraint.hpp.

template<class Real >
ROL::ExplicitLinearConstraint< Real >::aobj_ = makePtr<AffineTransformObjective<Real>>(obj,nsop_,x_,storage_)

Definition at line 114 of file ROL_ExplicitLinearConstraint.hpp.


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