|
numerics
|
Lanczos algorithm – k extreme eigenvalues of a large sparse matrix. More...
#include "core/vector.hpp"#include "core/matrix.hpp"#include "core/policy.hpp"#include "linalg/solvers/cg.hpp"#include "linalg/eigen/jacobi_eig.hpp"Go to the source code of this file.
Classes | |
| struct | num::LanczosResult |
| Result of a Lanczos eigensolver. More... | |
Namespaces | |
| namespace | num |
Functions | |
| LanczosResult | num::lanczos (MatVecFn matvec, idx n, idx k, real tol=1e-10, idx max_steps=0, Backend backend=Backend::seq) |
| Lanczos eigensolver for large sparse symmetric matrices. | |
Lanczos algorithm – k extreme eigenvalues of a large sparse matrix.
The Lanczos algorithm builds a k-dimensional Krylov subspace
K_k(A, v) = span{v, Av, A^2v, ..., A^{k-1}v}
and finds the k Ritz pairs (approximate eigenpairs) that are the extreme eigenvalues of the projected kxk tridiagonal matrix T_k.
Key properties:
Usage:
Definition in file lanczos.hpp.