25#include "./base/base_uses.f90"
43 REAL(kind=
dp) :: eps = -1.0_dp
44 REAL(kind=
dp) :: v = -1.0_dp
45 REAL(kind=
dp) :: f = -1.0_dp
46 REAL(kind=
dp) :: mass = -1.0_dp
51 INTEGER :: degrees_of_freedom = -1
52 REAL(kind=
dp) :: eta = -1.0_dp
53 REAL(kind=
dp) :: v = -1.0_dp
54 REAL(kind=
dp) :: f = -1.0_dp
55 REAL(kind=
dp) :: nkt = -1.0_dp
56 REAL(kind=
dp) :: mass = -1.0_dp
57 END TYPE nhc_info_type
61 REAL(kind=
dp),
POINTER :: point => null()
62 END TYPE point_info_type
66 INTEGER :: dis_type = -1
67 INTEGER,
POINTER,
DIMENSION(:) :: index => null(), map_index => null()
68 REAL(kind=
dp),
POINTER,
DIMENSION(:) :: v_scale => null()
69 REAL(kind=
dp),
POINTER,
DIMENSION(:) :: s_kin => null()
70 TYPE(point_info_type),
POINTER,
DIMENSION(:, :) :: p_scale => null()
71 TYPE(point_info_type),
POINTER,
DIMENSION(:, :) :: p_kin => null()
76 INTEGER :: nyosh = -1, nc = -1, nhc_len = -1
77 INTEGER :: glob_num_nhc = -1, loc_num_nhc = -1, region = -1
78 REAL(kind=
dp) :: tau_nhc = -1.0_dp, dt_fact = -1.0_dp
79 REAL(kind=
dp),
POINTER :: dt_yosh(:) => null()
80 TYPE(nhc_info_type),
POINTER :: nvt(:, :) => null()
84 CHARACTER(len=*),
PARAMETER,
PRIVATE :: modulen =
'extended_system_types'
97 NULLIFY (lnhc%dt_yosh)
99 NULLIFY (lnhc%map_info)
101 lnhc%glob_num_nhc = 0
102 lnhc%dt_fact = 1.0_dp
121 NULLIFY (map_info%index, map_info%map_index)
122 NULLIFY (map_info%v_scale)
123 NULLIFY (map_info%p_scale)
124 NULLIFY (map_info%s_kin)
125 NULLIFY (map_info%p_kin)
137 IF (
ASSOCIATED(map_info))
THEN
138 IF (
ASSOCIATED(map_info%p_kin))
THEN
139 DEALLOCATE (map_info%p_kin)
141 IF (
ASSOCIATED(map_info%p_scale))
THEN
142 DEALLOCATE (map_info%p_scale)
144 IF (
ASSOCIATED(map_info%v_scale))
THEN
145 DEALLOCATE (map_info%v_scale)
147 IF (
ASSOCIATED(map_info%s_kin))
THEN
148 DEALLOCATE (map_info%s_kin)
150 IF (
ASSOCIATED(map_info%index))
THEN
151 DEALLOCATE (map_info%index)
153 IF (
ASSOCIATED(map_info%map_index))
THEN
154 DEALLOCATE (map_info%map_index)
157 DEALLOCATE (map_info)
169 IF (
ASSOCIATED(lnhc))
THEN
170 IF (
ASSOCIATED(lnhc%dt_yosh))
THEN
171 DEALLOCATE (lnhc%dt_yosh)
173 IF (
ASSOCIATED(lnhc%nvt))
THEN
174 DEALLOCATE (lnhc%nvt)
collects all references to literature in CP2K as new algorithms / method are included from literature...
integer, save, public nose1984a
integer, save, public nose1984b
Lumps all possible extended system variables into one type for easy access and passing.
subroutine, public lnhc_dealloc(lnhc)
Deallocate type for Nose-Hoover thermostat.
subroutine, public release_map_info_type(map_info)
release the map_info type
logical, parameter, public debug_uniaxial_limit
subroutine, public create_map_info_type(map_info)
create the map_info type
subroutine, public lnhc_init(lnhc, section)
Initialize type for Nose-Hoover thermostat.
logical, parameter, public debug_isotropic_limit
Defines the basic variable types.
integer, parameter, public dp