10#ifndef ROL_BOUND_CONSTRAINT_SIMOPT_H
11#define ROL_BOUND_CONSTRAINT_SIMOPT_H
53 if (
bnd1_->isActivated() ||
bnd2_->isActivated() )
70 if (
bnd1_->isActivated() ||
bnd2_->isActivated() )
89 if (
bnd1_->isActivated() ||
bnd2_->isActivated() )
204 const Ptr<const Vector<Real>> l1 =
bnd1_->getLowerBound();
205 const Ptr<const Vector<Real>> l2 =
bnd2_->getLowerBound();
206 return makePtr<Vector_SimOpt<Real>>( constPtrCast<Vector<Real>>(l1),
211 const Ptr<const Vector<Real>> u1 =
bnd1_->getUpperBound();
212 const Ptr<const Vector<Real>> u2 =
bnd2_->getUpperBound();
213 return makePtr<Vector_SimOpt<Real>>( constPtrCast<Vector<Real>>(u1),
Contains definitions of custom data types in ROL.
const Ptr< const Vector< Real > > getLowerBound(void) const
Return the ref count pointer to the lower bound vector.
bool isFeasible(const Vector< Real > &v)
Check if the vector, v, is feasible.
BoundConstraint_SimOpt(const Ptr< BoundConstraint< Real > > &bnd, bool optBnd=true)
Constructor for single bound constraint.
void pruneUpperActive(Vector< Real > &v, const Vector< Real > &x, Real eps=Real(0))
Set variables to zero if they correspond to the upper -active set.
void pruneActive(Vector< Real > &v, const Vector< Real > &x, Real eps=Real(0))
Set variables to zero if they correspond to the -active set.
BoundConstraint_SimOpt(const Ptr< BoundConstraint< Real > > &bnd, const Vector< Real > &x, bool optBnd=true)
Constructor for single bound constraint.
const Ptr< BoundConstraint< Real > > bnd1_
void project(Vector< Real > &x)
Project optimization variables onto the bounds.
void pruneLowerActive(Vector< Real > &v, const Vector< Real > &x, Real eps=Real(0))
Set variables to zero if they correspond to the lower -active set.
void applyInverseScalingFunction(Vector< Real > &dv, const Vector< Real > &v, const Vector< Real > &x, const Vector< Real > &g) const
Apply inverse scaling function.
void projectInterior(Vector< Real > &x)
Project optimization variables into the interior of the feasible set.
const Ptr< BoundConstraint< Real > > bnd2_
const Ptr< const Vector< Real > > getUpperBound(void) const
Return the ref count pointer to the upper bound vector.
void pruneUpperActive(Vector< Real > &v, const Vector< Real > &g, const Vector< Real > &x, Real xeps=Real(0), Real geps=Real(0))
Set variables to zero if they correspond to the upper -binding set.
void applyScalingFunctionJacobian(Vector< Real > &dv, const Vector< Real > &v, const Vector< Real > &x, const Vector< Real > &g) const
Apply scaling function Jacobian.
void pruneLowerActive(Vector< Real > &v, const Vector< Real > &g, const Vector< Real > &x, Real xeps=Real(0), Real geps=Real(0))
Set variables to zero if they correspond to the lower -binding set.
void pruneActive(Vector< Real > &v, const Vector< Real > &g, const Vector< Real > &x, Real xeps=Real(0), Real geps=Real(0))
Set variables to zero if they correspond to the -binding set.
~BoundConstraint_SimOpt()
BoundConstraint_SimOpt(const Ptr< BoundConstraint< Real > > &bnd1, const Ptr< BoundConstraint< Real > > &bnd2)
Default constructor.
Provides the interface to apply upper and lower bound constraints.
void deactivate(void)
Turn off bounds.
void activate(void)
Turn on bounds.
Defines the linear algebra or vector space interface for simulation-based optimization.
ROL::Ptr< const Vector< Real > > get_2() const
ROL::Ptr< const Vector< Real > > get_1() const
Defines the linear algebra or vector space interface.