source: LMDZ4/branches/LMDZ4V5.0-dev/libf/phylmd/conf_phys.F90 @ 1322

Last change on this file since 1322 was 1322, checked in by Laurent Fairhead, 14 years ago

Improvements concerning wake parametrisation (from JYG, NR, IT, with more to come).
Alp_offset is read in form physiq.def file


Améliorations à la paramétrisation des poches froides (de JYG, NR, IT, d'autres
sont à venir)
Alp_offset est rajouté à la liste des paramètres lus dans physiq.def

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