44 #ifndef ROL_RISKNEUTRALCONSTRAINT_HPP
45 #define ROL_RISKNEUTRALCONSTRAINT_HPP
47 #include "ROL_Ptr.hpp"
57 const ROL::Ptr<Constraint<Real> >
con_;
59 const ROL::Ptr<BatchManager<Real> >
cbman_;
81 con_->update(x,flag,iter);
87 for (
int i = 0; i <
xsampler_->numMySamples(); ++i ) {
99 for (
int i = 0; i <
xsampler_->numMySamples(); ++i ) {
101 con_->applyJacobian(jv,v,x,tol);
111 for (
int i = 0; i <
xsampler_->numMySamples(); ++i ) {
113 con_->applyAdjointJacobian(ajv,v,x,tol);
123 for (
int i = 0; i <
xsampler_->numMySamples(); ++i ) {
125 con_->applyAdjointHessian(ahuv,u,v,x,tol);
virtual const Vector & dual() const
Return dual representation of , for example, the result of applying a Riesz map, or change of basis...
virtual ROL::Ptr< Vector > clone() const =0
Clone to make a new (uninitialized) vector.
void init(const Vector< Real > &c, const Vector< Real > &x)
virtual void zero()
Set to zero vector.
Defines the linear algebra or vector space interface.
ROL::Ptr< Vector< Real > > conVec_
const ROL::Ptr< SampleGenerator< Real > > xsampler_
void applyJacobian(Vector< Real > &jv, const Vector< Real > &v, const Vector< Real > &x, Real &tol)
Apply the constraint Jacobian at , , to vector .
void applyAdjointJacobian(Vector< Real > &ajv, const Vector< Real > &v, const Vector< Real > &x, Real &tol)
Apply the adjoint of the the constraint Jacobian at , , to vector .
void applyAdjointHessian(Vector< Real > &ahuv, const Vector< Real > &u, const Vector< Real > &v, const Vector< Real > &x, Real &tol)
Apply the derivative of the adjoint of the constraint Jacobian at to vector in direction ...
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 ...
const ROL::Ptr< BatchManager< Real > > cbman_
void value(Vector< Real > &c, const Vector< Real > &x, Real &tol)
Evaluate the constraint operator at .
RiskNeutralConstraint(const ROL::Ptr< Constraint< Real > > &con, const ROL::Ptr< SampleGenerator< Real > > &xsampler, const ROL::Ptr< BatchManager< Real > > &cbman)
ROL::Ptr< Vector< Real > > optVec_
Defines the general constraint operator interface.
const ROL::Ptr< Constraint< Real > > con_