source: LMDZ6/branches/IPSLCM6.0.13/libf/phylmd/conf_phys_m.F90 @ 4426

Last change on this file since 4426 was 3052, checked in by musat, 7 years ago

Set up lwoff configuration : add ok_lwoff=y to activate it.
Add solbnd CMIP6 output.
Enable 3D outputs of SW/LW total sky and clear sky.
IM

  • Property copyright set to
    Name of program: LMDZ
    Creation date: 1984
    Version: LMDZ5
    License: CeCILL version 2
    Holder: Laboratoire de m\'et\'eorologie dynamique, CNRS, UMR 8539
    See the license file in the root directory
File size: 80.9 KB
Line 
1!
2! $Id: conf_phys.F90 1668 2012-10-12 10:47:37Z idelkadi $
3!
4!
5!
6MODULE conf_phys_m
7
8  IMPLICIT NONE
9
10CONTAINS
11
12  SUBROUTINE conf_phys(ok_journe, ok_mensuel, ok_instan, ok_hf, &
13       ok_LES,&
14       callstats,&
15       solarlong0,seuil_inversion, &
16       fact_cldcon, facttemps,ok_newmicro,iflag_radia,&
17       iflag_cld_th, &
18       iflag_ratqs,ratqsbas,ratqshaut,tau_ratqs, &
19       ok_ade, ok_aie, ok_alw, ok_cdnc, aerosol_couple, &
20       flag_aerosol, flag_aerosol_strat, new_aod, &
21       flag_bc_internal_mixture, bl95_b0, bl95_b1,&
22       read_climoz, &
23       alp_offset)
24
25    USE IOIPSL
26    USE surface_data
27    USE phys_cal_mod
28    USE carbon_cycle_mod,  ONLY: carbon_cycle_tr, carbon_cycle_cpl
29    USE mod_grid_phy_lmdz, ONLY: klon_glo
30    USE print_control_mod, ONLY: lunout
31
32    include "conema3.h"
33    include "fisrtilp.h"
34    include "nuage.h"
35    include "YOMCST.h"
36    include "YOMCST2.h"
37
38    include "thermcell.h"
39
40
41    !IM : on inclut/initialise les taux de CH4, N2O, CFC11 et CFC12
42    include "clesphys.h"
43    include "compbl.h"
44    include "comsoil.h"
45    include "YOEGWD.h"
46    !
47    ! Configuration de la "physique" de LMDZ a l'aide de la fonction
48    ! GETIN de IOIPSL
49    !
50    ! LF 05/2001
51    !
52
53    !
54    ! type_ocean:      type d'ocean (force, slab, couple)
55    ! version_ocean:   version d'ocean (opa8/nemo pour type_ocean=couple ou
56    !                                   sicOBS,sicINT,sicNO pour type_ocean=slab)
57    ! ok_veget:   type de modele de vegetation
58    ! ok_journe:  sorties journalieres
59    ! ok_hf:  sorties haute frequence
60    ! ok_mensuel: sorties mensuelles
61    ! ok_instan:  sorties instantanees
62    ! ok_ade, ok_aie: apply or not aerosol direct and indirect effects
63    ! ok_alw: activate aerosol LW effect
64    ! ok_cdnc, ok cloud droplet number concentration
65    ! flag_aerosol_strat : flag pour les aerosols stratos
66    ! flag_bc_internal_mixture : use BC internal mixture if true
67    ! bl95_b*: parameters in the formula to link CDNC to aerosol mass conc
68    !
69
70
71    ! Sortie:
72    LOGICAL              :: ok_newmicro
73    INTEGER              :: iflag_radia
74    LOGICAL              :: ok_journe, ok_mensuel, ok_instan, ok_hf
75    LOGICAL              :: ok_LES
76    LOGICAL              :: callstats
77    LOGICAL              :: ok_ade, ok_aie, ok_alw, ok_cdnc, aerosol_couple
78    INTEGER              :: flag_aerosol
79    INTEGER              :: flag_aerosol_strat
80    LOGICAL              :: flag_bc_internal_mixture
81    LOGICAL              :: new_aod
82    REAL                 :: bl95_b0, bl95_b1
83    REAL                 :: fact_cldcon, facttemps,ratqsbas,ratqshaut,tau_ratqs
84    INTEGER              :: iflag_cld_th
85    INTEGER              :: iflag_ratqs
86
87    CHARACTER (len = 6), SAVE  :: type_ocean_omp, version_ocean_omp, ocean_omp
88    CHARACTER (len = 10),SAVE  :: type_veget_omp
89    CHARACTER (len = 8), SAVE  :: aer_type_omp
90    LOGICAL, SAVE       :: ok_snow_omp
91    LOGICAL, SAVE       :: ok_newmicro_omp
92    LOGICAL, SAVE       :: ok_all_xml_omp
93    LOGICAL, SAVE       :: ok_lwoff_omp
94    LOGICAL, SAVE       :: ok_journe_omp, ok_mensuel_omp, ok_instan_omp, ok_hf_omp       
95    LOGICAL, SAVE       :: ok_LES_omp   
96    LOGICAL, SAVE       :: callstats_omp
97    LOGICAL, SAVE       :: ok_ade_omp, ok_aie_omp, ok_alw_omp, ok_cdnc_omp, aerosol_couple_omp
98    INTEGER, SAVE       :: flag_aerosol_omp
99    INTEGER, SAVE       :: flag_aerosol_strat_omp
100    LOGICAL, SAVE       :: flag_bc_internal_mixture_omp
101    LOGICAL, SAVE       :: new_aod_omp
102    REAL,SAVE           :: bl95_b0_omp, bl95_b1_omp
103    REAL,SAVE           :: freq_ISCCP_omp, ecrit_ISCCP_omp
104    REAL,SAVE           :: freq_COSP_omp, freq_AIRS_omp
105    REAL,SAVE           :: fact_cldcon_omp, facttemps_omp,ratqsbas_omp
106    REAL,SAVE           :: tau_cld_cv_omp, coefw_cld_cv_omp
107    INTEGER, SAVE       :: iflag_cld_cv_omp
108
109
110    REAL, SAVE          :: ratqshaut_omp
111    REAL, SAVE          :: tau_ratqs_omp
112    REAL, SAVE          :: t_coupl_omp
113    INTEGER, SAVE       :: iflag_radia_omp
114    INTEGER, SAVE       :: iflag_rrtm_omp
115    INTEGER, SAVE       :: iflag_albedo_omp !albedo SB
116    LOGICAL, SAVE       :: ok_chlorophyll_omp ! albedo SB 
117    INTEGER, SAVE       :: NSW_omp
118    INTEGER, SAVE       :: iflag_cld_th_omp, ip_ebil_phy_omp
119    INTEGER, SAVE       :: iflag_ratqs_omp
120
121    REAL, SAVE          :: f_cdrag_ter_omp,f_cdrag_oce_omp
122    REAL, SAVE          :: f_rugoro_omp   , z0min_omp
123    REAL, SAVE          :: z0m_seaice_omp,z0h_seaice_omp
124    REAL, SAVE          :: min_wind_speed_omp,f_gust_wk_omp,f_gust_bl_omp,f_qsat_oce_omp, f_z0qh_oce_omp
125    INTEGER, SAVE       :: iflag_gusts_omp,iflag_z0_oce_omp
126
127    ! Local
128    REAL                 :: zzz
129
130    REAL :: seuil_inversion
131    REAL,SAVE :: seuil_inversion_omp
132
133    INTEGER,SAVE :: iflag_thermals_ed_omp,iflag_thermals_optflux_omp,iflag_thermals_closure_omp
134    REAL, SAVE :: fact_thermals_ed_dz_omp
135    INTEGER,SAVE :: iflag_thermals_omp,nsplit_thermals_omp
136    REAL,SAVE :: tau_thermals_omp,alp_bl_k_omp
137    ! nrlmd le 10/04/2012
138    INTEGER,SAVE :: iflag_trig_bl_omp,iflag_clos_bl_omp
139    INTEGER,SAVE :: tau_trig_shallow_omp,tau_trig_deep_omp
140    REAL,SAVE    :: s_trig_omp
141    ! fin nrlmd le 10/04/2012
142    REAL :: alp_offset
143    REAL, SAVE :: alp_offset_omp
144    INTEGER,SAVE :: iflag_coupl_omp,iflag_clos_omp,iflag_wake_omp
145    INTEGER,SAVE :: iflag_cvl_sigd_omp
146    REAL, SAVE :: coef_clos_ls_omp
147    REAL, SAVE :: supcrit1_omp, supcrit2_omp
148    INTEGER, SAVE :: iflag_mix_omp
149    INTEGER, SAVE :: iflag_mix_adiab_omp
150    REAL, SAVE :: scut_omp, qqa1_omp, qqa2_omp, gammas_omp, Fmax_omp, alphas_omp
151    REAL, SAVE :: tmax_fonte_cv_omp
152
153    REAL,SAVE :: R_ecc_omp,R_peri_omp,R_incl_omp,solaire_omp
154    LOGICAL,SAVE :: ok_suntime_rrtm_omp
155    REAL,SAVE :: co2_ppm_omp, RCO2_omp, co2_ppm_per_omp, RCO2_per_omp
156    REAL,SAVE :: CH4_ppb_omp, RCH4_omp, CH4_ppb_per_omp, RCH4_per_omp
157    REAL,SAVE :: N2O_ppb_omp, RN2O_omp, N2O_ppb_per_omp, RN2O_per_omp
158    REAL,SAVE :: CFC11_ppt_omp,RCFC11_omp,CFC11_ppt_per_omp,RCFC11_per_omp
159    REAL,SAVE :: CFC12_ppt_omp,RCFC12_omp,CFC12_ppt_per_omp,RCFC12_per_omp
160    REAL,SAVE :: epmax_omp
161    REAL,SAVE :: coef_epmax_cape_omp
162    LOGICAL,SAVE :: ok_adj_ema_omp
163    INTEGER,SAVE :: iflag_clw_omp
164    REAL,SAVE :: cld_lc_lsc_omp,cld_lc_con_omp,cld_tau_lsc_omp,cld_tau_con_omp
165    REAL,SAVE :: ffallv_lsc_omp, ffallv_con_omp,coef_eva_omp
166    LOGICAL,SAVE :: reevap_ice_omp
167    INTEGER,SAVE :: iflag_pdf_omp
168    INTEGER,SAVE :: iflag_ice_thermo_omp
169    INTEGER,SAVE :: iflag_t_glace_omp
170    INTEGER,SAVE :: iflag_cloudth_vert_omp
171    INTEGER,SAVE :: iflag_rain_incloud_vol_omp
172    REAL,SAVE :: rad_froid_omp, rad_chau1_omp, rad_chau2_omp
173    REAL,SAVE :: t_glace_min_omp, t_glace_max_omp
174    REAL,SAVE :: exposant_glace_omp
175    REAL,SAVE :: rei_min_omp, rei_max_omp
176    INTEGER,SAVE :: iflag_sic_omp
177    REAL,SAVE :: inertie_sol_omp,inertie_sno_omp,inertie_sic_omp
178    REAL,SAVE :: inertie_lic_omp
179    REAL,SAVE :: qsol0_omp
180    REAL,SAVE :: evap0_omp
181    REAL,SAVE :: albsno0_omp
182    REAL      :: solarlong0
183    REAL,SAVE :: solarlong0_omp
184    INTEGER,SAVE :: top_height_omp,overlap_omp
185    REAL,SAVE :: cdmmax_omp,cdhmax_omp,ksta_omp,ksta_ter_omp,f_ri_cd_min_omp
186    LOGICAL,SAVE :: ok_kzmin_omp
187    REAL, SAVE   :: pbl_lmixmin_alpha_omp
188    REAL, SAVE ::  fmagic_omp, pmagic_omp
189    INTEGER,SAVE :: iflag_pbl_omp,lev_histhf_omp,lev_histday_omp,lev_histmth_omp
190    INTEGER,SAVE :: iflag_pbl_split_omp
191!FC
192    INTEGER,SAVE :: ifl_pbltree_omp
193    REAL,SAVE :: Cd_frein_omp
194!FC
195    INTEGER,SAVE :: iflag_order2_sollw_omp
196    INTEGER, SAVE :: lev_histins_omp, lev_histLES_omp
197    INTEGER, SAVE :: lev_histdayNMC_omp
198    INTEGER, SAVE :: levout_histNMC_omp(3)
199    LOGICAL, SAVE :: ok_histNMC_omp(3)
200    REAL, SAVE :: freq_outNMC_omp(3), freq_calNMC_omp(3)
201    CHARACTER*4, SAVE :: type_run_omp
202    LOGICAL,SAVE :: ok_cosp_omp, ok_airs_omp
203    LOGICAL,SAVE :: ok_mensuelCOSP_omp,ok_journeCOSP_omp,ok_hfCOSP_omp
204    REAL,SAVE :: lonmin_ins_omp, lonmax_ins_omp, latmin_ins_omp, latmax_ins_omp
205    REAL,SAVE :: ecrit_hf_omp, ecrit_day_omp, ecrit_mth_omp, ecrit_reg_omp
206    REAL,SAVE :: ecrit_ins_omp
207    REAL,SAVE :: ecrit_LES_omp
208    REAL,SAVE :: ecrit_tra_omp
209    REAL,SAVE :: cvl_comp_threshold_omp
210    REAL,SAVE :: cvl_sig2feed_omp
211    REAL,SAVE :: cvl_corr_omp
212    LOGICAL,SAVE :: ok_lic_melt_omp
213    LOGICAL,SAVE :: ok_lic_cond_omp
214    !
215    LOGICAL,SAVE  :: cycle_diurne_omp,soil_model_omp,new_oliq_omp
216    LOGICAL,SAVE  :: ok_orodr_omp, ok_orolf_omp, ok_limitvrai_omp
217    INTEGER, SAVE :: nbapp_rad_omp, iflag_con_omp
218    INTEGER, SAVE :: nbapp_cv_omp, nbapp_wk_omp
219    INTEGER, SAVE :: iflag_ener_conserv_omp
220    LOGICAL, SAVE :: ok_conserv_q_omp
221    INTEGER, SAVE :: iflag_fisrtilp_qsat_omp
222    INTEGER, SAVE :: iflag_bergeron_omp
223    LOGICAL,SAVE  :: ok_strato_omp
224    LOGICAL,SAVE  :: ok_hines_omp, ok_gwd_rando_omp
225    REAL, SAVE    :: gwd_rando_ruwmax_omp, gwd_rando_sat_omp
226    REAL, SAVE    :: gwd_front_ruwmax_omp, gwd_front_sat_omp
227    REAL, SAVE    :: sso_gkdrag_omp,sso_grahil_omp,sso_grcrit_omp
228    REAL, SAVE    :: sso_gfrcri_omp,sso_gkwake_omp,sso_gklift_omp
229    LOGICAL,SAVE  :: ok_qch4_omp
230    LOGICAL,SAVE  :: carbon_cycle_tr_omp
231    LOGICAL,SAVE  :: carbon_cycle_cpl_omp
232    LOGICAL,SAVE  :: adjust_tropopause_omp
233    LOGICAL,SAVE  :: ok_daily_climoz_omp
234
235    INTEGER, INTENT(OUT):: read_climoz ! read ozone climatology, OpenMP shared
236    ! Allowed values are 0, 1 and 2
237    ! 0: do not read an ozone climatology
238    ! 1: read a single ozone climatology that will be used day and night
239    ! 2: read two ozone climatologies, the average day and night
240    ! climatology and the daylight climatology
241
242    !-----------------------------------------------------------------
243
244    print*,'CONFPHYS ENTREE'
245    !$OMP MASTER
246    !Config Key  = type_ocean
247    !Config Desc = Type d'ocean
248    !Config Def  = force
249    !Config Help = Type d'ocean utilise: force, slab,couple
250    !
251    type_ocean_omp = 'force '
252    CALL getin('type_ocean', type_ocean_omp)
253    !
254    !Config Key  = version_ocean
255    !Config Desc = Version d'ocean
256    !Config Def  = xxxxxx
257    !Config Help = Version d'ocean utilise: opa8/nemo/sicOBS/xxxxxx
258    !
259    version_ocean_omp = 'xxxxxx'
260    CALL getin('version_ocean', version_ocean_omp)
261
262    !Config Key  = OCEAN
263    !Config Desc = Old parameter name for type_ocean
264    !Config Def  = yyyyyy
265    !Config Help = This is only for testing purpose
266    !
267    ocean_omp = 'yyyyyy'
268    CALL getin('OCEAN', ocean_omp)
269    IF (ocean_omp /= 'yyyyyy') THEN
270       WRITE(lunout,*)'ERROR! Old variable name OCEAN used in parmeter file.'
271       WRITE(lunout,*)'Variable OCEAN has been replaced by the variable type_ocean.'
272       WRITE(lunout,*)'You have to update your parameter file physiq.def to succed running'
273       CALL abort_physic('conf_phys','Variable OCEAN no longer existing, use variable name type_ocean',1)
274    ENDIF
275
276    !Config Key  = t_coupl
277    !Config Desc = Pas de temps du couplage atm/oce en sec.
278    !Config Def  = 86400
279    !Config Help = This is only for testing purpose
280    !
281    t_coupl_omp = 86400.
282    CALL getin('t_coupl', t_coupl_omp)
283    IF (t_coupl_omp == 0) THEN
284       WRITE(lunout,*)'ERROR! Timestep of coupling between atmosphere and ocean'
285       WRITE(lunout,*)'cannot be zero.'
286       CALL abort_physic('conf_phys','t_coupl = 0.',1)
287    ENDIF
288
289    !
290    !Config Key  = ok_all_xml
291    !Config Desc = utiliser les xml pourles définitions des champs pour xios
292    !Config Def  = .FALSE.
293    !Config Help =
294    !
295    ok_all_xml_omp = .FALSE.
296    CALL getin('ok_all_xml', ok_all_xml_omp)
297
298    !
299    !Config Key  = ok_lwoff
300    !Config Desc = inhiber l effet radiatif LW des nuages
301    !Config Def  = .FALSE.
302    !Config Help =
303    !
304    ok_lwoff_omp = .FALSE.
305    CALL getin('ok_lwoff', ok_lwoff_omp)
306    !
307
308    !
309    !Config Key  = VEGET
310    !Config Desc = Type de modele de vegetation
311    !Config Def  = .FALSE.
312    !Config Help = Type de modele de vegetation utilise
313    !
314    type_veget_omp ='orchidee'
315    CALL getin('VEGET', type_veget_omp)
316    !
317
318    ! Martin
319    !Config Key  = ok_snow
320    !Config Desc = Flag to activate snow model SISVAT
321    !Config Def  = .FALSE.
322    ok_snow_omp = .FALSE.
323    CALL getin('ok_snow', ok_snow_omp)
324    ! Martin
325
326    !Config Key  = OK_journe
327    !Config Desc = Pour des sorties journalieres
328    !Config Def  = .FALSE.
329    !Config Help = Pour creer le fichier histday contenant les sorties
330    !              journalieres
331    !
332    ok_journe_omp = .FALSE.
333    CALL getin('OK_journe', ok_journe_omp)
334    !
335    !Config Key  = ok_hf
336    !Config Desc = Pour des sorties haute frequence
337    !Config Def  = .FALSE.
338    !Config Help = Pour creer le fichier histhf contenant les sorties
339    !              haute frequence ( 3h ou 6h)
340    !
341    ok_hf_omp = .FALSE.
342    CALL getin('ok_hf', ok_hf_omp)
343    !
344    !Config Key  = OK_mensuel
345    !Config Desc = Pour des sorties mensuelles
346    !Config Def  = .TRUE.
347    !Config Help = Pour creer le fichier histmth contenant les sorties
348    !              mensuelles
349    !
350    ok_mensuel_omp = .TRUE.
351    CALL getin('OK_mensuel', ok_mensuel_omp)
352    !
353    !Config Key  = OK_instan
354    !Config Desc = Pour des sorties instantanees
355    !Config Def  = .FALSE.
356    !Config Help = Pour creer le fichier histins contenant les sorties
357    !              instantanees
358    !
359    ok_instan_omp = .FALSE.
360    CALL getin('OK_instan', ok_instan_omp)
361    !
362    !Config Key  = ok_ade
363    !Config Desc = Aerosol direct effect or not?
364    !Config Def  = .FALSE.
365    !Config Help = Used in radlwsw.F
366    !
367    ok_ade_omp = .FALSE.
368    CALL getin('ok_ade', ok_ade_omp)
369
370    !Config Key  = ok_alw
371    !Config Desc = Aerosol longwave effect or not?
372    !Config Def  = .FALSE.
373    !Config Help = Used in radlwsw.F
374    !
375    ok_alw_omp = .FALSE.
376    CALL getin('ok_alw', ok_alw_omp)
377
378    !
379    !Config Key  = ok_aie
380    !Config Desc = Aerosol indirect effect or not?
381    !Config Def  = .FALSE.
382    !Config Help = Used in nuage.F and radlwsw.F
383    !
384    ok_aie_omp = .FALSE.
385    CALL getin('ok_aie', ok_aie_omp)
386
387    !
388    !Config Key  = ok_cdnc
389    !Config Desc = ok cloud droplet number concentration
390    !Config Def  = .FALSE.
391    !Config Help = Used in newmicro.F
392    !
393    ok_cdnc_omp = .FALSE.
394    CALL getin('ok_cdnc', ok_cdnc_omp)
395    !
396    !Config Key  = aerosol_couple
397    !Config Desc = read aerosol in file or calcul by inca
398    !Config Def  = .FALSE.
399    !Config Help = Used in physiq.F
400    !
401    aerosol_couple_omp = .FALSE.
402    CALL getin('aerosol_couple',aerosol_couple_omp)
403    !
404    !Config Key  = flag_aerosol
405    !Config Desc = which aerosol is use for coupled model
406    !Config Def  = 1
407    !Config Help = Used in physiq.F
408    !
409    ! - flag_aerosol=0 => no aerosol
410    ! - flag_aerosol=1 => so4 only (defaut)
411    ! - flag_aerosol=2 => bc  only
412    ! - flag_aerosol=3 => pom only
413    ! - flag_aerosol=4 => seasalt only
414    ! - flag_aerosol=5 => dust only
415    ! - flag_aerosol=6 => all aerosol
416
417    flag_aerosol_omp = 0
418    CALL getin('flag_aerosol',flag_aerosol_omp)
419
420    !
421    !Config Key  = flag_bc_internal_mixture
422    !Config Desc = state of mixture for BC aerosols
423    ! - n = external mixture
424    ! - y = internal mixture
425    !Config Def  = n
426    !Config Help = Used in physiq.F / aeropt
427    !
428    flag_bc_internal_mixture_omp = .FALSE.
429    CALL getin('flag_bc_internal_mixture',flag_bc_internal_mixture_omp)
430
431    ! Temporary variable for testing purpose!
432    !Config Key  = new_aod
433    !Config Desc = which calcul of aeropt
434    !Config Def  = FALSE
435    !Config Help = Used in physiq.F
436    !
437    new_aod_omp = .TRUE.
438    CALL getin('new_aod',new_aod_omp)
439
440    !
441    !Config Key  = aer_type
442    !Config Desc = Use a constant field for the aerosols
443    !Config Def  = scenario
444    !Config Help = Used in readaerosol.F90
445    !
446    aer_type_omp = 'scenario'
447    CALL getin('aer_type', aer_type_omp)
448
449    !
450    !Config Key  = bl95_b0
451    !Config Desc = Parameter in CDNC-maer link (Boucher&Lohmann 1995)
452    !Config Def  = .FALSE.
453    !Config Help = Used in nuage.F
454    !
455    bl95_b0_omp = 2.
456    CALL getin('bl95_b0', bl95_b0_omp)
457
458    !Config Key  = bl95_b1
459    !Config Desc = Parameter in CDNC-maer link (Boucher&Lohmann 1995)
460    !Config Def  = .FALSE.
461    !Config Help = Used in nuage.F
462    !
463    bl95_b1_omp = 0.2
464    CALL getin('bl95_b1', bl95_b1_omp)
465
466    !Config Key  = freq_ISCCP
467    !Config Desc = Frequence d'appel du simulateur ISCCP en secondes;
468    !              par defaut 10800, i.e. 3 heures
469    !Config Def  = 10800.
470    !Config Help = Used in ini_histISCCP.h
471    !
472    freq_ISCCP_omp = 10800.
473    CALL getin('freq_ISCCP', freq_ISCCP_omp)
474    !
475    !Config Key  = ecrit_ISCCP
476    !Config Desc = Frequence d'ecriture des resultats du simulateur ISCCP en nombre de jours;
477    !              par defaut 1., i.e. 1 jour
478    !Config Def  = 1.
479    !Config Help = Used in ini_histISCCP.h
480    !
481    !
482    ecrit_ISCCP_omp = 1.
483    CALL getin('ecrit_ISCCP', ecrit_ISCCP_omp)
484
485    !Config Key  = freq_COSP
486    !Config Desc = Frequence d'appel du simulateur COSP en secondes;
487    !              par defaut 10800, i.e. 3 heures
488    !Config Def  = 10800.
489    !Config Help = Used in ini_histdayCOSP.h
490    !
491    freq_COSP_omp = 10800.
492    CALL getin('freq_COSP', freq_COSP_omp)
493
494    !Config Key  = freq_AIRS
495    !Config Desc = Frequence d'appel du simulateur AIRS en secondes;
496    !              par defaut 10800, i.e. 3 heures
497    !Config Def  = 10800.
498    !Config Help = Used in ini_histdayAIRS.h
499    !
500    freq_AIRS_omp = 10800.
501    CALL getin('freq_AIRS', freq_AIRS_omp)
502
503    !
504    !Config Key  = ip_ebil_phy
505    !Config Desc = Niveau de sortie pour les diags bilan d'energie
506    !Config Def  = 0
507    !Config Help =
508    !               
509    ip_ebil_phy_omp = 0
510    CALL getin('ip_ebil_phy', ip_ebil_phy_omp)
511    IF (ip_ebil_phy_omp/=0) THEN
512       CALL abort_physic('conf_phys','ip_ebil_phy_omp doit etre 0 sur cette version',1)
513    ENDIF
514
515    !
516    !Config Key  = seuil_inversion
517    !Config Desc = Seuil ur dTh pour le choix entre les schemas de CL
518    !Config Def  = -0.1
519    !Config Help =
520    !               
521    seuil_inversion_omp = -0.1
522    CALL getin('seuil_inversion', seuil_inversion_omp)
523
524    !
525    ! Constante solaire & Parametres orbitaux & taux gaz effet de serre BEG
526    !
527    !Config Key  = R_ecc
528    !Config Desc = Excentricite
529    !Config Def  = 0.016715
530    !Config Help =
531    !               
532    !valeur AMIP II
533    R_ecc_omp = 0.016715
534    CALL getin('R_ecc', R_ecc_omp)
535    !
536    !Config Key  = R_peri
537    !Config Desc = Equinoxe
538    !Config Def  =
539    !Config Help =
540    !               
541    !
542    !valeur AMIP II
543    R_peri_omp = 102.7
544    CALL getin('R_peri', R_peri_omp)
545    !
546    !Config Key  = R_incl
547    !Config Desc = Inclinaison
548    !Config Def  =
549    !Config Help =
550    !               
551    !
552    !valeur AMIP II
553    R_incl_omp = 23.441
554    CALL getin('R_incl', R_incl_omp)
555    !
556    !Config Key  = solaire
557    !Config Desc = Constante solaire en W/m2
558    !Config Def  = 1365.
559    !Config Help =
560    !               
561    !
562    !valeur AMIP II
563    solaire_omp = 1365.
564    CALL getin('solaire', solaire_omp)
565    !
566    !Config Key  = co2_ppm
567    !Config Desc = concentration du gaz carbonique en ppmv
568    !Config Def  = 348.
569    !Config Help =
570    !               
571    !
572    !valeur AMIP II
573    co2_ppm_omp = 348.
574    CALL getin('co2_ppm', co2_ppm_omp)
575    !
576    !Config Key  = RCO2
577    !Config Desc = Concentration du CO2
578    !Config Def  = co2_ppm * 1.0e-06  * 44.011/28.97
579    !Config Def  = 348. * 1.0e-06  * 44.011/28.97
580    !Config Help =
581    !               
582    ! RCO2 = 5.286789092164308E-04
583    !ancienne valeur
584    RCO2_omp = co2_ppm_omp * 1.0e-06  * 44.011/28.97 ! pour co2_ppm=348.
585
586    !  CALL getin('RCO2', RCO2)
587    !
588    !Config Key  = RCH4
589    !Config Desc = Concentration du CH4
590    !Config Def  = 1.65E-06* 16.043/28.97
591    !Config Help =
592    !               
593    !
594    !valeur AMIP II
595    !OK  RCH4 = 1.65E-06* 16.043/28.97
596    ! RCH4 = 9.137366240938903E-07
597    !
598    !ancienne valeur
599    ! RCH4 = 1.72E-06* 16.043/28.97
600    !OK CALL getin('RCH4', RCH4)
601    zzz = 1650.
602    CALL getin('CH4_ppb', zzz)
603    CH4_ppb_omp = zzz
604    RCH4_omp = CH4_ppb_omp * 1.0E-09 * 16.043/28.97
605    !
606    !Config Key  = RN2O
607    !Config Desc = Concentration du N2O
608    !Config Def  = 306.E-09* 44.013/28.97
609    !Config Help =
610    !               
611    !
612    !valeur AMIP II
613    !OK  RN2O = 306.E-09* 44.013/28.97
614    ! RN2O = 4.648939592682085E-07
615    !
616    !ancienne valeur
617    ! RN2O = 310.E-09* 44.013/28.97
618    !OK  CALL getin('RN2O', RN2O)
619    zzz=306.
620    CALL getin('N2O_ppb', zzz)
621    N2O_ppb_omp = zzz
622    RN2O_omp = N2O_ppb_omp * 1.0E-09 * 44.013/28.97
623    !
624    !Config Key  = RCFC11
625    !Config Desc = Concentration du CFC11
626    !Config Def  = 280.E-12* 137.3686/28.97
627    !Config Help =
628    !               
629    !
630    !OK RCFC11 = 280.E-12* 137.3686/28.97
631    zzz = 280.
632    CALL getin('CFC11_ppt',zzz)
633    CFC11_ppt_omp = zzz
634    RCFC11_omp=CFC11_ppt_omp* 1.0E-12 * 137.3686/28.97
635    ! RCFC11 = 1.327690990680013E-09
636    !OK CALL getin('RCFC11', RCFC11)
637    !
638    !Config Key  = RCFC12
639    !Config Desc = Concentration du CFC12
640    !Config Def  = 484.E-12* 120.9140/28.97
641    !Config Help =
642    !               
643    !
644    !OK RCFC12 = 484.E-12* 120.9140/28.97
645    zzz = 484.
646    CALL getin('CFC12_ppt',zzz)
647    CFC12_ppt_omp = zzz
648    RCFC12_omp = CFC12_ppt_omp * 1.0E-12 * 120.9140/28.97
649    ! RCFC12 = 2.020102726958923E-09
650    !OK CALL getin('RCFC12', RCFC12)
651
652    !ajout CFMIP begin
653    !
654    !Config Key  = co2_ppm_per
655    !Config Desc = concentration du co2_ppm_per
656    !Config Def  = 348.
657    !Config Help =
658    !               
659    co2_ppm_per_omp = co2_ppm_omp
660    CALL getin('co2_ppm_per', co2_ppm_per_omp)
661    !
662    !Config Key  = RCO2_per
663    !Config Desc = Concentration du CO2_per
664    !Config Def  = co2_ppm_per * 1.0e-06  * 44.011/28.97
665    !Config Def  = 348. * 1.0e-06  * 44.011/28.97
666    !Config Help =
667    !               
668    RCO2_per_omp = co2_ppm_per_omp * 1.0e-06  * 44.011/28.97
669
670    !Config Key  = ok_4xCO2atm
671    !Config Desc = Calcul ou non effet radiatif 4xco2
672    !Config Def  = .FALSE.
673    !Config Help =
674
675    !Config Key  = RCH4_per
676    !Config Desc = Concentration du CH4_per
677    !Config Def  = 1.65E-06* 16.043/28.97
678    !Config Help =
679    !               
680    zzz = CH4_ppb_omp
681    CALL getin('CH4_ppb_per', zzz)
682    CH4_ppb_per_omp = zzz
683    RCH4_per_omp = CH4_ppb_per_omp * 1.0E-09 * 16.043/28.97
684    !
685    !Config Key  = RN2O_per
686    !Config Desc = Concentration du N2O_per
687    !Config Def  = 306.E-09* 44.013/28.97
688    !Config Help =
689    !               
690    zzz = N2O_ppb_omp
691    CALL getin('N2O_ppb_per', zzz)
692    N2O_ppb_per_omp = zzz
693    RN2O_per_omp = N2O_ppb_per_omp * 1.0E-09 * 44.013/28.97
694    !
695    !Config Key  = RCFC11_per
696    !Config Desc = Concentration du CFC11_per
697    !Config Def  = 280.E-12* 137.3686/28.97
698    !Config Help =
699    !               
700    zzz = CFC11_ppt_omp
701    CALL getin('CFC11_ppt_per',zzz)
702    CFC11_ppt_per_omp = zzz
703    RCFC11_per_omp=CFC11_ppt_per_omp* 1.0E-12 * 137.3686/28.97
704    !
705    !Config Key  = RCFC12_per
706    !Config Desc = Concentration du CFC12_per
707    !Config Def  = 484.E-12* 120.9140/28.97
708    !Config Help =
709    !               
710    zzz = CFC12_ppt_omp
711    CALL getin('CFC12_ppt_per',zzz)
712    CFC12_ppt_per_omp = zzz
713    RCFC12_per_omp = CFC12_ppt_per_omp * 1.0E-12 * 120.9140/28.97
714    !ajout CFMIP end
715
716    !
717    ! FH 2008/05/09 On elimine toutes les clefs physiques dans la dynamique
718    ! Constantes precedemment dans dyn3d/conf_gcm
719
720    !Config  Key  = cycle_diurne
721    !Config  Desc = Cycle ddiurne
722    !Config  Def  = y
723    !Config  Help = Cette option permet d'eteidre le cycle diurne.
724    !Config         Peut etre util pour accelerer le code !
725    cycle_diurne_omp = .TRUE.
726    CALL getin('cycle_diurne',cycle_diurne_omp)
727
728    !Config  Key  = soil_model
729    !Config  Desc = Modele de sol
730    !Config  Def  = y
731    !Config  Help = Choix du modele de sol (Thermique ?)
732    !Config         Option qui pourait un string afin de pouvoir
733    !Config         plus de choix ! Ou meme une liste d'options !
734    soil_model_omp = .TRUE.
735    CALL getin('soil_model',soil_model_omp)
736
737    !Config  Key  = new_oliq
738    !Config  Desc = Nouvelle eau liquide
739    !Config  Def  = y
740    !Config  Help = Permet de mettre en route la
741    !Config         nouvelle parametrisation de l'eau liquide !
742    new_oliq_omp = .TRUE.
743    CALL getin('new_oliq',new_oliq_omp)
744
745    !Config  Key  = ok_orodr
746    !Config  Desc = Orodr ???
747    !Config  Def  = y
748    !Config  Help = Y en a pas comprendre !
749    !Config         
750    ok_orodr_omp = .TRUE.
751    CALL getin('ok_orodr',ok_orodr_omp)
752
753    !Config  Key  =  ok_orolf
754    !Config  Desc = Orolf ??
755    !Config  Def  = y
756    !Config  Help = Connais pas !
757    ok_orolf_omp = .TRUE.
758    CALL getin('ok_orolf', ok_orolf_omp)
759
760    !Config  Key  = ok_limitvrai
761    !Config  Desc = Force la lecture de la bonne annee
762    !Config  Def  = n
763    !Config  Help = On peut forcer le modele a lire le
764    !Config         fichier SST de la bonne annee. C'est une tres bonne
765    !Config         idee, pourquoi ne pas mettre toujours a y ???
766    ok_limitvrai_omp = .FALSE.
767    CALL getin('ok_limitvrai',ok_limitvrai_omp)
768
769    !Config  Key  = nbapp_rad
770    !Config  Desc = Frequence d'appel au rayonnement
771    !Config  Def  = 12
772    !Config  Help = Nombre  d'appels des routines de rayonnements
773    !Config         par jour.
774    nbapp_rad_omp = 12
775    CALL getin('nbapp_rad',nbapp_rad_omp)
776
777    !Config  Key  = iflag_con
778    !Config  Desc = Flag de convection
779    !Config  Def  = 2
780    !Config  Help = Flag  pour la convection les options suivantes existent :
781    !Config         1 pour LMD,
782    !Config         2 pour Tiedtke,
783    !Config         3 pour CCM(NCAR) 
784    iflag_con_omp = 2
785    CALL getin('iflag_con',iflag_con_omp)
786
787    !Config  Key  = nbapp_cv
788    !Config  Desc = Frequence d'appel a la convection
789    !Config  Def  = 0
790    !Config  Help = Nombre  d'appels des routines de convection
791    !Config         par jour. Si =0, appel a chaque pas de temps physique.
792    nbapp_cv_omp = 0
793    CALL getin('nbapp_cv',nbapp_cv_omp)
794
795    !Config  Key  = nbapp_wk
796    !Config  Desc = Frequence d'appel aux wakes
797    !Config  Def  = 0
798    !Config  Help = Nombre  d'appels des routines de wakes
799    !Config         par jour. Si =0, appel a chaque pas de temps physique.
800    nbapp_wk_omp = 0
801    CALL getin('nbapp_wk',nbapp_wk_omp)
802
803    !Config  Key  = iflag_ener_conserv
804    !Config  Desc = Flag de convection
805    !Config  Def  = 1
806    !Config  Help = Flag  pour la convection les options suivantes existent :
807    !Config         -1 pour Kinetic energy correction
808    !Config         1  conservation kinetic and enthalpy
809    iflag_ener_conserv_omp = -1
810    CALL getin('iflag_ener_conserv',iflag_ener_conserv_omp)
811
812    !Config  Key  = ok_conserv_q
813    !Config  Desc = Switch des corrections de conservation de l'eau
814    !Config  Def  = y
815    !Config  Help = Switch des corrections de conservation de l'eau
816    !Config         y -> corrections activees
817    !Config         n -> conformite avec versions anterieures au 1/4/2014
818    ok_conserv_q_omp = .FALSE.
819    CALL getin('ok_conserv_q',ok_conserv_q_omp)
820
821    !Config  Key  = iflag_fisrtilp_qsat
822    !Config  Desc = Flag de fisrtilp
823    !Config  Def  = 0
824    !Config  Help = Flag  pour la pluie grande-échelle les options suivantes existent :
825    !Config         >1 nb iterations pour converger dans le calcul de qsat
826    iflag_fisrtilp_qsat_omp = 0
827    CALL getin('iflag_fisrtilp_qsat',iflag_fisrtilp_qsat_omp)
828
829    !Config  Key  = iflag_bergeron
830    !Config  Desc = Flag de fisrtilp
831    !Config  Def  = 0
832    !Config  Help = Flag  pour la pluie grande-échelle les options suivantes existent :
833    !Config         0 pas d effet Bergeron
834    !Config         1 effet Bergeron pour T<0
835    iflag_bergeron_omp = 0
836    CALL getin('iflag_bergeron',iflag_bergeron_omp)
837
838    !
839    !
840    !
841    ! Constante solaire & Parametres orbitaux & taux gaz effet de serre END
842    !
843    ! KE
844    !
845
846    !Config key  = cvl_comp_threshold
847    !Config Desc = maximum fraction of convective points enabling compression
848    !Config Def  = 1.00
849    !Config Help = fields are compressed when less than a fraction cvl_comp_threshold
850    !Config Help = of the points is convective.
851    cvl_comp_threshold_omp = 1.00
852    CALL getin('cvl_comp_threshold', cvl_comp_threshold_omp)
853
854    !Config key  = cvl_sig2feed
855    !Config Desc = sigma coordinate at top of feeding layer
856    !Config Def  = 0.97
857    !Config Help = deep convection is fed by the layer extending from the surface (pressure ps)
858    !Config Help = and cvl_sig2feed*ps.
859    cvl_sig2feed_omp = 0.97
860    CALL getin('cvl_sig2feed', cvl_sig2feed_omp)
861
862    !Config key  = cvl_corr
863    !Config Desc = Facteur multiplication des precip convectives dans KE
864    !Config Def  = 1.00
865    !Config Help = 1.02 pour un moderne ou un pre-ind. A ajuster pour un glaciaire
866    cvl_corr_omp = 1.00
867    CALL getin('cvl_corr', cvl_corr_omp)
868
869
870    !Config Key  = epmax
871    !Config Desc = Efficacite precip
872    !Config Def  = 0.993
873    !Config Help =
874    !
875    epmax_omp = .993
876    CALL getin('epmax', epmax_omp)
877
878    coef_epmax_cape_omp = 0.0   
879    CALL getin('coef_epmax_cape', coef_epmax_cape_omp)       
880    !
881    !Config Key  = ok_adj_ema
882    !Config Desc = 
883    !Config Def  = FALSE
884    !Config Help =
885    !
886    ok_adj_ema_omp = .FALSE.
887    CALL getin('ok_adj_ema',ok_adj_ema_omp)
888    !
889    !Config Key  = iflag_clw
890    !Config Desc = 
891    !Config Def  = 0
892    !Config Help =
893    !
894    iflag_clw_omp = 0
895    CALL getin('iflag_clw',iflag_clw_omp)
896    !
897    !Config Key  = cld_lc_lsc
898    !Config Desc = 
899    !Config Def  = 2.6e-4
900    !Config Help =
901    !
902    cld_lc_lsc_omp = 2.6e-4
903    CALL getin('cld_lc_lsc',cld_lc_lsc_omp)
904    !
905    !Config Key  = cld_lc_con
906    !Config Desc = 
907    !Config Def  = 2.6e-4
908    !Config Help =
909    !
910    cld_lc_con_omp = 2.6e-4
911    CALL getin('cld_lc_con',cld_lc_con_omp)
912    !
913    !Config Key  = cld_tau_lsc
914    !Config Desc = 
915    !Config Def  = 3600.
916    !Config Help =
917    !
918    cld_tau_lsc_omp = 3600.
919    CALL getin('cld_tau_lsc',cld_tau_lsc_omp)
920    !
921    !Config Key  = cld_tau_con
922    !Config Desc = 
923    !Config Def  = 3600.
924    !Config Help =
925    !
926    cld_tau_con_omp = 3600.
927    CALL getin('cld_tau_con',cld_tau_con_omp)
928    !
929    !Config Key  = ffallv_lsc
930    !Config Desc = 
931    !Config Def  = 1.
932    !Config Help =
933    !
934    ffallv_lsc_omp = 1.
935    CALL getin('ffallv_lsc',ffallv_lsc_omp)
936    !
937    !Config Key  = ffallv_con
938    !Config Desc = 
939    !Config Def  = 1.
940    !Config Help =
941    !
942    ffallv_con_omp = 1.
943    CALL getin('ffallv_con',ffallv_con_omp)
944    !
945    !Config Key  = coef_eva
946    !Config Desc = 
947    !Config Def  = 2.e-5
948    !Config Help =
949    !
950    coef_eva_omp = 2.e-5
951    CALL getin('coef_eva',coef_eva_omp)
952    !
953    !Config Key  = reevap_ice
954    !Config Desc = 
955    !Config Def  = .FALSE.
956    !Config Help =
957    !
958    reevap_ice_omp = .FALSE.
959    CALL getin('reevap_ice',reevap_ice_omp)
960
961    !Config Key  = iflag_ratqs
962    !Config Desc =
963    !Config Def  = 1
964    !Config Help =
965    !
966    iflag_ratqs_omp = 1
967    CALL getin('iflag_ratqs',iflag_ratqs_omp)
968
969    !
970    !Config Key  = iflag_radia
971    !Config Desc = 
972    !Config Def  = 1
973    !Config Help =
974    !
975    iflag_radia_omp = 1
976    CALL getin('iflag_radia',iflag_radia_omp)
977
978    !
979    !Config Key  = iflag_rrtm
980    !Config Desc = 
981    !Config Def  = 0
982    !Config Help =
983    !
984    iflag_rrtm_omp = 0
985    CALL getin('iflag_rrtm',iflag_rrtm_omp)
986
987    !
988    !Config Key  = NSW
989    !Config Desc = 
990    !Config Def  = 0
991    !Config Help =
992    !
993    NSW_omp = 2
994    CALL getin('NSW',NSW_omp)
995    !albedo SB >>>
996    iflag_albedo_omp = 0
997    CALL getin('iflag_albedo',iflag_albedo_omp)
998
999    ok_chlorophyll_omp=.FALSE.
1000    CALL getin('ok_chlorophyll',ok_chlorophyll_omp)
1001    !albedo SB <<<
1002    !
1003    !Config Key  = ok_sun_time
1004    !Config Desc = oui ou non variabilite solaire
1005    !Config Def  = .FALSE.
1006    !Config Help =
1007    !
1008    !
1009    !valeur AMIP II
1010    ok_suntime_rrtm_omp = .FALSE.
1011    IF (iflag_rrtm_omp==1) THEN
1012      CALL getin('ok_suntime_rrtm',ok_suntime_rrtm_omp)
1013    ENDIF
1014    !
1015    !Config Key  = flag_aerosol_strat
1016    !Config Desc = use stratospheric aerosols 0, 1, 2
1017    ! - 0 = no stratospheric aerosols
1018    ! - 1 = stratospheric aerosols scaled from 550 nm AOD
1019    ! - 2 = stratospheric aerosol properties from CMIP6
1020    !Config Def  = 0
1021    !Config Help = Used in physiq.F
1022    !
1023    !
1024    flag_aerosol_strat_omp = 0
1025    IF (iflag_rrtm_omp==1) THEN
1026      CALL getin('flag_aerosol_strat',flag_aerosol_strat_omp)
1027    ENDIF
1028
1029    !
1030    !Config Key  = iflag_cld_th
1031    !Config Desc = 
1032    !Config Def  = 1
1033    !Config Help =
1034    !
1035    iflag_cld_th_omp = 1
1036    ! On lit deux fois avec l'ancien et le nouveau nom
1037    ! pour assurer une retrocompatiblite.
1038    ! A abandonner un jour
1039    CALL getin('iflag_cldcon',iflag_cld_th_omp)
1040    CALL getin('iflag_cld_th',iflag_cld_th_omp)
1041    iflag_cld_cv_omp = 0
1042    CALL getin('iflag_cld_cv',iflag_cld_cv_omp)
1043
1044    !
1045    !Config Key  = tau_cld_cv
1046    !Config Desc =
1047    !Config Def  = 10.
1048    !Config Help =
1049    !
1050    tau_cld_cv_omp = 10.
1051    CALL getin('tau_cld_cv',tau_cld_cv_omp)
1052
1053    !
1054    !Config Key  = coefw_cld_cv
1055    !Config Desc =
1056    !Config Def  = 0.1
1057    !Config Help =
1058    !
1059    coefw_cld_cv_omp = 0.1
1060    CALL getin('coefw_cld_cv',coefw_cld_cv_omp)
1061
1062
1063
1064
1065    !
1066    !Config Key  = iflag_pdf
1067    !Config Desc = 
1068    !Config Def  = 0
1069    !Config Help =
1070    !
1071    iflag_pdf_omp = 0
1072    CALL getin('iflag_pdf',iflag_pdf_omp)
1073    !
1074    !Config Key  = fact_cldcon
1075    !Config Desc = 
1076    !Config Def  = 0.375
1077    !Config Help =
1078    !
1079    fact_cldcon_omp = 0.375
1080    CALL getin('fact_cldcon',fact_cldcon_omp)
1081
1082    !
1083    !Config Key  = facttemps
1084    !Config Desc = 
1085    !Config Def  = 1.e-4
1086    !Config Help =
1087    !
1088    facttemps_omp = 1.e-4
1089    CALL getin('facttemps',facttemps_omp)
1090
1091    !
1092    !Config Key  = ok_newmicro
1093    !Config Desc = 
1094    !Config Def  = .TRUE.
1095    !Config Help =
1096    !
1097    ok_newmicro_omp = .TRUE.
1098    CALL getin('ok_newmicro',ok_newmicro_omp)
1099    !
1100    !Config Key  = ratqsbas
1101    !Config Desc = 
1102    !Config Def  = 0.01
1103    !Config Help =
1104    !
1105    ratqsbas_omp = 0.01
1106    CALL getin('ratqsbas',ratqsbas_omp)
1107    !
1108    !Config Key  = ratqshaut
1109    !Config Desc = 
1110    !Config Def  = 0.3
1111    !Config Help =
1112    !
1113    ratqshaut_omp = 0.3
1114    CALL getin('ratqshaut',ratqshaut_omp)
1115
1116    !Config Key  = tau_ratqs
1117    !Config Desc = 
1118    !Config Def  = 1800.
1119    !Config Help =
1120    !
1121    tau_ratqs_omp = 1800.
1122    CALL getin('tau_ratqs',tau_ratqs_omp)
1123
1124    !
1125    !-----------------------------------------------------------------------
1126    ! Longitude solaire pour le calcul de l'ensoleillement en degre
1127    ! si on veut imposer la saison. Sinon, solarlong0=-999.999
1128    !Config Key  = solarlong0
1129    !Config Desc = 
1130    !Config Def  = -999.999
1131    !Config Help =
1132    !
1133    solarlong0_omp = -999.999
1134    CALL getin('solarlong0',solarlong0_omp)
1135    !
1136    !-----------------------------------------------------------------------
1137    !  Valeur imposee pour configuration idealisees
1138    !Config Key  = qsol0 pour le bucket, evap0 pour aquaplanetes, albsno0
1139    ! Default value -1 to activate the full computation
1140    qsol0_omp = -1.
1141    CALL getin('qsol0',qsol0_omp)
1142    evap0_omp = -1.
1143    CALL getin('evap0',evap0_omp)
1144    albsno0_omp = -1.
1145    CALL getin('albsno0',albsno0_omp)
1146    !
1147    !-----------------------------------------------------------------------
1148    !
1149    !Config Key  = iflag_sic
1150    !Config Desc = 
1151    !Config Def  = 0
1152    !Config Help =
1153    !
1154    iflag_sic_omp = 0
1155    CALL getin('iflag_sic',iflag_sic_omp)
1156    !
1157    !Config Key  = inertie_sic
1158    !Config Desc = 
1159    !Config Def  = 2000.
1160    !Config Help =
1161    !
1162    inertie_sic_omp = 2000.
1163    CALL getin('inertie_sic',inertie_sic_omp)
1164    !
1165    !Config Key  = inertie_lic
1166    !Config Desc = 
1167    !Config Def  = 2000.
1168    !Config Help =
1169    !
1170    inertie_lic_omp = 2000.
1171    CALL getin('inertie_lic',inertie_lic_omp)
1172    !
1173    !Config Key  = inertie_sno
1174    !Config Desc = 
1175    !Config Def  = 2000.
1176    !Config Help =
1177    !
1178    inertie_sno_omp = 2000.
1179    CALL getin('inertie_sno',inertie_sno_omp)
1180    !
1181    !Config Key  = inertie_sol
1182    !Config Desc = 
1183    !Config Def  = 2000.
1184    !Config Help =
1185    !
1186    inertie_sol_omp = 2000.
1187    CALL getin('inertie_sol',inertie_sol_omp)
1188
1189    !
1190    !Config Key  = rad_froid
1191    !Config Desc = 
1192    !Config Def  = 35.0
1193    !Config Help =
1194    !
1195    rad_froid_omp = 35.0
1196    CALL getin('rad_froid',rad_froid_omp)
1197
1198    !
1199    !Config Key  = rad_chau1
1200    !Config Desc = 
1201    !Config Def  = 13.0
1202    !Config Help =
1203    !
1204    rad_chau1_omp = 13.0
1205    CALL getin('rad_chau1',rad_chau1_omp)
1206
1207    !
1208    !Config Key  = rad_chau2
1209    !Config Desc = 
1210    !Config Def  = 9.0
1211    !Config Help =
1212    !
1213    rad_chau2_omp = 9.0
1214    CALL getin('rad_chau2',rad_chau2_omp)
1215
1216    !
1217    !Config Key  = t_glace_min
1218    !Config Desc = 
1219    !Config Def  = 258.
1220    !Config Help =
1221    !
1222    t_glace_min_omp = 258.
1223    CALL getin('t_glace_min',t_glace_min_omp)
1224
1225    !
1226    !Config Key  = t_glace_max
1227    !Config Desc = 
1228    !Config Def  = 273.13
1229    !Config Help =
1230    !
1231    t_glace_max_omp = 273.13
1232    CALL getin('t_glace_max',t_glace_max_omp)
1233
1234    !
1235    !Config Key  = exposant_glace
1236    !Config Desc = 
1237    !Config Def  = 2.
1238    !Config Help =
1239    !
1240    exposant_glace_omp = 1.
1241    CALL getin('exposant_glace',exposant_glace_omp)
1242
1243    !
1244    !Config Key  = iflag_t_glace
1245    !Config Desc = 
1246    !Config Def  = 0
1247    !Config Help =
1248    !
1249    iflag_t_glace_omp = 0
1250    CALL getin('iflag_t_glace',iflag_t_glace_omp)
1251
1252    !
1253    !Config Key  = iflag_cloudth_vert
1254    !Config Desc = 
1255    !Config Def  = 0
1256    !Config Help =
1257    !
1258    iflag_cloudth_vert_omp = 0
1259    CALL getin('iflag_cloudth_vert',iflag_cloudth_vert_omp)
1260
1261    !
1262    !Config Key  = iflag_rain_incloud_vol
1263    !Config Desc = 
1264    !Config Def  = 0
1265    !Config Help =
1266    !
1267    iflag_rain_incloud_vol_omp = 0
1268    CALL getin('iflag_rain_incloud_vol',iflag_rain_incloud_vol_omp)
1269
1270    !
1271    !Config Key  = iflag_ice_thermo
1272    !Config Desc = 
1273    !Config Def  = 0
1274    !Config Help =
1275    !
1276    iflag_ice_thermo_omp = 0
1277    CALL getin('iflag_ice_thermo',iflag_ice_thermo_omp)
1278
1279    !Config Key  = rei_min
1280    !Config Desc = 
1281    !Config Def  = 3.5
1282    !Config Help =
1283    !
1284    rei_min_omp = 3.5
1285    CALL getin('rei_min',rei_min_omp)
1286
1287    !
1288    !Config Key  = rei_max
1289    !Config Desc = 
1290    !Config Def  = 61.29
1291    !Config Help =
1292    !
1293    rei_max_omp = 61.29
1294    CALL getin('rei_max',rei_max_omp)
1295
1296    !
1297    !Config Key  = top_height
1298    !Config Desc =
1299    !Config Def  = 3
1300    !Config Help =
1301    !
1302    top_height_omp = 3
1303    CALL getin('top_height',top_height_omp)
1304
1305    !
1306    !Config Key  = overlap
1307    !Config Desc =
1308    !Config Def  = 3
1309    !Config Help =
1310    !
1311    overlap_omp = 3
1312    CALL getin('overlap',overlap_omp)
1313
1314    !
1315    !Config Key  = cdmmax
1316    !Config Desc =
1317    !Config Def  = 1.3E-3
1318    !Config Help =
1319    !
1320    cdmmax_omp = 1.3E-3
1321    CALL getin('cdmmax',cdmmax_omp)
1322
1323    !
1324    !Config Key  = cdhmax
1325    !Config Desc =
1326    !Config Def  = 1.1E-3
1327    !Config Help =
1328    !
1329    cdhmax_omp = 1.1E-3
1330    CALL getin('cdhmax',cdhmax_omp)
1331
1332    !261103
1333    !
1334    !Config Key  = ksta
1335    !Config Desc =
1336    !Config Def  = 1.0e-10
1337    !Config Help =
1338    !
1339    ksta_omp = 1.0e-10
1340    CALL getin('ksta',ksta_omp)
1341
1342    !
1343    !Config Key  = ksta_ter
1344    !Config Desc =
1345    !Config Def  = 1.0e-10
1346    !Config Help =
1347    !
1348    ksta_ter_omp = 1.0e-10
1349    CALL getin('ksta_ter',ksta_ter_omp)
1350
1351    !Config Key  = f_ri_cd_min
1352    !Config Desc =
1353    !Config Def  = 0.1
1354    !Config Help =
1355    !
1356    f_ri_cd_min_omp = 0.1
1357    CALL getin('f_ri_cd_min',f_ri_cd_min_omp)
1358
1359    !
1360    !Config Key  = ok_kzmin
1361    !Config Desc =
1362    !Config Def  = .TRUE.
1363    !Config Help =
1364    !
1365    ok_kzmin_omp = .TRUE.
1366    CALL getin('ok_kzmin',ok_kzmin_omp)
1367
1368    pbl_lmixmin_alpha_omp=0.0
1369    CALL getin('pbl_lmixmin_alpha',pbl_lmixmin_alpha_omp)
1370
1371    !
1372    !Config Key  = fmagic
1373    !Config Desc = additionnal multiplicator factor used for albedo
1374    !Config Def  = 1.
1375    !Config Help = additionnal multiplicator factor used in albedo.F
1376    !
1377    fmagic_omp = 1.
1378    CALL getin('fmagic',fmagic_omp)
1379
1380    !
1381    !Config Key  = pmagic
1382    !Config Desc = additional factor used for albedo
1383    !Config Def  = 0.
1384    !Config Help = additional factor used in albedo.F
1385    !
1386    pmagic_omp = 0.
1387    CALL getin('pmagic',pmagic_omp)
1388
1389
1390    !Config Key = ok_lic_melt
1391    !Config Desc = Prise en compte de la fonte de la calotte dans le bilan d'eau
1392    !Config Def  = .FALSE.
1393    !Config Help = mettre a .FALSE. pour assurer la conservation en eau
1394    ok_lic_melt_omp = .FALSE.
1395    CALL getin('ok_lic_melt', ok_lic_melt_omp)
1396
1397
1398    !Config Key = ok_lic_cond
1399    !Config Desc = Prise en compte depot de vapeur d'eau sur la calotte dans le bilan d'eau
1400    !Config Def  = .FALSE.
1401    !Config Help = mettre a .TRUE. pour assurer la conservation en eau
1402    ok_lic_cond_omp = .FALSE.
1403    CALL getin('ok_lic_cond', ok_lic_cond_omp)
1404
1405    !
1406    ! PARAMETER FOR THE PLANETARY BOUNDARY LAYER
1407    !
1408
1409    !Config Key  = iflag_pbl
1410    !Config Desc =
1411    !Config Def  = 1
1412    !Config Help =
1413    !
1414    iflag_pbl_omp = 1
1415    CALL getin('iflag_pbl',iflag_pbl_omp)
1416
1417!FC
1418    !Config Key  = ifl_pbltree
1419    !Config Desc = drag from trees 0 no activated
1420    !Config Def  = 0
1421    !Config Help =
1422    !
1423    ifl_pbltree_omp = 0
1424    CALL getin('ifl_pbltree',ifl_pbltree_omp)
1425!FC
1426    !Config Key  = Cd_frein
1427    !Config Desc = drag from trees
1428    !Config Def  = 7.5E-02 (valeur Masson mais fait planter avec des LAI eleves)
1429    !Config Help =
1430    !
1431    Cd_frein_omp = 7.5E-02
1432    CALL getin('Cd_frein',Cd_frein_omp)
1433
1434    !
1435    !Config Key  = iflag_pbl_split
1436    !Config Desc = decimal flag: least signif digit = split vdf; next digit = split thermals
1437    !Config Def  = 0
1438    !Config Help = 0-> no splitting; 1-> vdf splitting; 10-> thermals splitting; 11-> full splitting
1439    !
1440    iflag_pbl_split_omp = 0
1441    call getin('iflag_pbl_split',iflag_pbl_split_omp)
1442    !
1443    !Config Key  = iflag_order2_sollw
1444    !Config Desc =
1445    !Config Def  = 0
1446    !Config Help =
1447    !
1448    iflag_order2_sollw_omp = 0
1449    CALL getin('iflag_order2_sollw',iflag_order2_sollw_omp)
1450    !
1451    !Config Key  = iflag_thermals
1452    !Config Desc =
1453    !Config Def  = 0
1454    !Config Help =
1455    !
1456    iflag_thermals_omp = 0
1457    CALL getin('iflag_thermals',iflag_thermals_omp)
1458    !
1459    !Config Key  = iflag_thermals_ed
1460    !Config Desc =
1461    !Config Def  = 0
1462    !Config Help =
1463    !
1464    fact_thermals_ed_dz_omp = 0.1
1465
1466    CALL getin('fact_thermals_ed_dz',fact_thermals_ed_dz_omp)
1467    !
1468    !
1469    !Config Key  = iflag_thermals_ed
1470    !Config Desc =
1471    !Config Def  = 0
1472    !Config Help =
1473    !
1474    iflag_thermals_ed_omp = 0
1475    CALL getin('iflag_thermals_ed',iflag_thermals_ed_omp)
1476    !
1477    !
1478    !Config Key  = iflag_thermals_optflux
1479    !Config Desc =
1480    !Config Def  = 0
1481    !Config Help =
1482    !
1483    iflag_thermals_optflux_omp = 0
1484    CALL getin('iflag_thermals_optflux',iflag_thermals_optflux_omp)
1485    !
1486    !Config Key  = iflag_thermals_closure
1487    !Config Desc =
1488    !Config Def  = 0
1489    !Config Help =
1490    !
1491    iflag_thermals_closure_omp = 1
1492    CALL getin('iflag_thermals_closure',iflag_thermals_closure_omp)
1493    !
1494    !Config Key  = nsplit_thermals
1495    !Config Desc =
1496    !Config Def  = 1
1497    !Config Help =
1498    !
1499    nsplit_thermals_omp = 1
1500    CALL getin('nsplit_thermals',nsplit_thermals_omp)
1501
1502    !Config Key  = alp_bl_k
1503    !Config Desc =
1504    !Config Def  = 0.
1505    !Config Help =
1506    !
1507    alp_bl_k_omp = 1.
1508    CALL getin('alp_bl_k',alp_bl_k_omp)
1509
1510    ! nrlmd le 10/04/2012
1511
1512    !Config Key  = iflag_trig_bl
1513    !Config Desc = 
1514    !Config Def  = 0
1515    !Config Help =
1516    !
1517    iflag_trig_bl_omp = 0
1518    CALL getin('iflag_trig_bl',iflag_trig_bl_omp)
1519
1520    !Config Key  = s_trig_bl
1521    !Config Desc = 
1522    !Config Def  = 0
1523    !Config Help =
1524    !
1525    s_trig_omp = 2e7
1526    CALL getin('s_trig',s_trig_omp)
1527
1528    !Config Key  = tau_trig_shallow
1529    !Config Desc = 
1530    !Config Def  = 0
1531    !Config Help =
1532    !
1533    tau_trig_shallow_omp = 600
1534    CALL getin('tau_trig_shallow',tau_trig_shallow_omp)
1535
1536    !Config Key  = tau_trig_deep
1537    !Config Desc = 
1538    !Config Def  = 0
1539    !Config Help =
1540    !
1541    tau_trig_deep_omp = 1800
1542    CALL getin('tau_trig_deep',tau_trig_deep_omp)
1543
1544    !Config Key  = iflag_clos_bl
1545    !Config Desc = 
1546    !Config Def  = 0
1547    !Config Help =
1548    !
1549    iflag_clos_bl_omp = 0
1550    CALL getin('iflag_clos_bl',iflag_clos_bl_omp)
1551
1552    ! fin nrlmd le 10/04/2012
1553
1554    !
1555    !Config Key  = tau_thermals
1556    !Config Desc =
1557    !Config Def  = 0.
1558    !Config Help =
1559    !
1560    tau_thermals_omp = 0.
1561    CALL getin('tau_thermals',tau_thermals_omp)
1562
1563    !
1564    !Config Key  = iflag_coupl
1565    !Config Desc =
1566    !Config Def  = 0
1567    !Config Help =
1568    !
1569    iflag_coupl_omp = 0
1570    CALL getin('iflag_coupl',iflag_coupl_omp)
1571
1572    !
1573    !Config Key  = iflag_clos
1574    !Config Desc = 
1575    !Config Def  = 0
1576    !Config Help =
1577    !
1578    iflag_clos_omp = 1
1579    CALL getin('iflag_clos',iflag_clos_omp)
1580    !
1581    !Config Key  = coef_clos_ls
1582    !Config Desc = 
1583    !Config Def  = 0
1584    !Config Help =
1585    !
1586    coef_clos_ls_omp = 0.
1587    CALL getin('coef_clos_ls',coef_clos_ls_omp)
1588
1589    !
1590    !Config Key  = iflag_cvl_sigd
1591    !Config Desc = 
1592    !Config Def  = 0
1593    !Config Help =
1594    !
1595    iflag_cvl_sigd_omp = 0
1596    CALL getin('iflag_cvl_sigd',iflag_cvl_sigd_omp)
1597
1598    !Config Key  = iflag_wake
1599    !Config Desc = 
1600    !Config Def  = 0
1601    !Config Help =
1602    !
1603    iflag_wake_omp = 0
1604    CALL getin('iflag_wake',iflag_wake_omp)
1605
1606    !Config Key  = alp_offset
1607    !Config Desc = 
1608    !Config Def  = 0
1609    !Config Help =
1610    !
1611    alp_offset_omp = 0.
1612    CALL getin('alp_offset',alp_offset_omp)
1613
1614    !
1615    !Config Key  = lev_histhf
1616    !Config Desc =
1617    !Config Def  = 1
1618    !Config Help =
1619    !
1620    lev_histhf_omp = 1
1621    CALL getin('lev_histhf',lev_histhf_omp)
1622
1623    !
1624    !Config Key  = lev_histday
1625    !Config Desc =
1626    !Config Def  = 1
1627    !Config Help =
1628    !
1629    lev_histday_omp = 1
1630    CALL getin('lev_histday',lev_histday_omp)
1631
1632    !
1633    !Config Key  = lev_histmth
1634    !Config Desc =
1635    !Config Def  = 2
1636    !Config Help =
1637    !
1638    lev_histmth_omp = 2
1639    CALL getin('lev_histmth',lev_histmth_omp)
1640    !
1641    !Config Key  = lev_histins
1642    !Config Desc =
1643    !Config Def  = 1
1644    !Config Help =
1645    !
1646    lev_histins_omp = 1
1647    CALL getin('lev_histins',lev_histins_omp)
1648    !
1649    !Config Key  = lev_histLES
1650    !Config Desc =
1651    !Config Def  = 1
1652    !Config Help =
1653    !
1654    lev_histLES_omp = 1
1655    CALL getin('lev_histLES',lev_histLES_omp)
1656    !
1657    !Config Key  = lev_histdayNMC
1658    !Config Desc =
1659    !Config Def  = 8
1660    !Config Help =
1661    !
1662    lev_histdayNMC_omp = 8
1663    CALL getin('lev_histdayNMC',lev_histdayNMC_omp)
1664    !
1665    !Config Key  = levout_histNMC
1666    !Config Desc =
1667    !Config Def  = 5
1668    !Config Help =
1669    !
1670    levout_histNMC_omp(1) = 5
1671    levout_histNMC_omp(2) = 5
1672    levout_histNMC_omp(3) = 5
1673    CALL getin('levout_histNMC',levout_histNMC_omp)
1674    !
1675    !histNMC BEG
1676    !Config Key  = ok_histNMC
1677    !Config Desc = ok_histNMC(1) = frequence de sortie fichiers histmthNMC
1678    !Config Desc = ok_histNMC(2) = frequence de sortie fichiers histdayNMC
1679    !Config Desc = ok_histNMC(3) = frequence de sortie fichiers histhfNMC
1680    !Config Def  = n, n, n
1681    !Config Help =
1682    !
1683    ok_histNMC_omp(1) = .FALSE.
1684    ok_histNMC_omp(2) = .FALSE.
1685    ok_histNMC_omp(3) = .FALSE.
1686    CALL getin('ok_histNMC',ok_histNMC_omp)
1687    !
1688    !Config Key  = freq_outNMC
1689    !Config Desc = freq_outNMC(1) = frequence de sortie fichiers histmthNMC
1690    !Config Desc = freq_outNMC(2) = frequence de sortie fichiers histdayNMC
1691    !Config Desc = freq_outNMC(3) = frequence de sortie fichiers histhfNMC
1692    !Config Def  = 2592000., 86400., 21600. (1mois, 1jour, 6h)
1693    !Config Help =
1694    !
1695    freq_outNMC_omp(1) = mth_len
1696    freq_outNMC_omp(2) = 1.
1697    freq_outNMC_omp(3) = 1./4.
1698    CALL getin('freq_outNMC',freq_outNMC_omp)
1699    !
1700    !Config Key  = freq_calNMC
1701    !Config Desc = freq_calNMC(1) = frequence de calcul fichiers histmthNMC
1702    !Config Desc = freq_calNMC(2) = frequence de calcul fichiers histdayNMC
1703    !Config Desc = freq_calNMC(3) = frequence de calcul fichiers histhfNMC
1704    !Config Def  = pasphys
1705    !Config Help =
1706    !
1707    freq_calNMC_omp(1) = pasphys
1708    freq_calNMC_omp(2) = pasphys
1709    freq_calNMC_omp(3) = pasphys
1710    CALL getin('freq_calNMC',freq_calNMC_omp)
1711    !
1712    !Config Key  = type_run
1713    !Config Desc =
1714    !Config Def  = 'AMIP'/'CFMIP'  ou 'CLIM'/'ENSP'
1715    !Config Help =
1716    !
1717    type_run_omp = 'AMIP'
1718    CALL getin('type_run',type_run_omp)
1719
1720    !
1721    !Config Key  = ok_cosp
1722    !Config Desc =
1723    !Config Def  = .FALSE.
1724    !Config Help =
1725    !
1726    ok_cosp_omp = .FALSE.
1727    CALL getin('ok_cosp',ok_cosp_omp)
1728
1729    !
1730    !Config Key  = ok_airs
1731    !Config Desc =
1732    !Config Def  = .FALSE.
1733    !Config Help =
1734    !
1735    ok_airs_omp = .FALSE.
1736    CALL getin('ok_airs',ok_airs_omp)
1737
1738    !
1739    !Config Key  = ok_mensuelCOSP
1740    !Config Desc =
1741    !Config Def  = .TRUE.
1742    !Config Help =
1743    !
1744    ok_mensuelCOSP_omp = .TRUE.
1745    CALL getin('ok_mensuelCOSP',ok_mensuelCOSP_omp)
1746
1747    !
1748    !Config Key  = ok_journeCOSP
1749    !Config Desc =
1750    !Config Def  = .TRUE.
1751    !Config Help =
1752    !
1753    ok_journeCOSP_omp = .TRUE.
1754    CALL getin('ok_journeCOSP',ok_journeCOSP_omp)
1755
1756    !
1757    !Config Key  = ok_hfCOSP
1758    !Config Desc =
1759    !Config Def  = .FALSE.
1760    !Config Help =
1761    !
1762    ok_hfCOSP_omp = .FALSE.
1763    CALL getin('ok_hfCOSP',ok_hfCOSP_omp)
1764
1765    !
1766    ! coordonnees (lonmin_ins, lonmax_ins, latmin_ins, latmax_ins) pour la zone
1767    ! avec sorties instantannees tous les pas de temps de la physique => "histbilKP_ins.nc"
1768    !
1769    !Config Key  = lonmin_ins
1770    !Config Desc = 100. 
1771    !Config Def  = longitude minimale sorties "bilKP_ins"
1772    !Config Help =
1773    !
1774    lonmin_ins_omp = 100.
1775    CALL getin('lonmin_ins',lonmin_ins_omp)
1776    !
1777    !Config Key  = lonmax_ins
1778    !Config Desc = 130.
1779    !Config Def  = longitude maximale sorties "bilKP_ins"
1780    !Config Help =
1781    !
1782    lonmax_ins_omp = 130.
1783    CALL getin('lonmax_ins',lonmax_ins_omp)
1784    !
1785    !Config Key  = latmin_ins
1786    !Config Desc = -20. 
1787    !Config Def  = latitude minimale sorties "bilKP_ins"
1788    !Config Help =
1789    !
1790    latmin_ins_omp = -20.
1791    CALL getin('latmin_ins',latmin_ins_omp)
1792    !
1793    !Config Key  = latmax_ins
1794    !Config Desc = 20.
1795    !Config Def  = latitude maximale sorties "bilKP_ins"
1796    !Config Help =
1797    !
1798    latmax_ins_omp = 20.
1799    CALL getin('latmax_ins',latmax_ins_omp)
1800    !
1801    !Config Key  = ecrit_hf
1802    !Config Desc =
1803    !Config Def  = 1./8. !toutes les 3h
1804    !Config Help =
1805    !
1806    ecrit_hf_omp = 1./8.
1807    CALL getin('ecrit_hf',ecrit_hf_omp)
1808    !
1809    !Config Key  = ecrit_ins
1810    !Config Desc =
1811    !Config Def  = 1./48. ! toutes les 1/2 h
1812    !Config Help =
1813    !
1814    ecrit_ins_omp = 1./48.
1815    CALL getin('ecrit_ins',ecrit_ins_omp)
1816    !
1817    !Config Key  = ecrit_day
1818    !Config Desc =
1819    !Config Def  = 1.0 !tous les jours
1820    !Config Help = nombre de jours pour ecriture fichier histday.nc
1821    !
1822    ecrit_day_omp = 1.0
1823    CALL getin('ecrit_day',ecrit_day_omp)
1824    !
1825    !Config Key  = ecrit_mth
1826    !Config Desc =
1827    !Config Def  = 30. !tous les 30jours (1 fois par mois)
1828    !Config Help =
1829    !
1830    ecrit_mth_omp = 30.
1831    CALL getin('ecrit_mth',ecrit_mth_omp)
1832    !
1833    !Config Key  = ecrit_tra
1834    !Config Desc =
1835    !Config Def  = 30. !tous les 30jours (1 fois par mois)
1836    !Config Help =
1837    !
1838    ecrit_tra_omp = 0.
1839    CALL getin('ecrit_tra',ecrit_tra_omp)
1840    !
1841    !Config Key  = ecrit_reg
1842    !Config Desc =
1843    !Config Def  = 0.25  !4 fois par jour
1844    !Config Help =
1845    !
1846    ecrit_reg_omp = 0.25   !4 fois par jour
1847    CALL getin('ecrit_reg',ecrit_reg_omp)
1848    !
1849    !
1850    print*,'CONFPHYS OOK avant drag_ter'
1851    !
1852    ! PARAMETRES CDRAG
1853    !
1854    f_cdrag_ter_omp = 0.8
1855    CALL getin('f_cdrag_ter',f_cdrag_ter_omp)
1856    !
1857    f_cdrag_oce_omp = 0.8
1858    CALL getin('f_cdrag_oce',f_cdrag_oce_omp)
1859    !
1860
1861    ! Gustiness flags
1862    f_z0qh_oce_omp = 1.
1863    CALL getin('f_z0qh_oce',f_z0qh_oce_omp)
1864    !
1865    f_qsat_oce_omp = 1.
1866    CALL getin('f_qsat_oce',f_qsat_oce_omp)
1867    !
1868    f_gust_bl_omp = 0.
1869    CALL getin('f_gust_bl',f_gust_bl_omp)
1870    !
1871    f_gust_wk_omp = 0.
1872    CALL getin('f_gust_wk',f_gust_wk_omp)
1873    !
1874    !Config Key  = iflag_z0_oce
1875    !Config Desc = 0 (z0h=z0m), 1 (diff. equ. for z0h and z0m), -1 (z0m=z0h=z0min)
1876    !Config Def  = 0   ! z0h = z0m
1877    !Config Help =
1878    !
1879    iflag_z0_oce_omp=0
1880    CALL getin('iflag_z0_oce',iflag_z0_oce_omp)
1881    !
1882    iflag_gusts_omp=0
1883    CALL getin('iflag_gusts',iflag_gusts_omp)
1884    !
1885    min_wind_speed_omp = 1.
1886    CALL getin('min_wind_speed',min_wind_speed_omp)
1887
1888    z0m_seaice_omp = 0.002 ; CALL getin('z0m_seaice',z0m_seaice_omp)
1889    z0h_seaice_omp = 0.002 ; CALL getin('z0h_seaice',z0h_seaice_omp)
1890
1891    f_rugoro_omp = 0.
1892    CALL getin('f_rugoro',f_rugoro_omp)
1893
1894    z0min_omp = 0.000015
1895    CALL getin('z0min',z0min_omp)
1896
1897
1898    ! PARAMETERS FOR CONVECTIVE INHIBITION BY TROPOS. DRYNESS
1899    !
1900    !Config Key  = supcrit1
1901    !Config Desc =
1902    !Config Def  = .540
1903    !Config Help =
1904    !
1905    supcrit1_omp = .540
1906    CALL getin('supcrit1',supcrit1_omp)
1907
1908    !
1909    !Config Key  = supcrit2
1910    !Config Desc =
1911    !Config Def  = .600
1912    !Config Help =
1913    !
1914    supcrit2_omp = .600
1915    CALL getin('supcrit2',supcrit2_omp)
1916
1917    !
1918    ! PARAMETERS FOR THE MIXING DISTRIBUTION
1919    ! iflag_mix: 0=OLD,
1920    !            1=NEW (JYG),           
1921    !            2=NEW + conv. depth inhib. by tropos. dryness
1922    ! '2' is NOT operationnal and should not be used.
1923    !
1924    !Config Key  = iflag_mix
1925    !Config Desc =
1926    !Config Def  = 1
1927    !Config Help =
1928    !
1929    iflag_mix_omp = 1
1930    CALL getin('iflag_mix',iflag_mix_omp)
1931
1932!
1933    ! PARAMETERS FOR THE EROSION OF THE ADIABATIC ASCENTS
1934    ! iflag_mix_adiab: 0=OLD,
1935    !                  1=NEW (CR),           
1936    !           
1937    !
1938    !Config Key  = iflag_mix_adiab
1939    !Config Desc =
1940    !Config Def  = 1
1941    !Config Help =
1942    !
1943    iflag_mix_adiab_omp = 0
1944    CALL getin('iflag_mix_adiab',iflag_mix_adiab_omp)
1945
1946    !
1947    !Config Key  = scut
1948    !Config Desc =
1949    !Config Def  = 0.95
1950    !Config Help =
1951    !
1952    scut_omp = 0.95
1953    CALL getin('scut',scut_omp)
1954
1955    !
1956    !Config Key  = qqa1
1957    !Config Desc =
1958    !Config Def  = 1.0
1959    !Config Help =
1960    !
1961    qqa1_omp = 1.0
1962    CALL getin('qqa1',qqa1_omp)
1963
1964    !
1965    !Config Key  = qqa2
1966    !Config Desc =
1967    !Config Def  = 0.0
1968    !Config Help =
1969    !
1970    qqa2_omp = 0.0
1971    CALL getin('qqa2',qqa2_omp)
1972
1973    !
1974    !Config Key  = gammas
1975    !Config Desc =
1976    !Config Def  = 0.05
1977    !Config Help =
1978    !
1979    gammas_omp = 0.05
1980    CALL getin('gammas',gammas_omp)
1981
1982    !
1983    !Config Key  = Fmax
1984    !Config Desc =
1985    !Config Def  = 0.65
1986    !Config Help =
1987    !
1988    Fmax_omp = 0.65
1989    CALL getin('Fmax',Fmax_omp)
1990
1991    !
1992    !Config Key  = tmax_fonte_cv
1993    !Config Desc =
1994    !Config Def  = 275.15
1995    !Config Help =
1996    !
1997    tmax_fonte_cv_omp = 275.15
1998    CALL getin('tmax_fonte_cv',tmax_fonte_cv_omp)
1999
2000    !
2001    !Config Key  = alphas 
2002    !Config Desc =
2003    !Config Def  = -5.
2004    !Config Help =
2005    !
2006    alphas_omp = -5.
2007    CALL getin('alphas',alphas_omp)
2008
2009    !Config key = ok_strato
2010    !Config  Desc = activation de la version strato
2011    !Config  Def  = .FALSE.
2012    !Config  Help = active la version stratosph\'erique de LMDZ de F. Lott
2013    !               Et la sponge layer (Runs Stratospheriques)
2014
2015    ok_strato_omp=.FALSE.
2016    CALL getin('ok_strato',ok_strato_omp)
2017
2018    !Config  key = ok_hines
2019    !Config  Desc = activation de la parametrisation de hines
2020    !Config  Def  = .FALSE.
2021    !Config  Help = Clefs controlant la parametrization de Hines
2022
2023    ok_hines_omp=.FALSE.
2024    CALL getin('ok_hines',ok_hines_omp)
2025
2026    !  Parametres pour les ondes de gravite
2027    ! 
2028    !  Subgrid Scale Orography (Lott Miller (1997), Lott (1999))
2029
2030    sso_gkdrag_omp = merge(0.1875, 0.2, ok_strato_omp)
2031    CALL getin('sso_gkdrag', sso_gkdrag_omp)
2032
2033    sso_grahil_omp=merge(0.1,1.,ok_strato_omp)
2034    CALL getin('sso_grahil', sso_grahil_omp)
2035
2036    sso_grcrit_omp =merge(1.,0.01,ok_strato_omp)
2037    CALL getin('sso_grcrit', sso_grcrit_omp)
2038
2039    sso_gfrcri_omp = 1.
2040    CALL getin('sso_gfrcri', sso_gfrcri_omp)
2041
2042    sso_gkwake_omp = 0.50
2043    CALL getin('sso_gkwake', sso_gkwake_omp)
2044
2045    sso_gklift_omp = merge(0.25,0.50,ok_strato_omp)
2046    CALL getin('sso_gklift', sso_gklift_omp)
2047
2048    ! Random gravity waves:
2049
2050    ok_gwd_rando_omp = .FALSE.
2051    IF ( klon_glo == 1 ) THEN
2052       print*,'La parametrisation des ondes de gravites non orographiques'
2053       print*,'ne fonctionne pas en 1D'
2054    ELSE
2055       CALL getin('ok_gwd_rando', ok_gwd_rando_omp)
2056    ENDIF
2057
2058    gwd_rando_ruwmax_omp = 2.00
2059    CALL getin('gwd_rando_ruwmax', gwd_rando_ruwmax_omp)
2060
2061    gwd_rando_sat_omp = 0.25
2062    CALL getin('gwd_rando_sat', gwd_rando_sat_omp)
2063
2064    gwd_front_ruwmax_omp = 2.50
2065    CALL getin('gwd_front_ruwmax', gwd_front_ruwmax_omp)
2066
2067    gwd_front_sat_omp = 0.60
2068    CALL getin('gwd_front_sat', gwd_front_sat_omp)
2069
2070
2071    !Config  key = ok_qch4
2072    !Config  Desc = activation de la parametrisation du methane
2073    !Config  Def  = .FALSE.
2074    !Config  Help = Clef controlant l'activation de la parametrisation
2075    !               de l'humidite due a oxydation+photolyse du methane strato
2076
2077    ok_qch4_omp=.FALSE.
2078    CALL getin('ok_qch4',ok_qch4_omp)
2079
2080    !Config Key  = OK_LES                                               
2081    !Config Desc = Pour des sorties LES                                 
2082    !Config Def  = .FALSE.                                             
2083    !Config Help = Pour creer le fichier histLES contenant les sorties 
2084    !              LES                                                 
2085    !                                                                   
2086    ok_LES_omp = .FALSE.                                             
2087    CALL getin('OK_LES', ok_LES_omp)                                 
2088
2089    !Config Key  = callstats                                               
2090    !Config Desc = Pour des sorties callstats                                 
2091    !Config Def  = .FALSE.                                             
2092    !Config Help = Pour creer le fichier stats contenant les sorties 
2093    !              stats                                                 
2094    !                                                                   
2095    callstats_omp = .FALSE.                                             
2096    CALL getin('callstats', callstats_omp)                                 
2097    !
2098    !Config Key  = ecrit_LES
2099    !Config Desc = Frequence d'ecriture des resultats du LES en nombre de jours;
2100    !              par defaut 1., i.e. 1 jour
2101    !Config Def  = 1./8.
2102    !Config Help = ...
2103    !
2104    !
2105    adjust_tropopause = .FALSE.
2106    CALL getin('adjust_tropopause', adjust_tropopause_omp)
2107    !
2108    !Config Key  = adjust_tropopause
2109    !Config Desc = Adjust the ozone field from the climoz file by stretching its
2110    !              tropopause so that it matches the one of LMDZ.
2111    !Config Def  = .FALSE.
2112    !Config Help = Ensure tropospheric ozone column conservation.
2113    !
2114    !
2115    ok_daily_climoz = .FALSE.
2116    CALL getin('ok_daily_climoz', ok_daily_climoz_omp)
2117    !
2118    !Config Key  = ok_daily_climoz
2119    !Config Desc = Interpolate in time the ozone forcings within ce0l.
2120    !              .TRUE. if backward compatibility is needed.
2121    !Config Def  = .TRUE.
2122    !Config Help = .FALSE. ensure much fewer (no calendar dependency)
2123    !  and lighter monthly climoz files, inetrpolated in time at gcm run time.
2124    !
2125    ecrit_LES_omp = 1./8.
2126    CALL getin('ecrit_LES', ecrit_LES_omp)
2127    !
2128    read_climoz = 0 ! default value
2129    CALL getin('read_climoz', read_climoz)
2130
2131    carbon_cycle_tr_omp=.FALSE.
2132    CALL getin('carbon_cycle_tr',carbon_cycle_tr_omp)
2133
2134    carbon_cycle_cpl_omp=.FALSE.
2135    CALL getin('carbon_cycle_cpl',carbon_cycle_cpl_omp)
2136
2137    !$OMP END MASTER
2138    !$OMP BARRIER
2139
2140    R_ecc = R_ecc_omp
2141    R_peri = R_peri_omp
2142    R_incl = R_incl_omp
2143    solaire = solaire_omp
2144    ok_suntime_rrtm = ok_suntime_rrtm_omp
2145    co2_ppm = co2_ppm_omp
2146    RCO2 = RCO2_omp
2147    CH4_ppb = CH4_ppb_omp
2148    RCH4 = RCH4_omp
2149    N2O_ppb = N2O_ppb_omp
2150    RN2O = RN2O_omp
2151    CFC11_ppt = CFC11_ppt_omp
2152    RCFC11 = RCFC11_omp
2153    CFC12_ppt = CFC12_ppt_omp
2154    RCFC12 = RCFC12_omp
2155    RCO2_act = RCO2
2156    RCH4_act = RCH4
2157    RN2O_act = RN2O
2158    RCFC11_act = RCFC11
2159    RCFC12_act = RCFC12
2160    RCO2_per = RCO2_per_omp
2161    RCH4_per = RCH4_per_omp
2162    RN2O_per = RN2O_per_omp
2163    RCFC11_per = RCFC11_per_omp
2164    RCFC12_per = RCFC12_per_omp
2165
2166    cycle_diurne = cycle_diurne_omp
2167    soil_model = soil_model_omp
2168    new_oliq = new_oliq_omp
2169    ok_orodr = ok_orodr_omp
2170    ok_orolf = ok_orolf_omp
2171    ok_limitvrai = ok_limitvrai_omp
2172    nbapp_rad = nbapp_rad_omp
2173    iflag_con = iflag_con_omp
2174    nbapp_cv = nbapp_cv_omp
2175    nbapp_wk = nbapp_wk_omp
2176    iflag_ener_conserv = iflag_ener_conserv_omp
2177    ok_conserv_q = ok_conserv_q_omp
2178    iflag_fisrtilp_qsat = iflag_fisrtilp_qsat_omp
2179    iflag_bergeron = iflag_bergeron_omp
2180
2181    epmax = epmax_omp
2182    coef_epmax_cape = coef_epmax_cape_omp
2183    ok_adj_ema = ok_adj_ema_omp
2184    iflag_clw = iflag_clw_omp
2185    cld_lc_lsc = cld_lc_lsc_omp
2186    cld_lc_con = cld_lc_con_omp
2187    cld_tau_lsc = cld_tau_lsc_omp
2188    cld_tau_con = cld_tau_con_omp
2189    ffallv_lsc = ffallv_lsc_omp
2190    ffallv_con = ffallv_con_omp
2191    coef_eva = coef_eva_omp
2192    reevap_ice = reevap_ice_omp
2193    iflag_pdf = iflag_pdf_omp
2194    solarlong0 = solarlong0_omp
2195    qsol0 = qsol0_omp
2196    evap0 = evap0_omp
2197    albsno0 = albsno0_omp
2198    iflag_sic = iflag_sic_omp
2199    inertie_sol = inertie_sol_omp
2200    inertie_sic = inertie_sic_omp
2201    inertie_lic = inertie_lic_omp
2202    inertie_sno = inertie_sno_omp
2203    rad_froid = rad_froid_omp
2204    rad_chau1 = rad_chau1_omp
2205    rad_chau2 = rad_chau2_omp
2206    t_glace_min = t_glace_min_omp
2207    t_glace_max = t_glace_max_omp
2208    exposant_glace = exposant_glace_omp
2209    iflag_t_glace = iflag_t_glace_omp
2210    iflag_cloudth_vert=iflag_cloudth_vert_omp
2211    iflag_rain_incloud_vol=iflag_rain_incloud_vol_omp
2212    iflag_ice_thermo = iflag_ice_thermo_omp
2213    rei_min = rei_min_omp
2214    rei_max = rei_max_omp
2215    top_height = top_height_omp
2216    overlap = overlap_omp
2217    cdmmax = cdmmax_omp
2218    cdhmax = cdhmax_omp
2219    ksta = ksta_omp
2220    ksta_ter = ksta_ter_omp
2221    f_ri_cd_min = f_ri_cd_min_omp
2222    ok_kzmin = ok_kzmin_omp
2223    pbl_lmixmin_alpha=pbl_lmixmin_alpha_omp
2224    fmagic = fmagic_omp
2225    pmagic = pmagic_omp
2226    iflag_pbl = iflag_pbl_omp
2227    iflag_pbl_split = iflag_pbl_split_omp
2228!FC
2229    ifl_pbltree = ifl_pbltree_omp
2230    Cd_frein    =Cd_frein_omp
2231    iflag_order2_sollw = iflag_order2_sollw_omp
2232    lev_histhf = lev_histhf_omp
2233    lev_histday = lev_histday_omp
2234    lev_histmth = lev_histmth_omp
2235    lev_histins = lev_histins_omp
2236    lev_histLES = lev_histLES_omp
2237    lev_histdayNMC = lev_histdayNMC_omp
2238    levout_histNMC = levout_histNMC_omp
2239    ok_histNMC(:) = ok_histNMC_omp(:)
2240    freq_outNMC(:) = freq_outNMC_omp(:)
2241    freq_calNMC(:) = freq_calNMC_omp(:)
2242
2243    type_ocean = type_ocean_omp
2244    version_ocean = version_ocean_omp
2245    t_coupl = t_coupl_omp
2246
2247    ok_veget=.TRUE.
2248    type_veget=type_veget_omp
2249    IF (type_veget=='n' .or. type_veget=='bucket' .or. type_veget=='betaclim') THEN
2250       ok_veget=.FALSE.
2251    ENDIF
2252    ! Martin
2253    ok_snow = ok_snow_omp
2254    ! Martin
2255
2256    ok_all_xml = ok_all_xml_omp
2257    ok_lwoff = ok_lwoff_omp
2258    ok_newmicro = ok_newmicro_omp
2259    ok_journe = ok_journe_omp
2260    ok_hf = ok_hf_omp
2261    ok_mensuel = ok_mensuel_omp
2262    ok_instan = ok_instan_omp
2263    freq_ISCCP = freq_ISCCP_omp
2264    ecrit_ISCCP = ecrit_ISCCP_omp
2265    freq_COSP = freq_COSP_omp
2266    freq_AIRS = freq_AIRS_omp
2267    ok_ade = ok_ade_omp
2268    ok_aie = ok_aie_omp
2269    ok_alw = ok_alw_omp
2270    ok_cdnc = ok_cdnc_omp
2271    aerosol_couple = aerosol_couple_omp
2272    flag_aerosol=flag_aerosol_omp
2273    flag_aerosol_strat=flag_aerosol_strat_omp
2274    flag_bc_internal_mixture=flag_bc_internal_mixture_omp
2275    new_aod=new_aod_omp
2276    aer_type = aer_type_omp
2277    bl95_b0 = bl95_b0_omp
2278    bl95_b1 = bl95_b1_omp
2279    fact_cldcon = fact_cldcon_omp
2280    facttemps = facttemps_omp
2281    ratqsbas = ratqsbas_omp
2282    ratqshaut = ratqshaut_omp
2283    tau_ratqs = tau_ratqs_omp
2284
2285    iflag_radia = iflag_radia_omp
2286    iflag_rrtm = iflag_rrtm_omp
2287    iflag_albedo = iflag_albedo_omp
2288    ok_chlorophyll = ok_chlorophyll_omp
2289    NSW = NSW_omp
2290    iflag_cld_th = iflag_cld_th_omp
2291    iflag_cld_cv = iflag_cld_cv_omp
2292    tau_cld_cv = tau_cld_cv_omp
2293    coefw_cld_cv = coefw_cld_cv_omp
2294    iflag_ratqs = iflag_ratqs_omp
2295    ip_ebil_phy = ip_ebil_phy_omp
2296    iflag_thermals = iflag_thermals_omp
2297    iflag_thermals_ed = iflag_thermals_ed_omp
2298    fact_thermals_ed_dz = fact_thermals_ed_dz_omp
2299    iflag_thermals_optflux = iflag_thermals_optflux_omp
2300    iflag_thermals_closure = iflag_thermals_closure_omp
2301    nsplit_thermals = nsplit_thermals_omp
2302    tau_thermals = tau_thermals_omp
2303    alp_bl_k = alp_bl_k_omp
2304    ! nrlmd le 10/04/2012
2305    iflag_trig_bl = iflag_trig_bl_omp
2306    s_trig = s_trig_omp
2307    tau_trig_shallow = tau_trig_shallow_omp
2308    tau_trig_deep = tau_trig_deep_omp
2309    iflag_clos_bl = iflag_clos_bl_omp
2310    ! fin nrlmd le 10/04/2012
2311    iflag_coupl = iflag_coupl_omp
2312    iflag_clos = iflag_clos_omp
2313    iflag_wake = iflag_wake_omp
2314    coef_clos_ls = coef_clos_ls_omp
2315    alp_offset = alp_offset_omp
2316    iflag_cvl_sigd = iflag_cvl_sigd_omp
2317    type_run = type_run_omp
2318    ok_cosp = ok_cosp_omp
2319    ok_airs = ok_airs_omp
2320
2321    ok_mensuelCOSP = ok_mensuelCOSP_omp
2322    ok_journeCOSP = ok_journeCOSP_omp
2323    ok_hfCOSP = ok_hfCOSP_omp
2324    seuil_inversion=seuil_inversion_omp
2325    lonmin_ins = lonmin_ins_omp
2326    lonmax_ins = lonmax_ins_omp
2327    latmin_ins = latmin_ins_omp
2328    latmax_ins = latmax_ins_omp
2329    ecrit_hf   = ecrit_hf_omp
2330    ecrit_ins   = ecrit_ins_omp
2331    ecrit_day = ecrit_day_omp
2332    ecrit_mth = ecrit_mth_omp
2333    ecrit_tra = ecrit_tra_omp
2334    ecrit_reg = ecrit_reg_omp
2335    cvl_comp_threshold = cvl_comp_threshold_omp
2336    cvl_sig2feed = cvl_sig2feed_omp
2337    cvl_corr = cvl_corr_omp
2338    ok_lic_melt = ok_lic_melt_omp
2339    ok_lic_cond = ok_lic_cond_omp
2340    f_cdrag_ter=f_cdrag_ter_omp
2341    f_cdrag_oce=f_cdrag_oce_omp
2342
2343    f_gust_wk=f_gust_wk_omp
2344    f_gust_bl=f_gust_bl_omp
2345    f_qsat_oce=f_qsat_oce_omp
2346    f_z0qh_oce=f_z0qh_oce_omp
2347    min_wind_speed=min_wind_speed_omp
2348    iflag_gusts=iflag_gusts_omp
2349    iflag_z0_oce=iflag_z0_oce_omp
2350
2351    z0m_seaice=z0m_seaice_omp
2352    z0h_seaice=z0h_seaice_omp
2353
2354    f_rugoro=f_rugoro_omp
2355
2356    z0min=z0min_omp
2357    supcrit1 = supcrit1_omp
2358    supcrit2 = supcrit2_omp
2359    iflag_mix = iflag_mix_omp
2360    iflag_mix_adiab = iflag_mix_adiab_omp
2361    scut = scut_omp
2362    qqa1 = qqa1_omp
2363    qqa2 = qqa2_omp
2364    gammas = gammas_omp
2365    Fmax = Fmax_omp
2366    tmax_fonte_cv = tmax_fonte_cv_omp
2367    alphas = alphas_omp
2368
2369    gkdrag=sso_gkdrag_omp
2370    grahilo=sso_grahil_omp
2371    grcrit=sso_grcrit_omp
2372    gfrcrit=sso_gfrcri_omp
2373    gkwake=sso_gkwake_omp
2374    gklift=sso_gklift_omp
2375
2376    ok_strato = ok_strato_omp
2377    ok_hines = ok_hines_omp
2378    ok_gwd_rando = ok_gwd_rando_omp
2379    gwd_rando_ruwmax = gwd_rando_ruwmax_omp
2380    gwd_rando_sat = gwd_rando_sat_omp
2381    gwd_front_ruwmax = gwd_front_ruwmax_omp
2382    gwd_front_sat = gwd_front_sat_omp
2383    ok_qch4 = ok_qch4_omp
2384    ok_LES = ok_LES_omp
2385    callstats = callstats_omp
2386    ecrit_LES = ecrit_LES_omp
2387    adjust_tropopause = adjust_tropopause_omp
2388    ok_daily_climoz = ok_daily_climoz_omp
2389    carbon_cycle_tr = carbon_cycle_tr_omp
2390    carbon_cycle_cpl = carbon_cycle_cpl_omp
2391
2392    ! Test of coherence between type_ocean and version_ocean
2393    IF (type_ocean=='couple' .AND. (version_ocean/='opa8' .AND. version_ocean/='nemo') ) THEN
2394       WRITE(lunout,*)' ERROR version_ocean=',version_ocean,' not valid in coupled configuration'
2395       CALL abort_physic('conf_phys','version_ocean not valid',1)
2396    ENDIF
2397
2398    IF (type_ocean=='slab' .AND. version_ocean=='xxxxxx') THEN
2399       version_ocean='sicOBS'
2400    ELSE IF (type_ocean=='slab' .AND. version_ocean/='sicOBS' &
2401         .AND. version_ocean/='sicINT' .AND. version_ocean/='sicNO') THEN
2402       WRITE(lunout,*)' ERROR version_ocean=',version_ocean,' not valid with slab ocean'
2403       CALL abort_physic('conf_phys','version_ocean not valid',1)
2404    ENDIF
2405
2406    !--test on radiative scheme
2407    IF (iflag_rrtm .EQ. 0) THEN
2408      IF (NSW.NE.2) THEN
2409        WRITE(lunout,*) ' ERROR iflag_rrtm=0 and NSW<>2 not possible'
2410        CALL abort_physic('conf_phys','choice NSW not valid',1)
2411      ENDIF
2412    ELSE IF (iflag_rrtm .EQ. 1) THEN
2413      IF (NSW.NE.2.AND.NSW.NE.4.AND.NSW.NE.6) THEN
2414        WRITE(lunout,*) ' ERROR iflag_rrtm=1 and NSW<>2,4,6 not possible'
2415        CALL abort_physic('conf_phys','choice NSW not valid',1)
2416      ENDIF
2417    ELSE
2418       WRITE(lunout,*) ' ERROR iflag_rrtm<>0,1'
2419       CALL abort_physic('conf_phys','choice iflag_rrtm not valid',1)
2420    ENDIF
2421#ifdef CPP_StratAer
2422    IF (iflag_rrtm .NE. 1) THEN
2423       WRITE(lunout,*) ' ERROR iflag_rrtm<>1 but StratAer activated'
2424       CALL abort_physic('conf_phys','iflag_rrtm not valid for StratAer',1)
2425    ENDIF
2426    IF (NSW .NE. 6) THEN
2427       WRITE(lunout,*) ' ERROR NSW<>6 but StratAer activated'
2428       CALL abort_physic('conf_phys','NSW not valid for StratAer',1)
2429    ENDIF
2430#endif
2431
2432    !--test on ocean surface albedo
2433    IF (iflag_albedo.LT.0.OR.iflag_albedo.GT.2) THEN
2434       WRITE(lunout,*) ' ERROR iflag_albedo<>0,1'
2435       CALL abort_physic('conf_phys','choice iflag_albedo not valid',1)
2436    ENDIF
2437
2438    ! Test sur new_aod. Ce flag permet de retrouver les resultats de l'AR4
2439    ! il n'est utilisable que lors du couplage avec le SO4 seul
2440    IF (ok_ade .OR. ok_aie) THEN
2441       IF ( flag_aerosol .EQ. 0 ) THEN
2442          CALL abort_physic('conf_phys','flag_aerosol=0 not compatible avec ok_ade ou ok_aie=.TRUE.',1)
2443       ENDIF
2444       IF ( .NOT. new_aod .AND.  flag_aerosol .NE. 1) THEN
2445          CALL abort_physic('conf_phys','new_aod=.FALSE. not compatible avec flag_aerosol=1',1)
2446       ENDIF
2447    ENDIF
2448
2449    ! Flag_aerosol cannot be to zero if we are in coupled mode for aerosol
2450    IF (aerosol_couple .AND. flag_aerosol .eq. 0 ) THEN
2451       CALL abort_physic('conf_phys', 'flag_aerosol cannot be to zero if aerosol_couple=y ', 1)
2452    ENDIF
2453
2454    ! flag_aerosol need to be different to zero if ok_cdnc is activated
2455    IF (ok_cdnc .AND. flag_aerosol .eq. 0) THEN
2456       CALL abort_physic('conf_phys', 'flag_aerosol cannot be to zero if ok_cdnc is activated ', 1)
2457    ENDIF
2458
2459    ! ok_cdnc must be set to y if ok_aie is activated
2460    IF (ok_aie .AND. .NOT. ok_cdnc) THEN
2461       CALL abort_physic('conf_phys', 'ok_cdnc must be set to y if ok_aie is activated',1)
2462    ENDIF
2463
2464    ! BC internal mixture is only possible with RRTM & NSW=6 & flag_aerosol=6 or aerosol_couple
2465    IF (flag_bc_internal_mixture .AND. NSW.NE.6) THEN
2466       CALL abort_physic('conf_phys', 'flag_bc_internal_mixture can only be activated with NSW=6',1)
2467    ENDIF
2468    IF (flag_bc_internal_mixture .AND. iflag_rrtm.NE.1) THEN
2469       CALL abort_physic('conf_phys', 'flag_bc_internal_mixture can only be activated with RRTM',1)
2470    ENDIF
2471    IF (flag_bc_internal_mixture .AND. flag_aerosol.NE.6) THEN
2472       CALL abort_physic('conf_phys', 'flag_bc_internal_mixture can only be activated with flag_aerosol=6',1)
2473    ENDIF
2474
2475    ! ORCHIDEE must be activated for ifl_pbltree=1
2476    IF (.NOT. ok_veget .AND. ifl_pbltree==1) THEN
2477       WRITE(lunout,*)' ORCHIDEE must be activated for ifl_pbltree=1'
2478       CALL abort_physic('conf_phys','ok_veget and ifl_pbltree not coherent',1)
2479    END IF
2480
2481    !$OMP MASTER
2482
2483    write(lunout,*)' ##############################################'
2484    write(lunout,*)' Configuration des parametres de la physique: '
2485    write(lunout,*)' Type ocean = ', type_ocean
2486    write(lunout,*)' Version ocean = ', version_ocean
2487    write(lunout,*)' Config veget = ', ok_veget,type_veget
2488    write(lunout,*)' Snow model SISVAT : ok_snow = ', ok_snow
2489    write(lunout,*)' Config xml pour XIOS : ok_all_xml = ', ok_all_xml
2490    write(lunout,*)' Sortie journaliere = ', ok_journe
2491    write(lunout,*)' Sortie haute frequence = ', ok_hf
2492    write(lunout,*)' Sortie mensuelle = ', ok_mensuel
2493    write(lunout,*)' Sortie instantanee = ', ok_instan
2494    write(lunout,*)' Frequence appel simulateur ISCCP, freq_ISCCP =', freq_ISCCP
2495    write(lunout,*)' Frequence appel simulateur ISCCP, ecrit_ISCCP =', ecrit_ISCCP
2496    write(lunout,*)' Frequence appel simulateur COSP, freq_COSP =', freq_COSP
2497    write(lunout,*)' Frequence appel simulateur AIRS, freq_AIRS =', freq_AIRS
2498    write(lunout,*)' Sortie bilan d''energie, ip_ebil_phy =', ip_ebil_phy
2499    write(lunout,*)' Excentricite = ',R_ecc
2500    write(lunout,*)' Equinoxe = ',R_peri
2501    write(lunout,*)' Inclinaison =',R_incl
2502    write(lunout,*)' Constante solaire =',solaire
2503    write(lunout,*)' ok_suntime_rrtm =',ok_suntime_rrtm
2504    write(lunout,*)' co2_ppm =',co2_ppm
2505    write(lunout,*)' RCO2_act = ',RCO2_act
2506    write(lunout,*)' CH4_ppb =',CH4_ppb,' RCH4_act = ',RCH4_act
2507    write(lunout,*)' N2O_ppb =',N2O_ppb,' RN2O_act=  ',RN2O_act
2508    write(lunout,*)' CFC11_ppt=',CFC11_ppt,' RCFC11_act=  ',RCFC11_act
2509    write(lunout,*)' CFC12_ppt=',CFC12_ppt,' RCFC12_act=  ',RCFC12_act
2510    write(lunout,*)' RCO2_per = ',RCO2_per,' RCH4_per = ', RCH4_per
2511    write(lunout,*)' RN2O_per = ',RN2O_per,' RCFC11_per = ', RCFC11_per
2512    write(lunout,*)' RCFC12_per = ',RCFC12_per
2513    write(lunout,*)' cvl_comp_threshold=', cvl_comp_threshold
2514    write(lunout,*)' cvl_sig2feed=', cvl_sig2feed
2515    write(lunout,*)' cvl_corr=', cvl_corr
2516    write(lunout,*)'ok_lic_melt=', ok_lic_melt
2517    write(lunout,*)'ok_lic_cond=', ok_lic_cond
2518    write(lunout,*)'cycle_diurne=',cycle_diurne
2519    write(lunout,*)'soil_model=',soil_model
2520    write(lunout,*)'new_oliq=',new_oliq
2521    write(lunout,*)'ok_orodr=',ok_orodr
2522    write(lunout,*)'ok_orolf=',ok_orolf
2523    write(lunout,*)'ok_limitvrai=',ok_limitvrai
2524    write(lunout,*)'nbapp_rad=',nbapp_rad
2525    write(lunout,*)'iflag_con=',iflag_con
2526    write(lunout,*)'nbapp_cv=',nbapp_cv
2527    write(lunout,*)'nbapp_wk=',nbapp_wk
2528    write(lunout,*)'iflag_ener_conserv=',iflag_ener_conserv
2529    write(lunout,*)'ok_conserv_q=',ok_conserv_q
2530    write(lunout,*)'iflag_fisrtilp_qsat=',iflag_fisrtilp_qsat
2531    write(lunout,*)'iflag_bergeron=',iflag_bergeron
2532    write(lunout,*)' epmax = ', epmax
2533    write(lunout,*)' coef_epmax_cape = ', coef_epmax_cape
2534    write(lunout,*)' ok_adj_ema = ', ok_adj_ema
2535    write(lunout,*)' iflag_clw = ', iflag_clw
2536    write(lunout,*)' cld_lc_lsc = ', cld_lc_lsc
2537    write(lunout,*)' cld_lc_con = ', cld_lc_con
2538    write(lunout,*)' cld_tau_lsc = ', cld_tau_lsc
2539    write(lunout,*)' cld_tau_con = ', cld_tau_con
2540    write(lunout,*)' ffallv_lsc = ', ffallv_lsc
2541    write(lunout,*)' ffallv_con = ', ffallv_con
2542    write(lunout,*)' coef_eva = ', coef_eva
2543    write(lunout,*)' reevap_ice = ', reevap_ice
2544    write(lunout,*)' iflag_pdf = ', iflag_pdf
2545    write(lunout,*)' iflag_cld_th = ', iflag_cld_th
2546    write(lunout,*)' iflag_cld_cv = ', iflag_cld_cv
2547    write(lunout,*)' tau_cld_cv = ', tau_cld_cv
2548    write(lunout,*)' coefw_cld_cv = ', coefw_cld_cv
2549    write(lunout,*)' iflag_radia = ', iflag_radia
2550    write(lunout,*)' iflag_rrtm = ', iflag_rrtm
2551    write(lunout,*)' NSW = ', NSW
2552    write(lunout,*)' iflag_albedo = ', iflag_albedo !albedo SB
2553    write(lunout,*)' ok_chlorophyll =',ok_chlorophyll ! albedo SB
2554    write(lunout,*)' iflag_ratqs = ', iflag_ratqs
2555    write(lunout,*)' seuil_inversion = ', seuil_inversion
2556    write(lunout,*)' fact_cldcon = ', fact_cldcon
2557    write(lunout,*)' facttemps = ', facttemps
2558    write(lunout,*)' ok_newmicro = ',ok_newmicro
2559    write(lunout,*)' ratqsbas = ',ratqsbas
2560    write(lunout,*)' ratqshaut = ',ratqshaut
2561    write(lunout,*)' tau_ratqs = ',tau_ratqs
2562    write(lunout,*)' top_height = ',top_height
2563    write(lunout,*)' rad_froid = ',rad_froid
2564    write(lunout,*)' rad_chau1 = ',rad_chau1
2565    write(lunout,*)' rad_chau2 = ',rad_chau2
2566    write(lunout,*)' t_glace_min = ',t_glace_min
2567    write(lunout,*)' t_glace_max = ',t_glace_max
2568    write(lunout,*)' exposant_glace = ',exposant_glace
2569    write(lunout,*)' iflag_t_glace = ',iflag_t_glace
2570    write(lunout,*)' iflag_cloudth_vert = ',iflag_cloudth_vert
2571    write(lunout,*)' iflag_rain_incloud_vol = ',iflag_rain_incloud_vol
2572    write(lunout,*)' iflag_ice_thermo = ',iflag_ice_thermo
2573    write(lunout,*)' rei_min = ',rei_min
2574    write(lunout,*)' rei_max = ',rei_max
2575    write(lunout,*)' overlap = ',overlap
2576    write(lunout,*)' cdmmax = ',cdmmax
2577    write(lunout,*)' cdhmax = ',cdhmax
2578    write(lunout,*)' ksta = ',ksta
2579    write(lunout,*)' ksta_ter = ',ksta_ter
2580    write(lunout,*)' f_ri_cd_min = ',f_ri_cd_min
2581    write(lunout,*)' ok_kzmin = ',ok_kzmin
2582    write(lunout,*)' pbl_lmixmin_alpha = ',pbl_lmixmin_alpha
2583    write(lunout,*)' fmagic = ',fmagic
2584    write(lunout,*)' pmagic = ',pmagic
2585    write(lunout,*)' ok_ade = ',ok_ade
2586    write(lunout,*)' ok_aie = ',ok_aie
2587    write(lunout,*)' ok_alw = ',ok_alw
2588    write(lunout,*)' aerosol_couple = ', aerosol_couple
2589    write(lunout,*)' flag_aerosol = ', flag_aerosol
2590    write(lunout,*)' flag_aerosol_strat= ', flag_aerosol_strat
2591    write(lunout,*)' new_aod = ', new_aod
2592    write(lunout,*)' aer_type = ',aer_type
2593    write(lunout,*)' bl95_b0 = ',bl95_b0
2594    write(lunout,*)' bl95_b1 = ',bl95_b1
2595    write(lunout,*)' lev_histhf = ',lev_histhf
2596    write(lunout,*)' lev_histday = ',lev_histday
2597    write(lunout,*)' lev_histmth = ',lev_histmth
2598    write(lunout,*)' lev_histins = ',lev_histins
2599    write(lunout,*)' lev_histLES = ',lev_histLES
2600    write(lunout,*)' lev_histdayNMC = ',lev_histdayNMC
2601    write(lunout,*)' levout_histNMC = ',levout_histNMC
2602    write(lunout,*)' ok_histNMC = ',ok_histNMC
2603    write(lunout,*)' freq_outNMC = ',freq_outNMC
2604    write(lunout,*)' freq_calNMC = ',freq_calNMC
2605    write(lunout,*)' iflag_pbl = ', iflag_pbl
2606!FC
2607    write(lunout,*)' ifl_pbltree = ', ifl_pbltree
2608    write(lunout,*)' Cd_frein = ', Cd_frein
2609    write(lunout,*)' iflag_pbl_split = ', iflag_pbl_split
2610    write(lunout,*)' iflag_order2_sollw = ', iflag_order2_sollw
2611    write(lunout,*)' iflag_thermals = ', iflag_thermals
2612    write(lunout,*)' iflag_thermals_ed = ', iflag_thermals_ed
2613    write(lunout,*)' fact_thermals_ed_dz = ', fact_thermals_ed_dz
2614    write(lunout,*)' iflag_thermals_optflux = ', iflag_thermals_optflux
2615    write(lunout,*)' iflag_thermals_closure = ', iflag_thermals_closure
2616    write(lunout,*)' iflag_clos = ', iflag_clos
2617    write(lunout,*)' coef_clos_ls = ', coef_clos_ls
2618    write(lunout,*)' type_run = ',type_run
2619    write(lunout,*)' ok_cosp = ',ok_cosp
2620    write(lunout,*)' ok_airs = ',ok_airs
2621
2622    write(lunout,*)' ok_mensuelCOSP = ',ok_mensuelCOSP
2623    write(lunout,*)' ok_journeCOSP = ',ok_journeCOSP
2624    write(lunout,*)' ok_hfCOSP =',ok_hfCOSP
2625    write(lunout,*)' solarlong0 = ', solarlong0
2626    write(lunout,*)' qsol0 = ', qsol0
2627    write(lunout,*)' evap0 = ', evap0
2628    write(lunout,*)' albsno0 = ', albsno0
2629    write(lunout,*)' iflag_sic = ', iflag_sic
2630    write(lunout,*)' inertie_sol = ', inertie_sol
2631    write(lunout,*)' inertie_sic = ', inertie_sic
2632    write(lunout,*)' inertie_lic = ', inertie_lic
2633    write(lunout,*)' inertie_sno = ', inertie_sno
2634    write(lunout,*)' f_cdrag_ter = ',f_cdrag_ter
2635    write(lunout,*)' f_cdrag_oce = ',f_cdrag_oce
2636    write(lunout,*)' f_rugoro = ',f_rugoro
2637    write(lunout,*)' z0min = ',z0min
2638    write(lunout,*)' supcrit1 = ', supcrit1
2639    write(lunout,*)' supcrit2 = ', supcrit2
2640    write(lunout,*)' iflag_mix = ', iflag_mix
2641    write(lunout,*)' iflag_mix_adiab = ', iflag_mix_adiab
2642    write(lunout,*)' scut = ', scut
2643    write(lunout,*)' qqa1 = ', qqa1
2644    write(lunout,*)' qqa2 = ', qqa2
2645    write(lunout,*)' gammas = ', gammas
2646    write(lunout,*)' Fmax = ', Fmax
2647    write(lunout,*)' tmax_fonte_cv = ', tmax_fonte_cv
2648    write(lunout,*)' alphas = ', alphas
2649    write(lunout,*)' iflag_wake = ', iflag_wake
2650    write(lunout,*)' alp_offset = ', alp_offset
2651    ! nrlmd le 10/04/2012
2652    write(lunout,*)' iflag_trig_bl = ', iflag_trig_bl
2653    write(lunout,*)' s_trig = ', s_trig
2654    write(lunout,*)' tau_trig_shallow = ', tau_trig_shallow
2655    write(lunout,*)' tau_trig_deep = ', tau_trig_deep
2656    write(lunout,*)' iflag_clos_bl = ', iflag_clos_bl
2657    ! fin nrlmd le 10/04/2012
2658
2659    write(lunout,*)' lonmin lonmax latmin latmax bilKP_ins =',&
2660         lonmin_ins, lonmax_ins, latmin_ins, latmax_ins
2661    write(lunout,*)' ecrit_ hf, ins, day, mth, reg, tra, ISCCP, LES',&
2662         ecrit_hf, ecrit_ins, ecrit_day, ecrit_mth, ecrit_reg, ecrit_tra, ecrit_ISCCP, ecrit_LES
2663
2664    write(lunout,*) 'ok_strato = ', ok_strato
2665    write(lunout,*) 'ok_hines = ',  ok_hines
2666    write(lunout,*) 'ok_gwd_rando = ',  ok_gwd_rando
2667    write(lunout,*) 'ok_qch4 = ',  ok_qch4
2668    write(lunout,*) 'gwd_rando_ruwmax = ', gwd_rando_ruwmax
2669    write(lunout,*) 'gwd_rando_sat = ', gwd_rando_sat
2670    write(lunout,*) 'gwd_front_ruwmax = ', gwd_front_ruwmax
2671    write(lunout,*) 'gwd_front_sat = ', gwd_front_sat
2672    write(lunout,*) 'SSO gkdrag =',gkdrag
2673    write(lunout,*) 'SSO grahilo=',grahilo
2674    write(lunout,*) 'SSO grcrit=',grcrit
2675    write(lunout,*) 'SSO gfrcrit=',gfrcrit
2676    write(lunout,*) 'SSO gkwake=',gkwake
2677    write(lunout,*) 'SSO gklift=',gklift
2678    write(lunout,*) 'adjust_tropopause = ', adjust_tropopause
2679    write(lunout,*) 'ok_daily_climoz = ',ok_daily_climoz
2680    write(lunout,*) 'read_climoz = ', read_climoz
2681    write(lunout,*) 'carbon_cycle_tr = ', carbon_cycle_tr
2682    write(lunout,*) 'carbon_cycle_cpl = ', carbon_cycle_cpl
2683
2684    !$OMP END MASTER
2685
2686    RETURN
2687
2688  END SUBROUTINE conf_phys
2689
2690END MODULE conf_phys_m
2691!
2692!#################################################################
2693!
2694
2695SUBROUTINE conf_interface(tau_calv)
2696
2697  USE IOIPSL
2698  USE print_control_mod, ONLY: lunout
2699  IMPLICIT NONE
2700  ! Configuration de l'interace atm/surf
2701  !
2702  ! tau_calv:    temps de relaxation pour la fonte des glaciers
2703
2704  REAL          :: tau_calv
2705  REAL,SAVE     :: tau_calv_omp
2706
2707  !
2708  !Config Key  = tau_calv
2709  !Config Desc = temps de relaxation pour fonte des glaciers en jours
2710  !Config Def  = 1 an
2711  !Config Help =
2712  !
2713  tau_calv_omp = 360.*10.
2714  !$OMP MASTER
2715  CALL getin('tau_calv',tau_calv_omp)
2716  !$OMP END MASTER
2717  !$OMP BARRIER
2718
2719  tau_calv=tau_calv_omp
2720
2721  !$OMP MASTER
2722  write(lunout,*)' ##############################################'
2723  WRITE(lunout,*)' Configuration de l''interface atm/surfaces  : '
2724  WRITE(lunout,*)' tau_calv = ',tau_calv
2725  !$OMP END MASTER
2726
2727  RETURN
2728
2729END SUBROUTINE conf_interface
Note: See TracBrowser for help on using the repository browser.