|
ROL
|
#include <example_04.hpp>
Inheritance diagram for H1BoundConstraint< Real >:Public Member Functions | |
| H1BoundConstraint (std::vector< Real > &l, std::vector< Real > &u, const Teuchos::RCP< BurgersFEM< Real > > &fem, Real scale=1.0) | |
| bool | isFeasible (const ROL::Vector< Real > &x) |
| Check if the vector, v, is feasible. More... | |
| void | project (ROL::Vector< Real > &x) |
| Project optimization variables onto the bounds. More... | |
| void | pruneLowerActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the lower \(\epsilon\)-active set. More... | |
| void | pruneUpperActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the upper \(\epsilon\)-active set. More... | |
| void | pruneActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the \(\epsilon\)-active set. More... | |
| void | pruneLowerActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &g, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the lower \(\epsilon\)-binding set. More... | |
| void | pruneUpperActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &g, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the upper \(\epsilon\)-binding set. More... | |
| void | pruneActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &g, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the \(\epsilon\)-binding set. More... | |
| void | setVectorToUpperBound (ROL::Vector< Real > &u) |
| Set the input vector to the upper bound. More... | |
| void | setVectorToLowerBound (ROL::Vector< Real > &l) |
| Set the input vector to the lower bound. More... | |
| H1BoundConstraint (std::vector< Real > &l, std::vector< Real > &u, const Teuchos::RCP< BurgersFEM< Real > > &fem, Real scale=1.0) | |
| bool | isFeasible (const ROL::Vector< Real > &x) |
| Check if the vector, v, is feasible. More... | |
| void | project (ROL::Vector< Real > &x) |
| Project optimization variables onto the bounds. More... | |
| void | pruneLowerActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the lower \(\epsilon\)-active set. More... | |
| void | pruneUpperActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the upper \(\epsilon\)-active set. More... | |
| void | pruneActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the \(\epsilon\)-active set. More... | |
| void | pruneLowerActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &g, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the lower \(\epsilon\)-binding set. More... | |
| void | pruneUpperActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &g, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the upper \(\epsilon\)-binding set. More... | |
| void | pruneActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &g, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the \(\epsilon\)-binding set. More... | |
| void | setVectorToUpperBound (ROL::Vector< Real > &u) |
| Set the input vector to the upper bound. More... | |
| void | setVectorToLowerBound (ROL::Vector< Real > &l) |
| Set the input vector to the lower bound. More... | |
| H1BoundConstraint (std::vector< Real > &l, std::vector< Real > &u, const Teuchos::RCP< BurgersFEM< Real > > &fem, Real scale=1.0) | |
| bool | isFeasible (const ROL::Vector< Real > &x) |
| Check if the vector, v, is feasible. More... | |
| void | project (ROL::Vector< Real > &x) |
| Project optimization variables onto the bounds. More... | |
| void | pruneLowerActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the lower \(\epsilon\)-active set. More... | |
| void | pruneUpperActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the upper \(\epsilon\)-active set. More... | |
| void | pruneActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the \(\epsilon\)-active set. More... | |
| void | pruneLowerActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &g, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the lower \(\epsilon\)-binding set. More... | |
| void | pruneUpperActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &g, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the upper \(\epsilon\)-binding set. More... | |
| void | pruneActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &g, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the \(\epsilon\)-binding set. More... | |
| void | setVectorToUpperBound (ROL::Vector< Real > &u) |
| Set the input vector to the upper bound. More... | |
| void | setVectorToLowerBound (ROL::Vector< Real > &l) |
| Set the input vector to the lower bound. More... | |
| H1BoundConstraint (std::vector< Real > &l, std::vector< Real > &u, const Teuchos::RCP< BurgersFEM< Real > > &fem, Real scale=1.0) | |
| bool | isFeasible (const ROL::Vector< Real > &x) |
| Check if the vector, v, is feasible. More... | |
| void | project (ROL::Vector< Real > &x) |
| Project optimization variables onto the bounds. More... | |
| void | pruneLowerActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the lower \(\epsilon\)-active set. More... | |
| void | pruneUpperActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the upper \(\epsilon\)-active set. More... | |
| void | pruneActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the \(\epsilon\)-active set. More... | |
| void | pruneLowerActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &g, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the lower \(\epsilon\)-binding set. More... | |
| void | pruneUpperActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &g, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the upper \(\epsilon\)-binding set. More... | |
| void | pruneActive (ROL::Vector< Real > &v, const ROL::Vector< Real > &g, const ROL::Vector< Real > &x, Real eps) |
| Set variables to zero if they correspond to the \(\epsilon\)-binding set. More... | |
| void | setVectorToUpperBound (ROL::Vector< Real > &u) |
| Set the input vector to the upper bound. More... | |
| void | setVectorToLowerBound (ROL::Vector< Real > &l) |
| Set the input vector to the lower bound. More... | |
Public Member Functions inherited from ROL::BoundConstraint< Real > | |
| virtual | ~BoundConstraint () |
| BoundConstraint (void) | |
| BoundConstraint (const Vector< Real > &x) | |
| BoundConstraint (const Teuchos::RCP< Vector< Real > > &x_lo, const Teuchos::RCP< Vector< Real > > &x_up, const Real scale=1) | |
| Default constructor. More... | |
| virtual void | update (const Vector< Real > &x, bool flag=true, int iter=-1) |
| Update bounds. More... | |
| virtual const Teuchos::RCP< const Vector< Real > > | getLowerVectorRCP (void) const |
| Return the ref count pointer to the lower bound vector. More... | |
| virtual const Teuchos::RCP< const Vector< Real > > | getUpperVectorRCP (void) const |
| Return the ref count pointer to the upper bound vector. More... | |
| virtual const Teuchos::RCP< Vector< Real > > | getLowerVectorRCP (void) |
| Return the ref count pointer to the lower bound vector. More... | |
| virtual const Teuchos::RCP< Vector< Real > > | getUpperVectorRCP (void) |
| Return the ref count pointer to the upper bound vector. More... | |
| void | activate (void) |
| Turn on bounds. More... | |
| void | deactivate (void) |
| Turn off bounds. More... | |
| bool | isActivated (void) |
| Check if bounds are on. More... | |
| void | pruneInactive (Vector< Real > &v, const Vector< Real > &x, Real eps=0) |
| Set variables to zero if they correspond to the \(\epsilon\)-inactive set. More... | |
| void | pruneLowerInactive (Vector< Real > &v, const Vector< Real > &x, Real eps=0) |
| void | pruneUpperInactive (Vector< Real > &v, const Vector< Real > &x, Real eps=0) |
| 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 \(\epsilon\)-nonbinding set. More... | |
| void | pruneLowerInactive (Vector< Real > &v, const Vector< Real > &g, const Vector< Real > &x, Real eps=0) |
| void | pruneUpperInactive (Vector< Real > &v, const Vector< Real > &g, const Vector< Real > &x, Real eps=0) |
| void | computeProjectedGradient (Vector< Real > &g, const Vector< Real > &x) |
| Compute projected gradient. More... | |
| void | computeProjectedStep (Vector< Real > &v, const Vector< Real > &x) |
| Compute projected step. More... | |
Private Member Functions | |
| void | cast_vector (Teuchos::RCP< std::vector< Real > > &xvec, ROL::Vector< Real > &x) const |
| void | cast_const_vector (Teuchos::RCP< const std::vector< Real > > &xvec, const ROL::Vector< Real > &x) const |
| void | axpy (std::vector< Real > &out, const Real a, const std::vector< Real > &x, const std::vector< Real > &y) const |
| void | projection (std::vector< Real > &x) |
| void | cast_vector (Teuchos::RCP< std::vector< Real > > &xvec, ROL::Vector< Real > &x) const |
| void | cast_const_vector (Teuchos::RCP< const std::vector< Real > > &xvec, const ROL::Vector< Real > &x) const |
| void | axpy (std::vector< Real > &out, const Real a, const std::vector< Real > &x, const std::vector< Real > &y) const |
| void | projection (std::vector< Real > &x) |
| void | cast_vector (Teuchos::RCP< std::vector< Real > > &xvec, ROL::Vector< Real > &x) const |
| void | cast_const_vector (Teuchos::RCP< const std::vector< Real > > &xvec, const ROL::Vector< Real > &x) const |
| void | axpy (std::vector< Real > &out, const Real a, const std::vector< Real > &x, const std::vector< Real > &y) const |
| void | projection (std::vector< Real > &x) |
| void | cast_vector (Teuchos::RCP< std::vector< Real > > &xvec, ROL::Vector< Real > &x) const |
| void | cast_const_vector (Teuchos::RCP< const std::vector< Real > > &xvec, const ROL::Vector< Real > &x) const |
| void | axpy (std::vector< Real > &out, const Real a, const std::vector< Real > &x, const std::vector< Real > &y) const |
| void | projection (std::vector< Real > &x) |
Private Attributes | |
| int | dim_ |
| std::vector< Real > | x_lo_ |
| std::vector< Real > | x_up_ |
| Real | min_diff_ |
| Real | scale_ |
| Teuchos::RCP< BurgersFEM< Real > > | fem_ |
Definition at line 1316 of file example_04.hpp.
|
inline |
Definition at line 1364 of file example_04.hpp.
|
inline |
Definition at line 1423 of file example_06.hpp.
|
inline |
Definition at line 1441 of file example_07.hpp.
|
inline |
Definition at line 1423 of file example_08.hpp.
|
inlineprivate |
Definition at line 1325 of file example_04.hpp.
|
inlineprivate |
Definition at line 1337 of file example_04.hpp.
|
inlineprivate |
Definition at line 1349 of file example_04.hpp.
|
inlineprivate |
Definition at line 1357 of file example_04.hpp.
|
inlinevirtual |
Check if the vector, v, is feasible.
This function returns true if \(v = P_{[a,b]}(v)\).
| [in] | v | is the vector to be checked. |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1379 of file example_04.hpp.
|
inlinevirtual |
Project optimization variables onto the bounds.
This function implements the projection of \(x\) onto the bounds, i.e.,
\[ (P_{[a,b]}(x))(\xi) = \min\{b(\xi),\max\{a(\xi),x(\xi)\}\} \quad \text{for almost every }\xi\in\Xi. \]
| [in,out] | x | is the optimization variable. |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1391 of file example_04.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the lower \(\epsilon\)-active set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{A}^-_\epsilon(x)\). Here, the lower \(\epsilon\)-active set is defined as
\[ \mathcal{A}^-_\epsilon(x) = \{\,\xi\in\Xi\,:\,x(\xi) = a(\xi)+\epsilon\,\}. \]
| [out] | v | is the variable to be pruned. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1396 of file example_04.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the upper \(\epsilon\)-active set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{A}^+_\epsilon(x)\). Here, the upper \(\epsilon\)-active set is defined as
\[ \mathcal{A}^+_\epsilon(x) = \{\,\xi\in\Xi\,:\,x(\xi) = b(\xi)-\epsilon\,\}. \]
| [out] | v | is the variable to be pruned. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1407 of file example_04.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the \(\epsilon\)-active set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{A}_\epsilon(x)\). Here, the \(\epsilon\)-active set is defined as
\[ \mathcal{A}_\epsilon(x) = \mathcal{A}^+_\epsilon(x)\cap\mathcal{A}^-_\epsilon(x). \]
| [out] | v | is the variable to be pruned. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1418 of file example_04.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the lower \(\epsilon\)-binding set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{B}^-_\epsilon(x)\). Here, the lower \(\epsilon\)-binding set is defined as
\[ \mathcal{B}^-_\epsilon(x) = \{\,\xi\in\Xi\,:\,x(\xi) = a(\xi)+\epsilon,\; g(\xi) > 0 \,\}. \]
| [out] | v | is the variable to be pruned. |
| [in] | g | is the negative search direction. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1430 of file example_04.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the upper \(\epsilon\)-binding set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{B}^+_\epsilon(x)\). Here, the upper \(\epsilon\)-binding set is defined as
\[ \mathcal{B}^+_\epsilon(x) = \{\,\xi\in\Xi\,:\,x(\xi) = b(\xi)-\epsilon,\; g(\xi) < 0 \,\}. \]
| [out] | v | is the variable to be pruned. |
| [in] | g | is the negative search direction. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1442 of file example_04.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the \(\epsilon\)-binding set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{B}_\epsilon(x)\). Here, the \(\epsilon\)-binding set is defined as
\[ \mathcal{B}^+_\epsilon(x) = \mathcal{B}^+_\epsilon(x)\cap\mathcal{B}^-_\epsilon(x). \]
| [out] | v | is the variable to be pruned. |
| [in] | g | is the negative search direction. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1454 of file example_04.hpp.
|
inlinevirtual |
Set the input vector to the upper bound.
This function sets the input vector \(u\) to the upper bound \(b\).
| [out] | u | is the vector to be set to the upper bound. |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1467 of file example_04.hpp.
References ROL::Vector< Real >::set().
|
inlinevirtual |
Set the input vector to the lower bound.
This function sets the input vector \(l\) to the lower bound \(a\).
| [out] | l | is the vector to be set to the lower bound. |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1474 of file example_04.hpp.
References ROL::Vector< Real >::set().
|
inlineprivate |
Definition at line 1384 of file example_06.hpp.
|
inlineprivate |
Definition at line 1396 of file example_06.hpp.
|
inlineprivate |
Definition at line 1408 of file example_06.hpp.
|
inlineprivate |
Definition at line 1416 of file example_06.hpp.
|
inlinevirtual |
Check if the vector, v, is feasible.
This function returns true if \(v = P_{[a,b]}(v)\).
| [in] | v | is the vector to be checked. |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1438 of file example_06.hpp.
|
inlinevirtual |
Project optimization variables onto the bounds.
This function implements the projection of \(x\) onto the bounds, i.e.,
\[ (P_{[a,b]}(x))(\xi) = \min\{b(\xi),\max\{a(\xi),x(\xi)\}\} \quad \text{for almost every }\xi\in\Xi. \]
| [in,out] | x | is the optimization variable. |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1450 of file example_06.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the lower \(\epsilon\)-active set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{A}^-_\epsilon(x)\). Here, the lower \(\epsilon\)-active set is defined as
\[ \mathcal{A}^-_\epsilon(x) = \{\,\xi\in\Xi\,:\,x(\xi) = a(\xi)+\epsilon\,\}. \]
| [out] | v | is the variable to be pruned. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1455 of file example_06.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the upper \(\epsilon\)-active set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{A}^+_\epsilon(x)\). Here, the upper \(\epsilon\)-active set is defined as
\[ \mathcal{A}^+_\epsilon(x) = \{\,\xi\in\Xi\,:\,x(\xi) = b(\xi)-\epsilon\,\}. \]
| [out] | v | is the variable to be pruned. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1466 of file example_06.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the \(\epsilon\)-active set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{A}_\epsilon(x)\). Here, the \(\epsilon\)-active set is defined as
\[ \mathcal{A}_\epsilon(x) = \mathcal{A}^+_\epsilon(x)\cap\mathcal{A}^-_\epsilon(x). \]
| [out] | v | is the variable to be pruned. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1477 of file example_06.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the lower \(\epsilon\)-binding set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{B}^-_\epsilon(x)\). Here, the lower \(\epsilon\)-binding set is defined as
\[ \mathcal{B}^-_\epsilon(x) = \{\,\xi\in\Xi\,:\,x(\xi) = a(\xi)+\epsilon,\; g(\xi) > 0 \,\}. \]
| [out] | v | is the variable to be pruned. |
| [in] | g | is the negative search direction. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1489 of file example_06.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the upper \(\epsilon\)-binding set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{B}^+_\epsilon(x)\). Here, the upper \(\epsilon\)-binding set is defined as
\[ \mathcal{B}^+_\epsilon(x) = \{\,\xi\in\Xi\,:\,x(\xi) = b(\xi)-\epsilon,\; g(\xi) < 0 \,\}. \]
| [out] | v | is the variable to be pruned. |
| [in] | g | is the negative search direction. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1501 of file example_06.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the \(\epsilon\)-binding set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{B}_\epsilon(x)\). Here, the \(\epsilon\)-binding set is defined as
\[ \mathcal{B}^+_\epsilon(x) = \mathcal{B}^+_\epsilon(x)\cap\mathcal{B}^-_\epsilon(x). \]
| [out] | v | is the variable to be pruned. |
| [in] | g | is the negative search direction. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1513 of file example_06.hpp.
|
inlinevirtual |
Set the input vector to the upper bound.
This function sets the input vector \(u\) to the upper bound \(b\).
| [out] | u | is the vector to be set to the upper bound. |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1526 of file example_06.hpp.
References ROL::Vector< Real >::set().
|
inlinevirtual |
Set the input vector to the lower bound.
This function sets the input vector \(l\) to the lower bound \(a\).
| [out] | l | is the vector to be set to the lower bound. |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1533 of file example_06.hpp.
References ROL::Vector< Real >::set().
|
inlineprivate |
Definition at line 1402 of file example_07.hpp.
|
inlineprivate |
Definition at line 1414 of file example_07.hpp.
|
inlineprivate |
Definition at line 1426 of file example_07.hpp.
|
inlineprivate |
Definition at line 1434 of file example_07.hpp.
|
inlinevirtual |
Check if the vector, v, is feasible.
This function returns true if \(v = P_{[a,b]}(v)\).
| [in] | v | is the vector to be checked. |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1456 of file example_07.hpp.
|
inlinevirtual |
Project optimization variables onto the bounds.
This function implements the projection of \(x\) onto the bounds, i.e.,
\[ (P_{[a,b]}(x))(\xi) = \min\{b(\xi),\max\{a(\xi),x(\xi)\}\} \quad \text{for almost every }\xi\in\Xi. \]
| [in,out] | x | is the optimization variable. |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1468 of file example_07.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the lower \(\epsilon\)-active set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{A}^-_\epsilon(x)\). Here, the lower \(\epsilon\)-active set is defined as
\[ \mathcal{A}^-_\epsilon(x) = \{\,\xi\in\Xi\,:\,x(\xi) = a(\xi)+\epsilon\,\}. \]
| [out] | v | is the variable to be pruned. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1473 of file example_07.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the upper \(\epsilon\)-active set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{A}^+_\epsilon(x)\). Here, the upper \(\epsilon\)-active set is defined as
\[ \mathcal{A}^+_\epsilon(x) = \{\,\xi\in\Xi\,:\,x(\xi) = b(\xi)-\epsilon\,\}. \]
| [out] | v | is the variable to be pruned. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1484 of file example_07.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the \(\epsilon\)-active set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{A}_\epsilon(x)\). Here, the \(\epsilon\)-active set is defined as
\[ \mathcal{A}_\epsilon(x) = \mathcal{A}^+_\epsilon(x)\cap\mathcal{A}^-_\epsilon(x). \]
| [out] | v | is the variable to be pruned. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1495 of file example_07.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the lower \(\epsilon\)-binding set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{B}^-_\epsilon(x)\). Here, the lower \(\epsilon\)-binding set is defined as
\[ \mathcal{B}^-_\epsilon(x) = \{\,\xi\in\Xi\,:\,x(\xi) = a(\xi)+\epsilon,\; g(\xi) > 0 \,\}. \]
| [out] | v | is the variable to be pruned. |
| [in] | g | is the negative search direction. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1507 of file example_07.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the upper \(\epsilon\)-binding set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{B}^+_\epsilon(x)\). Here, the upper \(\epsilon\)-binding set is defined as
\[ \mathcal{B}^+_\epsilon(x) = \{\,\xi\in\Xi\,:\,x(\xi) = b(\xi)-\epsilon,\; g(\xi) < 0 \,\}. \]
| [out] | v | is the variable to be pruned. |
| [in] | g | is the negative search direction. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1519 of file example_07.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the \(\epsilon\)-binding set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{B}_\epsilon(x)\). Here, the \(\epsilon\)-binding set is defined as
\[ \mathcal{B}^+_\epsilon(x) = \mathcal{B}^+_\epsilon(x)\cap\mathcal{B}^-_\epsilon(x). \]
| [out] | v | is the variable to be pruned. |
| [in] | g | is the negative search direction. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1531 of file example_07.hpp.
|
inlinevirtual |
Set the input vector to the upper bound.
This function sets the input vector \(u\) to the upper bound \(b\).
| [out] | u | is the vector to be set to the upper bound. |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1544 of file example_07.hpp.
References ROL::Vector< Real >::set().
|
inlinevirtual |
Set the input vector to the lower bound.
This function sets the input vector \(l\) to the lower bound \(a\).
| [out] | l | is the vector to be set to the lower bound. |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1551 of file example_07.hpp.
References ROL::Vector< Real >::set().
|
inlineprivate |
Definition at line 1384 of file example_08.hpp.
|
inlineprivate |
Definition at line 1396 of file example_08.hpp.
|
inlineprivate |
Definition at line 1408 of file example_08.hpp.
|
inlineprivate |
Definition at line 1416 of file example_08.hpp.
|
inlinevirtual |
Check if the vector, v, is feasible.
This function returns true if \(v = P_{[a,b]}(v)\).
| [in] | v | is the vector to be checked. |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1438 of file example_08.hpp.
|
inlinevirtual |
Project optimization variables onto the bounds.
This function implements the projection of \(x\) onto the bounds, i.e.,
\[ (P_{[a,b]}(x))(\xi) = \min\{b(\xi),\max\{a(\xi),x(\xi)\}\} \quad \text{for almost every }\xi\in\Xi. \]
| [in,out] | x | is the optimization variable. |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1450 of file example_08.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the lower \(\epsilon\)-active set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{A}^-_\epsilon(x)\). Here, the lower \(\epsilon\)-active set is defined as
\[ \mathcal{A}^-_\epsilon(x) = \{\,\xi\in\Xi\,:\,x(\xi) = a(\xi)+\epsilon\,\}. \]
| [out] | v | is the variable to be pruned. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1455 of file example_08.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the upper \(\epsilon\)-active set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{A}^+_\epsilon(x)\). Here, the upper \(\epsilon\)-active set is defined as
\[ \mathcal{A}^+_\epsilon(x) = \{\,\xi\in\Xi\,:\,x(\xi) = b(\xi)-\epsilon\,\}. \]
| [out] | v | is the variable to be pruned. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1466 of file example_08.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the \(\epsilon\)-active set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{A}_\epsilon(x)\). Here, the \(\epsilon\)-active set is defined as
\[ \mathcal{A}_\epsilon(x) = \mathcal{A}^+_\epsilon(x)\cap\mathcal{A}^-_\epsilon(x). \]
| [out] | v | is the variable to be pruned. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1477 of file example_08.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the lower \(\epsilon\)-binding set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{B}^-_\epsilon(x)\). Here, the lower \(\epsilon\)-binding set is defined as
\[ \mathcal{B}^-_\epsilon(x) = \{\,\xi\in\Xi\,:\,x(\xi) = a(\xi)+\epsilon,\; g(\xi) > 0 \,\}. \]
| [out] | v | is the variable to be pruned. |
| [in] | g | is the negative search direction. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1489 of file example_08.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the upper \(\epsilon\)-binding set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{B}^+_\epsilon(x)\). Here, the upper \(\epsilon\)-binding set is defined as
\[ \mathcal{B}^+_\epsilon(x) = \{\,\xi\in\Xi\,:\,x(\xi) = b(\xi)-\epsilon,\; g(\xi) < 0 \,\}. \]
| [out] | v | is the variable to be pruned. |
| [in] | g | is the negative search direction. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1501 of file example_08.hpp.
|
inlinevirtual |
Set variables to zero if they correspond to the \(\epsilon\)-binding set.
This function sets \(v(\xi)=0\) if \(\xi\in\mathcal{B}_\epsilon(x)\). Here, the \(\epsilon\)-binding set is defined as
\[ \mathcal{B}^+_\epsilon(x) = \mathcal{B}^+_\epsilon(x)\cap\mathcal{B}^-_\epsilon(x). \]
| [out] | v | is the variable to be pruned. |
| [in] | g | is the negative search direction. |
| [in] | x | is the current optimization variable. |
| [in] | eps | is the active-set tolerance \(\epsilon\). |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1513 of file example_08.hpp.
|
inlinevirtual |
Set the input vector to the upper bound.
This function sets the input vector \(u\) to the upper bound \(b\).
| [out] | u | is the vector to be set to the upper bound. |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1526 of file example_08.hpp.
References ROL::Vector< Real >::set().
|
inlinevirtual |
Set the input vector to the lower bound.
This function sets the input vector \(l\) to the lower bound \(a\).
| [out] | l | is the vector to be set to the lower bound. |
Reimplemented from ROL::BoundConstraint< Real >.
Definition at line 1533 of file example_08.hpp.
References ROL::Vector< Real >::set().
|
private |
Definition at line 1318 of file example_04.hpp.
|
private |
Definition at line 1319 of file example_04.hpp.
|
private |
Definition at line 1320 of file example_04.hpp.
|
private |
Definition at line 1321 of file example_04.hpp.
|
private |
Definition at line 1322 of file example_04.hpp.
|
private |
Definition at line 1323 of file example_04.hpp.
1.8.13