Line data Source code
1 :
2 : module mo_setrxt
3 :
4 : use shr_kind_mod, only : r8 => shr_kind_r8
5 :
6 : private
7 : public :: setrxt
8 : public :: setrxt_hrates
9 :
10 : contains
11 :
12 72960 : subroutine setrxt( rate, temp, m, ncol )
13 :
14 : use ppgrid, only : pcols, pver
15 :
16 :
17 : use chem_mods, only : rxntot
18 : use mo_jpl, only : jpl
19 :
20 : implicit none
21 :
22 : !-------------------------------------------------------
23 : ! ... dummy arguments
24 : !-------------------------------------------------------
25 : integer, intent(in) :: ncol
26 : real(r8), intent(in) :: temp(pcols,pver)
27 : real(r8), intent(in) :: m(ncol*pver)
28 : real(r8), intent(inout) :: rate(ncol*pver,max(1,rxntot))
29 :
30 : !-------------------------------------------------------
31 : ! ... local variables
32 : !-------------------------------------------------------
33 : integer :: n
34 : integer :: offset
35 145920 : real(r8) :: itemp(ncol*pver)
36 145920 : real(r8) :: exp_fac(ncol*pver)
37 145920 : real(r8) :: ko(ncol*pver)
38 145920 : real(r8) :: kinf(ncol*pver)
39 :
40 73616640 : rate(:,92) = 0.000258_r8
41 73616640 : rate(:,93) = 0.085_r8
42 73616640 : rate(:,94) = 1.2e-10_r8
43 73616640 : rate(:,99) = 1.2e-10_r8
44 73616640 : rate(:,100) = 1e-20_r8
45 73616640 : rate(:,101) = 1.3e-16_r8
46 73616640 : rate(:,103) = 4.2e-13_r8
47 73616640 : rate(:,105) = 8e-14_r8
48 73616640 : rate(:,106) = 3.9e-17_r8
49 73616640 : rate(:,113) = 6.9e-12_r8
50 73616640 : rate(:,114) = 7.2e-11_r8
51 73616640 : rate(:,115) = 1.6e-12_r8
52 73616640 : rate(:,121) = 1.8e-12_r8
53 73616640 : rate(:,125) = 1.8e-12_r8
54 73616640 : rate(:,129) = 7e-13_r8
55 73616640 : rate(:,130) = 5e-12_r8
56 73616640 : rate(:,139) = 3.5e-12_r8
57 73616640 : rate(:,141) = 1e-11_r8
58 73616640 : rate(:,142) = 2.2e-11_r8
59 73616640 : rate(:,143) = 5e-11_r8
60 73616640 : rate(:,178) = 1.7e-13_r8
61 73616640 : rate(:,180) = 2.607e-10_r8
62 73616640 : rate(:,181) = 9.75e-11_r8
63 73616640 : rate(:,182) = 2.07e-10_r8
64 73616640 : rate(:,183) = 2.088e-10_r8
65 73616640 : rate(:,184) = 1.17e-10_r8
66 73616640 : rate(:,185) = 4.644e-11_r8
67 73616640 : rate(:,186) = 1.204e-10_r8
68 73616640 : rate(:,187) = 9.9e-11_r8
69 73616640 : rate(:,188) = 3.3e-12_r8
70 73616640 : rate(:,207) = 4.5e-11_r8
71 73616640 : rate(:,208) = 4.62e-10_r8
72 73616640 : rate(:,209) = 1.2e-10_r8
73 73616640 : rate(:,210) = 9e-11_r8
74 73616640 : rate(:,211) = 3e-11_r8
75 73616640 : rate(:,216) = 2.14e-11_r8
76 73616640 : rate(:,217) = 1.9e-10_r8
77 73616640 : rate(:,230) = 2.57e-10_r8
78 73616640 : rate(:,231) = 1.8e-10_r8
79 73616640 : rate(:,232) = 1.794e-10_r8
80 73616640 : rate(:,233) = 1.3e-10_r8
81 73616640 : rate(:,234) = 7.65e-11_r8
82 73616640 : rate(:,243) = 1.31e-10_r8
83 73616640 : rate(:,244) = 3.5e-11_r8
84 73616640 : rate(:,245) = 9e-12_r8
85 73616640 : rate(:,251) = 2.3e-12_r8
86 73616640 : rate(:,252) = 1.2e-11_r8
87 73616640 : rate(:,253) = 5.7e-11_r8
88 73616640 : rate(:,254) = 2.8e-11_r8
89 73616640 : rate(:,255) = 6.6e-11_r8
90 73616640 : rate(:,256) = 1.4e-11_r8
91 73616640 : rate(:,259) = 1.9e-12_r8
92 73616640 : rate(:,285) = 0.047_r8
93 73616640 : rate(:,286) = 7.7e-05_r8
94 73616640 : rate(:,287) = 0.171_r8
95 73616640 : rate(:,291) = 6e-11_r8
96 73616640 : rate(:,294) = 1e-12_r8
97 73616640 : rate(:,295) = 4e-10_r8
98 73616640 : rate(:,296) = 2e-10_r8
99 73616640 : rate(:,297) = 1e-10_r8
100 73616640 : rate(:,298) = 5e-16_r8
101 73616640 : rate(:,299) = 4.4e-10_r8
102 73616640 : rate(:,300) = 9e-10_r8
103 73616640 : rate(:,302) = 1.3e-10_r8
104 73616640 : rate(:,305) = 8e-10_r8
105 73616640 : rate(:,306) = 5e-12_r8
106 73616640 : rate(:,307) = 7e-10_r8
107 73616640 : rate(:,310) = 4.8e-10_r8
108 73616640 : rate(:,311) = 1e-10_r8
109 73616640 : rate(:,312) = 4e-10_r8
110 :
111 5180160 : do n = 1,pver
112 5107200 : offset = (n-1)*ncol
113 78723840 : itemp(offset+1:offset+ncol) = 1._r8 / temp(:ncol,n)
114 : end do
115 :
116 73616640 : rate(:,95) = 1.63e-10_r8 * exp( 60._r8 * itemp(:) )
117 73616640 : rate(:,96) = 2.15e-11_r8 * exp( 110._r8 * itemp(:) )
118 73616640 : exp_fac(:) = exp( 55._r8 * itemp(:) )
119 73616640 : rate(:,97) = 2.64e-11_r8 * exp_fac(:)
120 73616640 : rate(:,98) = 6.6e-12_r8 * exp_fac(:)
121 73616640 : rate(:,102) = 3.6e-18_r8 * exp( -220._r8 * itemp(:) )
122 73616640 : rate(:,104) = 1.8e-15_r8 * exp( 45._r8 * itemp(:) )
123 73616640 : rate(:,107) = 3.5e-11_r8 * exp( -135._r8 * itemp(:) )
124 73616640 : rate(:,108) = 8e-12_r8 * exp( -2060._r8 * itemp(:) )
125 73616640 : rate(:,111) = 1.6e-11_r8 * exp( -4570._r8 * itemp(:) )
126 73616640 : rate(:,112) = 1.4e-12_r8 * exp( -2000._r8 * itemp(:) )
127 73616640 : exp_fac(:) = exp( 200._r8 * itemp(:) )
128 73616640 : rate(:,117) = 3e-11_r8 * exp_fac(:)
129 73616640 : rate(:,205) = 5.5e-12_r8 * exp_fac(:)
130 73616640 : rate(:,240) = 3.8e-12_r8 * exp_fac(:)
131 73616640 : rate(:,118) = 1e-14_r8 * exp( -490._r8 * itemp(:) )
132 73616640 : rate(:,119) = 1.4e-10_r8 * exp( -470._r8 * itemp(:) )
133 73616640 : rate(:,120) = 2.8e-12_r8 * exp( -1800._r8 * itemp(:) )
134 73616640 : exp_fac(:) = exp( 250._r8 * itemp(:) )
135 73616640 : rate(:,122) = 4.8e-11_r8 * exp_fac(:)
136 73616640 : rate(:,203) = 1.7e-11_r8 * exp_fac(:)
137 73616640 : rate(:,123) = 1.8e-11_r8 * exp( 180._r8 * itemp(:) )
138 73616640 : rate(:,124) = 1.7e-12_r8 * exp( -940._r8 * itemp(:) )
139 73616640 : rate(:,128) = 1.3e-12_r8 * exp( 380._r8 * itemp(:) )
140 73616640 : rate(:,131) = 2.1e-11_r8 * exp( 100._r8 * itemp(:) )
141 73616640 : exp_fac(:) = exp( 220._r8 * itemp(:) )
142 73616640 : rate(:,132) = 2.9e-12_r8 * exp_fac(:)
143 73616640 : rate(:,133) = 1.45e-12_r8 * exp_fac(:)
144 73616640 : rate(:,134) = 1.45e-12_r8 * exp_fac(:)
145 73616640 : rate(:,135) = 1.5e-11_r8 * exp( -3600._r8 * itemp(:) )
146 73616640 : rate(:,136) = 5.1e-12_r8 * exp( 210._r8 * itemp(:) )
147 73616640 : exp_fac(:) = exp( -2450._r8 * itemp(:) )
148 73616640 : rate(:,137) = 1.2e-13_r8 * exp_fac(:)
149 73616640 : rate(:,163) = 3e-11_r8 * exp_fac(:)
150 73616640 : rate(:,140) = 1.5e-11_r8 * exp( 170._r8 * itemp(:) )
151 73616640 : exp_fac(:) = exp( 270._r8 * itemp(:) )
152 73616640 : rate(:,144) = 3.3e-12_r8 * exp_fac(:)
153 73616640 : rate(:,159) = 1.4e-11_r8 * exp_fac(:)
154 73616640 : rate(:,173) = 7.4e-12_r8 * exp_fac(:)
155 73616640 : exp_fac(:) = exp( -1500._r8 * itemp(:) )
156 73616640 : rate(:,145) = 3e-12_r8 * exp_fac(:)
157 73616640 : rate(:,204) = 5.8e-12_r8 * exp_fac(:)
158 73616640 : exp_fac(:) = exp( 20._r8 * itemp(:) )
159 73616640 : rate(:,147) = 7.26e-11_r8 * exp_fac(:)
160 73616640 : rate(:,148) = 4.64e-11_r8 * exp_fac(:)
161 73616640 : rate(:,155) = 8.1e-11_r8 * exp( -30._r8 * itemp(:) )
162 73616640 : rate(:,156) = 7.1e-12_r8 * exp( -1270._r8 * itemp(:) )
163 73616640 : rate(:,157) = 3.05e-11_r8 * exp( -2270._r8 * itemp(:) )
164 73616640 : rate(:,158) = 1.1e-11_r8 * exp( -980._r8 * itemp(:) )
165 73616640 : rate(:,160) = 3.6e-11_r8 * exp( -375._r8 * itemp(:) )
166 73616640 : rate(:,161) = 2.3e-11_r8 * exp( -200._r8 * itemp(:) )
167 73616640 : rate(:,162) = 3.3e-12_r8 * exp( -115._r8 * itemp(:) )
168 73616640 : rate(:,164) = 1e-12_r8 * exp( -1590._r8 * itemp(:) )
169 73616640 : rate(:,165) = 3.5e-13_r8 * exp( -1370._r8 * itemp(:) )
170 73616640 : exp_fac(:) = exp( 290._r8 * itemp(:) )
171 73616640 : rate(:,166) = 2.6e-12_r8 * exp_fac(:)
172 73616640 : rate(:,167) = 6.4e-12_r8 * exp_fac(:)
173 73616640 : rate(:,197) = 4.1e-13_r8 * exp_fac(:)
174 73616640 : rate(:,168) = 6.5e-12_r8 * exp( 135._r8 * itemp(:) )
175 73616640 : exp_fac(:) = exp( -840._r8 * itemp(:) )
176 73616640 : rate(:,170) = 3.6e-12_r8 * exp_fac(:)
177 73616640 : rate(:,219) = 2e-12_r8 * exp_fac(:)
178 73616640 : rate(:,171) = 1.2e-12_r8 * exp( -330._r8 * itemp(:) )
179 73616640 : rate(:,172) = 2.8e-11_r8 * exp( 85._r8 * itemp(:) )
180 73616640 : exp_fac(:) = exp( 230._r8 * itemp(:) )
181 73616640 : rate(:,174) = 6e-13_r8 * exp_fac(:)
182 73616640 : rate(:,194) = 1.5e-12_r8 * exp_fac(:)
183 73616640 : rate(:,202) = 1.9e-11_r8 * exp_fac(:)
184 73616640 : rate(:,175) = 1e-11_r8 * exp( -3300._r8 * itemp(:) )
185 73616640 : rate(:,176) = 1.8e-12_r8 * exp( -250._r8 * itemp(:) )
186 73616640 : rate(:,177) = 3.4e-12_r8 * exp( -130._r8 * itemp(:) )
187 73616640 : exp_fac(:) = exp( -500._r8 * itemp(:) )
188 73616640 : rate(:,179) = 3e-12_r8 * exp_fac(:)
189 73616640 : rate(:,213) = 1.4e-10_r8 * exp_fac(:)
190 73616640 : exp_fac(:) = exp( -800._r8 * itemp(:) )
191 73616640 : rate(:,191) = 1.7e-11_r8 * exp_fac(:)
192 73616640 : rate(:,218) = 6.3e-12_r8 * exp_fac(:)
193 73616640 : rate(:,192) = 4.8e-12_r8 * exp( -310._r8 * itemp(:) )
194 73616640 : rate(:,193) = 1.6e-11_r8 * exp( -780._r8 * itemp(:) )
195 73616640 : rate(:,195) = 9.5e-13_r8 * exp( 550._r8 * itemp(:) )
196 73616640 : exp_fac(:) = exp( 260._r8 * itemp(:) )
197 73616640 : rate(:,196) = 2.3e-12_r8 * exp_fac(:)
198 73616640 : rate(:,199) = 8.8e-12_r8 * exp_fac(:)
199 73616640 : rate(:,198) = 4.5e-12_r8 * exp( 460._r8 * itemp(:) )
200 73616640 : rate(:,201) = 1.9e-11_r8 * exp( 215._r8 * itemp(:) )
201 73616640 : rate(:,206) = 1.2e-10_r8 * exp( -430._r8 * itemp(:) )
202 73616640 : rate(:,212) = 1.6e-10_r8 * exp( -260._r8 * itemp(:) )
203 73616640 : exp_fac(:) = exp( 0._r8 * itemp(:) )
204 73616640 : rate(:,214) = 1.4e-11_r8 * exp_fac(:)
205 73616640 : rate(:,216) = 2.14e-11_r8 * exp_fac(:)
206 73616640 : rate(:,217) = 1.9e-10_r8 * exp_fac(:)
207 73616640 : rate(:,230) = 2.57e-10_r8 * exp_fac(:)
208 73616640 : rate(:,231) = 1.8e-10_r8 * exp_fac(:)
209 73616640 : rate(:,232) = 1.794e-10_r8 * exp_fac(:)
210 73616640 : rate(:,233) = 1.3e-10_r8 * exp_fac(:)
211 73616640 : rate(:,234) = 7.65e-11_r8 * exp_fac(:)
212 73616640 : rate(:,243) = 1.31e-10_r8 * exp_fac(:)
213 73616640 : rate(:,244) = 3.5e-11_r8 * exp_fac(:)
214 73616640 : rate(:,245) = 9e-12_r8 * exp_fac(:)
215 73616640 : rate(:,251) = 2.3e-12_r8 * exp_fac(:)
216 73616640 : rate(:,252) = 1.2e-11_r8 * exp_fac(:)
217 73616640 : rate(:,253) = 5.7e-11_r8 * exp_fac(:)
218 73616640 : rate(:,254) = 2.8e-11_r8 * exp_fac(:)
219 73616640 : rate(:,255) = 6.6e-11_r8 * exp_fac(:)
220 73616640 : rate(:,256) = 1.4e-11_r8 * exp_fac(:)
221 73616640 : rate(:,259) = 1.9e-12_r8 * exp_fac(:)
222 73616640 : rate(:,285) = 0.047_r8 * exp_fac(:)
223 73616640 : rate(:,286) = 7.7e-05_r8 * exp_fac(:)
224 73616640 : rate(:,287) = 0.171_r8 * exp_fac(:)
225 73616640 : rate(:,291) = 6e-11_r8 * exp_fac(:)
226 73616640 : rate(:,294) = 1e-12_r8 * exp_fac(:)
227 73616640 : rate(:,295) = 4e-10_r8 * exp_fac(:)
228 73616640 : rate(:,296) = 2e-10_r8 * exp_fac(:)
229 73616640 : rate(:,297) = 1e-10_r8 * exp_fac(:)
230 73616640 : rate(:,298) = 5e-16_r8 * exp_fac(:)
231 73616640 : rate(:,299) = 4.4e-10_r8 * exp_fac(:)
232 73616640 : rate(:,300) = 9e-10_r8 * exp_fac(:)
233 73616640 : rate(:,302) = 1.3e-10_r8 * exp_fac(:)
234 73616640 : rate(:,305) = 8e-10_r8 * exp_fac(:)
235 73616640 : rate(:,306) = 5e-12_r8 * exp_fac(:)
236 73616640 : rate(:,307) = 7e-10_r8 * exp_fac(:)
237 73616640 : rate(:,310) = 4.8e-10_r8 * exp_fac(:)
238 73616640 : rate(:,311) = 1e-10_r8 * exp_fac(:)
239 73616640 : rate(:,312) = 4e-10_r8 * exp_fac(:)
240 73616640 : rate(:,215) = 6e-12_r8 * exp( 400._r8 * itemp(:) )
241 73616640 : rate(:,220) = 1.46e-11_r8 * exp( -1040._r8 * itemp(:) )
242 73616640 : rate(:,221) = 1.42e-12_r8 * exp( -1150._r8 * itemp(:) )
243 73616640 : rate(:,222) = 1.64e-12_r8 * exp( -1520._r8 * itemp(:) )
244 73616640 : exp_fac(:) = exp( -1100._r8 * itemp(:) )
245 73616640 : rate(:,223) = 2.03e-11_r8 * exp_fac(:)
246 73616640 : rate(:,258) = 3.4e-12_r8 * exp_fac(:)
247 73616640 : rate(:,224) = 1.96e-12_r8 * exp( -1200._r8 * itemp(:) )
248 73616640 : rate(:,225) = 4.85e-12_r8 * exp( -850._r8 * itemp(:) )
249 73616640 : rate(:,226) = 9e-13_r8 * exp( -360._r8 * itemp(:) )
250 73616640 : exp_fac(:) = exp( -1600._r8 * itemp(:) )
251 73616640 : rate(:,227) = 1.25e-12_r8 * exp_fac(:)
252 73616640 : rate(:,236) = 3.4e-11_r8 * exp_fac(:)
253 73616640 : rate(:,228) = 1.3e-12_r8 * exp( -1770._r8 * itemp(:) )
254 73616640 : rate(:,229) = 9.2e-13_r8 * exp( -1560._r8 * itemp(:) )
255 73616640 : rate(:,235) = 6e-13_r8 * exp( -2058._r8 * itemp(:) )
256 73616640 : rate(:,237) = 5.5e-12_r8 * exp( 125._r8 * itemp(:) )
257 73616640 : rate(:,238) = 4.1e-13_r8 * exp( 750._r8 * itemp(:) )
258 73616640 : rate(:,239) = 2.8e-12_r8 * exp( 300._r8 * itemp(:) )
259 73616640 : rate(:,241) = 2.45e-12_r8 * exp( -1775._r8 * itemp(:) )
260 73616640 : rate(:,247) = 1.9e-13_r8 * exp( 520._r8 * itemp(:) )
261 73616640 : rate(:,248) = 9.6e-12_r8 * exp( -234._r8 * itemp(:) )
262 73616640 : rate(:,249) = 2.1e-11_r8 * exp( -2200._r8 * itemp(:) )
263 73616640 : rate(:,250) = 7.2e-14_r8 * exp( -1070._r8 * itemp(:) )
264 73616640 : rate(:,257) = 1.6e-13_r8 * exp( -2280._r8 * itemp(:) )
265 73616640 : rate(:,260) = 2.7e-11_r8 * exp( 335._r8 * itemp(:) )
266 :
267 73616640 : itemp(:) = 300._r8 * itemp(:)
268 :
269 72960 : n = ncol*pver
270 :
271 73616640 : ko(:) = 4.4e-32_r8 * itemp(:)**1.3_r8
272 73616640 : kinf(:) = 7.5e-11_r8 * itemp(:)**(-0.2_r8)
273 72960 : call jpl( rate(:,116), m, 0.6_r8, ko, kinf, n )
274 :
275 73616640 : ko(:) = 6.9e-31_r8 * itemp(:)**1._r8
276 73616640 : kinf(:) = 2.6e-11_r8
277 72960 : call jpl( rate(:,126), m, 0.6_r8, ko, kinf, n )
278 :
279 73616640 : ko(:) = 2.5e-31_r8 * itemp(:)**1.8_r8
280 73616640 : kinf(:) = 2.2e-11_r8 * itemp(:)**0.7_r8
281 72960 : call jpl( rate(:,138), m, 0.6_r8, ko, kinf, n )
282 :
283 73616640 : ko(:) = 9e-32_r8 * itemp(:)**1.5_r8
284 73616640 : kinf(:) = 3e-11_r8
285 72960 : call jpl( rate(:,146), m, 0.6_r8, ko, kinf, n )
286 :
287 73616640 : ko(:) = 1.9e-31_r8 * itemp(:)**3.4_r8
288 73616640 : kinf(:) = 4e-12_r8 * itemp(:)**0.3_r8
289 72960 : call jpl( rate(:,149), m, 0.6_r8, ko, kinf, n )
290 :
291 73616640 : ko(:) = 2.4e-30_r8 * itemp(:)**3._r8
292 73616640 : kinf(:) = 1.6e-12_r8 * itemp(:)**(-0.1_r8)
293 72960 : call jpl( rate(:,150), m, 0.6_r8, ko, kinf, n )
294 :
295 73616640 : ko(:) = 1.8e-30_r8 * itemp(:)**3._r8
296 73616640 : kinf(:) = 2.8e-11_r8
297 72960 : call jpl( rate(:,151), m, 0.6_r8, ko, kinf, n )
298 :
299 73616640 : ko(:) = 1.8e-31_r8 * itemp(:)**3.4_r8
300 73616640 : kinf(:) = 1.5e-11_r8 * itemp(:)**1.9_r8
301 72960 : call jpl( rate(:,169), m, 0.6_r8, ko, kinf, n )
302 :
303 73616640 : ko(:) = 1.9e-32_r8 * itemp(:)**3.6_r8
304 73616640 : kinf(:) = 3.7e-12_r8 * itemp(:)**1.6_r8
305 72960 : call jpl( rate(:,189), m, 0.6_r8, ko, kinf, n )
306 :
307 73616640 : ko(:) = 5.2e-31_r8 * itemp(:)**3.2_r8
308 73616640 : kinf(:) = 6.9e-12_r8 * itemp(:)**2.9_r8
309 72960 : call jpl( rate(:,200), m, 0.6_r8, ko, kinf, n )
310 :
311 73616640 : ko(:) = 5.9e-33_r8 * itemp(:)**1._r8
312 73616640 : kinf(:) = 1.1e-12_r8 * itemp(:)**(-1.3_r8)
313 72960 : call jpl( rate(:,242), m, 0.6_r8, ko, kinf, n )
314 :
315 72960 : end subroutine setrxt
316 :
317 :
318 80640 : subroutine setrxt_hrates( rate, temp, m, ncol, kbot )
319 :
320 : use ppgrid, only : pcols, pver
321 :
322 :
323 : use chem_mods, only : rxntot
324 : use mo_jpl, only : jpl
325 :
326 : implicit none
327 :
328 : !-------------------------------------------------------
329 : ! ... dummy arguments
330 : !-------------------------------------------------------
331 : integer, intent(in) :: ncol
332 : integer, intent(in) :: kbot
333 : real(r8), intent(in) :: temp(pcols,pver)
334 : real(r8), intent(in) :: m(ncol*pver)
335 : real(r8), intent(inout) :: rate(ncol*pver,max(1,rxntot))
336 :
337 : !-------------------------------------------------------
338 : ! ... local variables
339 : !-------------------------------------------------------
340 : integer :: n
341 : integer :: offset
342 : integer :: k
343 161280 : real(r8) :: itemp(ncol*kbot)
344 161280 : real(r8) :: exp_fac(ncol*kbot)
345 161280 : real(r8) :: ko(ncol*kbot)
346 161280 : real(r8) :: kinf(ncol*kbot)
347 161280 : real(r8) :: wrk(ncol*kbot)
348 :
349 80640 : n = ncol*kbot
350 :
351 27949824 : rate(:n,100) = 1e-20_r8
352 27949824 : rate(:n,101) = 1.3e-16_r8
353 27949824 : rate(:n,105) = 8e-14_r8
354 27949824 : rate(:n,106) = 3.9e-17_r8
355 27949824 : rate(:n,113) = 6.9e-12_r8
356 27949824 : rate(:n,129) = 7e-13_r8
357 27949824 : rate(:n,130) = 5e-12_r8
358 27949824 : rate(:n,285) = 0.047_r8
359 27949824 : rate(:n,286) = 7.7e-05_r8
360 27949824 : rate(:n,287) = 0.171_r8
361 27949824 : rate(:n,291) = 6e-11_r8
362 27949824 : rate(:n,294) = 1e-12_r8
363 27949824 : rate(:n,295) = 4e-10_r8
364 27949824 : rate(:n,296) = 2e-10_r8
365 27949824 : rate(:n,297) = 1e-10_r8
366 27949824 : rate(:n,299) = 4.4e-10_r8
367 27949824 : rate(:n,302) = 1.3e-10_r8
368 27949824 : rate(:n,305) = 8e-10_r8
369 27949824 : rate(:n,306) = 5e-12_r8
370 27949824 : rate(:n,307) = 7e-10_r8
371 27949824 : rate(:n,310) = 4.8e-10_r8
372 27949824 : rate(:n,311) = 1e-10_r8
373 27949824 : rate(:n,312) = 4e-10_r8
374 :
375 2016000 : do k = 1,kbot
376 1935360 : offset = (k-1)*ncol
377 29885184 : itemp(offset+1:offset+ncol) = 1._r8 / temp(:ncol,k)
378 : end do
379 :
380 27949824 : rate(:n,96) = 2.15e-11_r8 * exp( 110._r8 * itemp(:) )
381 27949824 : exp_fac(:) = exp( 55._r8 * itemp(:) )
382 27949824 : rate(:n,97) = 2.64e-11_r8 * exp_fac(:)
383 27949824 : rate(:n,98) = 6.6e-12_r8 * exp_fac(:)
384 27949824 : rate(:n,102) = 3.6e-18_r8 * exp( -220._r8 * itemp(:) )
385 27949824 : rate(:n,104) = 1.8e-15_r8 * exp( 45._r8 * itemp(:) )
386 27949824 : rate(:n,107) = 3.5e-11_r8 * exp( -135._r8 * itemp(:) )
387 27949824 : rate(:n,108) = 8e-12_r8 * exp( -2060._r8 * itemp(:) )
388 27949824 : rate(:n,117) = 3e-11_r8 * exp( 200._r8 * itemp(:) )
389 27949824 : rate(:n,118) = 1e-14_r8 * exp( -490._r8 * itemp(:) )
390 27949824 : rate(:n,119) = 1.4e-10_r8 * exp( -470._r8 * itemp(:) )
391 27949824 : rate(:n,122) = 4.8e-11_r8 * exp( 250._r8 * itemp(:) )
392 27949824 : rate(:n,123) = 1.8e-11_r8 * exp( 180._r8 * itemp(:) )
393 27949824 : rate(:n,124) = 1.7e-12_r8 * exp( -940._r8 * itemp(:) )
394 27949824 : rate(:n,131) = 2.1e-11_r8 * exp( 100._r8 * itemp(:) )
395 27949824 : rate(:n,135) = 1.5e-11_r8 * exp( -3600._r8 * itemp(:) )
396 27949824 : rate(:n,136) = 5.1e-12_r8 * exp( 210._r8 * itemp(:) )
397 27949824 : rate(:n,144) = 3.3e-12_r8 * exp( 270._r8 * itemp(:) )
398 27949824 : rate(:n,145) = 3e-12_r8 * exp( -1500._r8 * itemp(:) )
399 :
400 27949824 : itemp(:) = 300._r8 * itemp(:)
401 :
402 27949824 : ko(:) = 4.4e-32_r8 * itemp(:)**1.3_r8
403 27949824 : kinf(:) = 7.5e-11_r8 * itemp(:)**(-0.2_r8)
404 80640 : call jpl( wrk, m, 0.6_r8, ko, kinf, n )
405 27949824 : rate(:n,116) = wrk(:)
406 :
407 :
408 :
409 :
410 :
411 :
412 :
413 :
414 :
415 :
416 :
417 80640 : end subroutine setrxt_hrates
418 :
419 : end module mo_setrxt
|