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) |
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 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 54 of file burgers-control/example_01.hpp.
|
private |
Definition at line 1078 of file example_04.hpp.
|
private |
Definition at line 1079 of file example_04.hpp.
|
private |
Definition at line 1081 of file example_04.hpp.
|
private |
Definition at line 1082 of file example_04.hpp.
|
private |
Definition at line 1135 of file example_06.hpp.
|
private |
Definition at line 1136 of file example_06.hpp.
|
private |
Definition at line 1138 of file example_06.hpp.
|
private |
Definition at line 1139 of file example_06.hpp.
|
private |
Definition at line 1141 of file example_07.hpp.
|
private |
Definition at line 1142 of file example_07.hpp.
|
private |
Definition at line 1144 of file example_07.hpp.
|
private |
Definition at line 1145 of file example_07.hpp.
|
private |
Definition at line 1147 of file example_07.hpp.
|
private |
Definition at line 939 of file example_08.hpp.
|
private |
Definition at line 940 of file example_08.hpp.
|
private |
Definition at line 942 of file example_08.hpp.
|
private |
Definition at line 943 of file example_08.hpp.
|
inline |
Definition at line 271 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::dx_.
|
inline |
Definition at line 431 of file burgers-control/example_02.hpp.
References Objective_BurgersControl< Real >::dx_.
|
inline |
Definition at line 805 of file example_03.hpp.
References Objective_BurgersControl< Real >::dt_, and Objective_BurgersControl< Real >::dx_.
|
inline |
Definition at line 1090 of file example_04.hpp.
References Objective_BurgersControl< Real >::diff_, and Objective_BurgersControl< Real >::ud_.
|
inline |
Definition at line 456 of file example_05.hpp.
References Objective_BurgersControl< Real >::dx_.
|
inline |
Definition at line 1147 of file example_06.hpp.
References Objective_BurgersControl< Real >::diff_, and Objective_BurgersControl< Real >::ud_.
|
inline |
Definition at line 1155 of file example_07.hpp.
References Objective_BurgersControl< Real >::fem_, Objective_BurgersControl< Real >::indices_, and Objective_BurgersControl< Real >::x_.
|
inline |
Definition at line 951 of file example_08.hpp.
References Objective_BurgersControl< Real >::diff_, and Objective_BurgersControl< Real >::ud_.
|
inline |
Definition at line 458 of file example_10.hpp.
References Objective_BurgersControl< Real >::dx_.
|
inlineprivate |
Definition at line 64 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 76 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::dot().
Referenced by Objective_BurgersControl< Real >::run_newton().
|
inlineprivate |
Definition at line 80 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 99 of file burgers-control/example_01.hpp.
Referenced by Objective_BurgersControl< Real >::run_newton().
|
inlineprivate |
Definition at line 105 of file burgers-control/example_01.hpp.
Referenced by Objective_BurgersControl< Real >::solve_adjoint_sensitivity().
|
inlineprivate |
Definition at line 111 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 127 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 163 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 191 of file burgers-control/example_01.hpp.
References Objective_BurgersControl< Real >::nx_.
Referenced by Objective_BurgersControl< Real >::solve_adjoint_sensitivity().
|
inlineprivate |
Definition at line 204 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 222 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 275 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 281 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 301 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 320 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 340 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 372 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 409 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 381 of file burgers-control/example_02.hpp.
|
inlineprivate |
Definition at line 393 of file burgers-control/example_02.hpp.
References Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
inlineprivate |
Definition at line 410 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 435 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 464 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 481 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 504 of file burgers-control/example_02.hpp.
References Objective_BurgersControl< Real >::apply_mass().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 515 of file burgers-control/example_02.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 520 of file burgers-control/example_02.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 525 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 755 of file example_03.hpp.
|
inlineprivate |
Definition at line 767 of file example_03.hpp.
References Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
inlineprivate |
Definition at line 784 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 811 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 841 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 862 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 883 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 905 of file example_03.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 910 of file example_03.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 915 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 1096 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 1111 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 1126 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 1138 of file example_04.hpp.
References Objective_BurgersControl< Real >::fem_.
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1148 of file example_04.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1153 of file example_04.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1158 of file example_04.hpp.
References Objective_BurgersControl< Real >::alpha_, and Objective_BurgersControl< Real >::fem_.
|
inlineprivate |
Definition at line 406 of file example_05.hpp.
|
inlineprivate |
Definition at line 418 of file example_05.hpp.
References Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
inlineprivate |
Definition at line 435 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 462 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 491 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 508 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 531 of file example_05.hpp.
References Objective_BurgersControl< Real >::apply_mass().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 542 of file example_05.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 547 of file example_05.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 552 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 1155 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 1170 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 1185 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 1197 of file example_06.hpp.
References Objective_BurgersControl< Real >::fem_.
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1207 of file example_06.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1212 of file example_06.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1217 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 1166 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 1186 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 1211 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 1215 of file example_07.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1233 of file example_07.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1238 of file example_07.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1243 of file example_07.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Compute value.
Implements ROL::Objective_SimOpt< Real >.
Definition at line 959 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 974 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 989 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 1001 of file example_08.hpp.
References Objective_BurgersControl< Real >::fem_.
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1011 of file example_08.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1016 of file example_08.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 1021 of file example_08.hpp.
References Objective_BurgersControl< Real >::alpha_, and Objective_BurgersControl< Real >::fem_.
|
inlineprivate |
Definition at line 408 of file example_10.hpp.
|
inlineprivate |
Definition at line 420 of file example_10.hpp.
References Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
inlineprivate |
Definition at line 437 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 464 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 493 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 510 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 533 of file example_10.hpp.
References Objective_BurgersControl< Real >::apply_mass().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 544 of file example_10.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 549 of file example_10.hpp.
References ROL::Vector< Real >::zero().
|
inlinevirtual |
Reimplemented from ROL::Objective_SimOpt< Real >.
Definition at line 554 of file example_10.hpp.
References Objective_BurgersControl< Real >::alpha_, Objective_BurgersControl< Real >::dx_, and Objective_BurgersControl< Real >::nx_.
|
private |
Definition at line 56 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 58 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 59 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 746 of file example_03.hpp.
|
private |
|
private |
Definition at line 749 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 750 of file example_03.hpp.
|
private |
Definition at line 1085 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 1086 of file example_04.hpp.
Referenced by Objective_BurgersControl< Real >::Objective_BurgersControl().
|
private |
Definition at line 1087 of file example_04.hpp.
Referenced by Objective_BurgersControl< Real >::Objective_BurgersControl().
|
private |
Definition at line 1151 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 1152 of file example_07.hpp.
Referenced by Objective_BurgersControl< Real >::gradient_1(), Objective_BurgersControl< Real >::Objective_BurgersControl(), and Objective_BurgersControl< Real >::value().