source: trunk/LMDZ.MARS/libf/aeronomars/param_v4_h.F90 @ 2325

Last change on this file since 2325 was 1888, checked in by emillour, 7 years ago

Mars GCM:
Updated the calculation of the dissociation and ionization
branching ratios, using the values in the Schunk and Nagy book.
New datafiles *branchingratio_schunkandnagy2000_param.dat must be loaded
for the "EUVDAT" subdirectory of the standard "datadir" directory.
Main changes are:

  • param_v4_h.F90 -> New definition for the O2 ionization branching ratio
  • param_read_e107.F -> Read the new files containing the S&N branching ratios
  • paramfoto_compact.F -> Mainly cleaning of the code and the comments.

Also correction of a bug affecting the calculation of CO losses

  • chemthermos.F90 -> Small modification to add the possibility of including

NO and O2 nightglow rates to the outputs

  • calchim.F90 and calchim_asis.F90 -> account for change in arguments in

calls to chemthermos
FGG

File size: 16.5 KB
Line 
1MODULE param_v4_h
2
3   IMPLICIT NONE
4
5   integer, parameter :: ninter=36
6   integer, parameter :: nabs=13
7   integer, parameter :: nz2=253
8   integer, parameter :: ninter2=16
9   real*8, parameter :: kboltzman = 1.381e-16
10   real*8, parameter :: n_avog = 6.023e23
11   real*8, parameter :: gg = 6.67259e-8
12   real*8, parameter :: masa = 6.4163e26
13   real*8, parameter :: radio = 3390.
14   integer, parameter :: nreact=93
15   integer, parameter :: tapas=42
16
17   real crscabsi2(nabs,16)    !cross section
18   real c1_16(nz2,16)   !Col. int. 1 (o2+o+h2+n) (cm^-2)
19   real c17_24(nz2)     !Col. int. 17-24 (co2+o2+n2+no+co+no2) (cm^-2)
20   real c25_29(nz2)     !Col. int. 25-29 (co2+o2+h2o+h2o2+no+co+no2) (cm^-2)
21   real c30_31(nz2)     !Col. int. 30-31 (co2+o2+h2o+h2o2+no+no2)
22   real c32(nz2)        !col. int. 32 (co2+h2o2+o2+no+no2) (cm^-2)
23   real c33(nz2)        !col. int. 33 (h2o2+o2+no2) (cm^-2)
24   real c34(nz2)        !col. int. 34 (h2o2+o2+o3+no2) (cm^-2)
25   real c35(nz2)        !col. int. 35 (h2o2+o3+no2) (cm^-2)
26   real c36(nz2)        !col. int. 36 (o3+no2) (cm^-2)
27   real co2crsc195(9)
28   real co2crsc295(9)
29   real t0(nz2)
30   real fluxtop(ninter)
31   real freccen(ninter)          !representative wavelenght
32   real jabsifotsintpar(nz2,nabs,ninter)
33   real e107,date_e107(669),e107_tab(669)
34   real coefit0(ninter,nabs),coefit1(ninter,nabs)
35   real coefit2(ninter,nabs)
36   real coefit3(ninter,nabs),coefit4(ninter,nabs)
37
38   !reaction rates
39   real*8 ch2, ch3, ch4, ch5, ch7,ch9,ch10,ch11,ch13,ch14,ch15,ch18
40   real*8 ch19,ch20,ch21,ch22,ch23,ch24,ch30,ch31,ch32,ch33,ch34
41   real*8 ch35,ch36,ch37,ch38,ch39,ch40,ch41,ch42,ch43,ch45
42   real*8 ch46,ch47,ch48,ch49,ch50,ch55,ch56,ch57,ch58,ch59,ch62
43   real*8 ch63,ch64,ch65,ch66,ch67,ch68,ch69,ch70,ch71
44   real*8 ch72,ch73,ch74,ch75,ch76,ch85,ch86,ch87
45   real*8 rcoef(61,3)
46
47   real fluxtophr(ninter)
48   real ct1(ninter),p1(ninter),ct2(ninter),p2(ninter)
49
50   real efdisco2(ninter), efdiso2(ninter), efdish2o(ninter)
51   real efdish2o2(ninter), efdish2(ninter), efdiso3(ninter)
52   real efdiso(ninter), efdisn(ninter), efdish(ninter)
53   real efdisno(ninter), efdisn2(ninter), efdisno2(ninter)
54   real efdisco(ninter)
55   real efionco2(ninter,4)
56   real efiono2(ninter,2)
57   real efionn2(ninter,2)
58   real efionco(ninter,3)
59   real efiono3p(ninter),efionn(ninter)
60   real efionno(ninter),efionh(ninter)
61
62   !photodissociation rates
63   REAL,SAVE,ALLOCATABLE :: jfotsout(:,:,:)
64   REAL,SAVE,ALLOCATABLE :: jdistot(:,:)
65   REAL,SAVE,ALLOCATABLE :: jdistot_b(:,:)
66   REAL,SAVE,ALLOCATABLE :: jion(:,:,:)
67
68   REAL*8,SAVE,ALLOCATABLE :: Pco2(:,:)
69   REAL*8,SAVE,ALLOCATABLE :: Po2(:,:)
70   REAL*8,SAVE,ALLOCATABLE :: Po3p(:,:)
71   REAL*8,SAVE,ALLOCATABLE :: Pco(:,:)
72   REAL*8,SAVE,ALLOCATABLE :: Ph(:,:)
73   REAL*8,SAVE,ALLOCATABLE :: Poh(:,:)
74   REAL*8,SAVE,ALLOCATABLE :: Pho2(:,:)
75   REAL*8,SAVE,ALLOCATABLE :: Ph2(:,:)
76   REAL*8,SAVE,ALLOCATABLE :: Ph2o(:,:)
77   REAL*8,SAVE,ALLOCATABLE :: Po1d(:,:)
78   REAL*8,SAVE,ALLOCATABLE :: Ph2o2(:,:)
79   REAL*8,SAVE,ALLOCATABLE :: Po3(:,:)
80   REAL*8,SAVE,ALLOCATABLE :: Pn(:,:)
81   REAL*8,SAVE,ALLOCATABLE :: Pno(:,:)
82   REAL*8,SAVE,ALLOCATABLE :: Pno2(:,:)
83   REAL*8,SAVE,ALLOCATABLE :: Pn2(:,:)
84   REAL*8,SAVE,ALLOCATABLE :: Pn2d(:,:)
85   REAL*8,SAVE,ALLOCATABLE :: Pco2plus(:,:)
86   REAL*8,SAVE,ALLOCATABLE :: Poplus(:,:)
87   REAL*8,SAVE,ALLOCATABLE :: Po2plus(:,:)
88   REAL*8,SAVE,ALLOCATABLE :: Pelect(:,:)
89   REAL*8,SAVE,ALLOCATABLE :: Pcoplus(:,:)
90   REAL*8,SAVE,ALLOCATABLE :: Pcplus(:,:)
91   REAL*8,SAVE,ALLOCATABLE :: Pnplus(:,:)
92   REAL*8,SAVE,ALLOCATABLE :: Pnoplus(:,:)
93   REAL*8,SAVE,ALLOCATABLE :: Pn2plus(:,:)
94   REAL*8,SAVE,ALLOCATABLE :: Phplus(:,:)
95   REAL*8,SAVE,ALLOCATABLE :: Phco2plus(:,:)
96   REAL*8,SAVE,ALLOCATABLE :: Pco2tot(:)
97   REAL*8,SAVE,ALLOCATABLE :: Po2tot(:)
98   REAL*8,SAVE,ALLOCATABLE :: Po3ptot(:)
99   REAL*8,SAVE,ALLOCATABLE :: Pcotot(:)
100   REAL*8,SAVE,ALLOCATABLE :: Phtot(:)
101   REAL*8,SAVE,ALLOCATABLE :: Pohtot(:)
102   REAL*8,SAVE,ALLOCATABLE :: Pho2tot(:)
103   REAL*8,SAVE,ALLOCATABLE :: Ph2tot(:)
104   REAL*8,SAVE,ALLOCATABLE :: Ph2otot(:)
105   REAL*8,SAVE,ALLOCATABLE :: Po1dtot(:)
106   REAL*8,SAVE,ALLOCATABLE :: Ph2o2tot(:)
107   REAL*8,SAVE,ALLOCATABLE :: Po3tot(:)
108   REAL*8,SAVE,ALLOCATABLE :: Pntot(:)
109   REAL*8,SAVE,ALLOCATABLE :: Pnotot(:)
110   REAL*8,SAVE,ALLOCATABLE :: Pno2tot(:)
111   REAL*8,SAVE,ALLOCATABLE :: Pn2tot(:)
112   REAL*8,SAVE,ALLOCATABLE :: Pn2dtot(:)
113   REAL*8,SAVE,ALLOCATABLE :: Pco2plustot(:)
114   REAL*8,SAVE,ALLOCATABLE :: Poplustot(:)
115   REAL*8,SAVE,ALLOCATABLE :: Po2plustot(:)
116   REAL*8,SAVE,ALLOCATABLE :: Pelecttot(:)
117   REAL*8,SAVE,ALLOCATABLE :: Pcoplustot(:)
118   REAL*8,SAVE,ALLOCATABLE :: Pcplustot(:)
119   REAL*8,SAVE,ALLOCATABLE :: Pnplustot(:)
120   REAL*8,SAVE,ALLOCATABLE :: Pnoplustot(:)
121   REAL*8,SAVE,ALLOCATABLE :: Pn2plustot(:)
122   REAL*8,SAVE,ALLOCATABLE :: Phplustot(:)
123   REAL*8,SAVE,ALLOCATABLE :: Phco2plustot(:)
124   REAL*8,SAVE,ALLOCATABLE :: Lco2(:,:)
125   REAL*8,SAVE,ALLOCATABLE :: Lo2(:,:)
126   REAL*8,SAVE,ALLOCATABLE :: Lo3p(:,:)
127   REAL*8,SAVE,ALLOCATABLE :: Lco(:,:)
128   REAL*8,SAVE,ALLOCATABLE :: Lh(:,:)
129   REAL*8,SAVE,ALLOCATABLE :: Loh(:,:)
130   REAL*8,SAVE,ALLOCATABLE :: Lho2(:,:)
131   REAL*8,SAVE,ALLOCATABLE :: Lh2(:,:)
132   REAL*8,SAVE,ALLOCATABLE :: Lh2o(:,:)
133   REAL*8,SAVE,ALLOCATABLE :: Lo1d(:,:)
134   REAL*8,SAVE,ALLOCATABLE :: Lh2o2(:,:)
135   REAL*8,SAVE,ALLOCATABLE :: Lo3(:,:)
136   REAL*8,SAVE,ALLOCATABLE :: Ln(:,:)
137   REAL*8,SAVE,ALLOCATABLE :: Lno(:,:)
138   REAL*8,SAVE,ALLOCATABLE :: Lno2(:,:)
139   REAL*8,SAVE,ALLOCATABLE :: Ln2(:,:)
140   REAL*8,SAVE,ALLOCATABLE :: Ln2d(:,:)
141   REAL*8,SAVE,ALLOCATABLE :: Lco2plus(:,:)
142   REAL*8,SAVE,ALLOCATABLE :: Loplus(:,:)
143   REAL*8,SAVE,ALLOCATABLE :: Lo2plus(:,:)
144   REAL*8,SAVE,ALLOCATABLE :: Lelect(:,:)
145   REAL*8,SAVE,ALLOCATABLE :: Lcoplus(:,:)
146   REAL*8,SAVE,ALLOCATABLE :: Lcplus(:,:)
147   REAL*8,SAVE,ALLOCATABLE :: Lnplus(:,:)
148   REAL*8,SAVE,ALLOCATABLE :: Lnoplus(:,:)
149   REAL*8,SAVE,ALLOCATABLE :: Ln2plus(:,:)
150   REAL*8,SAVE,ALLOCATABLE :: Lhplus(:,:)
151   REAL*8,SAVE,ALLOCATABLE :: Lhco2plus(:,:)
152   REAL*8,SAVE,ALLOCATABLE :: Lco2tot(:)
153   REAL*8,SAVE,ALLOCATABLE :: Lo2tot(:)
154   REAL*8,SAVE,ALLOCATABLE :: Lo3ptot(:)
155   REAL*8,SAVE,ALLOCATABLE :: Lcotot(:)
156   REAL*8,SAVE,ALLOCATABLE :: Lhtot(:)
157   REAL*8,SAVE,ALLOCATABLE :: Lohtot(:)
158   REAL*8,SAVE,ALLOCATABLE :: Lho2tot(:)
159   REAL*8,SAVE,ALLOCATABLE :: Lh2tot(:)
160   REAL*8,SAVE,ALLOCATABLE :: Lh2otot(:)
161   REAL*8,SAVE,ALLOCATABLE :: Lo1dtot(:)
162   REAL*8,SAVE,ALLOCATABLE :: Lh2o2tot(:)
163   REAL*8,SAVE,ALLOCATABLE :: Lo3tot(:)
164   REAL*8,SAVE,ALLOCATABLE :: Lntot(:)
165   REAL*8,SAVE,ALLOCATABLE :: Lnotot(:)
166   REAL*8,SAVE,ALLOCATABLE :: Lno2tot(:)
167   REAL*8,SAVE,ALLOCATABLE :: Ln2tot(:)
168   REAL*8,SAVE,ALLOCATABLE :: Ln2dtot(:)
169   REAL*8,SAVE,ALLOCATABLE :: Lco2plustot(:)
170   REAL*8,SAVE,ALLOCATABLE :: Loplustot(:)
171   REAL*8,SAVE,ALLOCATABLE :: Lo2plustot(:)
172   REAL*8,SAVE,ALLOCATABLE :: Lelecttot(:)
173   REAL*8,SAVE,ALLOCATABLE :: Lcoplustot(:)
174   REAL*8,SAVE,ALLOCATABLE :: Lcplustot(:)
175   REAL*8,SAVE,ALLOCATABLE :: Lnplustot(:)
176   REAL*8,SAVE,ALLOCATABLE :: Lnoplustot(:)
177   REAL*8,SAVE,ALLOCATABLE :: Ln2plustot(:)
178   REAL*8,SAVE,ALLOCATABLE :: Lhplustot(:)
179   REAL*8,SAVE,ALLOCATABLE :: Lhco2plustot(:)
180   REAL*8,SAVE,ALLOCATABLE :: tminco2(:)
181   REAL*8,SAVE,ALLOCATABLE :: tmino2(:)
182   REAL*8,SAVE,ALLOCATABLE :: tmino3p(:)
183   REAL*8,SAVE,ALLOCATABLE :: tminco(:)
184   REAL*8,SAVE,ALLOCATABLE :: tminh(:)
185   REAL*8,SAVE,ALLOCATABLE :: tminoh(:)
186   REAL*8,SAVE,ALLOCATABLE :: tminho2(:)
187   REAL*8,SAVE,ALLOCATABLE :: tminh2(:)
188   REAL*8,SAVE,ALLOCATABLE :: tminh2o(:)
189   REAL*8,SAVE,ALLOCATABLE :: tmino1d(:)
190   REAL*8,SAVE,ALLOCATABLE :: tminh2o2(:)
191   REAL*8,SAVE,ALLOCATABLE :: tmino3(:)
192   REAL*8,SAVE,ALLOCATABLE :: tminn(:)
193   REAL*8,SAVE,ALLOCATABLE :: tminno(:)
194   REAL*8,SAVE,ALLOCATABLE :: tminno2(:)
195   REAL*8,SAVE,ALLOCATABLE :: tminn2(:)
196   REAL*8,SAVE,ALLOCATABLE :: tminn2d(:)
197   REAL*8,SAVE,ALLOCATABLE :: tminco2plus(:)
198   REAL*8,SAVE,ALLOCATABLE :: tminoplus(:)
199   REAL*8,SAVE,ALLOCATABLE :: tmino2plus(:)
200   REAL*8,SAVE,ALLOCATABLE :: tmincoplus(:)
201   REAL*8,SAVE,ALLOCATABLE :: tmincplus(:)
202   REAL*8,SAVE,ALLOCATABLE :: tminnplus(:)
203   REAL*8,SAVE,ALLOCATABLE :: tminnoplus(:)
204   REAL*8,SAVE,ALLOCATABLE :: tminn2plus(:)
205   REAL*8,SAVE,ALLOCATABLE :: tminhplus(:)
206   REAL*8,SAVE,ALLOCATABLE :: tminhco2plus(:)
207
208   CONTAINS
209
210      SUBROUTINE fill_data_thermos
211
212      IMPLICIT NONE
213
214      ! data for the UV heating tabulation
215
216      crscabsi2(1,1:16) = (/ 5.61031E-19,1.59677E-18,4.7072E-18,&
217          1.48254e-17,2.07445e-17,2.573e-17,2.901e-17,3.083e-17,&
218          3.217e-17,3.539e-17,3.658e-17,3.63e-17,3.41239e-17,&
219          2.71019e-17,4.93677e-17,1.64e-17 /)
220
221      crscabsi2(2,1:16) = (/ 0.27250E-18,0.11650E-17,0.39250E-17,&
222          0.10630E-16,0.15590E-16,0.17180E-16,0.19270E-16,0.22860E-16,&
223          0.24270E-16,0.24440E-16,0.25020E-16,0.26600E-16,0.25400E-16,&
224          0.35800E-16,0.25590E-16,0.16740E-16 /)
225
226      crscabsi2(3,1:16) = (/ 0.2776E-18,0.9792E-18,0.3313E-17,&
227          0.6621E-17,0.8481E-17,0.9146E-17,0.9414E-17,0.1039E-16,&
228          0.1012E-16,0.1033E-16,0.1033E-16,0.1033E-16,0.8268E-17,&
229          0.6563E-17,0.3506E-17,0.3470E-17 /)
230
231      crscabsi2(5,1:16) = (/ .5E-20,.1077607E-19,.5670491E-19,&
232          .3322716E-18,.1054509E-17,.1700005E-17,.3171188E-17,&
233          .4734241E-17,.5108741E-17,.6022236E-17,.6741537E-17,&
234          .7277079E-17,.9070787E-17,.9708916E-17,.4026281E-17,0.0 /)
235
236      crscabsi2(8,1:16) = (/ 0.0, 7.44175e-19, 2.23167e-18,&
237          8.46200e-18,1.18275e-17,1.54900e-17,2.32475e-17,2.41373e-17,&
238          2.55482e-17,2.38431e-17,2.28600e-17,2.35067e-17,2.56000e-17,&
239          2.64636e-17,2.86260e-17,3.26561e-17 /)
240
241      crscabsi2(9,1:16) = (/ 3.48182e-20,3.37038e-19,1.03077e-18,&
242          4.01364e-18,6.45e-18,7.8e-18,1.0e-17,1.13500e-17,1.15500e-17,&
243          1.18000e-17,1.17500e-17,1.16000e-17,1.28667e-17,1.18500e-17,&
244          1.11000e-17,9.50000e-18 /)
245
246      crscabsi2(10,1:16) = (/ 0.0,9.39833e-19,2.87714e-18,&
247          9.66900e-18,1.37063e-17,1.61820e-17,2.30450e-17,2.63373e-17,&
248          2.63773e-17,2.67677e-17,2.64100e-17,2.53000e-17,2.18100e-17,&
249          2.04941e-17,2.28160e-17,2.93550e-17 /)
250
251      crscabsi2(11,1:16) = (/ 0.0,9.58555e-19,2.52767e-18,&
252          8.29700e-18,1.21850e-17,1.40500e-17,1.97025e-17,2.12018e-17,&
253          2.14673e-17,2.20331e-17,2.21500e-17,2.21600e-17,2.33200e-17,&
254          2.67800e-17,2.56400e-17,3.58561e-17 /)
255
256      crscabsi2(12,1:16) = (/ 0.0,1.0e-20,2.5e-20,1.30400e-19,&
257          2.93800e-19,4.36000e-19,8.49400e-19,1.29400e-18,1.40500e-18,&
258          1.67600e-18,1.93400e-18,2.12200e-18,2.75800e-18,3.48400e-18,&
259          4.17200e-18,5.26000e-18 /)
260
261      crscabsi2(13,1:16) = (/ 0.0,1.60e-18,4.99111e-18,1.48496e-17,&
262          2.17395e-17,2.55857e-17,2.87754e-17,3.65571e-17,3.85691e-17,&
263          4.16286e-17,4.15117e-17,4.05901e-17,3.64000e-17,2.99670e-17,&
264          2.46796e-17,2.51789e-17 /)
265
266      freccen(1:ninter)=(/ 3.4,7.5,14.5,23.0,30.3,34.1,&
267           49.6,50.5,52.5,56.0,&
268           59.0,61.5,68.7,73.1,78.4,83.1,92.4,97.5,99.3,100.1,100.7,102.1,&
269           104.5,116.8,121.3,127.0,130.6,153.7,162.8,171.4,&
270           195.6,206.3,222.0,236.0,289.0,600. /)
271
272      co2crsc195(1:9)=(/ 2.05864e-17,5.90557e-20,3.1027e-19,6.70653e-19,&
273           4.55132e-19,8.87122e-20,1.32138e-20,7.22244e-23,2.88002e-26 /)
274
275      co2crsc295(1:9)=(/2.05897e-17,6.71104e-20,3.45509e-19,7.45711e-19,&
276           4.82752e-19,1.11594e-19,1.98308e-20,1.3853e-22,2.1414e-25 /)
277
278      END SUBROUTINE fill_data_thermos
279
280      SUBROUTINE allocate_param_thermos(nlayer)
281
282        IMPLICIT NONE
283
284        INTEGER :: nlayer
285        allocate(jdistot(nabs,nlayer))   
286        allocate(jdistot_b(nabs,nlayer))
287        allocate(jion(nabs,nlayer,4))
288        allocate(jfotsout(ninter,nabs,nlayer))
289        allocate(Pco2(nlayer,nreact))
290        allocate(Po2(nlayer,nreact))
291        allocate(Po3p(nlayer,nreact))
292        allocate(Pco(nlayer,nreact))
293        allocate(Ph(nlayer,nreact))
294        allocate(Poh(nlayer,nreact))
295        allocate(Pho2(nlayer,nreact))
296        allocate(Ph2(nlayer,nreact))
297        allocate(Ph2o(nlayer,nreact))
298        allocate(Po1d(nlayer,nreact))
299        allocate(Ph2o2(nlayer,nreact))
300        allocate(Po3(nlayer,nreact))
301        allocate(Pn(nlayer,nreact))
302        allocate(Pno(nlayer,nreact))
303        allocate(Pno2(nlayer,nreact))
304        allocate(Pn2(nlayer,nreact))
305        allocate(Pn2d(nlayer,nreact))
306        allocate(Pco2plus(nlayer,nreact))
307        allocate(Poplus(nlayer,nreact))
308        allocate(Po2plus(nlayer,nreact))
309        allocate(Pelect(nlayer,nreact))
310        allocate(Pcoplus(nlayer,nreact))
311        allocate(Pcplus(nlayer,nreact))
312        allocate(Pnplus(nlayer,nreact))
313        allocate(Pnoplus(nlayer,nreact))
314        allocate(Pn2plus(nlayer,nreact))
315        allocate(Phplus(nlayer,nreact))
316        allocate(Phco2plus(nlayer,nreact))
317        allocate(Pco2tot(nlayer))
318        allocate(Po2tot(nlayer))
319        allocate(Po3ptot(nlayer))
320        allocate(Pcotot(nlayer))
321        allocate(Phtot(nlayer))
322        allocate(Pohtot(nlayer))
323        allocate(Pho2tot(nlayer))
324        allocate(Ph2tot(nlayer))
325        allocate(Ph2otot(nlayer))
326        allocate(Po1dtot(nlayer))
327        allocate(Ph2o2tot(nlayer))
328        allocate(Po3tot(nlayer))
329        allocate(Pntot(nlayer))
330        allocate(Pnotot(nlayer))
331        allocate(Pno2tot(nlayer))
332        allocate(Pn2tot(nlayer))
333        allocate(Pn2dtot(nlayer))
334        allocate(Pco2plustot(nlayer))
335        allocate(Poplustot(nlayer))
336        allocate(Po2plustot(nlayer))
337        allocate(Pelecttot(nlayer))
338        allocate(Pcoplustot(nlayer))
339        allocate(Pcplustot(nlayer))
340        allocate(Pnplustot(nlayer))
341        allocate(Pnoplustot(nlayer))
342        allocate(Pn2plustot(nlayer))
343        allocate(Phplustot(nlayer))
344        allocate(Phco2plustot(nlayer))
345        allocate(Lco2(nlayer,nreact))
346        allocate(Lo2(nlayer,nreact))
347        allocate(Lo3p(nlayer,nreact))
348        allocate(Lco(nlayer,nreact))
349        allocate(Lh(nlayer,nreact))
350        allocate(Loh(nlayer,nreact))
351        allocate(Lho2(nlayer,nreact))
352        allocate(Lh2(nlayer,nreact))
353        allocate(Lh2o(nlayer,nreact))
354        allocate(Lo1d(nlayer,nreact))
355        allocate(Lh2o2(nlayer,nreact))
356        allocate(Lo3(nlayer,nreact))
357        allocate(Ln(nlayer,nreact))
358        allocate(Lno(nlayer,nreact))
359        allocate(Lno2(nlayer,nreact))
360        allocate(Ln2(nlayer,nreact))
361        allocate(Ln2d(nlayer,nreact))
362        allocate(Lco2plus(nlayer,nreact))
363        allocate(Loplus(nlayer,nreact))
364        allocate(Lo2plus(nlayer,nreact))
365        allocate(Lelect(nlayer,nreact))
366        allocate(Lcoplus(nlayer,nreact))
367        allocate(Lcplus(nlayer,nreact))
368        allocate(Lnplus(nlayer,nreact))
369        allocate(Lnoplus(nlayer,nreact))
370        allocate(Ln2plus(nlayer,nreact))
371        allocate(Lhplus(nlayer,nreact))
372        allocate(Lhco2plus(nlayer,nreact))
373        allocate(Lco2tot(nlayer))
374        allocate(Lo2tot(nlayer))
375        allocate(Lo3ptot(nlayer))
376        allocate(Lcotot(nlayer))
377        allocate(Lhtot(nlayer))
378        allocate(Lohtot(nlayer))
379        allocate(Lho2tot(nlayer))
380        allocate(Lh2tot(nlayer))
381        allocate(Lh2otot(nlayer))
382        allocate(Lo1dtot(nlayer))
383        allocate(Lh2o2tot(nlayer))
384        allocate(Lo3tot(nlayer))
385        allocate(Lntot(nlayer))
386        allocate(Lnotot(nlayer))
387        allocate(Lno2tot(nlayer))
388        allocate(Ln2tot(nlayer))
389        allocate(Ln2dtot(nlayer))
390        allocate(Lco2plustot(nlayer))
391        allocate(Loplustot(nlayer))
392        allocate(Lo2plustot(nlayer))
393        allocate(Lelecttot(nlayer))
394        allocate(Lcoplustot(nlayer))
395        allocate(Lcplustot(nlayer))
396        allocate(Lnplustot(nlayer))
397        allocate(Lnoplustot(nlayer))
398        allocate(Ln2plustot(nlayer))
399        allocate(Lhplustot(nlayer))
400        allocate(Lhco2plustot(nlayer))
401        allocate(tminco2(nlayer))
402        allocate(tmino2(nlayer))
403        allocate(tmino3p(nlayer))
404        allocate(tminco(nlayer))
405        allocate(tminh(nlayer))
406        allocate(tminoh(nlayer))
407        allocate(tminho2(nlayer))
408        allocate(tminh2(nlayer))
409        allocate(tminh2o(nlayer))
410        allocate(tmino1d(nlayer))
411        allocate(tminh2o2(nlayer))
412        allocate(tmino3(nlayer))
413        allocate(tminn(nlayer))
414        allocate(tminno(nlayer))
415        allocate(tminno2(nlayer))
416        allocate(tminn2(nlayer))
417        allocate(tminn2d(nlayer))
418        allocate(tminco2plus(nlayer))
419        allocate(tminoplus(nlayer))
420        allocate(tmino2plus(nlayer))
421        allocate(tmincoplus(nlayer))
422        allocate(tmincplus(nlayer))
423        allocate(tminnplus(nlayer))
424        allocate(tminnoplus(nlayer))
425        allocate(tminn2plus(nlayer))
426        allocate(tminhplus(nlayer))
427        allocate(tminhco2plus(nlayer))
428
429      END SUBROUTINE allocate_param_thermos
430
431END MODULE param_v4_h
Note: See TracBrowser for help on using the repository browser.