Dakota  Version
Explore and Predict with Confidence
Public Member Functions | List of all members
DakotaROLIneqConstraintsHess Class Reference
Inheritance diagram for DakotaROLIneqConstraintsHess:
DakotaROLIneqConstraintsGrad DakotaROLIneqConstraints

Public Member Functions

 DakotaROLIneqConstraintsHess (Model &model)
 Constructor. More...
 
virtual ~DakotaROLIneqConstraintsHess ()
 Destructor.
 
void applyAdjointHessian (std::vector< Real > &ahuv, const std::vector< Real > &u, const std::vector< Real > &v, const std::vector< Real > &x, Real &tol) override
 Function to return the result of applying the constraint adjoint Hessian to an arbitrary vector to ROL.
 
- Public Member Functions inherited from DakotaROLIneqConstraintsGrad
 DakotaROLIneqConstraintsGrad (Model &model)
 Constructor. More...
 
virtual ~DakotaROLIneqConstraintsGrad ()
 Destructor.
 
void applyJacobian (std::vector< Real > &jv, const std::vector< Real > &v, const std::vector< Real > &x, Real &tol) override
 Function to return the result of applying the constraint gradient on an arbitrary vector to ROL.
 
void applyAdjointJacobian (std::vector< Real > &ajv, const std::vector< Real > &v, const std::vector< Real > &x, Real &tol) override
 Function to return the result of applying the constraint adjoint to an arbitrary vector to ROL.
 
- Public Member Functions inherited from DakotaROLIneqConstraints
 DakotaROLIneqConstraints (Model &model)
 Constructor. More...
 
void value (std::vector< Real > &c, const std::vector< Real > &x, Real &tol) override
 Function to return the constraint value to ROL.
 

Additional Inherited Members

- Protected Attributes inherited from DakotaROLIneqConstraints
ModeldakotaModel
 Dakota problem data provided by user.
 
bool haveNlnConst
 Whether or not problem has nonlinear inequality constraints.
 

Detailed Description

DakotaROLIneqConstraintsHess is derived from DakotaROLIneqConstraintsGrad. It implements overrides of ROL member functions to provide a Dakota-specific implementation of a adjoint Hessian-vector product for inequality constraints. This separate class is needed (rather than putting the product into DakotaROLIneqConstraints) because logic in ROL does not always protect against calling the adjoint Hessian-vector product in cases where there is not actually a Hessian provided.

Constructor & Destructor Documentation

◆ DakotaROLIneqConstraintsHess()

Constructor.

Implementation of the DakotaROLIneqConstraintsGrad class.


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