![]() |
(git:9754b87)
|
Routines for performing an outer scf loop. More...
Functions/Subroutines | |
integer function, public | outer_loop_variables_count (scf_control, cdft_control) |
returns the number of variables that is employed in the outer loop. with a CDFT constraint this value is returned by the cdft_control type | |
subroutine, public | outer_loop_gradient (qs_env, scf_env) |
computes the gradient wrt to the outer loop variables | |
subroutine, public | outer_loop_optimize (scf_env, scf_control) |
optimizes the parameters of the outer_scf | |
subroutine, public | outer_loop_update_qs_env (qs_env, scf_env) |
propagates the updated variables to wherever they need to be set in qs_env | |
subroutine, public | outer_loop_extrapolate (qs_env) |
uses the outer_scf_history to extrapolate new values for the variables and updates their value in qs_env accordingly | |
subroutine, public | outer_loop_switch (scf_env, scf_control, cdft_control, dir) |
switch between two outer_scf envs stored in cdft_control | |
subroutine, public | outer_loop_purge_history (qs_env) |
purges outer_scf_history zeroing everything except the latest value of the outer_scf variable stored in qs_control | |
Routines for performing an outer scf loop.
integer function, public qs_outer_scf::outer_loop_variables_count | ( | type(scf_control_type), pointer | scf_control, |
type(cdft_control_type), intent(in), optional, pointer | cdft_control | ||
) |
returns the number of variables that is employed in the outer loop. with a CDFT constraint this value is returned by the cdft_control type
scf_control | the outer loop control type |
cdft_control | the cdft loop control type |
Definition at line 68 of file qs_outer_scf.F.
subroutine, public qs_outer_scf::outer_loop_gradient | ( | type(qs_environment_type), pointer | qs_env, |
type(qs_scf_env_type), pointer | scf_env | ||
) |
computes the gradient wrt to the outer loop variables
qs_env | ... |
scf_env | ... |
Definition at line 102 of file qs_outer_scf.F.
subroutine, public qs_outer_scf::outer_loop_optimize | ( | type(qs_scf_env_type), pointer | scf_env, |
type(scf_control_type), pointer | scf_control | ||
) |
optimizes the parameters of the outer_scf
scf_env | the scf_env where to optimize the parameters |
scf_control | control parameters for the optimization |
Definition at line 186 of file qs_outer_scf.F.
subroutine, public qs_outer_scf::outer_loop_update_qs_env | ( | type(qs_environment_type), pointer | qs_env, |
type(qs_scf_env_type), pointer | scf_env | ||
) |
propagates the updated variables to wherever they need to be set in qs_env
qs_env | ... |
scf_env | ... |
Definition at line 386 of file qs_outer_scf.F.
subroutine, public qs_outer_scf::outer_loop_extrapolate | ( | type(qs_environment_type), pointer | qs_env | ) |
uses the outer_scf_history to extrapolate new values for the variables and updates their value in qs_env accordingly
qs_env | the qs_environment_type where to update the variables |
Definition at line 442 of file qs_outer_scf.F.
subroutine, public qs_outer_scf::outer_loop_switch | ( | type(qs_scf_env_type), pointer | scf_env, |
type(scf_control_type), pointer | scf_control, | ||
type(cdft_control_type), pointer | cdft_control, | ||
integer, intent(in) | dir | ||
) |
switch between two outer_scf envs stored in cdft_control
scf_env | the scf_env where values need to be updated using cdft_control |
scf_control | the scf_control where values need to be updated using cdft_control |
cdft_control | container for the second outer_scf env |
dir | determines what switching operation to perform |
Definition at line 538 of file qs_outer_scf.F.
subroutine, public qs_outer_scf::outer_loop_purge_history | ( | type(qs_environment_type), pointer | qs_env | ) |
purges outer_scf_history zeroing everything except the latest value of the outer_scf variable stored in qs_control
qs_env | the qs_environment_type where to purge |
Definition at line 650 of file qs_outer_scf.F.