|
ROL
|
Defines a composite equality constraint operator interface for simulation-based optimization. More...
#include <ROL_CompositeConstraint_SimOpt.hpp>
Public Member Functions | |
| CompositeConstraint_SimOpt (const ROL::Ptr< Constraint_SimOpt< Real > > &conVal, const ROL::Ptr< Constraint_SimOpt< Real > > &conRed, const Vector< Real > &cVal, const Vector< Real > &cRed, const Vector< Real > &u, const Vector< Real > &Sz, const Vector< Real > &z, bool storage=true, bool isConRedParametrized=false) | |
| void | update (const Vector< Real > &u, const Vector< Real > &z, bool flag=true, int iter=-1) override |
| void | update_1 (const Vector< Real > &u, bool flag=true, int iter=-1) override |
| void | update_2 (const Vector< Real > &z, bool flag=true, int iter=-1) override |
| void | update (const Vector< Real > &u, const Vector< Real > &z, UpdateType type, int iter=-1) override |
| void | update_1 (const Vector< Real > &u, UpdateType type, int iter=-1) override |
| void | update_2 (const Vector< Real > &z, UpdateType type, int iter=-1) override |
| void | solve_update (const Vector< Real > &u, const Vector< Real > &z, UpdateType type, int iter=-1) override |
| void | value (Vector< Real > &c, const Vector< Real > &u, const Vector< Real > &z, Real &tol) override |
| void | solve (Vector< Real > &c, Vector< Real > &u, const Vector< Real > &z, Real &tol) override |
| void | applyJacobian_1 (Vector< Real > &jv, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, Real &tol) override |
| void | applyJacobian_2 (Vector< Real > &jv, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, Real &tol) override |
| void | applyInverseJacobian_1 (Vector< Real > &ijv, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, Real &tol) override |
| void | applyAdjointJacobian_1 (Vector< Real > &ajv, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, Real &tol) override |
| void | applyAdjointJacobian_2 (Vector< Real > &ajv, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, Real &tol) override |
| void | applyInverseAdjointJacobian_1 (Vector< Real > &ijv, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, Real &tol) override |
| void | applyAdjointHessian_11 (Vector< Real > &ahwv, const Vector< Real > &w, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, Real &tol) override |
| void | applyAdjointHessian_12 (Vector< Real > &ahwv, const Vector< Real > &w, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, Real &tol) override |
| void | applyAdjointHessian_21 (Vector< Real > &ahwv, const Vector< Real > &w, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, Real &tol) override |
| void | applyAdjointHessian_22 (Vector< Real > &ahwv, const Vector< Real > &w, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, Real &tol) override |
| void | setParameter (const std::vector< Real > ¶m) override |
Private Member Functions | |
| void | solveConRed (Vector< Real > &Sz, const Vector< Real > &z, Real &tol) |
| void | applySens (Vector< Real > &jv, const Vector< Real > &v, const Vector< Real > &Sz, const Vector< Real > &z, Real &tol) |
| void | applyAdjointSens (Vector< Real > &ajv, const Vector< Real > &v, const Vector< Real > &Sz, const Vector< Real > &z, Real &tol) |
Private Attributes | |
| const ROL::Ptr< Constraint_SimOpt< Real > > | conVal_ |
| const ROL::Ptr< Constraint_SimOpt< Real > > | conRed_ |
| ROL::Ptr< Vector< Real > > | Sz_ |
| ROL::Ptr< Vector< Real > > | primRed_ |
| ROL::Ptr< Vector< Real > > | dualRed_ |
| ROL::Ptr< Vector< Real > > | primZ_ |
| ROL::Ptr< Vector< Real > > | dualZ_ |
| ROL::Ptr< Vector< Real > > | dualZ1_ |
| ROL::Ptr< Vector< Real > > | primU_ |
| ROL::Ptr< VectorController< Real > > | stateStore_ |
| bool | updateFlag_ |
| bool | newUpdate_ |
| int | updateIter_ |
| UpdateType | updateType_ |
| const bool | storage_ |
| const bool | isConRedParametrized_ |
Defines a composite equality constraint operator interface for simulation-based optimization.
This equality constraint interface inherits from ROL_Constraint_SimOpt, for the use case when \(\mathcal{X}=\mathcal{U}\times\mathcal{Z}\) where \(\mathcal{U}\) and \(\mathcal{Z}\) are Banach spaces. \(\mathcal{U}\) denotes the "simulation space" and \(\mathcal{Z}\) denotes the "optimization space" (of designs, controls, parameters). The simulation-based constraints are of the form
\[ c(u,S(z)) = 0 \]
where \(S(z)\) solves the reducible constraint
\[ c_0(S(z),z) = 0. \]
Definition at line 74 of file ROL_CompositeConstraint_SimOpt.hpp.
| ROL::CompositeConstraint_SimOpt< Real >::CompositeConstraint_SimOpt | ( | const ROL::Ptr< Constraint_SimOpt< Real > > & | conVal, |
| const ROL::Ptr< Constraint_SimOpt< Real > > & | conRed, | ||
| const Vector< Real > & | cVal, | ||
| const Vector< Real > & | cRed, | ||
| const Vector< Real > & | u, | ||
| const Vector< Real > & | Sz, | ||
| const Vector< Real > & | z, | ||
| bool | storage = true, | ||
| bool | isConRedParametrized = false ) |
Definition at line 50 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References ROL::Vector< Real >::clone(), conRed_, conVal_, ROL::Vector< Real >::dual(), dualRed_, dualZ1_, dualZ_, isConRedParametrized_, newUpdate_, primRed_, primU_, primZ_, stateStore_, storage_, Sz_, updateFlag_, updateIter_, and updateType_.
|
override |
Definition at line 74 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References update_1(), and update_2().
|
override |
|
override |
Definition at line 89 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References conRed_, stateStore_, updateFlag_, and updateIter_.
|
override |
Definition at line 98 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References update_1(), and update_2().
|
override |
Definition at line 106 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
|
override |
Definition at line 113 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References conRed_, stateStore_, updateIter_, and updateType_.
|
override |
Definition at line 122 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References conVal_, ROL::ROL_EPSILON(), solveConRed(), and Sz_.
|
override |
Definition at line 131 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References conVal_, solveConRed(), and Sz_.
|
override |
Definition at line 140 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References conVal_, solveConRed(), and Sz_.
|
override |
Definition at line 149 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References conVal_, solveConRed(), and Sz_.
|
override |
Definition at line 159 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References applySens(), conVal_, primZ_, solveConRed(), and Sz_.
|
override |
Definition at line 170 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References conVal_, solveConRed(), and Sz_.
|
override |
Definition at line 180 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References conVal_, solveConRed(), and Sz_.
|
override |
Definition at line 190 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References applyAdjointSens(), conVal_, dualZ_, solveConRed(), and Sz_.
|
override |
Definition at line 201 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References conVal_, solveConRed(), and Sz_.
|
override |
Definition at line 211 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References conVal_, solveConRed(), and Sz_.
|
override |
Definition at line 222 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References applyAdjointSens(), conVal_, dualZ_, solveConRed(), and Sz_.
|
override |
Definition at line 234 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References applySens(), conVal_, primZ_, solveConRed(), and Sz_.
|
override |
Definition at line 246 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References applyAdjointSens(), applySens(), ROL::Vector< Real >::axpy(), conRed_, conVal_, dualRed_, dualZ1_, dualZ_, ROL::Vector< Real >::plus(), primZ_, solveConRed(), Sz_, and ROL::Vector< Real >::zero().
|
override |
Definition at line 276 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References conRed_, conVal_, isConRedParametrized_, and ROL::ROL::Constraint< Real >::setParameter().
|
private |
Definition at line 285 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References conRed_, conVal_, ROL::ROL::Constraint< Real >::getParameter(), newUpdate_, primRed_, primU_, stateStore_, storage_, updateFlag_, updateIter_, and updateType_.
Referenced by applyAdjointHessian_11(), applyAdjointHessian_12(), applyAdjointHessian_21(), applyAdjointHessian_22(), applyAdjointJacobian_1(), applyAdjointJacobian_2(), applyInverseAdjointJacobian_1(), applyInverseJacobian_1(), applyJacobian_1(), applyJacobian_2(), solve(), solve_update(), and value().
|
private |
Definition at line 310 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References conRed_, primRed_, and ROL::Vector< Real >::scale().
Referenced by applyAdjointHessian_21(), applyAdjointHessian_22(), and applyJacobian_2().
|
private |
Definition at line 322 of file ROL_CompositeConstraint_SimOpt_Def.hpp.
References conRed_, dualRed_, and ROL::Vector< Real >::scale().
Referenced by applyAdjointHessian_12(), applyAdjointHessian_22(), and applyAdjointJacobian_2().
|
private |
Definition at line 77 of file ROL_CompositeConstraint_SimOpt.hpp.
Referenced by applyAdjointHessian_11(), applyAdjointHessian_12(), applyAdjointHessian_21(), applyAdjointHessian_22(), applyAdjointJacobian_1(), applyAdjointJacobian_2(), applyInverseAdjointJacobian_1(), applyInverseJacobian_1(), applyJacobian_1(), applyJacobian_2(), CompositeConstraint_SimOpt(), setParameter(), solve(), solve_update(), solveConRed(), update_1(), update_1(), and value().
|
private |
Definition at line 77 of file ROL_CompositeConstraint_SimOpt.hpp.
Referenced by applyAdjointHessian_22(), applyAdjointSens(), applySens(), CompositeConstraint_SimOpt(), setParameter(), solveConRed(), update_2(), and update_2().
|
private |
Definition at line 79 of file ROL_CompositeConstraint_SimOpt.hpp.
Referenced by applyAdjointHessian_11(), applyAdjointHessian_12(), applyAdjointHessian_21(), applyAdjointHessian_22(), applyAdjointJacobian_1(), applyAdjointJacobian_2(), applyInverseAdjointJacobian_1(), applyInverseJacobian_1(), applyJacobian_1(), applyJacobian_2(), CompositeConstraint_SimOpt(), solve(), solve_update(), and value().
|
private |
Definition at line 79 of file ROL_CompositeConstraint_SimOpt.hpp.
Referenced by applySens(), CompositeConstraint_SimOpt(), and solveConRed().
|
private |
Definition at line 79 of file ROL_CompositeConstraint_SimOpt.hpp.
Referenced by applyAdjointHessian_22(), applyAdjointSens(), and CompositeConstraint_SimOpt().
|
private |
Definition at line 79 of file ROL_CompositeConstraint_SimOpt.hpp.
Referenced by applyAdjointHessian_21(), applyAdjointHessian_22(), applyJacobian_2(), and CompositeConstraint_SimOpt().
|
private |
Definition at line 79 of file ROL_CompositeConstraint_SimOpt.hpp.
Referenced by applyAdjointHessian_12(), applyAdjointHessian_22(), applyAdjointJacobian_2(), and CompositeConstraint_SimOpt().
|
private |
Definition at line 79 of file ROL_CompositeConstraint_SimOpt.hpp.
Referenced by applyAdjointHessian_22(), and CompositeConstraint_SimOpt().
|
private |
Definition at line 79 of file ROL_CompositeConstraint_SimOpt.hpp.
Referenced by CompositeConstraint_SimOpt(), solveConRed(), update_1(), and update_1().
|
private |
Definition at line 81 of file ROL_CompositeConstraint_SimOpt.hpp.
Referenced by CompositeConstraint_SimOpt(), solveConRed(), update_2(), and update_2().
|
private |
Definition at line 83 of file ROL_CompositeConstraint_SimOpt.hpp.
Referenced by CompositeConstraint_SimOpt(), solveConRed(), and update_2().
|
private |
Definition at line 83 of file ROL_CompositeConstraint_SimOpt.hpp.
Referenced by CompositeConstraint_SimOpt(), and solveConRed().
|
private |
Definition at line 84 of file ROL_CompositeConstraint_SimOpt.hpp.
Referenced by CompositeConstraint_SimOpt(), solveConRed(), update_2(), and update_2().
|
private |
Definition at line 85 of file ROL_CompositeConstraint_SimOpt.hpp.
Referenced by CompositeConstraint_SimOpt(), solveConRed(), and update_2().
|
private |
Definition at line 87 of file ROL_CompositeConstraint_SimOpt.hpp.
Referenced by CompositeConstraint_SimOpt(), and solveConRed().
|
private |
Definition at line 87 of file ROL_CompositeConstraint_SimOpt.hpp.
Referenced by CompositeConstraint_SimOpt(), and setParameter().