source: LMDZ6/trunk/libf/phylmd/conf_phys_m.F90 @ 3981

Last change on this file since 3981 was 3974, checked in by asima, 3 years ago

In the "bucket" soil model, soil thermal inertia (formerly a constant value) can also be now a function of soil moisture "qsol"
(F Cheruy's idea; results from "Stage L3" Eve Rebouillat, with E Vignon, A Sima, F Cheruy).

The function depends on iflag_inertie, read from physiq.def (via conf_phys_m.F90), as follows :
(only in physiq.def_NPv6.1 for the time being)


# Controle de la definition de l'inertie thermique du sol dans le modele "bucket":
# 0 (default) : constant
# 1 : fonction lineaire de qsol
# 2 : 2 fonctions lineaires de qsol :
# une pour "sable" (boite lat/lon pour Sahara), une pour le reste (limons et argile)
# 3 : fonction lineaire de qsol, valeurs entre 900 pour qsol=0 et 2000 pour qsol=150

iflag_inertie=0


Relevant changes are in soil.F90 and physiq.def_NPv6.1 ; the other files are adjusted accordingly.

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