ROL
|
#include <example_01.hpp>
Public Member Functions | |
Objective_BurgersControl (Real alpha=1.e-4, int nx=128) | |
void | solve_state (std::vector< Real > &u, const std::vector< Real > &z, const std::vector< Real > ¶m) |
void | solve_adjoint (std::vector< Real > &p, const std::vector< Real > &u, const std::vector< Real > ¶m) |
void | solve_state_sensitivity (std::vector< Real > &v, const std::vector< Real > &u, const std::vector< Real > &z, const std::vector< Real > ¶m) |
void | solve_adjoint_sensitivity (std::vector< Real > &q, const std::vector< Real > &u, const std::vector< Real > &p, const std::vector< Real > &v, const std::vector< Real > &z, const std::vector< Real > ¶m) |
Real | value (const ROL::Vector< Real > &z, Real &tol) |
Compute value. More... | |
void | gradient (ROL::Vector< Real > &g, const ROL::Vector< Real > &z, Real &tol) |
Compute gradient. More... | |
void | hessVec (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &z, Real &tol) |
Apply Hessian approximation to vector. More... | |
Objective_BurgersControl (Real alpha=1.e-4, int nx=128) | |
Real | value (const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute value. More... | |
void | gradient_1 (ROL::Vector< Real > &g, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute gradient with respect to first component. More... | |
void | gradient_2 (ROL::Vector< Real > &g, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute gradient with respect to second component. More... | |
void | hessVec_11 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Apply Hessian approximation to vector. More... | |
void | hessVec_12 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
void | hessVec_21 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
void | hessVec_22 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Objective_BurgersControl (Real alpha=1.e-4, int nx=128, int nt=100, Real T=1.0) | |
Real | value (const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute value. More... | |
void | gradient_1 (ROL::Vector< Real > &g, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute gradient with respect to first component. More... | |
void | gradient_2 (ROL::Vector< Real > &g, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute gradient with respect to second component. More... | |
void | hessVec_11 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Apply Hessian approximation to vector. More... | |
void | hessVec_12 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
void | hessVec_21 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
void | hessVec_22 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Objective_BurgersControl (const ROL::Ptr< BurgersFEM< Real > > &fem, const ROL::Ptr< ROL::Vector< Real > > &ud, Real alpha=1.e-4) | |
Real | value (const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute value. More... | |
void | gradient_1 (ROL::Vector< Real > &g, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute gradient with respect to first component. More... | |
void | gradient_2 (ROL::Vector< Real > &g, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute gradient with respect to second component. More... | |
void | hessVec_11 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Apply Hessian approximation to vector. More... | |
void | hessVec_12 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
void | hessVec_21 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
void | hessVec_22 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Objective_BurgersControl (Real alpha=1.e-4, int nx=128) | |
Real | value (const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute value. More... | |
void | gradient_1 (ROL::Vector< Real > &g, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute gradient with respect to first component. More... | |
void | gradient_2 (ROL::Vector< Real > &g, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute gradient with respect to second component. More... | |
void | hessVec_11 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Apply Hessian approximation to vector. More... | |
void | hessVec_12 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
void | hessVec_21 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
void | hessVec_22 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Objective_BurgersControl (const ROL::Ptr< BurgersFEM< Real > > &fem, const ROL::Ptr< ROL::Vector< Real > > &ud, Real alpha=1.e-4) | |
Real | value (const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute value. More... | |
void | gradient_1 (ROL::Vector< Real > &g, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute gradient with respect to first component. More... | |
void | gradient_2 (ROL::Vector< Real > &g, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute gradient with respect to second component. More... | |
void | hessVec_11 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Apply Hessian approximation to vector. More... | |
void | hessVec_12 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
void | hessVec_21 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
void | hessVec_22 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Objective_BurgersControl (const ROL::Ptr< BurgersFEM< Real > > &fem, Real x=0.0) | |
Real | value (const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute value. More... | |
void | gradient_1 (ROL::Vector< Real > &g, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute gradient with respect to first component. More... | |
void | gradient_2 (ROL::Vector< Real > &g, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute gradient with respect to second component. More... | |
void | hessVec_11 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Apply Hessian approximation to vector. More... | |
void | hessVec_12 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
void | hessVec_21 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
void | hessVec_22 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Objective_BurgersControl (const ROL::Ptr< BurgersFEM< Real > > &fem, const ROL::Ptr< ROL::Vector< Real > > &ud, Real alpha=1.e-4) | |
Real | value (const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute value. More... | |
void | gradient_1 (ROL::Vector< Real > &g, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute gradient with respect to first component. More... | |
void | gradient_2 (ROL::Vector< Real > &g, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute gradient with respect to second component. More... | |
void | hessVec_11 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Apply Hessian approximation to vector. More... | |
void | hessVec_12 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
void | hessVec_21 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
void | hessVec_22 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Objective_BurgersControl (Real alpha=1.e-4, int nx=128) | |
Real | value (const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute value. More... | |
void | gradient_1 (ROL::Vector< Real > &g, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute gradient with respect to first component. More... | |
void | gradient_2 (ROL::Vector< Real > &g, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Compute gradient with respect to second component. More... | |
void | hessVec_11 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Apply Hessian approximation to vector. More... | |
void | hessVec_12 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
void | hessVec_21 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
void | hessVec_22 (ROL::Vector< Real > &hv, const ROL::Vector< Real > &v, const ROL::Vector< Real > &u, const ROL::Vector< Real > &z, Real &tol) |
Public Member Functions inherited from ROL::Objective_SimOpt< Real > | |
virtual void | update (const Vector< Real > &u, const Vector< Real > &z, bool flag=true, int iter=-1) |
Update objective function. u is an iterate, z is an iterate, flag = true if the iterate has changed, iter is the outer algorithm iterations count. More... | |
void | update (const Vector< Real > &x, bool flag=true, int iter=-1) |
Update objective function. More... | |
virtual void | update (const Vector< Real > &u, const Vector< Real > &z, UpdateType type, int iter=-1) |
void | update (const Vector< Real > &x, UpdateType type, int iter=-1) |
Update objective function. More... | |
std::vector< std::vector< Real > > | checkGradient_1 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &d, 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 > > | checkGradient_1 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &g, const Vector< Real > &d, const bool printToStream, std::ostream &outStream, const int numSteps, const int order) |
std::vector< std::vector< Real > > | checkGradient_1 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &g, const Vector< Real > &d, const std::vector< Real > &steps, const bool printToStream, std::ostream &outStream, const int order) |
std::vector< std::vector< Real > > | checkGradient_2 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &d, 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 > > | checkGradient_2 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &g, const Vector< Real > &d, const bool printToStream, std::ostream &outStream, const int numSteps, const int order) |
std::vector< std::vector< Real > > | checkGradient_2 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &g, const Vector< Real > &d, const std::vector< Real > &steps, const bool printToStream, std::ostream &outStream, const int order) |
std::vector< std::vector< Real > > | checkHessVec_11 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &v, 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 > > | checkHessVec_11 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &v, const std::vector< Real > &steps, const bool printToStream=true, std::ostream &outStream=std::cout, const int order=1) |
std::vector< std::vector< Real > > | checkHessVec_11 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &hv, const Vector< Real > &v, const bool printToStream, std::ostream &outStream, const int numSteps, const int order) |
std::vector< std::vector< Real > > | checkHessVec_11 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &hv, const Vector< Real > &v, const std::vector< Real > &steps, const bool printToStream, std::ostream &outStream, const int order) |
std::vector< std::vector< Real > > | checkHessVec_12 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &v, 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 > > | checkHessVec_12 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &v, const std::vector< Real > &steps, const bool printToStream=true, std::ostream &outStream=std::cout, const int order=1) |
std::vector< std::vector< Real > > | checkHessVec_12 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &hv, const Vector< Real > &v, const bool printToStream, std::ostream &outStream, const int numSteps, const int order) |
std::vector< std::vector< Real > > | checkHessVec_12 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &hv, const Vector< Real > &v, const std::vector< Real > &steps, const bool printToStream, std::ostream &outStream, const int order) |
std::vector< std::vector< Real > > | checkHessVec_21 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &v, 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 > > | checkHessVec_21 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &v, const std::vector< Real > &steps, const bool printToStream=true, std::ostream &outStream=std::cout, const int order=1) |
std::vector< std::vector< Real > > | checkHessVec_21 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &hv, const Vector< Real > &v, const bool printToStream, std::ostream &outStream, const int numSteps, const int order) |
std::vector< std::vector< Real > > | checkHessVec_21 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &hv, const Vector< Real > &v, const std::vector< Real > &steps, const bool printToStream, std::ostream &outStream, const int order) |
std::vector< std::vector< Real > > | checkHessVec_22 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &v, 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 > > | checkHessVec_22 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &v, const std::vector< Real > &steps, const bool printToStream=true, std::ostream &outStream=std::cout, const int order=1) |
std::vector< std::vector< Real > > | checkHessVec_22 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &hv, const Vector< Real > &v, const bool printToStream, std::ostream &outStream, const int numSteps, const int order) |
std::vector< std::vector< Real > > | checkHessVec_22 (const Vector< Real > &u, const Vector< Real > &z, const Vector< Real > &hv, const Vector< Real > &v, const std::vector< Real > &steps, const bool printToStream, std::ostream &outStream, const int order) |
Public Member Functions inherited from ROL::Objective< Real > | |
virtual | ~Objective () |
Objective () | |
virtual Real | dirDeriv (const Vector< Real > &x, const Vector< Real > &d, Real &tol) |
Compute directional derivative. More... | |
virtual void | invHessVec (Vector< Real > &hv, const Vector< Real > &v, const Vector< Real > &x, Real &tol) |
Apply inverse Hessian approximation to vector. More... | |
virtual void | precond (Vector< Real > &Pv, const Vector< Real > &v, const Vector< Real > &x, Real &tol) |
Apply preconditioner to vector. More... | |
virtual void | prox (Vector< Real > &Pv, const Vector< Real > &v, Real t, Real &tol) |
Compute the proximity operator. More... | |
virtual void | proxJacVec (Vector< Real > &Jv, const Vector< Real > &v, const Vector< Real > &x, Real t, Real &tol) |
Apply the Jacobian of the proximity operator. More... | |
virtual std::vector < std::vector< Real > > | checkGradient (const Vector< Real > &x, const Vector< Real > &d, const bool printToStream=true, std::ostream &outStream=std::cout, const int numSteps=ROL_NUM_CHECKDERIV_STEPS, const int order=1) |
Finite-difference gradient check. More... | |
virtual std::vector < std::vector< Real > > | checkGradient (const Vector< Real > &x, const Vector< Real > &g, const Vector< Real > &d, const bool printToStream=true, std::ostream &outStream=std::cout, const int numSteps=ROL_NUM_CHECKDERIV_STEPS, const int order=1) |
Finite-difference gradient check. More... | |
virtual std::vector < std::vector< Real > > | checkGradient (const Vector< Real > &x, const Vector< Real > &d, const std::vector< Real > &steps, const bool printToStream=true, std::ostream &outStream=std::cout, const int order=1) |
Finite-difference gradient check with specified step sizes. More... | |
virtual std::vector < std::vector< Real > > | checkGradient (const Vector< Real > &x, const Vector< Real > &g, const Vector< Real > &d, const std::vector< Real > &steps, const bool printToStream=true, std::ostream &outStream=std::cout, const int order=1) |
Finite-difference gradient check with specified step sizes. More... | |
virtual std::vector < std::vector< Real > > | checkHessVec (const Vector< Real > &x, const Vector< Real > &v, const bool printToStream=true, std::ostream &outStream=std::cout, const int numSteps=ROL_NUM_CHECKDERIV_STEPS, const int order=1) |
Finite-difference Hessian-applied-to-vector check. More... | |
virtual std::vector < std::vector< Real > > | checkHessVec (const Vector< Real > &x, const Vector< Real > &hv, const Vector< Real > &v, const bool printToStream=true, std::ostream &outStream=std::cout, const int numSteps=ROL_NUM_CHECKDERIV_STEPS, const int order=1) |
Finite-difference Hessian-applied-to-vector check. More... | |
virtual std::vector < std::vector< Real > > | checkHessVec (const Vector< Real > &x, const Vector< Real > &v, const std::vector< Real > &steps, const bool printToStream=true, std::ostream &outStream=std::cout, const int order=1) |
Finite-difference Hessian-applied-to-vector check with specified step sizes. More... | |
virtual std::vector < std::vector< Real > > | checkHessVec (const Vector< Real > &x, const Vector< Real > &hv, const Vector< Real > &v, const std::vector< Real > &steps, const bool printToStream=true, std::ostream &outStream=std::cout, const int order=1) |
Finite-difference Hessian-applied-to-vector check with specified step sizes. More... | |
virtual std::vector< Real > | checkHessSym (const Vector< Real > &x, const Vector< Real > &v, const Vector< Real > &w, const bool printToStream=true, std::ostream &outStream=std::cout) |
Hessian symmetry check. More... | |
virtual std::vector< Real > | checkHessSym (const Vector< Real > &x, const Vector< Real > &hv, const Vector< Real > &v, const Vector< Real > &w, const bool printToStream=true, std::ostream &outStream=std::cout) |
Hessian symmetry check. More... | |
virtual std::vector < std::vector< Real > > | checkProxJacVec (const Vector< Real > &x, const Vector< Real > &v, Real t=Real(1), bool printToStream=true, std::ostream &outStream=std::cout, int numSteps=ROL_NUM_CHECKDERIV_STEPS) |
Finite-difference proximity operator Jacobian-applied-to-vector check. More... | |
virtual void | setParameter (const std::vector< Real > ¶m) |
Private Types | |
typedef H1VectorPrimal< Real > | PrimalStateVector |
typedef H1VectorDual< Real > | DualStateVector |
typedef L2VectorPrimal< Real > | PrimalControlVector |
typedef L2VectorDual< Real > | DualControlVector |
typedef H1VectorPrimal< Real > | PrimalStateVector |
typedef H1VectorDual< Real > | DualStateVector |
typedef L2VectorPrimal< Real > | PrimalControlVector |
typedef L2VectorDual< Real > | DualControlVector |
typedef H1VectorPrimal< Real > | PrimalStateVector |
typedef H1VectorDual< Real > | DualStateVector |
typedef L2VectorPrimal< Real > | PrimalControlVector |
typedef L2VectorDual< Real > | DualControlVector |
typedef std::vector< Real > ::size_type | uint |
typedef H1VectorPrimal< Real > | PrimalStateVector |
typedef H1VectorDual< Real > | DualStateVector |
typedef L2VectorPrimal< Real > | PrimalControlVector |
typedef L2VectorDual< Real > | DualControlVector |
Private Member Functions | |
Real | evaluate_target (Real x) |
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 | apply_mass (std::vector< Real > &Mu, const std::vector< Real > &u) |
void | compute_residual (std::vector< Real > &r, const std::vector< Real > &u, const std::vector< Real > &z, const std::vector< Real > ¶m) |
void | compute_pde_jacobian (std::vector< Real > &dl, std::vector< Real > &d, std::vector< Real > &du, const std::vector< Real > &u, const std::vector< Real > ¶m) |
void | add_pde_hessian (std::vector< Real > &r, const std::vector< Real > &u, const std::vector< Real > &p, const std::vector< Real > &s, Real alpha=1.0) |
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) |
void | run_newton (std::vector< Real > &u, const std::vector< Real > &z, const std::vector< Real > ¶m) |
Real | evaluate_target (Real x) |
Real | dot (const std::vector< Real > &x, const std::vector< Real > &y) |
void | apply_mass (std::vector< Real > &Mu, const std::vector< Real > &u) |
Real | evaluate_target (Real x) |
Real | dot (const std::vector< Real > &x, const std::vector< Real > &y) |
void | apply_mass (std::vector< Real > &Mu, const std::vector< Real > &u) |
Real | evaluate_target (Real x) |
Real | dot (const std::vector< Real > &x, const std::vector< Real > &y) |
void | apply_mass (std::vector< Real > &Mu, const std::vector< Real > &u) |
Real | evaluate_target (Real x) |
Real | dot (const std::vector< Real > &x, const std::vector< Real > &y) |
void | apply_mass (std::vector< Real > &Mu, const std::vector< Real > &u) |
Private Attributes | |
Real | alpha_ |
int | nx_ |
Real | dx_ |
unsigned | nx_ |
unsigned | nt_ |
Real | dt_ |
Real | T_ |
ROL::Ptr< BurgersFEM< Real > > | fem_ |
ROL::Ptr< ROL::Vector< Real > > | ud_ |
ROL::Ptr< ROL::Vector< Real > > | diff_ |
Real | x_ |
std::vector< int > | indices_ |
Additional Inherited Members | |
Protected Member Functions inherited from ROL::Objective< Real > | |
const std::vector< Real > | getParameter (void) const |
Definition at line 20 of file burgers-control/example_01.hpp.
|
private |
Definition at line 1044 of file example_04.hpp.
|
private |
Definition at line 1045 of file example_04.hpp.
|
private |
Definition at line 1047 of file example_04.hpp.
|
private |
Definition at line 1048 of file example_04.hpp.
|
private |
Definition at line 1101 of file example_06.hpp.
|
private |
Definition at line 1102 of file example_06.hpp.
|
private |
Definition at line 1104 of file example_06.hpp.
|
private |
Definition at line 1105 of file example_06.hpp.
|
private |
Definition at line 1107 of file example_07.hpp.
|
private |
Definition at line 1108 of file example_07.hpp.
|
private |
Definition at line 1110 of file example_07.hpp.
|
private |
Definition at line 1111 of file example_07.hpp.
|
private |
Definition at line 1113 of file example_07.hpp.
|
private |
Definition at line 905 of file example_08.hpp.
|
private |
Definition at line 906 of file example_08.hpp.
|
private |
Definition at line 908 of file example_08.hpp.
|
private |
Definition at line 909 of file example_08.hpp.
|
inline |
Definition at line 237 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::dx_.
|
inline |
Definition at line 397 of file burgers-control/example_02.hpp.
References Objective_BurgersControl< Real >::dx_.
|
inline |
Definition at line 771 of file example_03.hpp.
References Objective_BurgersControl< Real >::dt_, and Objective_BurgersControl< Real >::dx_.
|
inline |
Definition at line 1056 of file example_04.hpp.
References Objective_BurgersControl< Real >::diff_, and Objective_BurgersControl< Real >::ud_.
|
inline |
Definition at line 422 of file example_05.hpp.
References Objective_BurgersControl< Real >::dx_.
|
inline |
Definition at line 1113 of file example_06.hpp.
References Objective_BurgersControl< Real >::diff_, and Objective_BurgersControl< Real >::ud_.
|
inline |
Definition at line 1121 of file example_07.hpp.
References Objective_BurgersControl< Real >::fem_, Objective_BurgersControl< Real >::indices_, and Objective_BurgersControl< Real >::x_.
|
inline |
Definition at line 917 of file example_08.hpp.
References Objective_BurgersControl< Real >::diff_, and Objective_BurgersControl< Real >::ud_.
|
inline |
Definition at line 424 of file example_10.hpp.
References Objective_BurgersControl< Real >::dx_.
|
inlineprivate |
Definition at line 30 of file burgers-control/example_01.hpp.
Referenced by Objective_BurgersControl< Real >::gradient_1(), Objective_BurgersControl< Real >::solve_adjoint(), and Objective_BurgersControl< Real >::value().
|
inlineprivate |
Definition at line 42 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::dot().
Referenced by Objective_BurgersControl< Real >::run_newton().
|
inlineprivate |
Definition at line 46 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
Referenced by Objective_BurgersControl< Real >::compute_norm(), and Objective_BurgersControl< Real >::value().
|
inlineprivate |
Definition at line 65 of file burgers-control/example_01.hpp.
Referenced by Objective_BurgersControl< Real >::run_newton().
|
inlineprivate |
Definition at line 71 of file burgers-control/example_01.hpp.
Referenced by Objective_BurgersControl< Real >::solve_adjoint_sensitivity().
|
inlineprivate |
Definition at line 77 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
Referenced by Objective_BurgersControl< Real >::gradient_1(), Objective_BurgersControl< Real >::gradient_2(), Objective_BurgersControl< Real >::hessVec_11(), Objective_BurgersControl< Real >::hessVec_22(), Objective_BurgersControl< Real >::solve_adjoint(), and Objective_BurgersControl< Real >::solve_adjoint_sensitivity().
|
inlineprivate |
Definition at line 93 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
Referenced by Objective_BurgersControl< Real >::run_newton().
|
inlineprivate |
Definition at line 129 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
Referenced by Objective_BurgersControl< Real >::run_newton(), Objective_BurgersControl< Real >::solve_adjoint(), Objective_BurgersControl< Real >::solve_adjoint_sensitivity(), and Objective_BurgersControl< Real >::solve_state_sensitivity().
|
inlineprivate |
Definition at line 157 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::nx_.
Referenced by Objective_BurgersControl< Real >::solve_adjoint_sensitivity().
|
inlineprivate |
Definition at line 170 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::nx_.
Referenced by Objective_BurgersControl< Real >::run_newton(), Objective_BurgersControl< Real >::solve_adjoint(), Objective_BurgersControl< Real >::solve_adjoint_sensitivity(), and Objective_BurgersControl< Real >::solve_state_sensitivity().
|
inlineprivate |
Definition at line 188 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::compute_norm(), Objective_BurgersControl< Real >::compute_pde_jacobian(), Objective_BurgersControl< Real >::compute_residual(), Objective_BurgersControl< Real >::linear_solve(), Objective_BurgersControl< Real >::nx_, and Objective_BurgersControl< Real >::update().
Referenced by Objective_BurgersControl< Real >::solve_state().
|
inline |
Definition at line 241 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::nx_, and Objective_BurgersControl< Real >::run_newton().
Referenced by Objective_BurgersControl< Real >::gradient(), Objective_BurgersControl< Real >::hessVec(), main(), and Objective_BurgersControl< Real >::value().
|
inline |
Definition at line 247 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::apply_mass(), Objective_BurgersControl< Real >::compute_pde_jacobian(), Objective_BurgersControl< Real >::dx_, Objective_BurgersControl< Real >::evaluate_target(), Objective_BurgersControl< Real >::linear_solve(), and Objective_BurgersControl< Real >::nx_.
Referenced by Objective_BurgersControl< Real >::gradient(), and Objective_BurgersControl< Real >::hessVec().
|
inline |
Definition at line 267 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::compute_pde_jacobian(), Objective_BurgersControl< Real >::dx_, Objective_BurgersControl< Real >::linear_solve(), and Objective_BurgersControl< Real >::nx_.
Referenced by Objective_BurgersControl< Real >::hessVec().
|
inline |
Definition at line 286 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::add_pde_hessian(), Objective_BurgersControl< Real >::apply_mass(), Objective_BurgersControl< Real >::compute_pde_jacobian(), Objective_BurgersControl< Real >::linear_solve(), Objective_BurgersControl< Real >::nx_, and Objective_BurgersControl< Real >::scale().
Referenced by Objective_BurgersControl< Real >::hessVec().
|
inlinevirtual |
Compute value.
This function returns the objective function value.
[in] | x | is the current iterate. |
[in] | tol | is a tolerance for inexact objective function computation. |
Implements ROL::Objective< Real >.
Definition at line 306 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::dot(), Objective_BurgersControl< Real >::dx_, Objective_BurgersControl< Real >::evaluate_target(), Objective_BurgersControl< Real >::nx_, and Objective_BurgersControl< Real >::solve_state().
|
inlinevirtual |
Compute gradient.
This function returns the objective function gradient.
[out] | g | is the gradient. |
[in] | x | is the current iterate. |
[in] | tol | is a tolerance for inexact objective function computation. |
The default implementation is a finite-difference approximation based on the function value. This requires the definition of a basis \(\{\phi_i\}\) for the optimization vectors x and the definition of a basis \(\{\psi_j\}\) for the dual optimization vectors (gradient vectors g). The bases must be related through the Riesz map, i.e., \( R \{\phi_i\} = \{\psi_j\}\), and this must be reflected in the implementation of the ROL::Vector::dual() method.
Reimplemented from ROL::Objective< Real >.
Definition at line 338 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::dx_, Objective_BurgersControl< Real >::nx_, Objective_BurgersControl< Real >::solve_adjoint(), and Objective_BurgersControl< Real >::solve_state().
|
inlinevirtual |
Apply Hessian approximation to vector.
This function applies the Hessian of the objective function to the vector \(v\).
[out] | hv | is the the action of the Hessian on \(v\). |
[in] | v | is the direction vector. |
[in] | x | is the current iterate. |
[in] | tol | is a tolerance for inexact objective function computation. |
Reimplemented from ROL::Objective< Real >.
Definition at line 375 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::dx_, Objective_BurgersControl< Real >::nx_, Objective_BurgersControl< Real >::solve_adjoint(), Objective_BurgersControl< Real >::solve_adjoint_sensitivity(), Objective_BurgersControl< Real >::solve_state(), and Objective_BurgersControl< Real >::solve_state_sensitivity().
|
inlineprivate |
Definition at line 347 of file burgers-control/example_02.hpp.
|
inlineprivate |
Definition at line 359 of file burgers-control/example_02.hpp.
References Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
inlineprivate |
Definition at line 376 of file burgers-control/example_02.hpp.
References Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Compute value.
Implements ROL::Objective_SimOpt< Real >.
Definition at line 401 of file burgers-control/example_02.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::dot(), Objective_BurgersControl< Real >::dx_, Objective_BurgersControl< Real >::evaluate_target(), and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Compute gradient with respect to first component.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 430 of file burgers-control/example_02.hpp.
References Objective_BurgersControl< Real >::apply_mass(), Objective_BurgersControl< Real >::dx_, Objective_BurgersControl< Real >::evaluate_target(), and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Compute gradient with respect to second component.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 447 of file burgers-control/example_02.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Apply Hessian approximation to vector.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 470 of file burgers-control/example_02.hpp.
References Objective_BurgersControl< Real >::apply_mass().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 481 of file burgers-control/example_02.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 486 of file burgers-control/example_02.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 491 of file burgers-control/example_02.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
inlineprivate |
Definition at line 721 of file example_03.hpp.
|
inlineprivate |
Definition at line 733 of file example_03.hpp.
References Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
inlineprivate |
Definition at line 750 of file example_03.hpp.
References Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Compute value.
Implements ROL::Objective_SimOpt< Real >.
Definition at line 777 of file example_03.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::dot(), Objective_BurgersControl< Real >::dt_, Objective_BurgersControl< Real >::dx_, Objective_BurgersControl< Real >::evaluate_target(), Objective_BurgersControl< Real >::nt_, and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Compute gradient with respect to first component.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 807 of file example_03.hpp.
References Objective_BurgersControl< Real >::apply_mass(), Objective_BurgersControl< Real >::dt_, Objective_BurgersControl< Real >::dx_, Objective_BurgersControl< Real >::evaluate_target(), Objective_BurgersControl< Real >::nt_, and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Compute gradient with respect to second component.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 828 of file example_03.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::apply_mass(), Objective_BurgersControl< Real >::dt_, Objective_BurgersControl< Real >::nt_, and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Apply Hessian approximation to vector.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 849 of file example_03.hpp.
References Objective_BurgersControl< Real >::apply_mass(), Objective_BurgersControl< Real >::dt_, Objective_BurgersControl< Real >::nt_, and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 871 of file example_03.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 876 of file example_03.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 881 of file example_03.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::apply_mass(), Objective_BurgersControl< Real >::dt_, Objective_BurgersControl< Real >::nt_, and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Compute value.
Implements ROL::Objective_SimOpt< Real >.
Definition at line 1062 of file example_04.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::fem_, and L2VectorPrimal< Real >::getVector().
|
inlinevirtual |
Compute gradient with respect to first component.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1077 of file example_04.hpp.
References Objective_BurgersControl< Real >::fem_, and L2VectorPrimal< Real >::getVector().
|
inlinevirtual |
Compute gradient with respect to second component.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1092 of file example_04.hpp.
References Objective_BurgersControl< Real >::alpha_, and Objective_BurgersControl< Real >::fem_.
|
inlinevirtual |
Apply Hessian approximation to vector.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1104 of file example_04.hpp.
References Objective_BurgersControl< Real >::fem_.
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1114 of file example_04.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1119 of file example_04.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1124 of file example_04.hpp.
References Objective_BurgersControl< Real >::alpha_, and Objective_BurgersControl< Real >::fem_.
|
inlineprivate |
Definition at line 372 of file example_05.hpp.
|
inlineprivate |
Definition at line 384 of file example_05.hpp.
References Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
inlineprivate |
Definition at line 401 of file example_05.hpp.
References Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Compute value.
Implements ROL::Objective_SimOpt< Real >.
Definition at line 428 of file example_05.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::dot(), Objective_BurgersControl< Real >::dx_, Objective_BurgersControl< Real >::evaluate_target(), and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Compute gradient with respect to first component.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 457 of file example_05.hpp.
References Objective_BurgersControl< Real >::apply_mass(), Objective_BurgersControl< Real >::dx_, Objective_BurgersControl< Real >::evaluate_target(), and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Compute gradient with respect to second component.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 474 of file example_05.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Apply Hessian approximation to vector.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 497 of file example_05.hpp.
References Objective_BurgersControl< Real >::apply_mass().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 508 of file example_05.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 513 of file example_05.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 518 of file example_05.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Compute value.
Implements ROL::Objective_SimOpt< Real >.
Definition at line 1121 of file example_06.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::fem_, and L2VectorPrimal< Real >::getVector().
|
inlinevirtual |
Compute gradient with respect to first component.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1136 of file example_06.hpp.
References Objective_BurgersControl< Real >::fem_, and L2VectorPrimal< Real >::getVector().
|
inlinevirtual |
Compute gradient with respect to second component.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1151 of file example_06.hpp.
References Objective_BurgersControl< Real >::alpha_, and Objective_BurgersControl< Real >::fem_.
|
inlinevirtual |
Apply Hessian approximation to vector.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1163 of file example_06.hpp.
References Objective_BurgersControl< Real >::fem_.
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1173 of file example_06.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1178 of file example_06.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1183 of file example_06.hpp.
References Objective_BurgersControl< Real >::alpha_, and Objective_BurgersControl< Real >::fem_.
|
inlinevirtual |
Compute value.
Implements ROL::Objective_SimOpt< Real >.
Definition at line 1132 of file example_07.hpp.
References Objective_BurgersControl< Real >::fem_, Objective_BurgersControl< Real >::indices_, and Objective_BurgersControl< Real >::x_.
|
inlinevirtual |
Compute gradient with respect to first component.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1152 of file example_07.hpp.
References Objective_BurgersControl< Real >::fem_, Objective_BurgersControl< Real >::indices_, Objective_BurgersControl< Real >::x_, and ROL::Vector< Real >::zero().
|
inlinevirtual |
Compute gradient with respect to second component.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1177 of file example_07.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Apply Hessian approximation to vector.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1181 of file example_07.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1199 of file example_07.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1204 of file example_07.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1209 of file example_07.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Compute value.
Implements ROL::Objective_SimOpt< Real >.
Definition at line 925 of file example_08.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::fem_, and L2VectorPrimal< Real >::getVector().
|
inlinevirtual |
Compute gradient with respect to first component.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 940 of file example_08.hpp.
References Objective_BurgersControl< Real >::fem_, and L2VectorPrimal< Real >::getVector().
|
inlinevirtual |
Compute gradient with respect to second component.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 955 of file example_08.hpp.
References Objective_BurgersControl< Real >::alpha_, and Objective_BurgersControl< Real >::fem_.
|
inlinevirtual |
Apply Hessian approximation to vector.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 967 of file example_08.hpp.
References Objective_BurgersControl< Real >::fem_.
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 977 of file example_08.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 982 of file example_08.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 987 of file example_08.hpp.
References Objective_BurgersControl< Real >::alpha_, and Objective_BurgersControl< Real >::fem_.
|
inlineprivate |
Definition at line 374 of file example_10.hpp.
|
inlineprivate |
Definition at line 386 of file example_10.hpp.
References Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
inlineprivate |
Definition at line 403 of file example_10.hpp.
References Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Compute value.
Implements ROL::Objective_SimOpt< Real >.
Definition at line 430 of file example_10.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::dot(), Objective_BurgersControl< Real >::dx_, Objective_BurgersControl< Real >::evaluate_target(), and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Compute gradient with respect to first component.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 459 of file example_10.hpp.
References Objective_BurgersControl< Real >::apply_mass(), Objective_BurgersControl< Real >::dx_, Objective_BurgersControl< Real >::evaluate_target(), and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Compute gradient with respect to second component.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 476 of file example_10.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
inlinevirtual |
Apply Hessian approximation to vector.
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 499 of file example_10.hpp.
References Objective_BurgersControl< Real >::apply_mass().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 510 of file example_10.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 515 of file example_10.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 520 of file example_10.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
private |
Definition at line 22 of file burgers-control/example_01.hpp.
Referenced by Objective_BurgersControl< Real >::gradient(), Objective_BurgersControl< Real >::gradient_2(), Objective_BurgersControl< Real >::hessVec(), Objective_BurgersControl< Real >::hessVec_22(), and Objective_BurgersControl< Real >::value().
|
private |
Definition at line 24 of file burgers-control/example_01.hpp.
Referenced by Objective_BurgersControl< Real >::add_pde_hessian(), Objective_BurgersControl< Real >::apply_mass(), Objective_BurgersControl< Real >::compute_pde_jacobian(), Objective_BurgersControl< Real >::compute_residual(), Objective_BurgersControl< Real >::dot(), Objective_BurgersControl< Real >::gradient(), Objective_BurgersControl< Real >::gradient_1(), Objective_BurgersControl< Real >::gradient_2(), Objective_BurgersControl< Real >::hessVec(), Objective_BurgersControl< Real >::hessVec_11(), Objective_BurgersControl< Real >::hessVec_22(), Objective_BurgersControl< Real >::linear_solve(), Objective_BurgersControl< Real >::run_newton(), Objective_BurgersControl< Real >::solve_adjoint(), Objective_BurgersControl< Real >::solve_adjoint_sensitivity(), Objective_BurgersControl< Real >::solve_state(), Objective_BurgersControl< Real >::solve_state_sensitivity(), and Objective_BurgersControl< Real >::value().
|
private |
Definition at line 25 of file burgers-control/example_01.hpp.
Referenced by Objective_BurgersControl< Real >::apply_mass(), Objective_BurgersControl< Real >::compute_pde_jacobian(), Objective_BurgersControl< Real >::compute_residual(), Objective_BurgersControl< Real >::dot(), Objective_BurgersControl< Real >::gradient(), Objective_BurgersControl< Real >::gradient_1(), Objective_BurgersControl< Real >::gradient_2(), Objective_BurgersControl< Real >::hessVec(), Objective_BurgersControl< Real >::hessVec_22(), Objective_BurgersControl< Real >::Objective_BurgersControl(), Objective_BurgersControl< Real >::solve_adjoint(), Objective_BurgersControl< Real >::solve_state_sensitivity(), and Objective_BurgersControl< Real >::value().
|
private |
Definition at line 712 of file example_03.hpp.
|
private |
|
private |
Definition at line 715 of file example_03.hpp.
Referenced by Objective_BurgersControl< Real >::gradient_1(), Objective_BurgersControl< Real >::gradient_2(), Objective_BurgersControl< Real >::hessVec_11(), Objective_BurgersControl< Real >::hessVec_22(), Objective_BurgersControl< Real >::Objective_BurgersControl(), and Objective_BurgersControl< Real >::value().
|
private |
Definition at line 716 of file example_03.hpp.
|
private |
Definition at line 1051 of file example_04.hpp.
Referenced by Objective_BurgersControl< Real >::gradient_1(), Objective_BurgersControl< Real >::gradient_2(), Objective_BurgersControl< Real >::hessVec_11(), Objective_BurgersControl< Real >::hessVec_22(), Objective_BurgersControl< Real >::Objective_BurgersControl(), and Objective_BurgersControl< Real >::value().
|
private |
Definition at line 1052 of file example_04.hpp.
Referenced by Objective_BurgersControl< Real >::Objective_BurgersControl().
|
private |
Definition at line 1053 of file example_04.hpp.
Referenced by Objective_BurgersControl< Real >::Objective_BurgersControl().
|
private |
Definition at line 1117 of file example_07.hpp.
Referenced by Objective_BurgersControl< Real >::gradient_1(), Objective_BurgersControl< Real >::Objective_BurgersControl(), and Objective_BurgersControl< Real >::value().
|
private |
Definition at line 1118 of file example_07.hpp.
Referenced by Objective_BurgersControl< Real >::gradient_1(), Objective_BurgersControl< Real >::Objective_BurgersControl(), and Objective_BurgersControl< Real >::value().