source: LMDZ5/trunk/libf/phylmd/conf_phys.F90 @ 1525

Last change on this file since 1525 was 1525, checked in by idelkadi, 13 years ago

Modifications concerning the cloud scheme:

  1. In newmicro, it now possible to read a min and max effective radius of ice particles from physiq.def : rei_min and rei_max which were initially set to 3.5 and 61.29 microns in the code.

concerns : conf_phys.F90, nuage.h, newmicro.F

  1. In physiq.F, in case of combination of iflag_cldcon>=5 (A. Jam cloud scheme) and iflag_coupl=5

concerns : physiq.F and thermcell_main.F90

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