|
ROL
|
#include <ROL_ConicApproximationModel.hpp>
Public Member Functions | |
| virtual | ~ConicApproximationModel () |
| ConicApproximationModel (const Ptr< Obj > &obj, const Ptr< const V > &x, const Ptr< V > &s, const Ptr< const V > &a) | |
| virtual void | update (const V &s, bool flag=true, int iter=-1) override |
| virtual Real | value (const V &s, Real &tol) override |
| virtual void | gradient (V &g, const V &s, Real &tol) override |
| virtual void | hessVec (V &hv, const V &v, const V &s, Real &tol) override |
| virtual void | invHessVec (V &hv, const V &v, const V &s, Real &tol) override |
| virtual void | precond (V &Pv, const V &v, const V &s, Real &tol) override |
| virtual | ~ConicApproximationModel () |
| ConicApproximationModel (const Ptr< Obj > &obj, const Ptr< const V > &x, const Ptr< V > &s, const Ptr< const V > &a) | |
| virtual void | update (const V &s, bool flag=true, int iter=-1) override |
| virtual Real | value (const V &s, Real &tol) override |
| virtual void | gradient (V &g, const V &s, Real &tol) override |
| virtual void | hessVec (V &hv, const V &v, const V &s, Real &tol) override |
| virtual void | invHessVec (V &hv, const V &v, const V &s, Real &tol) override |
| virtual void | precond (V &Pv, const V &v, const V &s, Real &tol) override |
| Public Member Functions inherited from ROL::ROL::Objective< Real > | |
| virtual | ~Objective () |
| Objective () | |
| virtual void | update (const Vector< Real > &x, UpdateType type, int iter=-1) |
| Update objective function. | |
| virtual void | update (const Vector< Real > &x, bool flag=true, int iter=-1) |
| Update objective function. | |
| virtual Real | value (const Vector< Real > &x, Real &tol)=0 |
| Compute value. | |
| virtual void | gradient (Vector< Real > &g, const Vector< Real > &x, Real &tol) |
| Compute gradient. | |
| virtual Real | dirDeriv (const Vector< Real > &x, const Vector< Real > &d, Real &tol) |
| Compute directional derivative. | |
| virtual void | hessVec (Vector< Real > &hv, const Vector< Real > &v, const Vector< Real > &x, Real &tol) |
| Apply Hessian approximation to vector. | |
| virtual void | invHessVec (Vector< Real > &hv, const Vector< Real > &v, const Vector< Real > &x, Real &tol) |
| Apply inverse Hessian approximation to vector. | |
| virtual void | precond (Vector< Real > &Pv, const Vector< Real > &v, const Vector< Real > &x, Real &tol) |
| Apply preconditioner to vector. | |
| virtual void | prox (Vector< Real > &Pv, const Vector< Real > &v, Real t, Real &tol) |
| Compute the proximity operator. | |
| 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. | |
| 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. | |
| 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. | |
| 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. | |
| 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. | |
| 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. | |
| 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. | |
| 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. | |
| 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. | |
| 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. | |
| 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. | |
| 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. | |
| virtual void | setParameter (const std::vector< Real > ¶m) |
Private Types | |
| using | V = Vector<Real> |
| using | Obj = Objective<Real> |
| using | V = Vector<Real> |
| using | Obj = Objective<Real> |
Private Attributes | |
| Ptr< Obj > | obj_ |
| const Ptr< const V > | x_ |
| const Ptr< const V > | a_ |
| Ptr< V > | g_ |
| Ptr< V > | s_ |
| Ptr< V > | Hs_ |
| Real | f_ |
| Real | gamma_ |
| Real | sHs_ |
| VectorWorkspace< Real > | workspace_ |
Additional Inherited Members | |
| Protected Member Functions inherited from ROL::ROL::Objective< Real > | |
| const std::vector< Real > | getParameter (void) const |
Definition at line 32 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
|
private |
Definition at line 34 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
|
private |
Definition at line 35 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
|
private |
Definition at line 34 of file step/trustregion/ROL_ConicApproximationModel.hpp.
|
private |
Definition at line 35 of file step/trustregion/ROL_ConicApproximationModel.hpp.
|
inlinevirtual |
Definition at line 47 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
|
inline |
|
inlinevirtual |
Definition at line 47 of file step/trustregion/ROL_ConicApproximationModel.hpp.
|
inline |
|
inlineoverridevirtual |
Definition at line 60 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
References a_, gamma_, Hs_, obj_, ROL::ROL_EPSILON(), s_, and x_.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
Definition at line 71 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
References a_, g_, gamma_, Hs_, ROL::Vector< Real >::plus(), s_, ROL::Vector< Real >::scale(), ROL::Vector< Real >::set(), and workspace_.
|
inlineoverridevirtual |
Definition at line 85 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
References a_, ROL::Vector< Real >::axpy(), gamma_, obj_, ROL::Vector< Real >::scale(), ROL::Vector< Real >::set(), workspace_, and x_.
|
inlineoverridevirtual |
Definition at line 98 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
References a_, ROL::Vector< Real >::axpy(), gamma_, obj_, s_, ROL::Vector< Real >::scale(), ROL::Vector< Real >::set(), workspace_, and x_.
|
inlineoverridevirtual |
Definition at line 109 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
References a_, ROL::Vector< Real >::axpy(), gamma_, obj_, s_, ROL::Vector< Real >::scale(), ROL::Vector< Real >::set(), workspace_, and x_.
|
inlineoverridevirtual |
Definition at line 60 of file step/trustregion/ROL_ConicApproximationModel.hpp.
References a_, gamma_, Hs_, obj_, ROL::ROL_EPSILON(), s_, and x_.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
Definition at line 71 of file step/trustregion/ROL_ConicApproximationModel.hpp.
References a_, g_, gamma_, Hs_, ROL::Vector< Real >::plus(), s_, ROL::Vector< Real >::scale(), ROL::Vector< Real >::set(), and workspace_.
|
inlineoverridevirtual |
Definition at line 85 of file step/trustregion/ROL_ConicApproximationModel.hpp.
References a_, ROL::Vector< Real >::axpy(), gamma_, obj_, ROL::Vector< Real >::scale(), ROL::Vector< Real >::set(), workspace_, and x_.
|
inlineoverridevirtual |
Definition at line 98 of file step/trustregion/ROL_ConicApproximationModel.hpp.
References a_, ROL::Vector< Real >::axpy(), gamma_, obj_, s_, ROL::Vector< Real >::scale(), ROL::Vector< Real >::set(), workspace_, and x_.
|
inlineoverridevirtual |
Definition at line 109 of file step/trustregion/ROL_ConicApproximationModel.hpp.
References a_, ROL::Vector< Real >::axpy(), gamma_, obj_, s_, ROL::Vector< Real >::scale(), ROL::Vector< Real >::set(), workspace_, and x_.
|
private |
Definition at line 38 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
Referenced by ConicApproximationModel(), hessVec(), invHessVec(), precond(), and update().
|
private |
Definition at line 39 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
Referenced by ConicApproximationModel(), hessVec(), invHessVec(), precond(), and update().
|
private |
Definition at line 39 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
Referenced by ConicApproximationModel(), gradient(), hessVec(), invHessVec(), precond(), and update().
|
private |
Definition at line 40 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
Referenced by ConicApproximationModel(), gradient(), and value().
|
private |
Definition at line 40 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
Referenced by ConicApproximationModel(), gradient(), invHessVec(), precond(), update(), and value().
|
private |
Definition at line 40 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
Referenced by ConicApproximationModel(), gradient(), and update().
|
private |
Definition at line 41 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
Referenced by ConicApproximationModel(), and value().
|
private |
Definition at line 41 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
Referenced by ConicApproximationModel(), gradient(), hessVec(), invHessVec(), precond(), update(), and value().
|
private |
Definition at line 41 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
Referenced by value().
|
private |
Definition at line 43 of file algorithm/TypeU/trustregion/other/ROL_ConicApproximationModel.hpp.
Referenced by gradient(), hessVec(), invHessVec(), and precond().