|
ROL
|
Provides definitions for limited-memory SR1 operators. More...
#include <ROL_lSR1.hpp>
Public Member Functions | |
| lSR1 (int M, bool useDefaultScaling=true, Real Bscaling=Real(1), ESecantMode mode=SECANTMODE_BOTH) | |
| void | updateStorage (const Vector< Real > &x, const Vector< Real > &grad, const Vector< Real > &gp, const Vector< Real > &s, const Real snorm, const int iter) |
| virtual void | applyH0 (Vector< Real > &Hv, const Vector< Real > &v) const |
| void | applyH (Vector< Real > &Hv, const Vector< Real > &v) const |
| virtual void | applyB0 (Vector< Real > &Bv, const Vector< Real > &v) const |
| void | applyB (Vector< Real > &Bv, const Vector< Real > &v) const |
| Public Member Functions inherited from ROL::ROL::Secant< Real > | |
| virtual | ~Secant () |
| Secant (int M=10, bool useDefaultScaling=true, Real Bscaling=Real(1), ESecantMode mode=SECANTMODE_BOTH) | |
| Ptr< SecantState< Real > > & | get_state () |
| const Ptr< SecantState< Real > > & | get_state () const |
| virtual void | updateStorage (const Vector< Real > &x, const Vector< Real > &grad, const Vector< Real > &gp, const Vector< Real > &s, const Real snorm, const int iter) |
| virtual void | applyH (Vector< Real > &Hv, const Vector< Real > &v) const =0 |
| virtual void | applyH0 (Vector< Real > &Hv, const Vector< Real > &v) const |
| virtual void | applyB (Vector< Real > &Bv, const Vector< Real > &v) const =0 |
| virtual void | applyB0 (Vector< Real > &Bv, const Vector< Real > &v) const |
| void | test (std::ostream &stream=std::cout) const |
| void | apply (Vector< Real > &Hv, const Vector< Real > &v, Real &tol) const |
| Apply linear operator. | |
| void | applyInverse (Vector< Real > &Hv, const Vector< Real > &v, Real &tol) const |
| Apply inverse of linear operator. | |
| Public Member Functions inherited from ROL::ROL::LinearOperator< Real > | |
| virtual | ~LinearOperator () |
| virtual void | update (const Vector< Real > &x, bool flag=true, int iter=-1) |
| Update linear operator. | |
| virtual void | applyAdjoint (Vector< Real > &Hv, const Vector< Real > &v, Real &tol) const |
| Apply adjoint of linear operator. | |
| virtual void | applyAdjointInverse (Vector< Real > &Hv, const Vector< Real > &v, Real &tol) const |
| Apply adjoint of the inverse linear operator. | |
Private Attributes | |
| bool | isInitialized_ |
| bool | H0called_ |
| bool | B0called_ |
| Ptr< Vector< Real > > | Bs_ |
| Ptr< Vector< Real > > | Hy_ |
| Ptr< Vector< Real > > | prim_ |
| Ptr< Vector< Real > > | dual_ |
Additional Inherited Members | |
| Protected Attributes inherited from ROL::ROL::Secant< Real > | |
| const Ptr< SecantState< Real > > | state_ |
| Ptr< Vector< Real > > | y_ |
| bool | useDefaultScaling_ |
| Real | Bscaling_ |
Provides definitions for limited-memory SR1 operators.
Definition at line 23 of file ROL_lSR1.hpp.
|
inline |
Definition at line 37 of file ROL_lSR1.hpp.
References B0called_, ROL::ROL::Secant< Real >::Bscaling_, H0called_, isInitialized_, ROL::ROL::Secant< Real >::Secant(), ROL::SECANTMODE_BOTH, and ROL::ROL::Secant< Real >::useDefaultScaling_.
|
inline |
Definition at line 45 of file ROL_lSR1.hpp.
References ROL::Vector< Real >::apply(), applyB(), applyH(), Bs_, ROL::ROL::Secant< Real >::Bscaling_, ROL::Vector< Real >::clone(), dual_, Hy_, isInitialized_, prim_, ROL::ROL_EPSILON(), ROL::ROL_INF(), ROL::SECANTMODE_BOTH, ROL::SECANTMODE_FORWARD, ROL::SECANTMODE_INVERSE, ROL::ROL::Secant< Real >::state_, ROL::ROL::Secant< Real >::useDefaultScaling_, and ROL::ROL::Secant< Real >::y_.
|
inlinevirtual |
Definition at line 161 of file ROL_lSR1.hpp.
References ROL::ROL::Secant< Real >::Bscaling_, ROL::Vector< Real >::dual(), H0called_, prim_, ROL::Vector< Real >::scale(), ROL::Vector< Real >::set(), and ROL::ROL::Secant< Real >::state_.
Referenced by applyH().
|
inline |
Definition at line 174 of file ROL_lSR1.hpp.
References applyH0(), ROL::Vector< Real >::axpy(), ROL::Vector< Real >::dual(), H0called_, prim_, ROL::SECANTMODE_BOTH, ROL::SECANTMODE_INVERSE, and ROL::ROL::Secant< Real >::state_.
Referenced by updateStorage().
|
inlinevirtual |
Definition at line 227 of file ROL_lSR1.hpp.
References B0called_, ROL::ROL::Secant< Real >::Bscaling_, ROL::Vector< Real >::dual(), dual_, ROL::Vector< Real >::scale(), ROL::Vector< Real >::set(), and ROL::ROL::Secant< Real >::state_.
Referenced by applyB().
|
inline |
Definition at line 240 of file ROL_lSR1.hpp.
References applyB0(), ROL::Vector< Real >::axpy(), B0called_, ROL::Vector< Real >::dual(), dual_, ROL::SECANTMODE_BOTH, ROL::SECANTMODE_FORWARD, and ROL::ROL::Secant< Real >::state_.
Referenced by updateStorage().
|
private |
Definition at line 27 of file ROL_lSR1.hpp.
Referenced by lSR1(), and updateStorage().
|
mutableprivate |
Definition at line 28 of file ROL_lSR1.hpp.
|
private |
Definition at line 28 of file ROL_lSR1.hpp.
Definition at line 29 of file ROL_lSR1.hpp.
Referenced by updateStorage().
Definition at line 29 of file ROL_lSR1.hpp.
Referenced by updateStorage().
Definition at line 29 of file ROL_lSR1.hpp.
Referenced by applyH(), applyH0(), and updateStorage().
Definition at line 29 of file ROL_lSR1.hpp.
Referenced by applyB(), applyB0(), and updateStorage().