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

Last change on this file since 1376 was 1376, checked in by musat, 14 years ago

Output all tracers defined in .def in hist files with dynamic
declaration of LMDZ atmospheric tracers' output levels
Add 6 pseudo-water tracers with and without transport by boundary layer
IM

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 44.7 KB
Line 
1
2!
3! $Id: conf_phys.F90 1376 2010-05-05 13:23:18Z musat $
4!
5!
6!
7module conf_phys_m
8
9   implicit none
10
11contains
12
13  subroutine conf_phys(ok_journe, ok_mensuel, ok_instan, ok_hf, &
14                       ok_LES,&
15                       solarlong0,seuil_inversion, &
16                       fact_cldcon, facttemps,ok_newmicro,iflag_radia,&
17                       iflag_cldcon, &
18                       iflag_ratqs,ratqsbas,ratqshaut,tau_ratqs, &
19                       ok_ade, ok_aie, aerosol_couple, &
20                       flag_aerosol, new_aod, &
21                       bl95_b0, bl95_b1,&
22                       iflag_thermals,nsplit_thermals,tau_thermals, &
23                       iflag_thermals_ed,iflag_thermals_optflux, &
24                       iflag_coupl,iflag_clos,iflag_wake, read_climoz, &
25                       alp_offset)
26
27   use IOIPSL
28   USE surface_data
29   USE phys_cal_mod
30   USE carbon_cycle_mod, ONLY : carbon_cycle_tr, carbon_cycle_cpl
31   use control_mod
32
33 include "conema3.h"
34 include "fisrtilp.h"
35 include "nuage.h"
36 include "YOMCST.h"
37 include "YOMCST2.h"
38!IM : on inclut/initialise les taux de CH4, N2O, CFC11 et CFC12
39include "clesphys.h"
40include "compbl.h"
41include "comsoil.h"
42!
43! Configuration de la "physique" de LMDZ a l'aide de la fonction
44! GETIN de IOIPSL
45!
46! LF 05/2001
47!
48
49!
50! type_ocean:      type d'ocean (force, slab, couple)
51! version_ocean:   version d'ocean (opa8/nemo pour type_ocean=couple ou
52!                                   sicOBS pour type_ocean=slab)
53! ok_veget:   type de modele de vegetation
54! ok_journe:  sorties journalieres
55! ok_hf:  sorties haute frequence
56! ok_mensuel: sorties mensuelles
57! ok_instan:  sorties instantanees
58! ok_ade, ok_aie: apply or not aerosol direct and indirect effects
59! bl95_b*: parameters in the formula to link CDNC to aerosol mass conc
60!
61
62
63! Sortie:
64  logical              :: ok_newmicro
65  integer              :: iflag_radia
66  logical              :: ok_journe, ok_mensuel, ok_instan, ok_hf
67  logical              :: ok_LES
68  LOGICAL              :: ok_ade, ok_aie, aerosol_couple
69  INTEGER              :: flag_aerosol
70  LOGICAL              :: new_aod
71  REAL                 :: bl95_b0, bl95_b1
72  real                 :: fact_cldcon, facttemps,ratqsbas,ratqshaut,tau_ratqs
73  integer              :: iflag_cldcon
74  integer              :: iflag_ratqs
75
76  character (len = 6),SAVE  :: type_ocean_omp, version_ocean_omp, ocean_omp
77  CHARACTER(len = 8),SAVE   :: aer_type_omp
78  logical,SAVE              :: ok_veget_omp, ok_newmicro_omp
79  logical,SAVE        :: ok_journe_omp, ok_mensuel_omp, ok_instan_omp, ok_hf_omp       
80  logical,SAVE        :: ok_LES_omp   
81  LOGICAL,SAVE        :: ok_ade_omp, ok_aie_omp, aerosol_couple_omp
82  INTEGER, SAVE       :: flag_aerosol_omp
83  LOGICAL, SAVE       :: new_aod_omp
84  REAL,SAVE           :: bl95_b0_omp, bl95_b1_omp
85  REAL,SAVE           :: freq_ISCCP_omp, ecrit_ISCCP_omp
86  REAL,SAVE           :: freq_COSP_omp
87  real,SAVE           :: fact_cldcon_omp, facttemps_omp,ratqsbas_omp
88  real,SAVE           :: ratqshaut_omp
89  real,SAVE           :: tau_ratqs_omp
90  integer,SAVE        :: iflag_radia_omp
91  integer,SAVE        :: iflag_rrtm_omp
92  integer,SAVE        :: iflag_cldcon_omp, ip_ebil_phy_omp
93  integer,SAVE        :: iflag_ratqs_omp
94
95  Real,SAVE           :: f_cdrag_ter_omp,f_cdrag_oce_omp
96  Real,SAVE           :: f_rugoro_omp   
97
98! Local
99  integer              :: numout = 6
100  real                 :: zzz
101
102  real :: seuil_inversion
103  real,save :: seuil_inversion_omp
104
105  integer :: iflag_thermals,nsplit_thermals
106  integer,SAVE :: iflag_thermals_ed_omp,iflag_thermals_optflux_omp
107  integer :: iflag_thermals_ed,iflag_thermals_optflux
108  integer,SAVE :: iflag_thermals_omp,nsplit_thermals_omp
109  real :: tau_thermals
110  real,save :: tau_thermals_omp
111  integer :: iflag_coupl
112  integer :: iflag_clos
113  integer :: iflag_wake
114  real :: alp_offset
115  REAL, SAVE :: alp_offset_omp
116  integer,SAVE :: iflag_coupl_omp,iflag_clos_omp,iflag_wake_omp
117  integer,SAVE :: iflag_cvl_sigd_omp
118  REAL, SAVE :: supcrit1_omp, supcrit2_omp
119  INTEGER, SAVE :: iflag_mix_omp
120  real, save :: scut_omp, qqa1_omp, qqa2_omp, gammas_omp, Fmax_omp, alphas_omp
121
122  REAL,SAVE :: R_ecc_omp,R_peri_omp,R_incl_omp,solaire_omp,co2_ppm_omp
123  REAL,SAVE :: RCO2_omp,CH4_ppb_omp,RCH4_omp,N2O_ppb_omp,RN2O_omp,CFC11_ppt_omp
124  REAL,SAVE :: RCFC11_omp,CFC12_ppt_omp,RCFC12_omp,epmax_omp
125  LOGICAL,SAVE :: ok_adj_ema_omp
126  INTEGER,SAVE :: iflag_clw_omp
127  REAL,SAVE :: cld_lc_lsc_omp,cld_lc_con_omp,cld_tau_lsc_omp,cld_tau_con_omp
128  REAL,SAVE :: ffallv_lsc_omp, ffallv_con_omp,coef_eva_omp
129  LOGICAL,SAVE :: reevap_ice_omp
130  INTEGER,SAVE :: iflag_pdf_omp
131  REAL,SAVE :: rad_froid_omp, rad_chau1_omp, rad_chau2_omp
132  REAL,SAVE :: t_glace_min_omp, t_glace_max_omp
133  REAL,SAVE :: inertie_sol_omp,inertie_sno_omp,inertie_ice_omp
134  REAL,SAVE :: qsol0_omp
135  REAL      :: solarlong0
136  REAL,SAVE :: solarlong0_omp
137  INTEGER,SAVE :: top_height_omp,overlap_omp
138  REAL,SAVE :: cdmmax_omp,cdhmax_omp,ksta_omp,ksta_ter_omp
139  LOGICAL,SAVE :: ok_kzmin_omp
140  REAL, SAVE ::  fmagic_omp, pmagic_omp
141  INTEGER,SAVE :: iflag_pbl_omp,lev_histhf_omp,lev_histday_omp,lev_histmth_omp
142  Integer, save :: lev_histins_omp, lev_histLES_omp
143  INTEGER, SAVE :: lev_histdayNMC_omp
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  REAL,SAVE :: lonmin_ins_omp, lonmax_ins_omp, latmin_ins_omp, latmax_ins_omp
149  REAL,SAVE :: ecrit_hf_omp, ecrit_day_omp, ecrit_mth_omp, ecrit_reg_omp
150  REAL,SAVE :: ecrit_ins_omp
151  REAL,SAVE :: ecrit_LES_omp
152  REAL,SAVE :: ecrit_tra_omp
153  INTEGER, SAVE :: nseuil_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!
862!Config Key  = top_height
863!Config Desc =
864!Config Def  = 3
865!Config Help =
866!
867  top_height_omp = 3
868  call getin('top_height',top_height_omp)
869
870!
871!Config Key  = overlap
872!Config Desc =
873!Config Def  = 3
874!Config Help =
875!
876  overlap_omp = 3
877  call getin('overlap',overlap_omp)
878
879
880!
881!
882!Config Key  = cdmmax
883!Config Desc =
884!Config Def  = 1.3E-3
885!Config Help =
886!
887  cdmmax_omp = 1.3E-3
888  call getin('cdmmax',cdmmax_omp)
889
890!
891!Config Key  = cdhmax
892!Config Desc =
893!Config Def  = 1.1E-3
894!Config Help =
895!
896  cdhmax_omp = 1.1E-3
897  call getin('cdhmax',cdhmax_omp)
898
899!261103
900!
901!Config Key  = ksta
902!Config Desc =
903!Config Def  = 1.0e-10
904!Config Help =
905!
906  ksta_omp = 1.0e-10
907  call getin('ksta',ksta_omp)
908
909!
910!Config Key  = ksta_ter
911!Config Desc =
912!Config Def  = 1.0e-10
913!Config Help =
914!
915  ksta_ter_omp = 1.0e-10
916  call getin('ksta_ter',ksta_ter_omp)
917
918!
919!Config Key  = ok_kzmin
920!Config Desc =
921!Config Def  = .true.
922!Config Help =
923!
924  ok_kzmin_omp = .true.
925  call getin('ok_kzmin',ok_kzmin_omp)
926
927!
928!Config Key  = fmagic
929!Config Desc = additionnal multiplicator factor used for albedo
930!Config Def  = 1.
931!Config Help = additionnal multiplicator factor used in albedo.F
932!
933  fmagic_omp = 1.
934  call getin('fmagic',fmagic_omp)
935
936!
937!Config Key  = pmagic
938!Config Desc = additional factor used for albedo
939!Config Def  = 0.
940!Config Help = additional factor used in albedo.F
941!
942  pmagic_omp = 0.
943  call getin('pmagic',pmagic_omp)
944
945
946!Config Key = ok_lic_melt
947!Config Desc = Prise en compte de la fonte de la calotte dans le bilan d'eau
948!Config Def  = .false.
949!Config Help = mettre a .false. pour assurer la conservation en eau
950  ok_lic_melt_omp = .false.
951  call getin('ok_lic_melt', ok_lic_melt_omp)
952
953!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
954! PARAMETER FOR THE PLANETARY BOUNDARY LAYER
955!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
956
957!Config Key  = iflag_pbl
958!Config Desc =
959!Config Def  = 1
960!Config Help =
961!
962  iflag_pbl_omp = 1
963  call getin('iflag_pbl',iflag_pbl_omp)
964!
965!Config Key  = iflag_thermals
966!Config Desc =
967!Config Def  = 0
968!Config Help =
969!
970  iflag_thermals_omp = 0
971  call getin('iflag_thermals',iflag_thermals_omp)
972!
973!
974!Config Key  = iflag_thermals_ed
975!Config Desc =
976!Config Def  = 0
977!Config Help =
978!
979  iflag_thermals_ed_omp = 0
980  call getin('iflag_thermals_ed',iflag_thermals_ed_omp)
981!
982!
983!Config Key  = iflag_thermals_optflux
984!Config Desc =
985!Config Def  = 0
986!Config Help =
987!
988  iflag_thermals_optflux_omp = 0
989  call getin('iflag_thermals_optflux',iflag_thermals_optflux_omp)
990!
991!
992!Config Key  = nsplit_thermals
993!Config Desc =
994!Config Def  = 1
995!Config Help =
996!
997  nsplit_thermals_omp = 1
998  call getin('nsplit_thermals',nsplit_thermals_omp)
999
1000!Config Key  = tau_thermals
1001!Config Desc =
1002!Config Def  = 0.
1003!Config Help =
1004!
1005  tau_thermals_omp = 0.
1006  call getin('tau_thermals',tau_thermals_omp)
1007
1008!
1009!Config Key  = iflag_coupl
1010!Config Desc =
1011!Config Def  = 0
1012!Config Help =
1013!
1014  iflag_coupl_omp = 0
1015  call getin('iflag_coupl',iflag_coupl_omp)
1016
1017!
1018!Config Key  = iflag_clos
1019!Config Desc = 
1020!Config Def  = 0
1021!Config Help =
1022!
1023  iflag_clos_omp = 1
1024  call getin('iflag_clos',iflag_clos_omp)
1025!
1026!Config Key  = iflag_cvl_sigd
1027!Config Desc = 
1028!Config Def  = 0
1029!Config Help =
1030!
1031  iflag_cvl_sigd_omp = 0
1032  call getin('iflag_cvl_sigd',iflag_cvl_sigd_omp)
1033
1034!Config Key  = iflag_wake
1035!Config Desc = 
1036!Config Def  = 0
1037!Config Help =
1038!
1039  iflag_wake_omp = 0
1040  call getin('iflag_wake',iflag_wake_omp)
1041
1042!Config Key  = alp_offset
1043!Config Desc = 
1044!Config Def  = 0
1045!Config Help =
1046!
1047  alp_offset_omp = 0.
1048  call getin('alp_offset',alp_offset_omp)
1049
1050!
1051!Config Key  = lev_histhf
1052!Config Desc =
1053!Config Def  = 1
1054!Config Help =
1055!
1056  lev_histhf_omp = 1
1057  call getin('lev_histhf',lev_histhf_omp)
1058
1059!
1060!Config Key  = lev_histday
1061!Config Desc =
1062!Config Def  = 1
1063!Config Help =
1064!
1065  lev_histday_omp = 1
1066  call getin('lev_histday',lev_histday_omp)
1067
1068!
1069!Config Key  = lev_histmth
1070!Config Desc =
1071!Config Def  = 2
1072!Config Help =
1073!
1074  lev_histmth_omp = 2
1075  call getin('lev_histmth',lev_histmth_omp)
1076!
1077!Config Key  = lev_histins
1078!Config Desc =
1079!Config Def  = 1
1080!Config Help =
1081!
1082  lev_histins_omp = 1
1083  call getin('lev_histins',lev_histins_omp)
1084  !
1085!Config Key  = lev_histLES
1086!Config Desc =
1087!Config Def  = 1
1088!Config Help =
1089!
1090  lev_histLES_omp = 1
1091  call getin('lev_histLES',lev_histLES_omp)
1092!
1093!Config Key  = lev_histdayNMC
1094!Config Desc =
1095!Config Def  = 8
1096!Config Help =
1097!
1098  lev_histdayNMC_omp = 8
1099  call getin('lev_histdayNMC',lev_histdayNMC_omp)
1100!
1101!histNMC BEG
1102!Config Key  = freq_outNMC
1103!Config Desc = freq_outNMC(1) = frequence de sortie fichiers histmthNMC
1104!Config Desc = freq_outNMC(2) = frequence de sortie fichiers histdayNMC
1105!Config Desc = freq_outNMC(3) = frequence de sortie fichiers histhfNMC
1106!Config Def  = 2592000., 86400., 21600.
1107!Config Help =
1108!
1109! freq_outNMC_omp(1) = 2592000.
1110  freq_outNMC_omp(1) = mth_len*86400.
1111  freq_outNMC_omp(2) = 86400.
1112  freq_outNMC_omp(3) = 21600.
1113  call getin('freq_outNMC',freq_outNMC_omp)
1114!
1115!Config Key  = freq_calNMC
1116!Config Desc = freq_calNMC(1) = frequence de calcul fichiers histmthNMC
1117!Config Desc = freq_calNMC(2) = frequence de calcul fichiers histdayNMC
1118!Config Desc = freq_calNMC(3) = frequence de calcul fichiers histhfNMC
1119!Config Def  = pasphys
1120!Config Help =
1121!
1122  freq_calNMC_omp(1) = pasphys
1123  freq_calNMC_omp(2) = pasphys
1124  freq_calNMC_omp(3) = pasphys
1125  call getin('freq_calNMC',freq_calNMC_omp)
1126!
1127!Config Key  = type_run
1128!Config Desc =
1129!Config Def  = 'AMIP'/'CFMIP'  ou 'CLIM'/'ENSP'
1130!Config Help =
1131!
1132  type_run_omp = 'AMIP'
1133  call getin('type_run',type_run_omp)
1134
1135!
1136!Config Key  = ok_isccp
1137!Config Desc =
1138!Config Def  = .true.
1139!Config Help =
1140!
1141! ok_isccp = .true.
1142  ok_isccp_omp = .false.
1143  call getin('ok_isccp',ok_isccp_omp)
1144
1145!
1146!Config Key  = ok_cosp
1147!Config Desc =
1148!Config Def  = .false.
1149!Config Help =
1150!
1151  ok_cosp_omp = .false.
1152  call getin('ok_cosp',ok_cosp_omp)
1153
1154!
1155! coordonnees (lonmin_ins, lonmax_ins, latmin_ins, latmax_ins) pour la zone
1156! avec sorties instantannees tous les pas de temps de la physique => "histbilKP_ins.nc"
1157!
1158!Config Key  = lonmin_ins
1159!Config Desc = 100. 
1160!Config Def  = longitude minimale sorties "bilKP_ins"
1161!Config Help =
1162!
1163   lonmin_ins_omp = 100.
1164   call getin('lonmin_ins',lonmin_ins_omp)
1165!
1166!Config Key  = lonmax_ins
1167!Config Desc = 130.
1168!Config Def  = longitude maximale sorties "bilKP_ins"
1169!Config Help =
1170!
1171   lonmax_ins_omp = 130.
1172   call getin('lonmax_ins',lonmax_ins_omp)
1173!
1174!Config Key  = latmin_ins
1175!Config Desc = -20. 
1176!Config Def  = latitude minimale sorties "bilKP_ins"
1177!Config Help =
1178!
1179   latmin_ins_omp = -20.
1180   call getin('latmin_ins',latmin_ins_omp)
1181!
1182!Config Key  = latmax_ins
1183!Config Desc = 20.
1184!Config Def  = latitude maximale sorties "bilKP_ins"
1185!Config Help =
1186!
1187   latmax_ins_omp = 20.
1188   call getin('latmax_ins',latmax_ins_omp)
1189!
1190!Config Key  = ecrit_hf
1191!Config Desc =
1192!Config Def  = 1./8. !toutes les 3h
1193!Config Help =
1194!
1195  ecrit_hf_omp = 1./8.
1196  call getin('ecrit_hf',ecrit_hf_omp)
1197!
1198!Config Key  = ecrit_ins
1199!Config Desc =
1200!Config Def  = 1./48. ! toutes les 1/2 h
1201!Config Help =
1202!
1203  ecrit_ins_omp = 1./48.
1204  call getin('ecrit_ins',ecrit_ins_omp)
1205!
1206!Config Key  = ecrit_day
1207!Config Desc =
1208!Config Def  = 1.0 !tous les jours
1209!Config Help = nombre de jours pour ecriture fichier histday.nc
1210!
1211  ecrit_day_omp = 1.0
1212  call getin('ecrit_day',ecrit_day_omp)
1213!
1214!Config Key  = ecrit_mth
1215!Config Desc =
1216!Config Def  = 30. !tous les 30jours (1 fois par mois)
1217!Config Help =
1218!
1219  ecrit_mth_omp = 30.
1220  call getin('ecrit_mth',ecrit_mth_omp)
1221!
1222!Config Key  = ecrit_tra
1223!Config Desc =
1224!Config Def  = 30. !tous les 30jours (1 fois par mois)
1225!Config Help =
1226!
1227  ecrit_tra_omp = 30.
1228  call getin('ecrit_tra',ecrit_tra_omp)
1229!
1230!Config Key  = nseuil
1231!Config Desc = Numero du traceur a partir duquel on ne transporte
1232!              pas par convection
1233!Config Def  = 7 !a partir du numero 7 pour les pseudo-traceurs de Remy
1234!Config Help =
1235!
1236  nseuil_omp = 7
1237  call getin('nseuil',nseuil_omp)
1238!
1239!
1240!Config Key  = ecrit_reg
1241!Config Desc =
1242!Config Def  = 0.25  !4 fois par jour
1243!Config Help =
1244!
1245  ecrit_reg_omp = 0.25   !4 fois par jour
1246  call getin('ecrit_reg',ecrit_reg_omp)
1247!
1248!
1249!
1250! PARAMETRES CDRAG
1251!
1252!Config Key  = f_cdrag_ter
1253!Config Desc =
1254!Config Def  = 0.8
1255!Config Help =
1256!
1257  f_cdrag_ter_omp = 0.8
1258  call getin('f_cdrag_ter',f_cdrag_ter_omp)
1259!
1260!Config Key  = f_cdrag_oce
1261!Config Desc =
1262!Config Def  = 0.8
1263!Config Help =
1264!
1265  f_cdrag_oce_omp = 0.8
1266  call getin('f_cdrag_oce',f_cdrag_oce_omp)
1267!
1268! RUGORO
1269!Config Key  = f_rugoro
1270!Config Desc =
1271!Config Def  = 0.
1272!Config Help =
1273!
1274  f_rugoro_omp = 0.
1275  call getin('f_rugoro',f_rugoro_omp)
1276
1277! PARAMETERS FOR CONVECTIVE INHIBITION BY TROPOS. DRYNESS
1278!
1279!Config Key  = supcrit1
1280!Config Desc =
1281!Config Def  = .540
1282!Config Help =
1283!
1284  supcrit1_omp = .540
1285  call getin('supcrit1',supcrit1_omp)
1286
1287!
1288!Config Key  = supcrit2
1289!Config Desc =
1290!Config Def  = .600
1291!Config Help =
1292!
1293  supcrit2_omp = .600
1294  call getin('supcrit2',supcrit2_omp)
1295
1296!
1297! PARAMETERS FOR THE MIXING DISTRIBUTION
1298!
1299!
1300!Config Key  = iflag_mix
1301!Config Desc =
1302!Config Def  = 1
1303!Config Help =
1304!
1305  iflag_mix_omp = 1
1306  call getin('iflag_mix',iflag_mix_omp)
1307
1308!
1309!Config Key  = scut
1310!Config Desc =
1311!Config Def  = 0.95
1312!Config Help =
1313!
1314  scut_omp = 0.95
1315  call getin('scut',scut_omp)
1316
1317!
1318!Config Key  = qqa1
1319!Config Desc =
1320!Config Def  = 1.0
1321!Config Help =
1322!
1323  qqa1_omp = 1.0
1324  call getin('qqa1',qqa1_omp)
1325
1326!
1327!Config Key  = qqa2
1328!Config Desc =
1329!Config Def  = 0.0
1330!Config Help =
1331!
1332  qqa2_omp = 0.0
1333  call getin('qqa2',qqa2_omp)
1334
1335!
1336!Config Key  = gammas
1337!Config Desc =
1338!Config Def  = 0.05
1339!Config Help =
1340!
1341  gammas_omp = 0.05
1342  call getin('gammas',gammas_omp)
1343
1344!
1345!Config Key  = Fmax
1346!Config Desc =
1347!Config Def  = 0.65
1348!Config Help =
1349!
1350  Fmax_omp = 0.65
1351  call getin('Fmax',Fmax_omp)
1352
1353!
1354!Config Key  = alphas 
1355!Config Desc =
1356!Config Def  = -5.
1357!Config Help =
1358!
1359  alphas_omp = -5.
1360  call getin('alphas',alphas_omp)
1361
1362!Config key = ok_strato
1363!Config  Desc = activation de la version strato
1364!Config  Def  = .FALSE.
1365!Config  Help = active la version stratosphérique de LMDZ de F. Lott
1366
1367  ok_strato_omp=.FALSE.
1368  CALL getin('ok_strato',ok_strato_omp)
1369     
1370!Config  key = ok_hines
1371!Config  Desc = activation de la parametrisation de hines
1372!Config  Def  = .FALSE.
1373!Config  Help = Clefs controlant la parametrization de Hines
1374!               Et la sponge layer (Runs Stratospheriques)
1375
1376  ok_hines_omp=.FALSE.
1377  CALL getin('ok_hines',ok_hines_omp)
1378
1379!Config Key  = OK_LES                                               
1380!Config Desc = Pour des sorties LES                                 
1381!Config Def  = .false.                                             
1382!Config Help = Pour creer le fichier histLES contenant les sorties 
1383!              LES                                                 
1384!                                                                   
1385  ok_LES_omp = .false.                                             
1386  call getin('OK_LES', ok_LES_omp)                                 
1387!
1388!Config Key  = ecrit_LES
1389!Config Desc = Frequence d'ecriture des resultats du LES en nombre de jours;
1390!              par defaut 1., i.e. 1 jour
1391!Config Def  = 1./8.
1392!Config Help = ...
1393!
1394!
1395  ecrit_LES_omp = 1./8.
1396  call getin('ecrit_LES', ecrit_LES_omp)
1397!
1398  read_climoz = 0 ! default value
1399  call getin('read_climoz', read_climoz)
1400
1401  carbon_cycle_tr_omp=.FALSE.
1402  CALL getin('carbon_cycle_tr',carbon_cycle_tr_omp)
1403
1404  carbon_cycle_cpl_omp=.FALSE.
1405  CALL getin('carbon_cycle_cpl',carbon_cycle_cpl_omp)
1406
1407!$OMP END MASTER
1408!$OMP BARRIER
1409
1410    R_ecc = R_ecc_omp
1411    R_peri = R_peri_omp
1412    R_incl = R_incl_omp
1413    solaire = solaire_omp
1414    co2_ppm = co2_ppm_omp
1415    RCO2 = RCO2_omp
1416    CH4_ppb = CH4_ppb_omp
1417    RCH4 = RCH4_omp
1418    N2O_ppb = N2O_ppb_omp
1419    RN2O = RN2O_omp
1420    CFC11_ppt = CFC11_ppt_omp
1421    RCFC11 = RCFC11_omp
1422    CFC12_ppt = CFC12_ppt_omp
1423    RCFC12 = RCFC12_omp
1424
1425    cycle_diurne = cycle_diurne_omp
1426    soil_model = soil_model_omp
1427    new_oliq = new_oliq_omp
1428    ok_orodr = ok_orodr_omp
1429    ok_orolf = ok_orolf_omp
1430    ok_limitvrai = ok_limitvrai_omp
1431    nbapp_rad = nbapp_rad_omp
1432    iflag_con = iflag_con_omp
1433
1434    epmax = epmax_omp
1435    ok_adj_ema = ok_adj_ema_omp
1436    iflag_clw = iflag_clw_omp
1437    cld_lc_lsc = cld_lc_lsc_omp
1438    cld_lc_con = cld_lc_con_omp
1439    cld_tau_lsc = cld_tau_lsc_omp
1440    cld_tau_con = cld_tau_con_omp
1441    ffallv_lsc = ffallv_lsc_omp
1442    ffallv_con = ffallv_con_omp
1443    coef_eva = coef_eva_omp
1444    reevap_ice = reevap_ice_omp
1445    iflag_pdf = iflag_pdf_omp
1446    solarlong0 = solarlong0_omp
1447    qsol0 = qsol0_omp
1448    inertie_sol = inertie_sol_omp
1449    inertie_ice = inertie_ice_omp
1450    inertie_sno = inertie_sno_omp
1451    rad_froid = rad_froid_omp
1452    rad_chau1 = rad_chau1_omp
1453    rad_chau2 = rad_chau2_omp
1454    t_glace_min = t_glace_min_omp
1455    t_glace_max = t_glace_max_omp
1456    top_height = top_height_omp
1457    overlap = overlap_omp
1458    cdmmax = cdmmax_omp
1459    cdhmax = cdhmax_omp
1460    ksta = ksta_omp
1461    ksta_ter = ksta_ter_omp
1462    ok_kzmin = ok_kzmin_omp
1463    fmagic = fmagic_omp
1464    pmagic = pmagic_omp
1465    iflag_pbl = iflag_pbl_omp
1466    lev_histhf = lev_histhf_omp
1467    lev_histday = lev_histday_omp
1468    lev_histmth = lev_histmth_omp
1469    lev_histins = lev_histins_omp
1470    lev_histLES = lev_histLES_omp
1471    lev_histdayNMC = lev_histdayNMC_omp
1472    freq_outNMC(:) = freq_outNMC_omp(:)
1473    freq_calNMC(:) = freq_calNMC_omp(:)
1474
1475    type_ocean = type_ocean_omp
1476    version_ocean = version_ocean_omp
1477    ok_veget = ok_veget_omp
1478    ok_newmicro = ok_newmicro_omp
1479    ok_journe = ok_journe_omp
1480    ok_hf = ok_hf_omp
1481    ok_mensuel = ok_mensuel_omp
1482    ok_instan = ok_instan_omp
1483    freq_ISCCP = freq_ISCCP_omp
1484    ecrit_ISCCP = ecrit_ISCCP_omp
1485    freq_COSP = freq_COSP_omp
1486    ok_ade = ok_ade_omp
1487    ok_aie = ok_aie_omp
1488    aerosol_couple = aerosol_couple_omp
1489    flag_aerosol=flag_aerosol_omp
1490    new_aod=new_aod_omp
1491    aer_type = aer_type_omp
1492    bl95_b0 = bl95_b0_omp
1493    bl95_b1 = bl95_b1_omp
1494    fact_cldcon = fact_cldcon_omp
1495    facttemps = facttemps_omp
1496    ratqsbas = ratqsbas_omp
1497    ratqshaut = ratqshaut_omp
1498    tau_ratqs = tau_ratqs_omp
1499
1500    iflag_radia = iflag_radia_omp
1501    iflag_rrtm = iflag_rrtm_omp
1502    iflag_cldcon = iflag_cldcon_omp
1503    iflag_ratqs = iflag_ratqs_omp
1504    ip_ebil_phy = ip_ebil_phy_omp
1505    iflag_thermals = iflag_thermals_omp
1506    iflag_thermals_ed = iflag_thermals_ed_omp
1507    iflag_thermals_optflux = iflag_thermals_optflux_omp
1508    nsplit_thermals = nsplit_thermals_omp
1509    tau_thermals = tau_thermals_omp
1510    iflag_coupl = iflag_coupl_omp
1511    iflag_clos = iflag_clos_omp
1512    iflag_wake = iflag_wake_omp
1513    alp_offset = alp_offset_omp
1514    iflag_cvl_sigd = iflag_cvl_sigd_omp
1515    type_run = type_run_omp
1516    ok_isccp = ok_isccp_omp
1517    ok_cosp = ok_cosp_omp
1518    seuil_inversion=seuil_inversion_omp
1519    lonmin_ins = lonmin_ins_omp
1520    lonmax_ins = lonmax_ins_omp
1521    latmin_ins = latmin_ins_omp
1522    latmax_ins = latmax_ins_omp
1523    ecrit_hf   = ecrit_hf_omp
1524    ecrit_ins   = ecrit_ins_omp
1525    ecrit_day = ecrit_day_omp
1526    ecrit_mth = ecrit_mth_omp
1527    ecrit_tra = ecrit_tra_omp
1528    nseuil = nseuil_omp
1529    ecrit_reg = ecrit_reg_omp
1530    cvl_corr = cvl_corr_omp
1531    ok_lic_melt = ok_lic_melt_omp
1532    f_cdrag_ter=f_cdrag_ter_omp
1533    f_cdrag_oce=f_cdrag_oce_omp
1534    f_rugoro=f_rugoro_omp
1535    supcrit1 = supcrit1_omp
1536    supcrit2 = supcrit2_omp
1537    iflag_mix = iflag_mix_omp
1538    scut = scut_omp
1539    qqa1 = qqa1_omp
1540    qqa2 = qqa2_omp
1541    gammas = gammas_omp
1542    Fmax = Fmax_omp
1543    alphas = alphas_omp
1544    ok_strato = ok_strato_omp
1545    ok_hines = ok_hines_omp
1546    ok_LES = ok_LES_omp
1547    ecrit_LES = ecrit_LES_omp
1548    carbon_cycle_tr = carbon_cycle_tr_omp
1549    carbon_cycle_cpl = carbon_cycle_cpl_omp
1550
1551! Test of coherence between type_ocean and version_ocean
1552    IF (type_ocean=='couple' .AND. (version_ocean/='opa8' .AND. version_ocean/='nemo') ) THEN
1553       WRITE(numout,*)' ERROR version_ocean=',version_ocean,' not valid in coupled configuration'
1554       CALL abort_gcm('conf_phys','version_ocean not valid',1)
1555    END IF
1556
1557    IF (type_ocean=='slab' .AND. version_ocean=='xxxxxx') THEN
1558       version_ocean='sicOBS'
1559    ELSE IF (type_ocean=='slab' .AND. version_ocean/='sicOBS') THEN
1560       WRITE(numout,*)' ERROR version_ocean=',version_ocean,' not valid with slab ocean'
1561       CALL abort_gcm('conf_phys','version_ocean not valid',1)
1562    END IF
1563
1564! Test sur new_aod. Ce flag permet de retrouver les resultats de l'AR4
1565! il n'est utilisable que lors du couplage avec le SO4 seul
1566    IF (ok_ade .OR. ok_aie) THEN
1567       IF ( .NOT. new_aod .AND.  flag_aerosol .NE. 1) THEN
1568          CALL abort_gcm('conf_phys','new_aod=.FALSE. not compatible avec flag_aerosol=1',1)
1569       END IF
1570    END IF
1571
1572!$OMP MASTER
1573
1574  write(numout,*)' ##############################################'
1575  write(numout,*)' Configuration des parametres de la physique: '
1576  write(numout,*)' Type ocean = ', type_ocean
1577  write(numout,*)' Version ocean = ', version_ocean
1578  write(numout,*)' Config veget = ', ok_veget
1579  write(numout,*)' Sortie journaliere = ', ok_journe
1580  write(numout,*)' Sortie haute frequence = ', ok_hf
1581  write(numout,*)' Sortie mensuelle = ', ok_mensuel
1582  write(numout,*)' Sortie instantanee = ', ok_instan
1583  write(numout,*)' Frequence appel simulateur ISCCP, freq_ISCCP =', freq_ISCCP
1584  write(numout,*)' Frequence appel simulateur ISCCP, ecrit_ISCCP =', ecrit_ISCCP
1585  write(numout,*)' Frequence appel simulateur COSP, freq_COSP =', freq_COSP
1586  write(numout,*)' Sortie bilan d''energie, ip_ebil_phy =', ip_ebil_phy
1587  write(numout,*)' Excentricite = ',R_ecc
1588  write(numout,*)' Equinoxe = ',R_peri
1589  write(numout,*)' Inclinaison =',R_incl
1590  write(numout,*)' Constante solaire =',solaire
1591  write(numout,*)' co2_ppm =',co2_ppm
1592  write(numout,*)' RCO2 = ',RCO2
1593  write(numout,*)' CH4_ppb =',CH4_ppb,' RCH4 = ',RCH4
1594  write(numout,*)' N2O_ppb =',N2O_ppb,' RN2O =  ',RN2O
1595  write(numout,*)' CFC11_ppt=',CFC11_ppt,' RCFC11 =  ',RCFC11
1596  write(numout,*)' CFC12_ppt=',CFC12_ppt,' RCFC12 =  ',RCFC12
1597  write(numout,*)' cvl_corr=', cvl_corr
1598  write(numout,*)'ok_lic_melt=', ok_lic_melt
1599  write(numout,*)'cycle_diurne=',cycle_diurne
1600  write(numout,*)'soil_model=',soil_model
1601  write(numout,*)'new_oliq=',new_oliq
1602  write(numout,*)'ok_orodr=',ok_orodr
1603  write(numout,*)'ok_orolf=',ok_orolf
1604  write(numout,*)'ok_limitvrai=',ok_limitvrai
1605  write(numout,*)'nbapp_rad=',nbapp_rad
1606  write(numout,*)'iflag_con=',iflag_con
1607  write(numout,*)' epmax = ', epmax
1608  write(numout,*)' ok_adj_ema = ', ok_adj_ema
1609  write(numout,*)' iflag_clw = ', iflag_clw
1610  write(numout,*)' cld_lc_lsc = ', cld_lc_lsc
1611  write(numout,*)' cld_lc_con = ', cld_lc_con
1612  write(numout,*)' cld_tau_lsc = ', cld_tau_lsc
1613  write(numout,*)' cld_tau_con = ', cld_tau_con
1614  write(numout,*)' ffallv_lsc = ', ffallv_lsc
1615  write(numout,*)' ffallv_con = ', ffallv_con
1616  write(numout,*)' coef_eva = ', coef_eva
1617  write(numout,*)' reevap_ice = ', reevap_ice
1618  write(numout,*)' iflag_pdf = ', iflag_pdf
1619  write(numout,*)' iflag_cldcon = ', iflag_cldcon
1620  write(numout,*)' iflag_radia = ', iflag_radia
1621  write(numout,*)' iflag_rrtm = ', iflag_rrtm
1622  write(numout,*)' iflag_ratqs = ', iflag_ratqs
1623  write(numout,*)' seuil_inversion = ', seuil_inversion
1624  write(numout,*)' fact_cldcon = ', fact_cldcon
1625  write(numout,*)' facttemps = ', facttemps
1626  write(numout,*)' ok_newmicro = ',ok_newmicro
1627  write(numout,*)' ratqsbas = ',ratqsbas
1628  write(numout,*)' ratqshaut = ',ratqshaut
1629  write(numout,*)' tau_ratqs = ',tau_ratqs
1630  write(numout,*)' top_height = ',top_height
1631  write(numout,*)' rad_froid = ',rad_froid
1632  write(numout,*)' rad_chau1 = ',rad_chau1
1633  write(numout,*)' rad_chau2 = ',rad_chau2
1634  write(numout,*)' t_glace_min = ',t_glace_min
1635  write(numout,*)' t_glace_max = ',t_glace_max
1636  write(numout,*)' overlap = ',overlap
1637  write(numout,*)' cdmmax = ',cdmmax
1638  write(numout,*)' cdhmax = ',cdhmax
1639  write(numout,*)' ksta = ',ksta
1640  write(numout,*)' ksta_ter = ',ksta_ter
1641  write(numout,*)' ok_kzmin = ',ok_kzmin
1642  write(numout,*)' fmagic = ',fmagic
1643  write(numout,*)' pmagic = ',pmagic
1644  write(numout,*)' ok_ade = ',ok_ade
1645  write(numout,*)' ok_aie = ',ok_aie
1646  write(numout,*)' aerosol_couple = ', aerosol_couple
1647  write(numout,*)' flag_aerosol = ', flag_aerosol
1648  write(numout,*)' new_aod = ', new_aod
1649  write(numout,*)' aer_type = ',aer_type
1650  write(numout,*)' bl95_b0 = ',bl95_b0
1651  write(numout,*)' bl95_b1 = ',bl95_b1
1652  write(numout,*)' lev_histhf = ',lev_histhf
1653  write(numout,*)' lev_histday = ',lev_histday
1654  write(numout,*)' lev_histmth = ',lev_histmth
1655  write(numout,*)' lev_histins = ',lev_histins
1656  write(numout,*)' lev_histLES = ',lev_histLES
1657  write(numout,*)' lev_histdayNMC = ',lev_histdayNMC
1658  write(numout,*)' freq_outNMC = ',freq_outNMC
1659  write(numout,*)' freq_calNMC = ',freq_calNMC
1660  write(numout,*)' iflag_pbl = ', iflag_pbl
1661  write(numout,*)' iflag_thermals = ', iflag_thermals
1662  write(numout,*)' iflag_thermals_ed = ', iflag_thermals_ed
1663  write(numout,*)' iflag_thermals_optflux = ', iflag_thermals_optflux
1664  write(numout,*)' iflag_clos = ', iflag_clos
1665  write(numout,*)' type_run = ',type_run
1666  write(numout,*)' ok_isccp = ',ok_isccp
1667  write(numout,*)' ok_cosp = ',ok_cosp
1668  write(numout,*)' solarlong0 = ', solarlong0
1669  write(numout,*)' qsol0 = ', qsol0
1670  write(numout,*)' inertie_sol = ', inertie_sol
1671  write(numout,*)' inertie_ice = ', inertie_ice
1672  write(numout,*)' inertie_sno = ', inertie_sno
1673  write(numout,*)' f_cdrag_ter = ',f_cdrag_ter
1674  write(numout,*)' f_cdrag_oce = ',f_cdrag_oce
1675  write(numout,*)' f_rugoro = ',f_rugoro
1676  write(numout,*)' supcrit1 = ', supcrit1
1677  write(numout,*)' supcrit2 = ', supcrit2
1678  write(numout,*)' iflag_mix = ', iflag_mix
1679  write(numout,*)' scut = ', scut
1680  write(numout,*)' qqa1 = ', qqa1
1681  write(numout,*)' qqa2 = ', qqa2
1682  write(numout,*)' gammas = ', gammas
1683  write(numout,*)' Fmax = ', Fmax
1684  write(numout,*)' alphas = ', alphas
1685  write(numout,*)' iflag_wake = ', iflag_wake
1686  write(numout,*)' alp_offset = ', alp_offset
1687
1688  write(numout,*)' lonmin lonmax latmin latmax bilKP_ins =',&
1689   lonmin_ins, lonmax_ins, latmin_ins, latmax_ins
1690  write(numout,*)' ecrit_ hf, ins, day, mth, reg, tra, ISCCP, LES',&
1691   ecrit_hf, ecrit_ins, ecrit_day, ecrit_mth, ecrit_reg, ecrit_tra, ecrit_ISCCP, ecrit_LES
1692  write(numout,*)' nseuil ',nseuil
1693
1694  write(numout,*) 'ok_strato = ', ok_strato
1695  write(numout,*) 'ok_hines = ',  ok_hines
1696  write(numout,*) 'read_climoz = ', read_climoz
1697  write(numout,*) 'carbon_cycle_tr = ', carbon_cycle_tr
1698  write(numout,*) 'carbon_cycle_cpl = ', carbon_cycle_cpl
1699 
1700!$OMP END MASTER
1701
1702  return
1703 
1704  end subroutine conf_phys
1705
1706end module conf_phys_m
1707!
1708!#################################################################
1709!
1710
1711   subroutine conf_interface(tau_calv)
1712
1713   use IOIPSL
1714   implicit none
1715
1716! Configuration de l'interace atm/surf
1717!
1718! tau_calv:    temps de relaxation pour la fonte des glaciers
1719
1720  REAL          :: tau_calv
1721  REAL,SAVE     :: tau_calv_omp
1722
1723! Local
1724  integer              :: numout = 6
1725!
1726!Config Key  = tau_calv
1727!Config Desc = temps de relaxation pour fonte des glaciers en jours
1728!Config Def  = 1 an
1729!Config Help =
1730!
1731  tau_calv_omp = 360.*10.
1732!$OMP MASTER
1733  call getin('tau_calv',tau_calv_omp)
1734!$OMP END MASTER
1735!$OMP BARRIER
1736
1737  tau_calv=tau_calv_omp
1738 
1739!$OMP MASTER
1740  write(numout,*)' ##############################################'
1741  WRITE(numout,*)' Configuration de l''interface atm/surfaces  : '
1742  WRITE(numout,*)' tau_calv = ',tau_calv
1743!$OMP END MASTER
1744
1745  return
1746
1747  end subroutine conf_interface
Note: See TracBrowser for help on using the repository browser.