|
subroutine, public | cp_fm_diag::diag_init (diag_lib, fallback_applied, elpa_kernel, elpa_neigvec_min_input, elpa_qr, elpa_print, elpa_qr_unsafe, dlaf_neigvec_min_input, eps_check_diag_input) |
| Setup the diagonalization library to be used.
|
|
subroutine, public | cp_fm_diag::diag_finalize () |
| Finalize the diagonalization library.
|
|
subroutine, public | cp_fm_diag::choose_eigv_solver (matrix, eigenvectors, eigenvalues, info) |
| Choose the Eigensolver depending on which library is available ELPA seems to be unstable for small systems.
|
|
subroutine, public | cp_fm_diag::cp_fm_syevd (matrix, eigenvectors, eigenvalues, info) |
| Computes all eigenvalues and vectors of a real symmetric matrix significantly faster than syevx, scales also much better. Needs workspace to allocate all the eigenvectors.
|
|
subroutine, public | cp_fm_diag::cp_fm_syevx (matrix, eigenvectors, eigenvalues, neig, work_syevx) |
| compute eigenvalues and optionally eigenvectors of a real symmetric matrix using scalapack. If eigenvectors are required this routine will replicate a full matrix on each CPU... if more than a handful of vectors are needed, use cp_fm_syevd instead
|
|
subroutine, public | cp_fm_diag::cp_fm_svd (matrix_a, matrix_eigvl, matrix_eigvr_t, eigval, info) |
| decomposes a quadratic matrix into its singular value decomposition
|
|
subroutine, public | cp_fm_diag::cp_fm_power (matrix, work, exponent, threshold, n_dependent, verbose, eigvals) |
| ...
|
|
subroutine, public | cp_fm_diag::cp_fm_block_jacobi (matrix, eigenvectors, eigval, thresh, start_sec_block) |
| ...
|
|
subroutine, public | cp_fm_diag::cp_fm_geeig (amatrix, bmatrix, eigenvectors, eigenvalues, work) |
| General Eigenvalue Problem AX = BXE Single option version: Cholesky decomposition of B.
|
|
subroutine, public | cp_fm_diag::cp_fm_geeig_canon (amatrix, bmatrix, eigenvectors, eigenvalues, work, epseig) |
| General Eigenvalue Problem AX = BXE Use canonical diagonalization : U*s**(-1/2)
|
|