ROL
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
EqualityConstraint_BurgersControl< Real > Class Template Reference

#include <test_04.hpp>

+ Inheritance diagram for EqualityConstraint_BurgersControl< Real >:

Public Member Functions

 EqualityConstraint_BurgersControl (const Teuchos::RCP< BurgersFEM< Real > > &fem, const bool useHessian=true)
 
void value (ROL::Vector< Real > &c, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Evaluate the constraint operator \(c:\mathcal{U}\times\mathcal{Z} \rightarrow \mathcal{C}\) at \((u,z)\). More...
 
void applyJacobian_1 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the partial constraint Jacobian at \((u,z)\), \(c_u(u,z) \in L(\mathcal{U}, \mathcal{C})\), to the vector \(v\). More...
 
void applyJacobian_2 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the partial constraint Jacobian at \((u,z)\), \(c_z(u,z) \in L(\mathcal{Z}, \mathcal{C})\), to the vector \(v\). More...
 
void applyInverseJacobian_1 (ROL::Vector< Real > &ijv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the inverse partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-1} \in L(\mathcal{C}, \mathcal{U})\), to the vector \(v\). More...
 
void applyAdjointJacobian_1 (ROL::Vector< Real > &ajv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^* \in L(\mathcal{C}^*, \mathcal{U}^*)\), to the vector \(v\). This is the primary interface. More...
 
void applyAdjointJacobian_2 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_z(u,z)^* \in L(\mathcal{C}^*, \mathcal{Z}^*)\), to vector \(v\). This is the primary interface. More...
 
void applyInverseAdjointJacobian_1 (ROL::Vector< Real > &iajv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the inverse of the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-*} \in L(\mathcal{U}^*, \mathcal{C}^*)\), to the vector \(v\). More...
 
void applyAdjointHessian_11 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_12 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_21 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_22 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\). More...
 
 EqualityConstraint_BurgersControl (int nx=128, Real nu=1.e-2, Real u0=1.0, Real u1=0.0, Real f=0.0)
 
void value (ROL::Vector< Real > &c, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Evaluate the constraint operator \(c:\mathcal{U}\times\mathcal{Z} \rightarrow \mathcal{C}\) at \((u,z)\). More...
 
void applyJacobian_1 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the partial constraint Jacobian at \((u,z)\), \(c_u(u,z) \in L(\mathcal{U}, \mathcal{C})\), to the vector \(v\). More...
 
void applyJacobian_2 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the partial constraint Jacobian at \((u,z)\), \(c_z(u,z) \in L(\mathcal{Z}, \mathcal{C})\), to the vector \(v\). More...
 
void applyInverseJacobian_1 (ROL::Vector< Real > &ijv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the inverse partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-1} \in L(\mathcal{C}, \mathcal{U})\), to the vector \(v\). More...
 
void applyAdjointJacobian_1 (ROL::Vector< Real > &ajv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^* \in L(\mathcal{C}^*, \mathcal{U}^*)\), to the vector \(v\). This is the primary interface. More...
 
void applyAdjointJacobian_2 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_z(u,z)^* \in L(\mathcal{C}^*, \mathcal{Z}^*)\), to vector \(v\). This is the primary interface. More...
 
void applyInverseAdjointJacobian_1 (ROL::Vector< Real > &iajv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the inverse of the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-*} \in L(\mathcal{U}^*, \mathcal{C}^*)\), to the vector \(v\). More...
 
void applyAdjointHessian_11 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_12 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_21 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_22 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\). More...
 
 EqualityConstraint_BurgersControl (int nx=128, int nt=100, Real T=1, Real nu=1.e-2, Real u0=0.0, Real u1=0.0, Real f=0.0)
 
void value (ROL::Vector< Real > &c, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Evaluate the constraint operator \(c:\mathcal{U}\times\mathcal{Z} \rightarrow \mathcal{C}\) at \((u,z)\). More...
 
void solve (ROL::Vector< Real > &c, ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Given \(z\), solve \(c(u,z)=0\) for \(u\). More...
 
void applyJacobian_1 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the partial constraint Jacobian at \((u,z)\), \(c_u(u,z) \in L(\mathcal{U}, \mathcal{C})\), to the vector \(v\). More...
 
void applyJacobian_2 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the partial constraint Jacobian at \((u,z)\), \(c_z(u,z) \in L(\mathcal{Z}, \mathcal{C})\), to the vector \(v\). More...
 
void applyInverseJacobian_1 (ROL::Vector< Real > &ijv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the inverse partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-1} \in L(\mathcal{C}, \mathcal{U})\), to the vector \(v\). More...
 
void applyAdjointJacobian_1 (ROL::Vector< Real > &ajv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^* \in L(\mathcal{C}^*, \mathcal{U}^*)\), to the vector \(v\). This is the primary interface. More...
 
void applyAdjointJacobian_2 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_z(u,z)^* \in L(\mathcal{C}^*, \mathcal{Z}^*)\), to vector \(v\). This is the primary interface. More...
 
void applyInverseAdjointJacobian_1 (ROL::Vector< Real > &ijv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the inverse of the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-*} \in L(\mathcal{U}^*, \mathcal{C}^*)\), to the vector \(v\). More...
 
void applyAdjointHessian_11 (ROL::Vector< Real > &hwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_12 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_21 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_22 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\). More...
 
 EqualityConstraint_BurgersControl (Teuchos::RCP< BurgersFEM< Real > > &fem, bool useHessian=true)
 
void value (ROL::Vector< Real > &c, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Evaluate the constraint operator \(c:\mathcal{U}\times\mathcal{Z} \rightarrow \mathcal{C}\) at \((u,z)\). More...
 
void applyJacobian_1 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the partial constraint Jacobian at \((u,z)\), \(c_u(u,z) \in L(\mathcal{U}, \mathcal{C})\), to the vector \(v\). More...
 
void applyJacobian_2 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the partial constraint Jacobian at \((u,z)\), \(c_z(u,z) \in L(\mathcal{Z}, \mathcal{C})\), to the vector \(v\). More...
 
void applyInverseJacobian_1 (ROL::Vector< Real > &ijv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the inverse partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-1} \in L(\mathcal{C}, \mathcal{U})\), to the vector \(v\). More...
 
void applyAdjointJacobian_1 (ROL::Vector< Real > &ajv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^* \in L(\mathcal{C}^*, \mathcal{U}^*)\), to the vector \(v\). This is the primary interface. More...
 
void applyAdjointJacobian_2 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_z(u,z)^* \in L(\mathcal{C}^*, \mathcal{Z}^*)\), to vector \(v\). This is the primary interface. More...
 
void applyInverseAdjointJacobian_1 (ROL::Vector< Real > &iajv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the inverse of the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-*} \in L(\mathcal{U}^*, \mathcal{C}^*)\), to the vector \(v\). More...
 
void applyAdjointHessian_11 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_12 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_21 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_22 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\). More...
 
 EqualityConstraint_BurgersControl (int nx=128)
 
void value (ROL::Vector< Real > &c, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Evaluate the constraint operator \(c:\mathcal{U}\times\mathcal{Z} \rightarrow \mathcal{C}\) at \((u,z)\). More...
 
void solve (ROL::Vector< Real > &c, ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Given \(z\), solve \(c(u,z)=0\) for \(u\). More...
 
void applyJacobian_1 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the partial constraint Jacobian at \((u,z)\), \(c_u(u,z) \in L(\mathcal{U}, \mathcal{C})\), to the vector \(v\). More...
 
void applyJacobian_2 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the partial constraint Jacobian at \((u,z)\), \(c_z(u,z) \in L(\mathcal{Z}, \mathcal{C})\), to the vector \(v\). More...
 
void applyInverseJacobian_1 (ROL::Vector< Real > &ijv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the inverse partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-1} \in L(\mathcal{C}, \mathcal{U})\), to the vector \(v\). More...
 
void applyAdjointJacobian_1 (ROL::Vector< Real > &ajv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^* \in L(\mathcal{C}^*, \mathcal{U}^*)\), to the vector \(v\). This is the primary interface. More...
 
void applyAdjointJacobian_2 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_z(u,z)^* \in L(\mathcal{C}^*, \mathcal{Z}^*)\), to vector \(v\). This is the primary interface. More...
 
void applyInverseAdjointJacobian_1 (ROL::Vector< Real > &iajv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the inverse of the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-*} \in L(\mathcal{U}^*, \mathcal{C}^*)\), to the vector \(v\). More...
 
void applyAdjointHessian_11 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_12 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_21 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_22 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\). More...
 
 EqualityConstraint_BurgersControl (Teuchos::RCP< BurgersFEM< Real > > &fem, bool useHessian=true)
 
void value (ROL::Vector< Real > &c, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Evaluate the constraint operator \(c:\mathcal{U}\times\mathcal{Z} \rightarrow \mathcal{C}\) at \((u,z)\). More...
 
void applyJacobian_1 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the partial constraint Jacobian at \((u,z)\), \(c_u(u,z) \in L(\mathcal{U}, \mathcal{C})\), to the vector \(v\). More...
 
void applyJacobian_2 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the partial constraint Jacobian at \((u,z)\), \(c_z(u,z) \in L(\mathcal{Z}, \mathcal{C})\), to the vector \(v\). More...
 
void applyInverseJacobian_1 (ROL::Vector< Real > &ijv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the inverse partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-1} \in L(\mathcal{C}, \mathcal{U})\), to the vector \(v\). More...
 
void applyAdjointJacobian_1 (ROL::Vector< Real > &ajv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^* \in L(\mathcal{C}^*, \mathcal{U}^*)\), to the vector \(v\). This is the primary interface. More...
 
void applyAdjointJacobian_2 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_z(u,z)^* \in L(\mathcal{C}^*, \mathcal{Z}^*)\), to vector \(v\). This is the primary interface. More...
 
void applyInverseAdjointJacobian_1 (ROL::Vector< Real > &iajv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the inverse of the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-*} \in L(\mathcal{U}^*, \mathcal{C}^*)\), to the vector \(v\). More...
 
void applyAdjointHessian_11 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_12 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_21 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_22 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\). More...
 
 EqualityConstraint_BurgersControl (Teuchos::RCP< BurgersFEM< Real > > &fem, bool useHessian=true)
 
void value (ROL::Vector< Real > &c, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Evaluate the constraint operator \(c:\mathcal{U}\times\mathcal{Z} \rightarrow \mathcal{C}\) at \((u,z)\). More...
 
void applyJacobian_1 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the partial constraint Jacobian at \((u,z)\), \(c_u(u,z) \in L(\mathcal{U}, \mathcal{C})\), to the vector \(v\). More...
 
void applyJacobian_2 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the partial constraint Jacobian at \((u,z)\), \(c_z(u,z) \in L(\mathcal{Z}, \mathcal{C})\), to the vector \(v\). More...
 
void applyInverseJacobian_1 (ROL::Vector< Real > &ijv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the inverse partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-1} \in L(\mathcal{C}, \mathcal{U})\), to the vector \(v\). More...
 
void applyAdjointJacobian_1 (ROL::Vector< Real > &ajv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^* \in L(\mathcal{C}^*, \mathcal{U}^*)\), to the vector \(v\). This is the primary interface. More...
 
void applyAdjointJacobian_2 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_z(u,z)^* \in L(\mathcal{C}^*, \mathcal{Z}^*)\), to vector \(v\). This is the primary interface. More...
 
void applyInverseAdjointJacobian_1 (ROL::Vector< Real > &iajv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the inverse of the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-*} \in L(\mathcal{U}^*, \mathcal{C}^*)\), to the vector \(v\). More...
 
void applyAdjointHessian_11 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_12 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_21 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_22 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\). More...
 
 EqualityConstraint_BurgersControl (Teuchos::RCP< BurgersFEM< Real > > &fem, bool useHessian=true)
 
void value (ROL::Vector< Real > &c, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Evaluate the constraint operator \(c:\mathcal{U}\times\mathcal{Z} \rightarrow \mathcal{C}\) at \((u,z)\). More...
 
void applyJacobian_1 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the partial constraint Jacobian at \((u,z)\), \(c_u(u,z) \in L(\mathcal{U}, \mathcal{C})\), to the vector \(v\). More...
 
void applyJacobian_2 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the partial constraint Jacobian at \((u,z)\), \(c_z(u,z) \in L(\mathcal{Z}, \mathcal{C})\), to the vector \(v\). More...
 
void applyInverseJacobian_1 (ROL::Vector< Real > &ijv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the inverse partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-1} \in L(\mathcal{C}, \mathcal{U})\), to the vector \(v\). More...
 
void applyAdjointJacobian_1 (ROL::Vector< Real > &ajv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^* \in L(\mathcal{C}^*, \mathcal{U}^*)\), to the vector \(v\). This is the primary interface. More...
 
void applyAdjointJacobian_2 (ROL::Vector< Real > &jv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_z(u,z)^* \in L(\mathcal{C}^*, \mathcal{Z}^*)\), to vector \(v\). This is the primary interface. More...
 
void applyInverseAdjointJacobian_1 (ROL::Vector< Real > &iajv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the inverse of the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-*} \in L(\mathcal{U}^*, \mathcal{C}^*)\), to the vector \(v\). More...
 
void applyAdjointHessian_11 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_12 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_21 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\). More...
 
void applyAdjointHessian_22 (ROL::Vector< Real > &ahwv, const ROL::Vector< Real > &w, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol)
 Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\). More...
 
- Public Member Functions inherited from ROL::ParametrizedEqualityConstraint_SimOpt< Real >
 ParametrizedEqualityConstraint_SimOpt ()
 
 ParametrizedEqualityConstraint_SimOpt (const Vector< Real > &c)
 
virtual void setParameter (const std::vector< Real > &param)
 
virtual void update (const Vector< Real > &u, const Vector< Real > &z, bool flag=true, int iter=-1)
 Update constraint functions. x is the optimization variable, flag = true if optimization variable is changed, iter is the outer algorithm iterations count. More...
 
- Public Member Functions inherited from ROL::EqualityConstraint_SimOpt< Real >
 EqualityConstraint_SimOpt ()
 
virtual void setSolveParameters (Teuchos::ParameterList &parlist)
 Set solve parameters. More...
 
virtual void applyAdjointJacobian_1 (Vector< Real > &ajv, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &dualv, Real &tol)
 Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^* \in L(\mathcal{C}^*, \mathcal{U}^*)\), to the vector \(v\). This is the secondary interface, for use with dual spaces where the user does not define the dual() operation. More...
 
virtual void applyAdjointJacobian_2 (Vector< Real > &ajv, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &dualv, Real &tol)
 Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_z(u,z)^* \in L(\mathcal{C}^*, \mathcal{Z}^*)\), to vector \(v\). This is the secondary interface, for use with dual spaces where the user does not define the dual() operation. More...
 
virtual std::vector< Real > solveAugmentedSystem (Vector< Real > &v1, Vector< Real > &v2, const Vector< Real > &b1, const Vector< Real > &b2, const Vector< Real > &x, Real &tol)
 Approximately solves the augmented system

\[ \begin{pmatrix} I & c'(x)^* \\ c'(x) & 0 \end{pmatrix} \begin{pmatrix} v_{1} \\ v_{2} \end{pmatrix} = \begin{pmatrix} b_{1} \\ b_{2} \end{pmatrix} \]

where \(v_{1} \in \mathcal{X}\), \(v_{2} \in \mathcal{C}^*\), \(b_{1} \in \mathcal{X}^*\), \(b_{2} \in \mathcal{C}\), \(I : \mathcal{X} \rightarrow \mathcal{X}^*\) is an identity operator, and \(0 : \mathcal{C}^* \rightarrow \mathcal{C}\) is a zero operator. More...

 
virtual void applyPreconditioner (Vector< Real > &pv, const Vector< Real > &v, const Vector< Real > &x, const Vector< Real > &g, Real &tol)
 Apply a constraint preconditioner at \(x\), \(P(x) \in L(\mathcal{C}, \mathcal{C})\), to vector \(v\). In general, this preconditioner satisfies the following relationship:

\[ c'(x) c'(x)^* P(x) v \approx v \,. \]

It is used by the solveAugmentedSystem method. More...

 
virtual void update (const Vector< Real > &x, bool flag=true, int iter=-1)
 Update constraint functions. x is the optimization variable, flag = true if optimization variable is changed, iter is the outer algorithm iterations count. More...
 
virtual bool isFeasible (const Vector< Real > &v)
 Check if the vector, v, is feasible. More...
 
virtual void value (Vector< Real > &c, const Vector< Real > &x, Real &tol)
 Evaluate the constraint operator \(c:\mathcal{X} \rightarrow \mathcal{C}\) at \(x\). More...
 
virtual void applyJacobian (Vector< Real > &jv, const Vector< Real > &v, const Vector< Real > &x, Real &tol)
 Apply the constraint Jacobian at \(x\), \(c'(x) \in L(\mathcal{X}, \mathcal{C})\), to vector \(v\). More...
 
virtual void applyAdjointJacobian (Vector< Real > &ajv, const Vector< Real > &v, const Vector< Real > &x, Real &tol)
 Apply the adjoint of the the constraint Jacobian at \(x\), \(c'(x)^* \in L(\mathcal{C}^*, \mathcal{X}^*)\), to vector \(v\). More...
 
virtual void applyAdjointHessian (Vector< Real > &ahwv, const Vector< Real > &w, const Vector< Real > &v, const Vector< Real > &x, Real &tol)
 Apply the derivative of the adjoint of the constraint Jacobian at \(x\) to vector \(u\) in direction \(v\), according to \( v \mapsto c''(x)(v,\cdot)^*u \). More...
 
virtual Real checkSolve (const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, const ROL::Vector< Real > &c, const bool printToStream=true, std::ostream &outStream=std::cout)
 
virtual Real checkAdjointConsistencyJacobian_1 (const Vector< Real > &w, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, const bool printToStream=true, std::ostream &outStream=std::cout)
 Check the consistency of the Jacobian and its adjoint. This is the primary interface. More...
 
virtual Real checkAdjointConsistencyJacobian_1 (const Vector< Real > &w, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &dualw, const Vector< Real > &dualv, const bool printToStream=true, std::ostream &outStream=std::cout)
 Check the consistency of the Jacobian and its adjoint. This is the secondary interface, for use with dual spaces where the user does not define the dual() operation. More...
 
virtual Real checkAdjointConsistencyJacobian_2 (const Vector< Real > &w, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, const bool printToStream=true, std::ostream &outStream=std::cout)
 Check the consistency of the Jacobian and its adjoint. This is the primary interface. More...
 
virtual Real checkAdjointConsistencyJacobian_2 (const Vector< Real > &w, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &dualw, const Vector< Real > &dualv, const bool printToStream=true, std::ostream &outStream=std::cout)
 Check the consistency of the Jacobian and its adjoint. This is the secondary interface, for use with dual spaces where the user does not define the dual() operation. More...
 
virtual Real checkInverseJacobian_1 (const Vector< Real > &jv, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, const bool printToStream=true, std::ostream &outStream=std::cout)
 
virtual Real checkInverseAdjointJacobian_1 (const Vector< Real > &jv, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, const bool printToStream=true, std::ostream &outStream=std::cout)
 
- Public Member Functions inherited from ROL::EqualityConstraint< Real >
virtual ~EqualityConstraint ()
 
virtual void applyAdjointJacobian (Vector< Real > &ajv, const Vector< Real > &v, const Vector< Real > &x, const Vector< Real > &dualv, Real &tol)
 Apply the adjoint of the the constraint Jacobian at \(x\), \(c'(x)^* \in L(\mathcal{C}^*, \mathcal{X}^*)\), to vector \(v\). More...
 
 EqualityConstraint (void)
 
void activate (void)
 Turn on constraints. More...
 
void deactivate (void)
 Turn off constraints. More...
 
bool isActivated (void)
 Check if constraints are on. More...
 
virtual std::vector< std::vector< Real > > checkApplyJacobian (const Vector< Real > &x, const Vector< Real > &v, const Vector< Real > &jv, const std::vector< Real > &steps, const bool printToStream=true, std::ostream &outStream=std::cout, const int order=1)
 Finite-difference check for the constraint Jacobian application. More...
 
virtual std::vector< std::vector< Real > > checkApplyJacobian (const Vector< Real > &x, const Vector< Real > &v, const Vector< Real > &jv, const bool printToStream=true, std::ostream &outStream=std::cout, const int numSteps=ROL_NUM_CHECKDERIV_STEPS, const int order=1)
 Finite-difference check for the constraint Jacobian application. More...
 
virtual std::vector< std::vector< Real > > checkApplyAdjointJacobian (const Vector< Real > &x, const Vector< Real > &v, const Vector< Real > &c, const Vector< Real > &ajv, const bool printToStream=true, std::ostream &outStream=std::cout, const int numSteps=ROL_NUM_CHECKDERIV_STEPS)
 Finite-difference check for the application of the adjoint of constraint Jacobian. More...
 
virtual Real checkAdjointConsistencyJacobian (const Vector< Real > &w, const Vector< Real > &v, const Vector< Real > &x, const bool printToStream=true, std::ostream &outStream=std::cout)
 
virtual Real checkAdjointConsistencyJacobian (const Vector< Real > &w, const Vector< Real > &v, const Vector< Real > &x, const Vector< Real > &dualw, const Vector< Real > &dualv, const bool printToStream=true, std::ostream &outStream=std::cout)
 
virtual std::vector< std::vector< Real > > checkApplyAdjointHessian (const Vector< Real > &x, const Vector< Real > &u, const Vector< Real > &v, const Vector< Real > &hv, const std::vector< Real > &step, const bool printToScreen=true, std::ostream &outStream=std::cout, const int order=1)
 Finite-difference check for the application of the adjoint of constraint Hessian. More...
 
virtual std::vector< std::vector< Real > > checkApplyAdjointHessian (const Vector< Real > &x, const Vector< Real > &u, const Vector< Real > &v, const Vector< Real > &hv, const bool printToScreen=true, std::ostream &outStream=std::cout, const int numSteps=ROL_NUM_CHECKDERIV_STEPS, const int order=1)
 Finite-difference check for the application of the adjoint of constraint Hessian. More...
 

Private Types

typedef H1VectorPrimal< Real > PrimalStateVector
 
typedef H1VectorDual< Real > DualStateVector
 
typedef L2VectorPrimal< Real > PrimalControlVector
 
typedef L2VectorDual< Real > DualControlVector
 
typedef H1VectorDual< Real > PrimalConstraintVector
 
typedef H1VectorPrimal< Real > DualConstraintVector
 
typedef H1VectorPrimal< Real > PrimalStateVector
 
typedef H1VectorDual< Real > DualStateVector
 
typedef L2VectorPrimal< Real > PrimalControlVector
 
typedef L2VectorDual< Real > DualControlVector
 
typedef H1VectorDual< Real > PrimalConstraintVector
 
typedef H1VectorPrimal< Real > DualConstraintVector
 
typedef H1VectorPrimal< Real > PrimalStateVector
 
typedef H1VectorDual< Real > DualStateVector
 
typedef L2VectorPrimal< Real > PrimalControlVector
 
typedef L2VectorDual< Real > DualControlVector
 
typedef H1VectorDual< Real > PrimalConstraintVector
 
typedef H1VectorPrimal< Real > DualConstraintVector
 
typedef H1VectorPrimal< Real > PrimalStateVector
 
typedef H1VectorDual< Real > DualStateVector
 
typedef L2VectorPrimal< Real > PrimalControlVector
 
typedef L2VectorDual< Real > DualControlVector
 
typedef H1VectorDual< Real > PrimalConstraintVector
 
typedef H1VectorPrimal< Real > DualConstraintVector
 
typedef std::vector< Real >::size_type uint
 
typedef H1VectorPrimal< Real > PrimalStateVector
 
typedef H1VectorDual< Real > DualStateVector
 
typedef L2VectorPrimal< Real > PrimalControlVector
 
typedef L2VectorDual< Real > DualControlVector
 
typedef H1VectorDual< Real > PrimalConstraintVector
 
typedef H1VectorPrimal< Real > DualConstraintVector
 

Private Member Functions

Real compute_norm (const std::vector< Real > &r)
 
Real dot (const std::vector< Real > &x, const std::vector< Real > &y)
 
void update (std::vector< Real > &u, const std::vector< Real > &s, const Real alpha=1.0)
 
void scale (std::vector< Real > &u, const Real alpha=0.0)
 
void compute_residual (std::vector< Real > &r, const std::vector< Real > &u, const std::vector< Real > &z)
 
void compute_pde_jacobian (std::vector< Real > &dl, std::vector< Real > &d, std::vector< Real > &du, const std::vector< Real > &u)
 
void linear_solve (std::vector< Real > &u, std::vector< Real > &dl, std::vector< Real > &d, std::vector< Real > &du, const std::vector< Real > &r, const bool transpose=false)
 
Real compute_norm (const std::vector< Real > &r)
 
Real dot (const std::vector< Real > &x, const std::vector< Real > &y)
 
void update (std::vector< Real > &u, const std::vector< Real > &s, const Real alpha=1.0)
 
void scale (std::vector< Real > &u, const Real alpha=0.0)
 
void compute_residual (std::vector< Real > &r, const std::vector< Real > &uold, const std::vector< Real > &zold, const std::vector< Real > &unew, const std::vector< Real > &znew)
 
void compute_pde_jacobian (std::vector< Real > &dl, std::vector< Real > &d, std::vector< Real > &du, const std::vector< Real > &u)
 
void apply_pde_jacobian_new (std::vector< Real > &jv, const std::vector< Real > &v, const std::vector< Real > &u, bool adjoint=false)
 
void apply_pde_jacobian_old (std::vector< Real > &jv, const std::vector< Real > &v, const std::vector< Real > &u, bool adjoint=false)
 
void apply_pde_jacobian (std::vector< Real > &jv, const std::vector< Real > &vold, const std::vector< Real > &uold, const std::vector< Real > &vnew, const std::vector< Real > unew, bool adjoint=false)
 
void apply_pde_hessian (std::vector< Real > &hv, const std::vector< Real > &wold, const std::vector< Real > &vold, const std::vector< Real > &wnew, const std::vector< Real > &vnew)
 
void apply_control_jacobian (std::vector< Real > &jv, const std::vector< Real > &v, bool adjoint=false)
 
void run_newton (std::vector< Real > &u, const std::vector< Real > &znew, const std::vector< Real > &uold, const std::vector< Real > &zold)
 
void linear_solve (std::vector< Real > &u, const std::vector< Real > &dl, const std::vector< Real > &d, const std::vector< Real > &du, const std::vector< Real > &r, const bool transpose=false)
 
Real compute_norm (const std::vector< Real > &r)
 
Real dot (const std::vector< Real > &x, const std::vector< Real > &y)
 
void update (std::vector< Real > &u, const std::vector< Real > &s, const Real alpha=1.0)
 
void scale (std::vector< Real > &u, const Real alpha=0.0)
 
void compute_residual (std::vector< Real > &r, const std::vector< Real > &u, const std::vector< Real > &z)
 
void compute_pde_jacobian (std::vector< Real > &dl, std::vector< Real > &d, std::vector< Real > &du, const std::vector< Real > &u)
 
void linear_solve (std::vector< Real > &u, std::vector< Real > &dl, std::vector< Real > &d, std::vector< Real > &du, const std::vector< Real > &r, const bool transpose=false)
 

Private Attributes

Teuchos::RCP< BurgersFEM< Real > > fem_
 
bool useHessian_
 
int nx_
 
Real dx_
 
Real nu_
 
Real u0_
 
Real u1_
 
Real f_
 
unsigned nx_
 
unsigned nt_
 
Real T_
 
Real dt_
 
std::vector< Real > u_init_
 

Additional Inherited Members

- Protected Member Functions inherited from ROL::ParametrizedEqualityConstraint_SimOpt< Real >
const std::vector< Real > getParameter (void) const
 

Detailed Description

template<class Real>
class EqualityConstraint_BurgersControl< Real >

Definition at line 869 of file test_04.hpp.

Member Typedef Documentation

template<class Real>
typedef H1VectorPrimal<Real> EqualityConstraint_BurgersControl< Real >::PrimalStateVector
private

Definition at line 872 of file test_04.hpp.

template<class Real>
typedef H1VectorDual<Real> EqualityConstraint_BurgersControl< Real >::DualStateVector
private

Definition at line 873 of file test_04.hpp.

template<class Real>
typedef L2VectorPrimal<Real> EqualityConstraint_BurgersControl< Real >::PrimalControlVector
private

Definition at line 875 of file test_04.hpp.

template<class Real>
typedef L2VectorDual<Real> EqualityConstraint_BurgersControl< Real >::DualControlVector
private

Definition at line 876 of file test_04.hpp.

template<class Real>
typedef H1VectorDual<Real> EqualityConstraint_BurgersControl< Real >::PrimalConstraintVector
private

Definition at line 878 of file test_04.hpp.

template<class Real>
typedef H1VectorPrimal<Real> EqualityConstraint_BurgersControl< Real >::DualConstraintVector
private

Definition at line 879 of file test_04.hpp.

template<class Real>
typedef H1VectorPrimal<Real> EqualityConstraint_BurgersControl< Real >::PrimalStateVector
private

Definition at line 864 of file example_04.hpp.

template<class Real>
typedef H1VectorDual<Real> EqualityConstraint_BurgersControl< Real >::DualStateVector
private

Definition at line 865 of file example_04.hpp.

template<class Real>
typedef L2VectorPrimal<Real> EqualityConstraint_BurgersControl< Real >::PrimalControlVector
private

Definition at line 867 of file example_04.hpp.

template<class Real>
typedef L2VectorDual<Real> EqualityConstraint_BurgersControl< Real >::DualControlVector
private

Definition at line 868 of file example_04.hpp.

template<class Real>
typedef H1VectorDual<Real> EqualityConstraint_BurgersControl< Real >::PrimalConstraintVector
private

Definition at line 870 of file example_04.hpp.

template<class Real>
typedef H1VectorPrimal<Real> EqualityConstraint_BurgersControl< Real >::DualConstraintVector
private

Definition at line 871 of file example_04.hpp.

template<class Real>
typedef H1VectorPrimal<Real> EqualityConstraint_BurgersControl< Real >::PrimalStateVector
private

Definition at line 868 of file example_06.hpp.

template<class Real>
typedef H1VectorDual<Real> EqualityConstraint_BurgersControl< Real >::DualStateVector
private

Definition at line 869 of file example_06.hpp.

template<class Real>
typedef L2VectorPrimal<Real> EqualityConstraint_BurgersControl< Real >::PrimalControlVector
private

Definition at line 871 of file example_06.hpp.

template<class Real>
typedef L2VectorDual<Real> EqualityConstraint_BurgersControl< Real >::DualControlVector
private

Definition at line 872 of file example_06.hpp.

template<class Real>
typedef H1VectorDual<Real> EqualityConstraint_BurgersControl< Real >::PrimalConstraintVector
private

Definition at line 874 of file example_06.hpp.

template<class Real>
typedef H1VectorPrimal<Real> EqualityConstraint_BurgersControl< Real >::DualConstraintVector
private

Definition at line 875 of file example_06.hpp.

template<class Real>
typedef H1VectorPrimal<Real> EqualityConstraint_BurgersControl< Real >::PrimalStateVector
private

Definition at line 872 of file example_07.hpp.

template<class Real>
typedef H1VectorDual<Real> EqualityConstraint_BurgersControl< Real >::DualStateVector
private

Definition at line 873 of file example_07.hpp.

template<class Real>
typedef L2VectorPrimal<Real> EqualityConstraint_BurgersControl< Real >::PrimalControlVector
private

Definition at line 875 of file example_07.hpp.

template<class Real>
typedef L2VectorDual<Real> EqualityConstraint_BurgersControl< Real >::DualControlVector
private

Definition at line 876 of file example_07.hpp.

template<class Real>
typedef H1VectorDual<Real> EqualityConstraint_BurgersControl< Real >::PrimalConstraintVector
private

Definition at line 878 of file example_07.hpp.

template<class Real>
typedef H1VectorPrimal<Real> EqualityConstraint_BurgersControl< Real >::DualConstraintVector
private

Definition at line 879 of file example_07.hpp.

template<class Real>
typedef std::vector<Real>::size_type EqualityConstraint_BurgersControl< Real >::uint
private

Definition at line 881 of file example_07.hpp.

template<class Real>
typedef H1VectorPrimal<Real> EqualityConstraint_BurgersControl< Real >::PrimalStateVector
private

Definition at line 868 of file example_08.hpp.

template<class Real>
typedef H1VectorDual<Real> EqualityConstraint_BurgersControl< Real >::DualStateVector
private

Definition at line 869 of file example_08.hpp.

template<class Real>
typedef L2VectorPrimal<Real> EqualityConstraint_BurgersControl< Real >::PrimalControlVector
private

Definition at line 871 of file example_08.hpp.

template<class Real>
typedef L2VectorDual<Real> EqualityConstraint_BurgersControl< Real >::DualControlVector
private

Definition at line 872 of file example_08.hpp.

template<class Real>
typedef H1VectorDual<Real> EqualityConstraint_BurgersControl< Real >::PrimalConstraintVector
private

Definition at line 874 of file example_08.hpp.

template<class Real>
typedef H1VectorPrimal<Real> EqualityConstraint_BurgersControl< Real >::DualConstraintVector
private

Definition at line 875 of file example_08.hpp.

Constructor & Destructor Documentation

template<class Real>
EqualityConstraint_BurgersControl< Real >::EqualityConstraint_BurgersControl ( const Teuchos::RCP< BurgersFEM< Real > > &  fem,
const bool  useHessian = true 
)
inline

Definition at line 885 of file test_04.hpp.

template<class Real>
EqualityConstraint_BurgersControl< Real >::EqualityConstraint_BurgersControl ( int  nx = 128,
Real  nu = 1.e-2,
Real  u0 = 1.0,
Real  u1 = 0.0,
Real  f = 0.0 
)
inline

Definition at line 186 of file burgers-control/example_02.hpp.

template<class Real>
EqualityConstraint_BurgersControl< Real >::EqualityConstraint_BurgersControl ( int  nx = 128,
int  nt = 100,
Real  T = 1,
Real  nu = 1.e-2,
Real  u0 = 0.0,
Real  u1 = 0.0,
Real  f = 0.0 
)
inline
template<class Real>
EqualityConstraint_BurgersControl< Real >::EqualityConstraint_BurgersControl ( Teuchos::RCP< BurgersFEM< Real > > &  fem,
bool  useHessian = true 
)
inline

Definition at line 877 of file example_04.hpp.

template<class Real>
EqualityConstraint_BurgersControl< Real >::EqualityConstraint_BurgersControl ( int  nx = 128)
inline

Definition at line 191 of file example_05.hpp.

template<class Real>
EqualityConstraint_BurgersControl< Real >::EqualityConstraint_BurgersControl ( Teuchos::RCP< BurgersFEM< Real > > &  fem,
bool  useHessian = true 
)
inline

Definition at line 881 of file example_06.hpp.

template<class Real>
EqualityConstraint_BurgersControl< Real >::EqualityConstraint_BurgersControl ( Teuchos::RCP< BurgersFEM< Real > > &  fem,
bool  useHessian = true 
)
inline

Definition at line 887 of file example_07.hpp.

template<class Real>
EqualityConstraint_BurgersControl< Real >::EqualityConstraint_BurgersControl ( Teuchos::RCP< BurgersFEM< Real > > &  fem,
bool  useHessian = true 
)
inline

Definition at line 881 of file example_08.hpp.

Member Function Documentation

template<class Real>
void EqualityConstraint_BurgersControl< Real >::value ( ROL::Vector< Real > &  c,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Evaluate the constraint operator \(c:\mathcal{U}\times\mathcal{Z} \rightarrow \mathcal{C}\) at \((u,z)\).

Parameters
[out]cis the result of evaluating the constraint operator at \((u,z)\); a constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{c} = c(u,z)\), where \(\mathsf{c} \in \mathcal{C}\), \(\mathsf{u} \in \mathcal{U}\), and $ \(\mathsf{z} \in\mathcal{Z}\).


Implements ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 889 of file test_04.hpp.

Referenced by EqualityConstraint_BurgersControl< Real >::solve().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyJacobian_1 ( ROL::Vector< Real > &  jv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the partial constraint Jacobian at \((u,z)\), \(c_u(u,z) \in L(\mathcal{U}, \mathcal{C})\), to the vector \(v\).

Parameters
[out]jvis the result of applying the constraint Jacobian to v at \((u,z)\); a constraint-space vector
[in]vis a simulation-space vector
[in]uis the constraint argument; an simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{jv} = c_u(u,z)v\), where \(v \in \mathcal{U}\), \(\mathsf{jv} \in \mathcal{C}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 901 of file test_04.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyJacobian_2 ( ROL::Vector< Real > &  jv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the partial constraint Jacobian at \((u,z)\), \(c_z(u,z) \in L(\mathcal{Z}, \mathcal{C})\), to the vector \(v\).

Parameters
[out]jvis the result of applying the constraint Jacobian to v at \((u,z)\); a constraint-space vector
[in]vis an optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{jv} = c_z(u,z)v\), where \(v \in \mathcal{Z}\), \(\mathsf{jv} \in \mathcal{C}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 915 of file test_04.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyInverseJacobian_1 ( ROL::Vector< Real > &  ijv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the inverse partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-1} \in L(\mathcal{C}, \mathcal{U})\), to the vector \(v\).

Parameters
[out]ijvis the result of applying the inverse constraint Jacobian to v at \((u,z)\); a simulation-space vector
[in]vis a constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ijv} = c_u(u,z)^{-1}v\), where \(v \in \mathcal{C}\), \(\mathsf{ijv} \in \mathcal{U}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 929 of file test_04.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointJacobian_1 ( ROL::Vector< Real > &  ajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^* \in L(\mathcal{C}^*, \mathcal{U}^*)\), to the vector \(v\). This is the primary interface.

Parameters
[out]ajvis the result of applying the adjoint of the constraint Jacobian to v at (u,z); a dual simulation-space vector
[in]vis a dual constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ajv} = c_u(u,z)^*v\), where \(v \in \mathcal{C}^*\), \(\mathsf{ajv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 943 of file test_04.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointJacobian_2 ( ROL::Vector< Real > &  ajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_z(u,z)^* \in L(\mathcal{C}^*, \mathcal{Z}^*)\), to vector \(v\). This is the primary interface.

Parameters
[out]ajvis the result of applying the adjoint of the constraint Jacobian to v at \((u,z)\); a dual optimization-space vector
[in]vis a dual constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ajv} = c_z(u,z)^*v\), where \(v \in \mathcal{C}^*\), \(\mathsf{ajv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 957 of file test_04.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyInverseAdjointJacobian_1 ( ROL::Vector< Real > &  iajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the inverse of the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-*} \in L(\mathcal{U}^*, \mathcal{C}^*)\), to the vector \(v\).

Parameters
[out]iajvis the result of applying the inverse adjoint of the constraint Jacobian to v at (u,z); a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{iajv} = c_u(u,z)^{-*}v\), where \(v \in \mathcal{U}^*\), \(\mathsf{iajv} \in \mathcal{C}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 971 of file test_04.hpp.

Referenced by main().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_11 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual simulation-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{uu}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{U}^*\), and \(\mathsf{ahwv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 985 of file test_04.hpp.

References ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_12 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual optimization-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{uz}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{U}^*\), and \(\mathsf{ahwv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 1006 of file test_04.hpp.

References ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_21 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual simulation-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{zu}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{Z}^*\), and \(\mathsf{ahwv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 1026 of file test_04.hpp.

References ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_22 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual optimization-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{zz}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{Z}^*\), and \(\mathsf{ahwv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 1046 of file test_04.hpp.

References ROL::Vector< Real >::zero().

template<class Real>
Real EqualityConstraint_BurgersControl< Real >::compute_norm ( const std::vector< Real > &  r)
inlineprivate
template<class Real>
Real EqualityConstraint_BurgersControl< Real >::dot ( const std::vector< Real > &  x,
const std::vector< Real > &  y 
)
inlineprivate
template<class Real>
void EqualityConstraint_BurgersControl< Real >::update ( std::vector< Real > &  u,
const std::vector< Real > &  s,
const Real  alpha = 1.0 
)
inlineprivate
template<class Real>
void EqualityConstraint_BurgersControl< Real >::scale ( std::vector< Real > &  u,
const Real  alpha = 0.0 
)
inlineprivate

Definition at line 103 of file burgers-control/example_02.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::compute_residual ( std::vector< Real > &  r,
const std::vector< Real > &  u,
const std::vector< Real > &  z 
)
inlineprivate
template<class Real>
void EqualityConstraint_BurgersControl< Real >::compute_pde_jacobian ( std::vector< Real > &  dl,
std::vector< Real > &  d,
std::vector< Real > &  du,
const std::vector< Real > &  u 
)
inlineprivate
template<class Real>
void EqualityConstraint_BurgersControl< Real >::linear_solve ( std::vector< Real > &  u,
std::vector< Real > &  dl,
std::vector< Real > &  d,
std::vector< Real > &  du,
const std::vector< Real > &  r,
const bool  transpose = false 
)
inlineprivate
template<class Real>
void EqualityConstraint_BurgersControl< Real >::value ( ROL::Vector< Real > &  c,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Evaluate the constraint operator \(c:\mathcal{U}\times\mathcal{Z} \rightarrow \mathcal{C}\) at \((u,z)\).

Parameters
[out]cis the result of evaluating the constraint operator at \((u,z)\); a constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{c} = c(u,z)\), where \(\mathsf{c} \in \mathcal{C}\), \(\mathsf{u} \in \mathcal{U}\), and $ \(\mathsf{z} \in\mathcal{Z}\).


Implements ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 191 of file burgers-control/example_02.hpp.

References EqualityConstraint_BurgersControl< Real >::compute_residual().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyJacobian_1 ( ROL::Vector< Real > &  jv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the partial constraint Jacobian at \((u,z)\), \(c_u(u,z) \in L(\mathcal{U}, \mathcal{C})\), to the vector \(v\).

Parameters
[out]jvis the result of applying the constraint Jacobian to v at \((u,z)\); a constraint-space vector
[in]vis a simulation-space vector
[in]uis the constraint argument; an simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{jv} = c_u(u,z)v\), where \(v \in \mathcal{U}\), \(\mathsf{jv} \in \mathcal{C}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 202 of file burgers-control/example_02.hpp.

References EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyJacobian_2 ( ROL::Vector< Real > &  jv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the partial constraint Jacobian at \((u,z)\), \(c_z(u,z) \in L(\mathcal{Z}, \mathcal{C})\), to the vector \(v\).

Parameters
[out]jvis the result of applying the constraint Jacobian to v at \((u,z)\); a constraint-space vector
[in]vis an optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{jv} = c_z(u,z)v\), where \(v \in \mathcal{Z}\), \(\mathsf{jv} \in \mathcal{C}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 230 of file burgers-control/example_02.hpp.

References EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyInverseJacobian_1 ( ROL::Vector< Real > &  ijv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the inverse partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-1} \in L(\mathcal{C}, \mathcal{U})\), to the vector \(v\).

Parameters
[out]ijvis the result of applying the inverse constraint Jacobian to v at \((u,z)\); a simulation-space vector
[in]vis a constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ijv} = c_u(u,z)^{-1}v\), where \(v \in \mathcal{C}\), \(\mathsf{ijv} \in \mathcal{U}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 246 of file burgers-control/example_02.hpp.

References EqualityConstraint_BurgersControl< Real >::compute_pde_jacobian(), and EqualityConstraint_BurgersControl< Real >::linear_solve().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointJacobian_1 ( ROL::Vector< Real > &  ajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^* \in L(\mathcal{C}^*, \mathcal{U}^*)\), to the vector \(v\). This is the primary interface.

Parameters
[out]ajvis the result of applying the adjoint of the constraint Jacobian to v at (u,z); a dual simulation-space vector
[in]vis a dual constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ajv} = c_u(u,z)^*v\), where \(v \in \mathcal{C}^*\), \(\mathsf{ajv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 265 of file burgers-control/example_02.hpp.

References EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointJacobian_2 ( ROL::Vector< Real > &  ajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_z(u,z)^* \in L(\mathcal{C}^*, \mathcal{Z}^*)\), to vector \(v\). This is the primary interface.

Parameters
[out]ajvis the result of applying the adjoint of the constraint Jacobian to v at \((u,z)\); a dual optimization-space vector
[in]vis a dual constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ajv} = c_z(u,z)^*v\), where \(v \in \mathcal{C}^*\), \(\mathsf{ajv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 293 of file burgers-control/example_02.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyInverseAdjointJacobian_1 ( ROL::Vector< Real > &  iajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the inverse of the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-*} \in L(\mathcal{U}^*, \mathcal{C}^*)\), to the vector \(v\).

Parameters
[out]iajvis the result of applying the inverse adjoint of the constraint Jacobian to v at (u,z); a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{iajv} = c_u(u,z)^{-*}v\), where \(v \in \mathcal{U}^*\), \(\mathsf{iajv} \in \mathcal{C}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 322 of file burgers-control/example_02.hpp.

References EqualityConstraint_BurgersControl< Real >::compute_pde_jacobian(), and EqualityConstraint_BurgersControl< Real >::linear_solve().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_11 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual simulation-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{uu}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{U}^*\), and \(\mathsf{ahwv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 339 of file burgers-control/example_02.hpp.

References EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_12 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual optimization-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{uz}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{U}^*\), and \(\mathsf{ahwv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 363 of file burgers-control/example_02.hpp.

References ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_21 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual simulation-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{zu}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{Z}^*\), and \(\mathsf{ahwv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 367 of file burgers-control/example_02.hpp.

References ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_22 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual optimization-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{zz}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{Z}^*\), and \(\mathsf{ahwv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 371 of file burgers-control/example_02.hpp.

References EqualityConstraint_BurgersControl< Real >::dx_, EqualityConstraint_BurgersControl< Real >::nx_, and ROL::Vector< Real >::zero().

template<class Real>
Real EqualityConstraint_BurgersControl< Real >::compute_norm ( const std::vector< Real > &  r)
inlineprivate

Definition at line 84 of file example_03.hpp.

References EqualityConstraint_BurgersControl< Real >::dot().

template<class Real>
Real EqualityConstraint_BurgersControl< Real >::dot ( const std::vector< Real > &  x,
const std::vector< Real > &  y 
)
inlineprivate

Definition at line 88 of file example_03.hpp.

References EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::update ( std::vector< Real > &  u,
const std::vector< Real > &  s,
const Real  alpha = 1.0 
)
inlineprivate

Definition at line 105 of file example_03.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::scale ( std::vector< Real > &  u,
const Real  alpha = 0.0 
)
inlineprivate

Definition at line 111 of file example_03.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::compute_residual ( std::vector< Real > &  r,
const std::vector< Real > &  uold,
const std::vector< Real > &  zold,
const std::vector< Real > &  unew,
const std::vector< Real > &  znew 
)
inlineprivate
template<class Real>
void EqualityConstraint_BurgersControl< Real >::compute_pde_jacobian ( std::vector< Real > &  dl,
std::vector< Real > &  d,
std::vector< Real > &  du,
const std::vector< Real > &  u 
)
inlineprivate

Definition at line 153 of file example_03.hpp.

References EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::apply_pde_jacobian_new ( std::vector< Real > &  jv,
const std::vector< Real > &  v,
const std::vector< Real > &  u,
bool  adjoint = false 
)
inlineprivate

Definition at line 178 of file example_03.hpp.

References EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::apply_pde_jacobian_old ( std::vector< Real > &  jv,
const std::vector< Real > &  v,
const std::vector< Real > &  u,
bool  adjoint = false 
)
inlineprivate
template<class Real>
void EqualityConstraint_BurgersControl< Real >::apply_pde_jacobian ( std::vector< Real > &  jv,
const std::vector< Real > &  vold,
const std::vector< Real > &  uold,
const std::vector< Real > &  vnew,
const std::vector< Real >  unew,
bool  adjoint = false 
)
inlineprivate
template<class Real>
void EqualityConstraint_BurgersControl< Real >::apply_pde_hessian ( std::vector< Real > &  hv,
const std::vector< Real > &  wold,
const std::vector< Real > &  vold,
const std::vector< Real > &  wnew,
const std::vector< Real > &  vnew 
)
inlineprivate
template<class Real>
void EqualityConstraint_BurgersControl< Real >::apply_control_jacobian ( std::vector< Real > &  jv,
const std::vector< Real > &  v,
bool  adjoint = false 
)
inlineprivate
template<class Real>
void EqualityConstraint_BurgersControl< Real >::run_newton ( std::vector< Real > &  u,
const std::vector< Real > &  znew,
const std::vector< Real > &  uold,
const std::vector< Real > &  zold 
)
inlineprivate
template<class Real>
void EqualityConstraint_BurgersControl< Real >::linear_solve ( std::vector< Real > &  u,
const std::vector< Real > &  dl,
const std::vector< Real > &  d,
const std::vector< Real > &  du,
const std::vector< Real > &  r,
const bool  transpose = false 
)
inlineprivate
template<class Real>
void EqualityConstraint_BurgersControl< Real >::value ( ROL::Vector< Real > &  c,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Evaluate the constraint operator \(c:\mathcal{U}\times\mathcal{Z} \rightarrow \mathcal{C}\) at \((u,z)\).

Parameters
[out]cis the result of evaluating the constraint operator at \((u,z)\); a constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{c} = c(u,z)\), where \(\mathsf{c} \in \mathcal{C}\), \(\mathsf{u} \in \mathcal{U}\), and $ \(\mathsf{z} \in\mathcal{Z}\).


Implements ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 443 of file example_03.hpp.

References EqualityConstraint_BurgersControl< Real >::compute_residual(), EqualityConstraint_BurgersControl< Real >::nt_, and EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::solve ( ROL::Vector< Real > &  c,
ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Given \(z\), solve \(c(u,z)=0\) for \(u\).

Parameters
[out]cis the result of evaluating the constraint operator at \((u,z)\); a constraint-space vector
[in,out]uis the solution vector; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

The defualt implementation is Newton's method globalized with a backtracking line search.


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 482 of file example_03.hpp.

References ROL::Vector< Real >::norm(), EqualityConstraint_BurgersControl< Real >::nt_, EqualityConstraint_BurgersControl< Real >::nx_, EqualityConstraint_BurgersControl< Real >::run_newton(), and EqualityConstraint_BurgersControl< Real >::value().

Referenced by main().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyJacobian_1 ( ROL::Vector< Real > &  jv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the partial constraint Jacobian at \((u,z)\), \(c_u(u,z) \in L(\mathcal{U}, \mathcal{C})\), to the vector \(v\).

Parameters
[out]jvis the result of applying the constraint Jacobian to v at \((u,z)\); a constraint-space vector
[in]vis a simulation-space vector
[in]uis the constraint argument; an simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{jv} = c_u(u,z)v\), where \(v \in \mathcal{U}\), \(\mathsf{jv} \in \mathcal{C}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 516 of file example_03.hpp.

References EqualityConstraint_BurgersControl< Real >::apply_pde_jacobian(), EqualityConstraint_BurgersControl< Real >::nt_, and EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyJacobian_2 ( ROL::Vector< Real > &  jv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the partial constraint Jacobian at \((u,z)\), \(c_z(u,z) \in L(\mathcal{Z}, \mathcal{C})\), to the vector \(v\).

Parameters
[out]jvis the result of applying the constraint Jacobian to v at \((u,z)\); a constraint-space vector
[in]vis an optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{jv} = c_z(u,z)v\), where \(v \in \mathcal{Z}\), \(\mathsf{jv} \in \mathcal{C}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 543 of file example_03.hpp.

References EqualityConstraint_BurgersControl< Real >::apply_control_jacobian(), EqualityConstraint_BurgersControl< Real >::nt_, and EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyInverseJacobian_1 ( ROL::Vector< Real > &  ijv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the inverse partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-1} \in L(\mathcal{C}, \mathcal{U})\), to the vector \(v\).

Parameters
[out]ijvis the result of applying the inverse constraint Jacobian to v at \((u,z)\); a simulation-space vector
[in]vis a constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ijv} = c_u(u,z)^{-1}v\), where \(v \in \mathcal{C}\), \(\mathsf{ijv} \in \mathcal{U}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 572 of file example_03.hpp.

References EqualityConstraint_BurgersControl< Real >::apply_pde_jacobian_old(), EqualityConstraint_BurgersControl< Real >::compute_pde_jacobian(), EqualityConstraint_BurgersControl< Real >::linear_solve(), EqualityConstraint_BurgersControl< Real >::nt_, EqualityConstraint_BurgersControl< Real >::nx_, and EqualityConstraint_BurgersControl< Real >::update().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointJacobian_1 ( ROL::Vector< Real > &  ajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^* \in L(\mathcal{C}^*, \mathcal{U}^*)\), to the vector \(v\). This is the primary interface.

Parameters
[out]ajvis the result of applying the adjoint of the constraint Jacobian to v at (u,z); a dual simulation-space vector
[in]vis a dual constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ajv} = c_u(u,z)^*v\), where \(v \in \mathcal{C}^*\), \(\mathsf{ajv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 608 of file example_03.hpp.

References EqualityConstraint_BurgersControl< Real >::apply_pde_jacobian(), and EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointJacobian_2 ( ROL::Vector< Real > &  ajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_z(u,z)^* \in L(\mathcal{C}^*, \mathcal{Z}^*)\), to vector \(v\). This is the primary interface.

Parameters
[out]ajvis the result of applying the adjoint of the constraint Jacobian to v at \((u,z)\); a dual optimization-space vector
[in]vis a dual constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ajv} = c_z(u,z)^*v\), where \(v \in \mathcal{C}^*\), \(\mathsf{ajv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 633 of file example_03.hpp.

References EqualityConstraint_BurgersControl< Real >::apply_control_jacobian(), and EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyInverseAdjointJacobian_1 ( ROL::Vector< Real > &  iajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the inverse of the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-*} \in L(\mathcal{U}^*, \mathcal{C}^*)\), to the vector \(v\).

Parameters
[out]iajvis the result of applying the inverse adjoint of the constraint Jacobian to v at (u,z); a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{iajv} = c_u(u,z)^{-*}v\), where \(v \in \mathcal{U}^*\), \(\mathsf{iajv} \in \mathcal{C}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 663 of file example_03.hpp.

References EqualityConstraint_BurgersControl< Real >::apply_pde_jacobian_old(), EqualityConstraint_BurgersControl< Real >::compute_pde_jacobian(), EqualityConstraint_BurgersControl< Real >::linear_solve(), EqualityConstraint_BurgersControl< Real >::nx_, and EqualityConstraint_BurgersControl< Real >::update().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_11 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual simulation-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{uu}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{U}^*\), and \(\mathsf{ahwv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 697 of file example_03.hpp.

References EqualityConstraint_BurgersControl< Real >::apply_pde_hessian(), and EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_12 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual optimization-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{uz}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{U}^*\), and \(\mathsf{ahwv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 722 of file example_03.hpp.

References ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_21 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual simulation-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{zu}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{Z}^*\), and \(\mathsf{ahwv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 726 of file example_03.hpp.

References ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_22 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual optimization-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{zz}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{Z}^*\), and \(\mathsf{ahwv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 730 of file example_03.hpp.

References ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::value ( ROL::Vector< Real > &  c,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Evaluate the constraint operator \(c:\mathcal{U}\times\mathcal{Z} \rightarrow \mathcal{C}\) at \((u,z)\).

Parameters
[out]cis the result of evaluating the constraint operator at \((u,z)\); a constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{c} = c(u,z)\), where \(\mathsf{c} \in \mathcal{C}\), \(\mathsf{u} \in \mathcal{U}\), and $ \(\mathsf{z} \in\mathcal{Z}\).


Implements ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 880 of file example_04.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyJacobian_1 ( ROL::Vector< Real > &  jv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the partial constraint Jacobian at \((u,z)\), \(c_u(u,z) \in L(\mathcal{U}, \mathcal{C})\), to the vector \(v\).

Parameters
[out]jvis the result of applying the constraint Jacobian to v at \((u,z)\); a constraint-space vector
[in]vis a simulation-space vector
[in]uis the constraint argument; an simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{jv} = c_u(u,z)v\), where \(v \in \mathcal{U}\), \(\mathsf{jv} \in \mathcal{C}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 893 of file example_04.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyJacobian_2 ( ROL::Vector< Real > &  jv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the partial constraint Jacobian at \((u,z)\), \(c_z(u,z) \in L(\mathcal{Z}, \mathcal{C})\), to the vector \(v\).

Parameters
[out]jvis the result of applying the constraint Jacobian to v at \((u,z)\); a constraint-space vector
[in]vis an optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{jv} = c_z(u,z)v\), where \(v \in \mathcal{Z}\), \(\mathsf{jv} \in \mathcal{C}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 906 of file example_04.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyInverseJacobian_1 ( ROL::Vector< Real > &  ijv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the inverse partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-1} \in L(\mathcal{C}, \mathcal{U})\), to the vector \(v\).

Parameters
[out]ijvis the result of applying the inverse constraint Jacobian to v at \((u,z)\); a simulation-space vector
[in]vis a constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ijv} = c_u(u,z)^{-1}v\), where \(v \in \mathcal{C}\), \(\mathsf{ijv} \in \mathcal{U}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 919 of file example_04.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointJacobian_1 ( ROL::Vector< Real > &  ajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^* \in L(\mathcal{C}^*, \mathcal{U}^*)\), to the vector \(v\). This is the primary interface.

Parameters
[out]ajvis the result of applying the adjoint of the constraint Jacobian to v at (u,z); a dual simulation-space vector
[in]vis a dual constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ajv} = c_u(u,z)^*v\), where \(v \in \mathcal{C}^*\), \(\mathsf{ajv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 932 of file example_04.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointJacobian_2 ( ROL::Vector< Real > &  ajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_z(u,z)^* \in L(\mathcal{C}^*, \mathcal{Z}^*)\), to vector \(v\). This is the primary interface.

Parameters
[out]ajvis the result of applying the adjoint of the constraint Jacobian to v at \((u,z)\); a dual optimization-space vector
[in]vis a dual constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ajv} = c_z(u,z)^*v\), where \(v \in \mathcal{C}^*\), \(\mathsf{ajv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 945 of file example_04.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyInverseAdjointJacobian_1 ( ROL::Vector< Real > &  iajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the inverse of the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-*} \in L(\mathcal{U}^*, \mathcal{C}^*)\), to the vector \(v\).

Parameters
[out]iajvis the result of applying the inverse adjoint of the constraint Jacobian to v at (u,z); a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{iajv} = c_u(u,z)^{-*}v\), where \(v \in \mathcal{U}^*\), \(\mathsf{iajv} \in \mathcal{C}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 958 of file example_04.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_11 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual simulation-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{uu}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{U}^*\), and \(\mathsf{ahwv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 971 of file example_04.hpp.

References ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_12 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual optimization-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{uz}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{U}^*\), and \(\mathsf{ahwv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 991 of file example_04.hpp.

References ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_21 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual simulation-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{zu}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{Z}^*\), and \(\mathsf{ahwv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 1010 of file example_04.hpp.

References ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_22 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual optimization-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{zz}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{Z}^*\), and \(\mathsf{ahwv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 1029 of file example_04.hpp.

References ROL::Vector< Real >::zero().

template<class Real>
Real EqualityConstraint_BurgersControl< Real >::compute_norm ( const std::vector< Real > &  r)
inlineprivate

Definition at line 74 of file example_05.hpp.

References EqualityConstraint_BurgersControl< Real >::dot().

template<class Real>
Real EqualityConstraint_BurgersControl< Real >::dot ( const std::vector< Real > &  x,
const std::vector< Real > &  y 
)
inlineprivate

Definition at line 78 of file example_05.hpp.

References EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::update ( std::vector< Real > &  u,
const std::vector< Real > &  s,
const Real  alpha = 1.0 
)
inlineprivate

Definition at line 95 of file example_05.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::scale ( std::vector< Real > &  u,
const Real  alpha = 0.0 
)
inlineprivate

Definition at line 101 of file example_05.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::compute_residual ( std::vector< Real > &  r,
const std::vector< Real > &  u,
const std::vector< Real > &  z 
)
inlineprivate
template<class Real>
void EqualityConstraint_BurgersControl< Real >::compute_pde_jacobian ( std::vector< Real > &  dl,
std::vector< Real > &  d,
std::vector< Real > &  du,
const std::vector< Real > &  u 
)
inlineprivate
template<class Real>
void EqualityConstraint_BurgersControl< Real >::linear_solve ( std::vector< Real > &  u,
std::vector< Real > &  dl,
std::vector< Real > &  d,
std::vector< Real > &  du,
const std::vector< Real > &  r,
const bool  transpose = false 
)
inlineprivate

Definition at line 171 of file example_05.hpp.

References EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::value ( ROL::Vector< Real > &  c,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Evaluate the constraint operator \(c:\mathcal{U}\times\mathcal{Z} \rightarrow \mathcal{C}\) at \((u,z)\).

Parameters
[out]cis the result of evaluating the constraint operator at \((u,z)\); a constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{c} = c(u,z)\), where \(\mathsf{c} \in \mathcal{C}\), \(\mathsf{u} \in \mathcal{U}\), and $ \(\mathsf{z} \in\mathcal{Z}\).


Implements ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 193 of file example_05.hpp.

References EqualityConstraint_BurgersControl< Real >::compute_residual().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::solve ( ROL::Vector< Real > &  c,
ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Given \(z\), solve \(c(u,z)=0\) for \(u\).

Parameters
[out]cis the result of evaluating the constraint operator at \((u,z)\); a constraint-space vector
[in,out]uis the solution vector; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

The defualt implementation is Newton's method globalized with a backtracking line search.


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 204 of file example_05.hpp.

References ROL::Vector< Real >::norm(), and ROL::EqualityConstraint_SimOpt< Real >::solve().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyJacobian_1 ( ROL::Vector< Real > &  jv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the partial constraint Jacobian at \((u,z)\), \(c_u(u,z) \in L(\mathcal{U}, \mathcal{C})\), to the vector \(v\).

Parameters
[out]jvis the result of applying the constraint Jacobian to v at \((u,z)\); a constraint-space vector
[in]vis a simulation-space vector
[in]uis the constraint argument; an simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{jv} = c_u(u,z)v\), where \(v \in \mathcal{U}\), \(\mathsf{jv} \in \mathcal{C}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 213 of file example_05.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter(), and EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyJacobian_2 ( ROL::Vector< Real > &  jv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the partial constraint Jacobian at \((u,z)\), \(c_z(u,z) \in L(\mathcal{Z}, \mathcal{C})\), to the vector \(v\).

Parameters
[out]jvis the result of applying the constraint Jacobian to v at \((u,z)\); a constraint-space vector
[in]vis an optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{jv} = c_z(u,z)v\), where \(v \in \mathcal{Z}\), \(\mathsf{jv} \in \mathcal{C}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 246 of file example_05.hpp.

References EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyInverseJacobian_1 ( ROL::Vector< Real > &  ijv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the inverse partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-1} \in L(\mathcal{C}, \mathcal{U})\), to the vector \(v\).

Parameters
[out]ijvis the result of applying the inverse constraint Jacobian to v at \((u,z)\); a simulation-space vector
[in]vis a constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ijv} = c_u(u,z)^{-1}v\), where \(v \in \mathcal{C}\), \(\mathsf{ijv} \in \mathcal{U}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 262 of file example_05.hpp.

References EqualityConstraint_BurgersControl< Real >::compute_pde_jacobian(), and EqualityConstraint_BurgersControl< Real >::linear_solve().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointJacobian_1 ( ROL::Vector< Real > &  ajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^* \in L(\mathcal{C}^*, \mathcal{U}^*)\), to the vector \(v\). This is the primary interface.

Parameters
[out]ajvis the result of applying the adjoint of the constraint Jacobian to v at (u,z); a dual simulation-space vector
[in]vis a dual constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ajv} = c_u(u,z)^*v\), where \(v \in \mathcal{C}^*\), \(\mathsf{ajv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 281 of file example_05.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter(), and EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointJacobian_2 ( ROL::Vector< Real > &  ajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_z(u,z)^* \in L(\mathcal{C}^*, \mathcal{Z}^*)\), to vector \(v\). This is the primary interface.

Parameters
[out]ajvis the result of applying the adjoint of the constraint Jacobian to v at \((u,z)\); a dual optimization-space vector
[in]vis a dual constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ajv} = c_z(u,z)^*v\), where \(v \in \mathcal{C}^*\), \(\mathsf{ajv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 314 of file example_05.hpp.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyInverseAdjointJacobian_1 ( ROL::Vector< Real > &  iajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the inverse of the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-*} \in L(\mathcal{U}^*, \mathcal{C}^*)\), to the vector \(v\).

Parameters
[out]iajvis the result of applying the inverse adjoint of the constraint Jacobian to v at (u,z); a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{iajv} = c_u(u,z)^{-*}v\), where \(v \in \mathcal{U}^*\), \(\mathsf{iajv} \in \mathcal{C}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 343 of file example_05.hpp.

References EqualityConstraint_BurgersControl< Real >::compute_pde_jacobian(), and EqualityConstraint_BurgersControl< Real >::linear_solve().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_11 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual simulation-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{uu}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{U}^*\), and \(\mathsf{ahwv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 360 of file example_05.hpp.

References EqualityConstraint_BurgersControl< Real >::nx_.

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_12 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual optimization-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{uz}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{U}^*\), and \(\mathsf{ahwv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 384 of file example_05.hpp.

References ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_21 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual simulation-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{zu}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{Z}^*\), and \(\mathsf{ahwv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 388 of file example_05.hpp.

References ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_22 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual optimization-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{zz}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{Z}^*\), and \(\mathsf{ahwv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 392 of file example_05.hpp.

References EqualityConstraint_BurgersControl< Real >::dx_, EqualityConstraint_BurgersControl< Real >::nx_, and ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::value ( ROL::Vector< Real > &  c,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Evaluate the constraint operator \(c:\mathcal{U}\times\mathcal{Z} \rightarrow \mathcal{C}\) at \((u,z)\).

Parameters
[out]cis the result of evaluating the constraint operator at \((u,z)\); a constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{c} = c(u,z)\), where \(\mathsf{c} \in \mathcal{C}\), \(\mathsf{u} \in \mathcal{U}\), and $ \(\mathsf{z} \in\mathcal{Z}\).


Implements ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 884 of file example_06.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyJacobian_1 ( ROL::Vector< Real > &  jv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the partial constraint Jacobian at \((u,z)\), \(c_u(u,z) \in L(\mathcal{U}, \mathcal{C})\), to the vector \(v\).

Parameters
[out]jvis the result of applying the constraint Jacobian to v at \((u,z)\); a constraint-space vector
[in]vis a simulation-space vector
[in]uis the constraint argument; an simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{jv} = c_u(u,z)v\), where \(v \in \mathcal{U}\), \(\mathsf{jv} \in \mathcal{C}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 900 of file example_06.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyJacobian_2 ( ROL::Vector< Real > &  jv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the partial constraint Jacobian at \((u,z)\), \(c_z(u,z) \in L(\mathcal{Z}, \mathcal{C})\), to the vector \(v\).

Parameters
[out]jvis the result of applying the constraint Jacobian to v at \((u,z)\); a constraint-space vector
[in]vis an optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{jv} = c_z(u,z)v\), where \(v \in \mathcal{Z}\), \(\mathsf{jv} \in \mathcal{C}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 918 of file example_06.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyInverseJacobian_1 ( ROL::Vector< Real > &  ijv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the inverse partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-1} \in L(\mathcal{C}, \mathcal{U})\), to the vector \(v\).

Parameters
[out]ijvis the result of applying the inverse constraint Jacobian to v at \((u,z)\); a simulation-space vector
[in]vis a constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ijv} = c_u(u,z)^{-1}v\), where \(v \in \mathcal{C}\), \(\mathsf{ijv} \in \mathcal{U}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 936 of file example_06.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointJacobian_1 ( ROL::Vector< Real > &  ajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^* \in L(\mathcal{C}^*, \mathcal{U}^*)\), to the vector \(v\). This is the primary interface.

Parameters
[out]ajvis the result of applying the adjoint of the constraint Jacobian to v at (u,z); a dual simulation-space vector
[in]vis a dual constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ajv} = c_u(u,z)^*v\), where \(v \in \mathcal{C}^*\), \(\mathsf{ajv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 954 of file example_06.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointJacobian_2 ( ROL::Vector< Real > &  ajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_z(u,z)^* \in L(\mathcal{C}^*, \mathcal{Z}^*)\), to vector \(v\). This is the primary interface.

Parameters
[out]ajvis the result of applying the adjoint of the constraint Jacobian to v at \((u,z)\); a dual optimization-space vector
[in]vis a dual constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ajv} = c_z(u,z)^*v\), where \(v \in \mathcal{C}^*\), \(\mathsf{ajv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 972 of file example_06.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyInverseAdjointJacobian_1 ( ROL::Vector< Real > &  iajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the inverse of the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-*} \in L(\mathcal{U}^*, \mathcal{C}^*)\), to the vector \(v\).

Parameters
[out]iajvis the result of applying the inverse adjoint of the constraint Jacobian to v at (u,z); a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{iajv} = c_u(u,z)^{-*}v\), where \(v \in \mathcal{U}^*\), \(\mathsf{iajv} \in \mathcal{C}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 990 of file example_06.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_11 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual simulation-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{uu}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{U}^*\), and \(\mathsf{ahwv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 1008 of file example_06.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter(), and ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_12 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual optimization-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{uz}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{U}^*\), and \(\mathsf{ahwv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 1033 of file example_06.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter(), and ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_21 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual simulation-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{zu}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{Z}^*\), and \(\mathsf{ahwv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 1057 of file example_06.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter(), and ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_22 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual optimization-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{zz}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{Z}^*\), and \(\mathsf{ahwv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 1081 of file example_06.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter(), and ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::value ( ROL::Vector< Real > &  c,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Evaluate the constraint operator \(c:\mathcal{U}\times\mathcal{Z} \rightarrow \mathcal{C}\) at \((u,z)\).

Parameters
[out]cis the result of evaluating the constraint operator at \((u,z)\); a constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{c} = c(u,z)\), where \(\mathsf{c} \in \mathcal{C}\), \(\mathsf{u} \in \mathcal{U}\), and $ \(\mathsf{z} \in\mathcal{Z}\).


Implements ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 890 of file example_07.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyJacobian_1 ( ROL::Vector< Real > &  jv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the partial constraint Jacobian at \((u,z)\), \(c_u(u,z) \in L(\mathcal{U}, \mathcal{C})\), to the vector \(v\).

Parameters
[out]jvis the result of applying the constraint Jacobian to v at \((u,z)\); a constraint-space vector
[in]vis a simulation-space vector
[in]uis the constraint argument; an simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{jv} = c_u(u,z)v\), where \(v \in \mathcal{U}\), \(\mathsf{jv} \in \mathcal{C}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 906 of file example_07.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyJacobian_2 ( ROL::Vector< Real > &  jv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the partial constraint Jacobian at \((u,z)\), \(c_z(u,z) \in L(\mathcal{Z}, \mathcal{C})\), to the vector \(v\).

Parameters
[out]jvis the result of applying the constraint Jacobian to v at \((u,z)\); a constraint-space vector
[in]vis an optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{jv} = c_z(u,z)v\), where \(v \in \mathcal{Z}\), \(\mathsf{jv} \in \mathcal{C}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 924 of file example_07.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyInverseJacobian_1 ( ROL::Vector< Real > &  ijv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the inverse partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-1} \in L(\mathcal{C}, \mathcal{U})\), to the vector \(v\).

Parameters
[out]ijvis the result of applying the inverse constraint Jacobian to v at \((u,z)\); a simulation-space vector
[in]vis a constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ijv} = c_u(u,z)^{-1}v\), where \(v \in \mathcal{C}\), \(\mathsf{ijv} \in \mathcal{U}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 942 of file example_07.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointJacobian_1 ( ROL::Vector< Real > &  ajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^* \in L(\mathcal{C}^*, \mathcal{U}^*)\), to the vector \(v\). This is the primary interface.

Parameters
[out]ajvis the result of applying the adjoint of the constraint Jacobian to v at (u,z); a dual simulation-space vector
[in]vis a dual constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ajv} = c_u(u,z)^*v\), where \(v \in \mathcal{C}^*\), \(\mathsf{ajv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 960 of file example_07.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointJacobian_2 ( ROL::Vector< Real > &  ajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_z(u,z)^* \in L(\mathcal{C}^*, \mathcal{Z}^*)\), to vector \(v\). This is the primary interface.

Parameters
[out]ajvis the result of applying the adjoint of the constraint Jacobian to v at \((u,z)\); a dual optimization-space vector
[in]vis a dual constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ajv} = c_z(u,z)^*v\), where \(v \in \mathcal{C}^*\), \(\mathsf{ajv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 978 of file example_07.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyInverseAdjointJacobian_1 ( ROL::Vector< Real > &  iajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the inverse of the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-*} \in L(\mathcal{U}^*, \mathcal{C}^*)\), to the vector \(v\).

Parameters
[out]iajvis the result of applying the inverse adjoint of the constraint Jacobian to v at (u,z); a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{iajv} = c_u(u,z)^{-*}v\), where \(v \in \mathcal{U}^*\), \(\mathsf{iajv} \in \mathcal{C}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 996 of file example_07.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_11 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual simulation-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{uu}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{U}^*\), and \(\mathsf{ahwv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 1014 of file example_07.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter(), and ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_12 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual optimization-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{uz}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{U}^*\), and \(\mathsf{ahwv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 1039 of file example_07.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter(), and ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_21 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual simulation-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{zu}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{Z}^*\), and \(\mathsf{ahwv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 1063 of file example_07.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter(), and ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_22 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual optimization-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{zz}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{Z}^*\), and \(\mathsf{ahwv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 1087 of file example_07.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter(), and ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::value ( ROL::Vector< Real > &  c,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Evaluate the constraint operator \(c:\mathcal{U}\times\mathcal{Z} \rightarrow \mathcal{C}\) at \((u,z)\).

Parameters
[out]cis the result of evaluating the constraint operator at \((u,z)\); a constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{c} = c(u,z)\), where \(\mathsf{c} \in \mathcal{C}\), \(\mathsf{u} \in \mathcal{U}\), and $ \(\mathsf{z} \in\mathcal{Z}\).


Implements ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 884 of file example_08.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyJacobian_1 ( ROL::Vector< Real > &  jv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the partial constraint Jacobian at \((u,z)\), \(c_u(u,z) \in L(\mathcal{U}, \mathcal{C})\), to the vector \(v\).

Parameters
[out]jvis the result of applying the constraint Jacobian to v at \((u,z)\); a constraint-space vector
[in]vis a simulation-space vector
[in]uis the constraint argument; an simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{jv} = c_u(u,z)v\), where \(v \in \mathcal{U}\), \(\mathsf{jv} \in \mathcal{C}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 900 of file example_08.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyJacobian_2 ( ROL::Vector< Real > &  jv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the partial constraint Jacobian at \((u,z)\), \(c_z(u,z) \in L(\mathcal{Z}, \mathcal{C})\), to the vector \(v\).

Parameters
[out]jvis the result of applying the constraint Jacobian to v at \((u,z)\); a constraint-space vector
[in]vis an optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{jv} = c_z(u,z)v\), where \(v \in \mathcal{Z}\), \(\mathsf{jv} \in \mathcal{C}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 918 of file example_08.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyInverseJacobian_1 ( ROL::Vector< Real > &  ijv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the inverse partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-1} \in L(\mathcal{C}, \mathcal{U})\), to the vector \(v\).

Parameters
[out]ijvis the result of applying the inverse constraint Jacobian to v at \((u,z)\); a simulation-space vector
[in]vis a constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ijv} = c_u(u,z)^{-1}v\), where \(v \in \mathcal{C}\), \(\mathsf{ijv} \in \mathcal{U}\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 936 of file example_08.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointJacobian_1 ( ROL::Vector< Real > &  ajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^* \in L(\mathcal{C}^*, \mathcal{U}^*)\), to the vector \(v\). This is the primary interface.

Parameters
[out]ajvis the result of applying the adjoint of the constraint Jacobian to v at (u,z); a dual simulation-space vector
[in]vis a dual constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ajv} = c_u(u,z)^*v\), where \(v \in \mathcal{C}^*\), \(\mathsf{ajv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 954 of file example_08.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointJacobian_2 ( ROL::Vector< Real > &  ajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_z(u,z)^* \in L(\mathcal{C}^*, \mathcal{Z}^*)\), to vector \(v\). This is the primary interface.

Parameters
[out]ajvis the result of applying the adjoint of the constraint Jacobian to v at \((u,z)\); a dual optimization-space vector
[in]vis a dual constraint-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{ajv} = c_z(u,z)^*v\), where \(v \in \mathcal{C}^*\), \(\mathsf{ajv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 972 of file example_08.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyInverseAdjointJacobian_1 ( ROL::Vector< Real > &  iajv,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the inverse of the adjoint of the partial constraint Jacobian at \((u,z)\), \(c_u(u,z)^{-*} \in L(\mathcal{U}^*, \mathcal{C}^*)\), to the vector \(v\).

Parameters
[out]iajvis the result of applying the inverse adjoint of the constraint Jacobian to v at (u,z); a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \(\mathsf{iajv} = c_u(u,z)^{-*}v\), where \(v \in \mathcal{U}^*\), \(\mathsf{iajv} \in \mathcal{C}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 990 of file example_08.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_11 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual simulation-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{uu}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{U}^*\), and \(\mathsf{ahwv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 1008 of file example_08.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter(), and ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_12 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{uz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{U}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual optimization-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual simulation-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{uz}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{U}^*\), and \(\mathsf{ahwv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 1033 of file example_08.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter(), and ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_21 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zu}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{U}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual simulation-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{zu}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{Z}^*\), and \(\mathsf{ahwv} \in \mathcal{U}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 1057 of file example_08.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter(), and ROL::Vector< Real >::zero().

template<class Real>
void EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_22 ( ROL::Vector< Real > &  ahwv,
const ROL::Vector< Real > &  w,
const ROL::Vector< Real > &  v,
const ROL::Vector< Real > &  u,
const ROL::Vector< Real > &  z,
Real &  tol 
)
inlinevirtual

Apply the adjoint of the partial constraint Hessian at \((u,z)\), \(c_{zz}(u,z)^* \in L(L(\mathcal{C}^*, \mathcal{Z}^*), \mathcal{Z}^*)\), to vector \(v\) in direction \(w\).

Parameters
[out]ahwvis the result of applying the adjoint of the constraint Hessian to v at \((u,z)\) in direction w; a dual optimization-space vector
[in]wis the direction vector; a dual constraint-space vector
[in]vis a dual optimization-space vector
[in]uis the constraint argument; a simulation-space vector
[in]zis the constraint argument; an optimization-space vector
[in,out]tolis a tolerance for inexact evaluations; currently unused

On return, \( \mathsf{ahwv} = c_{zz}(u,z)^*(w,v) \), where \(w \in \mathcal{C}^*\), \(v \in \mathcal{Z}^*\), and \(\mathsf{ahwv} \in \mathcal{Z}^*\).


Reimplemented from ROL::EqualityConstraint_SimOpt< Real >.

Definition at line 1081 of file example_08.hpp.

References ROL::ParametrizedEqualityConstraint_SimOpt< Real >::getParameter(), and ROL::Vector< Real >::zero().

Member Data Documentation

template<class Real>
Teuchos::RCP< BurgersFEM< Real > > EqualityConstraint_BurgersControl< Real >::fem_
private

Definition at line 881 of file test_04.hpp.

template<class Real>
bool EqualityConstraint_BurgersControl< Real >::useHessian_
private

Definition at line 882 of file test_04.hpp.

template<class Real>
int EqualityConstraint_BurgersControl< Real >::nx_
private

Definition at line 68 of file burgers-control/example_02.hpp.

Referenced by Objective_BurgersControl< Real >::apply_mass(), EqualityConstraint_BurgersControl< Real >::apply_pde_hessian(), EqualityConstraint_BurgersControl< Real >::apply_pde_jacobian(), EqualityConstraint_BurgersControl< Real >::apply_pde_jacobian_new(), EqualityConstraint_BurgersControl< Real >::apply_pde_jacobian_old(), EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_11(), EqualityConstraint_BurgersControl< Real >::applyAdjointHessian_22(), EqualityConstraint_BurgersControl< Real >::applyAdjointJacobian_1(), EqualityConstraint_BurgersControl< Real >::applyAdjointJacobian_2(), EqualityConstraint_BurgersControl< Real >::applyInverseAdjointJacobian_1(), EqualityConstraint_BurgersControl< Real >::applyInverseJacobian_1(), EqualityConstraint_BurgersControl< Real >::applyJacobian_1(), EqualityConstraint_BurgersControl< Real >::applyJacobian_2(), EqualityConstraint_BurgersControl< Real >::compute_pde_jacobian(), EqualityConstraint_BurgersControl< Real >::compute_residual(), EqualityConstraint_BurgersControl< Real >::dot(), Objective_BurgersControl< Real >::dot(), EqualityConstraint_BurgersControl< Real >::EqualityConstraint_BurgersControl(), Objective_BurgersControl< Real >::gradient_1(), Objective_BurgersControl< Real >::hessVec_11(), EqualityConstraint_BurgersControl< Real >::linear_solve(), EqualityConstraint_BurgersControl< Real >::solve(), EqualityConstraint_BurgersControl< Real >::value(), and Objective_BurgersControl< Real >::value().

template<class Real>
Real EqualityConstraint_BurgersControl< Real >::dx_
private
template<class Real>
Real EqualityConstraint_BurgersControl< Real >::nu_
private

Definition at line 70 of file burgers-control/example_02.hpp.

template<class Real>
Real EqualityConstraint_BurgersControl< Real >::u0_
private

Definition at line 71 of file burgers-control/example_02.hpp.

template<class Real>
Real EqualityConstraint_BurgersControl< Real >::u1_
private

Definition at line 72 of file burgers-control/example_02.hpp.

template<class Real>
Real EqualityConstraint_BurgersControl< Real >::f_
private
template<class Real>
unsigned EqualityConstraint_BurgersControl< Real >::nx_
private

Definition at line 70 of file example_03.hpp.

template<class Real>
unsigned EqualityConstraint_BurgersControl< Real >::nt_
private
template<class Real>
Real EqualityConstraint_BurgersControl< Real >::T_
private

Definition at line 74 of file example_03.hpp.

template<class Real>
Real EqualityConstraint_BurgersControl< Real >::dt_
private
template<class Real>
std::vector<Real> EqualityConstraint_BurgersControl< Real >::u_init_
private

Definition at line 81 of file example_03.hpp.


The documentation for this class was generated from the following files: