source: LMDZ4/trunk/libf/phylmd/conf_phys.F90 @ 1290

Last change on this file since 1290 was 1286, checked in by Laurent Fairhead, 15 years ago

Les parametres definissant la transition eau glace dans les nuages sont
maintenant lus dans physiq.def. Les valeurs par defaut donnent les memes
resultats que precedemment. JLD

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 42.6 KB
Line 
1
2!
3! $Id: conf_phys.F90 1286 2009-12-17 13:47:10Z fairhead $
4!
5!
6!
7module conf_phys_m
8
9   implicit none
10
11contains
12
13  subroutine conf_phys(ok_journe, ok_mensuel, ok_instan, ok_hf, &
14                       ok_LES,&
15                       solarlong0,seuil_inversion, &
16                       fact_cldcon, facttemps,ok_newmicro,iflag_radia,&
17                       iflag_cldcon, &
18                       iflag_ratqs,ratqsbas,ratqshaut,tau_ratqs, &
19                       ok_ade, ok_aie, aerosol_couple, &
20                       flag_aerosol, new_aod, &
21                       bl95_b0, bl95_b1,&
22                       iflag_thermals,nsplit_thermals,tau_thermals, &
23                       iflag_thermals_ed,iflag_thermals_optflux, &
24                       iflag_coupl,iflag_clos,iflag_wake, read_climoz)
25
26   use IOIPSL
27   USE surface_data
28   USE carbon_cycle_mod, ONLY : carbon_cycle_tr, carbon_cycle_cpl
29
30 include "conema3.h"
31 include "fisrtilp.h"
32 include "nuage.h"
33 include "YOMCST.h"
34 include "YOMCST2.h"
35!IM : on inclut/initialise les taux de CH4, N2O, CFC11 et CFC12
36include "clesphys.h"
37include "compbl.h"
38include "control.h"
39include "comsoil.h"
40!
41! Configuration de la "physique" de LMDZ a l'aide de la fonction
42! GETIN de IOIPSL
43!
44! LF 05/2001
45!
46
47!
48! type_ocean:      type d'ocean (force, slab, couple)
49! version_ocean:   version d'ocean (opa8/nemo pour type_ocean=couple ou
50!                                   sicOBS pour type_ocean=slab)
51! ok_veget:   type de modele de vegetation
52! ok_journe:  sorties journalieres
53! ok_hf:  sorties haute frequence
54! ok_mensuel: sorties mensuelles
55! ok_instan:  sorties instantanees
56! ok_ade, ok_aie: apply or not aerosol direct and indirect effects
57! bl95_b*: parameters in the formula to link CDNC to aerosol mass conc
58!
59
60
61! Sortie:
62  logical              :: ok_newmicro
63  integer              :: iflag_radia
64  logical              :: ok_journe, ok_mensuel, ok_instan, ok_hf
65  logical              :: ok_LES
66  LOGICAL              :: ok_ade, ok_aie, aerosol_couple
67  INTEGER              :: flag_aerosol
68  LOGICAL              :: new_aod
69  REAL                 :: bl95_b0, bl95_b1
70  real                 :: fact_cldcon, facttemps,ratqsbas,ratqshaut,tau_ratqs
71  integer              :: iflag_cldcon
72  integer              :: iflag_ratqs
73
74  character (len = 6),SAVE  :: type_ocean_omp, version_ocean_omp, ocean_omp
75  CHARACTER(len = 8),SAVE   :: aer_type_omp
76  logical,SAVE              :: ok_veget_omp, ok_newmicro_omp
77  logical,SAVE        :: ok_journe_omp, ok_mensuel_omp, ok_instan_omp, ok_hf_omp       
78  logical,SAVE        :: ok_LES_omp   
79  LOGICAL,SAVE        :: ok_ade_omp, ok_aie_omp, aerosol_couple_omp
80  INTEGER, SAVE       :: flag_aerosol_omp
81  LOGICAL, SAVE       :: new_aod_omp
82  REAL,SAVE           :: bl95_b0_omp, bl95_b1_omp
83  REAL,SAVE           :: freq_ISCCP_omp, ecrit_ISCCP_omp
84  REAL,SAVE           :: freq_COSP_omp
85  real,SAVE           :: fact_cldcon_omp, facttemps_omp,ratqsbas_omp
86  real,SAVE           :: ratqshaut_omp
87  real,SAVE           :: tau_ratqs_omp
88  integer,SAVE        :: iflag_radia_omp
89  integer,SAVE        :: iflag_rrtm_omp
90  integer,SAVE        :: iflag_cldcon_omp, ip_ebil_phy_omp
91  integer,SAVE        :: iflag_ratqs_omp
92
93  Real,SAVE           :: f_cdrag_ter_omp,f_cdrag_oce_omp
94  Real,SAVE           :: f_rugoro_omp   
95
96! Local
97  integer              :: numout = 6
98  real                 :: zzz
99
100  real :: seuil_inversion
101  real,save :: seuil_inversion_omp
102
103  integer :: iflag_thermals,nsplit_thermals
104  integer,SAVE :: iflag_thermals_ed_omp,iflag_thermals_optflux_omp
105  integer :: iflag_thermals_ed,iflag_thermals_optflux
106  integer,SAVE :: iflag_thermals_omp,nsplit_thermals_omp
107  real :: tau_thermals
108  real,save :: tau_thermals_omp
109  integer :: iflag_coupl
110  integer :: iflag_clos
111  integer :: iflag_wake
112  integer,SAVE :: iflag_coupl_omp,iflag_clos_omp,iflag_wake_omp
113  integer,SAVE :: iflag_cvl_sigd_omp
114  REAL, SAVE :: supcrit1_omp, supcrit2_omp
115  INTEGER, SAVE :: iflag_mix_omp
116  real, save :: scut_omp, qqa1_omp, qqa2_omp, gammas_omp, Fmax_omp, alphas_omp
117
118  REAL,SAVE :: R_ecc_omp,R_peri_omp,R_incl_omp,solaire_omp,co2_ppm_omp
119  REAL,SAVE :: RCO2_omp,CH4_ppb_omp,RCH4_omp,N2O_ppb_omp,RN2O_omp,CFC11_ppt_omp
120  REAL,SAVE :: RCFC11_omp,CFC12_ppt_omp,RCFC12_omp,epmax_omp
121  LOGICAL,SAVE :: ok_adj_ema_omp
122  INTEGER,SAVE :: iflag_clw_omp
123  REAL,SAVE :: cld_lc_lsc_omp,cld_lc_con_omp,cld_tau_lsc_omp,cld_tau_con_omp
124  REAL,SAVE :: ffallv_lsc_omp, ffallv_con_omp,coef_eva_omp
125  LOGICAL,SAVE :: reevap_ice_omp
126  INTEGER,SAVE :: iflag_pdf_omp
127  REAL,SAVE :: rad_froid_omp, rad_chau1_omp, rad_chau2_omp
128  REAL,SAVE :: t_glace_min_omp, t_glace_max_omp
129  REAL,SAVE :: inertie_sol_omp,inertie_sno_omp,inertie_ice_omp
130  REAL,SAVE :: qsol0_omp
131  REAL      :: solarlong0
132  REAL,SAVE :: solarlong0_omp
133  INTEGER,SAVE :: top_height_omp,overlap_omp
134  REAL,SAVE :: cdmmax_omp,cdhmax_omp,ksta_omp,ksta_ter_omp
135  LOGICAL,SAVE :: ok_kzmin_omp
136  REAL, SAVE ::  fmagic_omp, pmagic_omp
137  INTEGER,SAVE :: iflag_pbl_omp,lev_histhf_omp,lev_histday_omp,lev_histmth_omp
138  Integer,save :: lev_histins_omp, lev_histLES_omp
139  CHARACTER*4, SAVE :: type_run_omp
140  LOGICAL,SAVE :: ok_isccp_omp
141  LOGICAL,SAVE :: ok_cosp_omp
142  REAL,SAVE :: lonmin_ins_omp, lonmax_ins_omp, latmin_ins_omp, latmax_ins_omp
143  REAL,SAVE :: ecrit_hf_omp, ecrit_day_omp, ecrit_mth_omp, ecrit_reg_omp
144  REAL,SAVE :: ecrit_ins_omp
145  REAL,SAVE :: ecrit_LES_omp
146  REAL,SAVE :: ecrit_tra_omp
147  REAL,SAVE :: cvl_corr_omp
148  LOGICAL,SAVE :: ok_lic_melt_omp
149!
150  LOGICAL,SAVE :: cycle_diurne_omp,soil_model_omp,new_oliq_omp
151  LOGICAL,SAVE :: ok_orodr_omp, ok_orolf_omp, ok_limitvrai_omp
152  INTEGER, SAVE :: nbapp_rad_omp, iflag_con_omp
153  LOGICAL,SAVE :: ok_strato_omp
154  LOGICAL,SAVE :: ok_hines_omp
155  LOGICAL,SAVE      :: carbon_cycle_tr_omp
156  LOGICAL,SAVE      :: carbon_cycle_cpl_omp
157
158  integer, intent(out):: read_climoz ! read ozone climatology, OpenMP shared
159  ! Allowed values are 0, 1 and 2
160  ! 0: do not read an ozone climatology
161  ! 1: read a single ozone climatology that will be used day and night
162  ! 2: read two ozone climatologies, the average day and night
163  ! climatology and the daylight climatology
164
165!$OMP MASTER
166!Config Key  = type_ocean
167!Config Desc = Type d'ocean
168!Config Def  = force
169!Config Help = Type d'ocean utilise: force, slab,couple
170!
171  type_ocean_omp = 'force '
172  call getin('type_ocean', type_ocean_omp)
173!
174!Config Key  = version_ocean
175!Config Desc = Version d'ocean
176!Config Def  = xxxxxx
177!Config Help = Version d'ocean utilise: opa8/nemo/sicOBS/xxxxxx
178!
179  version_ocean_omp = 'xxxxxx'
180  call getin('version_ocean', version_ocean_omp)
181
182!Config Key  = OCEAN
183!Config Desc = Old parameter name for type_ocean
184!Config Def  = yyyyyy
185!Config Help = This is only for testing purpose
186!
187  ocean_omp = 'yyyyyy'
188  call getin('OCEAN', ocean_omp)
189  IF (ocean_omp /= 'yyyyyy') THEN
190     WRITE(numout,*)'ERROR!! Old variable name OCEAN used in parmeter file.'
191     WRITE(numout,*)'Variable OCEAN has been replaced by the variable type_ocean.'
192     WRITE(numout,*)'You have to update your parameter file physiq.def to succed running'
193     CALL abort_gcm('conf_phys','Variable OCEAN no longer existing, use variable name type_ocean',1)
194  END IF
195
196!
197!Config Key  = VEGET
198!Config Desc = Type de modele de vegetation
199!Config Def  = .false.
200!Config Help = Type de modele de vegetation utilise
201!
202  ok_veget_omp = .false.
203  call getin('VEGET', ok_veget_omp)
204!
205!Config Key  = OK_journe
206!Config Desc = Pour des sorties journalieres
207!Config Def  = .false.
208!Config Help = Pour creer le fichier histday contenant les sorties
209!              journalieres
210!
211  ok_journe_omp = .false.
212  call getin('OK_journe', ok_journe_omp)
213!
214!Config Key  = ok_hf
215!Config Desc = Pour des sorties haute frequence
216!Config Def  = .false.
217!Config Help = Pour creer le fichier histhf contenant les sorties
218!              haute frequence ( 3h ou 6h)
219!
220  ok_hf_omp = .false.
221  call getin('ok_hf', ok_hf_omp)
222!
223!Config Key  = OK_mensuel
224!Config Desc = Pour des sorties mensuelles
225!Config Def  = .true.
226!Config Help = Pour creer le fichier histmth contenant les sorties
227!              mensuelles
228!
229  ok_mensuel_omp = .true.
230  call getin('OK_mensuel', ok_mensuel_omp)
231!
232!Config Key  = OK_instan
233!Config Desc = Pour des sorties instantanees
234!Config Def  = .false.
235!Config Help = Pour creer le fichier histins contenant les sorties
236!              instantanees
237!
238  ok_instan_omp = .false.
239  call getin('OK_instan', ok_instan_omp)
240!
241!Config Key  = ok_ade
242!Config Desc = Aerosol direct effect or not?
243!Config Def  = .false.
244!Config Help = Used in radlwsw.F
245!
246  ok_ade_omp = .false.
247  call getin('ok_ade', ok_ade_omp)
248
249!
250!Config Key  = ok_aie
251!Config Desc = Aerosol indirect effect or not?
252!Config Def  = .false.
253!Config Help = Used in nuage.F and radlwsw.F
254!
255  ok_aie_omp = .false.
256  call getin('ok_aie', ok_aie_omp)
257
258!
259!Config Key  = aerosol_couple
260!Config Desc = read aerosol in file or calcul by inca
261!Config Def  = .false.
262!Config Help = Used in physiq.F
263!
264  aerosol_couple_omp = .false.
265  CALL getin('aerosol_couple',aerosol_couple_omp)
266
267!
268!Config Key  = flag_aerosol
269!Config Desc = which aerosol is use for coupled model
270!Config Def  = 1
271!Config Help = Used in physiq.F
272!
273! - flag_aerosol=1 => so4 only (defaut)
274! - flag_aerosol=2 => bc  only
275! - flag_aerosol=3 => pom only
276! - flag_aerosol=4 => seasalt only
277! - flag_aerosol=5 => dust only
278! - flag_aerosol=6 => all aerosol
279
280  flag_aerosol_omp = 1
281  CALL getin('flag_aerosol',flag_aerosol_omp)
282
283! Temporary variable for testing purpose!!
284!Config Key  = new_aod
285!Config Desc = which calcul of aeropt
286!Config Def  = false
287!Config Help = Used in physiq.F
288!
289  new_aod_omp = .true.
290  CALL getin('new_aod',new_aod_omp)
291
292!
293!Config Key  = aer_type
294!Config Desc = Use a constant field for the aerosols
295!Config Def  = scenario
296!Config Help = Used in readaerosol.F90
297!
298  aer_type_omp = 'scenario'
299  call getin('aer_type', aer_type_omp)
300
301!
302!Config Key  = bl95_b0
303!Config Desc = Parameter in CDNC-maer link (Boucher&Lohmann 1995)
304!Config Def  = .false.
305!Config Help = Used in nuage.F
306!
307  bl95_b0_omp = 2.
308  call getin('bl95_b0', bl95_b0_omp)
309
310!Config Key  = bl95_b1
311!Config Desc = Parameter in CDNC-maer link (Boucher&Lohmann 1995)
312!Config Def  = .false.
313!Config Help = Used in nuage.F
314!
315  bl95_b1_omp = 0.2
316  call getin('bl95_b1', bl95_b1_omp)
317
318!Config Key  = freq_ISCCP
319!Config Desc = Frequence d'appel du simulateur ISCCP en secondes;
320!              par defaut 10800, i.e. 3 heures
321!Config Def  = 10800.
322!Config Help = Used in ini_histISCCP.h
323!
324  freq_ISCCP_omp = 10800.
325  call getin('freq_ISCCP', freq_ISCCP_omp)
326!
327!Config Key  = ecrit_ISCCP
328!Config Desc = Frequence d'ecriture des resultats du simulateur ISCCP en nombre de jours;
329!              par defaut 1., i.e. 1 jour
330!Config Def  = 1.
331!Config Help = Used in ini_histISCCP.h
332!
333!
334  ecrit_ISCCP_omp = 1.
335  call getin('ecrit_ISCCP', ecrit_ISCCP_omp)
336
337!Config Key  = freq_COSP
338!Config Desc = Frequence d'appel du simulateur COSP en secondes;
339!              par defaut 10800, i.e. 3 heures
340!Config Def  = 10800.
341!Config Help = Used in ini_histdayCOSP.h
342!
343  freq_COSP_omp = 10800.
344  call getin('freq_COSP', freq_COSP_omp)
345
346!
347!Config Key  = ip_ebil_phy
348!Config Desc = Niveau de sortie pour les diags bilan d'energie
349!Config Def  = 0
350!Config Help =
351!               
352  ip_ebil_phy_omp = 0
353  call getin('ip_ebil_phy', ip_ebil_phy_omp)
354!
355!Config Key  = seuil_inversion
356!Config Desc = Seuil ur dTh pour le choix entre les schemas de CL
357!Config Def  = -0.1
358!Config Help =
359!               
360  seuil_inversion_omp = -0.1
361  call getin('seuil_inversion', seuil_inversion_omp)
362
363!!
364!! Constante solaire & Parametres orbitaux & taux gaz effet de serre BEG
365!!
366!Config Key  = R_ecc
367!Config Desc = Excentricite
368!Config Def  = 0.016715
369!Config Help =
370!               
371!valeur AMIP II
372  R_ecc_omp = 0.016715
373  call getin('R_ecc', R_ecc_omp)
374!!
375!Config Key  = R_peri
376!Config Desc = Equinoxe
377!Config Def  =
378!Config Help =
379!               
380!
381!valeur AMIP II
382  R_peri_omp = 102.7
383  call getin('R_peri', R_peri_omp)
384!!
385!Config Key  = R_incl
386!Config Desc = Inclinaison
387!Config Def  =
388!Config Help =
389!               
390!
391!valeur AMIP II
392  R_incl_omp = 23.441
393  call getin('R_incl', R_incl_omp)
394!!
395!Config Key  = solaire
396!Config Desc = Constante solaire en W/m2
397!Config Def  = 1365.
398!Config Help =
399!               
400!
401!valeur AMIP II
402  solaire_omp = 1365.
403  call getin('solaire', solaire_omp)
404!!
405!Config Key  = co2_ppm
406!Config Desc = concentration du gaz carbonique en ppmv
407!Config Def  = 348.
408!Config Help =
409!               
410!
411!valeur AMIP II
412  co2_ppm_omp = 348.
413  call getin('co2_ppm', co2_ppm_omp)
414!!
415!Config Key  = RCO2
416!Config Desc = Concentration du CO2
417!Config Def  = co2_ppm * 1.0e-06  * 44.011/28.97
418!Config Def  = 348. * 1.0e-06  * 44.011/28.97
419!Config Help =
420!               
421! RCO2 = 5.286789092164308E-04
422!ancienne valeur
423  RCO2_omp = co2_ppm_omp * 1.0e-06  * 44.011/28.97 ! pour co2_ppm=348.
424
425!!  call getin('RCO2', RCO2)
426!!
427!Config Key  = RCH4
428!Config Desc = Concentration du CH4
429!Config Def  = 1.65E-06* 16.043/28.97
430!Config Help =
431!               
432!
433!valeur AMIP II
434!OK  RCH4 = 1.65E-06* 16.043/28.97
435! RCH4 = 9.137366240938903E-07
436!
437!ancienne valeur
438! RCH4 = 1.72E-06* 16.043/28.97
439!OK call getin('RCH4', RCH4)
440  zzz = 1650.
441  call getin('CH4_ppb', zzz)
442  CH4_ppb_omp = zzz
443  RCH4_omp = CH4_ppb_omp * 1.0E-09 * 16.043/28.97
444!!
445!Config Key  = RN2O
446!Config Desc = Concentration du N2O
447!Config Def  = 306.E-09* 44.013/28.97
448!Config Help =
449!               
450!
451!valeur AMIP II
452!OK  RN2O = 306.E-09* 44.013/28.97
453! RN2O = 4.648939592682085E-07
454!
455!ancienne valeur
456! RN2O = 310.E-09* 44.013/28.97
457!OK  call getin('RN2O', RN2O)
458  zzz=306.
459  call getin('N2O_ppb', zzz)
460  N2O_ppb_omp = zzz
461  RN2O_omp = N2O_ppb_omp * 1.0E-09 * 44.013/28.97
462!!
463!Config Key  = RCFC11
464!Config Desc = Concentration du CFC11
465!Config Def  = 280.E-12* 137.3686/28.97
466!Config Help =
467!               
468!
469!OK RCFC11 = 280.E-12* 137.3686/28.97
470  zzz = 280.
471  call getin('CFC11_ppt',zzz)
472  CFC11_ppt_omp = zzz
473  RCFC11_omp=CFC11_ppt_omp* 1.0E-12 * 137.3686/28.97
474! RCFC11 = 1.327690990680013E-09
475!OK call getin('RCFC11', RCFC11)
476!!
477!Config Key  = RCFC12
478!Config Desc = Concentration du CFC12
479!Config Def  = 484.E-12* 120.9140/28.97
480!Config Help =
481!               
482!
483!OK RCFC12 = 484.E-12* 120.9140/28.97
484  zzz = 484.
485  call getin('CFC12_ppt',zzz)
486  CFC12_ppt_omp = zzz
487  RCFC12_omp = CFC12_ppt_omp * 1.0E-12 * 120.9140/28.97
488! RCFC12 = 2.020102726958923E-09
489!OK call getin('RCFC12', RCFC12)
490
491
492
493!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
494! FH 2008/05/09 On elimine toutes les clefs physiques dans la dynamique
495! Constantes precedemment dans dyn3d/conf_gcm
496
497!Config  Key  = cycle_diurne
498!Config  Desc = Cycle ddiurne
499!Config  Def  = y
500!Config  Help = Cette option permet d'eteidre le cycle diurne.
501!Config         Peut etre util pour accelerer le code !
502       cycle_diurne_omp = .TRUE.
503       CALL getin('cycle_diurne',cycle_diurne_omp)
504
505!Config  Key  = soil_model
506!Config  Desc = Modele de sol
507!Config  Def  = y
508!Config  Help = Choix du modele de sol (Thermique ?)
509!Config         Option qui pourait un string afin de pouvoir
510!Config         plus de choix ! Ou meme une liste d'options !
511       soil_model_omp = .TRUE.
512       CALL getin('soil_model',soil_model_omp)
513
514!Config  Key  = new_oliq
515!Config  Desc = Nouvelle eau liquide
516!Config  Def  = y
517!Config  Help = Permet de mettre en route la
518!Config         nouvelle parametrisation de l'eau liquide !
519       new_oliq_omp = .TRUE.
520       CALL getin('new_oliq',new_oliq_omp)
521
522!Config  Key  = ok_orodr
523!Config  Desc = Orodr ???
524!Config  Def  = y
525!Config  Help = Y en a pas comprendre !
526!Config         
527       ok_orodr_omp = .TRUE.
528       CALL getin('ok_orodr',ok_orodr_omp)
529
530!Config  Key  =  ok_orolf
531!Config  Desc = Orolf ??
532!Config  Def  = y
533!Config  Help = Connais pas !
534       ok_orolf_omp = .TRUE.
535       CALL getin('ok_orolf', ok_orolf_omp)
536
537!Config  Key  = ok_limitvrai
538!Config  Desc = Force la lecture de la bonne annee
539!Config  Def  = n
540!Config  Help = On peut forcer le modele a lire le
541!Config         fichier SST de la bonne annee. C'est une tres bonne
542!Config         idee, pourquoi ne pas mettre toujours a y ???
543       ok_limitvrai_omp = .FALSE.
544       CALL getin('ok_limitvrai',ok_limitvrai_omp)
545
546!Config  Key  = nbapp_rad
547!Config  Desc = Frequence d'appel au rayonnement
548!Config  Def  = 12
549!Config  Help = Nombre  d'appels des routines de rayonnements
550!Config         par jour.
551       nbapp_rad_omp = 12
552       CALL getin('nbapp_rad',nbapp_rad_omp)
553
554!Config  Key  = iflag_con
555!Config  Desc = Flag de convection
556!Config  Def  = 2
557!Config  Help = Flag  pour la convection les options suivantes existent :
558!Config         1 pour LMD,
559!Config         2 pour Tiedtke,
560!Config         3 pour CCM(NCAR) 
561       iflag_con_omp = 2
562       CALL getin('iflag_con',iflag_con_omp)
563
564!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
565!!
566!! Constante solaire & Parametres orbitaux & taux gaz effet de serre END
567!!
568!! KE
569!
570
571!Config key  = cvl_corr
572!Config Desc = Facteur multiplication des precip convectives dans KE
573!Config Def  = 1.00
574!Config Help = 1.02 pour un moderne ou un pre-ind. A ajuster pour un glaciaire
575  cvl_corr_omp = 1.00
576  CALL getin('cvl_corr', cvl_corr_omp)
577
578
579!Config Key  = epmax
580!Config Desc = Efficacite precip
581!Config Def  = 0.993
582!Config Help =
583!
584  epmax_omp = .993
585  call getin('epmax', epmax_omp)
586!
587!Config Key  = ok_adj_ema
588!Config Desc = 
589!Config Def  = false
590!Config Help =
591!
592  ok_adj_ema_omp = .false.
593  call getin('ok_adj_ema',ok_adj_ema_omp)
594!
595!Config Key  = iflag_clw
596!Config Desc = 
597!Config Def  = 0
598!Config Help =
599!
600  iflag_clw_omp = 0
601  call getin('iflag_clw',iflag_clw_omp)
602!
603!Config Key  = cld_lc_lsc
604!Config Desc = 
605!Config Def  = 2.6e-4
606!Config Help =
607!
608  cld_lc_lsc_omp = 2.6e-4
609  call getin('cld_lc_lsc',cld_lc_lsc_omp)
610!
611!Config Key  = cld_lc_con
612!Config Desc = 
613!Config Def  = 2.6e-4
614!Config Help =
615!
616  cld_lc_con_omp = 2.6e-4
617  call getin('cld_lc_con',cld_lc_con_omp)
618!
619!Config Key  = cld_tau_lsc
620!Config Desc = 
621!Config Def  = 3600.
622!Config Help =
623!
624  cld_tau_lsc_omp = 3600.
625  call getin('cld_tau_lsc',cld_tau_lsc_omp)
626!
627!Config Key  = cld_tau_con
628!Config Desc = 
629!Config Def  = 3600.
630!Config Help =
631!
632  cld_tau_con_omp = 3600.
633  call getin('cld_tau_con',cld_tau_con_omp)
634!
635!Config Key  = ffallv_lsc
636!Config Desc = 
637!Config Def  = 1.
638!Config Help =
639!
640  ffallv_lsc_omp = 1.
641  call getin('ffallv_lsc',ffallv_lsc_omp)
642!
643!Config Key  = ffallv_con
644!Config Desc = 
645!Config Def  = 1.
646!Config Help =
647!
648  ffallv_con_omp = 1.
649  call getin('ffallv_con',ffallv_con_omp)
650!
651!Config Key  = coef_eva
652!Config Desc = 
653!Config Def  = 2.e-5
654!Config Help =
655!
656  coef_eva_omp = 2.e-5
657  call getin('coef_eva',coef_eva_omp)
658!
659!Config Key  = reevap_ice
660!Config Desc = 
661!Config Def  = .false.
662!Config Help =
663!
664  reevap_ice_omp = .false.
665  call getin('reevap_ice',reevap_ice_omp)
666
667!Config Key  = iflag_ratqs
668!Config Desc =
669!Config Def  = 1
670!Config Help =
671!
672  iflag_ratqs_omp = 1
673  call getin('iflag_ratqs',iflag_ratqs_omp)
674
675!
676!Config Key  = iflag_radia
677!Config Desc = 
678!Config Def  = 1
679!Config Help =
680!
681  iflag_radia_omp = 1
682  call getin('iflag_radia',iflag_radia_omp)
683
684!
685!Config Key  = iflag_rrtm
686!Config Desc = 
687!Config Def  = 0
688!Config Help =
689!
690  iflag_rrtm_omp = 0
691  call getin('iflag_rrtm',iflag_rrtm_omp)
692
693!
694!Config Key  = iflag_cldcon
695!Config Desc = 
696!Config Def  = 1
697!Config Help =
698!
699  iflag_cldcon_omp = 1
700  call getin('iflag_cldcon',iflag_cldcon_omp)
701
702!
703!Config Key  = iflag_pdf
704!Config Desc = 
705!Config Def  = 0
706!Config Help =
707!
708  iflag_pdf_omp = 0
709  call getin('iflag_pdf',iflag_pdf_omp)
710!
711!Config Key  = fact_cldcon
712!Config Desc = 
713!Config Def  = 0.375
714!Config Help =
715!
716  fact_cldcon_omp = 0.375
717  call getin('fact_cldcon',fact_cldcon_omp)
718
719!
720!Config Key  = facttemps
721!Config Desc = 
722!Config Def  = 1.e-4
723!Config Help =
724!
725  facttemps_omp = 1.e-4
726  call getin('facttemps',facttemps_omp)
727
728!
729!Config Key  = ok_newmicro
730!Config Desc = 
731!Config Def  = .true.
732!Config Help =
733!
734  ok_newmicro_omp = .true.
735  call getin('ok_newmicro',ok_newmicro_omp)
736!
737!Config Key  = ratqsbas
738!Config Desc = 
739!Config Def  = 0.01
740!Config Help =
741!
742  ratqsbas_omp = 0.01
743  call getin('ratqsbas',ratqsbas_omp)
744!
745!Config Key  = ratqshaut
746!Config Desc = 
747!Config Def  = 0.3
748!Config Help =
749!
750  ratqshaut_omp = 0.3
751  call getin('ratqshaut',ratqshaut_omp)
752
753!Config Key  = tau_ratqs
754!Config Desc = 
755!Config Def  = 1800.
756!Config Help =
757!
758  tau_ratqs_omp = 1800.
759  call getin('tau_ratqs',tau_ratqs_omp)
760
761!
762!-----------------------------------------------------------------------
763! Longitude solaire pour le calcul de l'ensoleillement en degre
764! si on veut imposer la saison. Sinon, solarlong0=-999.999
765!Config Key  = solarlong0
766!Config Desc = 
767!Config Def  = -999.999
768!Config Help =
769!
770  solarlong0_omp = -999.999
771  call getin('solarlong0',solarlong0_omp)
772!
773!-----------------------------------------------------------------------
774!  Valeur imposee de l'humidite du sol pour le modele bucket.
775!Config Key  = qsol0
776!Config Desc = 
777!Config Def  = -1.
778!Config Help =
779!
780  qsol0_omp = -1.
781  call getin('qsol0',qsol0_omp)
782!
783!-----------------------------------------------------------------------
784!
785!Config Key  = inertie_ice
786!Config Desc = 
787!Config Def  = 2000.
788!Config Help =
789!
790  inertie_ice_omp = 2000.
791  call getin('inertie_ice',inertie_ice_omp)
792!
793!Config Key  = inertie_sno
794!Config Desc = 
795!Config Def  = 2000.
796!Config Help =
797!
798  inertie_sno_omp = 2000.
799  call getin('inertie_sno',inertie_sno_omp)
800!
801!Config Key  = inertie_sol
802!Config Desc = 
803!Config Def  = 2000.
804!Config Help =
805!
806  inertie_sol_omp = 2000.
807  call getin('inertie_sol',inertie_sol_omp)
808
809!
810!Config Key  = rad_froid
811!Config Desc = 
812!Config Def  = 35.0
813!Config Help =
814!
815  rad_froid_omp = 35.0
816  call getin('rad_froid',rad_froid_omp)
817
818!
819!Config Key  = rad_chau1
820!Config Desc = 
821!Config Def  = 13.0
822!Config Help =
823!
824  rad_chau1_omp = 13.0
825  call getin('rad_chau1',rad_chau1_omp)
826
827!
828!Config Key  = rad_chau2
829!Config Desc = 
830!Config Def  = 9.0
831!Config Help =
832!
833  rad_chau2_omp = 9.0
834  call getin('rad_chau2',rad_chau2_omp)
835
836!
837!Config Key  = t_glace_min
838!Config Desc = 
839!Config Def  = 258.
840!Config Help =
841!
842  t_glace_min_omp = 258.
843  call getin('t_glace_min',t_glace_min_omp)
844
845!
846!Config Key  = t_glace_max
847!Config Desc = 
848!Config Def  = 273.13
849!Config Help =
850!
851  t_glace_max_omp = 273.13
852  call getin('t_glace_max',t_glace_max_omp)
853
854!
855!Config Key  = top_height
856!Config Desc =
857!Config Def  = 3
858!Config Help =
859!
860  top_height_omp = 3
861  call getin('top_height',top_height_omp)
862
863!
864!Config Key  = overlap
865!Config Desc =
866!Config Def  = 3
867!Config Help =
868!
869  overlap_omp = 3
870  call getin('overlap',overlap_omp)
871
872
873!
874!
875!Config Key  = cdmmax
876!Config Desc =
877!Config Def  = 1.3E-3
878!Config Help =
879!
880  cdmmax_omp = 1.3E-3
881  call getin('cdmmax',cdmmax_omp)
882
883!
884!Config Key  = cdhmax
885!Config Desc =
886!Config Def  = 1.1E-3
887!Config Help =
888!
889  cdhmax_omp = 1.1E-3
890  call getin('cdhmax',cdhmax_omp)
891
892!261103
893!
894!Config Key  = ksta
895!Config Desc =
896!Config Def  = 1.0e-10
897!Config Help =
898!
899  ksta_omp = 1.0e-10
900  call getin('ksta',ksta_omp)
901
902!
903!Config Key  = ksta_ter
904!Config Desc =
905!Config Def  = 1.0e-10
906!Config Help =
907!
908  ksta_ter_omp = 1.0e-10
909  call getin('ksta_ter',ksta_ter_omp)
910
911!
912!Config Key  = ok_kzmin
913!Config Desc =
914!Config Def  = .true.
915!Config Help =
916!
917  ok_kzmin_omp = .true.
918  call getin('ok_kzmin',ok_kzmin_omp)
919
920!
921!Config Key  = fmagic
922!Config Desc = additionnal multiplicator factor used for albedo
923!Config Def  = 1.
924!Config Help = additionnal multiplicator factor used in albedo.F
925!
926  fmagic_omp = 1.
927  call getin('fmagic',fmagic_omp)
928
929!
930!Config Key  = pmagic
931!Config Desc = additional factor used for albedo
932!Config Def  = 0.
933!Config Help = additional factor used in albedo.F
934!
935  pmagic_omp = 0.
936  call getin('pmagic',pmagic_omp)
937
938
939!Config Key = ok_lic_melt
940!Config Desc = Prise en compte de la fonte de la calotte dans le bilan d'eau
941!Config Def  = .false.
942!Config Help = mettre a .false. pour assurer la conservation en eau
943  ok_lic_melt_omp = .false.
944  call getin('ok_lic_melt', ok_lic_melt_omp)
945
946!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
947! PARAMETER FOR THE PLANETARY BOUNDARY LAYER
948!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
949
950!Config Key  = iflag_pbl
951!Config Desc =
952!Config Def  = 1
953!Config Help =
954!
955  iflag_pbl_omp = 1
956  call getin('iflag_pbl',iflag_pbl_omp)
957!
958!Config Key  = iflag_thermals
959!Config Desc =
960!Config Def  = 0
961!Config Help =
962!
963  iflag_thermals_omp = 0
964  call getin('iflag_thermals',iflag_thermals_omp)
965!
966!
967!Config Key  = iflag_thermals_ed
968!Config Desc =
969!Config Def  = 0
970!Config Help =
971!
972  iflag_thermals_ed_omp = 0
973  call getin('iflag_thermals_ed',iflag_thermals_ed_omp)
974!
975!
976!Config Key  = iflag_thermals_optflux
977!Config Desc =
978!Config Def  = 0
979!Config Help =
980!
981  iflag_thermals_optflux_omp = 0
982  call getin('iflag_thermals_optflux',iflag_thermals_optflux_omp)
983!
984!
985!Config Key  = nsplit_thermals
986!Config Desc =
987!Config Def  = 1
988!Config Help =
989!
990  nsplit_thermals_omp = 1
991  call getin('nsplit_thermals',nsplit_thermals_omp)
992
993!Config Key  = tau_thermals
994!Config Desc =
995!Config Def  = 0.
996!Config Help =
997!
998  tau_thermals_omp = 0.
999  call getin('tau_thermals',tau_thermals_omp)
1000
1001!
1002!Config Key  = iflag_coupl
1003!Config Desc =
1004!Config Def  = 0
1005!Config Help =
1006!
1007  iflag_coupl_omp = 0
1008  call getin('iflag_coupl',iflag_coupl_omp)
1009
1010!
1011!Config Key  = iflag_clos
1012!Config Desc = 
1013!Config Def  = 0
1014!Config Help =
1015!
1016  iflag_clos_omp = 1
1017  call getin('iflag_clos',iflag_clos_omp)
1018!
1019!Config Key  = iflag_cvl_sigd
1020!Config Desc = 
1021!Config Def  = 0
1022!Config Help =
1023!
1024  iflag_cvl_sigd_omp = 0
1025  call getin('iflag_cvl_sigd',iflag_cvl_sigd_omp)
1026
1027!Config Key  = iflag_wake
1028!Config Desc = 
1029!Config Def  = 0
1030!Config Help =
1031!
1032  iflag_wake_omp = 0
1033  call getin('iflag_wake',iflag_wake_omp)
1034
1035!
1036!Config Key  = lev_histhf
1037!Config Desc =
1038!Config Def  = 1
1039!Config Help =
1040!
1041  lev_histhf_omp = 1
1042  call getin('lev_histhf',lev_histhf_omp)
1043
1044!
1045!Config Key  = lev_histday
1046!Config Desc =
1047!Config Def  = 1
1048!Config Help =
1049!
1050  lev_histday_omp = 1
1051  call getin('lev_histday',lev_histday_omp)
1052
1053!
1054!Config Key  = lev_histmth
1055!Config Desc =
1056!Config Def  = 2
1057!Config Help =
1058!
1059  lev_histmth_omp = 2
1060  call getin('lev_histmth',lev_histmth_omp)
1061!
1062!Config Key  = lev_histins
1063!Config Desc =
1064!Config Def  = 1
1065!Config Help =
1066!
1067  lev_histins_omp = 1
1068  call getin('lev_histins',lev_histins_omp)
1069  !
1070!Config Key  = lev_histLES
1071!Config Desc =
1072!Config Def  = 1
1073!Config Help =
1074!
1075  lev_histLES_omp = 1
1076  call getin('lev_histLES',lev_histLES_omp)
1077  !
1078!Config Key  = type_run
1079!Config Desc =
1080!Config Def  = 'AMIP'/'CFMIP'  ou 'CLIM'/'ENSP'
1081!Config Help =
1082!
1083  type_run_omp = 'AMIP'
1084  call getin('type_run',type_run_omp)
1085
1086!
1087!Config Key  = ok_isccp
1088!Config Desc =
1089!Config Def  = .true.
1090!Config Help =
1091!
1092! ok_isccp = .true.
1093  ok_isccp_omp = .false.
1094  call getin('ok_isccp',ok_isccp_omp)
1095
1096!
1097!Config Key  = ok_cosp
1098!Config Desc =
1099!Config Def  = .false.
1100!Config Help =
1101!
1102  ok_cosp_omp = .false.
1103  call getin('ok_cosp',ok_cosp_omp)
1104
1105!
1106! coordonnees (lonmin_ins, lonmax_ins, latmin_ins, latmax_ins) pour la zone
1107! avec sorties instantannees tous les pas de temps de la physique => "histbilKP_ins.nc"
1108!
1109!Config Key  = lonmin_ins
1110!Config Desc = 100. 
1111!Config Def  = longitude minimale sorties "bilKP_ins"
1112!Config Help =
1113!
1114   lonmin_ins_omp = 100.
1115   call getin('lonmin_ins',lonmin_ins_omp)
1116!
1117!Config Key  = lonmax_ins
1118!Config Desc = 130.
1119!Config Def  = longitude maximale sorties "bilKP_ins"
1120!Config Help =
1121!
1122   lonmax_ins_omp = 130.
1123   call getin('lonmax_ins',lonmax_ins_omp)
1124!
1125!Config Key  = latmin_ins
1126!Config Desc = -20. 
1127!Config Def  = latitude minimale sorties "bilKP_ins"
1128!Config Help =
1129!
1130   latmin_ins_omp = -20.
1131   call getin('latmin_ins',latmin_ins_omp)
1132!
1133!Config Key  = latmax_ins
1134!Config Desc = 20.
1135!Config Def  = latitude maximale sorties "bilKP_ins"
1136!Config Help =
1137!
1138   latmax_ins_omp = 20.
1139   call getin('latmax_ins',latmax_ins_omp)
1140!
1141!Config Key  = ecrit_hf
1142!Config Desc =
1143!Config Def  = 1./8. !toutes les 3h
1144!Config Help =
1145!
1146  ecrit_hf_omp = 1./8.
1147  call getin('ecrit_hf',ecrit_hf_omp)
1148!
1149!Config Key  = ecrit_ins
1150!Config Desc =
1151!Config Def  = 1./48. ! toutes les 1/2 h
1152!Config Help =
1153!
1154  ecrit_ins_omp = 1./48.
1155  call getin('ecrit_ins',ecrit_ins_omp)
1156!
1157!Config Key  = ecrit_day
1158!Config Desc =
1159!Config Def  = 1.0 !tous les jours
1160!Config Help = nombre de jours pour ecriture fichier histday.nc
1161!
1162  ecrit_day_omp = 1.0
1163  call getin('ecrit_day',ecrit_day_omp)
1164!
1165!Config Key  = ecrit_mth
1166!Config Desc =
1167!Config Def  = 30. !tous les 30jours (1 fois par mois)
1168!Config Help =
1169!
1170  ecrit_mth_omp = 30.
1171  call getin('ecrit_mth',ecrit_mth_omp)
1172!
1173!Config Key  = ecrit_tra
1174!Config Desc =
1175!Config Def  = 30. !tous les 30jours (1 fois par mois)
1176!Config Help =
1177!
1178  ecrit_tra_omp = 30.
1179  call getin('ecrit_tra',ecrit_tra_omp)
1180!
1181!Config Key  = ecrit_reg
1182!Config Desc =
1183!Config Def  = 0.25  !4 fois par jour
1184!Config Help =
1185!
1186  ecrit_reg_omp = 0.25   !4 fois par jour
1187  call getin('ecrit_reg',ecrit_reg_omp)
1188!
1189!
1190!
1191! PARAMETRES CDRAG
1192!
1193!Config Key  = f_cdrag_ter
1194!Config Desc =
1195!Config Def  = 0.8
1196!Config Help =
1197!
1198  f_cdrag_ter_omp = 0.8
1199  call getin('f_cdrag_ter',f_cdrag_ter_omp)
1200!
1201!Config Key  = f_cdrag_oce
1202!Config Desc =
1203!Config Def  = 0.8
1204!Config Help =
1205!
1206  f_cdrag_oce_omp = 0.8
1207  call getin('f_cdrag_oce',f_cdrag_oce_omp)
1208!
1209! RUGORO
1210!Config Key  = f_rugoro
1211!Config Desc =
1212!Config Def  = 0.
1213!Config Help =
1214!
1215  f_rugoro_omp = 0.
1216  call getin('f_rugoro',f_rugoro_omp)
1217
1218! PARAMETERS FOR CONVECTIVE INHIBITION BY TROPOS. DRYNESS
1219!
1220!Config Key  = supcrit1
1221!Config Desc =
1222!Config Def  = .540
1223!Config Help =
1224!
1225  supcrit1_omp = .540
1226  call getin('supcrit1',supcrit1_omp)
1227
1228!
1229!Config Key  = supcrit2
1230!Config Desc =
1231!Config Def  = .600
1232!Config Help =
1233!
1234  supcrit2_omp = .600
1235  call getin('supcrit2',supcrit2_omp)
1236
1237!
1238! PARAMETERS FOR THE MIXING DISTRIBUTION
1239!
1240!
1241!Config Key  = iflag_mix
1242!Config Desc =
1243!Config Def  = 1
1244!Config Help =
1245!
1246  iflag_mix_omp = 1
1247  call getin('iflag_mix',iflag_mix_omp)
1248
1249!
1250!Config Key  = scut
1251!Config Desc =
1252!Config Def  = 0.95
1253!Config Help =
1254!
1255  scut_omp = 0.95
1256  call getin('scut',scut_omp)
1257
1258!
1259!Config Key  = qqa1
1260!Config Desc =
1261!Config Def  = 1.0
1262!Config Help =
1263!
1264  qqa1_omp = 1.0
1265  call getin('qqa1',qqa1_omp)
1266
1267!
1268!Config Key  = qqa2
1269!Config Desc =
1270!Config Def  = 0.0
1271!Config Help =
1272!
1273  qqa2_omp = 0.0
1274  call getin('qqa2',qqa2_omp)
1275
1276!
1277!Config Key  = gammas
1278!Config Desc =
1279!Config Def  = 0.05
1280!Config Help =
1281!
1282  gammas_omp = 0.05
1283  call getin('gammas',gammas_omp)
1284
1285!
1286!Config Key  = Fmax
1287!Config Desc =
1288!Config Def  = 0.65
1289!Config Help =
1290!
1291  Fmax_omp = 0.65
1292  call getin('Fmax',Fmax_omp)
1293
1294!
1295!Config Key  = alphas 
1296!Config Desc =
1297!Config Def  = -5.
1298!Config Help =
1299!
1300  alphas_omp = -5.
1301  call getin('alphas',alphas_omp)
1302
1303!Config key = ok_strato
1304!Config  Desc = activation de la version strato
1305!Config  Def  = .FALSE.
1306!Config  Help = active la version stratosphérique de LMDZ de F. Lott
1307
1308  ok_strato_omp=.FALSE.
1309  CALL getin('ok_strato',ok_strato_omp)
1310     
1311!Config  key = ok_hines
1312!Config  Desc = activation de la parametrisation de hines
1313!Config  Def  = .FALSE.
1314!Config  Help = Clefs controlant la parametrization de Hines
1315!               Et la sponge layer (Runs Stratospheriques)
1316
1317  ok_hines_omp=.FALSE.
1318  CALL getin('ok_hines',ok_hines_omp)
1319
1320!Config Key  = OK_LES                                               
1321!Config Desc = Pour des sorties LES                                 
1322!Config Def  = .false.                                             
1323!Config Help = Pour creer le fichier histLES contenant les sorties 
1324!              LES                                                 
1325!                                                                   
1326  ok_LES_omp = .false.                                             
1327  call getin('OK_LES', ok_LES_omp)                                 
1328!
1329!Config Key  = ecrit_LES
1330!Config Desc = Frequence d'ecriture des resultats du LES en nombre de jours;
1331!              par defaut 1., i.e. 1 jour
1332!Config Def  = 1./8.
1333!Config Help = ...
1334!
1335!
1336  ecrit_LES_omp = 1./8.
1337  call getin('ecrit_LES', ecrit_LES_omp)
1338!
1339  read_climoz = 0 ! default value
1340  call getin('read_climoz', read_climoz)
1341
1342  carbon_cycle_tr_omp=.FALSE.
1343  CALL getin('carbon_cycle_tr',carbon_cycle_tr_omp)
1344
1345  carbon_cycle_cpl_omp=.FALSE.
1346  CALL getin('carbon_cycle_cpl',carbon_cycle_cpl_omp)
1347
1348!$OMP END MASTER
1349!$OMP BARRIER
1350
1351    R_ecc = R_ecc_omp
1352    R_peri = R_peri_omp
1353    R_incl = R_incl_omp
1354    solaire = solaire_omp
1355    co2_ppm = co2_ppm_omp
1356    RCO2 = RCO2_omp
1357    CH4_ppb = CH4_ppb_omp
1358    RCH4 = RCH4_omp
1359    N2O_ppb = N2O_ppb_omp
1360    RN2O = RN2O_omp
1361    CFC11_ppt = CFC11_ppt_omp
1362    RCFC11 = RCFC11_omp
1363    CFC12_ppt = CFC12_ppt_omp
1364    RCFC12 = RCFC12_omp
1365
1366    cycle_diurne = cycle_diurne_omp
1367    soil_model = soil_model_omp
1368    new_oliq = new_oliq_omp
1369    ok_orodr = ok_orodr_omp
1370    ok_orolf = ok_orolf_omp
1371    ok_limitvrai = ok_limitvrai_omp
1372    nbapp_rad = nbapp_rad_omp
1373    iflag_con = iflag_con_omp
1374
1375    epmax = epmax_omp
1376    ok_adj_ema = ok_adj_ema_omp
1377    iflag_clw = iflag_clw_omp
1378    cld_lc_lsc = cld_lc_lsc_omp
1379    cld_lc_con = cld_lc_con_omp
1380    cld_tau_lsc = cld_tau_lsc_omp
1381    cld_tau_con = cld_tau_con_omp
1382    ffallv_lsc = ffallv_lsc_omp
1383    ffallv_con = ffallv_con_omp
1384    coef_eva = coef_eva_omp
1385    reevap_ice = reevap_ice_omp
1386    iflag_pdf = iflag_pdf_omp
1387    solarlong0 = solarlong0_omp
1388    qsol0 = qsol0_omp
1389    inertie_sol = inertie_sol_omp
1390    inertie_ice = inertie_ice_omp
1391    inertie_sno = inertie_sno_omp
1392    rad_froid = rad_froid_omp
1393    rad_chau1 = rad_chau1_omp
1394    rad_chau2 = rad_chau2_omp
1395    t_glace_min = t_glace_min_omp
1396    t_glace_max = t_glace_max_omp
1397    top_height = top_height_omp
1398    overlap = overlap_omp
1399    cdmmax = cdmmax_omp
1400    cdhmax = cdhmax_omp
1401    ksta = ksta_omp
1402    ksta_ter = ksta_ter_omp
1403    ok_kzmin = ok_kzmin_omp
1404    fmagic = fmagic_omp
1405    pmagic = pmagic_omp
1406    iflag_pbl = iflag_pbl_omp
1407    lev_histhf = lev_histhf_omp
1408    lev_histday = lev_histday_omp
1409    lev_histmth = lev_histmth_omp
1410    lev_histins = lev_histins_omp
1411    lev_histLES = lev_histLES_omp
1412
1413    type_ocean = type_ocean_omp
1414    version_ocean = version_ocean_omp
1415    ok_veget = ok_veget_omp
1416    ok_newmicro = ok_newmicro_omp
1417    ok_journe = ok_journe_omp
1418    ok_hf = ok_hf_omp
1419    ok_mensuel = ok_mensuel_omp
1420    ok_instan = ok_instan_omp
1421    freq_ISCCP = freq_ISCCP_omp
1422    ecrit_ISCCP = ecrit_ISCCP_omp
1423    freq_COSP = freq_COSP_omp
1424    ok_ade = ok_ade_omp
1425    ok_aie = ok_aie_omp
1426    aerosol_couple = aerosol_couple_omp
1427    flag_aerosol=flag_aerosol_omp
1428    new_aod=new_aod_omp
1429    aer_type = aer_type_omp
1430    bl95_b0 = bl95_b0_omp
1431    bl95_b1 = bl95_b1_omp
1432    fact_cldcon = fact_cldcon_omp
1433    facttemps = facttemps_omp
1434    ratqsbas = ratqsbas_omp
1435    ratqshaut = ratqshaut_omp
1436    tau_ratqs = tau_ratqs_omp
1437
1438    iflag_radia = iflag_radia_omp
1439    iflag_rrtm = iflag_rrtm_omp
1440    iflag_cldcon = iflag_cldcon_omp
1441    iflag_ratqs = iflag_ratqs_omp
1442    ip_ebil_phy = ip_ebil_phy_omp
1443    iflag_thermals = iflag_thermals_omp
1444    iflag_thermals_ed = iflag_thermals_ed_omp
1445    iflag_thermals_optflux = iflag_thermals_optflux_omp
1446    nsplit_thermals = nsplit_thermals_omp
1447    tau_thermals = tau_thermals_omp
1448    iflag_coupl = iflag_coupl_omp
1449    iflag_clos = iflag_clos_omp
1450    iflag_wake = iflag_wake_omp
1451    iflag_cvl_sigd = iflag_cvl_sigd_omp
1452    type_run = type_run_omp
1453    ok_isccp = ok_isccp_omp
1454    ok_cosp = ok_cosp_omp
1455    seuil_inversion=seuil_inversion_omp
1456    lonmin_ins = lonmin_ins_omp
1457    lonmax_ins = lonmax_ins_omp
1458    latmin_ins = latmin_ins_omp
1459    latmax_ins = latmax_ins_omp
1460    ecrit_hf   = ecrit_hf_omp
1461    ecrit_ins   = ecrit_ins_omp
1462    ecrit_day = ecrit_day_omp
1463    ecrit_mth = ecrit_mth_omp
1464    ecrit_tra = ecrit_tra_omp
1465    ecrit_reg = ecrit_reg_omp
1466    cvl_corr = cvl_corr_omp
1467    ok_lic_melt = ok_lic_melt_omp
1468    f_cdrag_ter=f_cdrag_ter_omp
1469    f_cdrag_oce=f_cdrag_oce_omp
1470    f_rugoro=f_rugoro_omp
1471    supcrit1 = supcrit1_omp
1472    supcrit2 = supcrit2_omp
1473    iflag_mix = iflag_mix_omp
1474    scut = scut_omp
1475    qqa1 = qqa1_omp
1476    qqa2 = qqa2_omp
1477    gammas = gammas_omp
1478    Fmax = Fmax_omp
1479    alphas = alphas_omp
1480    ok_strato = ok_strato_omp
1481    ok_hines = ok_hines_omp
1482    ok_LES = ok_LES_omp
1483    ecrit_LES = ecrit_LES_omp
1484    carbon_cycle_tr = carbon_cycle_tr_omp
1485    carbon_cycle_cpl = carbon_cycle_cpl_omp
1486
1487! Test of coherence between type_ocean and version_ocean
1488    IF (type_ocean=='couple' .AND. (version_ocean/='opa8' .AND. version_ocean/='nemo') ) THEN
1489       WRITE(numout,*)' ERROR version_ocean=',version_ocean,' not valid in coupled configuration'
1490       CALL abort_gcm('conf_phys','version_ocean not valid',1)
1491    END IF
1492
1493    IF (type_ocean=='slab' .AND. version_ocean=='xxxxxx') THEN
1494       version_ocean='sicOBS'
1495    ELSE IF (type_ocean=='slab' .AND. version_ocean/='sicOBS') THEN
1496       WRITE(numout,*)' ERROR version_ocean=',version_ocean,' not valid with slab ocean'
1497       CALL abort_gcm('conf_phys','version_ocean not valid',1)
1498    END IF
1499
1500! Test sur new_aod. Ce flag permet de retrouver les resultats de l'AR4
1501! il n'est utilisable que lors du couplage avec le SO4 seul
1502    IF (ok_ade .OR. ok_aie) THEN
1503       IF ( .NOT. new_aod .AND.  flag_aerosol .NE. 1) THEN
1504          CALL abort_gcm('conf_phys','new_aod=.FALSE. not compatible avec flag_aerosol=1',1)
1505       END IF
1506    END IF
1507
1508!$OMP MASTER
1509
1510  write(numout,*)' ##############################################'
1511  write(numout,*)' Configuration des parametres de la physique: '
1512  write(numout,*)' Type ocean = ', type_ocean
1513  write(numout,*)' Version ocean = ', version_ocean
1514  write(numout,*)' Config veget = ', ok_veget
1515  write(numout,*)' Sortie journaliere = ', ok_journe
1516  write(numout,*)' Sortie haute frequence = ', ok_hf
1517  write(numout,*)' Sortie mensuelle = ', ok_mensuel
1518  write(numout,*)' Sortie instantanee = ', ok_instan
1519  write(numout,*)' Frequence appel simulateur ISCCP, freq_ISCCP =', freq_ISCCP
1520  write(numout,*)' Frequence appel simulateur ISCCP, ecrit_ISCCP =', ecrit_ISCCP
1521  write(numout,*)' Frequence appel simulateur COSP, freq_COSP =', freq_COSP
1522  write(numout,*)' Sortie bilan d''energie, ip_ebil_phy =', ip_ebil_phy
1523  write(numout,*)' Excentricite = ',R_ecc
1524  write(numout,*)' Equinoxe = ',R_peri
1525  write(numout,*)' Inclinaison =',R_incl
1526  write(numout,*)' Constante solaire =',solaire
1527  write(numout,*)' co2_ppm =',co2_ppm
1528  write(numout,*)' RCO2 = ',RCO2
1529  write(numout,*)' CH4_ppb =',CH4_ppb,' RCH4 = ',RCH4
1530  write(numout,*)' N2O_ppb =',N2O_ppb,' RN2O =  ',RN2O
1531  write(numout,*)' CFC11_ppt=',CFC11_ppt,' RCFC11 =  ',RCFC11
1532  write(numout,*)' CFC12_ppt=',CFC12_ppt,' RCFC12 =  ',RCFC12
1533  write(numout,*)' cvl_corr=', cvl_corr
1534  write(numout,*)'ok_lic_melt=', ok_lic_melt
1535  write(numout,*)'cycle_diurne=',cycle_diurne
1536  write(numout,*)'soil_model=',soil_model
1537  write(numout,*)'new_oliq=',new_oliq
1538  write(numout,*)'ok_orodr=',ok_orodr
1539  write(numout,*)'ok_orolf=',ok_orolf
1540  write(numout,*)'ok_limitvrai=',ok_limitvrai
1541  write(numout,*)'nbapp_rad=',nbapp_rad
1542  write(numout,*)'iflag_con=',iflag_con
1543  write(numout,*)' epmax = ', epmax
1544  write(numout,*)' ok_adj_ema = ', ok_adj_ema
1545  write(numout,*)' iflag_clw = ', iflag_clw
1546  write(numout,*)' cld_lc_lsc = ', cld_lc_lsc
1547  write(numout,*)' cld_lc_con = ', cld_lc_con
1548  write(numout,*)' cld_tau_lsc = ', cld_tau_lsc
1549  write(numout,*)' cld_tau_con = ', cld_tau_con
1550  write(numout,*)' ffallv_lsc = ', ffallv_lsc
1551  write(numout,*)' ffallv_con = ', ffallv_con
1552  write(numout,*)' coef_eva = ', coef_eva
1553  write(numout,*)' reevap_ice = ', reevap_ice
1554  write(numout,*)' iflag_pdf = ', iflag_pdf
1555  write(numout,*)' iflag_cldcon = ', iflag_cldcon
1556  write(numout,*)' iflag_radia = ', iflag_radia
1557  write(numout,*)' iflag_rrtm = ', iflag_rrtm
1558  write(numout,*)' iflag_ratqs = ', iflag_ratqs
1559  write(numout,*)' seuil_inversion = ', seuil_inversion
1560  write(numout,*)' fact_cldcon = ', fact_cldcon
1561  write(numout,*)' facttemps = ', facttemps
1562  write(numout,*)' ok_newmicro = ',ok_newmicro
1563  write(numout,*)' ratqsbas = ',ratqsbas
1564  write(numout,*)' ratqshaut = ',ratqshaut
1565  write(numout,*)' tau_ratqs = ',tau_ratqs
1566  write(numout,*)' top_height = ',top_height
1567  write(numout,*)' rad_froid = ',rad_froid
1568  write(numout,*)' rad_chau1 = ',rad_chau1
1569  write(numout,*)' rad_chau2 = ',rad_chau2
1570  write(numout,*)' t_glace_min = ',t_glace_min
1571  write(numout,*)' t_glace_max = ',t_glace_max
1572  write(numout,*)' overlap = ',overlap
1573  write(numout,*)' cdmmax = ',cdmmax
1574  write(numout,*)' cdhmax = ',cdhmax
1575  write(numout,*)' ksta = ',ksta
1576  write(numout,*)' ksta_ter = ',ksta_ter
1577  write(numout,*)' ok_kzmin = ',ok_kzmin
1578  write(numout,*)' fmagic = ',fmagic
1579  write(numout,*)' pmagic = ',pmagic
1580  write(numout,*)' ok_ade = ',ok_ade
1581  write(numout,*)' ok_aie = ',ok_aie
1582  write(numout,*)' aerosol_couple = ', aerosol_couple
1583  write(numout,*)' flag_aerosol = ', flag_aerosol
1584  write(numout,*)' new_aod = ', new_aod
1585  write(numout,*)' aer_type = ',aer_type
1586  write(numout,*)' bl95_b0 = ',bl95_b0
1587  write(numout,*)' bl95_b1 = ',bl95_b1
1588  write(numout,*)' lev_histhf = ',lev_histhf
1589  write(numout,*)' lev_histday = ',lev_histday
1590  write(numout,*)' lev_histmth = ',lev_histmth
1591  write(numout,*)' lev_histins = ',lev_histins
1592  write(numout,*)' lev_histLES = ',lev_histLES
1593  write(numout,*)' iflag_pbl = ', iflag_pbl
1594  write(numout,*)' iflag_thermals = ', iflag_thermals
1595  write(numout,*)' iflag_thermals_ed = ', iflag_thermals_ed
1596  write(numout,*)' iflag_thermals_optflux = ', iflag_thermals_optflux
1597  write(numout,*)' iflag_clos = ', iflag_clos
1598  write(numout,*)' type_run = ',type_run
1599  write(numout,*)' ok_isccp = ',ok_isccp
1600  write(numout,*)' ok_cosp = ',ok_cosp
1601  write(numout,*)' solarlong0 = ', solarlong0
1602  write(numout,*)' qsol0 = ', qsol0
1603  write(numout,*)' inertie_sol = ', inertie_sol
1604  write(numout,*)' inertie_ice = ', inertie_ice
1605  write(numout,*)' inertie_sno = ', inertie_sno
1606  write(numout,*)' f_cdrag_ter = ',f_cdrag_ter
1607  write(numout,*)' f_cdrag_oce = ',f_cdrag_oce
1608  write(numout,*)' f_rugoro = ',f_rugoro
1609  write(numout,*)' supcrit1 = ', supcrit1
1610  write(numout,*)' supcrit2 = ', supcrit2
1611  write(numout,*)' iflag_mix = ', iflag_mix
1612  write(numout,*)' scut = ', scut
1613  write(numout,*)' qqa1 = ', qqa1
1614  write(numout,*)' qqa2 = ', qqa2
1615  write(numout,*)' gammas = ', gammas
1616  write(numout,*)' Fmax = ', Fmax
1617  write(numout,*)' alphas = ', alphas
1618
1619  write(numout,*)' lonmin lonmax latmin latmax bilKP_ins =',&
1620   lonmin_ins, lonmax_ins, latmin_ins, latmax_ins
1621  write(numout,*)' ecrit_ hf, ins, day, mth, reg, tra, ISCCP, LES',&
1622   ecrit_hf, ecrit_ins, ecrit_day, ecrit_mth, ecrit_reg, ecrit_tra, ecrit_ISCCP, ecrit_LES
1623
1624  write(numout,*) 'ok_strato = ', ok_strato
1625  write(numout,*) 'ok_hines = ',  ok_hines
1626  write(numout,*) 'read_climoz = ', read_climoz
1627  write(numout,*) 'carbon_cycle_tr = ', carbon_cycle_tr
1628  write(numout,*) 'carbon_cycle_cpl = ', carbon_cycle_cpl
1629 
1630!$OMP END MASTER
1631
1632  return
1633 
1634  end subroutine conf_phys
1635
1636end module conf_phys_m
1637!
1638!#################################################################
1639!
1640
1641   subroutine conf_interface(tau_calv)
1642
1643   use IOIPSL
1644   implicit none
1645
1646! Configuration de l'interace atm/surf
1647!
1648! tau_calv:    temps de relaxation pour la fonte des glaciers
1649
1650  REAL          :: tau_calv
1651  REAL,SAVE     :: tau_calv_omp
1652
1653! Local
1654  integer              :: numout = 6
1655!
1656!Config Key  = tau_calv
1657!Config Desc = temps de relaxation pour fonte des glaciers en jours
1658!Config Def  = 1 an
1659!Config Help =
1660!
1661  tau_calv_omp = 360.*10.
1662!$OMP MASTER
1663  call getin('tau_calv',tau_calv_omp)
1664!$OMP END MASTER
1665!$OMP BARRIER
1666
1667  tau_calv=tau_calv_omp
1668 
1669!$OMP MASTER
1670  write(numout,*)' ##############################################'
1671  WRITE(numout,*)' Configuration de l''interface atm/surfaces  : '
1672  WRITE(numout,*)' tau_calv = ',tau_calv
1673!$OMP END MASTER
1674
1675  return
1676
1677  end subroutine conf_interface
Note: See TracBrowser for help on using the repository browser.