source: trunk/LMDZ.VENUS/libf/phyvenus/param_read.F @ 1453

Last change on this file since 1453 was 1452, checked in by slebonnois, 9 years ago

SL: converging photochemistry/high atm, with bug corrections and rho output

File size: 12.5 KB
Line 
1      subroutine param_read
2
3      use dimphy
4      use conc
5      implicit none
6
7
8c     common variables and constants
9      include "dimensions.h"
10      include 'param.h'
11      include 'param_v4.h'
12c      include 'datafile.h'
13 
14 
15c     local variables
16
17      integer    i,j,k,inter                          !indexes
18      integer ierr
19      real       nada
20      character (len=100) :: datafile="HIGHATM"
21     
22c*************************+PROGRAM STARTS**************************
23
24
25c     data for the UV heating tabulation
26
27      data (crscabsi2(1,j),j=1,16) /5.61031E-19,1.59677E-18,4.7072E-18,
28     $     1.48254e-17,2.07445e-17,2.573e-17,2.901e-17,3.083e-17,
29     $     3.217e-17,3.539e-17,3.658e-17,3.63e-17,3.41239e-17,
30     $     2.71019e-17,4.93677e-17,1.64e-17/
31
32      data (crscabsi2(2,j),j=1,16) /0.27250E-18,0.11650E-17,0.39250E-17,
33     $     0.10630E-16,0.15590E-16,0.17180E-16,0.19270E-16,0.22860E-16,
34     $     0.24270E-16,0.24440E-16,0.25020E-16,0.26600E-16,0.25400E-16,
35     $     0.35800E-16,0.25590E-16,0.16740E-16/
36
37      data (crscabsi2(3,j),j=1,16) /0.2776E-18,0.9792E-18,0.3313E-17,
38     $     0.6621E-17,0.8481E-17,0.9146E-17,0.9414E-17,0.1039E-16,
39     $     0.1012E-16,0.1033E-16,0.1033E-16,0.1033E-16,0.8268E-17,
40     $     0.6563E-17,0.3506E-17,0.3470E-17/
41
42      data (crscabsi2(5,j),j=1,16) /.5E-20,.1077607E-19,.5670491E-19,
43     $     .3322716E-18,.1054509E-17,.1700005E-17,.3171188E-17,
44     $     .4734241E-17,.5108741E-17,.6022236E-17,.6741537E-17,
45     $     .7277079E-17,.9070787E-17,.9708916E-17,.4026281E-17,0.0/
46
47      data (crscabsi2(8,j),j=1,16) /0.0, 7.44175e-19, 2.23167e-18,
48     $    8.46200e-18,1.18275e-17,1.54900e-17,2.32475e-17,2.41373e-17,
49     $     2.55482e-17,2.38431e-17,2.28600e-17,2.35067e-17,2.56000e-17,
50     $     2.64636e-17,2.86260e-17,3.26561e-17/
51
52      data(crscabsi2(9,j),j=1,16) /3.48182e-20,3.37038e-19,1.03077e-18,
53     $     4.01364e-18,6.45e-18,7.8e-18,1.0e-17,1.13500e-17,1.15500e-17,
54     $     1.18000e-17,1.17500e-17,1.16000e-17,1.28667e-17,1.18500e-17,
55     $     1.11000e-17,9.50000e-18/
56
57      data(crscabsi2(10,j),j=1,16) /0.0,9.39833e-19,2.87714e-18,
58     $     9.66900e-18,1.37063e-17,1.61820e-17,2.30450e-17,2.63373e-17,
59     $     2.63773e-17,2.67677e-17,2.64100e-17,2.53000e-17,2.18100e-17,
60     $     2.04941e-17,2.28160e-17,2.93550e-17/
61
62      data(crscabsi2(11,j),j=1,16) /0.0,9.58555e-19,2.52767e-18,
63     $     8.29700e-18,1.21850e-17,1.40500e-17,1.97025e-17,2.12018e-17,
64     $     2.14673e-17,2.20331e-17,2.21500e-17,2.21600e-17,2.33200e-17,
65     $     2.67800e-17,2.56400e-17,3.58561e-17/
66
67      data(crscabsi2(12,j),j=1,16) /0.0,1.0e-20,2.5e-20,1.30400e-19,
68     $     2.93800e-19,4.36000e-19,8.49400e-19,1.29400e-18,1.40500e-18,
69     $     1.67600e-18,1.93400e-18,2.12200e-18,2.75800e-18,3.48400e-18,
70     $     4.17200e-18,5.26000e-18/
71
72      data(crscabsi2(13,j),j=1,16) /0.0,1.60e-18,4.99111e-18,1.48496e-17
73     $     ,2.17395e-17,2.55857e-17,2.87754e-17,3.65571e-17,3.85691e-17,
74     $     4.16286e-17,4.15117e-17,4.05901e-17,3.64000e-17,2.99670e-17,
75     $     2.46796e-17,2.51789e-17/
76
77      data freccen /3.4,7.5,14.5,23.0,30.3,34.1,49.6,50.5,52.5,56.0,
78     $59.0,61.5,68.7,73.1,78.4,83.1,92.4,97.5,99.3,100.1,100.7,102.1,
79     $104.5,116.8,121.3,127.0,130.6,153.7,162.8,171.4
80     $,195.6,206.3,222.0,236.0,289.0,600./
81
82      data co2crsc195/2.05864e-17,5.90557e-20,3.1027e-19,6.70653e-19,
83     $4.55132e-19,8.87122e-20,1.32138e-20,7.22244e-23,2.88002e-26/
84
85      data co2crsc295/2.05897e-17,6.71104e-20,3.45509e-19,7.45711e-19,
86     $4.82752e-19,1.11594e-19,1.98308e-20,1.3853e-22,2.1414e-25/
87
88c     Reads tabulated functions
89
90      !Tabulated column amount
91      open(210, status = 'old',
92c    $file=trim(datafile)//'/EUVDAT/coln.dat',iostat=ierr)
93     $file=trim(datafile)//'/EUVDAT/param_v5/coln.dat',iostat=ierr)
94
95      IF (ierr.NE.0) THEN
96       write(*,*)'cant find directory EUVDAT containing param_v5 subdir'
97       write(*,*)'(in aeronomars/param_read.F)'
98       write(*,*)'It should be in :', trim(datafile),'/'
99       write(*,*)'1) You can change this directory address in '
100       write(*,*)'   callphys.def with datadir=/path/to/dir'
101       write(*,*)'2) If necessary, EUVDAT (and other datafiles)'
102       write(*,*)'   can be obtained online on:'
103       write(*,*)'   http://www.lmd.jussieu.fr/~forget/datagcm/datafile'
104       STOP
105      ENDIF
106 
107      !Tabulated photoabsorption coefficients
108      open(220,file=trim(datafile)//'/EUVDAT/param_v5/j2_an.dat')
109      open(230,file=trim(datafile)//'/EUVDAT/param_v5/j3_an.dat')
110      open(240,file=trim(datafile)//'/EUVDAT/param_v5/j1_an.dat')
111      open(250,file=trim(datafile)//'/EUVDAT/param_v5/j2_bn.dat')
112      open(260,file=trim(datafile)//'/EUVDAT/param_v5/j2_cn.dat')
113      open(300,file=trim(datafile)//'/EUVDAT//param_v5/j2_dn.dat')
114      open(270,file=trim(datafile)//'/EUVDAT//param_v5/j1_bn.dat')
115      open(280,file=trim(datafile)//'/EUVDAT//param_v5/j1_cn.dat')
116      open(290,file=trim(datafile)//'/EUVDAT//param_v5/j1_dn.dat')
117      open(150,file=trim(datafile)//'/EUVDAT//param_v5/j4n.dat')
118      open(160,file=trim(datafile)//'/EUVDAT//param_v5/j5n.dat')
119      open(170,file=trim(datafile)//'/EUVDAT//param_v5/j6n.dat')
120      open(180,file=trim(datafile)//'/EUVDAT//param_v5/j7n.dat')
121      open(390,file=trim(datafile)//'/EUVDAT//param_v5/j8_an.dat')
122      open(400,file=trim(datafile)//'/EUVDAT//param_v5/j8_bn.dat')
123      open(410,file=trim(datafile)//'/EUVDAT//param_v5/j9n.dat')
124      open(420,file=trim(datafile)//'/EUVDAT//param_v5/j10_an.dat')
125      open(430,file=trim(datafile)//'/EUVDAT//param_v5/j10_bn.dat')
126      open(440,file=trim(datafile)//'/EUVDAT//param_v5/j10_cn.dat')
127      open(450,file=trim(datafile)//'/EUVDAT//param_v5/j11_an.dat')
128      open(460,file=trim(datafile)//'/EUVDAT//param_v5/j11_bn.dat')
129      open(470,file=trim(datafile)//'/EUVDAT//param_v5/j11_cn.dat')
130      open(480,file=trim(datafile)//'/EUVDAT//param_v5/j12n.dat')
131      open(490,file=trim(datafile)//'/EUVDAT//param_v5/j13_an.dat')
132      open(500,file=trim(datafile)//'/EUVDAT//param_v5/j13_bn.dat')
133      open(510,file=trim(datafile)//'/EUVDAT//param_v5/j13_cn.dat')
134
135     
136      do i=210,300,10
137         read(i,*)
138         read(i,*)
139      end do
140
141      do i=150,180,10
142         read(i,*)
143         read(i,*)
144      end do
145
146      do i=390,510,10
147         read(i,*)
148         read(i,*)
149      enddo
150
151      do i=nz2,1,-1
152         read(210,*) (c1_16(i,j),j=1,16),c17_24(i),c25_29(i),c30_31(i),
153     $        c32(i),c33(i),c34(i),c35(i),c36(i)
154      end do
155
156      do i=nz2,1,-1
157         read(220,*) (jabsifotsintpar(i,2,j),j=1,16)
158      end do
159     
160      do i=nz2,1,-1
161         read(230,*) (jabsifotsintpar(i,3,j),j=1,16)
162      end do
163
164      do i=nz2,1,-1
165         read(240,*) (jabsifotsintpar(i,1,j),j=1,16)
166      end do
167
168      do i=nz2,1,-1
169         read(250,*) (jabsifotsintpar(i,2,j),j=17,24)
170      end do
171
172
173      do i=nz2,1,-1
174         read(260,*) (jabsifotsintpar(i,2,j),j=25,31)
175      end do
176
177      do i=nz2,1,-1
178         read(270,*) (jabsifotsintpar(i,1,j),j=17,24)
179      end do
180
181      do i=nz2,1,-1
182         read(280,*) (jabsifotsintpar(i,1,j),j=25,31)
183      end do
184
185      do i=nz2,1,-1
186         read(290,*) jabsifotsintpar(i,1,32)
187      end do
188
189      do i=nz2,1,-1
190         read(300,*) (jabsifotsintpar(i,2,j),j=32,34)
191      end do
192
193      do i=nz2,1,-1
194         read(160,*) (jabsifotsintpar(i,5,j),j=1,15)
195      end do
196
197      do i=nz2,1,-1
198         read(150,*) (jabsifotsintpar(i,4,j),j=25,31)
199      end do
200
201      do i=nz2,1,-1
202         read(170,*) (jabsifotsintpar(i,6,j),j=25,35)
203      end do
204
205      do i=nz2,1,-1
206         read(180,*) (jabsifotsintpar(i,7,j),j=34,36)
207      end do
208
209      do i=nz2,1,-1
210         read(390,*) (jabsifotsintpar(i,8,j),j=2,16)
211      enddo
212
213      do i=nz2,1,-1
214         read(400,*) (jabsifotsintpar(i,8,j),j=17,24)
215      enddo
216
217      do i=nz2,1,-1
218         read(410,*) (jabsifotsintpar(i,9,j),j=1,16)
219      enddo
220
221      do i=nz2,1,-1
222         read(420,*) (jabsifotsintpar(i,10,j),j=2,16)
223      enddo
224
225      do i=nz2,1,-1
226         read(430,*) (jabsifotsintpar(i,10,j),j=17,24)
227      enddo
228
229      do i=nz2,1,-1
230         read(440,*) (jabsifotsintpar(i,10,j),j=25,32)
231      enddo
232
233      do i=nz2,1,-1
234         read(450,*) (jabsifotsintpar(i,11,j),j=2,16)
235      enddo
236
237      do i=nz2,1,-1
238         read(460,*) (jabsifotsintpar(i,11,j),j=17,24)
239      enddo
240
241      do i=nz2,1,-1
242         read(470,*) (jabsifotsintpar(i,11,j),j=25,29)
243      enddo
244     
245      do i=nz2,1,-1
246         read(480,*) (jabsifotsintpar(i,12,j),j=2,16)
247      enddo
248
249      do i=nz2,1,-1
250         read(490,*) (jabsifotsintpar(i,13,j),j=2,16)
251      enddo
252     
253      do i=nz2,1,-1
254         read(500,*) (jabsifotsintpar(i,13,j),j=17,24)
255      enddo
256     
257      do i=nz2,1,-1
258         read(510,*) (jabsifotsintpar(i,13,j),j=25,36)
259      enddo
260
261      do i=210,300,10
262         close(i)
263      end do
264
265      do i=150,180,10
266         close(i)
267      end do
268
269      do i=390,510,10
270         close(i)
271      enddo
272
273
274c     set t0
275
276      do i=1,nz2
277         t0(i)=195.
278      end do
279
280
281      do i=1,ninter
282         fluxtop(i)=1.
283      end do
284
285      !Parameters for the variation of the solar flux with 11 years cycle
286      open(100,file=trim(datafile)//'/EUVDAT/param_v5/varflujo.dat')
287      read(100,*)
288      do i=1,24
289         read(100,*) inter,ct1(i),p1(i),ct2(i),p2(i),nada
290      end do
291      close(100)
292
293c     dissociation and ionization efficiencies
294
295!      do inter=1,ninter
296!         efdisco2(inter)=0.
297!         efdiso2(inter)=0.
298!         efdish2(inter)=0.
299!         efdish2o(inter)=0.
300!         efdish2o2(inter)=0.
301!         efdiso3(inter)=0.
302!         efdisco(inter)=0.
303!         efdisn2(inter)=0.
304!         efdisno(inter)=0.
305!         efdisno2(inter)=0.
306!         efionco2(inter,1)=0.
307!         efionco2(inter,2)=0.
308!         efionco2(inter,3)=0.
309!         efionco2(inter,4)=0.
310!         efiono3p(inter)=0.
311!         efionn2(inter,1)=0.
312!         efionn2(inter,2)=0.
313!         efionco(inter,1)=0.
314!         efionco(inter,2)=0.
315!         efionco(inter,3)=0.
316!         efionn(inter)=0.
317!         efionh(inter)=0.
318!         efionno(inter)=0.
319!      enddo
320
321
322c     CO2, O2, NO
323
324!      open(120,file=trim(datafile)//'/EUVDAT/param_v5/efdis_inter.dat')
325!      read(120,*)
326!      do i=1,21
327!         read(120,*)inter,efdisco2(inter),efdiso2(inter),efdisno(inter)
328!      do inter=8,28
329!         read(120,*)i,efdisco2(inter),efdiso2(inter),efdisno(inter)
330!      enddo
331!      do inter=29,ninter
332!         efdisco2(inter)=1.
333!         efdiso2(inter)=1.
334!         efdisno(inter)=1.
335!      enddo
336
337
338c     N2
339
340!      efdisn2(15)=0.1
341!      do inter=16,ninter
342!         efdisn2(inter)=1.
343!      enddo
344
345
346c     CO
347
348!      efdisco(16)=0.5
349!      do inter=17,ninter
350!         efdisco(inter)=1.
351!      enddo
352
353     
354c     O, N, H
355
356!      do inter=1,ninter
357!         efdiso(inter)=0.
358!         efdisn(inter)=0.
359!         efdish(inter)=0.
360!      enddo
361
362
363c     H2O, H2O2, O3, NO2
364
365!      do inter=25,31
366!         efdish2o(inter)=1.
367!      enddo
368!      do inter=25,35
369!         efdish2o2(inter)=1.
370!      enddo
371!      do inter=34,36
372!         efdiso3(inter)=1.
373!      enddo
374!      do inter=27,36
375!         efdisno2(inter)=1.
376!      enddo
377!      do inter=1,15
378!         efdish2(inter)=1.
379!      enddo
380         
381      !4 possible channels for CO2 ionization
382!      do inter=14,16
383!         efionco2(inter,1)=1.-efdisco2(inter)
384!      enddo
385!      efionco2(13,1)=0.805*(1.-efdisco2(13))
386!      efionco2(13,2)=0.195*(1.-efdisco2(13))
387!      do inter=11,12
388!         efionco2(inter,3)=1.-efdisco2(inter)
389!      enddo
390!      efionco2(10,3)=0.9*(1.-efdisco2(10))
391!      efionco2(10,4)=0.1*(1.-efdisco2(10))
392!      do inter=2,9
393!         efionco2(inter,4)=1.-efdisco2(inter)
394!      enddo
395
396      !For O(3p) total ionization under 91.1 nm
397!      do inter=1,16
398!         efiono3p(inter)=1.d0
399!      enddo
400
401      !2 channels for N2 ionization
402!      do inter=9,15
403!         efionn2(inter,1)=1.-efdisn2(inter)
404!      enddo
405!      do inter=2,8
406!         efionn2(inter,2)=1.-efdisn2(inter)
407!      enddo
408     
409      !3 channels for CO ionization
410!      do inter=11,16
411!         efionco(inter,1)=1.-efdisco(inter)
412!      enddo
413!      efionco(10,1)=0.87*(1.-efdisco(10))
414!      efionco(10,2)=0.13*(1.-efdisco(10))
415!      do inter=8,9
416!         efionco(inter,2)=1.-efdisco(inter)
417!      enddo
418!      efionco(7,2)=0.1*(1.-efdisco(7))
419!      efionco(7,3)=0.9*(1.-efdisco(7))
420!      do inter=2,6
421!         efionco(inter,3)=1.-efdisco(inter)
422!      enddo
423
424      !Total ionization under 85 nm for N
425!      do inter=1,16
426!         efionn(inter)=1.
427!      enddo
428
429      !NO
430!      do inter=2,28
431!         efionno(inter)=1.-efdisno(inter)
432!      enddo
433
434      !Total ionization under 90 nm for H
435!      do inter=3,16
436!         efionh(inter)=1.
437!      enddo
438
439
440      return
441
442
443      end
444
Note: See TracBrowser for help on using the repository browser.