15 #include "./base/base_uses.f90"
18 CHARACTER(len=*),
PARAMETER,
PRIVATE :: moduleN =
'mixed_energy_types'
22 TYPE mixed_energy_type
25 END TYPE mixed_energy_type
29 REAL(KIND=
dp),
DIMENSION(:, :),
POINTER :: forces
30 END TYPE mixed_force_type
33 PUBLIC :: mixed_energy_type, &
50 TYPE(mixed_energy_type),
POINTER :: mixed_energy
52 IF (.NOT.
ASSOCIATED(mixed_energy))
THEN
53 ALLOCATE (mixed_energy)
55 CALL init_mixed_energy(mixed_energy)
66 TYPE(mixed_energy_type),
POINTER :: mixed_energy
68 IF (
ASSOCIATED(mixed_energy))
THEN
69 DEALLOCATE (mixed_energy)
77 SUBROUTINE init_mixed_energy(mixed_energy)
78 TYPE(mixed_energy_type),
POINTER :: mixed_energy
80 IF (
ASSOCIATED(mixed_energy))
THEN
81 mixed_energy%pot = 0.0_dp
83 CALL cp_abort(__location__, &
84 "The mixed_energy pointer is not associated "// &
85 "and cannot be initialised")
87 END SUBROUTINE init_mixed_energy
Defines the basic variable types.
integer, parameter, public dp
subroutine, public allocate_mixed_energy(mixed_energy)
Allocate and/or initialise a mixed energy data structure.
subroutine, public deallocate_mixed_energy(mixed_energy)
Deallocate a mixed energy data structure.