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

Last change on this file since 1310 was 1310, checked in by slebonnois, 10 years ago

SL: VENUS VERTICAL EXTENSION. NLTE and thermospheric processes, to be run with 78 levels and specific inputs.

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