![]() |
(git:d18deda)
|
Wrapper for ELPA. More...
Functions/Subroutines | |
subroutine, public | initialize_elpa_library () |
Initialize the ELPA library. | |
subroutine, public | finalize_elpa_library () |
Finalize the ELPA library. | |
subroutine, public | set_elpa_kernel (requested_kernel) |
Sets the active ELPA kernel. | |
subroutine, public | set_elpa_qr (use_qr, use_qr_unsafe) |
Sets flags that determines if ELPA should try to use QR during diagonalization If use_qr = .TRUE., the QR step is performed only if the size of the input matrix is suitable. Check cp_fm_diag_elpa for further details. | |
subroutine, public | set_elpa_print (flag) |
Sets a flag that determines if additional information about the ELPA diagonalization should be printed when the diagonalization routine is called. | |
subroutine, public | cp_fm_diag_elpa (matrix, eigenvectors, eigenvalues) |
Driver routine to diagonalize a FM matrix with the ELPA library. | |
Variables | |
integer, dimension(1), parameter, public | elpa_kernel_ids = [-1] |
character(len=14), dimension(1), parameter, public | elpa_kernel_names = ["AUTO"] |
character(len=44), dimension(1), parameter, public | elpa_kernel_descriptions = ["Automatically selected kernel"] |
Wrapper for ELPA.
subroutine, public cp_fm_elpa::initialize_elpa_library |
Initialize the ELPA library.
Definition at line 176 of file cp_fm_elpa.F.
subroutine, public cp_fm_elpa::finalize_elpa_library |
Finalize the ELPA library.
Definition at line 188 of file cp_fm_elpa.F.
subroutine, public cp_fm_elpa::set_elpa_kernel | ( | integer, intent(in) | requested_kernel | ) |
Sets the active ELPA kernel.
requested_kernel | one of the elpa_kernel_ids |
Definition at line 200 of file cp_fm_elpa.F.
subroutine, public cp_fm_elpa::set_elpa_qr | ( | logical, intent(in) | use_qr, |
logical, intent(in) | use_qr_unsafe | ||
) |
Sets flags that determines if ELPA should try to use QR during diagonalization If use_qr = .TRUE., the QR step is performed only if the size of the input matrix is suitable. Check cp_fm_diag_elpa for further details.
use_qr | the logical flag |
use_qr_unsafe | logical which determines if block size checks should be bypassed for some ELPA versions, potentially leading to incorrect eigenvalues |
Definition at line 253 of file cp_fm_elpa.F.
subroutine, public cp_fm_elpa::set_elpa_print | ( | logical, intent(in) | flag | ) |
Sets a flag that determines if additional information about the ELPA diagonalization should be printed when the diagonalization routine is called.
flag | the logical flag |
Definition at line 265 of file cp_fm_elpa.F.
subroutine, public cp_fm_elpa::cp_fm_diag_elpa | ( | type(cp_fm_type), intent(in) | matrix, |
type(cp_fm_type), intent(in) | eigenvectors, | ||
real(kind=dp), dimension(:), intent(out) | eigenvalues | ||
) |
Driver routine to diagonalize a FM matrix with the ELPA library.
matrix | the matrix that is diagonalized |
eigenvectors | eigenvectors of the input matrix |
eigenvalues | eigenvalues of the input matrix |
Definition at line 277 of file cp_fm_elpa.F.
integer, dimension(1), parameter, public cp_fm_elpa::elpa_kernel_ids = [-1] |
Definition at line 149 of file cp_fm_elpa.F.
character(len=14), dimension(1), parameter, public cp_fm_elpa::elpa_kernel_names = ["AUTO"] |
Definition at line 150 of file cp_fm_elpa.F.
character(len=44), dimension(1), parameter, public cp_fm_elpa::elpa_kernel_descriptions = ["Automatically selected kernel"] |
Definition at line 151 of file cp_fm_elpa.F.