|
ROL
|
Interface for computing the Lanczos vectors and approximate solutions to symmetric indefinite linear systems. More...
#include <ROL_Lanczos.hpp>
Public Types | |
| enum | FLAG_ITERATE : unsigned { FLAG_ITERATE::ITERATE_SUCCESS = 0, FLAG_ITERATE::ITERATE_SMALL_BETA, FLAG_ITERATE::ITERATE_MAX_REACHED, FLAG_ITERATE::ITERATE_ORTHO_TOL, FLAG_ITERATE::ITERATE_LAST } |
| enum | FLAG_SOLVE : unsigned { FLAG_SOLVE::SOLVE_SUCCESS = 0, FLAG_SOLVE::SOLVE_ILLEGAL_VALUE, FLAG_SOLVE::SOLVE_SINGULAR_U, FLAG_SOLVE::SOLVE_LAST } |
Public Member Functions | |
| Lanczos (ROL::ParameterList &PL) | |
| void | initialize (const V &b) |
| void | initialize (const V &x0, const V &b, const LO &A, Real &tol) |
| void | reset (const V &b) |
| void | reset (const V &x0, const V &b, const LO &A, Real &tol) |
| FLAG_ITERATE | iterate (const OP &A, Real &tol) |
| void | eigenvalues (std::vector< Real > &E) |
| FLAG_SOLVE | solve (V &x, Real tau=0) |
Private Types | |
| template<typename T > | |
| using | vector = std::vector< T > |
| typedef Vector< Real > | V |
| typedef LinearOperator< Real > | OP |
| typedef ROL::ParameterList | PL |
Private Member Functions | |
| void | allocate (void) |
Private Attributes | |
| template vector< Real > size_type | uint |
| ROL::LAPACK< int, Real > | lapack_ |
| vector< ROL::Ptr< V > > | Q_ |
| vector< Real > | alpha_ |
| vector< Real > | beta_ |
| vector< Real > | dl_ |
| vector< Real > | d_ |
| vector< Real > | du_ |
| vector< Real > | du2_ |
| vector< Real > | y_ |
| vector< Real > | work_ |
| vector< int > | ipiv_ |
| ROL::Ptr< V > | u_ |
| Real | max_beta_ |
| Real | tol_beta_ |
| Real | tol_ortho_ |
| int | maxit_ |
| int | k_ |
Interface for computing the Lanczos vectors and approximate solutions to symmetric indefinite linear systems.
Definition at line 30 of file ROL_Lanczos.hpp.
|
private |
Definition at line 33 of file ROL_Lanczos.hpp.
|
private |
Definition at line 37 of file ROL_Lanczos.hpp.
|
private |
Definition at line 38 of file ROL_Lanczos.hpp.
|
private |
Definition at line 40 of file ROL_Lanczos.hpp.
|
strong |
| Enumerator | |
|---|---|
| ITERATE_SUCCESS | |
| ITERATE_SMALL_BETA | |
| ITERATE_MAX_REACHED | |
| ITERATE_ORTHO_TOL | |
| ITERATE_LAST | |
Definition at line 101 of file ROL_Lanczos.hpp.
|
strong |
| Enumerator | |
|---|---|
| SOLVE_SUCCESS | |
| SOLVE_ILLEGAL_VALUE | |
| SOLVE_SINGULAR_U | |
| SOLVE_LAST | |
Definition at line 109 of file ROL_Lanczos.hpp.
|
inline |
Definition at line 117 of file ROL_Lanczos.hpp.
References ROL::Lanczos< Real >::maxit_, ROL::Lanczos< Real >::tol_beta_, and ROL::Lanczos< Real >::tol_ortho_.
|
inlineprivate |
Definition at line 73 of file ROL_Lanczos.hpp.
References ROL::Lanczos< Real >::alpha_, ROL::Lanczos< Real >::beta_, ROL::Lanczos< Real >::d_, ROL::Lanczos< Real >::dl_, ROL::Lanczos< Real >::du2_, ROL::Lanczos< Real >::du_, ROL::Lanczos< Real >::ipiv_, ROL::Lanczos< Real >::maxit_, ROL::Lanczos< Real >::Q_, ROL::Lanczos< Real >::u_, ROL::Lanczos< Real >::uint, ROL::Lanczos< Real >::work_, and ROL::Lanczos< Real >::y_.
Referenced by ROL::Lanczos< Real >::initialize().
|
inline |
Definition at line 129 of file ROL_Lanczos.hpp.
References ROL::Lanczos< Real >::allocate(), and ROL::Lanczos< Real >::reset().
|
inline |
Definition at line 135 of file ROL_Lanczos.hpp.
References ROL::Lanczos< Real >::allocate(), and ROL::Lanczos< Real >::reset().
|
inline |
Definition at line 142 of file ROL_Lanczos.hpp.
References ROL::Lanczos< Real >::beta_, ROL::Lanczos< Real >::k_, ROL::Lanczos< Real >::max_beta_, and ROL::Lanczos< Real >::Q_.
Referenced by ROL::Lanczos< Real >::initialize().
|
inline |
Definition at line 151 of file ROL_Lanczos.hpp.
References ROL::Lanczos< Real >::beta_, ROL::Lanczos< Real >::k_, ROL::Lanczos< Real >::max_beta_, ROL::Lanczos< Real >::Q_, and ROL::Lanczos< Real >::u_.
|
inline |
Definition at line 162 of file ROL_Lanczos.hpp.
References ROL::Lanczos< Real >::alpha_, ROL::LinearOperator< Real >::apply(), ROL::Lanczos< Real >::beta_, ROL::Lanczos< Real >::k_, ROL::Lanczos< Real >::max_beta_, ROL::Lanczos< Real >::maxit_, ROL::Lanczos< Real >::Q_, ROL::Lanczos< Real >::tol_beta_, ROL::Lanczos< Real >::tol_ortho_, and ROL::Lanczos< Real >::u_.
|
inline |
Definition at line 208 of file ROL_Lanczos.hpp.
References ROL::Lanczos< Real >::alpha_, ROL::Lanczos< Real >::beta_, ROL::Lanczos< Real >::d_, ROL::Lanczos< Real >::du_, ROL::Lanczos< Real >::k_, ROL::Lanczos< Real >::lapack_, and ROL::Lanczos< Real >::work_.
|
inline |
Definition at line 229 of file ROL_Lanczos.hpp.
References ROL::Lanczos< Real >::alpha_, ROL::Lanczos< Real >::beta_, ROL::Lanczos< Real >::d_, ROL::Lanczos< Real >::dl_, ROL::Lanczos< Real >::du2_, ROL::Lanczos< Real >::du_, ROL::Lanczos< Real >::ipiv_, ROL::Lanczos< Real >::k_, ROL::Lanczos< Real >::lapack_, ROL::Lanczos< Real >::maxit_, ROL::Lanczos< Real >::uint, and ROL::Lanczos< Real >::y_.
|
private |
Definition at line 35 of file ROL_Lanczos.hpp.
Referenced by ROL::Lanczos< Real >::allocate(), and ROL::Lanczos< Real >::solve().
|
private |
Definition at line 44 of file ROL_Lanczos.hpp.
Referenced by ROL::Lanczos< Real >::eigenvalues(), and ROL::Lanczos< Real >::solve().
|
private |
Definition at line 46 of file ROL_Lanczos.hpp.
Referenced by ROL::Lanczos< Real >::allocate(), ROL::Lanczos< Real >::iterate(), and ROL::Lanczos< Real >::reset().
|
private |
Definition at line 47 of file ROL_Lanczos.hpp.
Referenced by ROL::Lanczos< Real >::allocate(), ROL::Lanczos< Real >::eigenvalues(), ROL::Lanczos< Real >::iterate(), and ROL::Lanczos< Real >::solve().
|
private |
Definition at line 48 of file ROL_Lanczos.hpp.
Referenced by ROL::Lanczos< Real >::allocate(), ROL::Lanczos< Real >::eigenvalues(), ROL::Lanczos< Real >::iterate(), ROL::Lanczos< Real >::reset(), and ROL::Lanczos< Real >::solve().
|
private |
Definition at line 51 of file ROL_Lanczos.hpp.
Referenced by ROL::Lanczos< Real >::allocate(), and ROL::Lanczos< Real >::solve().
|
private |
Definition at line 52 of file ROL_Lanczos.hpp.
Referenced by ROL::Lanczos< Real >::allocate(), ROL::Lanczos< Real >::eigenvalues(), and ROL::Lanczos< Real >::solve().
|
private |
Definition at line 53 of file ROL_Lanczos.hpp.
Referenced by ROL::Lanczos< Real >::allocate(), ROL::Lanczos< Real >::eigenvalues(), and ROL::Lanczos< Real >::solve().
|
private |
Definition at line 54 of file ROL_Lanczos.hpp.
Referenced by ROL::Lanczos< Real >::allocate(), and ROL::Lanczos< Real >::solve().
|
private |
Definition at line 55 of file ROL_Lanczos.hpp.
Referenced by ROL::Lanczos< Real >::allocate(), and ROL::Lanczos< Real >::solve().
|
private |
Definition at line 57 of file ROL_Lanczos.hpp.
Referenced by ROL::Lanczos< Real >::allocate(), and ROL::Lanczos< Real >::eigenvalues().
|
private |
Definition at line 58 of file ROL_Lanczos.hpp.
Referenced by ROL::Lanczos< Real >::allocate(), and ROL::Lanczos< Real >::solve().
|
private |
Definition at line 60 of file ROL_Lanczos.hpp.
Referenced by ROL::Lanczos< Real >::allocate(), ROL::Lanczos< Real >::iterate(), and ROL::Lanczos< Real >::reset().
|
private |
Definition at line 62 of file ROL_Lanczos.hpp.
Referenced by ROL::Lanczos< Real >::iterate(), and ROL::Lanczos< Real >::reset().
|
private |
Definition at line 63 of file ROL_Lanczos.hpp.
Referenced by ROL::Lanczos< Real >::iterate(), and ROL::Lanczos< Real >::Lanczos().
|
private |
Definition at line 65 of file ROL_Lanczos.hpp.
Referenced by ROL::Lanczos< Real >::iterate(), and ROL::Lanczos< Real >::Lanczos().
|
private |
Definition at line 67 of file ROL_Lanczos.hpp.
Referenced by ROL::Lanczos< Real >::allocate(), ROL::Lanczos< Real >::iterate(), ROL::Lanczos< Real >::Lanczos(), and ROL::Lanczos< Real >::solve().
|
private |
Definition at line 69 of file ROL_Lanczos.hpp.
Referenced by ROL::Lanczos< Real >::eigenvalues(), ROL::Lanczos< Real >::iterate(), ROL::Lanczos< Real >::reset(), and ROL::Lanczos< Real >::solve().
1.8.5