|
| subroutine, public | qs_scf_diagonalization::qs_scf_get_ot_kpoint_operator (matrix_rs, kpoints, kp, ispin, cache_re, cache_im, matrix_re, matrix_im) |
| | Build one complex k-point operator for OT in the local k-point-group context. A single group keeps the established direct real-space transform. Multiple groups use the redistributed full-matrix cache because their communicators do not own the complete real-space DBCSR matrix.
|
| subroutine, public | qs_scf_diagonalization::general_eigenproblem (scf_env, mos, matrix_ks, matrix_s, scf_control, scf_section, diis_step) |
| | the inner loop of scf, specific to diagonalization with S matrix basically, in goes the ks matrix out goes a new p matrix
|
| subroutine, public | qs_scf_diagonalization::do_general_diag (scf_env, mos, matrix_ks, matrix_s, scf_control, scf_section, diis_step, probe) |
| | ...
|
| subroutine, public | qs_scf_diagonalization::do_general_diag_kp (matrix_ks, matrix_s, kpoints, scf_env, scf_control, update_p, diis_step, diis_error, qs_env, probe, matrix_t, store_ot_matrices, transfer_only, added_mos_auto_grow) |
| | Kpoint diagonalization routine Transforms matrices to kpoint, distributes kpoint groups, performs general diagonalization (no storgae of overlap decomposition), stores MOs, calculates occupation numbers, calculates density matrices in kpoint representation, transforms density matrices to real space.
|
| subroutine, public | qs_scf_diagonalization::diag_kp_basic (matrix_ks, matrix_s, kpoints, fmwork) |
| | Kpoint diagonalization routine Transforms matrices to kpoint, distributes kpoint groups, performs general diagonalization (no storgae of overlap decomposition), stores MOs, calculates occupation numbers, calculates density matrices in kpoint representation, transforms density matrices to real space.
|
| subroutine, public | qs_scf_diagonalization::do_scf_diag_subspace (qs_env, scf_env, subspace_env, mos, rho, ks_env, scf_section, scf_control) |
| | inner loop within MOS subspace, to refine occupation and density, before next diagonalization of the Hamiltonian
|
| subroutine, public | qs_scf_diagonalization::diag_subspace_allocate (subspace_env, qs_env, mos) |
| | ...
|
| subroutine, public | qs_scf_diagonalization::do_special_diag (scf_env, mos, matrix_ks, scf_control, scf_section, diis_step) |
| | the inner loop of scf, specific to diagonalization without S matrix basically, in goes the ks matrix out goes a new p matrix
|
| subroutine, public | qs_scf_diagonalization::do_ot_diag (scf_env, mos, matrix_ks, matrix_s, scf_control, scf_section, diis_step) |
| | the inner loop of scf, specific to iterative diagonalization using OT with S matrix; basically, in goes the ks matrix out goes a new p matrix
|
| subroutine, public | qs_scf_diagonalization::do_ot_diag_kp (matrix_ks, matrix_s, matrix_t, kpoints, scf_env, scf_control, diis_step, added_mos_auto_grow) |
| | fixed-H OT diagonalization for real or complex K-point channels
|
| subroutine, public | qs_scf_diagonalization::do_roks_diag (scf_env, mos, matrix_ks, matrix_s, scf_control, scf_section, diis_step, orthogonal_basis) |
| | Solve a set restricted open Kohn-Sham (ROKS) equations based on the alpha and beta Kohn-Sham matrices from unrestricted Kohn-Sham.
|
| subroutine, public | qs_scf_diagonalization::do_block_krylov_diag (scf_env, mos, matrix_ks, scf_control, scf_section, check_moconv_only) |
| | iterative diagonalization using the block Krylov-space approach
|
| subroutine, public | qs_scf_diagonalization::do_block_davidson_diag (qs_env, scf_env, mos, matrix_ks, matrix_s, scf_control, scf_section, check_moconv_only) |
| | iterative diagonalization using the block davidson space approach
|
| subroutine, public | qs_scf_diagonalization::do_block_davidson_diag_kp (qs_env, scf_env, matrix_ks_kp, matrix_s_kp, kpoints, scf_control) |
| | block-Davidson SCF step for complex K points, one channel per (local kpoint, spin); mirrors do_block_davidson_diag for the preconditioner scheduling and do_general_diag_kp for the H(k)/S(k) assembly and the density exit chain
|
| subroutine, public | qs_scf_diagonalization::diag_kp_smat (matrix_s, kpoints, fmwork) |
| | Kpoint diagonalization routine Transforms matrices to kpoint, distributes kpoint groups, performs diagonalization.
|