|
| real(kind=dp) function | qs_scf_diagonalization::adiis_candidate_shift (scf_env) |
| | Fade candidate regularization through handover; never regularize a raw-map check.
|
| 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, added_mos_auto_grow, potential) |
| | 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, added_mos_auto_grow) |
| | 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::do_block_krylov_diag_kp (qs_env, scf_env, matrix_ks_kp, matrix_s_kp, kpoints, scf_control, check_moconv_only, added_mos_auto_grow) |
| | Block Krylov (Lanczos) refinement of the k-point MOS, the complex counterpart of do_block_krylov_diag: every channel (local kpoint, spin) is standardized with the Cholesky factor of S(k), refined by the complex block-Krylov kernel, and rotated back into the generalized problem.
|
| subroutine, public | qs_scf_diagonalization::diag_kp_smat (matrix_s, kpoints, fmwork, lowdin_forces) |
| | Kpoint diagonalization routine Transforms matrices to kpoint, distributes kpoint groups, performs diagonalization.
|