(git:6a2e663)
qs_ks_methods Module Reference

routines that build the Kohn-Sham matrix (i.e calculate the coulomb and xc parts More...

Functions/Subroutines

subroutine, public qs_ks_build_kohn_sham_matrix (qs_env, calculate_forces, just_energy, print_active, ext_ks_matrix)
 routine where the real calculations are made: the KS matrix is calculated More...
 
subroutine, public calc_rho_tot_gspace (rho_tot_gspace, qs_env, rho, skip_nuclear_density)
 ... More...
 
subroutine, public qs_ks_update_qs_env (qs_env, calculate_forces, just_energy, print_active)
 updates the Kohn Sham matrix of the given qs_env (facility method) More...
 
subroutine, public qs_ks_allocate_basics (qs_env, is_complex)
 Allocate ks_matrix if necessary, take current overlap matrix as template. More...
 

Detailed Description

routines that build the Kohn-Sham matrix (i.e calculate the coulomb and xc parts

Author
Fawzi Mohamed
History
  • 05.2002 moved from qs_scf (see there the history) [fawzi]
  • JGH [30.08.02] multi-grid arrays independent from density and potential
  • 10.2002 introduced pools, uses updated rho as input, removed most temporary variables, renamed may vars, began conversion to LSD [fawzi]
  • 10.2004 moved calculate_w_matrix here [Joost VandeVondele] introduced energy derivative wrt MOs [Joost VandeVondele]
  • SCCS implementation (16.10.2013,MK)

Function/Subroutine Documentation

◆ qs_ks_build_kohn_sham_matrix()

subroutine, public qs_ks_methods::qs_ks_build_kohn_sham_matrix ( type(qs_environment_type), pointer  qs_env,
logical, intent(in)  calculate_forces,
logical, intent(in)  just_energy,
logical, intent(in), optional  print_active,
type(dbcsr_p_type), dimension(:), optional, pointer  ext_ks_matrix 
)

routine where the real calculations are made: the KS matrix is calculated

Parameters
qs_envthe qs_env to update
calculate_forcesif true calculate the quantities needed to calculate the forces. Defaults to false.
just_energyif true updates the energies but not the ks matrix. Defaults to false
print_active...
ext_ks_matrix...
History
06.2002 moved from qs_scf to qs_ks_methods, use of ks_env new did_change scheme [fawzi] 10.2002 introduced pools, uses updated rho as input, LSD [fawzi] 10.2004 build_kohn_sham matrix now also computes the derivatives of the total energy wrt to the MO coefs, if instructed to do so. This appears useful for orbital dependent functionals where the KS matrix alone (however this might be defined) does not contain the info to construct this derivative.
Author
Matthias Krack
Note
make rho, energy and qs_charges optional, defaulting to qs_env components?

Definition at line 171 of file qs_ks_methods.F.

Here is the caller graph for this function:

◆ calc_rho_tot_gspace()

subroutine, public qs_ks_methods::calc_rho_tot_gspace ( type(pw_c1d_gs_type), intent(inout)  rho_tot_gspace,
type(qs_environment_type), pointer  qs_env,
type(qs_rho_type), pointer  rho,
logical, intent(in), optional  skip_nuclear_density 
)

...

Parameters
rho_tot_gspace...
qs_env...
rho...
skip_nuclear_density...

Definition at line 915 of file qs_ks_methods.F.

Here is the caller graph for this function:

◆ qs_ks_update_qs_env()

subroutine, public qs_ks_methods::qs_ks_update_qs_env ( type(qs_environment_type), pointer  qs_env,
logical, intent(in), optional  calculate_forces,
logical, intent(in), optional  just_energy,
logical, intent(in), optional  print_active 
)

updates the Kohn Sham matrix of the given qs_env (facility method)

Parameters
qs_envthe qs_env to update
calculate_forcesif true calculate the quantities needed to calculate the forces. Defaults to false.
just_energyif true updates the energies but not the ks matrix. Defaults to false
print_active...
History
4.2002 created [fawzi] 8.2014 kpoints [JGH] 10.2014 refractored [Ole Schuett]
Author
Fawzi Mohamed

Definition at line 1055 of file qs_ks_methods.F.

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

◆ qs_ks_allocate_basics()

subroutine, public qs_ks_methods::qs_ks_allocate_basics ( type(qs_environment_type), pointer  qs_env,
logical, intent(in)  is_complex 
)

Allocate ks_matrix if necessary, take current overlap matrix as template.

Parameters
qs_env...
is_complex...
History
refactoring 04.03.2011 [MI]
Author

Definition at line 1227 of file qs_ks_methods.F.

Here is the caller graph for this function: