![]() |
(git:b77b4be)
|
Functions/Subroutines | |
subroutine, public | qs_vxc_create (ks_env, rho_struct, xc_section, vxc_rho, vxc_tau, exc, just_energy, edisp, dispersion_env, adiabatic_rescale_factor, pw_env_external) |
calculates and allocates the xc potential, already reducing it to the dependence on rho and the one on tau | |
subroutine, public | qs_xc_density (ks_env, rho_struct, xc_section, dispersion_env, xc_ener, xc_den, vxc, vtau) |
calculates the XC density: E_xc(r) - V_xc(r)*rho(r) or E_xc(r)/rho(r) | |
subroutine, public qs_vxc::qs_vxc_create | ( | type(qs_ks_env_type), pointer | ks_env, |
type(qs_rho_type), pointer | rho_struct, | ||
type(section_vals_type), pointer | xc_section, | ||
type(pw_r3d_rs_type), dimension(:), pointer | vxc_rho, | ||
type(pw_r3d_rs_type), dimension(:), pointer | vxc_tau, | ||
real(kind=dp), intent(out) | exc, | ||
logical, intent(in), optional | just_energy, | ||
real(kind=dp), intent(out), optional | edisp, | ||
type(qs_dispersion_type), optional, pointer | dispersion_env, | ||
real(kind=dp), intent(in), optional | adiabatic_rescale_factor, | ||
type(pw_env_type), optional, pointer | pw_env_external | ||
) |
calculates and allocates the xc potential, already reducing it to the dependence on rho and the one on tau
ks_env | to get all the needed things |
rho_struct | density for which v_xc is calculated |
xc_section | ... |
vxc_rho | will contain the v_xc part that depend on rho (if one of the chosen xc functionals has it it is allocated and you are responsible for it) |
vxc_tau | will contain the kinetic tau part of v_xc (if one of the chosen xc functionals has it it is allocated and you are responsible for it) |
exc | ... |
just_energy | if true calculates just the energy, and does not allocate v_*_rspace |
edisp | ... |
dispersion_env | ... |
adiabatic_rescale_factor | ... |
pw_env_external | external plane wave environment |
Definition at line 95 of file qs_vxc.F.
subroutine, public qs_vxc::qs_xc_density | ( | type(qs_ks_env_type), pointer | ks_env, |
type(qs_rho_type), pointer | rho_struct, | ||
type(section_vals_type), pointer | xc_section, | ||
type(qs_dispersion_type), optional, pointer | dispersion_env, | ||
type(pw_r3d_rs_type), intent(inout), optional | xc_ener, | ||
type(pw_r3d_rs_type), intent(inout), optional | xc_den, | ||
type(pw_r3d_rs_type), dimension(:), optional | vxc, | ||
type(pw_r3d_rs_type), dimension(:), optional | vtau | ||
) |
calculates the XC density: E_xc(r) - V_xc(r)*rho(r) or E_xc(r)/rho(r)
ks_env | to get all the needed things |
rho_struct | density |
xc_section | ... |
dispersion_env | ... |
xc_ener | will contain the xc energy density E_xc(r) - V_xc(r)*rho(r) |
xc_den | will contain the xc energy density E_xc(r)/rho(r) |
vxc | ... |
vtau | ... |
Definition at line 571 of file qs_vxc.F.