ROL
|
Defines the time-dependent constraint operator interface for simulation-based optimization. More...
#include <ROL_DynamicConstraint.hpp>
Public Types | |
using | V = Vector< Real > |
using | PV = PartitionedVector< Real > |
using | TS = TimeStamp< Real > |
Public Types inherited from ROL::DynamicFunction< Real > | |
using | V = Vector< Real > |
using | PV = PartitionedVector< Real > |
using | TS = TimeStamp< Real > |
Public Member Functions | |
virtual | ~DynamicConstraint () |
DynamicConstraint (std::initializer_list< std::string > zero_deriv_terms={}) | |
virtual void | update (const V &uo, const V &un, const V &z, const TS &ts) |
virtual void | value (V &c, const V &uo, const V &un, const V &z, const TS &ts) const =0 |
virtual void | solve (V &c, const V &uo, V &un, const V &z, const TS &ts) |
virtual void | setSolveParameters (ParameterList &parlist) |
Set solve parameters. More... | |
virtual void | applyJacobian_uo (V &jv, const V &vo, const V &uo, const V &un, const V &z, const TS &ts) const |
virtual void | applyJacobian_un (V &jv, const V &vn, const V &uo, const V &un, const V &z, const TS &ts) const |
virtual void | applyJacobian_z (V &jv, const V &vz, const V &uo, const V &un, const V &z, const TS &ts) const |
virtual void | applyAdjointJacobian_uo (V &ajv, const V &dualv, const V &uo, const V &un, const V &z, const TS &ts) const |
virtual void | applyAdjointJacobian_un (V &ajv, const V &dualv, const V &uo, const V &un, const V &z, const TS &ts) const |
virtual void | applyAdjointJacobian_z (V &ajv, const V &dualv, const V &uo, const V &un, const V &z, const TS &ts) const |
virtual void | applyInverseJacobian_un (V &ijv, const V &vn, const V &uo, const V &un, const V &z, const TS &ts) const |
virtual void | applyInverseAdjointJacobian_un (V &iajv, const V &vn, const V &uo, const V &un, const V &z, const TS &ts) const |
virtual void | applyAdjointHessian_un_un (V &ahwv, const V &wn, const V &vn, const V &uo, const V &un, const V &z, const TS &ts) const |
virtual void | applyAdjointHessian_un_uo (V &ahwv, const V &w, const V &vn, const V &uo, const V &un, const V &z, const TS &ts) const |
virtual void | applyAdjointHessian_un_z (V &ahwv, const V &w, const V &vn, const V &uo, const V &un, const V &z, const TS &ts) const |
virtual void | applyAdjointHessian_uo_un (V &ahwv, const V &w, const V &vo, const V &uo, const V &un, const V &z, const TS &ts) const |
virtual void | applyAdjointHessian_uo_uo (V &ahwv, const V &w, const V &v, const V &uo, const V &un, const V &z, const TS &ts) const |
virtual void | applyAdjointHessian_uo_z (V &ahwv, const V &w, const V &vo, const V &uo, const V &un, const V &z, const TS &ts) const |
virtual void | applyAdjointHessian_z_un (V &ahwv, const V &w, const V &vz, const V &uo, const V &un, const V &z, const TS &ts) const |
virtual void | applyAdjointHessian_z_uo (V &ahwv, const V &w, const V &vz, const V &uo, const V &un, const V &z, const TS &ts) const |
virtual void | applyAdjointHessian_z_z (V &ahwv, const V &w, const V &vz, const V &uo, const V &un, const V &z, const TS &ts) const |
Public Member Functions inherited from ROL::DynamicFunction< Real > | |
DynamicFunction (std::initializer_list< std::string > zero_deriv_terms={}) | |
virtual | ~DynamicFunction () |
virtual void | update_uo (const V &x, const TS &ts) |
virtual void | update_un (const V &x, const TS &ts) |
virtual void | update_z (const V &x, const TS &ts) |
bool | is_zero_derivative (const std::string &key) |
Private Attributes | |
Ptr< Vector< Real > > | unew_ |
Ptr< Vector< Real > > | jv_ |
const Real | DEFAULT_atol_ |
const Real | DEFAULT_rtol_ |
const Real | DEFAULT_stol_ |
const Real | DEFAULT_factor_ |
const Real | DEFAULT_decr_ |
const int | DEFAULT_maxit_ |
const bool | DEFAULT_print_ |
const bool | DEFAULT_zero_ |
const int | DEFAULT_solverType_ |
Real | atol_ |
Real | rtol_ |
Real | stol_ |
Real | factor_ |
Real | decr_ |
int | maxit_ |
bool | print_ |
bool | zero_ |
int | solverType_ |
bool | firstSolve_ |
Additional Inherited Members | |
Protected Member Functions inherited from ROL::DynamicFunction< Real > | |
VectorWorkspace< Real > & | getVectorWorkspace () const |
PV & | partition (V &x) const |
const PV & | partition (const V &x) const |
V & | getNew (V &x) const |
const V & | getNew (const V &x) const |
V & | getOld (V &x) const |
const V & | getOld (const V &x) const |
Defines the time-dependent constraint operator interface for simulation-based optimization.
This constraint interface inherits from ROL_Constraint_SimOpt. Though the interface takes two simulation space vectors from spaces \(\mathcal{U_o}\times\mathcal{U_n}\). The space \(\mathcal{U_o}\) is old'' information that accounts for the initial condition on the time interval. The space \form#134 is the
new'' variables that can be determined by satisfying constraints in the form
\[ c(u_o,u_n,z,t_o,t_n) = 0 \,. \]
Definition at line 24 of file ROL_DynamicConstraint.hpp.
using ROL::DynamicConstraint< Real >::V = Vector<Real> |
Definition at line 86 of file ROL_DynamicConstraint.hpp.
using ROL::DynamicConstraint< Real >::PV = PartitionedVector<Real> |
Definition at line 87 of file ROL_DynamicConstraint.hpp.
using ROL::DynamicConstraint< Real >::TS = TimeStamp<Real> |
Definition at line 88 of file ROL_DynamicConstraint.hpp.
|
inlinevirtual |
Definition at line 90 of file ROL_DynamicConstraint.hpp.
|
inline |
Definition at line 92 of file ROL_DynamicConstraint.hpp.
|
inlinevirtual |
Definition at line 118 of file ROL_DynamicConstraint.hpp.
References ROL::DynamicFunction< Real >::update_un(), ROL::DynamicFunction< Real >::update_uo(), and ROL::DynamicFunction< Real >::update_z().
Referenced by ROL::DynamicConstraint< Real >::solve().
|
pure virtual |
Referenced by ROL::DynamicConstraint< Real >::solve().
|
inlinevirtual |
Definition at line 131 of file ROL_DynamicConstraint.hpp.
References ROL::DynamicConstraint< Real >::applyInverseJacobian_un(), ROL::DynamicConstraint< Real >::atol_, ROL::Vector< Real >::clone(), ROL::DynamicConstraint< Real >::decr_, ROL::Vector< Real >::dual(), ROL::DynamicConstraint< Real >::factor_, ROL::DynamicConstraint< Real >::firstSolve_, ROL::DynamicConstraint< Real >::jv_, ROL::details::makeStreamPtr(), ROL::DynamicConstraint< Real >::maxit_, ROL::Vector< Real >::norm(), ROL::DynamicConstraint< Real >::print_, ROL::DynamicConstraint< Real >::rtol_, ROL::Vector< Real >::set(), ROL::DynamicConstraint< Real >::solverType_, ROL::DynamicConstraint< Real >::stol_, ROL::DynamicConstraint< Real >::unew_, ROL::DynamicConstraint< Real >::update(), ROL::DynamicConstraint< Real >::value(), ROL::Vector< Real >::zero(), and ROL::DynamicConstraint< Real >::zero_.
|
inlinevirtual |
Set solve parameters.
[in] | parlist | ParameterList containing solve parameters |
For the default implementation, parlist has two sublist ("Dynamic Constraint" and "Solve") and the "Solve" sublist has six input parameters.
These parameters are accessed as parlist.sublist("SimOpt").sublist("Solve").get(...).
Definition at line 249 of file ROL_DynamicConstraint.hpp.
References ROL::DynamicConstraint< Real >::atol_, ROL::DynamicConstraint< Real >::decr_, ROL::DynamicConstraint< Real >::DEFAULT_atol_, ROL::DynamicConstraint< Real >::DEFAULT_decr_, ROL::DynamicConstraint< Real >::DEFAULT_factor_, ROL::DynamicConstraint< Real >::DEFAULT_maxit_, ROL::DynamicConstraint< Real >::DEFAULT_print_, ROL::DynamicConstraint< Real >::DEFAULT_rtol_, ROL::DynamicConstraint< Real >::DEFAULT_solverType_, ROL::DynamicConstraint< Real >::DEFAULT_stol_, ROL::DynamicConstraint< Real >::DEFAULT_zero_, ROL::DynamicConstraint< Real >::factor_, ROL::DynamicConstraint< Real >::maxit_, ROL::DynamicConstraint< Real >::print_, ROL::DynamicConstraint< Real >::rtol_, ROL::DynamicConstraint< Real >::solverType_, ROL::DynamicConstraint< Real >::stol_, and ROL::DynamicConstraint< Real >::zero_.
|
inlinevirtual |
Definition at line 264 of file ROL_DynamicConstraint.hpp.
|
inlinevirtual |
Definition at line 268 of file ROL_DynamicConstraint.hpp.
|
inlinevirtual |
Definition at line 272 of file ROL_DynamicConstraint.hpp.
|
inlinevirtual |
Definition at line 278 of file ROL_DynamicConstraint.hpp.
|
inlinevirtual |
Definition at line 282 of file ROL_DynamicConstraint.hpp.
|
inlinevirtual |
Definition at line 286 of file ROL_DynamicConstraint.hpp.
|
inlinevirtual |
Definition at line 292 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::solve().
|
inlinevirtual |
Definition at line 296 of file ROL_DynamicConstraint.hpp.
|
inlinevirtual |
Definition at line 302 of file ROL_DynamicConstraint.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Definition at line 308 of file ROL_DynamicConstraint.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Definition at line 314 of file ROL_DynamicConstraint.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Definition at line 320 of file ROL_DynamicConstraint.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Definition at line 326 of file ROL_DynamicConstraint.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Definition at line 332 of file ROL_DynamicConstraint.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Definition at line 338 of file ROL_DynamicConstraint.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Definition at line 344 of file ROL_DynamicConstraint.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Definition at line 350 of file ROL_DynamicConstraint.hpp.
References ROL::Vector< Real >::zero().
|
private |
Definition at line 56 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::solve().
|
private |
Definition at line 57 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::solve().
|
private |
Definition at line 60 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::setSolveParameters().
|
private |
Definition at line 61 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::setSolveParameters().
|
private |
Definition at line 62 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::setSolveParameters().
|
private |
Definition at line 63 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::setSolveParameters().
|
private |
Definition at line 64 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::setSolveParameters().
|
private |
Definition at line 65 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::setSolveParameters().
|
private |
Definition at line 66 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::setSolveParameters().
|
private |
Definition at line 67 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::setSolveParameters().
|
private |
Definition at line 68 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::setSolveParameters().
|
private |
Definition at line 71 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::setSolveParameters(), and ROL::DynamicConstraint< Real >::solve().
|
private |
Definition at line 72 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::setSolveParameters(), and ROL::DynamicConstraint< Real >::solve().
|
private |
Definition at line 73 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::setSolveParameters(), and ROL::DynamicConstraint< Real >::solve().
|
private |
Definition at line 74 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::setSolveParameters(), and ROL::DynamicConstraint< Real >::solve().
|
private |
Definition at line 75 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::setSolveParameters(), and ROL::DynamicConstraint< Real >::solve().
|
private |
Definition at line 76 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::setSolveParameters(), and ROL::DynamicConstraint< Real >::solve().
|
private |
Definition at line 77 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::setSolveParameters(), and ROL::DynamicConstraint< Real >::solve().
|
private |
Definition at line 78 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::setSolveParameters(), and ROL::DynamicConstraint< Real >::solve().
|
private |
Definition at line 79 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::setSolveParameters(), and ROL::DynamicConstraint< Real >::solve().
|
private |
Definition at line 82 of file ROL_DynamicConstraint.hpp.
Referenced by ROL::DynamicConstraint< Real >::solve().