(git:e7e05ae)
qs_diis.F File Reference

Go to the source code of this file.

Modules

module  qs_diis
 Apply the direct inversion in the iterative subspace (DIIS) of Pulay in the framework of an SCF iteration for convergence acceleration.
 

Functions/Subroutines

subroutine, public qs_diis::qs_diis_b_create (diis_buffer, nbuffer)
 Allocates an SCF DIIS buffer. More...
 
subroutine, public qs_diis::qs_diis_b_step (diis_buffer, mo_array, kc, sc, delta, error_max, diis_step, eps_diis, nmixing, s_matrix, scf_section, roks)
 Update the SCF DIIS buffer, and if appropriate does a diis step. More...
 
pure subroutine, public qs_diis::qs_diis_b_clear (diis_buffer)
 clears the buffer More...
 
subroutine, public qs_diis::qs_diis_b_step_4lscf (diis_buffer, qs_env, ls_scf_env, unit_nr, iscf, diis_step, eps_diis, nmixing, s_matrix, threshold)
 Update the SCF DIIS buffer in linear scaling SCF (LS-SCF), and if appropriate does a diis step. More...
 
pure subroutine, public qs_diis::qs_diis_b_clear_sparse (diis_buffer)
 clears the DIIS buffer in LS-SCF calculation More...
 
pure subroutine, public qs_diis::qs_diis_b_create_sparse (diis_buffer, nbuffer)
 Allocates an SCF DIIS buffer for LS-SCF calculation. More...
 
subroutine, public qs_diis::qs_diis_b_create_kp (diis_buffer, nbuffer)
 Allocates an SCF DIIS buffer for k-points. More...
 
pure subroutine, public qs_diis::qs_diis_b_clear_kp (diis_buffer)
 clears the buffer More...
 
subroutine, public qs_diis::qs_diis_b_info_kp (diis_buffer, ib, nb)
 Update info about the current buffer step ib and the current number of buffers nb. More...
 
subroutine, public qs_diis::qs_diis_b_calc_err_kp (diis_buffer, ib, mos, kc, sc, ispin, ikp, nkp_local, scf_section)
 Calculate and store the error for a given k-point. More...
 
subroutine, public qs_diis::qs_diis_b_step_kp (diis_buffer, coeffs, ib, nb, delta, error_max, diis_step, eps_diis, nspin, nkp, nkp_local, nmixing, scf_section, para_env)
 Update the SCF DIIS buffer, and if appropriate does a diis step, for k-points. More...