|
ROL
|
Preconditioned GMRES solver. More...
#include <ROL_GMRES.hpp>
Public Member Functions | |
| GMRES (ROL::ParameterList &parlist) | |
| Real | run (Vector< Real > &x, LinearOperator< Real > &A, const Vector< Real > &b, LinearOperator< Real > &M, int &iter, int &flag) |
| void | enableOutput (std::ostream &outStream) |
| void | disableOutput () |
| Public Member Functions inherited from ROL::Krylov< Real > | |
| virtual | ~Krylov (void) |
| Krylov (Real absTol=1.e-4, Real relTol=1.e-2, unsigned maxit=100) | |
| Krylov (ROL::ParameterList &parlist) | |
| void | resetAbsoluteTolerance (const Real absTol) |
| void | resetRelativeTolerance (const Real relTol) |
| void | resetMaximumIteration (const unsigned maxit) |
| Real | getAbsoluteTolerance (void) const |
| Real | getRelativeTolerance (void) const |
| unsigned | getMaximumIteration (void) const |
Private Types | |
| typedef LA::Matrix< Real > | SDMatrix |
| typedef LA::Vector< Real > | SDVector |
Private Attributes | |
| ROL::Ptr< Vector< Real > > | r_ |
| ROL::Ptr< Vector< Real > > | z_ |
| ROL::Ptr< Vector< Real > > | w_ |
| ROL::Ptr< SDMatrix > | H_ |
| ROL::Ptr< SDVector > | cs_ |
| ROL::Ptr< SDVector > | sn_ |
| ROL::Ptr< SDVector > | s_ |
| ROL::Ptr< SDVector > | y_ |
| ROL::Ptr< SDVector > | cnorm_ |
| ROL::Ptr< std::vector< Real > > | res_ |
| bool | isInitialized_ |
| bool | useInexact_ |
| bool | useInitialGuess_ |
| bool | printIters_ |
| ROL::Ptr< std::ostream > | outStream_ |
| ROL::LAPACK< int, Real > | lapack_ |
Preconditioned GMRES solver.
Definition at line 26 of file ROL_GMRES.hpp.
|
private |
Definition at line 28 of file ROL_GMRES.hpp.
|
private |
Definition at line 29 of file ROL_GMRES.hpp.
|
inline |
Definition at line 56 of file ROL_GMRES.hpp.
References cnorm_, cs_, ROL::Krylov< Real >::getMaximumIteration(), H_, isInitialized_, ROL::Krylov< Real >::Krylov(), printIters_, res_, s_, sn_, useInexact_, useInitialGuess_, y_, and zero.
|
inlinevirtual |
Implements ROL::Krylov< Real >.
Definition at line 79 of file ROL_GMRES.hpp.
References ROL::LinearOperator< Real >::apply(), ROL::LinearOperator< Real >::applyInverse(), ROL::Vector< Real >::clone(), cnorm_, cs_, ROL::Krylov< Real >::getAbsoluteTolerance(), ROL::Krylov< Real >::getMaximumIteration(), ROL::Krylov< Real >::getRelativeTolerance(), H_, isInitialized_, lapack_, outStream_, ROL::Vector< Real >::plus(), printIters_, r_, res_, ROL::ROL_EPSILON(), s_, sn_, useInexact_, useInitialGuess_, w_, y_, z_, ROL::Vector< Real >::zero(), and zero.
|
inline |
Definition at line 232 of file ROL_GMRES.hpp.
References outStream_, and printIters_.
|
inline |
Definition at line 237 of file ROL_GMRES.hpp.
References printIters_.
|
private |
Definition at line 33 of file ROL_GMRES.hpp.
Referenced by run().
|
private |
Definition at line 34 of file ROL_GMRES.hpp.
Referenced by run().
|
private |
Definition at line 35 of file ROL_GMRES.hpp.
Referenced by run().
|
private |
Definition at line 37 of file ROL_GMRES.hpp.
|
private |
Definition at line 38 of file ROL_GMRES.hpp.
|
private |
Definition at line 39 of file ROL_GMRES.hpp.
|
private |
Definition at line 40 of file ROL_GMRES.hpp.
|
private |
Definition at line 41 of file ROL_GMRES.hpp.
|
private |
Definition at line 42 of file ROL_GMRES.hpp.
|
private |
Definition at line 44 of file ROL_GMRES.hpp.
|
private |
Definition at line 46 of file ROL_GMRES.hpp.
|
private |
Definition at line 47 of file ROL_GMRES.hpp.
|
private |
Definition at line 48 of file ROL_GMRES.hpp.
|
private |
Definition at line 49 of file ROL_GMRES.hpp.
Referenced by disableOutput(), enableOutput(), GMRES(), and run().
|
private |
Definition at line 50 of file ROL_GMRES.hpp.
Referenced by enableOutput(), and run().
|
private |
Definition at line 52 of file ROL_GMRES.hpp.
Referenced by run().