source: trunk/LMDZ.VENUS/libf/phyvenus/chemparam_mod.F90 @ 2203

Last change on this file since 2203 was 2048, checked in by slebonnois, 6 years ago

SL: VENUS, autres details

  • Property svn:executable set to *
File size: 28.4 KB
Line 
1MODULE chemparam_mod
2
3!MODULE qui definit les indices des traceurs et leurs masses molaires.
4! utilise aussi pour variables communes nuages/photochimie
5
6IMPLICIT NONE
7
8!---------------------------------------------------------------------------- 
9INTEGER, SAVE :: i_co2, i_co, i_h2, i_h2o, i_o1d,        &
10                 i_o, i_o2, i_o2dg, i_o3, i_h,           &
11                 i_oh, i_ho2, i_h2o2, i_cl, i_clo,       &
12                 i_cl2, i_hcl, i_hocl, i_clco, i_clco3,  &
13                 i_cocl2, i_s, i_so, i_so2, i_so3,       &
14                 i_s2o2, i_ocs, i_hso3, i_h2so4, i_s2,   &
15                 i_clso2, i_oscl, i_n2
16                 
17INTEGER, SAVE :: i_h2oliq, i_h2so4liq
18
19INTEGER, SAVE :: i_m0_aer, i_m3_aer,                       &
20                 i_m0_mode1drop, i_m0_mode1ccn,            &
21                 i_m3_mode1sa, i_m3_mode1w, i_m3_mode1ccn, &
22                 i_m0_mode2drop, i_m0_mode2ccn,            &
23                 i_m3_mode2sa, i_m3_mode2w, i_m3_mode2ccn
24
25INTEGER, SAVE :: nmicro  ! number of microphysical tracers
26
27REAL, DIMENSION(:), SAVE, ALLOCATABLE :: M_tr
28 
29
30!----------------------------------------------------------------------------
31! DEF FOR CL_SCHEME = 1 (AURELIEN)
32
33!     number of clouds mode modelized
34      INTEGER, PARAMETER :: nbr_mode = 3
35      INTEGER :: i_cloud
36      INTEGER, SAVE :: cloudmax
37      INTEGER, SAVE :: cloudmin
38      REAL, SAVE, DIMENSION(:,:,:), ALLOCATABLE :: R_MEDIAN
39      REAL, SAVE, DIMENSION(:,:,:), ALLOCATABLE :: STDDEV
40     
41!     K_MASS coefficient correspondant à la partie condensee de chaque mode
42      REAL, SAVE, DIMENSION(:,:,:), ALLOCATABLE :: K_MASS
43
44      REAL, SAVE, DIMENSION(:,:,:), ALLOCATABLE :: NBRTOT
45      REAL, SAVE, DIMENSION(:,:), ALLOCATABLE :: WH2SO4
46      REAL, SAVE, DIMENSION(:,:), ALLOCATABLE :: rho_droplet
47!----------------------------------------------------------------------------
48! DEF FOR CL_SCHEME = 2 (FULL MICROPHYS)
49
50!----------------------------------------------------------------------------
51
52!----------------------------------------------------------------------------
53  CONTAINS
54!----------------------------------------------------------------------------
55
56  SUBROUTINE cloud_ini(nbr_lon,nbr_lev)
57
58!=============================================================
59!       cloud_ini definit le champ 3D des caracteristiques du nuage
60 
61      INTEGER :: nbr_lon,nbr_lev,i_lev
62   
63      ALLOCATE(NBRTOT(nbr_lon,nbr_lev,nbr_mode))
64      ALLOCATE(R_MEDIAN(nbr_lon,nbr_lev,nbr_mode))
65      ALLOCATE(K_MASS(nbr_lon,nbr_lev,nbr_mode))
66      ALLOCATE(STDDEV(nbr_lon,nbr_lev,nbr_mode))
67      ALLOCATE(WH2SO4(nbr_lon,nbr_lev))
68      ALLOCATE(rho_droplet(nbr_lon,nbr_lev))
69           
70      PRINT*,'=========================='
71      PRINT*,'Initialisation cloud layer'
72      PRINT*,'=========================='
73      PRINT*,'nbr_lon',nbr_lon
74      PRINT*,'nbr_lev',nbr_lev
75      PRINT*,'nbr_mode',nbr_mode
76       
77      NBRTOT(:,:,:)    = 0.0E+0
78      WH2SO4(:,:)      = 0.0E+0
79      rho_droplet(:,:) = 0.0E+0
80           
81!=============================================================
82!                     Initialisation cloud layer 1
83!=============================================================
84!     cloudmin et cloudmax niveaux du GCM
85      cloudmin= 18
86      cloudmax= 50
87
88!     radius R_MEDIAN en m (donc *e-6 pour microns)
89       
90        R_MEDIAN(:,:,:)=0.0E+0           ! Geometric Average Radius
91        STDDEV(:,:,:)=0.0E+0             ! Geometric Std Deviation
92        K_MASS(:,:,:)=0.0E+0             ! Coeff multimodal
93
94!       ===============================================
95!       Knollenberg & Hunten, 1980 and James et al 1997
96!       ===============================================
97
98!       ===============================================
99!       Initialisation UNIMODALE
100!       ===============================================
101
102!     Lower Haze: mode 1
103!      DO i_lev=cloudmin,20
104!      R_MEDIAN(:,i_lev,1)=0.2e-6
105!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
106!      STDDEV(:,i_lev,1)=1.56
107!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
108!      K_MASS(:,i_lev,1)=1.0
109!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
110!      END DO
111
112!     Lower Cloud: mode 3
113!      DO i_lev=21,23
114!      R_MEDIAN(:,i_lev,1)=3.65e-6
115!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
116!      STDDEV(:,i_lev,1)=1.28
117!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
118!      K_MASS(:,i_lev,1)=1.0
119!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
120!      END DO
121
122!     Middle Cloud: mode 2 prime
123!      DO i_lev=24,28
124!      R_MEDIAN(:,i_lev,1)=1.4e-6
125!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
126!      STDDEV(:,i_lev,1)=1.23
127!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
128!      K_MASS(:,i_lev,1)=1.0
129!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
130!      END DO
131
132!     Upper Cloud: mode 2
133!      DO i_lev=29,35
134!      R_MEDIAN(:,i_lev,1)=1.0e-6
135!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
136!      STDDEV(:,i_lev,1)=1.29
137!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
138!      K_MASS(:,i_lev,1)=1.0
139!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
140!      END DO
141
142!     Upper Haze: mode 1
143!      DO i_lev=36, cloudmax
144!      R_MEDIAN(:,i_lev,1)=0.2e-6
145!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
146!      STDDEV(:,i_lev,1)=2.16
147!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
148!      K_MASS(:,i_lev,1)=1.0
149!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
150!      END DO
151
152!       ===============================================
153!       Initialisation TRIMODALE
154!       ===============================================
155
156!     Lower Haze: mode 1
157!      DO i_lev=cloudmin,20
158!      R_MEDIAN(:,i_lev,1)=0.3e-6
159!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
160!      STDDEV(:,i_lev,1)=1.56
161!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
162!      K_MASS(:,i_lev,1)=1.0
163!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
164!      END DO
165                             
166!     Lower Haze: mode 2
167!      DO i_lev=cloudmin,20
168!      R_MEDIAN(:,i_lev,2)=1.4e-6
169!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
170!      STDDEV(:,i_lev,2)=1.23
171!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
172!      K_MASS(:,i_lev,2)=0.0
173!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
174!      END DO
175
176!     Lower Haze: mode 3
177!      DO i_lev=cloudmin,20
178!      R_MEDIAN(:,i_lev,3)=3.65e-6
179!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
180!      STDDEV(:,i_lev,3)=1.28
181!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
182!      K_MASS(:,i_lev,3)=0.
183!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
184!      END DO 
185
186!     Lower Cloud: mode 1
187!      DO i_lev=21,23
188!      R_MEDIAN(:,i_lev,1)=0.3e-6
189!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
190!      STDDEV(:,i_lev,1)=1.56
191!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
192!      K_MASS(:,i_lev,1)=0.1
193!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
194!      END DO
195                             
196!     Lower Cloud: mode 2 prime
197!      DO i_lev=21,23
198!      R_MEDIAN(:,i_lev,2)=1.4e-6
199!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
200!      STDDEV(:,i_lev,2)=1.23
201!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
202!      K_MASS(:,i_lev,2)=0.4
203!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
204!      END DO
205
206!     Lower Cloud: mode 3
207!      DO i_lev=21,23
208!      R_MEDIAN(:,i_lev,3)=3.65e-6
209!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
210!      STDDEV(:,i_lev,3)=1.28
211!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
212!      K_MASS(:,i_lev,3)=0.5
213!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
214!      END DO
215
216!     Middle Cloud: mode 1
217!      DO i_lev=24,28
218!      R_MEDIAN(:,i_lev,1)=0.3e-6
219!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
220!      STDDEV(:,i_lev,1)=1.56
221!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
222!      K_MASS(:,i_lev,1)=0.0
223!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
224!      END DO
225         
226!     Middle Cloud: mode 2 prime
227!      DO i_lev=24,28
228!      R_MEDIAN(:,i_lev,2)=1.4e-6
229!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
230!      STDDEV(:,i_lev,2)=1.23
231!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
232!      K_MASS(:,i_lev,2)=0.8
233!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
234!      END DO
235   
236!     Middle Cloud: mode 3
237!      DO i_lev=24,28
238!      R_MEDIAN(:,i_lev,3)=3.65e-6
239!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
240!      STDDEV(:,i_lev,3)=1.28
241!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
242!      K_MASS(:,i_lev,3)=0.2
243!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
244!      END DO
245
246
247!     Upper Cloud: mode 1
248!      DO i_lev=29,35
249!      R_MEDIAN(:,i_lev,1)=0.3e-6
250!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
251!      STDDEV(:,i_lev,1)=1.56
252!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
253!      K_MASS(:,i_lev,1)=0.15
254!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
255!      END DO
256
257!     Upper Cloud: mode 2
258!      DO i_lev=29,35
259!      R_MEDIAN(:,i_lev,2)=1.0e-6
260!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
261!      STDDEV(:,i_lev,2)=1.29
262!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
263!      K_MASS(:,i_lev,2)=0.85
264!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
265!      END DO
266       
267!     Upper Cloud: mode 3
268!      DO i_lev=29,35
269!      R_MEDIAN(:,i_lev,3)=3.65e-6
270!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
271!      STDDEV(:,i_lev,3)=1.28
272!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
273!      K_MASS(:,i_lev,3)=0.0
274!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
275!      END DO
276
277!     Upper Haze: mode 1
278!      DO i_lev=36, cloudmax
279!      R_MEDIAN(:,i_lev,1)=0.3e-6
280!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
281!      STDDEV(:,i_lev,1)=1.56
282!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
283!      K_MASS(:,i_lev,1)=1.0
284!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
285!      END DO
286
287!     Upper Haze: mode 2
288!      DO i_lev=36, cloudmax
289!      R_MEDIAN(:,i_lev,2)=1.e-6
290!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
291!      STDDEV(:,i_lev,2)=1.29
292!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
293!      K_MASS(:,i_lev,2)=0.0
294!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
295!      END DO
296     
297!     Upper Haze: mode 3
298!      DO i_lev=36, cloudmax
299!      R_MEDIAN(:,i_lev,3)=3.65e-6
300!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
301!      STDDEV(:,i_lev,3)=2.16
302!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
303!      K_MASS(:,i_lev,3)=0.0
304!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
305!      END DO       
306!=============================================================
307
308!       ===============================================
309!       Initialisation TRIMODALE Knollenberg
310!       ===============================================
311
312!     Lower Haze: mode 1
313      DO i_lev=cloudmin,22
314      R_MEDIAN(:,i_lev,1)=0.1e-6
315      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
316      STDDEV(:,i_lev,1)=1.57
317      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
318      K_MASS(:,i_lev,1)=1.0
319      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
320      END DO
321                             
322!     Lower Haze: mode 2
323      DO i_lev=cloudmin,22
324      R_MEDIAN(:,i_lev,2)=1.4e-6
325      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
326      STDDEV(:,i_lev,2)=1.23
327      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
328      K_MASS(:,i_lev,2)=0.0
329      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
330      END DO
331
332!     Lower Haze: mode 3
333      DO i_lev=cloudmin,22
334      R_MEDIAN(:,i_lev,3)=3.65e-6
335      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
336      STDDEV(:,i_lev,3)=1.28
337      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
338      K_MASS(:,i_lev,3)=0.0
339      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
340      END DO 
341
342!     Pre Cloud: mode 1
343      DO i_lev=23,23
344      R_MEDIAN(:,i_lev,1)=0.15e-6
345      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
346      STDDEV(:,i_lev,1)=1.8
347      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
348      K_MASS(:,i_lev,1)=0.04
349      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
350      END DO
351                             
352!     Pre Cloud: mode 2
353      DO i_lev=23,23
354      R_MEDIAN(:,i_lev,2)=1.0e-6
355      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
356      STDDEV(:,i_lev,2)=1.29
357      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
358      K_MASS(:,i_lev,2)=0.96
359      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
360      END DO
361
362!     Pre Cloud: mode 3
363      DO i_lev=23,23
364      R_MEDIAN(:,i_lev,3)=3.65e-6
365      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
366      STDDEV(:,i_lev,3)=1.28
367      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
368      K_MASS(:,i_lev,3)=0.0
369      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
370      END DO
371                 
372!      Lower Cloud: mode 1
373      DO i_lev=24,24
374      R_MEDIAN(:,i_lev,1)=0.2e-6
375      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
376      STDDEV(:,i_lev,1)=1.8
377      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
378      K_MASS(:,i_lev,1)=0.014
379      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
380      END DO
381               
382!     Lower Cloud: mode 2
383      DO i_lev=24,24
384      R_MEDIAN(:,i_lev,2)=1.0e-6
385      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
386      STDDEV(:,i_lev,2)=1.29
387      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
388      K_MASS(:,i_lev,2)=0.02
389      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
390      END DO
391
392!     Lower Cloud: mode 3
393      DO i_lev=24,24
394      R_MEDIAN(:,i_lev,3)=3.65e-6
395      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
396      STDDEV(:,i_lev,3)=1.28
397      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
398      K_MASS(:,i_lev,3)=0.966
399      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
400      END DO
401
402!     Middle Cloud: mode 1
403      DO i_lev=25,28
404      R_MEDIAN(:,i_lev,1)=0.15e-6
405      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
406      STDDEV(:,i_lev,1)=1.9
407      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
408      K_MASS(:,i_lev,1)=0.0084
409      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
410      END DO
411         
412!     Middle Cloud: mode 2 prime
413      DO i_lev=25,28
414      R_MEDIAN(:,i_lev,2)=1.4e-6
415      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
416      STDDEV(:,i_lev,2)=1.23
417      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
418      K_MASS(:,i_lev,2)=0.21
419      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
420      END DO
421   
422!     Middle Cloud: mode 3
423      DO i_lev=25,28
424      R_MEDIAN(:,i_lev,3)=3.65e-6
425      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
426      STDDEV(:,i_lev,3)=1.28
427      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
428      K_MASS(:,i_lev,3)=0.7816
429      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
430      END DO
431
432!      option: upper haze remplacee par extension upper cloud
433!         => 35 remplace par cloudmax et upper haze commentee
434!       ===============================================
435
436!     Upper Cloud: mode 1
437      DO i_lev=29,35 !cloudmax
438      R_MEDIAN(:,i_lev,1)=0.2e-6
439      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
440      STDDEV(:,i_lev,1)=2.16
441      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
442      K_MASS(:,i_lev,1)=0.72
443      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
444      END DO
445
446!     Upper Cloud: mode 2
447      DO i_lev=29,35 !cloudmax
448      R_MEDIAN(:,i_lev,2)=1.0e-6
449      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
450      STDDEV(:,i_lev,2)=1.29
451      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
452      K_MASS(:,i_lev,2)=0.28
453      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
454      END DO
455       
456!     Upper Cloud: mode 3
457      DO i_lev=29,35 !cloudmax
458      R_MEDIAN(:,i_lev,3)=3.65e-6
459      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
460      STDDEV(:,i_lev,3)=1.28
461      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
462      K_MASS(:,i_lev,3)=0.0
463      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
464      END DO
465
466!     Upper Haze: mode 1
467      DO i_lev=36, cloudmax
468      R_MEDIAN(:,i_lev,1)=0.2e-6
469      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
470      STDDEV(:,i_lev,1)=2.16
471      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
472      K_MASS(:,i_lev,1)=1.0
473      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
474      END DO
475
476!     Upper Haze: mode 2
477      DO i_lev=36, cloudmax
478      R_MEDIAN(:,i_lev,2)=1.e-6
479      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
480      STDDEV(:,i_lev,2)=1.29
481      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
482      K_MASS(:,i_lev,2)=0.0
483      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
484      END DO
485     
486!     Upper Haze: mode 3
487      DO i_lev=36, cloudmax
488      R_MEDIAN(:,i_lev,3)=3.65e-6
489      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
490      STDDEV(:,i_lev,3)=2.16
491      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
492      K_MASS(:,i_lev,3)=0.0
493      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
494      END DO       
495
496!=============================================================
497
498!       ===============================================================
499!       Initialisation TRIMODALE "Knollenberg" sans Mode3, Mode2 etendu
500!       ===============================================================
501
502!     Lower Haze: mode 1
503!      DO i_lev=cloudmin,22
504!      R_MEDIAN(:,i_lev,1)=0.1e-6
505!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
506!      STDDEV(:,i_lev,1)=1.57
507!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
508!      K_MASS(:,i_lev,1)=1.0
509!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
510!      END DO
511                             
512!     Lower Haze: mode 2
513!      DO i_lev=cloudmin,22
514!      R_MEDIAN(:,i_lev,2)=1.4e-6
515!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
516!      STDDEV(:,i_lev,2)=1.23
517!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
518!      K_MASS(:,i_lev,2)=0.0
519!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
520!      END DO
521
522!     Lower Haze: mode 3
523!      DO i_lev=cloudmin,22
524!      R_MEDIAN(:,i_lev,3)=3.65e-6
525!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
526!      STDDEV(:,i_lev,3)=1.28
527!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
528!      K_MASS(:,i_lev,3)=0.0
529!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
530!      END DO 
531
532!     Pre Cloud: mode 1
533!      DO i_lev=23,23
534!      R_MEDIAN(:,i_lev,1)=0.15e-6
535!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
536!      STDDEV(:,i_lev,1)=1.8
537!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
538!      K_MASS(:,i_lev,1)=0.04
539!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
540!      END DO
541                             
542!     Pre Cloud: mode 2
543!      DO i_lev=23,23
544!      R_MEDIAN(:,i_lev,2)=1.0e-6
545!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
546!      STDDEV(:,i_lev,2)=1.29
547!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
548!      K_MASS(:,i_lev,2)=0.96
549!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
550!      END DO
551
552!     Pre Cloud: mode 3
553!      DO i_lev=23,23
554!      R_MEDIAN(:,i_lev,3)=3.65e-6
555!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
556!      STDDEV(:,i_lev,3)=1.28
557!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
558!      K_MASS(:,i_lev,3)=0.0
559!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
560!      END DO
561                 
562!      Lower Cloud: mode 1
563!      DO i_lev=24,24
564!      R_MEDIAN(:,i_lev,1)=0.2e-6
565!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
566!      STDDEV(:,i_lev,1)=1.8
567!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
568!      K_MASS(:,i_lev,1)=0.014
569!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
570!      END DO
571               
572!     Lower Cloud: mode 2
573!      DO i_lev=24,24
574!      R_MEDIAN(:,i_lev,2)=1.0e-6
575!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
576!      STDDEV(:,i_lev,2)=1.6
577!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
578!      K_MASS(:,i_lev,2)=0.986
579!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
580!      END DO
581
582!     Lower Cloud: mode 3
583!      DO i_lev=24,24
584!      R_MEDIAN(:,i_lev,3)=3.65e-6
585!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
586!      STDDEV(:,i_lev,3)=1.28
587!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
588!      K_MASS(:,i_lev,3)=0.
589!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
590!      END DO
591
592!     Middle Cloud: mode 1
593!      DO i_lev=25,28
594!      R_MEDIAN(:,i_lev,1)=0.15e-6
595!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
596!      STDDEV(:,i_lev,1)=1.9
597!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
598!      K_MASS(:,i_lev,1)=0.0084
599!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
600!      END DO
601         
602!     Middle Cloud: mode 2 prime
603!      DO i_lev=25,28
604!      R_MEDIAN(:,i_lev,2)=1.4e-6
605!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
606!      STDDEV(:,i_lev,2)=1.6
607!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
608!      K_MASS(:,i_lev,2)=0.9916
609!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
610!      END DO
611   
612!     Middle Cloud: mode 3
613!      DO i_lev=25,28
614!      R_MEDIAN(:,i_lev,3)=3.65e-6
615!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
616!      STDDEV(:,i_lev,3)=1.28
617!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
618!      K_MASS(:,i_lev,3)=0.0
619!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
620!      END DO
621
622
623!     Upper Cloud: mode 1
624!      DO i_lev=29,35
625!      R_MEDIAN(:,i_lev,1)=0.2e-6
626!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
627!      STDDEV(:,i_lev,1)=2.16
628!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
629!      K_MASS(:,i_lev,1)=0.72
630!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
631!      END DO
632
633!     Upper Cloud: mode 2
634!      DO i_lev=29,35
635!      R_MEDIAN(:,i_lev,2)=1.0e-6
636!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
637!      STDDEV(:,i_lev,2)=1.29
638!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
639!      K_MASS(:,i_lev,2)=0.28
640!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
641!      END DO
642       
643!     Upper Cloud: mode 3
644!      DO i_lev=29,35
645!      R_MEDIAN(:,i_lev,3)=3.65e-6
646!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
647!      STDDEV(:,i_lev,3)=1.28
648!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
649!      K_MASS(:,i_lev,3)=0.0
650!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
651!      END DO
652
653!     Upper Haze: mode 1
654!      DO i_lev=36, cloudmax
655!      R_MEDIAN(:,i_lev,1)=0.2e-6
656!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
657!      STDDEV(:,i_lev,1)=2.16
658!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
659!      K_MASS(:,i_lev,1)=1.0
660!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
661!      END DO
662
663!     Upper Haze: mode 2
664!      DO i_lev=36, cloudmax
665!      R_MEDIAN(:,i_lev,2)=1.e-6
666!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
667!      STDDEV(:,i_lev,2)=1.29
668!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
669!      K_MASS(:,i_lev,2)=0.0
670!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
671!      END DO
672     
673!     Upper Haze: mode 3
674!      DO i_lev=36, cloudmax
675!      R_MEDIAN(:,i_lev,3)=3.65e-6
676!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
677!      STDDEV(:,i_lev,3)=2.16
678!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
679!      K_MASS(:,i_lev,3)=0.0
680!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
681!      END DO       
682
683!=============================================================
684      PRINT*,'==============================='
685      PRINT*,'FIN Initialisation cloud layer'
686      PRINT*,'==============================='
687     
688  END SUBROUTINE cloud_ini
689 
690! ===========================================================
691
692  SUBROUTINE chemparam_ini
693  USE infotrac_phy, ONLY: nqtot, tname
694  IMPLICIT NONE
695  INTEGER :: i
696 
697  ALLOCATE(M_tr(nqtot))
698 
699  DO i=1, nqtot                                 
700       
701        PRINT*,'i',i
702        PRINT*,'tname(i)',tname(i)
703       
704        SELECT CASE(tname(i))
705                CASE('co2')
706                i_co2=i
707                PRINT*,'co2',i_co2
708                M_tr(i_co2) = 44.0095 
709                CASE('co')
710                i_co=i
711                PRINT*,'co',i_co
712                M_tr(i_co)=28.0101
713                CASE('h2')
714                i_h2=i
715                PRINT*,'h2',i_h2
716                M_tr(i_h2)= 2.01588
717                CASE('h2o')
718                i_h2o=i
719                PRINT*,'h2o',i_h2o
720                M_tr(i_h2o)=18.0153
721                CASE('o1d')
722                i_o1d=i
723                PRINT*,'o1d',i_o1d
724                M_tr(i_o1d)=15.994
725                CASE('o')
726                i_o=i
727                PRINT*,'o',i_o
728                M_tr(i_o)=15.994
729                CASE('o2')
730                i_o2=i
731                PRINT*,'o2',i_o2
732                M_tr(i_o2)=31.9988
733                CASE('o2dg')
734                i_o2dg=i
735                PRINT*,'o2dg',i_o2dg
736                M_tr(i_o2dg)=31.9988
737                CASE('o3')
738                i_o3=i
739                PRINT*,'o3',i_o3
740                M_tr(i_o3)= 47.9982
741                CASE('h')
742                i_h=i
743                PRINT*,'h',i_h
744                M_tr(i_h)= 1.00794
745                CASE('oh')
746                i_oh=i
747                PRINT*,'oh',i_oh
748                M_tr(i_oh)=17.0073
749                CASE('ho2')
750                i_ho2=i
751                PRINT*,'ho2',i_ho2
752                M_tr(i_ho2)=33.0067
753                CASE('h2o2')
754                i_h2o2=i
755                PRINT*,'h2o2',i_h2o2
756                M_tr(i_h2o2)=34.0147
757                CASE('cl')
758                i_cl=i
759                PRINT*,'cl',i_cl
760                M_tr(i_cl)=35.453
761                CASE('clo')
762                i_clo=i
763                PRINT*,'clo',i_clo
764                M_tr(i_clo)=51.452
765                CASE('cl2')
766                i_cl2=i
767                PRINT*,'cl2',i_cl2
768                M_tr(i_cl2)=70.906
769                CASE('hcl')
770                i_hcl=i
771                PRINT*,'hcl',i_hcl
772                M_tr(i_hcl)=36.461
773                CASE('hocl')
774                i_hocl=i
775                PRINT*,'hocl',i_hocl
776                M_tr(i_hocl)=52.46
777                CASE('clco')
778                i_clco=i
779                PRINT*,'clco',i_clco
780                M_tr(i_clco)=63.463
781                CASE('clco3')
782                i_clco3=i
783                PRINT*,'clco3',i_clco3
784                M_tr(i_clco3)=95.462
785                CASE('cocl2')
786                i_cocl2=i
787                PRINT*,'cocl2',i_cocl2
788                M_tr(i_cocl2)=98.916
789                CASE('s')
790                i_s=i
791                PRINT*,'s',i_s
792                M_tr(i_s)=32.065
793                CASE('so')
794                i_so=i
795                PRINT*,'so',i_so
796                M_tr(i_so)=48.0644
797                CASE('so2')
798                i_so2=i
799                PRINT*,'so2',i_so2
800                M_tr(i_so2)=64.064
801                CASE('so3')
802                i_so3=i
803                PRINT*,'so3',i_so3
804                M_tr(i_so3)=80.063
805                CASE('s2o2')
806                i_s2o2=i
807                PRINT*,'s2o2',i_s2o2
808                M_tr(i_s2o2)= 96.1288
809                CASE('ocs')
810                i_ocs=i
811                PRINT*,'ocs',i_ocs
812                M_tr(i_ocs)=60.0751
813                CASE('hso3')
814                i_hso3=i
815                PRINT*,'hso3',i_hso3
816                M_tr(i_hso3)=81.071
817                CASE('h2so4')
818                i_h2so4=i
819                PRINT*,'h2so4',i_h2so4
820                M_tr(i_h2so4)=98.078
821                CASE('s2')
822                i_s2=i
823                PRINT*,'s2',i_s2
824                M_tr(i_s2)=64.13
825                CASE('clso2')
826                i_clso2=i
827                PRINT*,'clso2',i_clso2
828                M_tr(i_clso2)=99.517
829                CASE('oscl')
830                i_oscl=i
831                PRINT*,'oscl',i_oscl
832                M_tr(i_oscl)=83.517
833                CASE('n2')
834                i_n2=i
835                M_tr(i_n2)=28.013
836! MICROPHYSICAL TRACERS FOR CL_SCHEME=1
837                CASE('h2oliq')
838                i_h2oliq=i
839                PRINT*,'h2oliq',i_h2oliq
840                M_tr(i_h2oliq)=18.0153
841                CASE('h2so4liq')
842                i_h2so4liq=i
843                PRINT*,'h2so4liq',i_h2so4liq
844                M_tr(i_h2so4liq)=98.078
845! MICROPHYSICAL TRACERS FOR CL_SCHEME=2
846                CASE('M0_aer')
847                i_m0_aer=i
848                PRINT*,'M0_aer',i_m0_aer
849                CASE('M3_aer')
850                i_m3_aer=i
851                PRINT*,'M3_aer',i_m3_aer
852                CASE('M0_m1drop')
853                i_m0_mode1drop=i
854                PRINT*,'M0_m1drop',i_m0_mode1drop
855                CASE('M0_m1ccn')
856                i_m0_mode1ccn=i
857                PRINT*,'M0_m1ccn',i_m0_mode1ccn
858                CASE('M3_m1sa')
859                i_m3_mode1sa=i
860                PRINT*,'M3_m1sa',i_m3_mode1sa
861                CASE('M3_m1w')
862                i_m3_mode1w=i
863                PRINT*,'M3_m1w',i_m3_mode1w
864                CASE('M3_m1ccn')
865                i_m3_mode1ccn=i
866                PRINT*,'M3_m1ccn',i_m3_mode1ccn
867                CASE('M0_m2drop')
868                i_m0_mode2drop=i
869                PRINT*,'M0_m2drop',i_m0_mode2drop
870                CASE('M0_m2ccn')
871                i_m0_mode2ccn=i
872                PRINT*,'M0_m2ccn',i_m0_mode2ccn
873                CASE('M3_m2sa')
874                i_m3_mode2sa=i
875                PRINT*,'M3_m2sa',i_m3_mode2sa
876                CASE('M3_m2w')
877                i_m3_mode2w=i
878                PRINT*,'M3_m2w',i_m3_mode2w
879                CASE('M3_m2ccn')
880                i_m3_mode2ccn=i
881                PRINT*,'M3_m2ccn',i_m3_mode2ccn
882        END SELECT
883       
884!       PRINT*,'M_tr(i)',M_tr(i)
885  END DO
886 
887  END SUBROUTINE chemparam_ini
888
889! ===========================================================
890
891  SUBROUTINE vapors4muphy_ini(nlon,nlev,trac)
892  USE infotrac_phy, ONLY: nqtot, tname
893  IMPLICIT NONE
894
895  integer :: nlon, nlev
896  real    :: trac(nlon,nlev,nqtot) ! traceur ( en vmr)
897
898!  integer :: i
899!  real    :: trac1d(nlev,2) ! traceur lu ( en vmr)
900 
901! lecture d'un fichier texte contenant les profils de trac1d(:1) = H2O et trac1d(:,2) = H2SO4
902!  DO i=1,nlon
903!     trac(i,:,i_h2o) = trac1d(:,1)
904!     trac(i,:,i_h2so4) = trac1d(:,2)
905!  ENDDO
906
907!  intitialisation profils altitude H2O et H2SO4
908!  profil H2O initial vap+liq == que vap
909   trac(:,1:24,i_h2o) = 30.E-6 !
910   trac(:,25:50,i_h2o) = 1.E-6 !
911
912   trac(:,:,i_h2so4) = 3.E-9 ! Limite sup Sandor 2012
913   trac(:,23:50,i_h2so4) = 2.E-6 ! Profil H2SO4 initial => vap+liq
914
915  END SUBROUTINE vapors4muphy_ini
916
917END MODULE chemparam_mod
918
Note: See TracBrowser for help on using the repository browser.