12 subroutine conf_phys(ok_journe, ok_mensuel, ok_instan, ok_hf, &
15 solarlong0,seuil_inversion, &
16 fact_cldcon, facttemps,ok_newmicro,iflag_radia,&
18 iflag_ratqs,ratqsbas,ratqshaut,tau_ratqs, &
19 ok_ade, ok_aie, ok_cdnc, aerosol_couple, &
20 flag_aerosol, flag_aerosol_strat, new_aod, &
71 logical :: ok_newmicro
72 integer :: iflag_radia
73 logical :: ok_journe, ok_mensuel, ok_instan, ok_hf
76 LOGICAL :: ok_ade, ok_aie, ok_cdnc, aerosol_couple
77 INTEGER :: flag_aerosol
78 LOGICAL :: flag_aerosol_strat
80 REAL :: bl95_b0, bl95_b1
81 real :: fact_cldcon, facttemps,ratqsbas,ratqshaut,tau_ratqs
82 integer :: iflag_cld_th
83 integer :: iflag_ratqs
85 character (len = 6),
SAVE :: type_ocean_omp, version_ocean_omp, ocean_omp
86 character (len = 10),
SAVE :: type_veget_omp
87 CHARACTER(len = 8),
SAVE :: aer_type_omp
88 logical,
SAVE :: ok_snow_omp
89 logical,
SAVE :: ok_newmicro_omp
90 logical,
SAVE :: ok_all_xml_omp
91 logical,
SAVE :: ok_journe_omp, ok_mensuel_omp, ok_instan_omp, ok_hf_omp
92 logical,
SAVE :: ok_LES_omp
93 LOGICAL,
SAVE :: callstats_omp
94 LOGICAL,
SAVE :: ok_ade_omp, ok_aie_omp, ok_cdnc_omp, aerosol_couple_omp
95 INTEGER,
SAVE :: flag_aerosol_omp
96 LOGICAL,
SAVE :: flag_aerosol_strat_omp
97 LOGICAL,
SAVE :: new_aod_omp
98 REAL,
SAVE :: bl95_b0_omp, bl95_b1_omp
99 REAL,
SAVE :: freq_ISCCP_omp, ecrit_ISCCP_omp
100 REAL,
SAVE :: freq_COSP_omp
101 real,
SAVE :: fact_cldcon_omp, facttemps_omp,ratqsbas_omp
102 real,
SAVE :: tau_cld_cv_omp, coefw_cld_cv_omp
103 integer,
SAVE :: iflag_cld_cv_omp
106 real,
SAVE :: ratqshaut_omp
107 real,
SAVE :: tau_ratqs_omp
108 REAL,
SAVE :: t_coupl_omp
109 integer,
SAVE :: iflag_radia_omp
110 integer,
SAVE :: iflag_rrtm_omp
111 integer,
SAVE :: iflag_albedo_omp
112 logical,
save :: ok_chlorophyll_omp
113 integer,
SAVE :: NSW_omp
114 integer,
SAVE :: iflag_cld_th_omp, ip_ebil_phy_omp
115 integer,
SAVE :: iflag_ratqs_omp
117 Real,
SAVE :: f_cdrag_ter_omp,f_cdrag_oce_omp
118 Real,
SAVE :: f_rugoro_omp , z0min_omp
119 Real,
SAVE :: z0m_seaice_omp,z0h_seaice_omp
120 REAL,
SAVE :: min_wind_speed_omp,f_gust_wk_omp,f_gust_bl_omp,f_qsat_oce_omp, f_z0qh_oce_omp
121 INTEGER,
SAVE :: iflag_gusts_omp,iflag_z0_oce_omp
126 real :: seuil_inversion
127 real,
save :: seuil_inversion_omp
129 integer,
SAVE :: iflag_thermals_ed_omp,iflag_thermals_optflux_omp,iflag_thermals_closure_omp
130 real,
SAVE :: fact_thermals_ed_dz_omp
131 integer,
SAVE :: iflag_thermals_omp,nsplit_thermals_omp
132 real,
save :: tau_thermals_omp,alp_bl_k_omp
134 integer,
SAVE :: iflag_trig_bl_omp,iflag_clos_bl_omp
135 integer,
SAVE :: tau_trig_shallow_omp,tau_trig_deep_omp
136 real,
SAVE :: s_trig_omp
139 REAL,
SAVE :: alp_offset_omp
140 integer,
SAVE :: iflag_coupl_omp,iflag_clos_omp,iflag_wake_omp
141 integer,
SAVE :: iflag_cvl_sigd_omp
142 REAL,
SAVE :: coef_clos_ls_omp
143 REAL,
SAVE :: supcrit1_omp, supcrit2_omp
144 INTEGER,
SAVE :: iflag_mix_omp
145 real,
save :: scut_omp, qqa1_omp, qqa2_omp, gammas_omp, Fmax_omp, alphas_omp
146 REAL,
SAVE :: tmax_fonte_cv_omp
148 REAL,
SAVE :: R_ecc_omp,R_peri_omp,R_incl_omp,solaire_omp
149 REAL,
SAVE :: co2_ppm_omp, RCO2_omp, co2_ppm_per_omp, RCO2_per_omp
150 REAL,
SAVE :: CH4_ppb_omp, RCH4_omp, CH4_ppb_per_omp, RCH4_per_omp
151 REAL,
SAVE :: N2O_ppb_omp, RN2O_omp, N2O_ppb_per_omp, RN2O_per_omp
152 REAL,
SAVE :: CFC11_ppt_omp,RCFC11_omp,CFC11_ppt_per_omp,RCFC11_per_omp
153 REAL,
SAVE :: CFC12_ppt_omp,RCFC12_omp,CFC12_ppt_per_omp,RCFC12_per_omp
154 LOGICAL,
SAVE :: ok_4xCO2atm_omp
155 REAL,
SAVE :: epmax_omp
156 LOGICAL,
SAVE :: ok_adj_ema_omp
157 INTEGER,
SAVE :: iflag_clw_omp
158 REAL,
SAVE :: cld_lc_lsc_omp,cld_lc_con_omp,cld_tau_lsc_omp,cld_tau_con_omp
159 REAL,
SAVE :: ffallv_lsc_omp, ffallv_con_omp,coef_eva_omp
160 LOGICAL,
SAVE :: reevap_ice_omp
161 INTEGER,
SAVE :: iflag_pdf_omp
162 INTEGER,
SAVE :: iflag_ice_thermo_omp
163 INTEGER,
SAVE :: iflag_t_glace_omp
164 REAL,
SAVE :: rad_froid_omp, rad_chau1_omp, rad_chau2_omp
165 REAL,
SAVE :: t_glace_min_omp, t_glace_max_omp
166 REAL,
SAVE :: exposant_glace_omp
167 REAL,
SAVE :: rei_min_omp, rei_max_omp
168 REAL,
SAVE :: inertie_sol_omp,inertie_sno_omp,inertie_ice_omp
169 REAL,
SAVE :: qsol0_omp
170 REAL,
SAVE :: evap0_omp
171 REAL,
SAVE :: albsno0_omp
173 REAL,
SAVE :: solarlong0_omp
174 INTEGER,
SAVE :: top_height_omp,overlap_omp
175 REAL,
SAVE :: cdmmax_omp,cdhmax_omp,ksta_omp,ksta_ter_omp,f_ri_cd_min_omp
176 LOGICAL,
SAVE :: ok_kzmin_omp
177 REAL,
SAVE :: fmagic_omp, pmagic_omp
178 INTEGER,
SAVE :: iflag_pbl_omp,lev_histhf_omp,lev_histday_omp,lev_histmth_omp
179 INTEGER,
SAVE :: iflag_pbl_split_omp
180 Integer,
save :: lev_histins_omp, lev_histLES_omp
181 INTEGER,
SAVE :: lev_histdayNMC_omp
182 INTEGER,
SAVE :: levout_histNMC_omp(3)
183 LOGICAL,
SAVE :: ok_histNMC_omp(3)
184 REAL,
SAVE :: freq_outNMC_omp(3), freq_calNMC_omp(3)
185 CHARACTER*4,
SAVE :: type_run_omp
186 LOGICAL,
SAVE :: ok_cosp_omp
187 LOGICAL,
SAVE :: ok_mensuelCOSP_omp,ok_journeCOSP_omp,ok_hfCOSP_omp
188 REAL,
SAVE :: lonmin_ins_omp, lonmax_ins_omp, latmin_ins_omp, latmax_ins_omp
189 REAL,
SAVE :: ecrit_hf_omp, ecrit_day_omp, ecrit_mth_omp, ecrit_reg_omp
190 REAL,
SAVE :: ecrit_ins_omp
191 REAL,
SAVE :: ecrit_LES_omp
192 REAL,
SAVE :: ecrit_tra_omp
193 REAL,
SAVE :: cvl_comp_threshold_omp
194 REAL,
SAVE :: cvl_sig2feed_omp
195 REAL,
SAVE :: cvl_corr_omp
196 LOGICAL,
SAVE :: ok_lic_melt_omp
198 LOGICAL,
SAVE :: cycle_diurne_omp,soil_model_omp,new_oliq_omp
199 LOGICAL,
SAVE :: ok_orodr_omp, ok_orolf_omp, ok_limitvrai_omp
200 INTEGER,
SAVE :: nbapp_rad_omp, iflag_con_omp
201 INTEGER,
SAVE :: iflag_ener_conserv_omp
202 LOGICAL,
SAVE :: ok_conserv_q_omp
203 INTEGER,
SAVE :: iflag_fisrtilp_qsat_omp
204 LOGICAL,
SAVE :: ok_strato_omp
205 LOGICAL,
SAVE :: ok_hines_omp, ok_gwd_rando_omp
206 real,
SAVE:: gwd_rando_ruwmax_omp, gwd_rando_sat_omp
207 real,
SAVE:: gwd_front_ruwmax_omp, gwd_front_sat_omp
208 real,
save:: sso_gkdrag_omp,sso_grahil_omp,sso_grcrit_omp
209 real,
save:: sso_gfrcri_omp,sso_gkwake_omp,sso_gklift_omp
210 LOGICAL,
SAVE :: ok_qch4_omp
211 LOGICAL,
SAVE :: carbon_cycle_tr_omp
212 LOGICAL,
SAVE :: carbon_cycle_cpl_omp
214 integer,
intent(out):: read_climoz
223 print*,
'CONFPHYS ENTREE'
230 type_ocean_omp =
'force '
231 call getin(
'type_ocean', type_ocean_omp)
238 version_ocean_omp =
'xxxxxx'
239 call getin(
'version_ocean', version_ocean_omp)
247 call getin(
'OCEAN', ocean_omp)
248 IF (ocean_omp /=
'yyyyyy')
THEN
249 WRITE(
lunout,*)
'ERROR! Old variable name OCEAN used in parmeter file.'
250 WRITE(
lunout,*)
'Variable OCEAN has been replaced by the variable type_ocean.'
251 WRITE(
lunout,*)
'You have to update your parameter file physiq.def to succed running'
252 CALL abort_physic(
'conf_phys',
'Variable OCEAN no longer existing, use variable name type_ocean',1)
261 call getin(
't_coupl', t_coupl_omp)
262 IF (t_coupl_omp == 0)
THEN
263 WRITE(
lunout,*)
'ERROR! Timestep of coupling between atmosphere and ocean'
264 WRITE(
lunout,*)
'cannot be zero.'
274 ok_all_xml_omp = .
false.
275 call getin(
'ok_all_xml', ok_all_xml_omp)
284 type_veget_omp =
'orchidee'
285 call getin(
'VEGET', type_veget_omp)
292 ok_snow_omp = .
false.
293 call getin(
'ok_snow', ok_snow_omp)
302 ok_journe_omp = .
false.
303 call getin(
'OK_journe', ok_journe_omp)
312 call getin(
'ok_hf', ok_hf_omp)
320 ok_mensuel_omp = .
true.
321 call getin(
'OK_mensuel', ok_mensuel_omp)
329 ok_instan_omp = .
false.
330 call getin(
'OK_instan', ok_instan_omp)
338 call getin(
'ok_ade', ok_ade_omp)
347 call getin(
'ok_aie', ok_aie_omp)
355 ok_cdnc_omp = .
false.
356 call getin(
'ok_cdnc', ok_cdnc_omp)
363 aerosol_couple_omp = .
false.
364 CALL getin(
'aerosol_couple',aerosol_couple_omp)
380 CALL getin(
'flag_aerosol',flag_aerosol_omp)
388 flag_aerosol_strat_omp = .
false.
389 CALL getin(
'flag_aerosol_strat',flag_aerosol_strat_omp)
398 CALL getin(
'new_aod',new_aod_omp)
406 aer_type_omp =
'scenario'
407 call getin(
'aer_type', aer_type_omp)
416 call getin(
'bl95_b0', bl95_b0_omp)
424 call getin(
'bl95_b1', bl95_b1_omp)
432 freq_isccp_omp = 10800.
433 call getin(
'freq_ISCCP', freq_isccp_omp)
443 call getin(
'ecrit_ISCCP', ecrit_isccp_omp)
451 freq_cosp_omp = 10800.
452 call getin(
'freq_COSP', freq_cosp_omp)
461 call getin(
'ip_ebil_phy', ip_ebil_phy_omp)
468 seuil_inversion_omp = -0.1
469 call getin(
'seuil_inversion', seuil_inversion_omp)
481 call getin(
'R_ecc', r_ecc_omp)
491 call getin(
'R_peri', r_peri_omp)
501 call getin(
'R_incl', r_incl_omp)
511 call getin(
'solaire', solaire_omp)
521 call getin(
'co2_ppm', co2_ppm_omp)
531 rco2_omp = co2_ppm_omp * 1.0e-06 * 44.011/28.97
549 call getin(
'CH4_ppb', zzz)
551 rch4_omp = ch4_ppb_omp * 1.0e-09 * 16.043/28.97
567 call getin(
'N2O_ppb', zzz)
569 rn2o_omp = n2o_ppb_omp * 1.0e-09 * 44.013/28.97
579 call getin(
'CFC11_ppt',zzz)
581 rcfc11_omp=cfc11_ppt_omp* 1.0e-12 * 137.3686/28.97
593 call getin(
'CFC12_ppt',zzz)
595 rcfc12_omp = cfc12_ppt_omp * 1.0e-12 * 120.9140/28.97
606 co2_ppm_per_omp = co2_ppm_omp
607 call getin(
'co2_ppm_per', co2_ppm_per_omp)
615 rco2_per_omp = co2_ppm_per_omp * 1.0e-06 * 44.011/28.97
622 ok_4xco2atm_omp = .
false.
623 call getin(
'ok_4xCO2atm',ok_4xco2atm_omp)
631 call getin(
'CH4_ppb_per', zzz)
632 ch4_ppb_per_omp = zzz
633 rch4_per_omp = ch4_ppb_per_omp * 1.0e-09 * 16.043/28.97
641 call getin(
'N2O_ppb_per', zzz)
642 n2o_ppb_per_omp = zzz
643 rn2o_per_omp = n2o_ppb_per_omp * 1.0e-09 * 44.013/28.97
651 call getin(
'CFC11_ppt_per',zzz)
652 cfc11_ppt_per_omp = zzz
653 rcfc11_per_omp=cfc11_ppt_per_omp* 1.0e-12 * 137.3686/28.97
661 call getin(
'CFC12_ppt_per',zzz)
662 cfc12_ppt_per_omp = zzz
663 rcfc12_per_omp = cfc12_ppt_per_omp * 1.0e-12 * 120.9140/28.97
675 cycle_diurne_omp = .
true.
676 CALL getin(
'cycle_diurne',cycle_diurne_omp)
684 soil_model_omp = .
true.
685 CALL getin(
'soil_model',soil_model_omp)
692 new_oliq_omp = .
true.
693 CALL getin(
'new_oliq',new_oliq_omp)
700 ok_orodr_omp = .
true.
701 CALL getin(
'ok_orodr',ok_orodr_omp)
707 ok_orolf_omp = .
true.
708 CALL getin(
'ok_orolf', ok_orolf_omp)
716 ok_limitvrai_omp = .
false.
717 CALL getin(
'ok_limitvrai',ok_limitvrai_omp)
725 CALL getin(
'nbapp_rad',nbapp_rad_omp)
735 CALL getin(
'iflag_con',iflag_con_omp)
743 iflag_ener_conserv_omp = -1
744 CALL getin(
'iflag_ener_conserv',iflag_ener_conserv_omp)
752 ok_conserv_q_omp = .
false.
753 CALL getin(
'ok_conserv_q',ok_conserv_q_omp)
761 iflag_fisrtilp_qsat_omp = 0
762 CALL getin(
'iflag_fisrtilp_qsat',iflag_fisrtilp_qsat_omp)
777 cvl_comp_threshold_omp = 1.00
778 CALL getin(
'cvl_comp_threshold', cvl_comp_threshold_omp)
785 cvl_sig2feed_omp = 0.97
786 CALL getin(
'cvl_sig2feed', cvl_sig2feed_omp)
793 CALL getin(
'cvl_corr', cvl_corr_omp)
802 call getin(
'epmax', epmax_omp)
809 ok_adj_ema_omp = .
false.
810 call getin(
'ok_adj_ema',ok_adj_ema_omp)
818 call getin(
'iflag_clw',iflag_clw_omp)
825 cld_lc_lsc_omp = 2.6e-4
826 call getin(
'cld_lc_lsc',cld_lc_lsc_omp)
833 cld_lc_con_omp = 2.6e-4
834 call getin(
'cld_lc_con',cld_lc_con_omp)
841 cld_tau_lsc_omp = 3600.
842 call getin(
'cld_tau_lsc',cld_tau_lsc_omp)
849 cld_tau_con_omp = 3600.
850 call getin(
'cld_tau_con',cld_tau_con_omp)
858 call getin(
'ffallv_lsc',ffallv_lsc_omp)
866 call getin(
'ffallv_con',ffallv_con_omp)
874 call getin(
'coef_eva',coef_eva_omp)
881 reevap_ice_omp = .
false.
882 call getin(
'reevap_ice',reevap_ice_omp)
890 call getin(
'iflag_ratqs',iflag_ratqs_omp)
899 call getin(
'iflag_radia',iflag_radia_omp)
908 call getin(
'iflag_rrtm',iflag_rrtm_omp)
917 call getin(
'NSW',nsw_omp)
920 call getin(
'iflag_albedo',iflag_albedo_omp)
922 ok_chlorophyll_omp=.
false.
923 call getin(
'ok_chlorophyll',ok_chlorophyll_omp)
936 call getin(
'iflag_cldcon',iflag_cld_th_omp)
937 call getin(
'iflag_cld_th',iflag_cld_th_omp)
939 call getin(
'iflag_cld_cv',iflag_cld_cv_omp)
948 call getin(
'tau_cld_cv',tau_cld_cv_omp)
956 coefw_cld_cv_omp = 0.1
957 call getin(
'coefw_cld_cv',coefw_cld_cv_omp)
969 call getin(
'iflag_pdf',iflag_pdf_omp)
976 fact_cldcon_omp = 0.375
977 call getin(
'fact_cldcon',fact_cldcon_omp)
985 facttemps_omp = 1.e-4
986 call getin(
'facttemps',facttemps_omp)
994 ok_newmicro_omp = .
true.
995 call getin(
'ok_newmicro',ok_newmicro_omp)
1003 call getin(
'ratqsbas',ratqsbas_omp)
1011 call getin(
'ratqshaut',ratqshaut_omp)
1018 tau_ratqs_omp = 1800.
1019 call getin(
'tau_ratqs',tau_ratqs_omp)
1030 solarlong0_omp = -999.999
1031 call getin(
'solarlong0',solarlong0_omp)
1038 call getin(
'qsol0',qsol0_omp)
1040 call getin(
'evap0',evap0_omp)
1042 call getin(
'albsno0',albsno0_omp)
1051 inertie_ice_omp = 2000.
1052 call getin(
'inertie_ice',inertie_ice_omp)
1059 inertie_sno_omp = 2000.
1060 call getin(
'inertie_sno',inertie_sno_omp)
1067 inertie_sol_omp = 2000.
1068 call getin(
'inertie_sol',inertie_sol_omp)
1076 rad_froid_omp = 35.0
1077 call getin(
'rad_froid',rad_froid_omp)
1085 rad_chau1_omp = 13.0
1086 call getin(
'rad_chau1',rad_chau1_omp)
1095 call getin(
'rad_chau2',rad_chau2_omp)
1103 t_glace_min_omp = 258.
1104 call getin(
't_glace_min',t_glace_min_omp)
1112 t_glace_max_omp = 273.13
1113 call getin(
't_glace_max',t_glace_max_omp)
1121 exposant_glace_omp = 1.
1122 call getin(
'exposant_glace',exposant_glace_omp)
1130 iflag_t_glace_omp = 0
1131 call getin(
'iflag_t_glace',iflag_t_glace_omp)
1139 iflag_ice_thermo_omp = 0
1140 call getin(
'iflag_ice_thermo',iflag_ice_thermo_omp)
1148 call getin(
'rei_min',rei_min_omp)
1157 call getin(
'rei_max',rei_max_omp)
1166 call getin(
'top_height',top_height_omp)
1175 call getin(
'overlap',overlap_omp)
1186 call getin(
'cdmmax',cdmmax_omp)
1195 call getin(
'cdhmax',cdhmax_omp)
1205 call getin(
'ksta',ksta_omp)
1213 ksta_ter_omp = 1.0e-10
1214 call getin(
'ksta_ter',ksta_ter_omp)
1221 f_ri_cd_min_omp = 0.1
1222 call getin(
'f_ri_cd_min',f_ri_cd_min_omp)
1230 ok_kzmin_omp = .
true.
1231 call getin(
'ok_kzmin',ok_kzmin_omp)
1240 call getin(
'fmagic',fmagic_omp)
1249 call getin(
'pmagic',pmagic_omp)
1256 ok_lic_melt_omp = .
false.
1257 call getin(
'ok_lic_melt', ok_lic_melt_omp)
1269 call getin(
'iflag_pbl',iflag_pbl_omp)
1276 iflag_pbl_split_omp = 0
1277 call getin(
'iflag_pbl_split',iflag_pbl_split_omp)
1284 iflag_thermals_omp = 0
1285 call getin(
'iflag_thermals',iflag_thermals_omp)
1292 fact_thermals_ed_dz_omp = 0.1
1294 call getin(
'fact_thermals_ed_dz',fact_thermals_ed_dz_omp)
1302 iflag_thermals_ed_omp = 0
1303 call getin(
'iflag_thermals_ed',iflag_thermals_ed_omp)
1311 iflag_thermals_optflux_omp = 0
1312 call getin(
'iflag_thermals_optflux',iflag_thermals_optflux_omp)
1319 iflag_thermals_closure_omp = 1
1320 call getin(
'iflag_thermals_closure',iflag_thermals_closure_omp)
1330 nsplit_thermals_omp = 1
1331 call getin(
'nsplit_thermals',nsplit_thermals_omp)
1339 call getin(
'alp_bl_k',alp_bl_k_omp)
1348 iflag_trig_bl_omp = 0
1349 call getin(
'iflag_trig_bl',iflag_trig_bl_omp)
1357 call getin(
's_trig',s_trig_omp)
1364 tau_trig_shallow_omp = 600
1365 call getin(
'tau_trig_shallow',tau_trig_shallow_omp)
1372 tau_trig_deep_omp = 1800
1373 call getin(
'tau_trig_deep',tau_trig_deep_omp)
1380 iflag_clos_bl_omp = 0
1381 call getin(
'iflag_clos_bl',iflag_clos_bl_omp)
1391 tau_thermals_omp = 0.
1392 call getin(
'tau_thermals',tau_thermals_omp)
1401 call getin(
'iflag_coupl',iflag_coupl_omp)
1410 call getin(
'iflag_clos',iflag_clos_omp)
1417 coef_clos_ls_omp = 0.
1418 call getin(
'coef_clos_ls',coef_clos_ls_omp)
1426 iflag_cvl_sigd_omp = 0
1427 call getin(
'iflag_cvl_sigd',iflag_cvl_sigd_omp)
1435 call getin(
'iflag_wake',iflag_wake_omp)
1443 call getin(
'alp_offset',alp_offset_omp)
1452 call getin(
'lev_histhf',lev_histhf_omp)
1461 call getin(
'lev_histday',lev_histday_omp)
1470 call getin(
'lev_histmth',lev_histmth_omp)
1478 call getin(
'lev_histins',lev_histins_omp)
1486 call getin(
'lev_histLES',lev_histles_omp)
1493 lev_histdaynmc_omp = 8
1494 call getin(
'lev_histdayNMC',lev_histdaynmc_omp)
1501 levout_histnmc_omp(1) = 5
1502 levout_histnmc_omp(2) = 5
1503 levout_histnmc_omp(3) = 5
1504 call getin(
'levout_histNMC',levout_histnmc_omp)
1514 ok_histnmc_omp(1) = .
false.
1515 ok_histnmc_omp(2) = .
false.
1516 ok_histnmc_omp(3) = .
false.
1517 call getin(
'ok_histNMC',ok_histnmc_omp)
1527 freq_outnmc_omp(2) = 1.
1528 freq_outnmc_omp(3) = 1./4.
1529 call getin(
'freq_outNMC',freq_outnmc_omp)
1538 freq_calnmc_omp(1) = pasphys
1539 freq_calnmc_omp(2) = pasphys
1540 freq_calnmc_omp(3) = pasphys
1541 call getin(
'freq_calNMC',freq_calnmc_omp)
1548 type_run_omp =
'AMIP'
1549 call getin(
'type_run',type_run_omp)
1557 ok_cosp_omp = .
false.
1558 call getin(
'ok_cosp',ok_cosp_omp)
1566 ok_mensuelcosp_omp = .
true.
1567 call getin(
'ok_mensuelCOSP',ok_mensuelcosp_omp)
1575 ok_journecosp_omp = .
true.
1576 call getin(
'ok_journeCOSP',ok_journecosp_omp)
1584 ok_hfcosp_omp = .
false.
1585 call getin(
'ok_hfCOSP',ok_hfcosp_omp)
1596 lonmin_ins_omp = 100.
1597 call getin(
'lonmin_ins',lonmin_ins_omp)
1604 lonmax_ins_omp = 130.
1605 call getin(
'lonmax_ins',lonmax_ins_omp)
1612 latmin_ins_omp = -20.
1613 call getin(
'latmin_ins',latmin_ins_omp)
1620 latmax_ins_omp = 20.
1621 call getin(
'latmax_ins',latmax_ins_omp)
1628 ecrit_hf_omp = 1./8.
1629 call getin(
'ecrit_hf',ecrit_hf_omp)
1636 ecrit_ins_omp = 1./48.
1637 call getin(
'ecrit_ins',ecrit_ins_omp)
1645 call getin(
'ecrit_day',ecrit_day_omp)
1653 call getin(
'ecrit_mth',ecrit_mth_omp)
1661 call getin(
'ecrit_tra',ecrit_tra_omp)
1668 ecrit_reg_omp = 0.25
1669 call getin(
'ecrit_reg',ecrit_reg_omp)
1672 print*,
'CONFPHYS OOK avant drag_ter'
1676 f_cdrag_ter_omp = 0.8
1677 call getin(
'f_cdrag_ter',f_cdrag_ter_omp)
1679 f_cdrag_oce_omp = 0.8
1680 call getin(
'f_cdrag_oce',f_cdrag_oce_omp)
1685 call getin(
'f_z0qh_oce',f_z0qh_oce_omp)
1688 call getin(
'f_qsat_oce',f_qsat_oce_omp)
1691 call getin(
'f_gust_bl',f_gust_bl_omp)
1694 call getin(
'f_gust_wk',f_gust_wk_omp)
1697 call getin(
'iflag_z0_oce',iflag_z0_oce_omp)
1700 call getin(
'iflag_gusts',iflag_gusts_omp)
1702 min_wind_speed_omp = 1.
1703 call getin(
'min_wind_speed',min_wind_speed_omp)
1705 z0m_seaice_omp = 0.002 ;
call getin(
'z0m_seaice',z0m_seaice_omp)
1706 z0h_seaice_omp = 0.002 ;
call getin(
'z0h_seaice',z0h_seaice_omp)
1709 call getin(
'f_rugoro',f_rugoro_omp)
1711 z0min_omp = 0.000015
1712 call getin(
'z0min',z0min_omp)
1723 call getin(
'supcrit1',supcrit1_omp)
1732 call getin(
'supcrit2',supcrit2_omp)
1747 call getin(
'iflag_mix',iflag_mix_omp)
1756 call getin(
'scut',scut_omp)
1765 call getin(
'qqa1',qqa1_omp)
1774 call getin(
'qqa2',qqa2_omp)
1783 call getin(
'gammas',gammas_omp)
1792 call getin(
'Fmax',fmax_omp)
1800 tmax_fonte_cv_omp = 275.15
1801 call getin(
'tmax_fonte_cv',tmax_fonte_cv_omp)
1810 call getin(
'alphas',alphas_omp)
1818 ok_strato_omp=.
false.
1819 CALL getin(
'ok_strato',ok_strato_omp)
1826 ok_hines_omp=.
false.
1827 CALL getin(
'ok_hines',ok_hines_omp)
1833 sso_gkdrag_omp = merge(0.1875, 0.2, ok_strato_omp)
1834 CALL getin(
'sso_gkdrag', sso_gkdrag_omp)
1836 sso_grahil_omp=merge(0.1,1.,ok_strato_omp)
1837 CALL getin(
'sso_grahil', sso_grahil_omp)
1839 sso_grcrit_omp =merge(1.,0.01,ok_strato_omp)
1840 CALL getin(
'sso_grcrit', sso_grcrit_omp)
1843 CALL getin(
'sso_gfrcri', sso_gfrcri_omp)
1845 sso_gkwake_omp = 0.50
1846 CALL getin(
'sso_gkwake', sso_gkwake_omp)
1848 sso_gklift_omp = merge(0.25,0.50,ok_strato_omp)
1849 CALL getin(
'sso_gklift', sso_gklift_omp)
1853 ok_gwd_rando_omp = .
false.
1855 print*,
'La parametrisation des ondes de gravites non orographiques'
1856 print*,
'ne fonctionne pas en 1D'
1858 CALL getin(
'ok_gwd_rando', ok_gwd_rando_omp)
1861 gwd_rando_ruwmax_omp = 2.00
1862 CALL getin(
'gwd_rando_ruwmax', gwd_rando_ruwmax_omp)
1864 gwd_rando_sat_omp = 0.25
1865 CALL getin(
'gwd_rando_sat', gwd_rando_sat_omp)
1867 gwd_front_ruwmax_omp = 2.50
1868 CALL getin(
'gwd_front_ruwmax', gwd_front_ruwmax_omp)
1870 gwd_front_sat_omp = 0.60
1871 CALL getin(
'gwd_front_sat', gwd_front_sat_omp)
1881 CALL getin(
'ok_qch4',ok_qch4_omp)
1889 ok_les_omp = .
false.
1890 call getin(
'OK_LES', ok_les_omp)
1898 callstats_omp = .
false.
1899 call getin(
'callstats', callstats_omp)
1908 ecrit_les_omp = 1./8.
1909 call getin(
'ecrit_LES', ecrit_les_omp)
1912 call getin(
'read_climoz', read_climoz)
1914 carbon_cycle_tr_omp=.
false.
1915 CALL getin(
'carbon_cycle_tr',carbon_cycle_tr_omp)
1917 carbon_cycle_cpl_omp=.
false.
1918 CALL getin(
'carbon_cycle_cpl',carbon_cycle_cpl_omp)
1926 solaire = solaire_omp
1929 ch4_ppb = ch4_ppb_omp
1931 n2o_ppb = n2o_ppb_omp
1933 cfc11_ppt = cfc11_ppt_omp
1935 cfc12_ppt = cfc12_ppt_omp
1942 ok_4xco2atm = ok_4xco2atm_omp
1943 rco2_per = rco2_per_omp
1944 rch4_per = rch4_per_omp
1945 rn2o_per = rn2o_per_omp
1946 rcfc11_per = rcfc11_per_omp
1947 rcfc12_per = rcfc12_per_omp
1957 iflag_ener_conserv = iflag_ener_conserv_omp
1958 ok_conserv_q = ok_conserv_q_omp
1959 iflag_fisrtilp_qsat = iflag_fisrtilp_qsat_omp
1964 cld_lc_lsc = cld_lc_lsc_omp
1965 cld_lc_con = cld_lc_con_omp
1967 cld_tau_con = cld_tau_con_omp
1969 ffallv_con = ffallv_con_omp
1970 coef_eva = coef_eva_omp
1971 reevap_ice = reevap_ice_omp
1972 iflag_pdf = iflag_pdf_omp
1973 solarlong0 = solarlong0_omp
1978 inertie_ice = inertie_ice_omp
1987 iflag_ice_thermo = iflag_ice_thermo_omp
1991 overlap = overlap_omp
1996 f_ri_cd_min = f_ri_cd_min_omp
2001 iflag_pbl_split = iflag_pbl_split_omp
2004 lev_histmth = lev_histmth_omp
2006 lev_histles = lev_histles_omp
2007 lev_histdaynmc = lev_histdaynmc_omp
2008 levout_histnmc = levout_histnmc_omp
2009 ok_histnmc(:) = ok_histnmc_omp(:)
2010 freq_outnmc(:) = freq_outnmc_omp(:)
2011 freq_calnmc(:) = freq_calnmc_omp(:)
2027 ok_all_xml = ok_all_xml_omp
2028 ok_newmicro = ok_newmicro_omp
2029 ok_journe = ok_journe_omp
2031 ok_mensuel = ok_mensuel_omp
2032 ok_instan = ok_instan_omp
2033 freq_isccp = freq_isccp_omp
2034 ecrit_isccp = ecrit_isccp_omp
2035 freq_cosp = freq_cosp_omp
2038 ok_cdnc = ok_cdnc_omp
2039 aerosol_couple = aerosol_couple_omp
2040 flag_aerosol=flag_aerosol_omp
2041 flag_aerosol_strat=flag_aerosol_strat_omp
2043 aer_type = aer_type_omp
2044 bl95_b0 = bl95_b0_omp
2045 bl95_b1 = bl95_b1_omp
2046 fact_cldcon = fact_cldcon_omp
2047 facttemps = facttemps_omp
2048 ratqsbas = ratqsbas_omp
2049 ratqshaut = ratqshaut_omp
2050 tau_ratqs = tau_ratqs_omp
2052 iflag_radia = iflag_radia_omp
2053 iflag_rrtm = iflag_rrtm_omp
2054 iflag_albedo = iflag_albedo_omp
2055 ok_chlorophyll = ok_chlorophyll_omp
2057 iflag_cld_th = iflag_cld_th_omp
2061 iflag_ratqs = iflag_ratqs_omp
2062 ip_ebil_phy = ip_ebil_phy_omp
2065 fact_thermals_ed_dz = fact_thermals_ed_dz_omp
2067 iflag_thermals_closure = iflag_thermals_closure_omp
2075 tau_trig_deep = tau_trig_deep_omp
2076 iflag_clos_bl = iflag_clos_bl_omp
2080 iflag_wake = iflag_wake_omp
2081 coef_clos_ls = coef_clos_ls_omp
2082 alp_offset = alp_offset_omp
2084 type_run = type_run_omp
2085 ok_cosp = ok_cosp_omp
2086 ok_mensuelcosp = ok_mensuelcosp_omp
2087 ok_journecosp = ok_journecosp_omp
2088 ok_hfcosp = ok_hfcosp_omp
2089 seuil_inversion=seuil_inversion_omp
2090 lonmin_ins = lonmin_ins_omp
2091 lonmax_ins = lonmax_ins_omp
2092 latmin_ins = latmin_ins_omp
2093 latmax_ins = latmax_ins_omp
2094 ecrit_hf = ecrit_hf_omp
2095 ecrit_ins = ecrit_ins_omp
2096 ecrit_day = ecrit_day_omp
2097 ecrit_mth = ecrit_mth_omp
2098 ecrit_tra = ecrit_tra_omp
2099 ecrit_reg = ecrit_reg_omp
2101 cvl_sig2feed = cvl_sig2feed_omp
2102 cvl_corr = cvl_corr_omp
2103 ok_lic_melt = ok_lic_melt_omp
2104 f_cdrag_ter=f_cdrag_ter_omp
2105 f_cdrag_oce=f_cdrag_oce_omp
2110 f_z0qh_oce=f_z0qh_oce_omp
2113 iflag_z0_oce=iflag_z0_oce_omp
2117 z0h_seaice=z0h_seaice_omp
2122 supcrit1 = supcrit1_omp
2123 supcrit2 = supcrit2_omp
2130 tmax_fonte_cv = tmax_fonte_cv_omp
2133 gkdrag=sso_gkdrag_omp
2134 grahilo=sso_grahil_omp
2135 grcrit=sso_grcrit_omp
2136 gfrcrit=sso_gfrcri_omp
2137 gkwake=sso_gkwake_omp
2138 gklift=sso_gklift_omp
2141 ok_hines = ok_hines_omp
2142 ok_gwd_rando = ok_gwd_rando_omp
2143 gwd_rando_ruwmax = gwd_rando_ruwmax_omp
2145 gwd_front_ruwmax = gwd_front_ruwmax_omp
2146 gwd_front_sat = gwd_front_sat_omp
2147 ok_qch4 = ok_qch4_omp
2149 callstats = callstats_omp
2150 ecrit_les = ecrit_les_omp
2156 WRITE(
lunout,*)
' ERROR version_ocean=',
version_ocean,
' not valid in coupled configuration'
2157 CALL abort_physic(
'conf_phys',
'version_ocean not valid',1)
2165 CALL abort_physic(
'conf_phys',
'version_ocean not valid',1)
2170 IF (ok_ade .OR. ok_aie)
THEN
2171 IF ( flag_aerosol .EQ. 0 )
THEN
2172 CALL abort_physic(
'conf_phys',
'flag_aerosol=0 not compatible avec ok_ade ou ok_aie=.TRUE.',1)
2174 IF ( .NOT. new_aod .AND. flag_aerosol .NE. 1)
THEN
2175 CALL abort_physic(
'conf_phys',
'new_aod=.FALSE. not compatible avec flag_aerosol=1',1)
2180 IF (ok_aie .AND. .NOT. ok_cdnc)
THEN
2181 CALL abort_physic(
'conf_phys',
'ok_cdnc must be set to y if ok_aie is activated',1)
2186 write(
lunout,*)
' ##############################################'
2187 write(
lunout,*)
' Configuration des parametres de la physique: '
2192 write(
lunout,*)
' Config xml pour XIOS : ok_all_xml = ', ok_all_xml
2193 write(
lunout,*)
' Sortie journaliere = ', ok_journe
2194 write(
lunout,*)
' Sortie haute frequence = ', ok_hf
2195 write(
lunout,*)
' Sortie mensuelle = ', ok_mensuel
2196 write(
lunout,*)
' Sortie instantanee = ', ok_instan
2197 write(
lunout,*)
' Frequence appel simulateur ISCCP, freq_ISCCP =', freq_isccp
2198 write(
lunout,*)
' Frequence appel simulateur ISCCP, ecrit_ISCCP =', ecrit_isccp
2199 write(
lunout,*)
' Frequence appel simulateur COSP, freq_COSP =', freq_cosp
2200 write(
lunout,*)
' Sortie bilan d''energie, ip_ebil_phy =', ip_ebil_phy
2201 write(
lunout,*)
' Excentricite = ',r_ecc
2202 write(
lunout,*)
' Equinoxe = ',r_peri
2203 write(
lunout,*)
' Inclinaison =',r_incl
2204 write(
lunout,*)
' Constante solaire =',solaire
2206 write(
lunout,*)
' RCO2_act = ',rco2_act
2207 write(
lunout,*)
' CH4_ppb =',ch4_ppb,
' RCH4_act = ',rch4_act
2208 write(
lunout,*)
' N2O_ppb =',n2o_ppb,
' RN2O_act= ',rn2o_act
2209 write(
lunout,*)
' CFC11_ppt=',cfc11_ppt,
' RCFC11_act= ',rcfc11_act
2210 write(
lunout,*)
' CFC12_ppt=',cfc12_ppt,
' RCFC12_act= ',rcfc12_act
2211 write(
lunout,*)
' ok_4xCO2atm=',ok_4xco2atm
2212 write(
lunout,*)
' RCO2_per = ',rco2_per,
' RCH4_per = ', rch4_per
2213 write(
lunout,*)
' RN2O_per = ',rn2o_per,
' RCFC11_per = ', rcfc11_per
2214 write(
lunout,*)
' RCFC12_per = ',rcfc12_per
2216 write(
lunout,*)
' cvl_sig2feed=', cvl_sig2feed
2217 write(
lunout,*)
' cvl_corr=', cvl_corr
2218 write(
lunout,*)
'ok_lic_melt=', ok_lic_melt
2227 write(
lunout,*)
'iflag_ener_conserv=',iflag_ener_conserv
2228 write(
lunout,*)
'ok_conserv_q=',ok_conserv_q
2229 write(
lunout,*)
'iflag_fisrtilp_qsat=',iflag_fisrtilp_qsat
2233 write(
lunout,*)
' cld_lc_lsc = ', cld_lc_lsc
2234 write(
lunout,*)
' cld_lc_con = ', cld_lc_con
2236 write(
lunout,*)
' cld_tau_con = ', cld_tau_con
2238 write(
lunout,*)
' ffallv_con = ', ffallv_con
2239 write(
lunout,*)
' coef_eva = ', coef_eva
2240 write(
lunout,*)
' reevap_ice = ', reevap_ice
2241 write(
lunout,*)
' iflag_pdf = ', iflag_pdf
2242 write(
lunout,*)
' iflag_cld_th = ', iflag_cld_th
2246 write(
lunout,*)
' iflag_radia = ', iflag_radia
2247 write(
lunout,*)
' iflag_rrtm = ', iflag_rrtm
2248 write(
lunout,*)
' NSW = ', nsw
2249 write(
lunout,*)
' iflag_albedo = ', iflag_albedo
2250 write(
lunout,*)
' ok_chlorophyll =',ok_chlorophyll
2251 write(
lunout,*)
' iflag_ratqs = ', iflag_ratqs
2252 write(
lunout,*)
' seuil_inversion = ', seuil_inversion
2253 write(
lunout,*)
' fact_cldcon = ', fact_cldcon
2254 write(
lunout,*)
' facttemps = ', facttemps
2255 write(
lunout,*)
' ok_newmicro = ',ok_newmicro
2256 write(
lunout,*)
' ratqsbas = ',ratqsbas
2257 write(
lunout,*)
' ratqshaut = ',ratqshaut
2258 write(
lunout,*)
' tau_ratqs = ',tau_ratqs
2267 write(
lunout,*)
' iflag_ice_thermo = ',iflag_ice_thermo
2270 write(
lunout,*)
' overlap = ',overlap
2272 write(
lunout,*)
' cdhmax = ',cdhmax
2275 write(
lunout,*)
' f_ri_cd_min = ',f_ri_cd_min
2279 write(
lunout,*)
' ok_ade = ',ok_ade
2280 write(
lunout,*)
' ok_aie = ',ok_aie
2281 write(
lunout,*)
' aerosol_couple = ', aerosol_couple
2282 write(
lunout,*)
' flag_aerosol = ', flag_aerosol
2283 write(
lunout,*)
' flag_aerosol_strat = ', flag_aerosol_strat
2284 write(
lunout,*)
' new_aod = ', new_aod
2285 write(
lunout,*)
' aer_type = ',aer_type
2286 write(
lunout,*)
' bl95_b0 = ',bl95_b0
2287 write(
lunout,*)
' bl95_b1 = ',bl95_b1
2290 write(
lunout,*)
' lev_histmth = ',lev_histmth
2292 write(
lunout,*)
' lev_histLES = ',lev_histles
2293 write(
lunout,*)
' lev_histdayNMC = ',lev_histdaynmc
2294 write(
lunout,*)
' levout_histNMC = ',levout_histnmc
2295 write(
lunout,*)
' ok_histNMC = ',ok_histnmc
2296 write(
lunout,*)
' freq_outNMC = ',freq_outnmc
2297 write(
lunout,*)
' freq_calNMC = ',freq_calnmc
2299 write(
lunout,*)
' iflag_pbl_split = ', iflag_pbl_split
2302 write(
lunout,*)
' fact_thermals_ed_dz = ', fact_thermals_ed_dz
2304 write(
lunout,*)
' iflag_thermals_closure = ', iflag_thermals_closure
2306 write(
lunout,*)
' coef_clos_ls = ', coef_clos_ls
2307 write(
lunout,*)
' type_run = ',type_run
2308 write(
lunout,*)
' ok_cosp = ',ok_cosp
2309 write(
lunout,*)
' ok_mensuelCOSP = ',ok_mensuelcosp
2310 write(
lunout,*)
' ok_journeCOSP = ',ok_journecosp
2311 write(
lunout,*)
' ok_hfCOSP =',ok_hfcosp
2312 write(
lunout,*)
' solarlong0 = ', solarlong0
2313 write(
lunout,*)
' qsol0 = ', qsol0
2314 write(
lunout,*)
' evap0 = ', evap0
2317 write(
lunout,*)
' inertie_ice = ', inertie_ice
2319 write(
lunout,*)
' f_cdrag_ter = ',f_cdrag_ter
2320 write(
lunout,*)
' f_cdrag_oce = ',f_cdrag_oce
2322 write(
lunout,*)
' z0min = ',z0min
2323 write(
lunout,*)
' supcrit1 = ', supcrit1
2324 write(
lunout,*)
' supcrit2 = ', supcrit2
2330 write(
lunout,*)
' Fmax = ', fmax
2331 write(
lunout,*)
' tmax_fonte_cv = ', tmax_fonte_cv
2333 write(
lunout,*)
' iflag_wake = ', iflag_wake
2334 write(
lunout,*)
' alp_offset = ', alp_offset
2337 write(
lunout,*)
' s_trig = ', s_trig
2339 write(
lunout,*)
' tau_trig_deep = ', tau_trig_deep
2340 write(
lunout,*)
' iflag_clos_bl = ', iflag_clos_bl
2343 write(
lunout,*)
' lonmin lonmax latmin latmax bilKP_ins =',&
2344 lonmin_ins, lonmax_ins, latmin_ins, latmax_ins
2345 write(
lunout,*)
' ecrit_ hf, ins, day, mth, reg, tra, ISCCP, LES',&
2346 ecrit_hf, ecrit_ins, ecrit_day, ecrit_mth, ecrit_reg, ecrit_tra, ecrit_isccp, ecrit_les
2349 write(
lunout,*)
'ok_hines = ', ok_hines
2350 write(
lunout,*)
'ok_gwd_rando = ', ok_gwd_rando
2351 write(
lunout,*)
'ok_qch4 = ', ok_qch4
2352 write(
lunout,*)
'gwd_rando_ruwmax = ', gwd_rando_ruwmax
2354 write(
lunout,*)
'gwd_front_ruwmax = ', gwd_front_ruwmax
2355 write(
lunout,*)
'gwd_front_sat = ', gwd_front_sat
2356 write(
lunout,*)
'SSO gkdrag =',gkdrag
2357 write(
lunout,*)
'SSO grahilo=',grahilo
2358 write(
lunout,*)
'SSO grcrit=',grcrit
2359 write(
lunout,*)
'SSO gfrcrit=',gfrcrit
2360 write(
lunout,*)
'SSO gkwake=',gkwake
2361 write(
lunout,*)
'SSO gklift=',gklift
2362 write(
lunout,*)
'read_climoz = ', read_climoz
2387 REAL,
SAVE :: tau_calv_omp
2395 tau_calv_omp = 360.*10.
2397 call getin(
'tau_calv',tau_calv_omp)
2401 tau_calv=tau_calv_omp
2404 write(
lunout,*)
' ##############################################'
2405 WRITE(
lunout,*)
' Configuration de l''interface atm/surfaces : '
2406 WRITE(
lunout,*)
' tau_calv = ',tau_calv
!$Header!c include clesph0 h c COMMON clesph0 ok_orolf
nsplit_thermals!nrlmd le iflag_clos_bl tau_trig_deep real::s_trig!fin nrlmd le fact_thermals_ed_dz iflag_wake iflag_thermals_optflux
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire RCFC12 RCFC12_act CFC12_ppt!IM ajout CFMIP2 CMIP5 LOGICAL ok_4xCO2atm RCFC12_per CFC12_ppt_per!OM correction du bilan d eau global!OM Correction sur precip KE REAL cvl_corr!OM Fonte calotte dans bilan eau LOGICAL ok_lic_melt!IM simulateur ISCCP INTEGER overlap!IM seuils cdrh REAL cdhmax!IM param stabilite s terres et en dehors REAL f_ri_cd_min!IM MAFo pmagic evap0!Frottement au f_cdrag_oce REAL f_gust_wk
nsplit_thermals!nrlmd le iflag_clos_bl tau_trig_deep real::s_trig!fin nrlmd le fact_thermals_ed_dz iflag_wake iflag_thermals_closure common ctherm1 iflag_thermals_closure common ctherm2 fact_thermals_ed_dz common ctherm4 iflag_coupl
!$Header!c include clesph0 h c COMMON clesph0 soil_model
!$Header!c include clesph0 h c COMMON clesph0 ok_orodr
!$Id t_glace_min REAL exposant_glace REAL rei_max REAL coefw_cld_cv REAL tmax_fonte_cv INTEGER iflag_cld_cv common nuagecom iflag_cld_cv
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_con
subroutine conf_phys(ok_journe, ok_mensuel, ok_instan, ok_hf, ok_LES, callstats, solarlong0, seuil_inversion, fact_cldcon, facttemps, ok_newmicro, iflag_radia, iflag_cld_th, iflag_ratqs, ratqsbas, ratqshaut, tau_ratqs, ok_ade, ok_aie, ok_cdnc, aerosol_couple, flag_aerosol, flag_aerosol_strat, new_aod, bl95_b0, bl95_b1, read_climoz, alp_offset)
nsplit_thermals!nrlmd le iflag_clos_bl tau_trig_deep real::s_trig!fin nrlmd le fact_thermals_ed_dz iflag_wake iflag_thermals_closure common ctherm1 iflag_thermals_closure common ctherm2 fact_thermals_ed_dz common ctherm4 iflag_wake common ctherm5 iflag_thermals_optflux!nrlmd le common ctherm6 iflag_trig_bl
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire RCFC12 RCFC12_act CFC12_ppt!IM ajout CFMIP2 CMIP5 LOGICAL ok_4xCO2atm RCFC12_per CFC12_ppt_per!OM correction du bilan d eau global!OM Correction sur precip KE REAL cvl_corr!OM Fonte calotte dans bilan eau LOGICAL ok_lic_melt!IM simulateur ISCCP INTEGER overlap!IM seuils cdrh REAL cdhmax!IM param stabilite s terres et en dehors REAL f_ri_cd_min!IM MAFo pmagic evap0!Frottement au f_cdrag_oce REAL f_z0qh_oce REAL z0h_seaice INTEGER iflag_z0_oce!Rugoro Real z0min!IM lev_histmth INTEGER lev_histdayNMC Integer lev_histins
!$Header!c include clesph0 h c COMMON clesph0 cycle_diurne
!$Header!c include clesph0 h c COMMON clesph0 ok_limitvrai
INTEGER iflag_mix REAL alphas
!$Id t_glace_min REAL exposant_glace REAL rei_max REAL coefw_cld_cv REAL tmax_fonte_cv INTEGER iflag_cld_cv common nuagecom && t_glace_min
character(len=6), save version_ocean
!$Header!c include clesph0 h c COMMON clesph0 new_oliq
!$Id!common comsoil inertie_sno
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire RCFC12 RCFC12_act CFC12_ppt!IM ajout CFMIP2 CMIP5 LOGICAL ok_4xCO2atm RCFC12_per CFC12_ppt_per!OM correction du bilan d eau global!OM Correction sur precip KE REAL cvl_corr!OM Fonte calotte dans bilan eau LOGICAL ok_lic_melt!IM simulateur ISCCP INTEGER top_height
!$Id t_glace_min REAL exposant_glace REAL rei_max REAL coefw_cld_cv REAL tmax_fonte_cv INTEGER iflag_cld_cv common nuagecom rei_max
INTEGER iflag_mix REAL scut REAL Supcrit2 REAL coef_clos_ls!COMMON YOMCST2 scut
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire RCFC12 RCFC12_act CFC12_ppt!IM ajout CFMIP2 CMIP5 LOGICAL ok_4xCO2atm RCFC12_per CFC12_ppt_per!OM correction du bilan d eau global!OM Correction sur precip KE REAL cvl_corr!OM Fonte calotte dans bilan eau LOGICAL ok_lic_melt!IM simulateur ISCCP INTEGER overlap!IM seuils cdrh REAL cdhmax!IM param stabilite s terres et en dehors REAL f_ri_cd_min!IM MAFo pmagic evap0!Frottement au f_cdrag_oce REAL f_z0qh_oce REAL z0h_seaice INTEGER iflag_gusts
!$Id iflag_pbl_split common compbl iflag_pbl
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire RCFC12 RCFC12_act CFC12_ppt!IM ajout CFMIP2 CMIP5 LOGICAL ok_4xCO2atm RCFC12_per CFC12_ppt_per!OM correction du bilan d eau global!OM Correction sur precip KE REAL cvl_corr!OM Fonte calotte dans bilan eau LOGICAL ok_lic_melt!IM simulateur ISCCP INTEGER overlap!IM seuils cdrh REAL cdhmax!IM param stabilite s terres et en dehors REAL f_ri_cd_min!IM MAFo pmagic evap0!Frottement au f_cdrag_oce REAL f_z0qh_oce REAL z0h_seaice INTEGER iflag_z0_oce!Rugoro Real z0min!IM lev_histday
!$Id t_glace_min REAL exposant_glace REAL rei_max REAL coefw_cld_cv REAL tmax_fonte_cv INTEGER iflag_cld_cv common nuagecom exposant_glace
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire RCFC12 RCFC12_act CFC12_ppt!IM ajout CFMIP2 CMIP5 LOGICAL ok_4xCO2atm RCFC12_per CFC12_ppt_per!OM correction du bilan d eau global!OM Correction sur precip KE REAL cvl_corr!OM Fonte calotte dans bilan eau LOGICAL ok_lic_melt!IM simulateur ISCCP INTEGER overlap!IM seuils cdrh REAL cdhmax!IM param stabilite s terres et en dehors REAL f_ri_cd_min!IM MAFo pmagic evap0!Frottement au f_cdrag_oce REAL f_z0qh_oce REAL z0h_seaice INTEGER iflag_z0_oce!Rugoro Real f_rugoro
!$Id t_glace_min REAL exposant_glace REAL rei_max REAL coefw_cld_cv REAL tmax_fonte_cv INTEGER iflag_t_glace
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire RCFC12 RCFC12_act CFC12_ppt!IM ajout CFMIP2 CMIP5 LOGICAL ok_4xCO2atm RCFC12_per CFC12_ppt_per!OM correction du bilan d eau global!OM Correction sur precip KE REAL cvl_corr!OM Fonte calotte dans bilan eau LOGICAL ok_lic_melt!IM simulateur ISCCP INTEGER overlap!IM seuils cdrh REAL cdhmax!IM param stabilite s terres et en dehors REAL f_ri_cd_min!IM MAFo pmagic evap0!Frottement au f_cdrag_oce REAL f_qsat_oce
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire RCFC12 RCFC12_act CFC12_ppt!IM ajout CFMIP2 CMIP5 LOGICAL ok_4xCO2atm RCFC12_per CFC12_ppt_per!OM correction du bilan d eau global!OM Correction sur precip KE REAL cvl_corr!OM Fonte calotte dans bilan eau LOGICAL ok_lic_melt!IM simulateur ISCCP INTEGER overlap!IM seuils cdrh REAL cdhmax!IM param stabilite s terres et en dehors REAL f_ri_cd_min!IM MAFo pmagic evap0!Frottement au f_cdrag_oce REAL f_z0qh_oce REAL z0m_seaice
!$Header!c include clesph0 h c COMMON clesph0 nbapp_rad
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire RCFC12 RCFC12_act CFC12_ppt!IM ajout CFMIP2 CMIP5 LOGICAL ok_4xCO2atm RCFC12_per CFC12_ppt_per!OM correction du bilan d eau global!OM Correction sur precip KE REAL cvl_corr!OM Fonte calotte dans bilan eau LOGICAL ok_lic_melt!IM simulateur ISCCP INTEGER overlap!IM seuils cdrh REAL cdhmax!IM param stabilite s terres et en dehors REAL f_ri_cd_min!IM MAFo pmagic evap0!Frottement au f_cdrag_oce REAL min_wind_speed
!$Id NSTRA real GKLIFT real GVSEC REAL GWD_RANDO_RUWMAX!Maximum Eliassen Palm flux at launch in FLOTT_GWD_rando REAL GWD_RANDO_SAT!saturation parameter in FLOTT_GWD_rando!S_c in REAL GWD_FRONT_SAT!Same as GWD_RANDO params but for fronal GWs COMMON YOEGWD gwd_rando_sat
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire RCFC12 RCFC12_act CFC12_ppt!IM ajout CFMIP2 CMIP5 LOGICAL ok_4xCO2atm RCFC12_per CFC12_ppt_per!OM correction du bilan d eau global!OM Correction sur precip KE REAL cvl_corr!OM Fonte calotte dans bilan eau LOGICAL ok_lic_melt!IM simulateur ISCCP INTEGER overlap!IM seuils cdrh REAL cdhmax!IM param stabilite s terres et en dehors REAL f_ri_cd_min!IM MAFo fmagic
!$Id cld_lc_con REAL cld_tau_con REAL ffallv_lsc
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL false
!$Id cld_lc_con REAL cld_tau_lsc
nsplit_thermals!nrlmd le iflag_clos_bl tau_trig_deep real::s_trig!fin nrlmd le fact_thermals_ed_dz iflag_wake iflag_thermals_closure common ctherm1 iflag_thermals_closure common ctherm2 fact_thermals_ed_dz common ctherm4 iflag_wake common ctherm5 iflag_thermals_optflux!nrlmd le common ctherm6 iflag_clos_bl common ctherm7 tau_trig_shallow
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire RCFC12 RCFC12_act CFC12_ppt!IM ajout CFMIP2 CMIP5 LOGICAL ok_4xCO2atm RCFC12_per CFC12_ppt_per!OM correction du bilan d eau global!OM Correction sur precip KE REAL cvl_corr!OM Fonte calotte dans bilan eau LOGICAL ok_lic_melt!IM simulateur ISCCP INTEGER overlap!IM seuils cdrh REAL cdhmax!IM param stabilite s terres et en dehors REAL ksta
INTEGER iflag_mix REAL scut REAL Supcrit2 REAL coef_clos_ls!COMMON YOMCST2 iflag_mix
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL co2_ppm
!$Id t_glace_min REAL exposant_glace REAL rei_min
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire RCFC12 RCFC12_act CFC12_ppt!IM ajout CFMIP2 CMIP5 LOGICAL ok_4xCO2atm RCFC12_per CFC12_ppt_per!OM correction du bilan d eau global!OM Correction sur precip KE REAL cvl_corr!OM Fonte calotte dans bilan eau LOGICAL ok_lic_melt!IM simulateur ISCCP INTEGER overlap!IM seuils cdrh REAL cdhmax!IM param stabilite s terres et en dehors REAL f_ri_cd_min!IM MAFo pmagic
!$Id sig2feed!common comconema2 iflag_cvl_sigd common comconema1 cvl_comp_threshold
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire RCFC12 RCFC12_act CFC12_ppt!IM ajout CFMIP2 CMIP5 LOGICAL ok_4xCO2atm RCFC12_per CFC12_ppt_per!OM correction du bilan d eau global!OM Correction sur precip KE REAL cvl_corr!OM Fonte calotte dans bilan eau LOGICAL ok_lic_melt!IM simulateur ISCCP INTEGER overlap!IM seuils cdrh REAL cdhmax!IM param stabilite s terres et en dehors REAL f_ri_cd_min!IM MAFo pmagic albsno0
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL ulevSTD CALL &zphi philevSTD CALL &zx_rh rhlevSTD!DO klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon du jour ou toutes les read_climoz CALL true
character(len=6), save type_ocean
nsplit_thermals!nrlmd le iflag_clos_bl tau_trig_deep real::s_trig!fin nrlmd le fact_thermals_ed_dz iflag_wake iflag_thermals_closure common ctherm1 iflag_thermals
!$Id t_glace_min REAL exposant_glace REAL rei_max REAL coefw_cld_cv REAL tmax_fonte_cv INTEGER iflag_cld_cv common nuagecom coefw_cld_cv
!$Id t_glace_min REAL exposant_glace REAL rei_max REAL tau_cld_cv
logical, public carbon_cycle_tr
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire RCFC12 RCFC12_act CFC12_ppt!IM ajout CFMIP2 CMIP5 LOGICAL ok_4xCO2atm RCFC12_per CFC12_ppt_per!OM correction du bilan d eau global!OM Correction sur precip KE REAL cvl_corr!OM Fonte calotte dans bilan eau LOGICAL ok_lic_melt!IM simulateur ISCCP INTEGER overlap!IM seuils cdrh REAL cdhmax!IM param stabilite s terres et en dehors REAL f_ri_cd_min!IM MAFo pmagic evap0!Frottement au f_cdrag_oce REAL f_gust_bl
nsplit_thermals!nrlmd le iflag_clos_bl tau_trig_deep real::s_trig!fin nrlmd le fact_thermals_ed_dz iflag_wake iflag_thermals_closure common ctherm1 iflag_thermals_closure common ctherm2 tau_thermals
nsplit_thermals!nrlmd le iflag_clos_bl tau_trig_deep real::s_trig!fin nrlmd le fact_thermals_ed_dz iflag_wake iflag_thermals_closure common ctherm1 nsplit_thermals
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire RCFC12 RCFC12_act CFC12_ppt!IM ajout CFMIP2 CMIP5 LOGICAL ok_4xCO2atm RCFC12_per CFC12_ppt_per!OM correction du bilan d eau global!OM Correction sur precip KE REAL cvl_corr!OM Fonte calotte dans bilan eau LOGICAL ok_lic_melt!IM simulateur ISCCP INTEGER overlap!IM seuils cdrh REAL cdhmax!IM param stabilite s terres et en dehors REAL f_ri_cd_min!IM ok_kzmin
nsplit_thermals!nrlmd le iflag_clos_bl tau_trig_deep real::s_trig!fin nrlmd le fact_thermals_ed_dz iflag_wake iflag_thermals_closure common ctherm1 iflag_thermals_closure common ctherm2 fact_thermals_ed_dz common ctherm4 iflag_wake common ctherm5 iflag_thermals_ed
INTEGER iflag_mix REAL qqa1
subroutine abort_physic(modname, message, ierr)
!$Id sig2feed!common comconema2 iflag_cvl_sigd common comconema1 epmax
INTEGER iflag_mix REAL gammas
logical, public carbon_cycle_cpl
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire RCFC12 RCFC12_act CFC12_ppt!IM ajout CFMIP2 CMIP5 LOGICAL ok_4xCO2atm RCFC12_per CFC12_ppt_per!OM correction du bilan d eau global!OM Correction sur precip KE REAL cvl_corr!OM Fonte calotte dans bilan eau LOGICAL ok_lic_melt!IM simulateur ISCCP INTEGER overlap!IM seuils cdrh REAL cdhmax!IM param stabilite s terres et en dehors REAL ksta_ter
!$Id sig2feed!common comconema2 iflag_cvl_sigd common comconema1 cvl_sig2feed common comconema2 iflag_cvl_sigd
!$Id t_glace_min REAL exposant_glace REAL rei_max REAL coefw_cld_cv REAL tmax_fonte_cv INTEGER iflag_cld_cv common nuagecom rad_froid
INTEGER iflag_mix REAL qqa2
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire RCFC12 RCFC12_act CFC12_ppt!IM ajout CFMIP2 CMIP5 LOGICAL ok_4xCO2atm RCFC12_per CFC12_ppt_per!OM correction du bilan d eau global!OM Correction sur precip KE REAL cvl_corr!OM Fonte calotte dans bilan eau LOGICAL ok_lic_melt!IM simulateur ISCCP INTEGER overlap!IM seuils cdrh REAL cdhmax!IM param stabilite s terres et en dehors REAL f_ri_cd_min!IM MAFo pmagic evap0!Frottement au f_cdrag_oce REAL f_z0qh_oce REAL z0h_seaice INTEGER iflag_z0_oce!Rugoro Real z0min!IM lev_histhf
character(len=10), save type_veget
nsplit_thermals!nrlmd le iflag_clos_bl tau_trig_deep real::s_trig!fin nrlmd le fact_thermals_ed_dz iflag_wake iflag_thermals_closure common ctherm1 iflag_thermals_closure common ctherm2 alp_bl_k
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire RCFC12 RCFC12_act CFC12_ppt!IM ajout CFMIP2 CMIP5 LOGICAL ok_4xCO2atm RCFC12_per CFC12_ppt_per!OM correction du bilan d eau global!OM Correction sur precip KE REAL cvl_corr!OM Fonte calotte dans bilan eau LOGICAL ok_lic_melt!IM simulateur ISCCP INTEGER overlap!IM seuils cdrh REAL cdmmax
!$Id!common comsoil inertie_sol
!$Header!gestion des impressions de sorties et de débogage la sortie standard prt_level COMMON comprint lunout
nsplit_thermals!nrlmd le iflag_clos_bl tau_trig_deep real::s_trig!fin nrlmd le fact_thermals_ed_dz iflag_clos
subroutine conf_interface(tau_calv)