|
ROL
|
#include <ROL_StdBoundConstraint.hpp>
Inheritance diagram for ROL::StdBoundConstraint< Real >:Public Member Functions | |
| StdBoundConstraint (std::vector< Real > &x, bool isLower=false, Real scale=Real(1), const Real feasTol=std::sqrt(ROL_EPSILON< Real >())) | |
| StdBoundConstraint (std::vector< Real > &l, std::vector< Real > &u, Real scale=Real(1), const Real feasTol=std::sqrt(ROL_EPSILON< Real >())) | |
| void | project (Vector< Real > &x) override |
| void | projectInterior (Vector< Real > &x) override |
| void | pruneUpperActive (Vector< Real > &v, const Vector< Real > &x, Real eps=Real(0)) override |
| void | pruneUpperActive (Vector< Real > &v, const Vector< Real > &g, const Vector< Real > &x, Real xeps=Real(0), Real geps=Real(0)) override |
| void | pruneLowerActive (Vector< Real > &v, const Vector< Real > &g, const Vector< Real > &x, Real xeps=Real(0), Real geps=Real(0)) override |
| void | pruneLowerActive (Vector< Real > &v, const Vector< Real > &x, Real eps=Real(0)) override |
| bool | isFeasible (const Vector< Real > &v) override |
| void | applyInverseScalingFunction (Vector< Real > &dv, const Vector< Real > &v, const Vector< Real > &x, const Vector< Real > &g) const override |
| void | applyScalingFunctionJacobian (Vector< Real > &dv, const Vector< Real > &v, const Vector< Real > &x, const Vector< Real > &g) const override |
Public Member Functions inherited from ROL::ROL::BoundConstraint< Real > | |
| virtual | ~BoundConstraint () |
| BoundConstraint (void) | |
| BoundConstraint (const Vector< Real > &x) | |
| virtual void | project (Vector< Real > &x) |
| Project optimization variables onto the bounds. | |
| virtual void | projectInterior (Vector< Real > &x) |
| Project optimization variables into the interior of the feasible set. | |
| virtual void | pruneUpperActive (Vector< Real > &v, const Vector< Real > &x, Real eps=Real(0)) |
| Set variables to zero if they correspond to the upper \(\epsilon\)-active set. | |
| virtual 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 \(\epsilon\)-binding set. | |
| virtual void | pruneLowerActive (Vector< Real > &v, const Vector< Real > &x, Real eps=Real(0)) |
| Set variables to zero if they correspond to the lower \(\epsilon\)-active set. | |
| virtual 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 \(\epsilon\)-binding set. | |
| virtual const Ptr< const Vector< Real > > | getLowerBound (void) const |
| Return the ref count pointer to the lower bound vector. | |
| virtual const Ptr< const Vector< Real > > | getUpperBound (void) const |
| Return the ref count pointer to the upper bound vector. | |
| virtual bool | isFeasible (const Vector< Real > &v) |
| Check if the vector, v, is feasible. | |
| virtual void | applyInverseScalingFunction (Vector< Real > &dv, const Vector< Real > &v, const Vector< Real > &x, const Vector< Real > &g) const |
| Apply inverse scaling function. | |
| virtual void | applyScalingFunctionJacobian (Vector< Real > &dv, const Vector< Real > &v, const Vector< Real > &x, const Vector< Real > &g) const |
| Apply scaling function Jacobian. | |
| void | activateLower (void) |
| Turn on lower bound. | |
| void | activateUpper (void) |
| Turn on upper bound. | |
| void | activate (void) |
| Turn on bounds. | |
| void | deactivateLower (void) |
| Turn off lower bound. | |
| void | deactivateUpper (void) |
| Turn off upper bound. | |
| void | deactivate (void) |
| Turn off bounds. | |
| bool | isLowerActivated (void) const |
| Check if lower bound are on. | |
| bool | isUpperActivated (void) const |
| Check if upper bound are on. | |
| bool | isActivated (void) const |
| Check if bounds are on. | |
| void | pruneActive (Vector< Real > &v, const Vector< Real > &x, Real eps=Real(0)) |
| Set variables to zero if they correspond to the \(\epsilon\)-active 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 \(\epsilon\)-binding set. | |
| void | pruneLowerInactive (Vector< Real > &v, const Vector< Real > &x, Real eps=Real(0)) |
| Set variables to zero if they correspond to the \(\epsilon\)-inactive set. | |
| void | pruneUpperInactive (Vector< Real > &v, const Vector< Real > &x, Real eps=Real(0)) |
| Set variables to zero if they correspond to the \(\epsilon\)-inactive set. | |
| void | pruneLowerInactive (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 \(\epsilon\)-nonbinding set. | |
| void | pruneUpperInactive (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 \(\epsilon\)-nonbinding set. | |
| void | pruneInactive (Vector< Real > &v, const Vector< Real > &x, Real eps=Real(0)) |
| Set variables to zero if they correspond to the \(\epsilon\)-inactive set. | |
| void | pruneInactive (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 \(\epsilon\)-nonbinding set. | |
| void | computeProjectedGradient (Vector< Real > &g, const Vector< Real > &x) |
| Compute projected gradient. | |
| void | computeProjectedStep (Vector< Real > &v, const Vector< Real > &x) |
| Compute projected step. | |
Private Member Functions | |
| Real | buildC (int i) const |
| Real | sgn (Real x) const |
| void | buildScalingFunction (Vector< Real > &d, const Vector< Real > &x, const Vector< Real > &g) const |
Private Attributes | |
| int | dim_ |
| std::vector< Real > | x_lo_ |
| std::vector< Real > | x_up_ |
| const Real | scale_ |
| const Real | feasTol_ |
| Real | min_diff_ |
Additional Inherited Members | |
Protected Member Functions inherited from ROL::ROL::BoundConstraint< Real > | |
| Real | computeInf (const Vector< Real > &x) const |
Protected Attributes inherited from ROL::ROL::BoundConstraint< Real > | |
| Ptr< Vector< Real > > | lower_ |
| Ptr< Vector< Real > > | upper_ |
Definition at line 58 of file ROL_StdBoundConstraint.hpp.
| ROL::StdBoundConstraint< Real >::StdBoundConstraint | ( | std::vector< Real > & | x, |
| bool | isLower = false, | ||
| Real | scale = Real(1), | ||
| const Real | feasTol = std::sqrt(ROL_EPSILON<Real>()) ) |
Definition at line 55 of file ROL_StdBoundConstraint_Def.hpp.
References ROL::BoundConstraint< Real >::activateLower(), ROL::BoundConstraint< Real >::activateUpper(), dim_, feasTol_, ROL::ROL::BoundConstraint< Real >::lower_, min_diff_, ROL::ROL_INF(), ROL::ROL_NINF(), scale_, ROL::ROL::BoundConstraint< Real >::upper_, x_lo_, and x_up_.
| ROL::StdBoundConstraint< Real >::StdBoundConstraint | ( | std::vector< Real > & | l, |
| std::vector< Real > & | u, | ||
| Real | scale = Real(1), | ||
| const Real | feasTol = std::sqrt(ROL_EPSILON<Real>()) ) |
Definition at line 75 of file ROL_StdBoundConstraint_Def.hpp.
References ROL::BoundConstraint< Real >::activate(), dim_, feasTol_, ROL::ROL::BoundConstraint< Real >::lower_, min_diff_, scale_, ROL::ROL::BoundConstraint< Real >::upper_, x_lo_, and x_up_.
|
inlineprivate |
Definition at line 73 of file ROL_StdBoundConstraint.hpp.
Referenced by applyScalingFunctionJacobian(), and buildScalingFunction().
|
inlineprivate |
Definition at line 78 of file ROL_StdBoundConstraint.hpp.
References zero.
Referenced by applyScalingFunctionJacobian().
|
private |
Definition at line 235 of file ROL_StdBoundConstraint_Def.hpp.
References buildC(), dim_, x_lo_, and x_up_.
Referenced by applyInverseScalingFunction(), and applyScalingFunctionJacobian().
|
override |
Definition at line 94 of file ROL_StdBoundConstraint_Def.hpp.
References dim_, ROL::BoundConstraint< Real >::isActivated(), ROL::BoundConstraint< Real >::isLowerActivated(), ROL::BoundConstraint< Real >::isUpperActivated(), x_lo_, and x_up_.
|
override |
Definition at line 112 of file ROL_StdBoundConstraint_Def.hpp.
References dim_, feasTol_, ROL::BoundConstraint< Real >::isActivated(), ROL::BoundConstraint< Real >::isLowerActivated(), ROL::BoundConstraint< Real >::isUpperActivated(), min_diff_, ROL::ROL_EPSILON(), x_lo_, and x_up_.
|
override |
Definition at line 141 of file ROL_StdBoundConstraint_Def.hpp.
References dim_, ROL::BoundConstraint< Real >::isUpperActivated(), min_diff_, scale_, and x_up_.
|
override |
Definition at line 157 of file ROL_StdBoundConstraint_Def.hpp.
References dim_, ROL::BoundConstraint< Real >::isUpperActivated(), min_diff_, scale_, and x_up_.
|
override |
Definition at line 191 of file ROL_StdBoundConstraint_Def.hpp.
References dim_, ROL::BoundConstraint< Real >::isLowerActivated(), min_diff_, scale_, and x_lo_.
|
override |
Definition at line 175 of file ROL_StdBoundConstraint_Def.hpp.
References dim_, ROL::BoundConstraint< Real >::isLowerActivated(), min_diff_, scale_, and x_lo_.
|
override |
Definition at line 209 of file ROL_StdBoundConstraint_Def.hpp.
References dim_, ROL::BoundConstraint< Real >::isActivated(), ROL::BoundConstraint< Real >::isLowerActivated(), ROL::BoundConstraint< Real >::isUpperActivated(), x_lo_, and x_up_.
|
override |
Definition at line 267 of file ROL_StdBoundConstraint_Def.hpp.
References buildScalingFunction(), and dim_.
Referenced by testCases(), and testRandomInputs().
|
override |
Definition at line 281 of file ROL_StdBoundConstraint_Def.hpp.
References buildC(), buildScalingFunction(), dim_, sgn(), x_lo_, x_up_, and zero.
Referenced by testCases(), and testRandomInputs().
|
private |
Definition at line 60 of file ROL_StdBoundConstraint.hpp.
Referenced by applyInverseScalingFunction(), applyScalingFunctionJacobian(), buildScalingFunction(), isFeasible(), project(), projectInterior(), pruneLowerActive(), pruneLowerActive(), pruneUpperActive(), pruneUpperActive(), StdBoundConstraint(), and StdBoundConstraint().
|
private |
Definition at line 62 of file ROL_StdBoundConstraint.hpp.
Referenced by applyScalingFunctionJacobian(), buildC(), buildScalingFunction(), isFeasible(), project(), projectInterior(), pruneLowerActive(), pruneLowerActive(), StdBoundConstraint(), and StdBoundConstraint().
|
private |
Definition at line 63 of file ROL_StdBoundConstraint.hpp.
Referenced by applyScalingFunctionJacobian(), buildC(), buildScalingFunction(), isFeasible(), project(), projectInterior(), pruneUpperActive(), pruneUpperActive(), StdBoundConstraint(), and StdBoundConstraint().
|
private |
Definition at line 65 of file ROL_StdBoundConstraint.hpp.
Referenced by pruneLowerActive(), pruneLowerActive(), pruneUpperActive(), pruneUpperActive(), StdBoundConstraint(), and StdBoundConstraint().
|
private |
Definition at line 66 of file ROL_StdBoundConstraint.hpp.
Referenced by projectInterior(), StdBoundConstraint(), and StdBoundConstraint().
|
private |
Definition at line 71 of file ROL_StdBoundConstraint.hpp.
Referenced by projectInterior(), pruneLowerActive(), pruneLowerActive(), pruneUpperActive(), pruneUpperActive(), StdBoundConstraint(), and StdBoundConstraint().