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

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