Line data Source code
1 : !--------------------------------------------------------------------------------------------------!
2 : ! CP2K: A general program to perform molecular dynamics simulations !
3 : ! Copyright 2000-2024 CP2K developers group <https://cp2k.org> !
4 : ! !
5 : ! SPDX-License-Identifier: GPL-2.0-or-later !
6 : !--------------------------------------------------------------------------------------------------!
7 :
8 : ! **************************************************************************************************
9 : !> \brief Set the QMMM Gaussian Input Environment
10 : !> \par History
11 : !> 6.2004 created [tlaino]
12 : !> \author Teodoro Laino
13 : ! **************************************************************************************************
14 : MODULE qmmm_gaussian_input
15 : USE cp_log_handling, ONLY: cp_logger_get_default_io_unit
16 : USE cp_parser_methods, ONLY: parser_get_object,&
17 : parser_search_string
18 : USE cp_parser_types, ONLY: cp_parser_type,&
19 : parser_create,&
20 : parser_release
21 : USE input_section_types, ONLY: section_vals_type,&
22 : section_vals_val_get
23 : USE kinds, ONLY: default_string_length,&
24 : dp
25 : USE mathconstants, ONLY: rootpi
26 : USE message_passing, ONLY: mp_para_env_type
27 : USE physcon, ONLY: bohr
28 : USE qmmm_gaussian_data, ONLY: &
29 : g10_a1, g10_a10, g10_a2, g10_a3, g10_a4, g10_a5, g10_a6, g10_a7, g10_a8, g10_a9, g10_b1, &
30 : g10_b10, g10_b2, g10_b3, g10_b4, g10_b5, g10_b6, g10_b7, g10_b8, g10_b9, g10_rc, g11_a1, &
31 : g11_a10, g11_a11, g11_a2, g11_a3, g11_a4, g11_a5, g11_a6, g11_a7, g11_a8, g11_a9, g11_b1, &
32 : g11_b10, g11_b11, g11_b2, g11_b3, g11_b4, g11_b5, g11_b6, g11_b7, g11_b8, g11_b9, g11_rc, &
33 : g12_a1, g12_a10, g12_a11, g12_a12, g12_a2, g12_a3, g12_a4, g12_a5, g12_a6, g12_a7, g12_a8, &
34 : g12_a9, g12_b1, g12_b10, g12_b11, g12_b12, g12_b2, g12_b3, g12_b4, g12_b5, g12_b6, g12_b7, &
35 : g12_b8, g12_b9, g12_rc, g13_a1, g13_a10, g13_a11, g13_a12, g13_a13, g13_a2, g13_a3, &
36 : g13_a4, g13_a5, g13_a6, g13_a7, g13_a8, g13_a9, g13_b1, g13_b10, g13_b11, g13_b12, &
37 : g13_b13, g13_b2, g13_b3, g13_b4, g13_b5, g13_b6, g13_b7, g13_b8, g13_b9, g13_rc, g14_a1, &
38 : g14_a10, g14_a11, g14_a12, g14_a13, g14_a14, g14_a2, g14_a3, g14_a4, g14_a5, g14_a6, &
39 : g14_a7, g14_a8, g14_a9, g14_b1, g14_b10, g14_b11, g14_b12, g14_b13, g14_b14, g14_b2, &
40 : g14_b3, g14_b4, g14_b5, g14_b6, g14_b7, g14_b8, g14_b9, g14_rc, g15_a1, g15_a10, g15_a11, &
41 : g15_a12, g15_a13, g15_a14, g15_a15, g15_a2, g15_a3, g15_a4, g15_a5, g15_a6, g15_a7, &
42 : g15_a8, g15_a9, g15_b1, g15_b10, g15_b11, g15_b12, g15_b13, g15_b14, g15_b15, g15_b2, &
43 : g15_b3, g15_b4, g15_b5, g15_b6, g15_b7, g15_b8, g15_b9, g15_rc, g16_a1, g16_a10, g16_a11, &
44 : g16_a12, g16_a13, g16_a14, g16_a15, g16_a16, g16_a2, g16_a3, g16_a4, g16_a5, g16_a6, &
45 : g16_a7, g16_a8, g16_a9, g16_b1, g16_b10, g16_b11, g16_b12, g16_b13, g16_b14, g16_b15, &
46 : g16_b16, g16_b2, g16_b3, g16_b4, g16_b5, g16_b6, g16_b7, g16_b8, g16_b9, g16_rc, g17_a1, &
47 : g17_a10, g17_a11, g17_a12, g17_a13, g17_a14, g17_a15, g17_a16, g17_a17, g17_a2, g17_a3, &
48 : g17_a4, g17_a5, g17_a6, g17_a7, g17_a8, g17_a9, g17_b1, g17_b10, g17_b11, g17_b12, &
49 : g17_b13, g17_b14, g17_b15, g17_b16, g17_b17, g17_b2, g17_b3, g17_b4, g17_b5, g17_b6, &
50 : g17_b7, g17_b8, g17_b9, g18_a1, g18_a10, g18_a11, g18_a12, g18_a13, g18_a14, g18_a15, &
51 : g18_a16, g18_a17, g18_a18, g18_a2, g18_a3, g18_a4, g18_a5, g18_a6, g18_a7, g18_a8, g18_a9, &
52 : g18_b1, g18_b10, g18_b11, g18_b12, g18_b13, g18_b14, g18_b15, g18_b16, g18_b17, g18_b18, &
53 : g18_b2, g18_b3, g18_b4, g18_b5, g18_b6, g18_b7, g18_b8, g18_b9, g2_a1, g2_a2, g2_b1, &
54 : g2_b2, g2_rc, g3_a1, g3_a2, g3_a3, g3_b1, g3_b2, g3_b3, g3_rc, g4_a1, g4_a2, g4_a3, g4_a4, &
55 : g4_b1, g4_b2, g4_b3, g4_b4, g4_rc, g5_a1, g5_a2, g5_a3, g5_a4, g5_a5, g5_b1, g5_b2, g5_b3, &
56 : g5_b4, g5_b5, g5_rc, g6_a1, g6_a2, g6_a3, g6_a4, g6_a5, g6_a6, g6_b1, g6_b2, g6_b3, g6_b4, &
57 : g6_b5, g6_b6, g6_rc, g7_a1, g7_a2, g7_a3, g7_a4, g7_a5, g7_a6, g7_a7, g7_b1, g7_b2, g7_b3, &
58 : g7_b4, g7_b5, g7_b6, g7_b7, g7_rc, g8_a1, g8_a2, g8_a3, g8_a4, g8_a5, g8_a6, g8_a7, g8_a8, &
59 : g8_b1, g8_b2, g8_b3, g8_b4, g8_b5, g8_b6, g8_b7, g8_b8, g8_rc, g9_a1, g9_a2, g9_a3, g9_a4, &
60 : g9_a5, g9_a6, g9_a7, g9_a8, g9_a9, g9_b1, g9_b2, g9_b3, g9_b4, g9_b5, g9_b6, g9_b7, g9_b8, &
61 : g9_b9, g9_rc, s10_a1, s10_a10, s10_a2, s10_a3, s10_a4, s10_a5, s10_a6, s10_a7, s10_a8, &
62 : s10_a9, s10_b1, s10_b10, s10_b2, s10_b3, s10_b4, s10_b5, s10_b6, s10_b7, s10_b8, s10_b9, &
63 : s10_rc, s11_a1, s11_a10, s11_a11, s11_a2, s11_a3, s11_a4, s11_a5, s11_a6, s11_a7, s11_a8, &
64 : s11_a9, s11_b1, s11_b10, s11_b11, s11_b2, s11_b3, s11_b4, s11_b5, s11_b6, s11_b7, s11_b8, &
65 : s11_b9, s11_rc, s12_a1, s12_a10, s12_a11, s12_a12, s12_a2, s12_a3, s12_a4, s12_a5, s12_a6, &
66 : s12_a7, s12_a8, s12_a9, s12_b1, s12_b10, s12_b11, s12_b12, s12_b2, s12_b3, s12_b4, s12_b5, &
67 : s12_b6, s12_b7, s12_b8, s12_b9, s12_rc, s13_a1, s13_a10, s13_a11, s13_a12, s13_a13, &
68 : s13_a2, s13_a3, s13_a4, s13_a5, s13_a6, s13_a7, s13_a8, s13_a9, s13_b1, s13_b10, s13_b11, &
69 : s13_b12, s13_b13, s13_b2, s13_b3, s13_b4, s13_b5, s13_b6, s13_b7, s13_b8, s13_b9, s13_rc, &
70 : s14_a1, s14_a10, s14_a11, s14_a12, s14_a13, s14_a14, s14_a2, s14_a3, s14_a4, s14_a5, &
71 : s14_a6, s14_a7, s14_a8, s14_a9, s14_b1, s14_b10, s14_b11, s14_b12, s14_b13, s14_b14, &
72 : s14_b2, s14_b3, s14_b4, s14_b5, s14_b6, s14_b7, s14_b8, s14_b9, s14_rc, s15_a1, s15_a10, &
73 : s15_a11, s15_a12, s15_a13, s15_a14, s15_a15, s15_a2, s15_a3, s15_a4, s15_a5, s15_a6, &
74 : s15_a7, s15_a8, s15_a9, s15_b1, s15_b10, s15_b11, s15_b12, s15_b13, s15_b14, s15_b15, &
75 : s15_b2, s15_b3, s15_b4, s15_b5, s15_b6, s15_b7, s15_b8, s15_b9, s15_rc, s16_a1, s16_a10, &
76 : s16_a11, s16_a12, s16_a13, s16_a14, s16_a15, s16_a16, s16_a2, s16_a3, s16_a4, s16_a5, &
77 : s16_a6, s16_a7, s16_a8, s16_a9, s16_b1, s16_b10, s16_b11, s16_b12, s16_b13, s16_b14, &
78 : s16_b15, s16_b16, s16_b2, s16_b3, s16_b4, s16_b5, s16_b6, s16_b7, s16_b8, s16_b9, s16_rc, &
79 : s17_a1, s17_a10, s17_a11, s17_a12, s17_a13, s17_a14, s17_a15, s17_a16, s17_a17, s17_a2, &
80 : s17_a3, s17_a4, s17_a5, s17_a6, s17_a7, s17_a8, s17_a9, s17_b1, s17_b10, s17_b11, s17_b12, &
81 : s17_b13, s17_b14, s17_b15, s17_b16, s17_b17, s17_b2, s17_b3, s17_b4, s17_b5, s17_b6, &
82 : s17_b7, s17_b8, s17_b9, s17_rc, s18_a1, s18_a10, s18_a11, s18_a12, s18_a13, s18_a14, &
83 : s18_a15, s18_a16, s18_a17, s18_a18, s18_a2, s18_a3, s18_a4, s18_a5, s18_a6, s18_a7, &
84 : s18_a8, s18_a9, s18_b1, s18_b10, s18_b11, s18_b12, s18_b13, s18_b14, s18_b15, s18_b16, &
85 : s18_b17, s18_b18, s18_b2, s18_b3, s18_b4, s18_b5, s18_b6, s18_b7, s18_b8, s18_b9, s18_rc, &
86 : s2_a1, s2_a2, s2_b1, s2_b2, s2_rc, s3_a1, s3_a2, s3_a3, s3_b1, s3_b2, s3_b3, s3_rc, s4_a1, &
87 : s4_a2, s4_a3, s4_a4, s4_b1, s4_b2, s4_b3, s4_b4, s4_rc, s5_a1, s5_a2, s5_a3, s5_a4, s5_a5, &
88 : s5_b1, s5_b2, s5_b3, s5_b4, s5_b5, s5_rc, s6_a1, s6_a2, s6_a3, s6_a4, s6_a5, s6_a6, s6_b1, &
89 : s6_b2, s6_b3, s6_b4, s6_b5, s6_b6, s6_rc, s7_a1, s7_a2, s7_a3, s7_a4, s7_a5, s7_a6, s7_a7, &
90 : s7_b1, s7_b2, s7_b3, s7_b4, s7_b5, s7_b6, s7_b7, s7_rc, s8_a1, s8_a2, s8_a3, s8_a4, s8_a5, &
91 : s8_a6, s8_a7, s8_a8, s8_b1, s8_b2, s8_b3, s8_b4, s8_b5, s8_b6, s8_b7, s8_b8, s8_rc, s9_a1, &
92 : s9_a2, s9_a3, s9_a4, s9_a5, s9_a6, s9_a7, s9_a8, s9_a9, s9_b1, s9_b2, s9_b3, s9_b4, s9_b5, &
93 : s9_b6, s9_b7, s9_b8, s9_b9, s9_rc
94 : USE qmmm_gaussian_types, ONLY: qmmm_gaussian_p_type
95 : USE string_utilities, ONLY: uppercase
96 : #include "./base/base_uses.f90"
97 :
98 : IMPLICIT NONE
99 : PRIVATE
100 :
101 : LOGICAL, PRIVATE, PARAMETER :: debug_this_module = .TRUE.
102 : CHARACTER(len=*), PARAMETER, PRIVATE :: moduleN = 'qmmm_gaussian_input'
103 :
104 : PUBLIC :: read_mm_potential, &
105 : set_mm_potential_swave, &
106 : set_mm_potential_erf
107 : !***
108 : CONTAINS
109 :
110 : ! **************************************************************************************************
111 : !> \brief read MM_POTENTIAL file
112 : !> \param para_env ...
113 : !> \param qmmm_gaussian_fns ...
114 : !> \param compatibility ...
115 : !> \param qmmm_section ...
116 : !> \par History
117 : !> 06.2004 created [tlaino]
118 : !> \author Teodoro Laino
119 : ! **************************************************************************************************
120 188 : SUBROUTINE read_mm_potential(para_env, qmmm_gaussian_fns, &
121 : compatibility, qmmm_section)
122 : TYPE(mp_para_env_type), POINTER :: para_env
123 : TYPE(qmmm_gaussian_p_type), DIMENSION(:), POINTER :: qmmm_gaussian_fns
124 : LOGICAL, INTENT(IN) :: compatibility
125 : TYPE(section_vals_type), POINTER :: qmmm_section
126 :
127 : CHARACTER(LEN=240) :: line
128 : CHARACTER(LEN=default_string_length) :: Ftarget, mm_potential_file_name, Units
129 : INTEGER :: IRad, istart, Ival, j, Nog, Nval, &
130 : output_unit
131 : LOGICAL :: Found, Found_Radius
132 : REAL(KIND=dp) :: fconv, my_radius, Radius
133 : TYPE(cp_parser_type) :: parser
134 :
135 188 : output_unit = cp_logger_get_default_io_unit()
136 94 : Nval = SIZE(qmmm_gaussian_fns)
137 94 : Ival = 0
138 : CALL section_vals_val_get(qmmm_section, "MM_POTENTIAL_FILE_NAME", &
139 94 : c_val=mm_potential_file_name)
140 :
141 94 : CALL parser_create(parser, mm_potential_file_name, para_env=para_env)
142 :
143 : search_loop: DO
144 326 : Ftarget = "&MM_FIT_POT"
145 326 : IF (Ival .EQ. Nval) EXIT search_loop
146 232 : CALL parser_search_string(parser, Ftarget, .TRUE., found, line)
147 326 : IF (Found) THEN
148 : !
149 : ! Structure example of the MM fit potential file:
150 : !
151 : ! &MM_FIT_POT
152 : ! RADIUS 0.4 Angstrom
153 : ! 7
154 : ! 0.223396 0.811453 Bohr
155 : ! 0.306814 1.01988 Bohr
156 : ! 0.254879 1.37404 Bohr
157 : ! 0.188293 1.87929 Bohr
158 : ! 0.136391 2.56745 Bohr
159 : ! 0.100305 3.50033 Bohr
160 : ! 0.0790169 4.82046 Bohr
161 : ! &END
162 : !
163 232 : CALL parser_get_object(parser, Ftarget, newline=.TRUE.)
164 232 : CPASSERT(TRIM(Ftarget) == "RADIUS")
165 232 : CALL parser_get_object(parser, radius)
166 232 : CALL parser_get_object(parser, units)
167 232 : CALL uppercase(units)
168 232 : fconv = 1.0_dp
169 232 : IF (TRIM(units) .EQ. "ANGSTROM") fconv = bohr
170 232 : Found_Radius = .FALSE.
171 232 : radius = radius*fconv
172 408 : Radius_Loop: DO J = 1, SIZE(qmmm_gaussian_fns)
173 408 : IF (ABS(radius - qmmm_gaussian_fns(J)%pgf%Elp_Radius) .LT. EPSILON(0.0_dp)) THEN
174 : Found_Radius = .TRUE.
175 : EXIT Radius_Loop
176 : END IF
177 : END DO Radius_Loop
178 232 : IF (.NOT. Found_Radius) THEN
179 : CYCLE search_loop
180 : END IF
181 170 : Ival = Ival + 1
182 170 : IRad = J
183 : ! Read Rmin, Rmax
184 170 : CALL parser_get_object(parser, qmmm_gaussian_fns(J)%pgf%Number_of_Gaussians, newline=.TRUE.)
185 : ! Allocate Vectors
186 170 : istart = 1
187 170 : IF (compatibility) THEN
188 8 : qmmm_gaussian_fns(J)%pgf%Number_of_Gaussians = qmmm_gaussian_fns(J)%pgf%Number_of_Gaussians + 1
189 8 : istart = 2
190 : END IF
191 170 : NOG = qmmm_gaussian_fns(IRad)%pgf%Number_of_Gaussians
192 510 : ALLOCATE (qmmm_gaussian_fns(IRad)%pgf%Ak(NOG))
193 340 : ALLOCATE (qmmm_gaussian_fns(IRad)%pgf%Gk(NOG))
194 170 : IF (compatibility) THEN
195 8 : my_radius = qmmm_gaussian_fns(J)%pgf%Elp_Radius_corr
196 8 : qmmm_gaussian_fns(IRad)%pgf%Ak(1) = 1.0_dp/radius - 2.0_dp/(rootpi*radius)
197 8 : qmmm_gaussian_fns(IRad)%pgf%Gk(1) = my_radius
198 : END IF
199 1592 : DO J = istart, qmmm_gaussian_fns(IRad)%pgf%Number_of_Gaussians
200 1190 : CALL parser_get_object(parser, qmmm_gaussian_fns(IRad)%pgf%Ak(J), newline=.TRUE.)
201 1190 : CALL parser_get_object(parser, qmmm_gaussian_fns(IRad)%pgf%Gk(J))
202 1190 : CALL parser_get_object(parser, units)
203 1190 : CALL uppercase(units)
204 1190 : fconv = 1.0_dp
205 1190 : IF (TRIM(units) .EQ. "ANGSTROM") fconv = bohr
206 1190 : qmmm_gaussian_fns(IRad)%pgf%Ak(J) = qmmm_gaussian_fns(IRad)%pgf%Ak(J)*fconv
207 1360 : qmmm_gaussian_fns(IRad)%pgf%Gk(J) = qmmm_gaussian_fns(IRad)%pgf%Gk(J)*fconv
208 : END DO
209 : ELSE
210 : ! *** Stop program, if the end of file is reached ***
211 0 : IF (output_unit > 0) WRITE (output_unit, '(A,F12.6,A)') "Discrepancies in Radius: ", Radius, " definition."
212 0 : CPABORT("Radius Value not found in MM_POTENTIAL file")
213 : END IF
214 :
215 : END DO search_loop
216 :
217 94 : CALL parser_release(parser)
218 :
219 282 : END SUBROUTINE read_mm_potential
220 :
221 : ! **************************************************************************************************
222 : !> \brief set the GEEP information for Erf(r/rc)/r
223 : !> \param qmmm_gaussian_fns ...
224 : !> \param compatibility ...
225 : !> \param num_geep_gauss ...
226 : !> \par History
227 : !> 07.2005 created [tlaino]
228 : !> \author Teodoro Laino
229 : ! **************************************************************************************************
230 130 : SUBROUTINE set_mm_potential_erf(qmmm_gaussian_fns, &
231 : compatibility, num_geep_gauss)
232 : TYPE(qmmm_gaussian_p_type), DIMENSION(:), POINTER :: qmmm_gaussian_fns
233 : LOGICAL, INTENT(IN) :: compatibility
234 : INTEGER, INTENT(IN) :: num_geep_gauss
235 :
236 : INTEGER :: IRad, istart, Nog, Nval
237 : REAL(KIND=dp) :: my_radius, radius, rc
238 :
239 130 : Nval = SIZE(qmmm_gaussian_fns)
240 320 : DO IRad = 1, Nval
241 190 : qmmm_gaussian_fns(IRad)%pgf%Number_of_Gaussians = num_geep_gauss
242 190 : radius = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius
243 190 : istart = 0
244 : ! Allocate Vectors
245 190 : IF (compatibility) THEN
246 2 : qmmm_gaussian_fns(IRad)%pgf%Number_of_Gaussians = qmmm_gaussian_fns(IRad)%pgf%Number_of_Gaussians + 1
247 2 : istart = 1
248 : END IF
249 8 : SELECT CASE (num_geep_gauss)
250 : CASE (2)
251 8 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(g2_rc*bohr)
252 : CASE (3)
253 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(g3_rc*bohr)
254 : CASE (4)
255 42 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(g4_rc*bohr)
256 : CASE (5)
257 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(g5_rc*bohr)
258 : CASE (6)
259 74 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(g6_rc*bohr)
260 : CASE (7)
261 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(g7_rc*bohr)
262 : CASE (8)
263 8 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(g8_rc*bohr)
264 : CASE (9)
265 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(g9_rc*bohr)
266 : CASE (10)
267 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(g10_rc*bohr)
268 : CASE (11)
269 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(g11_rc*bohr)
270 : CASE (12)
271 10 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(g12_rc*bohr)
272 : CASE (13)
273 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(g13_rc*bohr)
274 : CASE (14)
275 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(g14_rc*bohr)
276 : CASE (15)
277 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(g15_rc*bohr)
278 : CASE (16)
279 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(g16_rc*bohr)
280 : CASE (17)
281 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(g16_rc*bohr)
282 : CASE (18)
283 190 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(g16_rc*bohr)
284 : END SELECT
285 190 : NOG = qmmm_gaussian_fns(IRad)%pgf%Number_of_Gaussians
286 570 : ALLOCATE (qmmm_gaussian_fns(IRad)%pgf%Ak(NOG))
287 570 : ALLOCATE (qmmm_gaussian_fns(IRad)%pgf%Gk(NOG))
288 190 : IF (compatibility) THEN
289 2 : my_radius = qmmm_gaussian_fns(IRad)%pgf%Elp_Radius_corr
290 2 : qmmm_gaussian_fns(IRad)%pgf%Ak(1) = 1.0_dp/radius - 2.0_dp/(rootpi*radius)
291 2 : qmmm_gaussian_fns(IRad)%pgf%Gk(1) = my_radius
292 : END IF
293 8 : SELECT CASE (num_geep_gauss)
294 : CASE (2)
295 8 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = g2_a1
296 8 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = g2_b1
297 8 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = g2_a2
298 8 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = g2_b2
299 : CASE (3)
300 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = g3_a1
301 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = g3_b1
302 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = g3_a2
303 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = g3_b2
304 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = g3_a3
305 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = g3_b3
306 : CASE (4)
307 42 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = g4_a1
308 42 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = g4_b1
309 42 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = g4_a2
310 42 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = g4_b2
311 42 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = g4_a3
312 42 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = g4_b3
313 42 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = g4_a4
314 42 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = g4_b4
315 : CASE (5)
316 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = g5_a1
317 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = g5_b1
318 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = g5_a2
319 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = g5_b2
320 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = g5_a3
321 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = g5_b3
322 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = g5_a4
323 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = g5_b4
324 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = g5_a5
325 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = g5_b5
326 : CASE (6)
327 74 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = g6_a1
328 74 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = g6_b1
329 74 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = g6_a2
330 74 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = g6_b2
331 74 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = g6_a3
332 74 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = g6_b3
333 74 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = g6_a4
334 74 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = g6_b4
335 74 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = g6_a5
336 74 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = g6_b5
337 74 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = g6_a6
338 74 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = g6_b6
339 : CASE (7)
340 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = g7_a1
341 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = g7_b1
342 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = g7_a2
343 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = g7_b2
344 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = g7_a3
345 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = g7_b3
346 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = g7_a4
347 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = g7_b4
348 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = g7_a5
349 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = g7_b5
350 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = g7_a6
351 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = g7_b6
352 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = g7_a7
353 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = g7_b7
354 : CASE (8)
355 8 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = g8_a1
356 8 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = g8_b1
357 8 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = g8_a2
358 8 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = g8_b2
359 8 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = g8_a3
360 8 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = g8_b3
361 8 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = g8_a4
362 8 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = g8_b4
363 8 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = g8_a5
364 8 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = g8_b5
365 8 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = g8_a6
366 8 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = g8_b6
367 8 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = g8_a7
368 8 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = g8_b7
369 8 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = g8_a8
370 8 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = g8_b8
371 : CASE (9)
372 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = g9_a1
373 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = g9_b1
374 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = g9_a2
375 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = g9_b2
376 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = g9_a3
377 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = g9_b3
378 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = g9_a4
379 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = g9_b4
380 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = g9_a5
381 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = g9_b5
382 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = g9_a6
383 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = g9_b6
384 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = g9_a7
385 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = g9_b7
386 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = g9_a8
387 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = g9_b8
388 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = g9_a9
389 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = g9_b9
390 : CASE (10)
391 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = g10_a1
392 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = g10_b1
393 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = g10_a2
394 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = g10_b2
395 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = g10_a3
396 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = g10_b3
397 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = g10_a4
398 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = g10_b4
399 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = g10_a5
400 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = g10_b5
401 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = g10_a6
402 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = g10_b6
403 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = g10_a7
404 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = g10_b7
405 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = g10_a8
406 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = g10_b8
407 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = g10_a9
408 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = g10_b9
409 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 10) = g10_a10
410 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 10) = g10_b10
411 : CASE (11)
412 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = g11_a1
413 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = g11_b1
414 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = g11_a2
415 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = g11_b2
416 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = g11_a3
417 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = g11_b3
418 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = g11_a4
419 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = g11_b4
420 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = g11_a5
421 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = g11_b5
422 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = g11_a6
423 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = g11_b6
424 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = g11_a7
425 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = g11_b7
426 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = g11_a8
427 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = g11_b8
428 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = g11_a9
429 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = g11_b9
430 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 10) = g11_a10
431 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 10) = g11_b10
432 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 11) = g11_a11
433 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 11) = g11_b11
434 : CASE (12)
435 10 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = g12_a1
436 10 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = g12_b1
437 10 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = g12_a2
438 10 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = g12_b2
439 10 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = g12_a3
440 10 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = g12_b3
441 10 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = g12_a4
442 10 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = g12_b4
443 10 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = g12_a5
444 10 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = g12_b5
445 10 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = g12_a6
446 10 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = g12_b6
447 10 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = g12_a7
448 10 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = g12_b7
449 10 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = g12_a8
450 10 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = g12_b8
451 10 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = g12_a9
452 10 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = g12_b9
453 10 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 10) = g12_a10
454 10 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 10) = g12_b10
455 10 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 11) = g12_a11
456 10 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 11) = g12_b11
457 10 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 12) = g12_a12
458 10 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 12) = g12_b12
459 : CASE (13)
460 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = g13_a1
461 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = g13_b1
462 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = g13_a2
463 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = g13_b2
464 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = g13_a3
465 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = g13_b3
466 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = g13_a4
467 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = g13_b4
468 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = g13_a5
469 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = g13_b5
470 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = g13_a6
471 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = g13_b6
472 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = g13_a7
473 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = g13_b7
474 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = g13_a8
475 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = g13_b8
476 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = g13_a9
477 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = g13_b9
478 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 10) = g13_a10
479 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 10) = g13_b10
480 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 11) = g13_a11
481 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 11) = g13_b11
482 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 12) = g13_a12
483 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 12) = g13_b12
484 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 13) = g13_a13
485 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 13) = g13_b13
486 : CASE (14)
487 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = g14_a1
488 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = g14_b1
489 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = g14_a2
490 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = g14_b2
491 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = g14_a3
492 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = g14_b3
493 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = g14_a4
494 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = g14_b4
495 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = g14_a5
496 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = g14_b5
497 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = g14_a6
498 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = g14_b6
499 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = g14_a7
500 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = g14_b7
501 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = g14_a8
502 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = g14_b8
503 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = g14_a9
504 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = g14_b9
505 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 10) = g14_a10
506 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 10) = g14_b10
507 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 11) = g14_a11
508 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 11) = g14_b11
509 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 12) = g14_a12
510 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 12) = g14_b12
511 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 13) = g14_a13
512 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 13) = g14_b13
513 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 14) = g14_a14
514 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 14) = g14_b14
515 : CASE (15)
516 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = g15_a1
517 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = g15_b1
518 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = g15_a2
519 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = g15_b2
520 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = g15_a3
521 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = g15_b3
522 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = g15_a4
523 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = g15_b4
524 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = g15_a5
525 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = g15_b5
526 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = g15_a6
527 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = g15_b6
528 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = g15_a7
529 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = g15_b7
530 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = g15_a8
531 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = g15_b8
532 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = g15_a9
533 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = g15_b9
534 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 10) = g15_a10
535 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 10) = g15_b10
536 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 11) = g15_a11
537 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 11) = g15_b11
538 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 12) = g15_a12
539 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 12) = g15_b12
540 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 13) = g15_a13
541 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 13) = g15_b13
542 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 14) = g15_a14
543 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 14) = g15_b14
544 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 15) = g15_a15
545 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 15) = g15_b15
546 : CASE (16)
547 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = g16_a1
548 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = g16_b1
549 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = g16_a2
550 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = g16_b2
551 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = g16_a3
552 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = g16_b3
553 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = g16_a4
554 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = g16_b4
555 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = g16_a5
556 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = g16_b5
557 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = g16_a6
558 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = g16_b6
559 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = g16_a7
560 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = g16_b7
561 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = g16_a8
562 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = g16_b8
563 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = g16_a9
564 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = g16_b9
565 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 10) = g16_a10
566 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 10) = g16_b10
567 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 11) = g16_a11
568 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 11) = g16_b11
569 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 12) = g16_a12
570 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 12) = g16_b12
571 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 13) = g16_a13
572 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 13) = g16_b13
573 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 14) = g16_a14
574 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 14) = g16_b14
575 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 15) = g16_a15
576 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 15) = g16_b15
577 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 16) = g16_a16
578 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 16) = g16_b16
579 : CASE (17)
580 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = g17_a1
581 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = g17_b1
582 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = g17_a2
583 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = g17_b2
584 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = g17_a3
585 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = g17_b3
586 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = g17_a4
587 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = g17_b4
588 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = g17_a5
589 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = g17_b5
590 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = g17_a6
591 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = g17_b6
592 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = g17_a7
593 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = g17_b7
594 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = g17_a8
595 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = g17_b8
596 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = g17_a9
597 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = g17_b9
598 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 10) = g17_a10
599 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 10) = g17_b10
600 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 11) = g17_a11
601 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 11) = g17_b11
602 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 12) = g17_a12
603 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 12) = g17_b12
604 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 13) = g17_a13
605 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 13) = g17_b13
606 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 14) = g17_a14
607 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 14) = g17_b14
608 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 15) = g17_a15
609 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 15) = g17_b15
610 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 16) = g17_a16
611 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 16) = g17_b16
612 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 17) = g17_a17
613 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 17) = g17_b17
614 : CASE (18)
615 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = g18_a1
616 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = g18_b1
617 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = g18_a2
618 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = g18_b2
619 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = g18_a3
620 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = g18_b3
621 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = g18_a4
622 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = g18_b4
623 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = g18_a5
624 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = g18_b5
625 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = g18_a6
626 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = g18_b6
627 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = g18_a7
628 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = g18_b7
629 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = g18_a8
630 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = g18_b8
631 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = g18_a9
632 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = g18_b9
633 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 10) = g18_a10
634 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 10) = g18_b10
635 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 11) = g18_a11
636 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 11) = g18_b11
637 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 12) = g18_a12
638 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 12) = g18_b12
639 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 13) = g18_a13
640 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 13) = g18_b13
641 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 14) = g18_a14
642 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 14) = g18_b14
643 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 15) = g18_a15
644 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 15) = g18_b15
645 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 16) = g18_a16
646 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 16) = g18_b16
647 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 17) = g18_a17
648 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 17) = g18_b17
649 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 18) = g18_a18
650 190 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 18) = g18_b18
651 : END SELECT
652 1554 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1:) = qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1:)/rc
653 1684 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1:) = qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1:)*rc
654 : END DO
655 130 : END SUBROUTINE set_mm_potential_erf
656 :
657 : ! **************************************************************************************************
658 : !> \brief set the GEEP information for the S-WAVE expansion
659 : !> \param qmmm_gaussian_fns ...
660 : !> \param num_geep_gauss ...
661 : !> \par History
662 : !> 02.2007 created [tlaino]
663 : !> \author Teodoro Laino
664 : ! **************************************************************************************************
665 34 : SUBROUTINE set_mm_potential_swave(qmmm_gaussian_fns, &
666 : num_geep_gauss)
667 : TYPE(qmmm_gaussian_p_type), DIMENSION(:), POINTER :: qmmm_gaussian_fns
668 : INTEGER, INTENT(IN) :: num_geep_gauss
669 :
670 : INTEGER :: IRad, istart, Nog, Nval
671 : REAL(KIND=dp) :: radius, rc
672 :
673 34 : Nval = SIZE(qmmm_gaussian_fns)
674 102 : DO IRad = 1, Nval
675 68 : qmmm_gaussian_fns(IRad)%pgf%Number_of_Gaussians = num_geep_gauss
676 68 : radius = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius
677 68 : istart = 0
678 : ! Allocate Vectors
679 4 : SELECT CASE (num_geep_gauss)
680 : CASE (2)
681 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(s2_rc*bohr)
682 : CASE (3)
683 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(s3_rc*bohr)
684 : CASE (4)
685 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(s4_rc*bohr)
686 : CASE (5)
687 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(s5_rc*bohr)
688 : CASE (6)
689 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(s6_rc*bohr)
690 : CASE (7)
691 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(s7_rc*bohr)
692 : CASE (8)
693 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(s8_rc*bohr)
694 : CASE (9)
695 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(s9_rc*bohr)
696 : CASE (10)
697 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(s10_rc*bohr)
698 : CASE (11)
699 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(s11_rc*bohr)
700 : CASE (12)
701 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(s12_rc*bohr)
702 : CASE (13)
703 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(s13_rc*bohr)
704 : CASE (14)
705 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(s14_rc*bohr)
706 : CASE (15)
707 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(s15_rc*bohr)
708 : CASE (16)
709 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(s16_rc*bohr)
710 : CASE (17)
711 4 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(s17_rc*bohr)
712 : CASE (18)
713 68 : rc = qmmm_gaussian_fns(Irad)%pgf%Elp_Radius/(s18_rc*bohr)
714 : END SELECT
715 68 : NOG = qmmm_gaussian_fns(IRad)%pgf%Number_of_Gaussians
716 204 : ALLOCATE (qmmm_gaussian_fns(IRad)%pgf%Ak(NOG))
717 204 : ALLOCATE (qmmm_gaussian_fns(IRad)%pgf%Gk(NOG))
718 4 : SELECT CASE (num_geep_gauss)
719 : CASE (2)
720 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = s2_a1
721 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = s2_b1
722 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = s2_a2
723 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = s2_b2
724 : CASE (3)
725 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = s3_a1
726 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = s3_b1
727 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = s3_a2
728 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = s3_b2
729 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = s3_a3
730 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = s3_b3
731 : CASE (4)
732 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = s4_a1
733 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = s4_b1
734 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = s4_a2
735 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = s4_b2
736 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = s4_a3
737 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = s4_b3
738 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = s4_a4
739 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = s4_b4
740 : CASE (5)
741 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = s5_a1
742 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = s5_b1
743 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = s5_a2
744 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = s5_b2
745 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = s5_a3
746 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = s5_b3
747 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = s5_a4
748 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = s5_b4
749 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = s5_a5
750 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = s5_b5
751 : CASE (6)
752 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = s6_a1
753 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = s6_b1
754 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = s6_a2
755 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = s6_b2
756 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = s6_a3
757 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = s6_b3
758 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = s6_a4
759 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = s6_b4
760 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = s6_a5
761 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = s6_b5
762 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = s6_a6
763 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = s6_b6
764 : CASE (7)
765 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = s7_a1
766 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = s7_b1
767 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = s7_a2
768 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = s7_b2
769 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = s7_a3
770 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = s7_b3
771 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = s7_a4
772 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = s7_b4
773 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = s7_a5
774 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = s7_b5
775 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = s7_a6
776 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = s7_b6
777 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = s7_a7
778 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = s7_b7
779 : CASE (8)
780 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = s8_a1
781 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = s8_b1
782 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = s8_a2
783 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = s8_b2
784 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = s8_a3
785 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = s8_b3
786 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = s8_a4
787 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = s8_b4
788 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = s8_a5
789 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = s8_b5
790 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = s8_a6
791 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = s8_b6
792 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = s8_a7
793 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = s8_b7
794 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = s8_a8
795 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = s8_b8
796 : CASE (9)
797 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = s9_a1
798 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = s9_b1
799 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = s9_a2
800 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = s9_b2
801 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = s9_a3
802 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = s9_b3
803 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = s9_a4
804 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = s9_b4
805 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = s9_a5
806 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = s9_b5
807 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = s9_a6
808 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = s9_b6
809 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = s9_a7
810 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = s9_b7
811 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = s9_a8
812 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = s9_b8
813 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = s9_a9
814 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = s9_b9
815 : CASE (10)
816 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = s10_a1
817 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = s10_b1
818 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = s10_a2
819 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = s10_b2
820 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = s10_a3
821 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = s10_b3
822 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = s10_a4
823 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = s10_b4
824 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = s10_a5
825 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = s10_b5
826 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = s10_a6
827 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = s10_b6
828 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = s10_a7
829 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = s10_b7
830 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = s10_a8
831 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = s10_b8
832 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = s10_a9
833 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = s10_b9
834 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 10) = s10_a10
835 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 10) = s10_b10
836 : CASE (11)
837 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = s11_a1
838 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = s11_b1
839 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = s11_a2
840 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = s11_b2
841 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = s11_a3
842 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = s11_b3
843 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = s11_a4
844 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = s11_b4
845 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = s11_a5
846 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = s11_b5
847 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = s11_a6
848 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = s11_b6
849 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = s11_a7
850 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = s11_b7
851 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = s11_a8
852 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = s11_b8
853 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = s11_a9
854 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = s11_b9
855 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 10) = s11_a10
856 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 10) = s11_b10
857 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 11) = s11_a11
858 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 11) = s11_b11
859 : CASE (12)
860 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = s12_a1
861 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = s12_b1
862 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = s12_a2
863 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = s12_b2
864 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = s12_a3
865 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = s12_b3
866 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = s12_a4
867 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = s12_b4
868 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = s12_a5
869 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = s12_b5
870 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = s12_a6
871 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = s12_b6
872 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = s12_a7
873 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = s12_b7
874 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = s12_a8
875 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = s12_b8
876 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = s12_a9
877 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = s12_b9
878 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 10) = s12_a10
879 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 10) = s12_b10
880 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 11) = s12_a11
881 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 11) = s12_b11
882 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 12) = s12_a12
883 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 12) = s12_b12
884 : CASE (13)
885 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = s13_a1
886 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = s13_b1
887 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = s13_a2
888 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = s13_b2
889 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = s13_a3
890 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = s13_b3
891 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = s13_a4
892 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = s13_b4
893 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = s13_a5
894 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = s13_b5
895 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = s13_a6
896 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = s13_b6
897 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = s13_a7
898 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = s13_b7
899 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = s13_a8
900 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = s13_b8
901 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = s13_a9
902 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = s13_b9
903 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 10) = s13_a10
904 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 10) = s13_b10
905 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 11) = s13_a11
906 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 11) = s13_b11
907 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 12) = s13_a12
908 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 12) = s13_b12
909 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 13) = s13_a13
910 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 13) = s13_b13
911 : CASE (14)
912 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = s14_a1
913 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = s14_b1
914 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = s14_a2
915 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = s14_b2
916 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = s14_a3
917 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = s14_b3
918 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = s14_a4
919 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = s14_b4
920 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = s14_a5
921 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = s14_b5
922 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = s14_a6
923 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = s14_b6
924 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = s14_a7
925 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = s14_b7
926 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = s14_a8
927 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = s14_b8
928 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = s14_a9
929 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = s14_b9
930 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 10) = s14_a10
931 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 10) = s14_b10
932 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 11) = s14_a11
933 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 11) = s14_b11
934 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 12) = s14_a12
935 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 12) = s14_b12
936 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 13) = s14_a13
937 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 13) = s14_b13
938 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 14) = s14_a14
939 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 14) = s14_b14
940 : CASE (15)
941 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = s15_a1
942 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = s15_b1
943 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = s15_a2
944 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = s15_b2
945 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = s15_a3
946 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = s15_b3
947 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = s15_a4
948 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = s15_b4
949 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = s15_a5
950 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = s15_b5
951 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = s15_a6
952 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = s15_b6
953 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = s15_a7
954 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = s15_b7
955 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = s15_a8
956 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = s15_b8
957 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = s15_a9
958 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = s15_b9
959 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 10) = s15_a10
960 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 10) = s15_b10
961 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 11) = s15_a11
962 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 11) = s15_b11
963 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 12) = s15_a12
964 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 12) = s15_b12
965 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 13) = s15_a13
966 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 13) = s15_b13
967 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 14) = s15_a14
968 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 14) = s15_b14
969 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 15) = s15_a15
970 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 15) = s15_b15
971 : CASE (16)
972 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = s16_a1
973 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = s16_b1
974 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = s16_a2
975 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = s16_b2
976 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = s16_a3
977 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = s16_b3
978 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = s16_a4
979 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = s16_b4
980 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = s16_a5
981 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = s16_b5
982 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = s16_a6
983 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = s16_b6
984 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = s16_a7
985 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = s16_b7
986 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = s16_a8
987 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = s16_b8
988 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = s16_a9
989 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = s16_b9
990 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 10) = s16_a10
991 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 10) = s16_b10
992 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 11) = s16_a11
993 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 11) = s16_b11
994 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 12) = s16_a12
995 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 12) = s16_b12
996 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 13) = s16_a13
997 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 13) = s16_b13
998 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 14) = s16_a14
999 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 14) = s16_b14
1000 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 15) = s16_a15
1001 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 15) = s16_b15
1002 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 16) = s16_a16
1003 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 16) = s16_b16
1004 : CASE (17)
1005 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = s17_a1
1006 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = s17_b1
1007 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = s17_a2
1008 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = s17_b2
1009 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = s17_a3
1010 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = s17_b3
1011 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = s17_a4
1012 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = s17_b4
1013 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = s17_a5
1014 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = s17_b5
1015 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = s17_a6
1016 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = s17_b6
1017 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = s17_a7
1018 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = s17_b7
1019 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = s17_a8
1020 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = s17_b8
1021 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = s17_a9
1022 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = s17_b9
1023 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 10) = s17_a10
1024 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 10) = s17_b10
1025 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 11) = s17_a11
1026 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 11) = s17_b11
1027 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 12) = s17_a12
1028 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 12) = s17_b12
1029 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 13) = s17_a13
1030 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 13) = s17_b13
1031 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 14) = s17_a14
1032 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 14) = s17_b14
1033 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 15) = s17_a15
1034 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 15) = s17_b15
1035 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 16) = s17_a16
1036 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 16) = s17_b16
1037 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 17) = s17_a17
1038 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 17) = s17_b17
1039 : CASE (18)
1040 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1) = s18_a1
1041 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1) = s18_b1
1042 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 2) = s18_a2
1043 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 2) = s18_b2
1044 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 3) = s18_a3
1045 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 3) = s18_b3
1046 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 4) = s18_a4
1047 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 4) = s18_b4
1048 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 5) = s18_a5
1049 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 5) = s18_b5
1050 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 6) = s18_a6
1051 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 6) = s18_b6
1052 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 7) = s18_a7
1053 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 7) = s18_b7
1054 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 8) = s18_a8
1055 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 8) = s18_b8
1056 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 9) = s18_a9
1057 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 9) = s18_b9
1058 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 10) = s18_a10
1059 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 10) = s18_b10
1060 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 11) = s18_a11
1061 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 11) = s18_b11
1062 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 12) = s18_a12
1063 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 12) = s18_b12
1064 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 13) = s18_a13
1065 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 13) = s18_b13
1066 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 14) = s18_a14
1067 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 14) = s18_b14
1068 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 15) = s18_a15
1069 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 15) = s18_b15
1070 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 16) = s18_a16
1071 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 16) = s18_b16
1072 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 17) = s18_a17
1073 4 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 17) = s18_b17
1074 4 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 18) = s18_a18
1075 68 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 18) = s18_b18
1076 : END SELECT
1077 748 : qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1:) = qmmm_gaussian_fns(IRad)%pgf%Ak(istart + 1:)/rc
1078 782 : qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1:) = qmmm_gaussian_fns(IRad)%pgf%Gk(istart + 1:)*rc
1079 : END DO
1080 34 : END SUBROUTINE set_mm_potential_swave
1081 :
1082 : END MODULE qmmm_gaussian_input
1083 :
|