16#include "./base/base_uses.f90"
19 CHARACTER(len=*),
PARAMETER,
PRIVATE :: moduleN =
'fist_energy_types'
25 REAL(kind=
dp) :: kin = 0.0_dp, pot = 0.0_dp, e_gspace = 0.0_dp, e_self = 0.0_dp, &
26 e_neut = 0.0_dp, e_bonded = 0.0_dp, e_induction = 0.0_dp
27 REAL(kind=
dp) :: kin_shell = 0.0_dp, harm_shell = 0.0_dp
51 IF (.NOT.
ASSOCIATED(fist_energy))
THEN
52 ALLOCATE (fist_energy)
55 CALL init_fist_energy(fist_energy)
69 IF (
ASSOCIATED(fist_energy))
THEN
70 DEALLOCATE (fist_energy)
72 CALL cp_abort(__location__, &
73 "The fist_energy pointer is not associated "// &
74 "and cannot be deallocated.")
86 SUBROUTINE init_fist_energy(fist_energy)
89 IF (
ASSOCIATED(fist_energy))
THEN
90 fist_energy%kin = 0.0_dp
91 fist_energy%pot = 0.0_dp
92 fist_energy%e_gspace = 0.0_dp
93 fist_energy%e_self = 0.0_dp
94 fist_energy%e_neut = 0.0_dp
95 fist_energy%e_bonded = 0.0_dp
96 fist_energy%e_induction = 0.0_dp
97 fist_energy%kin_shell = 0.0_dp
98 fist_energy%harm_shell = 0.0_dp
100 CALL cp_abort(__location__, &
101 "The fist_energy pointer is not associated "// &
102 "and cannot be initialised.")
105 END SUBROUTINE init_fist_energy
subroutine, public allocate_fist_energy(fist_energy)
Allocate and/or initialise a Fist energy data structure.
subroutine, public deallocate_fist_energy(fist_energy)
Deallocate a Fist energy data structure.
Defines the basic variable types.
integer, parameter, public dp