44 #ifndef ROL_BOUND_CONSTRAINT_H 45 #define ROL_BOUND_CONSTRAINT_H 92 catch(std::exception &e) {
368 ROL::Ptr<Vector<Real> > tmp = v.
clone();
385 ROL::Ptr<Vector<Real> > tmp = v.
clone();
403 ROL::Ptr<Vector<Real> > tmp = v.
clone();
421 ROL::Ptr<Vector<Real> > tmp = v.
clone();
438 ROL::Ptr<Vector<Real> > tmp = v.
clone();
456 ROL::Ptr<Vector<Real> > tmp = v.
clone();
471 ROL::Ptr<Vector<Real> > tmp = g.
clone();
bool Uactivated_
Flag that determines whether or not the upper bounds are being used.
Ptr< Vector< Real > > upper_
BoundConstraint(const Vector< Real > &x)
virtual void projectInterior(Vector< Real > &x)
Project optimization variables into the interior of the feasible set.
virtual ROL::Ptr< Vector > clone() const =0
Clone to make a new (uninitialized) vector.
virtual const ROL::Ptr< const Vector< Real > > getLowerBound(void) const
Return the ref count pointer to the lower bound vector.
virtual void plus(const Vector &x)=0
Compute , where .
virtual void axpy(const Real alpha, const Vector &x)
Compute where .
void activateLower(void)
Turn on lower bound.
void activate(void)
Turn on bounds.
Contains definitions of custom data types in ROL.
virtual void pruneLowerActive(Vector< Real > &v, const Vector< Real > &g, const Vector< Real > &x, Real eps=0)
Set variables to zero if they correspond to the -binding set.
void pruneInactive(Vector< Real > &v, const Vector< Real > &x, Real eps=0)
Set variables to zero if they correspond to the -inactive set.
virtual void update(const Vector< Real > &x, bool flag=true, int iter=-1)
Update bounds.
bool isActivated(void) const
Check if bounds are on.
void pruneUpperInactive(Vector< Real > &v, const Vector< Real > &x, Real eps=0)
Set variables to zero if they correspond to the -inactive set.
void pruneActive(Vector< Real > &v, const Vector< Real > &x, Real eps=0)
Set variables to zero if they correspond to the -active set.
bool Lactivated_
Flag that determines whether or not the lower bounds are being used.
bool isLowerActivated(void) const
Check if lower bound are on.
Defines the linear algebra or vector space interface.
virtual void pruneUpperActive(Vector< Real > &v, const Vector< Real > &g, const Vector< Real > &x, Real eps=0)
Set variables to zero if they correspond to the upper -binding set.
virtual void pruneLowerActive(Vector< Real > &v, const Vector< Real > &x, Real eps=0)
Set variables to zero if they correspond to the lower -active set.
void pruneActive(Vector< Real > &v, const Vector< Real > &g, const Vector< Real > &x, Real eps=0)
Set variables to zero if they correspond to the -binding set.
void activateUpper(void)
Turn on upper bound.
Ptr< Vector< Real > > lower_
void deactivateUpper(void)
Turn off upper bound.
virtual void pruneUpperActive(Vector< Real > &v, const Vector< Real > &x, Real eps=0)
Set variables to zero if they correspond to the upper -active set.
void pruneLowerInactive(Vector< Real > &v, const Vector< Real > &x, Real eps=0)
Set variables to zero if they correspond to the -inactive set.
void computeProjectedStep(Vector< Real > &v, const Vector< Real > &x)
Compute projected step.
void deactivateLower(void)
Turn off lower bound.
void pruneLowerInactive(Vector< Real > &v, const Vector< Real > &g, const Vector< Real > &x, Real eps=0)
Set variables to zero if they correspond to the -nonbinding set.
virtual const ROL::Ptr< const Vector< Real > > getUpperBound(void) const
Return the ref count pointer to the upper bound vector.
Provides the interface to apply upper and lower bound constraints.
virtual ~BoundConstraint()
void computeProjectedGradient(Vector< Real > &g, const Vector< Real > &x)
Compute projected gradient.
bool isUpperActivated(void) const
Check if upper bound are on.
void pruneUpperInactive(Vector< Real > &v, const Vector< Real > &g, const Vector< Real > &x, Real eps=0)
Set variables to zero if they correspond to the -nonbinding set.
void pruneInactive(Vector< Real > &v, const Vector< Real > &g, const Vector< Real > &x, Real eps=0)
Set variables to zero if they correspond to the -nonbinding set.
void deactivate(void)
Turn off bounds.
virtual bool isFeasible(const Vector< Real > &v)
Check if the vector, v, is feasible.
virtual void project(Vector< Real > &x)
Project optimization variables onto the bounds.