(git:6a2e663)
qs_scf Module Reference

Routines for the Quickstep SCF run. More...

Functions/Subroutines

subroutine, public scf (qs_env, has_converged, total_scf_steps)
 perform an scf procedure in the given qs_env More...
 
subroutine, public scf_env_do_scf (scf_env, scf_control, qs_env, converged, should_stop, total_scf_steps)
 perform an scf loop More...
 
subroutine, public scf_env_cleanup (scf_env)
 perform cleanup operations (like releasing temporary storage) at the end of the scf More...
 
subroutine, public cdft_scf (qs_env, should_stop)
 perform a CDFT scf procedure in the given qs_env More...
 

Detailed Description

Routines for the Quickstep SCF run.

History
  • Joost VandeVondele (02.2002) added code for: incremental (pab and gvg) update initialisation (init_cube, l_info)
  • Joost VandeVondele (02.2002) called the poisson code of the classical part this takes into account the spherical cutoff and allows for isolated systems
  • Joost VandeVondele (02.2002) added multiple grid feature changed to spherical cutoff consistently (?) therefore removed the gradient correct functionals
  • updated with the new QS data structures (10.04.02,MK)
  • copy_matrix replaced by transfer_matrix (11.04.02,MK)
  • nrebuild_rho and nrebuild_gvg unified (12.04.02,MK)
  • set_mo_occupation for smearing of the MO occupation numbers (17.04.02,MK)
  • MO level shifting added (22.04.02,MK)
  • Usage of TYPE mo_set_p_type
  • Joost VandeVondele (05.2002) added cholesky based diagonalisation
  • 05.2002 added pao method [fawzi]
  • parallel FFT (JGH 22.05.2002)
  • 06.2002 moved KS matrix construction to qs_build_KS_matrix.F [fawzi]
  • started to include more LSD (01.2003,Joost VandeVondele)
  • 02.2003 scf_env [fawzi]
  • got rid of nrebuild (01.2004, Joost VandeVondele)
  • 10.2004 removed pao [fawzi]
  • 03.2006 large cleaning action [Joost VandeVondele]
  • High-spin ROKS added (05.04.06,MK)
  • Mandes (10.2013) intermediate energy communication with external communicator added
  • kpoints (08.2014, JGH)
  • unified k-point and gamma-point code (2014.11) [Ole Schuett]
  • added extra SCF loop for CDFT constraints (12.2015) [Nico Holmberg]
Author
Matthias Krack (30.04.2001)

Function/Subroutine Documentation

◆ scf()

subroutine, public qs_scf::scf ( type(qs_environment_type), pointer  qs_env,
logical, intent(out), optional  has_converged,
integer, intent(out), optional  total_scf_steps 
)

perform an scf procedure in the given qs_env

Parameters
qs_envthe qs_environment where to perform the scf procedure
has_converged...
total_scf_steps...
History
02.2003 introduced scf_env, moved real work to scf_env_do_scf [fawzi]
Author
fawzi
Note

Definition at line 200 of file qs_scf.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ scf_env_do_scf()

subroutine, public qs_scf::scf_env_do_scf ( type(qs_scf_env_type), pointer  scf_env,
type(scf_control_type), pointer  scf_control,
type(qs_environment_type), pointer  qs_env,
logical, intent(out)  converged,
logical, intent(out)  should_stop,
integer, intent(out)  total_scf_steps 
)

perform an scf loop

Parameters
scf_envthe scf_env where to perform the scf procedure
scf_control...
qs_envthe qs_env, the scf_env lives in
convergedwill be true / false if converged is reached
should_stop...
total_scf_steps...
History
long history, see cvs and qs_scf module history 02.2003 introduced scf_env [fawzi] 09.2005 Frozen density approximation [TdK] 06.2007 Check for SCF iteration count early [jgh] 10.2019 switch_surf_dip [SGh]
Author
Matthias Krack
Note

Definition at line 336 of file qs_scf.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ scf_env_cleanup()

subroutine, public qs_scf::scf_env_cleanup ( type(qs_scf_env_type), intent(inout)  scf_env)

perform cleanup operations (like releasing temporary storage) at the end of the scf

Parameters
scf_env...
History
02.2003 created [fawzi]
Author
fawzi

Definition at line 894 of file qs_scf.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cdft_scf()

subroutine, public qs_scf::cdft_scf ( type(qs_environment_type), pointer  qs_env,
logical, intent(out)  should_stop 
)

perform a CDFT scf procedure in the given qs_env

Parameters
qs_envthe qs_environment where to perform the scf procedure
should_stopflag determining if calculation should stop
History
12.2015 Created
Author
Nico Holmberg

Definition at line 985 of file qs_scf.F.

Here is the call graph for this function:
Here is the caller graph for this function: