source: LMDZ.3.3/branches/rel-LF/libf/phylmd/conf_phys.F90 @ 517

Last change on this file since 517 was 517, checked in by lmdzadmin, 20 years ago

Inclusion des modifications de O. Boucher et de J. Quaas pour le calcul des
premiers effets directs et indirects dus aux aerosols
LF

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 12.7 KB
Line 
1!
2! $Header$
3!
4
5  subroutine conf_phys(ocean, ok_veget, ok_journe, ok_mensuel, ok_instan, &
6 &                     fact_cldcon, facttemps,ok_newmicro,iflag_cldcon, &
7 &                     ratqsbas,ratqshaut,if_ebil, &
8 &                     ok_ade, ok_aie, &
9 &                     bl95_b0, bl95_b1)
10
11   use IOIPSL
12   implicit none
13
14#include "conema3.h"
15#include "fisrtilp.inc"
16#include "nuage.h"
17#include "YOMCST.inc"
18!IM : on inclut/initialise les taux de CH4, N2O, CFC11 et CFC12
19include "clesphys.inc"
20!
21! Configuration de la "physique" de LMDZ a l'aide de la fonction
22! GETIN de IOIPSL
23!
24! LF 05/2001
25!
26
27!
28! ocean:      type d'ocean (force, slab, couple)
29! ok_veget:   type de modele de vegetation
30! ok_journe:  sorties journalieres
31! ok_mensuel: sorties mensuelles
32! ok_instan:  sorties instantanees
33! ok_ade, ok_aie: apply or not aerosol direct and indirect effects
34! bl95_b*: parameters in the formula to link CDNC to aerosol mass conc
35!
36
37
38! Sortie:
39  character (len = 6)  :: ocean
40  logical              :: ok_veget, ok_newmicro
41  logical              :: ok_journe, ok_mensuel, ok_instan       
42  LOGICAL              :: ok_ade, ok_aie
43  REAL                 :: bl95_b0, bl95_b1
44  real                 :: fact_cldcon, facttemps,ratqsbas,ratqshaut
45  integer              :: iflag_cldcon, if_ebil
46! Local
47  integer              :: numout = 6
48  real                 :: zzz
49
50!
51!
52!
53
54
55!Config Key  = OCEAN
56!Config Desc = Type d'ocean
57!Config Def  = force
58!Config Help = Type d'ocean utilise: force, slab,couple
59!
60  ocean = 'force '
61  call getin('OCEAN', ocean)
62!
63!Config Key  = VEGET
64!Config Desc = Type de modele de vegetation
65!Config Def  = .false.
66!Config Help = Type de modele de vegetation utilise
67!
68  ok_veget = .false.
69  call getin('VEGET', ok_veget)
70!
71!Config Key  = OK_journe
72!Config Desc = Pour des sorties journalieres
73!Config Def  = .false.
74!Config Help = Pour creer le fichier histday contenant les sorties
75!              journalieres
76!
77  ok_journe = .false.
78  call getin('OK_journe', ok_journe)
79!
80!Config Key  = OK_mensuel
81!Config Desc = Pour des sorties mensuelles
82!Config Def  = .true.
83!Config Help = Pour creer le fichier histmth contenant les sorties
84!              mensuelles
85!
86  ok_mensuel = .true.
87  call getin('OK_mensuel', ok_mensuel)
88!
89!Config Key  = OK_instan
90!Config Desc = Pour des sorties instantanees
91!Config Def  = .false.
92!Config Help = Pour creer le fichier histins contenant les sorties
93!              instantanees
94!
95  ok_instan = .false.
96  call getin('OK_instan', ok_instan)
97!
98!Config Key  = ok_ade
99!Config Desc = Aerosol direct effect or not?
100!Config Def  = .false.
101!Config Help = Used in radlwsw.F
102!
103  ok_ade = .false.
104  call getin('ok_ade', ok_ade)
105
106!
107!Config Key  = ok_aie
108!Config Desc = Aerosol indirect effect or not?
109!Config Def  = .false.
110!Config Help = Used in nuage.F and radlwsw.F
111!
112  ok_aie = .false.
113  call getin('ok_aie', ok_aie)
114
115!
116!Config Key  = bl95_b0
117!Config Desc = Parameter in CDNC-maer link (Boucher&Lohmann 1995)
118!Config Def  = .false.
119!Config Help = Used in nuage.F
120!
121  bl95_b0 = 2.
122  call getin('bl95_b0', bl95_b0)
123
124!Config Key  = bl95_b1
125!Config Desc = Parameter in CDNC-maer link (Boucher&Lohmann 1995)
126!Config Def  = .false.
127!Config Help = Used in nuage.F
128!
129  bl95_b1 = 0.2
130  call getin('bl95_b1', bl95_b1)
131
132!
133!
134!Config Key  = if_ebil
135!Config Desc = Niveau de sortie pour les diags bilan d'energie
136!Config Def  = 0
137!Config Help =
138!               
139!
140  if_ebil = 0
141  call getin('if_ebil', if_ebil)
142!!
143!! Constante solaire & Parametres orbitaux & taux gaz effet de serre BEG
144!!
145!Config Key  = R_ecc
146!Config Desc = Excentricite
147!Config Def  = 0.016715
148!Config Help =
149!               
150!valeur AMIP II
151  R_ecc = 0.016715
152  call getin('R_ecc', R_ecc)
153!!
154!Config Key  = R_peri
155!Config Desc = Equinoxe
156!Config Def  =
157!Config Help =
158!               
159!
160!valeur AMIP II
161  R_peri = 102.7
162  call getin('R_peri', R_peri)
163!!
164!Config Key  = R_incl
165!Config Desc = Inclinaison
166!Config Def  =
167!Config Help =
168!               
169!
170!valeur AMIP II
171  R_incl = 23.441
172  call getin('R_incl', R_incl)
173!!
174!Config Key  = solaire
175!Config Desc = Constante solaire en W/m2
176!Config Def  = 1365.
177!Config Help =
178!               
179!
180!valeur AMIP II
181  solaire = 1365.
182  call getin('solaire', solaire)
183!!
184!Config Key  = co2_ppm
185!Config Desc = concentration du gaz carbonique en ppmv
186!Config Def  = 348.
187!Config Help =
188!               
189!
190!valeur AMIP II
191  co2_ppm = 348.
192  call getin('co2_ppm', co2_ppm)
193!!
194!Config Key  = RCO2
195!Config Desc = Concentration du CO2
196!Config Def  = co2_ppm * 1.0e-06  * 44.011/28.97
197!Config Def  = 348. * 1.0e-06  * 44.011/28.97
198!Config Help =
199!               
200! RCO2 = 5.286789092164308E-04
201!ancienne valeur
202  RCO2 = co2_ppm * 1.0e-06  * 44.011/28.97 ! pour co2_ppm=348.
203
204!!  call getin('RCO2', RCO2)
205!!
206!Config Key  = RCH4
207!Config Desc = Concentration du CH4
208!Config Def  = 1.65E-06* 16.043/28.97
209!Config Help =
210!               
211!
212!valeur AMIP II
213!OK  RCH4 = 1.65E-06* 16.043/28.97
214! RCH4 = 9.137366240938903E-07
215!
216!ancienne valeur
217! RCH4 = 1.72E-06* 16.043/28.97
218!OK call getin('RCH4', RCH4)
219  zzz = 1650.
220  call getin('CH4_ppb', zzz)
221  CH4_ppb = zzz
222  RCH4 = CH4_ppb * 1.0E-09 * 16.043/28.97
223!!
224!Config Key  = RN2O
225!Config Desc = Concentration du N2O
226!Config Def  = 306.E-09* 44.013/28.97
227!Config Help =
228!               
229!
230!valeur AMIP II
231!OK  RN2O = 306.E-09* 44.013/28.97
232! RN2O = 4.648939592682085E-07
233!
234!ancienne valeur
235! RN2O = 310.E-09* 44.013/28.97
236!OK  call getin('RN2O', RN2O)
237  zzz=306.
238  call getin('N2O_ppb', zzz)
239  N2O_ppb = zzz
240  RN2O = N2O_ppb * 1.0E-09 * 44.013/28.97
241!!
242!Config Key  = RCFC11
243!Config Desc = Concentration du CFC11
244!Config Def  = 280.E-12* 137.3686/28.97
245!Config Help =
246!               
247!
248!OK RCFC11 = 280.E-12* 137.3686/28.97
249  zzz = 280.
250  call getin('CFC11_ppt',zzz)
251  CFC11_ppt = zzz
252  RCFC11=CFC11_ppt* 1.0E-12 * 137.3686/28.97
253! RCFC11 = 1.327690990680013E-09
254!OK call getin('RCFC11', RCFC11)
255!!
256!Config Key  = RCFC12
257!Config Desc = Concentration du CFC12
258!Config Def  = 484.E-12* 120.9140/28.97
259!Config Help =
260!               
261!
262!OK RCFC12 = 484.E-12* 120.9140/28.97
263  zzz = 484.
264  call getin('CFC12_ppt',zzz)
265  CFC12_ppt = zzz
266  RCFC12 = CFC12_ppt * 1.0E-12 * 120.9140/28.97
267! RCFC12 = 2.020102726958923E-09
268!OK call getin('RCFC12', RCFC12)
269!!
270!! Constante solaire & Parametres orbitaux & taux gaz effet de serre END
271!!
272!! KE
273!
274!Config Key  = epmax
275!Config Desc = Efficacite precip
276!Config Def  = 0.993
277!Config Help =
278!
279  epmax = .993
280  call getin('epmax', epmax)
281!
282!Config Key  = ok_adj_ema
283!Config Desc = 
284!Config Def  = false
285!Config Help =
286!
287  ok_adj_ema = .false.
288  call getin('ok_adj_ema',ok_adj_ema)
289!
290!Config Key  = iflag_clw
291!Config Desc = 
292!Config Def  = 0
293!Config Help =
294!
295  iflag_clw = 0
296  call getin('iflag_clw',iflag_clw)
297!
298!Config Key  = cld_lc_lsc
299!Config Desc = 
300!Config Def  = 2.6e-4
301!Config Help =
302!
303  cld_lc_lsc = 2.6e-4
304  call getin('cld_lc_lsc',cld_lc_lsc)
305!
306!Config Key  = cld_lc_con
307!Config Desc = 
308!Config Def  = 2.6e-4
309!Config Help =
310!
311  cld_lc_con = 2.6e-4
312  call getin('cld_lc_con',cld_lc_con)
313!
314!Config Key  = cld_tau_lsc
315!Config Desc = 
316!Config Def  = 3600.
317!Config Help =
318!
319  cld_tau_lsc = 3600.
320  call getin('cld_tau_lsc',cld_tau_lsc)
321!
322!Config Key  = cld_tau_con
323!Config Desc = 
324!Config Def  = 3600.
325!Config Help =
326!
327  cld_tau_con = 3600.
328  call getin('cld_tau_con',cld_tau_con)
329!
330!Config Key  = ffallv_lsc
331!Config Desc = 
332!Config Def  = 1.
333!Config Help =
334!
335  ffallv_lsc = 1.
336  call getin('ffallv_lsc',ffallv_lsc)
337!
338!Config Key  = ffallv_con
339!Config Desc = 
340!Config Def  = 1.
341!Config Help =
342!
343  ffallv_con = 1.
344  call getin('ffallv_con',ffallv_con)
345!
346!Config Key  = coef_eva
347!Config Desc = 
348!Config Def  = 2.e-5
349!Config Help =
350!
351  coef_eva = 2.e-5
352  call getin('coef_eva',coef_eva)
353!
354!Config Key  = reevap_ice
355!Config Desc = 
356!Config Def  = .false.
357!Config Help =
358!
359  reevap_ice = .false.
360  call getin('reevap_ice',reevap_ice)
361!
362!Config Key  = iflag_cldcon
363!Config Desc = 
364!Config Def  = 1
365!Config Help =
366!
367  iflag_cldcon = 1
368  call getin('iflag_cldcon',iflag_cldcon)
369
370!
371!Config Key  = iflag_pdf
372!Config Desc = 
373!Config Def  = 0
374!Config Help =
375!
376  iflag_pdf = 0
377  call getin('iflag_pdf',iflag_pdf)
378!
379!Config Key  = fact_cldcon
380!Config Desc = 
381!Config Def  = 0.375
382!Config Help =
383!
384  fact_cldcon = 0.375
385  call getin('fact_cldcon',fact_cldcon)
386
387!
388!Config Key  = facttemps
389!Config Desc = 
390!Config Def  = 1.e-4
391!Config Help =
392!
393  facttemps = 1.e-4
394  call getin('facttemps',facttemps)
395
396!
397!Config Key  = ok_newmicro
398!Config Desc = 
399!Config Def  = .true.
400!Config Help =
401!
402  ok_newmicro = .true.
403  call getin('ok_newmicro',ok_newmicro)
404!
405!Config Key  = ratqsbas
406!Config Desc = 
407!Config Def  = 0.01
408!Config Help =
409!
410  ratqsbas = 0.01
411  call getin('ratqsbas',ratqsbas)
412!
413!Config Key  = ratqshaut
414!Config Desc = 
415!Config Def  = 0.3
416!Config Help =
417!
418  ratqshaut = 0.3
419  call getin('ratqshaut',ratqshaut)
420
421!
422!Config Key  = rad_froid
423!Config Desc = 
424!Config Def  = 35.0
425!Config Help =
426!
427  rad_froid = 35.0
428  call getin('rad_froid',rad_froid)
429
430!
431!Config Key  = rad_chau1
432!Config Desc = 
433!Config Def  = 13.0
434!Config Help =
435!
436  rad_chau1 = 13.0
437  call getin('rad_chau1',rad_chau1)
438
439!
440!Config Key  = rad_chau2
441!Config Desc = 
442!Config Def  = 9.0
443!Config Help =
444!
445  rad_chau2 = 9.0
446  call getin('rad_chau2',rad_chau2)
447
448!
449!Config Key  = top_height
450!Config Desc =
451!Config Def  = 3
452!Config Help =
453!
454  top_height = 3
455  call getin('top_height',top_height)
456
457!
458!Config Key  = overlap
459!Config Desc =
460!Config Def  = 3
461!Config Help =
462!
463  overlap = 3
464  call getin('overlap',overlap)
465
466
467!
468!
469!Config Key  = cdmmax
470!Config Desc =
471!Config Def  = 1.3E-3
472!Config Help =
473!
474  cdmmax = 1.3E-3
475  call getin('cdmmax',cdmmax)
476
477!
478!Config Key  = cdhmax
479!Config Desc =
480!Config Def  = 1.1E-3
481!Config Help =
482!
483  cdhmax = 1.1E-3
484  call getin('cdhmax',cdhmax)
485
486!261103
487!
488!Config Key  = ksta
489!Config Desc =
490!Config Def  = 1.0e-10
491!Config Help =
492!
493  ksta = 1.0e-10
494  call getin('ksta',ksta)
495
496!
497!Config Key  = ksta_ter
498!Config Desc =
499!Config Def  = 1.0e-10
500!Config Help =
501!
502  ksta_ter = 1.0e-10
503  call getin('ksta_ter',ksta_ter)
504
505!
506!Config Key  = ok_kzmin
507!Config Desc =
508!Config Def  = .true.
509!Config Help =
510!
511  ok_kzmin = .true.
512  call getin('ok_kzmin',ok_kzmin)
513
514!
515!Config Key  = lev_histhf
516!Config Desc =
517!Config Def  = 0
518!Config Help =
519!
520  lev_histhf = 0
521  call getin('lev_histhf',lev_histhf)
522
523!
524!Config Key  = lev_histday
525!Config Desc =
526!Config Def  = 1
527!Config Help =
528!
529  lev_histday = 1
530  call getin('lev_histday',lev_histday)
531
532!
533!Config Key  = lev_histmth
534!Config Desc =
535!Config Def  = 2
536!Config Help =
537!
538  lev_histmth = 2
539  call getin('lev_histmth',lev_histmth)
540
541!
542!
543!Config Key  =
544!Config Desc = 
545!Config Def  =
546!Config Help =
547!
548!   =
549!  call getin('',)
550!
551!
552!
553!
554
555  write(numout,*)' ##############################################'
556  write(numout,*)' Configuration des parametres de la physique: '
557  write(numout,*)' Config ocean = ', ocean
558  write(numout,*)' Config veget = ', ok_veget
559  write(numout,*)' Sortie journaliere = ', ok_journe
560  write(numout,*)' Sortie mensuelle = ', ok_mensuel
561  write(numout,*)' Sortie instantanee = ', ok_instan
562  write(numout,*)' Sortie bilan d''energie, if_ebil =', if_ebil
563  write(numout,*)' Excentricite = ',R_ecc
564  write(numout,*)' Equinoxe = ',R_peri
565  write(numout,*)' Inclinaison =',R_incl
566  write(numout,*)' Constante solaire =',solaire
567  write(numout,*)' co2_ppm =',co2_ppm
568  write(numout,*)' RCO2 = ',RCO2
569  write(numout,*)' CH4_ppb =',CH4_ppb,' RCH4 = ',RCH4
570  write(numout,*)' N2O_ppb =',N2O_ppb,' RN2O =  ',RN2O
571  write(numout,*)' CFC11_ppt=',CFC11_ppt,' RCFC11 =  ',RCFC11
572  write(numout,*)' CFC12_ppt=',CFC12_ppt,' RCFC12 =  ',RCFC12
573  write(numout,*)' epmax = ', epmax
574  write(numout,*)' ok_adj_ema = ', ok_adj_ema
575  write(numout,*)' iflag_clw = ', iflag_clw
576  write(numout,*)' cld_lc_lsc = ', cld_lc_lsc
577  write(numout,*)' cld_lc_con = ', cld_lc_con
578  write(numout,*)' cld_tau_lsc = ', cld_tau_lsc
579  write(numout,*)' cld_tau_con = ', cld_tau_con
580  write(numout,*)' ffallv_lsc = ', ffallv_lsc
581  write(numout,*)' ffallv_con = ', ffallv_con
582  write(numout,*)' coef_eva = ', coef_eva
583  write(numout,*)' reevap_ice = ', reevap_ice
584  write(numout,*)' iflag_pdf = ', iflag_pdf
585  write(numout,*)' iflag_cldcon = ', iflag_cldcon
586  write(numout,*)' fact_cldcon = ', fact_cldcon
587  write(numout,*)' facttemps = ', facttemps
588  write(numout,*)' ok_newmicro = ',ok_newmicro
589  write(numout,*)' ratqsbas = ',ratqsbas
590  write(numout,*)' ratqshaut = ',ratqshaut
591  write(numout,*)' top_height = ',top_height
592  write(numout,*)' overlap = ',overlap
593  write(numout,*)' cdmmax = ',cdmmax
594  write(numout,*)' cdhmax = ',cdhmax
595  write(numout,*)' ksta = ',ksta
596  write(numout,*)' ksta_ter = ',ksta_ter
597  write(numout,*)' ok_kzmin = ',ok_kzmin
598  write(numout,*)' ok_ade = ',ok_ade
599  write(numout,*)' ok_aie = ',ok_aie
600  write(numout,*)' bl95_b0 = ',bl95_b0
601  write(numout,*)' bl95_b1 = ',bl95_b1
602  write(numout,*)' lev_histhf = ',lev_histhf
603  write(numout,*)' lev_histday = ',lev_histday
604  write(numout,*)' lev_histmth = ',lev_histmth
605
606  return
607
608  end subroutine conf_phys
609
Note: See TracBrowser for help on using the repository browser.