44 #ifndef ROL_REDUCED_AUGMENTEDLAGRANGIAN_SIMOPT_H 45 #define ROL_REDUCED_AUGMENTEDLAGRANGIAN_SIMOPT_H 54 #include "Teuchos_RCP.hpp" 116 const Real penaltyParameter,
117 Teuchos::ParameterList &parlist) :
state_(state),
Provides the interface to evaluate simulation-based objective functions.
Provides the interface to evaluate the augmented Lagrangian.
void getConstraintVec(Vector< Real > &c, const Vector< Real > &x)
Reduced_AugmentedLagrangian_SimOpt(const Teuchos::RCP< Objective_SimOpt< Real > > &obj, const Teuchos::RCP< EqualityConstraint_SimOpt< Real > > &redCon, const Teuchos::RCP< EqualityConstraint_SimOpt< Real > > &augCon, const Teuchos::RCP< Vector< Real > > &state, const Teuchos::RCP< Vector< Real > > &control, const Teuchos::RCP< Vector< Real > > &adjoint, const Teuchos::RCP< Vector< Real > > &augConVec, const Teuchos::RCP< Vector< Real > > &multiplier, const Real penaltyParameter, Teuchos::ParameterList &parlist)
void hessVec(Vector< Real > &hv, const Vector< Real > &v, const Vector< Real > &x, Real &tol)
Apply Hessian approximation to vector.
Contains definitions of custom data types in ROL.
Provides the interface to evaluate the SimOpt augmented Lagrangian.
Defines the linear algebra or vector space interface.
int getNumberConstraintEvaluations(void) const
Defines the equality constraint operator interface for simulation-based optimization.
Teuchos::RCP< Vector< Real > > state_
Real getObjectiveValue(const Vector< Real > &x)
void update(const Vector< Real > &x, bool flag=true, int iter=-1)
Update objective function.
int getNumberGradientEvaluations(void) const
Teuchos::RCP< AugmentedLagrangian_SimOpt< Real > > augLagSimOpt_
Teuchos::RCP< Reduced_Objective_SimOpt< Real > > rAugLagSimOpt_
void gradient(Vector< Real > &g, const Vector< Real > &x, Real &tol)
Compute gradient.
virtual void setParameter(const std::vector< Real > ¶m)
int getNumberFunctionEvaluations(void) const
Provides the interface to evaluate the reduced SimOpt augmented Lagrangian.
void setParameter(const std::vector< Real > ¶m)
Real value(const Vector< Real > &x, Real &tol)
Compute value.
void reset(const Vector< Real > &multiplier, const Real penaltyParameter)