![]() |
G+Smo
25.01.0
Geometry + Simulation Modules
|
Class for representing a Lanczos matrix and calculating its eigenvalues.
The Lanczos matrix is a symmetric tridiagonal matrix with diagonal delta and offdiagonal gamma.
Public Member Functions | |
| gsLanczosMatrix (const std::vector< T > &gamma, const std::vector< T > &delta) | |
| Constructor for the Lanczos matrix The Lanczos matrix is a symmetric tridiagonal matrix with diagonal delta and offdiagonal gamma. | |
| gsSparseMatrix< T > | matrix () |
| This function returns the Lanczos matrix as gsSparseMatrix. | |
| T | maxEigenvalue (index_t maxIter=20, T tol=1.e-6) |
| Calculates the largest eigenvalue. | |
| T | minEigenvalue (index_t maxIter=20, T tol=1.e-6) |
| Calculates the smallest eigenvalue. | |
Private Member Functions | |
| std::pair< T, T > | eval (T lambda) |
| Evalutates characteristic polynomial. | |
| T | newtonIteration (T x0, index_t maxIter, T tol) |
| Newton iteration for searching the zeros of the characteristic polynomial. | |
|
inline |
Constructor for the Lanczos matrix The Lanczos matrix is a symmetric tridiagonal matrix with diagonal delta and offdiagonal gamma.
| gamma | The off diagonal (the object stores a reference to this vector) |
| delta | The diagonal (the object stores a reference to this vector) |
|
inlineprivate |
Evalutates characteristic polynomial.
| lambda | evaluation point |
|
inline |
Calculates the largest eigenvalue.
| maxIter | The number of maximal iterations of the Newton algorithm |
| tol | Tolerace for the Newton algorithm |
|
inline |
Calculates the smallest eigenvalue.
| maxIter | The number of maximal iterations of the Newton algorithm |
| tol | Tolerace for the Newton algorithm |
|
inlineprivate |
Newton iteration for searching the zeros of the characteristic polynomial.
| x0 | the initial value |
| maxIter | The number of maximal iterations of the Newton algorithm |
| tol | Tolerace for the Newton algorithm |