ROL
ROL::Constraint_SerialSimOpt< Real > Class Template Reference

Unifies the constraint defined on a single time step that are defined through the Constraint_TimeSimOpt interface into a SimOpt constraint for all time. Primarily intended for use in testing the parallel-in-time implementation. More...

#include <ROL_Constraint_SerialSimOpt.hpp>

Inheritance diagram for ROL::Constraint_SerialSimOpt< Real >:

Public Member Functions

 Constraint_SerialSimOpt (const Ptr< Con > &con, const V &ui, const V &zi)
virtual void value (V &c, const V &u, const V &z, Real &tol) override
virtual void solve (V &c, V &u, const V &z, Real &tol) override
virtual void applyJacobian_1 (V &jv, const V &v, const V &u, const V &z, Real &tol) override
virtual void applyJacobian_2 (V &jv, const V &v, const V &u, const V &z, Real &tol) override
virtual void applyInverseJacobian_1 (V &ijv, const V &v, const V &u, const V &z, Real &tol) override
virtual void applyAdjointJacobian_1 (V &ajv, const V &v, const V &u, const V &z, Real &tol) override
virtual void applyAdjointJacobian_1 (V &ajv, const V &v, const V &u, const V &z, const V &dualv, Real &tol) override
virtual void applyAdjointJacobian_2 (V &ajv, const V &v, const V &u, const V &z, Real &tol) override
virtual void applyAdjointJacobian_2 (V &ajv, const V &v, const V &u, const V &z, const V &dualv, Real &tol) override
virtual void applyInverseAdjointJacobian_1 (V &iajv, const V &v, const V &u, const V &z, Real &tol) override
virtual void applyAdjointHessian_11 (V &ahwv, const V &w, const V &v, const V &u, const V &z, Real &tol) override
virtual void applyAdjointHessian_11 (V &ahwv, const V &w, const V &v, const V &u, const V &z, Real &tol) override
virtual void applyAdjointHessian_11 (V &ahwv, const V &w, const V &v, const V &u, const V &z, Real &tol) override
virtual void applyAdjointHessian_11 (V &ahwv, const V &w, const V &v, const V &u, const V &z, Real &tol) override
Public Member Functions inherited from ROL::ROL::Constraint_SimOpt< Real >
 Constraint_SimOpt ()
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.
virtual void update (const Vector< Real > &u, const Vector< Real > &z, UpdateType type, int iter=-1)
virtual void update_1 (const Vector< Real > &u, bool flag=true, int iter=-1)
 Update constraint functions with respect to Sim variable.
x is the optimization variable, flag = true if optimization variable is changed, iter is the outer algorithm iterations count.
virtual void update_1 (const Vector< Real > &u, UpdateType type, int iter=-1)
virtual void update_2 (const Vector< Real > &z, bool flag=true, int iter=-1)
 Update constraint functions with respect to Opt variable. x is the optimization variable, flag = true if optimization variable is changed, iter is the outer algorithm iterations count.
virtual void update_2 (const Vector< Real > &z, UpdateType type, int iter=-1)
virtual void solve_update (const Vector< Real > &u, const Vector< Real > &z, UpdateType type, int iter=-1)
 Update SimOpt constraint during solve (disconnected from optimization updates).
virtual void value (Vector< Real > &c, const Vector< Real > &u, const Vector< Real > &z, Real &tol)=0
 Evaluate the constraint operator \(c:\mathcal{U}\times\mathcal{Z} \rightarrow \mathcal{C}\) at \((u,z)\).
virtual void solve (Vector< Real > &c, Vector< Real > &u, const Vector< Real > &z, Real &tol)
 Given \(z\), solve \(c(u,z)=0\) for \(u\).
virtual void setSolveParameters (ParameterList &parlist)
 Set solve parameters.
virtual void applyJacobian_1 (Vector< Real > &jv, const Vector< Real > &v, const Vector< Real > &u, const 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\).
virtual void applyJacobian_2 (Vector< Real > &jv, const Vector< Real > &v, const Vector< Real > &u, const 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\).
virtual void applyInverseJacobian_1 (Vector< Real > &ijv, const Vector< Real > &v, const Vector< Real > &u, const 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\).
virtual void applyAdjointJacobian_1 (Vector< Real > &ajv, const Vector< Real > &v, const Vector< Real > &u, const 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.
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.
virtual void applyAdjointJacobian_2 (Vector< Real > &ajv, const Vector< Real > &v, const Vector< Real > &u, const 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.
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.
virtual void applyInverseAdjointJacobian_1 (Vector< Real > &iajv, const Vector< Real > &v, const Vector< Real > &u, const 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\).
virtual void applyAdjointHessian_11 (Vector< Real > &ahwv, const Vector< Real > &w, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, Real &tol)
 Apply the simulation-space derivative of the adjoint of the constraint simulation-space Jacobian at \((u,z)\) to the vector \(w\) in the direction \(v\), according to \(v\mapsto c_{uu}(u,z)(v,\cdot)^*w\).
virtual void applyAdjointHessian_12 (Vector< Real > &ahwv, const Vector< Real > &w, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, Real &tol)
 Apply the optimization-space derivative of the adjoint of the constraint simulation-space Jacobian at \((u,z)\) to the vector \(w\) in the direction \(v\), according to \(v\mapsto c_{uz}(u,z)(v,\cdot)^*w\).
virtual void applyAdjointHessian_21 (Vector< Real > &ahwv, const Vector< Real > &w, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, Real &tol)
 Apply the simulation-space derivative of the adjoint of the constraint optimization-space Jacobian at \((u,z)\) to the vector \(w\) in the direction \(v\), according to \(v\mapsto c_{zu}(u,z)(v,\cdot)^*w\).
virtual void applyAdjointHessian_22 (Vector< Real > &ahwv, const Vector< Real > &w, const Vector< Real > &v, const Vector< Real > &u, const Vector< Real > &z, Real &tol)
 Apply the optimization-space derivative of the adjoint of the constraint optimization-space Jacobian at \((u,z)\) to the vector \(w\) in the direction \(v\), according to \(v\mapsto c_{zz}(u,z)(v,\cdot)^*w\).
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 .
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:
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.
virtual void update (const Vector< Real > &x, UpdateType type, int iter=-1)
 Update constraint function.
virtual void value (Vector< Real > &c, const Vector< Real > &x, Real &tol)
 Evaluate the constraint operator \(c:\mathcal{X} \rightarrow \mathcal{C}\) at \(x\).
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\).
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\).
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 \).
virtual Real checkSolve (const Vector< Real > &u, const Vector< Real > &z, const 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.
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.
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.
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.
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)
std::vector< std::vector< Real > > checkApplyJacobian_1 (const Vector< Real > &u, const Vector< Real > &z, 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)
std::vector< std::vector< Real > > checkApplyJacobian_1 (const Vector< Real > &u, const Vector< Real > &z, 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)
std::vector< std::vector< Real > > checkApplyJacobian_2 (const Vector< Real > &u, const Vector< Real > &z, 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)
std::vector< std::vector< Real > > checkApplyJacobian_2 (const Vector< Real > &u, const Vector< Real > &z, 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)
std::vector< std::vector< Real > > checkApplyAdjointHessian_11 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &p, const Vector< Real > &v, const Vector< Real > &hv, const bool printToStream=true, std::ostream &outStream=std::cout, const int numSteps=ROL_NUM_CHECKDERIV_STEPS, const int order=1)
std::vector< std::vector< Real > > checkApplyAdjointHessian_11 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &p, const Vector< Real > &v, const Vector< Real > &hv, const std::vector< Real > &steps, const bool printToStream=true, std::ostream &outStream=std::cout, const int order=1)
std::vector< std::vector< Real > > checkApplyAdjointHessian_21 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &p, const Vector< Real > &v, const Vector< Real > &hv, const bool printToStream=true, std::ostream &outStream=std::cout, const int numSteps=ROL_NUM_CHECKDERIV_STEPS, const int order=1)
 \( u\in U \), \( z\in Z \), \( p\in C^\ast \), \( v \in U \), \( hv \in U^\ast \)
std::vector< std::vector< Real > > checkApplyAdjointHessian_21 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &p, const Vector< Real > &v, const Vector< Real > &hv, const std::vector< Real > &steps, const bool printToStream=true, std::ostream &outStream=std::cout, const int order=1)
 \( u\in U \), \( z\in Z \), \( p\in C^\ast \), \( v \in U \), \( hv \in U^\ast \)
std::vector< std::vector< Real > > checkApplyAdjointHessian_12 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &p, const Vector< Real > &v, const Vector< Real > &hv, const bool printToStream=true, std::ostream &outStream=std::cout, const int numSteps=ROL_NUM_CHECKDERIV_STEPS, const int order=1)
 \( u\in U \), \( z\in Z \), \( p\in C^\ast \), \( v \in U \), \( hv \in U^\ast \)
std::vector< std::vector< Real > > checkApplyAdjointHessian_12 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &p, const Vector< Real > &v, const Vector< Real > &hv, const std::vector< Real > &steps, const bool printToStream=true, std::ostream &outStream=std::cout, const int order=1)
std::vector< std::vector< Real > > checkApplyAdjointHessian_22 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &p, const Vector< Real > &v, const Vector< Real > &hv, const bool printToStream=true, std::ostream &outStream=std::cout, const int numSteps=ROL_NUM_CHECKDERIV_STEPS, const int order=1)
std::vector< std::vector< Real > > checkApplyAdjointHessian_22 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &p, const Vector< Real > &v, const Vector< Real > &hv, const std::vector< Real > &steps, const bool printToStream=true, std::ostream &outStream=std::cout, const int order=1)
Public Member Functions inherited from ROL::ROL::Constraint< Real >
virtual ~Constraint (void)
 Constraint (void)
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\).
void activate (void)
 Turn on constraints.
void deactivate (void)
 Turn off constraints.
bool isActivated (void)
 Check if constraints are on.
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.
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.
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.
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.
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.
virtual void setParameter (const std::vector< Real > &param)

Protected Member Functions

PVpartition (V &x) const
const Vpartition (const V &x) const
Protected Member Functions inherited from ROL::ROL::Constraint< Real >
const std::vector< Real > getParameter (void) const

Private Types

using V = Vector<Real>
using PV = PartitionedVector<Real>
using Con = Constraint_TimeSimOpt<Real>
using size_type = typename PV<Real>::size_type

Private Attributes

const Ptr< Concon_
const Ptr< Vui_
Ptr< Vu0_
Pre< Vz0_
VectorWorkspace< Real > workspace_

Additional Inherited Members

Protected Attributes inherited from ROL::ROL::Constraint_SimOpt< Real >
Real atol_
Real rtol_
Real stol_
Real factor_
Real decr_
int maxit_
bool print_
bool zero_
int solverType_
bool firstSolve_

Detailed Description

template<typename Real>
class ROL::Constraint_SerialSimOpt< Real >

Unifies the constraint defined on a single time step that are defined through the Constraint_TimeSimOpt interface into a SimOpt constraint for all time. Primarily intended for use in testing the parallel-in-time implementation.

In contrast to Constraint_PinTSimOpt, where the argument vectors are PartitionedVectors with Vector_SimOpt, the approach here is to consider the state and control to be of PartitionedVector type directly.

NOTE: This class does not address non-autonomous systems as constraints. The formulas involving adjoint Jacobians are almost certainly incorrect in such cases. This will need to be fixed if the Constraint_TimeSimOpt interface can accommodate explicit functions of time. Additionally, opt vectors are assumed to be constant in time on a time step.

Definition at line 44 of file ROL_Constraint_SerialSimOpt.hpp.

Member Typedef Documentation

◆ V

template<typename Real>
using ROL::Constraint_SerialSimOpt< Real >::V = Vector<Real>
private

Definition at line 46 of file ROL_Constraint_SerialSimOpt.hpp.

◆ PV

template<typename Real>
using ROL::Constraint_SerialSimOpt< Real >::PV = PartitionedVector<Real>
private

Definition at line 47 of file ROL_Constraint_SerialSimOpt.hpp.

◆ Con

template<typename Real>
using ROL::Constraint_SerialSimOpt< Real >::Con = Constraint_TimeSimOpt<Real>
private

Definition at line 48 of file ROL_Constraint_SerialSimOpt.hpp.

◆ size_type

template<typename Real>
using ROL::Constraint_SerialSimOpt< Real >::size_type = typename PV<Real>::size_type
private

Definition at line 50 of file ROL_Constraint_SerialSimOpt.hpp.

Constructor & Destructor Documentation

◆ Constraint_SerialSimOpt()

template<typename Real>
ROL::Constraint_SerialSimOpt< Real >::Constraint_SerialSimOpt ( const Ptr< Con > & con,
const V & ui,
const V & zi )
inline

Member Function Documentation

◆ partition() [1/2]

template<typename Real>
PV & ROL::Constraint_SerialSimOpt< Real >::partition ( V & x) const
inlineprotected

◆ partition() [2/2]

template<typename Real>
const V & ROL::Constraint_SerialSimOpt< Real >::partition ( const V & x) const
inlineprotected

Definition at line 65 of file ROL_Constraint_SerialSimOpt.hpp.

◆ value()

template<typename Real>
virtual void ROL::Constraint_SerialSimOpt< Real >::value ( V & c,
const V & u,
const V & z,
Real & tol )
inlineoverridevirtual

Definition at line 86 of file ROL_Constraint_SerialSimOpt.hpp.

◆ solve()

template<typename Real>
virtual void ROL::Constraint_SerialSimOpt< Real >::solve ( V & c,
V & u,
const V & z,
Real & tol )
inlineoverridevirtual

Definition at line 100 of file ROL_Constraint_SerialSimOpt.hpp.

◆ applyJacobian_1()

template<typename Real>
virtual void ROL::Constraint_SerialSimOpt< Real >::applyJacobian_1 ( V & jv,
const V & v,
const V & u,
const V & z,
Real & tol )
inlineoverridevirtual

Definition at line 114 of file ROL_Constraint_SerialSimOpt.hpp.

◆ applyJacobian_2()

template<typename Real>
virtual void ROL::Constraint_SerialSimOpt< Real >::applyJacobian_2 ( V & jv,
const V & v,
const V & u,
const V & z,
Real & tol )
inlineoverridevirtual

Definition at line 130 of file ROL_Constraint_SerialSimOpt.hpp.

◆ applyInverseJacobian_1()

template<typename Real>
virtual void ROL::Constraint_SerialSimOpt< Real >::applyInverseJacobian_1 ( V & ijv,
const V & v,
const V & u,
const V & z,
Real & tol )
inlineoverridevirtual

Definition at line 141 of file ROL_Constraint_SerialSimOpt.hpp.

◆ applyAdjointJacobian_1() [1/2]

template<typename Real>
virtual void ROL::Constraint_SerialSimOpt< Real >::applyAdjointJacobian_1 ( V & ajv,
const V & v,
const V & u,
const V & z,
Real & tol )
inlineoverridevirtual

Definition at line 164 of file ROL_Constraint_SerialSimOpt.hpp.

◆ applyAdjointJacobian_1() [2/2]

template<typename Real>
virtual void ROL::Constraint_SerialSimOpt< Real >::applyAdjointJacobian_1 ( V & ajv,
const V & v,
const V & u,
const V & z,
const V & dualv,
Real & tol )
inlineoverridevirtual

Definition at line 191 of file ROL_Constraint_SerialSimOpt.hpp.

◆ applyAdjointJacobian_2() [1/2]

template<typename Real>
virtual void ROL::Constraint_SerialSimOpt< Real >::applyAdjointJacobian_2 ( V & ajv,
const V & v,
const V & u,
const V & z,
Real & tol )
inlineoverridevirtual

Definition at line 217 of file ROL_Constraint_SerialSimOpt.hpp.

References partition().

◆ applyAdjointJacobian_2() [2/2]

template<typename Real>
virtual void ROL::Constraint_SerialSimOpt< Real >::applyAdjointJacobian_2 ( V & ajv,
const V & v,
const V & u,
const V & z,
const V & dualv,
Real & tol )
inlineoverridevirtual

Definition at line 228 of file ROL_Constraint_SerialSimOpt.hpp.

◆ applyInverseAdjointJacobian_1()

template<typename Real>
virtual void ROL::Constraint_SerialSimOpt< Real >::applyInverseAdjointJacobian_1 ( V & iajv,
const V & v,
const V & u,
const V & z,
Real & tol )
inlineoverridevirtual

Definition at line 240 of file ROL_Constraint_SerialSimOpt.hpp.

◆ applyAdjointHessian_11() [1/4]

template<typename Real>
virtual void ROL::Constraint_SerialSimOpt< Real >::applyAdjointHessian_11 ( V & ahwv,
const V & w,
const V & v,
const V & u,
const V & z,
Real & tol )
inlineoverridevirtual

Definition at line 272 of file ROL_Constraint_SerialSimOpt.hpp.

◆ applyAdjointHessian_11() [2/4]

template<typename Real>
virtual void ROL::Constraint_SerialSimOpt< Real >::applyAdjointHessian_11 ( V & ahwv,
const V & w,
const V & v,
const V & u,
const V & z,
Real & tol )
inlineoverridevirtual

Definition at line 278 of file ROL_Constraint_SerialSimOpt.hpp.

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

◆ applyAdjointHessian_11() [3/4]

template<typename Real>
virtual void ROL::Constraint_SerialSimOpt< Real >::applyAdjointHessian_11 ( V & ahwv,
const V & w,
const V & v,
const V & u,
const V & z,
Real & tol )
inlineoverridevirtual

Definition at line 283 of file ROL_Constraint_SerialSimOpt.hpp.

◆ applyAdjointHessian_11() [4/4]

template<typename Real>
virtual void ROL::Constraint_SerialSimOpt< Real >::applyAdjointHessian_11 ( V & ahwv,
const V & w,
const V & v,
const V & u,
const V & z,
Real & tol )
inlineoverridevirtual

Definition at line 288 of file ROL_Constraint_SerialSimOpt.hpp.

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

Member Data Documentation

◆ con_

template<typename Real>
const Ptr<Con> ROL::Constraint_SerialSimOpt< Real >::con_
private

◆ ui_

template<typename Real>
const Ptr<V> ROL::Constraint_SerialSimOpt< Real >::ui_
private

Definition at line 55 of file ROL_Constraint_SerialSimOpt.hpp.

◆ u0_

template<typename Real>
Ptr<V> ROL::Constraint_SerialSimOpt< Real >::u0_
private

Definition at line 56 of file ROL_Constraint_SerialSimOpt.hpp.

◆ z0_

template<typename Real>
Pre<V> ROL::Constraint_SerialSimOpt< Real >::z0_
private

Definition at line 57 of file ROL_Constraint_SerialSimOpt.hpp.

◆ workspace_

template<typename Real>
VectorWorkspace<Real> ROL::Constraint_SerialSimOpt< Real >::workspace_
private

Definition at line 59 of file ROL_Constraint_SerialSimOpt.hpp.


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