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

Last change on this file since 2047 was 1691, checked in by slebonnois, 8 years ago

SL: corrections after testing of cloud microphysics in 1D

  • Property svn:executable set to *
File size: 28.2 KB
RevLine 
[1305]1MODULE chemparam_mod
2
[1661]3!MODULE qui definit les indices des traceurs et leurs masses molaires.
[1305]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,   &
[1661]15                 i_clso2, i_oscl, i_n2
[1305]16                 
[1661]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
[1305]27REAL, DIMENSION(:), SAVE, ALLOCATABLE :: M_tr
28 
29
30!----------------------------------------------------------------------------
[1661]31! DEF FOR CL_SCHEME = 1 (AURELIEN)
32
[1442]33!     number of clouds mode modelized
34      INTEGER, PARAMETER :: nbr_mode = 3
[1305]35      INTEGER :: i_cloud
36      INTEGER, SAVE :: cloudmax
37      INTEGER, SAVE :: cloudmin
[1442]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
[1305]45      REAL, SAVE, DIMENSION(:,:), ALLOCATABLE :: WH2SO4
46      REAL, SAVE, DIMENSION(:,:), ALLOCATABLE :: rho_droplet
47!----------------------------------------------------------------------------
[1661]48! DEF FOR CL_SCHEME = 2 (FULL MICROPHYS)
[1305]49
[1661]50!----------------------------------------------------------------------------
51
[1305]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   
[1442]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))
[1305]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
[1442]75      PRINT*,'nbr_mode',nbr_mode
76       
77      NBRTOT(:,:,:)    = 0.0E+0
78      WH2SO4(:,:)      = 0.0E+0
79      rho_droplet(:,:) = 0.0E+0
80           
[1305]81!=============================================================
82!                     Initialisation cloud layer 1
83!=============================================================
84!     cloudmin et cloudmax niveaux du GCM
[1442]85      cloudmin= 18
[1305]86      cloudmax= 50
87
88!     radius R_MEDIAN en m (donc *e-6 pour microns)
89       
[1691]90        R_MEDIAN(:,:,:)=0.0E+0           ! Geometric Average Radius
[1442]91        STDDEV(:,:,:)=0.0E+0             ! Geometric Std Deviation
92        K_MASS(:,:,:)=0.0E+0             ! Coeff multimodal
[1305]93
94!       ===============================================
95!       Knollenberg & Hunten, 1980 and James et al 1997
96!       ===============================================
97
[1442]98!       ===============================================
99!       Initialisation UNIMODALE
100!       ===============================================
101
[1305]102!     Lower Haze: mode 1
[1442]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
[1305]113!      DO i_lev=21,23
[1442]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)
[1305]120!      END DO
121
[1442]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
[1305]206!     Lower Cloud: mode 3
[1442]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
[1305]225         
226!     Middle Cloud: mode 2 prime
227!      DO i_lev=24,28
[1442]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)
[1305]234!      END DO
235   
[1442]236!     Middle Cloud: mode 3
[1305]237!      DO i_lev=24,28
[1442]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)
[1305]244!      END DO
245
[1442]246
247!     Upper Cloud: mode 1
[1305]248!      DO i_lev=29,35
[1442]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)
[1305]255!      END DO
[1442]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
[1305]266       
267!     Upper Cloud: mode 3
268!      DO i_lev=29,35
[1442]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)
[1305]275!      END DO
[1442]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
433!     Upper Cloud: mode 1
434      DO i_lev=29,35
435      R_MEDIAN(:,i_lev,1)=0.2e-6
436      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
437      STDDEV(:,i_lev,1)=2.16
438      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
439      K_MASS(:,i_lev,1)=0.72
440      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
441      END DO
442
[1305]443!     Upper Cloud: mode 2
444      DO i_lev=29,35
[1442]445      R_MEDIAN(:,i_lev,2)=1.0e-6
446      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
447      STDDEV(:,i_lev,2)=1.29
448      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
449      K_MASS(:,i_lev,2)=0.28
450      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
[1305]451      END DO
[1442]452       
453!     Upper Cloud: mode 3
454      DO i_lev=29,35
455      R_MEDIAN(:,i_lev,3)=3.65e-6
456      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
457      STDDEV(:,i_lev,3)=1.28
458      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
459      K_MASS(:,i_lev,3)=0.0
460      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
461      END DO
[1305]462
463!     Upper Haze: mode 1
464      DO i_lev=36, cloudmax
[1442]465      R_MEDIAN(:,i_lev,1)=0.2e-6
466      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
467      STDDEV(:,i_lev,1)=2.16
468      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
469      K_MASS(:,i_lev,1)=1.0
470      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
[1305]471      END DO
[1442]472
473!     Upper Haze: mode 2
474      DO i_lev=36, cloudmax
475      R_MEDIAN(:,i_lev,2)=1.e-6
476      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
477      STDDEV(:,i_lev,2)=1.29
478      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
479      K_MASS(:,i_lev,2)=0.0
480      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
481      END DO
482     
483!     Upper Haze: mode 3
484      DO i_lev=36, cloudmax
485      R_MEDIAN(:,i_lev,3)=3.65e-6
486      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
487      STDDEV(:,i_lev,3)=2.16
488      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
489      K_MASS(:,i_lev,3)=0.0
490      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
491      END DO       
492
[1305]493!=============================================================
494
[1442]495!       ===============================================================
496!       Initialisation TRIMODALE "Knollenberg" sans Mode3, Mode2 etendu
497!       ===============================================================
498
499!     Lower Haze: mode 1
500!      DO i_lev=cloudmin,22
501!      R_MEDIAN(:,i_lev,1)=0.1e-6
502!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
503!      STDDEV(:,i_lev,1)=1.57
504!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
505!      K_MASS(:,i_lev,1)=1.0
506!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
507!      END DO
508                             
509!     Lower Haze: mode 2
510!      DO i_lev=cloudmin,22
511!      R_MEDIAN(:,i_lev,2)=1.4e-6
512!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
513!      STDDEV(:,i_lev,2)=1.23
514!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
515!      K_MASS(:,i_lev,2)=0.0
516!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
517!      END DO
518
519!     Lower Haze: mode 3
520!      DO i_lev=cloudmin,22
521!      R_MEDIAN(:,i_lev,3)=3.65e-6
522!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
523!      STDDEV(:,i_lev,3)=1.28
524!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
525!      K_MASS(:,i_lev,3)=0.0
526!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
527!      END DO 
528
529!     Pre Cloud: mode 1
530!      DO i_lev=23,23
531!      R_MEDIAN(:,i_lev,1)=0.15e-6
532!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
533!      STDDEV(:,i_lev,1)=1.8
534!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
535!      K_MASS(:,i_lev,1)=0.04
536!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
537!      END DO
538                             
539!     Pre Cloud: mode 2
540!      DO i_lev=23,23
541!      R_MEDIAN(:,i_lev,2)=1.0e-6
542!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
543!      STDDEV(:,i_lev,2)=1.29
544!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
545!      K_MASS(:,i_lev,2)=0.96
546!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
547!      END DO
548
549!     Pre Cloud: mode 3
550!      DO i_lev=23,23
551!      R_MEDIAN(:,i_lev,3)=3.65e-6
552!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
553!      STDDEV(:,i_lev,3)=1.28
554!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
555!      K_MASS(:,i_lev,3)=0.0
556!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
557!      END DO
558                 
559!      Lower Cloud: mode 1
560!      DO i_lev=24,24
561!      R_MEDIAN(:,i_lev,1)=0.2e-6
562!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
563!      STDDEV(:,i_lev,1)=1.8
564!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
565!      K_MASS(:,i_lev,1)=0.014
566!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
567!      END DO
568               
569!     Lower Cloud: mode 2
570!      DO i_lev=24,24
571!      R_MEDIAN(:,i_lev,2)=1.0e-6
572!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
573!      STDDEV(:,i_lev,2)=1.6
574!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
575!      K_MASS(:,i_lev,2)=0.986
576!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
577!      END DO
578
579!     Lower Cloud: mode 3
580!      DO i_lev=24,24
581!      R_MEDIAN(:,i_lev,3)=3.65e-6
582!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
583!      STDDEV(:,i_lev,3)=1.28
584!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
585!      K_MASS(:,i_lev,3)=0.
586!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
587!      END DO
588
589!     Middle Cloud: mode 1
590!      DO i_lev=25,28
591!      R_MEDIAN(:,i_lev,1)=0.15e-6
592!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
593!      STDDEV(:,i_lev,1)=1.9
594!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
595!      K_MASS(:,i_lev,1)=0.0084
596!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
597!      END DO
598         
599!     Middle Cloud: mode 2 prime
600!      DO i_lev=25,28
601!      R_MEDIAN(:,i_lev,2)=1.4e-6
602!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
603!      STDDEV(:,i_lev,2)=1.6
604!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
605!      K_MASS(:,i_lev,2)=0.9916
606!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
607!      END DO
608   
609!     Middle Cloud: mode 3
610!      DO i_lev=25,28
611!      R_MEDIAN(:,i_lev,3)=3.65e-6
612!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
613!      STDDEV(:,i_lev,3)=1.28
614!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
615!      K_MASS(:,i_lev,3)=0.0
616!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
617!      END DO
618
619
620!     Upper Cloud: mode 1
621!      DO i_lev=29,35
622!      R_MEDIAN(:,i_lev,1)=0.2e-6
623!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
624!      STDDEV(:,i_lev,1)=2.16
625!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
626!      K_MASS(:,i_lev,1)=0.72
627!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
628!      END DO
629
630!     Upper Cloud: mode 2
631!      DO i_lev=29,35
632!      R_MEDIAN(:,i_lev,2)=1.0e-6
633!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
634!      STDDEV(:,i_lev,2)=1.29
635!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
636!      K_MASS(:,i_lev,2)=0.28
637!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
638!      END DO
639       
640!     Upper Cloud: mode 3
641!      DO i_lev=29,35
642!      R_MEDIAN(:,i_lev,3)=3.65e-6
643!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
644!      STDDEV(:,i_lev,3)=1.28
645!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
646!      K_MASS(:,i_lev,3)=0.0
647!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
648!      END DO
649
650!     Upper Haze: mode 1
651!      DO i_lev=36, cloudmax
652!      R_MEDIAN(:,i_lev,1)=0.2e-6
653!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,1)
654!      STDDEV(:,i_lev,1)=2.16
655!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,1)
656!      K_MASS(:,i_lev,1)=1.0
657!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,1)
658!      END DO
659
660!     Upper Haze: mode 2
661!      DO i_lev=36, cloudmax
662!      R_MEDIAN(:,i_lev,2)=1.e-6
663!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,2)
664!      STDDEV(:,i_lev,2)=1.29
665!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,2)
666!      K_MASS(:,i_lev,2)=0.0
667!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,2)
668!      END DO
669     
670!     Upper Haze: mode 3
671!      DO i_lev=36, cloudmax
672!      R_MEDIAN(:,i_lev,3)=3.65e-6
673!      PRINT*,'level',i_lev,'R R_MEDIAN',R_MEDIAN(1,i_lev,3)
674!      STDDEV(:,i_lev,3)=2.16
675!      PRINT*,'level',i_lev,'Dev Std',STDDEV(1,i_lev,3)
676!      K_MASS(:,i_lev,3)=0.0
677!      PRINT*,'level',i_lev,'Coeff Mass: k_mass',K_MASS(1,i_lev,3)
678!      END DO       
679!=============================================================
[1305]680      PRINT*,'==============================='
681      PRINT*,'FIN Initialisation cloud layer'
682      PRINT*,'==============================='
683     
[1442]684  END SUBROUTINE cloud_ini
[1305]685 
[1661]686! ===========================================================
687
[1305]688  SUBROUTINE chemparam_ini
[1621]689  USE infotrac_phy, ONLY: nqtot, tname
[1305]690  IMPLICIT NONE
691  INTEGER :: i
692 
693  ALLOCATE(M_tr(nqtot))
694 
695  DO i=1, nqtot                                 
696       
697        PRINT*,'i',i
698        PRINT*,'tname(i)',tname(i)
699       
700        SELECT CASE(tname(i))
701                CASE('co2')
702                i_co2=i
703                PRINT*,'co2',i_co2
704                M_tr(i_co2) = 44.0095 
705                CASE('co')
706                i_co=i
707                PRINT*,'co',i_co
708                M_tr(i_co)=28.0101
709                CASE('h2')
710                i_h2=i
711                PRINT*,'h2',i_h2
[1468]712                M_tr(i_h2)= 2.01588
[1305]713                CASE('h2o')
714                i_h2o=i
715                PRINT*,'h2o',i_h2o
716                M_tr(i_h2o)=18.0153
717                CASE('o1d')
718                i_o1d=i
719                PRINT*,'o1d',i_o1d
720                M_tr(i_o1d)=15.994
721                CASE('o')
722                i_o=i
723                PRINT*,'o',i_o
724                M_tr(i_o)=15.994
725                CASE('o2')
726                i_o2=i
727                PRINT*,'o2',i_o2
728                M_tr(i_o2)=31.9988
729                CASE('o2dg')
730                i_o2dg=i
731                PRINT*,'o2dg',i_o2dg
732                M_tr(i_o2dg)=31.9988
733                CASE('o3')
734                i_o3=i
735                PRINT*,'o3',i_o3
736                M_tr(i_o3)= 47.9982
737                CASE('h')
738                i_h=i
739                PRINT*,'h',i_h
740                M_tr(i_h)= 1.00794
741                CASE('oh')
742                i_oh=i
743                PRINT*,'oh',i_oh
744                M_tr(i_oh)=17.0073
745                CASE('ho2')
746                i_ho2=i
747                PRINT*,'ho2',i_ho2
748                M_tr(i_ho2)=33.0067
749                CASE('h2o2')
750                i_h2o2=i
751                PRINT*,'h2o2',i_h2o2
752                M_tr(i_h2o2)=34.0147
753                CASE('cl')
754                i_cl=i
755                PRINT*,'cl',i_cl
756                M_tr(i_cl)=35.453
757                CASE('clo')
758                i_clo=i
759                PRINT*,'clo',i_clo
760                M_tr(i_clo)=51.452
761                CASE('cl2')
762                i_cl2=i
763                PRINT*,'cl2',i_cl2
764                M_tr(i_cl2)=70.906
765                CASE('hcl')
766                i_hcl=i
767                PRINT*,'hcl',i_hcl
768                M_tr(i_hcl)=36.461
769                CASE('hocl')
770                i_hocl=i
771                PRINT*,'hocl',i_hocl
772                M_tr(i_hocl)=52.46
773                CASE('clco')
774                i_clco=i
775                PRINT*,'clco',i_clco
776                M_tr(i_clco)=63.463
777                CASE('clco3')
778                i_clco3=i
779                PRINT*,'clco3',i_clco3
780                M_tr(i_clco3)=95.462
781                CASE('cocl2')
782                i_cocl2=i
783                PRINT*,'cocl2',i_cocl2
784                M_tr(i_cocl2)=98.916
785                CASE('s')
786                i_s=i
787                PRINT*,'s',i_s
788                M_tr(i_s)=32.065
789                CASE('so')
790                i_so=i
791                PRINT*,'so',i_so
792                M_tr(i_so)=48.0644
793                CASE('so2')
794                i_so2=i
795                PRINT*,'so2',i_so2
796                M_tr(i_so2)=64.064
797                CASE('so3')
798                i_so3=i
799                PRINT*,'so3',i_so3
800                M_tr(i_so3)=80.063
801                CASE('s2o2')
802                i_s2o2=i
803                PRINT*,'s2o2',i_s2o2
804                M_tr(i_s2o2)= 96.1288
805                CASE('ocs')
806                i_ocs=i
807                PRINT*,'ocs',i_ocs
808                M_tr(i_ocs)=60.0751
809                CASE('hso3')
810                i_hso3=i
811                PRINT*,'hso3',i_hso3
812                M_tr(i_hso3)=81.071
813                CASE('h2so4')
814                i_h2so4=i
815                PRINT*,'h2so4',i_h2so4
816                M_tr(i_h2so4)=98.078
817                CASE('s2')
818                i_s2=i
819                PRINT*,'s2',i_s2
820                M_tr(i_s2)=64.13
821                CASE('clso2')
822                i_clso2=i
823                PRINT*,'clso2',i_clso2
824                M_tr(i_clso2)=99.517
825                CASE('oscl')
826                i_oscl=i
827                PRINT*,'oscl',i_oscl
828                M_tr(i_oscl)=83.517
[1661]829                CASE('n2')
830                i_n2=i
831                M_tr(i_n2)=28.013
832! MICROPHYSICAL TRACERS FOR CL_SCHEME=1
[1305]833                CASE('h2oliq')
834                i_h2oliq=i
835                PRINT*,'h2oliq',i_h2oliq
836                M_tr(i_h2oliq)=18.0153
837                CASE('h2so4liq')
838                i_h2so4liq=i
839                PRINT*,'h2so4liq',i_h2so4liq
840                M_tr(i_h2so4liq)=98.078
[1661]841! MICROPHYSICAL TRACERS FOR CL_SCHEME=2
842                CASE('M0_aer')
843                i_m0_aer=i
844                PRINT*,'M0_aer',i_m0_aer
845                CASE('M3_aer')
846                i_m3_aer=i
847                PRINT*,'M3_aer',i_m3_aer
848                CASE('M0_m1drop')
849                i_m0_mode1drop=i
850                PRINT*,'M0_m1drop',i_m0_mode1drop
851                CASE('M0_m1ccn')
852                i_m0_mode1ccn=i
853                PRINT*,'M0_m1ccn',i_m0_mode1ccn
854                CASE('M3_m1sa')
855                i_m3_mode1sa=i
856                PRINT*,'M3_m1sa',i_m3_mode1sa
857                CASE('M3_m1w')
858                i_m3_mode1w=i
859                PRINT*,'M3_m1w',i_m3_mode1w
860                CASE('M3_m1ccn')
861                i_m3_mode1ccn=i
862                PRINT*,'M3_m1ccn',i_m3_mode1ccn
863                CASE('M0_m2drop')
864                i_m0_mode2drop=i
865                PRINT*,'M0_m2drop',i_m0_mode2drop
866                CASE('M0_m2ccn')
867                i_m0_mode2ccn=i
868                PRINT*,'M0_m2ccn',i_m0_mode2ccn
869                CASE('M3_m2sa')
870                i_m3_mode2sa=i
871                PRINT*,'M3_m2sa',i_m3_mode2sa
872                CASE('M3_m2w')
873                i_m3_mode2w=i
874                PRINT*,'M3_m2w',i_m3_mode2w
875                CASE('M3_m2ccn')
876                i_m3_mode2ccn=i
877                PRINT*,'M3_m2ccn',i_m3_mode2ccn
[1305]878        END SELECT
879       
880!       PRINT*,'M_tr(i)',M_tr(i)
881  END DO
882 
883  END SUBROUTINE chemparam_ini
[1661]884
885! ===========================================================
886
887  SUBROUTINE vapors4muphy_ini(nlon,nlev,trac)
888  USE infotrac_phy, ONLY: nqtot, tname
889  IMPLICIT NONE
890
891  integer :: nlon, nlev
892  real    :: trac(nlon,nlev,nqtot) ! traceur ( en vmr)
893
[1691]894!  integer :: i
895!  real    :: trac1d(nlev,2) ! traceur lu ( en vmr)
[1661]896 
897! lecture d'un fichier texte contenant les profils de trac1d(:1) = H2O et trac1d(:,2) = H2SO4
[1691]898!  DO i=1,nlon
899!     trac(i,:,i_h2o) = trac1d(:,1)
900!     trac(i,:,i_h2so4) = trac1d(:,2)
901!  ENDDO
[1661]902
[1691]903!  intitialisation profils altitude H2O et H2SO4
904!  profil H2O initial vap+liq == que vap
905   trac(:,1:24,i_h2o) = 30.E-6 !
906   trac(:,25:50,i_h2o) = 1.E-6 !
[1661]907
[1691]908   trac(:,:,i_h2so4) = 3.E-9 ! Limite sup Sandor 2012
909   trac(:,23:50,i_h2so4) = 2.E-6 ! Profil H2SO4 initial => vap+liq
[1661]910
911  END SUBROUTINE vapors4muphy_ini
912
[1305]913END MODULE chemparam_mod
914
Note: See TracBrowser for help on using the repository browser.