eigs_lanczos
Performs an iterative eigenvalue calculation building eigenvectors using the Lanczos algorithm
Source eigs_lanczos.hpp
Parameters
Name | Description | Default |
---|---|---|
ops | OpSum defining the bonds of the operator | |
block | block on which the operator is defined | |
neigvals | number of eigenvalues to converge | 1 |
precision | accuracy of the computed ground state | 1e-12 |
max_iterations | maximum number of iterations | 1000 |
force_complex | whether or not computation should be forced to have complex arithmetic | false |
deflation_tol | tolerance for deflation, i.e. breakdown of Lanczos due to Krylow space exhaustion | 1e-7 |
random_seed | random seed for setting up the initial vector | 42 |
Returns
A struct with the following entries
Entry | Description |
---|---|
alphas | diagonal elements of the tridiagonal matrix |
betas | off-diagonal elements of the tridiagonal matrix |
eigenvalues | the computed Ritz eigenvalues of the tridiagonal matrix |
eigenvectors | State of shape $D \times $neigvals holding all low-lying eigenvalues up to neigvals |
niterations | number of iterations performed |
criterion | string denoting the reason why the algorithm stopped |