15 USE dbcsr_api,
ONLY: dbcsr_deallocate_matrix,&
21 #include "./base/base_uses.f90"
25 PUBLIC :: qs_kpp1_env_type
28 LOGICAL,
PRIVATE,
PARAMETER :: debug_this_module = .true.
29 CHARACTER(len=*),
PARAMETER,
PRIVATE :: moduleN =
'qs_kpp1_env_types'
41 TYPE(dbcsr_p_type),
DIMENSION(:),
POINTER :: v_ao => null()
42 TYPE(xc_derivative_set_type),
POINTER :: deriv_set => null()
43 TYPE(xc_rho_set_type),
POINTER :: rho_set => null()
44 TYPE(xc_derivative_set_type),
POINTER :: deriv_set_admm => null()
45 TYPE(xc_rho_set_type),
POINTER :: rho_set_admm => null()
46 END TYPE qs_kpp1_env_type
58 TYPE(qs_kpp1_env_type) :: kpp1_env
62 IF (
ASSOCIATED(kpp1_env%v_ao))
THEN
63 DO ispin = 1,
SIZE(kpp1_env%v_ao)
64 IF (
ASSOCIATED(kpp1_env%v_ao(ispin)%matrix))
THEN
65 CALL dbcsr_deallocate_matrix(kpp1_env%v_ao(ispin)%matrix)
68 DEALLOCATE (kpp1_env%v_ao)
70 IF (
ASSOCIATED(kpp1_env%deriv_set))
THEN
72 DEALLOCATE (kpp1_env%deriv_set)
73 NULLIFY (kpp1_env%deriv_set)
75 IF (
ASSOCIATED(kpp1_env%rho_set))
THEN
77 DEALLOCATE (kpp1_env%rho_set)
78 NULLIFY (kpp1_env%rho_set)
80 IF (
ASSOCIATED(kpp1_env%deriv_set_admm))
THEN
82 DEALLOCATE (kpp1_env%deriv_set_admm)
83 NULLIFY (kpp1_env%deriv_set_admm)
85 IF (
ASSOCIATED(kpp1_env%rho_set_admm))
THEN
87 DEALLOCATE (kpp1_env%rho_set_admm)
88 NULLIFY (kpp1_env%rho_set_admm)
basis types for the calculation of the perturbation of density theory.
subroutine, public kpp1_release(kpp1_env)
releases a kpp1_env (see doc/ReferenceCounting.html)
represent a group ofunctional derivatives
subroutine, public xc_dset_release(derivative_set)
releases a derivative set
subroutine, public xc_rho_set_release(rho_set, pw_pool)
releases the given rho_set