source: LMDZ6/branches/Amaury_dev/libf/phylmd/conf_phys_m.F90 @ 5441

Last change on this file since 5441 was 5224, checked in by abarral, 3 months ago

Merge r5204 r5205
Light lint
Correct missing IOIPSL includes

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