(git:fc9bb57)
Loading...
Searching...
No Matches
cp_cfm_elpa.F File Reference

Go to the source code of this file.

Modules

module  cp_cfm_elpa
 Wrapper for ELPA (complex matrices, i.e. cp_cfm_type)
 

Functions/Subroutines

subroutine, public cp_cfm_elpa::set_elpa_c_kernel (requested_kernel)
 Sets the active ELPA kernel for complex matrices.
 
subroutine, public cp_cfm_elpa::check_elpa_c_kernel_correctness (para_env)
 One-time runtime correctness check for ELPA complex BLOCK2 kernels. A small deterministic eigenproblem is solved on a single process with the same production routine used for the actual diagonalizations, and the eigenpair residual as well as the eigenvector orthogonality are verified. This guards against mis-compiled kernels (GCC 15.2 regression, marekandreas/elpa#77). If the check fails, a module flag is set such that cp_cfm_heevd falls back to ScaLAPACK.
 
logical function, public cp_cfm_elpa::is_elpa_c_broken ()
 Returns .TRUE. if the runtime check detected broken BLOCK2 kernels.
 
subroutine, public cp_cfm_elpa::cp_cfm_diag_elpa (matrix, eigenvectors, eigenvalues)
 Driver routine to diagonalize a CFM matrix with the ELPA library.
 

Variables

integer, dimension(1), parameter, public cp_cfm_elpa::elpa_c_kernel_ids = [-1]
 
character(len=14), dimension(1), parameter, public cp_cfm_elpa::elpa_c_kernel_names = ["AUTO"]
 
character(len=44), dimension(1), parameter, public cp_cfm_elpa::elpa_c_kernel_descriptions = ["Automatically selected kernel"]