source: LMDZ5/trunk/libf/phylmd/conf_phys_m.F90 @ 1952

Last change on this file since 1952 was 1938, checked in by lguez, 12 years ago

New run-time parameters: ok_gwd_rando, ruwmax and sat. Logical
variable ok_gwd_rando activates the new stochastic parameterization of
the drag of non-orographic gravity waves, by F. Lott. Default value of
ok_gwd_rando is false. A run with ok_gwd_rando creates new variables
in restartphy.nc: du_gwd_rando and dv_gwd_rando. Possible output in
history files of new variables du_gwd_rando, dv_gwd_rando and
vstr_gwd_rando.

  • 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: 59.6 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_cldcon, &
18       iflag_ratqs,ratqsbas,ratqshaut,tau_ratqs, &
19       ok_ade, ok_aie, ok_cdnc, aerosol_couple, &
20       flag_aerosol, flag_aerosol_strat, new_aod, &
21       bl95_b0, bl95_b1,&
22       read_climoz, &
23       alp_offset)
24
25    use IOIPSL
26    USE surface_data
27    USE phys_cal_mod
28    USE carbon_cycle_mod, ONLY : carbon_cycle_tr, carbon_cycle_cpl
29    use control_mod
30
31    include "conema3.h"
32    include "fisrtilp.h"
33    include "nuage.h"
34    include "YOMCST.h"
35    include "YOMCST2.h"
36
37    include "thermcell.h"
38    include "iniprint.h"
39
40    !IM : on inclut/initialise les taux de CH4, N2O, CFC11 et CFC12
41    include "clesphys.h"
42    include "compbl.h"
43    include "comsoil.h"
44    include "YOEGWD.h"
45    !
46    ! Configuration de la "physique" de LMDZ a l'aide de la fonction
47    ! GETIN de IOIPSL
48    !
49    ! LF 05/2001
50    !
51
52    !
53    ! type_ocean:      type d'ocean (force, slab, couple)
54    ! version_ocean:   version d'ocean (opa8/nemo pour type_ocean=couple ou
55    !                                   sicOBS pour type_ocean=slab)
56    ! ok_veget:   type de modele de vegetation
57    ! ok_journe:  sorties journalieres
58    ! ok_hf:  sorties haute frequence
59    ! ok_mensuel: sorties mensuelles
60    ! ok_instan:  sorties instantanees
61    ! ok_ade, ok_aie: apply or not aerosol direct and indirect effects
62    ! ok_cdnc, ok cloud droplet number concentration
63    ! flag_aerosol_strat : flag pour les aerosols stratos
64    ! bl95_b*: parameters in the formula to link CDNC to aerosol mass conc
65    !
66
67
68    ! Sortie:
69    logical              :: ok_newmicro
70    integer              :: iflag_radia
71    logical              :: ok_journe, ok_mensuel, ok_instan, ok_hf
72    logical              :: ok_LES
73    LOGICAL              :: callstats
74    LOGICAL              :: ok_ade, ok_aie, ok_cdnc, aerosol_couple
75    INTEGER              :: flag_aerosol
76    LOGICAL              :: flag_aerosol_strat
77    LOGICAL              :: new_aod
78    REAL                 :: bl95_b0, bl95_b1
79    real                 :: fact_cldcon, facttemps,ratqsbas,ratqshaut,tau_ratqs
80    integer              :: iflag_cldcon
81    integer              :: iflag_ratqs
82
83    character (len = 6),SAVE  :: type_ocean_omp, version_ocean_omp, ocean_omp
84    character (len = 10),SAVE  :: type_veget_omp
85    CHARACTER(len = 8),SAVE   :: aer_type_omp
86    logical,SAVE              :: ok_snow_omp
87    logical,SAVE              :: ok_newmicro_omp
88    logical,SAVE        :: ok_journe_omp, ok_mensuel_omp, ok_instan_omp, ok_hf_omp       
89    logical,SAVE        :: ok_LES_omp   
90    LOGICAL,SAVE        :: callstats_omp
91    LOGICAL,SAVE        :: ok_ade_omp, ok_aie_omp, ok_cdnc_omp, aerosol_couple_omp
92    INTEGER, SAVE       :: flag_aerosol_omp
93    LOGICAL, SAVE       :: flag_aerosol_strat_omp
94    LOGICAL, SAVE       :: new_aod_omp
95    REAL,SAVE           :: bl95_b0_omp, bl95_b1_omp
96    REAL,SAVE           :: freq_ISCCP_omp, ecrit_ISCCP_omp
97    REAL,SAVE           :: freq_COSP_omp
98    real,SAVE           :: fact_cldcon_omp, facttemps_omp,ratqsbas_omp
99    real,SAVE           :: ratqshaut_omp
100    real,SAVE           :: tau_ratqs_omp
101    integer,SAVE        :: iflag_radia_omp
102    integer,SAVE        :: iflag_rrtm_omp
103    integer,SAVE        :: iflag_cldcon_omp, ip_ebil_phy_omp
104    integer,SAVE        :: iflag_ratqs_omp
105
106    Real,SAVE           :: f_cdrag_ter_omp,f_cdrag_oce_omp
107    Real,SAVE           :: f_rugoro_omp   
108
109    ! Local
110    real                 :: zzz
111
112    real :: seuil_inversion
113    real,save :: seuil_inversion_omp
114
115    integer,SAVE :: iflag_thermals_ed_omp,iflag_thermals_optflux_omp
116    integer,SAVE :: iflag_thermals_omp,nsplit_thermals_omp
117    real,save :: tau_thermals_omp,alp_bl_k_omp
118    ! nrlmd le 10/04/2012
119    integer,SAVE :: iflag_trig_bl_omp,iflag_clos_bl_omp
120    integer,SAVE :: tau_trig_shallow_omp,tau_trig_deep_omp
121    real,SAVE    :: s_trig_omp
122    ! fin nrlmd le 10/04/2012
123    real :: alp_offset
124    REAL, SAVE :: alp_offset_omp
125    integer,SAVE :: iflag_coupl_omp,iflag_clos_omp,iflag_wake_omp
126    integer,SAVE :: iflag_cvl_sigd_omp
127    REAL, SAVE :: supcrit1_omp, supcrit2_omp
128    INTEGER, SAVE :: iflag_mix_omp
129    real, save :: scut_omp, qqa1_omp, qqa2_omp, gammas_omp, Fmax_omp, alphas_omp
130
131    REAL,SAVE :: R_ecc_omp,R_peri_omp,R_incl_omp,solaire_omp
132    REAL,SAVE :: co2_ppm_omp, RCO2_omp, co2_ppm_per_omp, RCO2_per_omp
133    REAL,SAVE :: CH4_ppb_omp, RCH4_omp, CH4_ppb_per_omp, RCH4_per_omp
134    REAL,SAVE :: N2O_ppb_omp, RN2O_omp, N2O_ppb_per_omp, RN2O_per_omp
135    REAL,SAVE :: CFC11_ppt_omp,RCFC11_omp,CFC11_ppt_per_omp,RCFC11_per_omp
136    REAL,SAVE :: CFC12_ppt_omp,RCFC12_omp,CFC12_ppt_per_omp,RCFC12_per_omp
137    LOGICAL,SAVE :: ok_4xCO2atm_omp
138    REAL,SAVE :: epmax_omp
139    LOGICAL,SAVE :: ok_adj_ema_omp
140    INTEGER,SAVE :: iflag_clw_omp
141    REAL,SAVE :: cld_lc_lsc_omp,cld_lc_con_omp,cld_tau_lsc_omp,cld_tau_con_omp
142    REAL,SAVE :: ffallv_lsc_omp, ffallv_con_omp,coef_eva_omp
143    LOGICAL,SAVE :: reevap_ice_omp
144    INTEGER,SAVE :: iflag_pdf_omp
145    INTEGER,SAVE :: iflag_ice_thermo_omp
146    REAL,SAVE :: rad_froid_omp, rad_chau1_omp, rad_chau2_omp
147    REAL,SAVE :: t_glace_min_omp, t_glace_max_omp
148    REAL,SAVE :: rei_min_omp, rei_max_omp
149    REAL,SAVE :: inertie_sol_omp,inertie_sno_omp,inertie_ice_omp
150    REAL,SAVE :: qsol0_omp
151    REAL,SAVE :: evap0_omp
152    REAL,SAVE :: albsno0_omp
153    REAL      :: solarlong0
154    REAL,SAVE :: solarlong0_omp
155    INTEGER,SAVE :: top_height_omp,overlap_omp
156    REAL,SAVE :: cdmmax_omp,cdhmax_omp,ksta_omp,ksta_ter_omp
157    LOGICAL,SAVE :: ok_kzmin_omp
158    REAL, SAVE ::  fmagic_omp, pmagic_omp
159    INTEGER,SAVE :: iflag_pbl_omp,lev_histhf_omp,lev_histday_omp,lev_histmth_omp
160    Integer, save :: lev_histins_omp, lev_histLES_omp
161    INTEGER, SAVE :: lev_histdayNMC_omp
162    INTEGER, SAVE :: levout_histNMC_omp(3)
163    LOGICAL, SAVE :: ok_histNMC_omp(3)
164    REAL, SAVE :: freq_outNMC_omp(3), freq_calNMC_omp(3)
165    CHARACTER*4, SAVE :: type_run_omp
166    LOGICAL,SAVE :: ok_cosp_omp
167    LOGICAL,SAVE :: ok_mensuelCOSP_omp,ok_journeCOSP_omp,ok_hfCOSP_omp
168    REAL,SAVE :: lonmin_ins_omp, lonmax_ins_omp, latmin_ins_omp, latmax_ins_omp
169    REAL,SAVE :: ecrit_hf_omp, ecrit_day_omp, ecrit_mth_omp, ecrit_reg_omp
170    REAL,SAVE :: ecrit_ins_omp
171    REAL,SAVE :: ecrit_LES_omp
172    REAL,SAVE :: ecrit_tra_omp
173    REAL,SAVE :: cvl_corr_omp
174    LOGICAL,SAVE :: ok_lic_melt_omp
175    !
176    LOGICAL,SAVE :: cycle_diurne_omp,soil_model_omp,new_oliq_omp
177    LOGICAL,SAVE :: ok_orodr_omp, ok_orolf_omp, ok_limitvrai_omp
178    INTEGER, SAVE :: nbapp_rad_omp, iflag_con_omp
179    INTEGER, SAVE :: iflag_ener_conserv_omp
180    INTEGER, SAVE :: iflag_fisrtilp_qsat_omp
181    LOGICAL,SAVE :: ok_strato_omp
182    LOGICAL,SAVE :: ok_hines_omp, ok_gwd_rando_omp
183    real, SAVE:: RUWMAX_omp, sat_omp
184    LOGICAL,SAVE      :: carbon_cycle_tr_omp
185    LOGICAL,SAVE      :: carbon_cycle_cpl_omp
186
187    integer, intent(out):: read_climoz ! read ozone climatology, OpenMP shared
188    ! Allowed values are 0, 1 and 2
189    ! 0: do not read an ozone climatology
190    ! 1: read a single ozone climatology that will be used day and night
191    ! 2: read two ozone climatologies, the average day and night
192    ! climatology and the daylight climatology
193
194    !-----------------------------------------------------------------
195
196    !$OMP MASTER
197    !Config Key  = type_ocean
198    !Config Desc = Type d'ocean
199    !Config Def  = force
200    !Config Help = Type d'ocean utilise: force, slab,couple
201    !
202    type_ocean_omp = 'force '
203    call getin('type_ocean', type_ocean_omp)
204    !
205    !Config Key  = version_ocean
206    !Config Desc = Version d'ocean
207    !Config Def  = xxxxxx
208    !Config Help = Version d'ocean utilise: opa8/nemo/sicOBS/xxxxxx
209    !
210    version_ocean_omp = 'xxxxxx'
211    call getin('version_ocean', version_ocean_omp)
212
213    !Config Key  = OCEAN
214    !Config Desc = Old parameter name for type_ocean
215    !Config Def  = yyyyyy
216    !Config Help = This is only for testing purpose
217    !
218    ocean_omp = 'yyyyyy'
219    call getin('OCEAN', ocean_omp)
220    IF (ocean_omp /= 'yyyyyy') THEN
221       WRITE(lunout,*)'ERROR! Old variable name OCEAN used in parmeter file.'
222       WRITE(lunout,*)'Variable OCEAN has been replaced by the variable type_ocean.'
223       WRITE(lunout,*)'You have to update your parameter file physiq.def to succed running'
224       CALL abort_gcm('conf_phys','Variable OCEAN no longer existing, use variable name type_ocean',1)
225    END IF
226
227    !
228    !Config Key  = VEGET
229    !Config Desc = Type de modele de vegetation
230    !Config Def  = .false.
231    !Config Help = Type de modele de vegetation utilise
232    !
233    type_veget_omp ='orchidee'
234    call getin('VEGET', type_veget_omp)
235    !
236
237    ! Martin
238    !Config Key  = ok_snow
239    !Config Desc = Flag to activate snow model SISVAT
240    !Config Def  = .false.
241    ok_snow_omp = .false.
242    call getin('ok_snow', ok_snow_omp)
243    ! Martin
244
245    !Config Key  = OK_journe
246    !Config Desc = Pour des sorties journalieres
247    !Config Def  = .false.
248    !Config Help = Pour creer le fichier histday contenant les sorties
249    !              journalieres
250    !
251    ok_journe_omp = .false.
252    call getin('OK_journe', ok_journe_omp)
253    !
254    !Config Key  = ok_hf
255    !Config Desc = Pour des sorties haute frequence
256    !Config Def  = .false.
257    !Config Help = Pour creer le fichier histhf contenant les sorties
258    !              haute frequence ( 3h ou 6h)
259    !
260    ok_hf_omp = .false.
261    call getin('ok_hf', ok_hf_omp)
262    !
263    !Config Key  = OK_mensuel
264    !Config Desc = Pour des sorties mensuelles
265    !Config Def  = .true.
266    !Config Help = Pour creer le fichier histmth contenant les sorties
267    !              mensuelles
268    !
269    ok_mensuel_omp = .true.
270    call getin('OK_mensuel', ok_mensuel_omp)
271    !
272    !Config Key  = OK_instan
273    !Config Desc = Pour des sorties instantanees
274    !Config Def  = .false.
275    !Config Help = Pour creer le fichier histins contenant les sorties
276    !              instantanees
277    !
278    ok_instan_omp = .false.
279    call getin('OK_instan', ok_instan_omp)
280    !
281    !Config Key  = ok_ade
282    !Config Desc = Aerosol direct effect or not?
283    !Config Def  = .false.
284    !Config Help = Used in radlwsw.F
285    !
286    ok_ade_omp = .false.
287    call getin('ok_ade', ok_ade_omp)
288
289    !
290    !Config Key  = ok_aie
291    !Config Desc = Aerosol indirect effect or not?
292    !Config Def  = .false.
293    !Config Help = Used in nuage.F and radlwsw.F
294    !
295    ok_aie_omp = .false.
296    call getin('ok_aie', ok_aie_omp)
297
298    !
299    !Config Key  = ok_cdnc
300    !Config Desc = ok cloud droplet number concentration
301    !Config Def  = .false.
302    !Config Help = Used in newmicro.F
303    !
304    ok_cdnc_omp = .false.
305    call getin('ok_cdnc', ok_cdnc_omp)
306    !
307    !Config Key  = aerosol_couple
308    !Config Desc = read aerosol in file or calcul by inca
309    !Config Def  = .false.
310    !Config Help = Used in physiq.F
311    !
312    aerosol_couple_omp = .false.
313    CALL getin('aerosol_couple',aerosol_couple_omp)
314    !
315    !Config Key  = flag_aerosol
316    !Config Desc = which aerosol is use for coupled model
317    !Config Def  = 1
318    !Config Help = Used in physiq.F
319    !
320    ! - flag_aerosol=0 => no aerosol
321    ! - flag_aerosol=1 => so4 only (defaut)
322    ! - flag_aerosol=2 => bc  only
323    ! - flag_aerosol=3 => pom only
324    ! - flag_aerosol=4 => seasalt only
325    ! - flag_aerosol=5 => dust only
326    ! - flag_aerosol=6 => all aerosol
327
328    flag_aerosol_omp = 0
329    CALL getin('flag_aerosol',flag_aerosol_omp)
330    !
331    !Config Key  = flag_aerosol_strat
332    !Config Desc = use stratospheric aerosols T/F
333    !Config Def  = false
334    !Config Help = Used in physiq.F
335    !
336    !
337    flag_aerosol_strat_omp = .false.
338    CALL getin('flag_aerosol_strat',flag_aerosol_strat_omp)
339
340    ! Temporary variable for testing purpose!
341    !Config Key  = new_aod
342    !Config Desc = which calcul of aeropt
343    !Config Def  = false
344    !Config Help = Used in physiq.F
345    !
346    new_aod_omp = .true.
347    CALL getin('new_aod',new_aod_omp)
348
349    !
350    !Config Key  = aer_type
351    !Config Desc = Use a constant field for the aerosols
352    !Config Def  = scenario
353    !Config Help = Used in readaerosol.F90
354    !
355    aer_type_omp = 'scenario'
356    call getin('aer_type', aer_type_omp)
357
358    !
359    !Config Key  = bl95_b0
360    !Config Desc = Parameter in CDNC-maer link (Boucher&Lohmann 1995)
361    !Config Def  = .false.
362    !Config Help = Used in nuage.F
363    !
364    bl95_b0_omp = 2.
365    call getin('bl95_b0', bl95_b0_omp)
366
367    !Config Key  = bl95_b1
368    !Config Desc = Parameter in CDNC-maer link (Boucher&Lohmann 1995)
369    !Config Def  = .false.
370    !Config Help = Used in nuage.F
371    !
372    bl95_b1_omp = 0.2
373    call getin('bl95_b1', bl95_b1_omp)
374
375    !Config Key  = freq_ISCCP
376    !Config Desc = Frequence d'appel du simulateur ISCCP en secondes;
377    !              par defaut 10800, i.e. 3 heures
378    !Config Def  = 10800.
379    !Config Help = Used in ini_histISCCP.h
380    !
381    freq_ISCCP_omp = 10800.
382    call getin('freq_ISCCP', freq_ISCCP_omp)
383    !
384    !Config Key  = ecrit_ISCCP
385    !Config Desc = Frequence d'ecriture des resultats du simulateur ISCCP en nombre de jours;
386    !              par defaut 1., i.e. 1 jour
387    !Config Def  = 1.
388    !Config Help = Used in ini_histISCCP.h
389    !
390    !
391    ecrit_ISCCP_omp = 1.
392    call getin('ecrit_ISCCP', ecrit_ISCCP_omp)
393
394    !Config Key  = freq_COSP
395    !Config Desc = Frequence d'appel du simulateur COSP en secondes;
396    !              par defaut 10800, i.e. 3 heures
397    !Config Def  = 10800.
398    !Config Help = Used in ini_histdayCOSP.h
399    !
400    freq_COSP_omp = 10800.
401    call getin('freq_COSP', freq_COSP_omp)
402
403    !
404    !Config Key  = ip_ebil_phy
405    !Config Desc = Niveau de sortie pour les diags bilan d'energie
406    !Config Def  = 0
407    !Config Help =
408    !               
409    ip_ebil_phy_omp = 0
410    call getin('ip_ebil_phy', ip_ebil_phy_omp)
411    !
412    !Config Key  = seuil_inversion
413    !Config Desc = Seuil ur dTh pour le choix entre les schemas de CL
414    !Config Def  = -0.1
415    !Config Help =
416    !               
417    seuil_inversion_omp = -0.1
418    call getin('seuil_inversion', seuil_inversion_omp)
419
420    !
421    ! Constante solaire & Parametres orbitaux & taux gaz effet de serre BEG
422    !
423    !Config Key  = R_ecc
424    !Config Desc = Excentricite
425    !Config Def  = 0.016715
426    !Config Help =
427    !               
428    !valeur AMIP II
429    R_ecc_omp = 0.016715
430    call getin('R_ecc', R_ecc_omp)
431    !
432    !Config Key  = R_peri
433    !Config Desc = Equinoxe
434    !Config Def  =
435    !Config Help =
436    !               
437    !
438    !valeur AMIP II
439    R_peri_omp = 102.7
440    call getin('R_peri', R_peri_omp)
441    !
442    !Config Key  = R_incl
443    !Config Desc = Inclinaison
444    !Config Def  =
445    !Config Help =
446    !               
447    !
448    !valeur AMIP II
449    R_incl_omp = 23.441
450    call getin('R_incl', R_incl_omp)
451    !
452    !Config Key  = solaire
453    !Config Desc = Constante solaire en W/m2
454    !Config Def  = 1365.
455    !Config Help =
456    !               
457    !
458    !valeur AMIP II
459    solaire_omp = 1365.
460    call getin('solaire', solaire_omp)
461    !
462    !Config Key  = co2_ppm
463    !Config Desc = concentration du gaz carbonique en ppmv
464    !Config Def  = 348.
465    !Config Help =
466    !               
467    !
468    !valeur AMIP II
469    co2_ppm_omp = 348.
470    call getin('co2_ppm', co2_ppm_omp)
471    !
472    !Config Key  = RCO2
473    !Config Desc = Concentration du CO2
474    !Config Def  = co2_ppm * 1.0e-06  * 44.011/28.97
475    !Config Def  = 348. * 1.0e-06  * 44.011/28.97
476    !Config Help =
477    !               
478    ! RCO2 = 5.286789092164308E-04
479    !ancienne valeur
480    RCO2_omp = co2_ppm_omp * 1.0e-06  * 44.011/28.97 ! pour co2_ppm=348.
481
482    !  call getin('RCO2', RCO2)
483    !
484    !Config Key  = RCH4
485    !Config Desc = Concentration du CH4
486    !Config Def  = 1.65E-06* 16.043/28.97
487    !Config Help =
488    !               
489    !
490    !valeur AMIP II
491    !OK  RCH4 = 1.65E-06* 16.043/28.97
492    ! RCH4 = 9.137366240938903E-07
493    !
494    !ancienne valeur
495    ! RCH4 = 1.72E-06* 16.043/28.97
496    !OK call getin('RCH4', RCH4)
497    zzz = 1650.
498    call getin('CH4_ppb', zzz)
499    CH4_ppb_omp = zzz
500    RCH4_omp = CH4_ppb_omp * 1.0E-09 * 16.043/28.97
501    !
502    !Config Key  = RN2O
503    !Config Desc = Concentration du N2O
504    !Config Def  = 306.E-09* 44.013/28.97
505    !Config Help =
506    !               
507    !
508    !valeur AMIP II
509    !OK  RN2O = 306.E-09* 44.013/28.97
510    ! RN2O = 4.648939592682085E-07
511    !
512    !ancienne valeur
513    ! RN2O = 310.E-09* 44.013/28.97
514    !OK  call getin('RN2O', RN2O)
515    zzz=306.
516    call getin('N2O_ppb', zzz)
517    N2O_ppb_omp = zzz
518    RN2O_omp = N2O_ppb_omp * 1.0E-09 * 44.013/28.97
519    !
520    !Config Key  = RCFC11
521    !Config Desc = Concentration du CFC11
522    !Config Def  = 280.E-12* 137.3686/28.97
523    !Config Help =
524    !               
525    !
526    !OK RCFC11 = 280.E-12* 137.3686/28.97
527    zzz = 280.
528    call getin('CFC11_ppt',zzz)
529    CFC11_ppt_omp = zzz
530    RCFC11_omp=CFC11_ppt_omp* 1.0E-12 * 137.3686/28.97
531    ! RCFC11 = 1.327690990680013E-09
532    !OK call getin('RCFC11', RCFC11)
533    !
534    !Config Key  = RCFC12
535    !Config Desc = Concentration du CFC12
536    !Config Def  = 484.E-12* 120.9140/28.97
537    !Config Help =
538    !               
539    !
540    !OK RCFC12 = 484.E-12* 120.9140/28.97
541    zzz = 484.
542    call getin('CFC12_ppt',zzz)
543    CFC12_ppt_omp = zzz
544    RCFC12_omp = CFC12_ppt_omp * 1.0E-12 * 120.9140/28.97
545    ! RCFC12 = 2.020102726958923E-09
546    !OK call getin('RCFC12', RCFC12)
547
548    !ajout CFMIP begin
549    !
550    !Config Key  = co2_ppm_per
551    !Config Desc = concentration du co2_ppm_per
552    !Config Def  = 348.
553    !Config Help =
554    !               
555    co2_ppm_per_omp = co2_ppm_omp
556    call getin('co2_ppm_per', co2_ppm_per_omp)
557    !
558    !Config Key  = RCO2_per
559    !Config Desc = Concentration du CO2_per
560    !Config Def  = co2_ppm_per * 1.0e-06  * 44.011/28.97
561    !Config Def  = 348. * 1.0e-06  * 44.011/28.97
562    !Config Help =
563    !               
564    RCO2_per_omp = co2_ppm_per_omp * 1.0e-06  * 44.011/28.97
565
566    !Config Key  = ok_4xCO2atm
567    !Config Desc = Calcul ou non effet radiatif 4xco2
568    !Config Def  = .false.
569    !Config Help =
570
571    ok_4xCO2atm_omp = .false.
572    call getin('ok_4xCO2atm',ok_4xCO2atm_omp)
573
574    !Config Key  = RCH4_per
575    !Config Desc = Concentration du CH4_per
576    !Config Def  = 1.65E-06* 16.043/28.97
577    !Config Help =
578    !               
579    zzz = CH4_ppb_omp
580    call getin('CH4_ppb_per', zzz)
581    CH4_ppb_per_omp = zzz
582    RCH4_per_omp = CH4_ppb_per_omp * 1.0E-09 * 16.043/28.97
583    !
584    !Config Key  = RN2O_per
585    !Config Desc = Concentration du N2O_per
586    !Config Def  = 306.E-09* 44.013/28.97
587    !Config Help =
588    !               
589    zzz = N2O_ppb_omp
590    call getin('N2O_ppb_per', zzz)
591    N2O_ppb_per_omp = zzz
592    RN2O_per_omp = N2O_ppb_per_omp * 1.0E-09 * 44.013/28.97
593    !
594    !Config Key  = RCFC11_per
595    !Config Desc = Concentration du CFC11_per
596    !Config Def  = 280.E-12* 137.3686/28.97
597    !Config Help =
598    !               
599    zzz = CFC11_ppt_omp
600    call getin('CFC11_ppt_per',zzz)
601    CFC11_ppt_per_omp = zzz
602    RCFC11_per_omp=CFC11_ppt_per_omp* 1.0E-12 * 137.3686/28.97
603    !
604    !Config Key  = RCFC12_per
605    !Config Desc = Concentration du CFC12_per
606    !Config Def  = 484.E-12* 120.9140/28.97
607    !Config Help =
608    !               
609    zzz = CFC12_ppt_omp
610    call getin('CFC12_ppt_per',zzz)
611    CFC12_ppt_per_omp = zzz
612    RCFC12_per_omp = CFC12_ppt_per_omp * 1.0E-12 * 120.9140/28.97
613    !ajout CFMIP end
614
615    !
616    ! FH 2008/05/09 On elimine toutes les clefs physiques dans la dynamique
617    ! Constantes precedemment dans dyn3d/conf_gcm
618
619    !Config  Key  = cycle_diurne
620    !Config  Desc = Cycle ddiurne
621    !Config  Def  = y
622    !Config  Help = Cette option permet d'eteidre le cycle diurne.
623    !Config         Peut etre util pour accelerer le code !
624    cycle_diurne_omp = .TRUE.
625    CALL getin('cycle_diurne',cycle_diurne_omp)
626
627    !Config  Key  = soil_model
628    !Config  Desc = Modele de sol
629    !Config  Def  = y
630    !Config  Help = Choix du modele de sol (Thermique ?)
631    !Config         Option qui pourait un string afin de pouvoir
632    !Config         plus de choix ! Ou meme une liste d'options !
633    soil_model_omp = .TRUE.
634    CALL getin('soil_model',soil_model_omp)
635
636    !Config  Key  = new_oliq
637    !Config  Desc = Nouvelle eau liquide
638    !Config  Def  = y
639    !Config  Help = Permet de mettre en route la
640    !Config         nouvelle parametrisation de l'eau liquide !
641    new_oliq_omp = .TRUE.
642    CALL getin('new_oliq',new_oliq_omp)
643
644    !Config  Key  = ok_orodr
645    !Config  Desc = Orodr ???
646    !Config  Def  = y
647    !Config  Help = Y en a pas comprendre !
648    !Config         
649    ok_orodr_omp = .TRUE.
650    CALL getin('ok_orodr',ok_orodr_omp)
651
652    !Config  Key  =  ok_orolf
653    !Config  Desc = Orolf ??
654    !Config  Def  = y
655    !Config  Help = Connais pas !
656    ok_orolf_omp = .TRUE.
657    CALL getin('ok_orolf', ok_orolf_omp)
658
659    !Config  Key  = ok_limitvrai
660    !Config  Desc = Force la lecture de la bonne annee
661    !Config  Def  = n
662    !Config  Help = On peut forcer le modele a lire le
663    !Config         fichier SST de la bonne annee. C'est une tres bonne
664    !Config         idee, pourquoi ne pas mettre toujours a y ???
665    ok_limitvrai_omp = .FALSE.
666    CALL getin('ok_limitvrai',ok_limitvrai_omp)
667
668    !Config  Key  = nbapp_rad
669    !Config  Desc = Frequence d'appel au rayonnement
670    !Config  Def  = 12
671    !Config  Help = Nombre  d'appels des routines de rayonnements
672    !Config         par jour.
673    nbapp_rad_omp = 12
674    CALL getin('nbapp_rad',nbapp_rad_omp)
675
676    !Config  Key  = iflag_con
677    !Config  Desc = Flag de convection
678    !Config  Def  = 2
679    !Config  Help = Flag  pour la convection les options suivantes existent :
680    !Config         1 pour LMD,
681    !Config         2 pour Tiedtke,
682    !Config         3 pour CCM(NCAR) 
683    iflag_con_omp = 2
684    CALL getin('iflag_con',iflag_con_omp)
685
686    !Config  Key  = iflag_ener_conserv
687    !Config  Desc = Flag de convection
688    !Config  Def  = 1
689    !Config  Help = Flag  pour la convection les options suivantes existent :
690    !Config         -1 pour Kinetic energy correction
691    !Config         1  conservation kinetic and enthalpy
692    iflag_ener_conserv_omp = -1
693    CALL getin('iflag_ener_conserv',iflag_ener_conserv_omp)
694
695    !Config  Key  = iflag_fisrtilp_qsat
696    !Config  Desc = Flag de convection
697    !Config  Def  = 1
698    !Config  Help = Flag  pour la convection les options suivantes existent :
699    !Config         -1 pour Kinetic energy correction
700    !Config         1  conservation kinetic and enthalpy
701    iflag_fisrtilp_qsat_omp = 0
702    CALL getin('iflag_fisrtilp_qsat',iflag_fisrtilp_qsat_omp)
703
704    !
705    !
706    !
707    ! Constante solaire & Parametres orbitaux & taux gaz effet de serre END
708    !
709    ! KE
710    !
711
712    !Config key  = cvl_corr
713    !Config Desc = Facteur multiplication des precip convectives dans KE
714    !Config Def  = 1.00
715    !Config Help = 1.02 pour un moderne ou un pre-ind. A ajuster pour un glaciaire
716    cvl_corr_omp = 1.00
717    CALL getin('cvl_corr', cvl_corr_omp)
718
719
720    !Config Key  = epmax
721    !Config Desc = Efficacite precip
722    !Config Def  = 0.993
723    !Config Help =
724    !
725    epmax_omp = .993
726    call getin('epmax', epmax_omp)
727    !
728    !Config Key  = ok_adj_ema
729    !Config Desc = 
730    !Config Def  = false
731    !Config Help =
732    !
733    ok_adj_ema_omp = .false.
734    call getin('ok_adj_ema',ok_adj_ema_omp)
735    !
736    !Config Key  = iflag_clw
737    !Config Desc = 
738    !Config Def  = 0
739    !Config Help =
740    !
741    iflag_clw_omp = 0
742    call getin('iflag_clw',iflag_clw_omp)
743    !
744    !Config Key  = cld_lc_lsc
745    !Config Desc = 
746    !Config Def  = 2.6e-4
747    !Config Help =
748    !
749    cld_lc_lsc_omp = 2.6e-4
750    call getin('cld_lc_lsc',cld_lc_lsc_omp)
751    !
752    !Config Key  = cld_lc_con
753    !Config Desc = 
754    !Config Def  = 2.6e-4
755    !Config Help =
756    !
757    cld_lc_con_omp = 2.6e-4
758    call getin('cld_lc_con',cld_lc_con_omp)
759    !
760    !Config Key  = cld_tau_lsc
761    !Config Desc = 
762    !Config Def  = 3600.
763    !Config Help =
764    !
765    cld_tau_lsc_omp = 3600.
766    call getin('cld_tau_lsc',cld_tau_lsc_omp)
767    !
768    !Config Key  = cld_tau_con
769    !Config Desc = 
770    !Config Def  = 3600.
771    !Config Help =
772    !
773    cld_tau_con_omp = 3600.
774    call getin('cld_tau_con',cld_tau_con_omp)
775    !
776    !Config Key  = ffallv_lsc
777    !Config Desc = 
778    !Config Def  = 1.
779    !Config Help =
780    !
781    ffallv_lsc_omp = 1.
782    call getin('ffallv_lsc',ffallv_lsc_omp)
783    !
784    !Config Key  = ffallv_con
785    !Config Desc = 
786    !Config Def  = 1.
787    !Config Help =
788    !
789    ffallv_con_omp = 1.
790    call getin('ffallv_con',ffallv_con_omp)
791    !
792    !Config Key  = coef_eva
793    !Config Desc = 
794    !Config Def  = 2.e-5
795    !Config Help =
796    !
797    coef_eva_omp = 2.e-5
798    call getin('coef_eva',coef_eva_omp)
799    !
800    !Config Key  = reevap_ice
801    !Config Desc = 
802    !Config Def  = .false.
803    !Config Help =
804    !
805    reevap_ice_omp = .false.
806    call getin('reevap_ice',reevap_ice_omp)
807
808    !Config Key  = iflag_ratqs
809    !Config Desc =
810    !Config Def  = 1
811    !Config Help =
812    !
813    iflag_ratqs_omp = 1
814    call getin('iflag_ratqs',iflag_ratqs_omp)
815
816    !
817    !Config Key  = iflag_radia
818    !Config Desc = 
819    !Config Def  = 1
820    !Config Help =
821    !
822    iflag_radia_omp = 1
823    call getin('iflag_radia',iflag_radia_omp)
824
825    !
826    !Config Key  = iflag_rrtm
827    !Config Desc = 
828    !Config Def  = 0
829    !Config Help =
830    !
831    iflag_rrtm_omp = 0
832    call getin('iflag_rrtm',iflag_rrtm_omp)
833
834    !
835    !Config Key  = iflag_cldcon
836    !Config Desc = 
837    !Config Def  = 1
838    !Config Help =
839    !
840    iflag_cldcon_omp = 1
841    call getin('iflag_cldcon',iflag_cldcon_omp)
842
843    !
844    !Config Key  = iflag_pdf
845    !Config Desc = 
846    !Config Def  = 0
847    !Config Help =
848    !
849    iflag_pdf_omp = 0
850    call getin('iflag_pdf',iflag_pdf_omp)
851    !
852    !Config Key  = fact_cldcon
853    !Config Desc = 
854    !Config Def  = 0.375
855    !Config Help =
856    !
857    fact_cldcon_omp = 0.375
858    call getin('fact_cldcon',fact_cldcon_omp)
859
860    !
861    !Config Key  = facttemps
862    !Config Desc = 
863    !Config Def  = 1.e-4
864    !Config Help =
865    !
866    facttemps_omp = 1.e-4
867    call getin('facttemps',facttemps_omp)
868
869    !
870    !Config Key  = ok_newmicro
871    !Config Desc = 
872    !Config Def  = .true.
873    !Config Help =
874    !
875    ok_newmicro_omp = .true.
876    call getin('ok_newmicro',ok_newmicro_omp)
877    !
878    !Config Key  = ratqsbas
879    !Config Desc = 
880    !Config Def  = 0.01
881    !Config Help =
882    !
883    ratqsbas_omp = 0.01
884    call getin('ratqsbas',ratqsbas_omp)
885    !
886    !Config Key  = ratqshaut
887    !Config Desc = 
888    !Config Def  = 0.3
889    !Config Help =
890    !
891    ratqshaut_omp = 0.3
892    call getin('ratqshaut',ratqshaut_omp)
893
894    !Config Key  = tau_ratqs
895    !Config Desc = 
896    !Config Def  = 1800.
897    !Config Help =
898    !
899    tau_ratqs_omp = 1800.
900    call getin('tau_ratqs',tau_ratqs_omp)
901
902    !
903    !-----------------------------------------------------------------------
904    ! Longitude solaire pour le calcul de l'ensoleillement en degre
905    ! si on veut imposer la saison. Sinon, solarlong0=-999.999
906    !Config Key  = solarlong0
907    !Config Desc = 
908    !Config Def  = -999.999
909    !Config Help =
910    !
911    solarlong0_omp = -999.999
912    call getin('solarlong0',solarlong0_omp)
913    !
914    !-----------------------------------------------------------------------
915    !  Valeur imposee pour configuration idealisees
916    !Config Key  = qsol0 pour le bucket, evap0 pour aquaplanetes, albsno0
917    ! Default value -1 to activate the full computation
918    qsol0_omp = -1.
919    call getin('qsol0',qsol0_omp)
920    evap0_omp = -1.
921    call getin('evap0',evap0_omp)
922    albsno0_omp = -1.
923    call getin('albsno0',albsno0_omp)
924    !
925    !-----------------------------------------------------------------------
926    !
927    !Config Key  = inertie_ice
928    !Config Desc = 
929    !Config Def  = 2000.
930    !Config Help =
931    !
932    inertie_ice_omp = 2000.
933    call getin('inertie_ice',inertie_ice_omp)
934    !
935    !Config Key  = inertie_sno
936    !Config Desc = 
937    !Config Def  = 2000.
938    !Config Help =
939    !
940    inertie_sno_omp = 2000.
941    call getin('inertie_sno',inertie_sno_omp)
942    !
943    !Config Key  = inertie_sol
944    !Config Desc = 
945    !Config Def  = 2000.
946    !Config Help =
947    !
948    inertie_sol_omp = 2000.
949    call getin('inertie_sol',inertie_sol_omp)
950
951    !
952    !Config Key  = rad_froid
953    !Config Desc = 
954    !Config Def  = 35.0
955    !Config Help =
956    !
957    rad_froid_omp = 35.0
958    call getin('rad_froid',rad_froid_omp)
959
960    !
961    !Config Key  = rad_chau1
962    !Config Desc = 
963    !Config Def  = 13.0
964    !Config Help =
965    !
966    rad_chau1_omp = 13.0
967    call getin('rad_chau1',rad_chau1_omp)
968
969    !
970    !Config Key  = rad_chau2
971    !Config Desc = 
972    !Config Def  = 9.0
973    !Config Help =
974    !
975    rad_chau2_omp = 9.0
976    call getin('rad_chau2',rad_chau2_omp)
977
978    !
979    !Config Key  = t_glace_min
980    !Config Desc = 
981    !Config Def  = 258.
982    !Config Help =
983    !
984    t_glace_min_omp = 258.
985    call getin('t_glace_min',t_glace_min_omp)
986
987    !
988    !Config Key  = t_glace_max
989    !Config Desc = 
990    !Config Def  = 273.13
991    !Config Help =
992    !
993    t_glace_max_omp = 273.13
994    call getin('t_glace_max',t_glace_max_omp)
995
996    !
997    !Config Key  = iflag_ice_thermo
998    !Config Desc = 
999    !Config Def  = 0
1000    !Config Help =
1001    !
1002    iflag_ice_thermo_omp = 0
1003    call getin('iflag_ice_thermo',iflag_ice_thermo_omp)
1004
1005    !Config Key  = rei_min
1006    !Config Desc = 
1007    !Config Def  = 3.5
1008    !Config Help =
1009    !
1010    rei_min_omp = 3.5
1011    call getin('rei_min',rei_min_omp)
1012
1013    !
1014    !Config Key  = rei_max
1015    !Config Desc = 
1016    !Config Def  = 61.29
1017    !Config Help =
1018    !
1019    rei_max_omp = 61.29
1020    call getin('rei_max',rei_max_omp)
1021
1022    !
1023    !Config Key  = top_height
1024    !Config Desc =
1025    !Config Def  = 3
1026    !Config Help =
1027    !
1028    top_height_omp = 3
1029    call getin('top_height',top_height_omp)
1030
1031    !
1032    !Config Key  = overlap
1033    !Config Desc =
1034    !Config Def  = 3
1035    !Config Help =
1036    !
1037    overlap_omp = 3
1038    call getin('overlap',overlap_omp)
1039
1040
1041    !
1042    !
1043    !Config Key  = cdmmax
1044    !Config Desc =
1045    !Config Def  = 1.3E-3
1046    !Config Help =
1047    !
1048    cdmmax_omp = 1.3E-3
1049    call getin('cdmmax',cdmmax_omp)
1050
1051    !
1052    !Config Key  = cdhmax
1053    !Config Desc =
1054    !Config Def  = 1.1E-3
1055    !Config Help =
1056    !
1057    cdhmax_omp = 1.1E-3
1058    call getin('cdhmax',cdhmax_omp)
1059
1060    !261103
1061    !
1062    !Config Key  = ksta
1063    !Config Desc =
1064    !Config Def  = 1.0e-10
1065    !Config Help =
1066    !
1067    ksta_omp = 1.0e-10
1068    call getin('ksta',ksta_omp)
1069
1070    !
1071    !Config Key  = ksta_ter
1072    !Config Desc =
1073    !Config Def  = 1.0e-10
1074    !Config Help =
1075    !
1076    ksta_ter_omp = 1.0e-10
1077    call getin('ksta_ter',ksta_ter_omp)
1078
1079    !
1080    !Config Key  = ok_kzmin
1081    !Config Desc =
1082    !Config Def  = .true.
1083    !Config Help =
1084    !
1085    ok_kzmin_omp = .true.
1086    call getin('ok_kzmin',ok_kzmin_omp)
1087
1088    !
1089    !Config Key  = fmagic
1090    !Config Desc = additionnal multiplicator factor used for albedo
1091    !Config Def  = 1.
1092    !Config Help = additionnal multiplicator factor used in albedo.F
1093    !
1094    fmagic_omp = 1.
1095    call getin('fmagic',fmagic_omp)
1096
1097    !
1098    !Config Key  = pmagic
1099    !Config Desc = additional factor used for albedo
1100    !Config Def  = 0.
1101    !Config Help = additional factor used in albedo.F
1102    !
1103    pmagic_omp = 0.
1104    call getin('pmagic',pmagic_omp)
1105
1106
1107    !Config Key = ok_lic_melt
1108    !Config Desc = Prise en compte de la fonte de la calotte dans le bilan d'eau
1109    !Config Def  = .false.
1110    !Config Help = mettre a .false. pour assurer la conservation en eau
1111    ok_lic_melt_omp = .false.
1112    call getin('ok_lic_melt', ok_lic_melt_omp)
1113
1114    !
1115    ! PARAMETER FOR THE PLANETARY BOUNDARY LAYER
1116    !
1117
1118    !Config Key  = iflag_pbl
1119    !Config Desc =
1120    !Config Def  = 1
1121    !Config Help =
1122    !
1123    iflag_pbl_omp = 1
1124    call getin('iflag_pbl',iflag_pbl_omp)
1125    !
1126    !Config Key  = iflag_thermals
1127    !Config Desc =
1128    !Config Def  = 0
1129    !Config Help =
1130    !
1131    iflag_thermals_omp = 0
1132    call getin('iflag_thermals',iflag_thermals_omp)
1133    !
1134    !
1135    !Config Key  = iflag_thermals_ed
1136    !Config Desc =
1137    !Config Def  = 0
1138    !Config Help =
1139    !
1140    iflag_thermals_ed_omp = 0
1141    call getin('iflag_thermals_ed',iflag_thermals_ed_omp)
1142    !
1143    !
1144    !Config Key  = iflag_thermals_optflux
1145    !Config Desc =
1146    !Config Def  = 0
1147    !Config Help =
1148    !
1149    iflag_thermals_optflux_omp = 0
1150    call getin('iflag_thermals_optflux',iflag_thermals_optflux_omp)
1151    !
1152    !
1153    !Config Key  = nsplit_thermals
1154    !Config Desc =
1155    !Config Def  = 1
1156    !Config Help =
1157    !
1158    nsplit_thermals_omp = 1
1159    call getin('nsplit_thermals',nsplit_thermals_omp)
1160
1161    !Config Key  = alp_bl_k
1162    !Config Desc =
1163    !Config Def  = 0.
1164    !Config Help =
1165    !
1166    alp_bl_k_omp = 1.
1167    call getin('alp_bl_k',alp_bl_k_omp)
1168
1169    ! nrlmd le 10/04/2012
1170
1171    !Config Key  = iflag_trig_bl
1172    !Config Desc = 
1173    !Config Def  = 0
1174    !Config Help =
1175    !
1176    iflag_trig_bl_omp = 0
1177    call getin('iflag_trig_bl',iflag_trig_bl_omp)
1178
1179    !Config Key  = s_trig_bl
1180    !Config Desc = 
1181    !Config Def  = 0
1182    !Config Help =
1183    !
1184    s_trig_omp = 2e7
1185    call getin('s_trig',s_trig_omp)
1186
1187    !Config Key  = tau_trig_shallow
1188    !Config Desc = 
1189    !Config Def  = 0
1190    !Config Help =
1191    !
1192    tau_trig_shallow_omp = 600
1193    call getin('tau_trig_shallow',tau_trig_shallow_omp)
1194
1195    !Config Key  = tau_trig_deep
1196    !Config Desc = 
1197    !Config Def  = 0
1198    !Config Help =
1199    !
1200    tau_trig_deep_omp = 1800
1201    call getin('tau_trig_deep',tau_trig_deep_omp)
1202
1203    !Config Key  = iflag_clos_bl
1204    !Config Desc = 
1205    !Config Def  = 0
1206    !Config Help =
1207    !
1208    iflag_clos_bl_omp = 0
1209    call getin('iflag_clos_bl',iflag_clos_bl_omp)
1210
1211    ! fin nrlmd le 10/04/2012
1212
1213    !
1214    !Config Key  = tau_thermals
1215    !Config Desc =
1216    !Config Def  = 0.
1217    !Config Help =
1218    !
1219    tau_thermals_omp = 0.
1220    call getin('tau_thermals',tau_thermals_omp)
1221
1222    !
1223    !Config Key  = iflag_coupl
1224    !Config Desc =
1225    !Config Def  = 0
1226    !Config Help =
1227    !
1228    iflag_coupl_omp = 0
1229    call getin('iflag_coupl',iflag_coupl_omp)
1230
1231    !
1232    !Config Key  = iflag_clos
1233    !Config Desc = 
1234    !Config Def  = 0
1235    !Config Help =
1236    !
1237    iflag_clos_omp = 1
1238    call getin('iflag_clos',iflag_clos_omp)
1239    !
1240    !Config Key  = iflag_cvl_sigd
1241    !Config Desc = 
1242    !Config Def  = 0
1243    !Config Help =
1244    !
1245    iflag_cvl_sigd_omp = 0
1246    call getin('iflag_cvl_sigd',iflag_cvl_sigd_omp)
1247
1248    !Config Key  = iflag_wake
1249    !Config Desc = 
1250    !Config Def  = 0
1251    !Config Help =
1252    !
1253    iflag_wake_omp = 0
1254    call getin('iflag_wake',iflag_wake_omp)
1255
1256    !Config Key  = alp_offset
1257    !Config Desc = 
1258    !Config Def  = 0
1259    !Config Help =
1260    !
1261    alp_offset_omp = 0.
1262    call getin('alp_offset',alp_offset_omp)
1263
1264    !
1265    !Config Key  = lev_histhf
1266    !Config Desc =
1267    !Config Def  = 1
1268    !Config Help =
1269    !
1270    lev_histhf_omp = 1
1271    call getin('lev_histhf',lev_histhf_omp)
1272
1273    !
1274    !Config Key  = lev_histday
1275    !Config Desc =
1276    !Config Def  = 1
1277    !Config Help =
1278    !
1279    lev_histday_omp = 1
1280    call getin('lev_histday',lev_histday_omp)
1281
1282    !
1283    !Config Key  = lev_histmth
1284    !Config Desc =
1285    !Config Def  = 2
1286    !Config Help =
1287    !
1288    lev_histmth_omp = 2
1289    call getin('lev_histmth',lev_histmth_omp)
1290    !
1291    !Config Key  = lev_histins
1292    !Config Desc =
1293    !Config Def  = 1
1294    !Config Help =
1295    !
1296    lev_histins_omp = 1
1297    call getin('lev_histins',lev_histins_omp)
1298    !
1299    !Config Key  = lev_histLES
1300    !Config Desc =
1301    !Config Def  = 1
1302    !Config Help =
1303    !
1304    lev_histLES_omp = 1
1305    call getin('lev_histLES',lev_histLES_omp)
1306    !
1307    !Config Key  = lev_histdayNMC
1308    !Config Desc =
1309    !Config Def  = 8
1310    !Config Help =
1311    !
1312    lev_histdayNMC_omp = 8
1313    call getin('lev_histdayNMC',lev_histdayNMC_omp)
1314    !
1315    !Config Key  = levout_histNMC
1316    !Config Desc =
1317    !Config Def  = 5
1318    !Config Help =
1319    !
1320    levout_histNMC_omp(1) = 5
1321    levout_histNMC_omp(2) = 5
1322    levout_histNMC_omp(3) = 5
1323    call getin('levout_histNMC',levout_histNMC_omp)
1324    !
1325    !histNMC BEG
1326    !Config Key  = ok_histNMC
1327    !Config Desc = ok_histNMC(1) = frequence de sortie fichiers histmthNMC
1328    !Config Desc = ok_histNMC(2) = frequence de sortie fichiers histdayNMC
1329    !Config Desc = ok_histNMC(3) = frequence de sortie fichiers histhfNMC
1330    !Config Def  = n, n, n
1331    !Config Help =
1332    !
1333    ok_histNMC_omp(1) = .false.
1334    ok_histNMC_omp(2) = .false.
1335    ok_histNMC_omp(3) = .false.
1336    call getin('ok_histNMC',ok_histNMC_omp)
1337    !
1338    !Config Key  = freq_outNMC
1339    !Config Desc = freq_outNMC(1) = frequence de sortie fichiers histmthNMC
1340    !Config Desc = freq_outNMC(2) = frequence de sortie fichiers histdayNMC
1341    !Config Desc = freq_outNMC(3) = frequence de sortie fichiers histhfNMC
1342    !Config Def  = 2592000., 86400., 21600. (1mois, 1jour, 6h)
1343    !Config Help =
1344    !
1345    freq_outNMC_omp(1) = mth_len
1346    freq_outNMC_omp(2) = 1.
1347    freq_outNMC_omp(3) = 1./4.
1348    call getin('freq_outNMC',freq_outNMC_omp)
1349    !
1350    !Config Key  = freq_calNMC
1351    !Config Desc = freq_calNMC(1) = frequence de calcul fichiers histmthNMC
1352    !Config Desc = freq_calNMC(2) = frequence de calcul fichiers histdayNMC
1353    !Config Desc = freq_calNMC(3) = frequence de calcul fichiers histhfNMC
1354    !Config Def  = pasphys
1355    !Config Help =
1356    !
1357    freq_calNMC_omp(1) = pasphys
1358    freq_calNMC_omp(2) = pasphys
1359    freq_calNMC_omp(3) = pasphys
1360    call getin('freq_calNMC',freq_calNMC_omp)
1361    !
1362    !Config Key  = type_run
1363    !Config Desc =
1364    !Config Def  = 'AMIP'/'CFMIP'  ou 'CLIM'/'ENSP'
1365    !Config Help =
1366    !
1367    type_run_omp = 'AMIP'
1368    call getin('type_run',type_run_omp)
1369
1370    !
1371    !Config Key  = ok_cosp
1372    !Config Desc =
1373    !Config Def  = .false.
1374    !Config Help =
1375    !
1376    ok_cosp_omp = .false.
1377    call getin('ok_cosp',ok_cosp_omp)
1378
1379    !
1380    !Config Key  = ok_mensuelCOSP
1381    !Config Desc =
1382    !Config Def  = .true.
1383    !Config Help =
1384    !
1385    ok_mensuelCOSP_omp = .true.
1386    call getin('ok_mensuelCOSP',ok_mensuelCOSP_omp)
1387
1388    !
1389    !Config Key  = ok_journeCOSP
1390    !Config Desc =
1391    !Config Def  = .true.
1392    !Config Help =
1393    !
1394    ok_journeCOSP_omp = .true.
1395    call getin('ok_journeCOSP',ok_journeCOSP_omp)
1396
1397    !
1398    !Config Key  = ok_hfCOSP
1399    !Config Desc =
1400    !Config Def  = .false.
1401    !Config Help =
1402    !
1403    ok_hfCOSP_omp = .false.
1404    call getin('ok_hfCOSP',ok_hfCOSP_omp)
1405
1406    !
1407    ! coordonnees (lonmin_ins, lonmax_ins, latmin_ins, latmax_ins) pour la zone
1408    ! avec sorties instantannees tous les pas de temps de la physique => "histbilKP_ins.nc"
1409    !
1410    !Config Key  = lonmin_ins
1411    !Config Desc = 100. 
1412    !Config Def  = longitude minimale sorties "bilKP_ins"
1413    !Config Help =
1414    !
1415    lonmin_ins_omp = 100.
1416    call getin('lonmin_ins',lonmin_ins_omp)
1417    !
1418    !Config Key  = lonmax_ins
1419    !Config Desc = 130.
1420    !Config Def  = longitude maximale sorties "bilKP_ins"
1421    !Config Help =
1422    !
1423    lonmax_ins_omp = 130.
1424    call getin('lonmax_ins',lonmax_ins_omp)
1425    !
1426    !Config Key  = latmin_ins
1427    !Config Desc = -20. 
1428    !Config Def  = latitude minimale sorties "bilKP_ins"
1429    !Config Help =
1430    !
1431    latmin_ins_omp = -20.
1432    call getin('latmin_ins',latmin_ins_omp)
1433    !
1434    !Config Key  = latmax_ins
1435    !Config Desc = 20.
1436    !Config Def  = latitude maximale sorties "bilKP_ins"
1437    !Config Help =
1438    !
1439    latmax_ins_omp = 20.
1440    call getin('latmax_ins',latmax_ins_omp)
1441    !
1442    !Config Key  = ecrit_hf
1443    !Config Desc =
1444    !Config Def  = 1./8. !toutes les 3h
1445    !Config Help =
1446    !
1447    ecrit_hf_omp = 1./8.
1448    call getin('ecrit_hf',ecrit_hf_omp)
1449    !
1450    !Config Key  = ecrit_ins
1451    !Config Desc =
1452    !Config Def  = 1./48. ! toutes les 1/2 h
1453    !Config Help =
1454    !
1455    ecrit_ins_omp = 1./48.
1456    call getin('ecrit_ins',ecrit_ins_omp)
1457    !
1458    !Config Key  = ecrit_day
1459    !Config Desc =
1460    !Config Def  = 1.0 !tous les jours
1461    !Config Help = nombre de jours pour ecriture fichier histday.nc
1462    !
1463    ecrit_day_omp = 1.0
1464    call getin('ecrit_day',ecrit_day_omp)
1465    !
1466    !Config Key  = ecrit_mth
1467    !Config Desc =
1468    !Config Def  = 30. !tous les 30jours (1 fois par mois)
1469    !Config Help =
1470    !
1471    ecrit_mth_omp = 30.
1472    call getin('ecrit_mth',ecrit_mth_omp)
1473    !
1474    !Config Key  = ecrit_tra
1475    !Config Desc =
1476    !Config Def  = 30. !tous les 30jours (1 fois par mois)
1477    !Config Help =
1478    !
1479    ecrit_tra_omp = 0.
1480    call getin('ecrit_tra',ecrit_tra_omp)
1481    !
1482    !Config Key  = ecrit_reg
1483    !Config Desc =
1484    !Config Def  = 0.25  !4 fois par jour
1485    !Config Help =
1486    !
1487    ecrit_reg_omp = 0.25   !4 fois par jour
1488    call getin('ecrit_reg',ecrit_reg_omp)
1489    !
1490    !
1491    !
1492    ! PARAMETRES CDRAG
1493    !
1494    !Config Key  = f_cdrag_ter
1495    !Config Desc =
1496    !Config Def  = 0.8
1497    !Config Help =
1498    !
1499    f_cdrag_ter_omp = 0.8
1500    call getin('f_cdrag_ter',f_cdrag_ter_omp)
1501    !
1502    !Config Key  = f_cdrag_oce
1503    !Config Desc =
1504    !Config Def  = 0.8
1505    !Config Help =
1506    !
1507    f_cdrag_oce_omp = 0.8
1508    call getin('f_cdrag_oce',f_cdrag_oce_omp)
1509    !
1510    ! RUGORO
1511    !Config Key  = f_rugoro
1512    !Config Desc =
1513    !Config Def  = 0.
1514    !Config Help =
1515    !
1516    f_rugoro_omp = 0.
1517    call getin('f_rugoro',f_rugoro_omp)
1518
1519    ! PARAMETERS FOR CONVECTIVE INHIBITION BY TROPOS. DRYNESS
1520    !
1521    !Config Key  = supcrit1
1522    !Config Desc =
1523    !Config Def  = .540
1524    !Config Help =
1525    !
1526    supcrit1_omp = .540
1527    call getin('supcrit1',supcrit1_omp)
1528
1529    !
1530    !Config Key  = supcrit2
1531    !Config Desc =
1532    !Config Def  = .600
1533    !Config Help =
1534    !
1535    supcrit2_omp = .600
1536    call getin('supcrit2',supcrit2_omp)
1537
1538    !
1539    ! PARAMETERS FOR THE MIXING DISTRIBUTION
1540    ! iflag_mix: 0=OLD,
1541    !            1=NEW (JYG),           
1542    !            2=NEW + conv. depth inhib. by tropos. dryness
1543    ! '2' is NOT operationnal and should not be used.
1544    !
1545    !Config Key  = iflag_mix
1546    !Config Desc =
1547    !Config Def  = 1
1548    !Config Help =
1549    !
1550    iflag_mix_omp = 1
1551    call getin('iflag_mix',iflag_mix_omp)
1552
1553    !
1554    !Config Key  = scut
1555    !Config Desc =
1556    !Config Def  = 0.95
1557    !Config Help =
1558    !
1559    scut_omp = 0.95
1560    call getin('scut',scut_omp)
1561
1562    !
1563    !Config Key  = qqa1
1564    !Config Desc =
1565    !Config Def  = 1.0
1566    !Config Help =
1567    !
1568    qqa1_omp = 1.0
1569    call getin('qqa1',qqa1_omp)
1570
1571    !
1572    !Config Key  = qqa2
1573    !Config Desc =
1574    !Config Def  = 0.0
1575    !Config Help =
1576    !
1577    qqa2_omp = 0.0
1578    call getin('qqa2',qqa2_omp)
1579
1580    !
1581    !Config Key  = gammas
1582    !Config Desc =
1583    !Config Def  = 0.05
1584    !Config Help =
1585    !
1586    gammas_omp = 0.05
1587    call getin('gammas',gammas_omp)
1588
1589    !
1590    !Config Key  = Fmax
1591    !Config Desc =
1592    !Config Def  = 0.65
1593    !Config Help =
1594    !
1595    Fmax_omp = 0.65
1596    call getin('Fmax',Fmax_omp)
1597
1598    !
1599    !Config Key  = alphas 
1600    !Config Desc =
1601    !Config Def  = -5.
1602    !Config Help =
1603    !
1604    alphas_omp = -5.
1605    call getin('alphas',alphas_omp)
1606
1607    !Config key = ok_strato
1608    !Config  Desc = activation de la version strato
1609    !Config  Def  = .FALSE.
1610    !Config  Help = active la version stratosphérique de LMDZ de F. Lott
1611
1612    ok_strato_omp=.FALSE.
1613    CALL getin('ok_strato',ok_strato_omp)
1614
1615    !Config  key = ok_hines
1616    !Config  Desc = activation de la parametrisation de hines
1617    !Config  Def  = .FALSE.
1618    !Config  Help = Clefs controlant la parametrization de Hines
1619    !               Et la sponge layer (Runs Stratospheriques)
1620
1621    ok_hines_omp=.FALSE.
1622    CALL getin('ok_hines',ok_hines_omp)
1623
1624    ! Random gravity waves:
1625
1626    ok_gwd_rando_omp = .FALSE.
1627    CALL getin('ok_gwd_rando', ok_gwd_rando_omp)
1628
1629    RUWMAX_omp = 0.01
1630    CALL getin('ruwmax', RUWMAX_omp)
1631
1632    sat_omp = 0.25
1633    CALL getin('sat', sat_omp)
1634
1635    !Config Key  = OK_LES                                               
1636    !Config Desc = Pour des sorties LES                                 
1637    !Config Def  = .false.                                             
1638    !Config Help = Pour creer le fichier histLES contenant les sorties 
1639    !              LES                                                 
1640    !                                                                   
1641    ok_LES_omp = .false.                                             
1642    call getin('OK_LES', ok_LES_omp)                                 
1643
1644    !Config Key  = callstats                                               
1645    !Config Desc = Pour des sorties callstats                                 
1646    !Config Def  = .false.                                             
1647    !Config Help = Pour creer le fichier stats contenant les sorties 
1648    !              stats                                                 
1649    !                                                                   
1650    callstats_omp = .false.                                             
1651    call getin('callstats', callstats_omp)                                 
1652    !
1653    !Config Key  = ecrit_LES
1654    !Config Desc = Frequence d'ecriture des resultats du LES en nombre de jours;
1655    !              par defaut 1., i.e. 1 jour
1656    !Config Def  = 1./8.
1657    !Config Help = ...
1658    !
1659    !
1660    ecrit_LES_omp = 1./8.
1661    call getin('ecrit_LES', ecrit_LES_omp)
1662    !
1663    read_climoz = 0 ! default value
1664    call getin('read_climoz', read_climoz)
1665
1666    carbon_cycle_tr_omp=.FALSE.
1667    CALL getin('carbon_cycle_tr',carbon_cycle_tr_omp)
1668
1669    carbon_cycle_cpl_omp=.FALSE.
1670    CALL getin('carbon_cycle_cpl',carbon_cycle_cpl_omp)
1671
1672    !$OMP END MASTER
1673    !$OMP BARRIER
1674
1675    R_ecc = R_ecc_omp
1676    R_peri = R_peri_omp
1677    R_incl = R_incl_omp
1678    solaire = solaire_omp
1679    co2_ppm = co2_ppm_omp
1680    RCO2 = RCO2_omp
1681    CH4_ppb = CH4_ppb_omp
1682    RCH4 = RCH4_omp
1683    N2O_ppb = N2O_ppb_omp
1684    RN2O = RN2O_omp
1685    CFC11_ppt = CFC11_ppt_omp
1686    RCFC11 = RCFC11_omp
1687    CFC12_ppt = CFC12_ppt_omp
1688    RCFC12 = RCFC12_omp
1689    RCO2_act = RCO2
1690    RCH4_act = RCH4
1691    RN2O_act = RN2O
1692    RCFC11_act = RCFC11
1693    RCFC12_act = RCFC12
1694    ok_4xCO2atm = ok_4xCO2atm_omp
1695    RCO2_per = RCO2_per_omp
1696    RCH4_per = RCH4_per_omp
1697    RN2O_per = RN2O_per_omp
1698    RCFC11_per = RCFC11_per_omp
1699    RCFC12_per = RCFC12_per_omp
1700
1701    cycle_diurne = cycle_diurne_omp
1702    soil_model = soil_model_omp
1703    new_oliq = new_oliq_omp
1704    ok_orodr = ok_orodr_omp
1705    ok_orolf = ok_orolf_omp
1706    ok_limitvrai = ok_limitvrai_omp
1707    nbapp_rad = nbapp_rad_omp
1708    iflag_con = iflag_con_omp
1709    iflag_ener_conserv = iflag_ener_conserv_omp
1710    iflag_fisrtilp_qsat = iflag_fisrtilp_qsat_omp
1711
1712    epmax = epmax_omp
1713    ok_adj_ema = ok_adj_ema_omp
1714    iflag_clw = iflag_clw_omp
1715    cld_lc_lsc = cld_lc_lsc_omp
1716    cld_lc_con = cld_lc_con_omp
1717    cld_tau_lsc = cld_tau_lsc_omp
1718    cld_tau_con = cld_tau_con_omp
1719    ffallv_lsc = ffallv_lsc_omp
1720    ffallv_con = ffallv_con_omp
1721    coef_eva = coef_eva_omp
1722    reevap_ice = reevap_ice_omp
1723    iflag_pdf = iflag_pdf_omp
1724    solarlong0 = solarlong0_omp
1725    qsol0 = qsol0_omp
1726    evap0 = evap0_omp
1727    albsno0 = albsno0_omp
1728    inertie_sol = inertie_sol_omp
1729    inertie_ice = inertie_ice_omp
1730    inertie_sno = inertie_sno_omp
1731    rad_froid = rad_froid_omp
1732    rad_chau1 = rad_chau1_omp
1733    rad_chau2 = rad_chau2_omp
1734    t_glace_min = t_glace_min_omp
1735    t_glace_max = t_glace_max_omp
1736    iflag_ice_thermo = iflag_ice_thermo_omp
1737    rei_min = rei_min_omp
1738    rei_max = rei_max_omp
1739    top_height = top_height_omp
1740    overlap = overlap_omp
1741    cdmmax = cdmmax_omp
1742    cdhmax = cdhmax_omp
1743    ksta = ksta_omp
1744    ksta_ter = ksta_ter_omp
1745    ok_kzmin = ok_kzmin_omp
1746    fmagic = fmagic_omp
1747    pmagic = pmagic_omp
1748    iflag_pbl = iflag_pbl_omp
1749    lev_histhf = lev_histhf_omp
1750    lev_histday = lev_histday_omp
1751    lev_histmth = lev_histmth_omp
1752    lev_histins = lev_histins_omp
1753    lev_histLES = lev_histLES_omp
1754    lev_histdayNMC = lev_histdayNMC_omp
1755    levout_histNMC = levout_histNMC_omp
1756    ok_histNMC(:) = ok_histNMC_omp(:)
1757    freq_outNMC(:) = freq_outNMC_omp(:)
1758    freq_calNMC(:) = freq_calNMC_omp(:)
1759
1760    type_ocean = type_ocean_omp
1761    version_ocean = version_ocean_omp
1762
1763    ok_veget=.true.
1764    type_veget=type_veget_omp
1765    if (type_veget=='n' .or. type_veget=='bucket' .or. type_veget=='betaclim') &
1766         then
1767       ok_veget=.false.
1768    endif
1769    ! Martin
1770    ok_snow = ok_snow_omp
1771    ! Martin
1772
1773    ok_newmicro = ok_newmicro_omp
1774    ok_journe = ok_journe_omp
1775    ok_hf = ok_hf_omp
1776    ok_mensuel = ok_mensuel_omp
1777    ok_instan = ok_instan_omp
1778    freq_ISCCP = freq_ISCCP_omp
1779    ecrit_ISCCP = ecrit_ISCCP_omp
1780    freq_COSP = freq_COSP_omp
1781    ok_ade = ok_ade_omp
1782    ok_aie = ok_aie_omp
1783    ok_cdnc = ok_cdnc_omp
1784    aerosol_couple = aerosol_couple_omp
1785    flag_aerosol=flag_aerosol_omp
1786    flag_aerosol_strat=flag_aerosol_strat_omp
1787    new_aod=new_aod_omp
1788    aer_type = aer_type_omp
1789    bl95_b0 = bl95_b0_omp
1790    bl95_b1 = bl95_b1_omp
1791    fact_cldcon = fact_cldcon_omp
1792    facttemps = facttemps_omp
1793    ratqsbas = ratqsbas_omp
1794    ratqshaut = ratqshaut_omp
1795    tau_ratqs = tau_ratqs_omp
1796
1797    iflag_radia = iflag_radia_omp
1798    iflag_rrtm = iflag_rrtm_omp
1799    iflag_cldcon = iflag_cldcon_omp
1800    iflag_ratqs = iflag_ratqs_omp
1801    ip_ebil_phy = ip_ebil_phy_omp
1802    iflag_thermals = iflag_thermals_omp
1803    iflag_thermals_ed = iflag_thermals_ed_omp
1804    iflag_thermals_optflux = iflag_thermals_optflux_omp
1805    nsplit_thermals = nsplit_thermals_omp
1806    tau_thermals = tau_thermals_omp
1807    alp_bl_k = alp_bl_k_omp
1808    ! nrlmd le 10/04/2012
1809    iflag_trig_bl = iflag_trig_bl_omp
1810    s_trig = s_trig_omp
1811    tau_trig_shallow = tau_trig_shallow_omp
1812    tau_trig_deep = tau_trig_deep_omp
1813    iflag_clos_bl = iflag_clos_bl_omp
1814    ! fin nrlmd le 10/04/2012
1815    iflag_coupl = iflag_coupl_omp
1816    iflag_clos = iflag_clos_omp
1817    iflag_wake = iflag_wake_omp
1818    alp_offset = alp_offset_omp
1819    iflag_cvl_sigd = iflag_cvl_sigd_omp
1820    type_run = type_run_omp
1821    ok_cosp = ok_cosp_omp
1822    ok_mensuelCOSP = ok_mensuelCOSP_omp
1823    ok_journeCOSP = ok_journeCOSP_omp
1824    ok_hfCOSP = ok_hfCOSP_omp
1825    seuil_inversion=seuil_inversion_omp
1826    lonmin_ins = lonmin_ins_omp
1827    lonmax_ins = lonmax_ins_omp
1828    latmin_ins = latmin_ins_omp
1829    latmax_ins = latmax_ins_omp
1830    ecrit_hf   = ecrit_hf_omp
1831    ecrit_ins   = ecrit_ins_omp
1832    ecrit_day = ecrit_day_omp
1833    ecrit_mth = ecrit_mth_omp
1834    ecrit_tra = ecrit_tra_omp
1835    ecrit_reg = ecrit_reg_omp
1836    cvl_corr = cvl_corr_omp
1837    ok_lic_melt = ok_lic_melt_omp
1838    f_cdrag_ter=f_cdrag_ter_omp
1839    f_cdrag_oce=f_cdrag_oce_omp
1840    f_rugoro=f_rugoro_omp
1841    supcrit1 = supcrit1_omp
1842    supcrit2 = supcrit2_omp
1843    iflag_mix = iflag_mix_omp
1844    scut = scut_omp
1845    qqa1 = qqa1_omp
1846    qqa2 = qqa2_omp
1847    gammas = gammas_omp
1848    Fmax = Fmax_omp
1849    alphas = alphas_omp
1850    ok_strato = ok_strato_omp
1851    ok_hines = ok_hines_omp
1852    ok_gwd_rando = ok_gwd_rando_omp
1853    RUWMAX = RUWMAX_omp
1854    sat = sat_omp
1855    ok_LES = ok_LES_omp
1856    callstats = callstats_omp
1857    ecrit_LES = ecrit_LES_omp
1858    carbon_cycle_tr = carbon_cycle_tr_omp
1859    carbon_cycle_cpl = carbon_cycle_cpl_omp
1860
1861    ! Test of coherence between type_ocean and version_ocean
1862    IF (type_ocean=='couple' .AND. (version_ocean/='opa8' .AND. version_ocean/='nemo') ) THEN
1863       WRITE(lunout,*)' ERROR version_ocean=',version_ocean,' not valid in coupled configuration'
1864       CALL abort_gcm('conf_phys','version_ocean not valid',1)
1865    END IF
1866
1867    IF (type_ocean=='slab' .AND. version_ocean=='xxxxxx') THEN
1868       version_ocean='sicOBS'
1869    ELSE IF (type_ocean=='slab' .AND. version_ocean/='sicOBS') THEN
1870       WRITE(lunout,*)' ERROR version_ocean=',version_ocean,' not valid with slab ocean'
1871       CALL abort_gcm('conf_phys','version_ocean not valid',1)
1872    END IF
1873
1874    ! Test sur new_aod. Ce flag permet de retrouver les resultats de l'AR4
1875    ! il n'est utilisable que lors du couplage avec le SO4 seul
1876    IF (ok_ade .OR. ok_aie) THEN
1877       IF ( flag_aerosol .EQ. 0 ) THEN
1878          CALL abort_gcm('conf_phys','flag_aerosol=0 not compatible avec ok_ade ou ok_aie=.TRUE.',1)
1879       END IF
1880       IF ( .NOT. new_aod .AND.  flag_aerosol .NE. 1) THEN
1881          CALL abort_gcm('conf_phys','new_aod=.FALSE. not compatible avec flag_aerosol=1',1)
1882       END IF
1883    END IF
1884
1885    ! ok_cdnc must be set to y if ok_aie is activated
1886    IF (ok_aie .AND. .NOT. ok_cdnc) THEN
1887       CALL abort_gcm('conf_phys', 'ok_cdnc must be set to y if ok_aie is activated',1)
1888    ENDIF
1889
1890    !$OMP MASTER
1891
1892    write(lunout,*)' ##############################################'
1893    write(lunout,*)' Configuration des parametres de la physique: '
1894    write(lunout,*)' Type ocean = ', type_ocean
1895    write(lunout,*)' Version ocean = ', version_ocean
1896    write(lunout,*)' Config veget = ', ok_veget,type_veget
1897    write(lunout,*)' Snow model SISVAT : ok_snow = ', ok_snow
1898    write(lunout,*)' Sortie journaliere = ', ok_journe
1899    write(lunout,*)' Sortie haute frequence = ', ok_hf
1900    write(lunout,*)' Sortie mensuelle = ', ok_mensuel
1901    write(lunout,*)' Sortie instantanee = ', ok_instan
1902    write(lunout,*)' Frequence appel simulateur ISCCP, freq_ISCCP =', freq_ISCCP
1903    write(lunout,*)' Frequence appel simulateur ISCCP, ecrit_ISCCP =', ecrit_ISCCP
1904    write(lunout,*)' Frequence appel simulateur COSP, freq_COSP =', freq_COSP
1905    write(lunout,*)' Sortie bilan d''energie, ip_ebil_phy =', ip_ebil_phy
1906    write(lunout,*)' Excentricite = ',R_ecc
1907    write(lunout,*)' Equinoxe = ',R_peri
1908    write(lunout,*)' Inclinaison =',R_incl
1909    write(lunout,*)' Constante solaire =',solaire
1910    write(lunout,*)' co2_ppm =',co2_ppm
1911    write(lunout,*)' RCO2_act = ',RCO2_act
1912    write(lunout,*)' CH4_ppb =',CH4_ppb,' RCH4_act = ',RCH4_act
1913    write(lunout,*)' N2O_ppb =',N2O_ppb,' RN2O_act=  ',RN2O_act
1914    write(lunout,*)' CFC11_ppt=',CFC11_ppt,' RCFC11_act=  ',RCFC11_act
1915    write(lunout,*)' CFC12_ppt=',CFC12_ppt,' RCFC12_act=  ',RCFC12_act
1916    write(lunout,*)' ok_4xCO2atm=',ok_4xCO2atm
1917    write(lunout,*)' RCO2_per = ',RCO2_per,' RCH4_per = ', RCH4_per
1918    write(lunout,*)' RN2O_per = ',RN2O_per,' RCFC11_per = ', RCFC11_per
1919    write(lunout,*)' RCFC12_per = ',RCFC12_per
1920    write(lunout,*)' cvl_corr=', cvl_corr
1921    write(lunout,*)'ok_lic_melt=', ok_lic_melt
1922    write(lunout,*)'cycle_diurne=',cycle_diurne
1923    write(lunout,*)'soil_model=',soil_model
1924    write(lunout,*)'new_oliq=',new_oliq
1925    write(lunout,*)'ok_orodr=',ok_orodr
1926    write(lunout,*)'ok_orolf=',ok_orolf
1927    write(lunout,*)'ok_limitvrai=',ok_limitvrai
1928    write(lunout,*)'nbapp_rad=',nbapp_rad
1929    write(lunout,*)'iflag_con=',iflag_con
1930    write(lunout,*)'iflag_ener_conserv=',iflag_ener_conserv
1931    write(lunout,*)'iflag_fisrtilp_qsat=',iflag_fisrtilp_qsat
1932    write(lunout,*)' epmax = ', epmax
1933    write(lunout,*)' ok_adj_ema = ', ok_adj_ema
1934    write(lunout,*)' iflag_clw = ', iflag_clw
1935    write(lunout,*)' cld_lc_lsc = ', cld_lc_lsc
1936    write(lunout,*)' cld_lc_con = ', cld_lc_con
1937    write(lunout,*)' cld_tau_lsc = ', cld_tau_lsc
1938    write(lunout,*)' cld_tau_con = ', cld_tau_con
1939    write(lunout,*)' ffallv_lsc = ', ffallv_lsc
1940    write(lunout,*)' ffallv_con = ', ffallv_con
1941    write(lunout,*)' coef_eva = ', coef_eva
1942    write(lunout,*)' reevap_ice = ', reevap_ice
1943    write(lunout,*)' iflag_pdf = ', iflag_pdf
1944    write(lunout,*)' iflag_cldcon = ', iflag_cldcon
1945    write(lunout,*)' iflag_radia = ', iflag_radia
1946    write(lunout,*)' iflag_rrtm = ', iflag_rrtm
1947    write(lunout,*)' iflag_ratqs = ', iflag_ratqs
1948    write(lunout,*)' seuil_inversion = ', seuil_inversion
1949    write(lunout,*)' fact_cldcon = ', fact_cldcon
1950    write(lunout,*)' facttemps = ', facttemps
1951    write(lunout,*)' ok_newmicro = ',ok_newmicro
1952    write(lunout,*)' ratqsbas = ',ratqsbas
1953    write(lunout,*)' ratqshaut = ',ratqshaut
1954    write(lunout,*)' tau_ratqs = ',tau_ratqs
1955    write(lunout,*)' top_height = ',top_height
1956    write(lunout,*)' rad_froid = ',rad_froid
1957    write(lunout,*)' rad_chau1 = ',rad_chau1
1958    write(lunout,*)' rad_chau2 = ',rad_chau2
1959    write(lunout,*)' t_glace_min = ',t_glace_min
1960    write(lunout,*)' t_glace_max = ',t_glace_max
1961    write(lunout,*)' iflag_ice_thermo = ',iflag_ice_thermo
1962    write(lunout,*)' rei_min = ',rei_min
1963    write(lunout,*)' rei_max = ',rei_max
1964    write(lunout,*)' overlap = ',overlap
1965    write(lunout,*)' cdmmax = ',cdmmax
1966    write(lunout,*)' cdhmax = ',cdhmax
1967    write(lunout,*)' ksta = ',ksta
1968    write(lunout,*)' ksta_ter = ',ksta_ter
1969    write(lunout,*)' ok_kzmin = ',ok_kzmin
1970    write(lunout,*)' fmagic = ',fmagic
1971    write(lunout,*)' pmagic = ',pmagic
1972    write(lunout,*)' ok_ade = ',ok_ade
1973    write(lunout,*)' ok_aie = ',ok_aie
1974    write(lunout,*)' aerosol_couple = ', aerosol_couple
1975    write(lunout,*)' flag_aerosol = ', flag_aerosol
1976    write(lunout,*)' flag_aerosol_strat = ', flag_aerosol_strat
1977    write(lunout,*)' new_aod = ', new_aod
1978    write(lunout,*)' aer_type = ',aer_type
1979    write(lunout,*)' bl95_b0 = ',bl95_b0
1980    write(lunout,*)' bl95_b1 = ',bl95_b1
1981    write(lunout,*)' lev_histhf = ',lev_histhf
1982    write(lunout,*)' lev_histday = ',lev_histday
1983    write(lunout,*)' lev_histmth = ',lev_histmth
1984    write(lunout,*)' lev_histins = ',lev_histins
1985    write(lunout,*)' lev_histLES = ',lev_histLES
1986    write(lunout,*)' lev_histdayNMC = ',lev_histdayNMC
1987    write(lunout,*)' levout_histNMC = ',levout_histNMC
1988    write(lunout,*)' ok_histNMC = ',ok_histNMC
1989    write(lunout,*)' freq_outNMC = ',freq_outNMC
1990    write(lunout,*)' freq_calNMC = ',freq_calNMC
1991    write(lunout,*)' iflag_pbl = ', iflag_pbl
1992    write(lunout,*)' iflag_thermals = ', iflag_thermals
1993    write(lunout,*)' iflag_thermals_ed = ', iflag_thermals_ed
1994    write(lunout,*)' iflag_thermals_optflux = ', iflag_thermals_optflux
1995    write(lunout,*)' iflag_clos = ', iflag_clos
1996    write(lunout,*)' type_run = ',type_run
1997    write(lunout,*)' ok_cosp = ',ok_cosp
1998    write(lunout,*)' ok_mensuelCOSP = ',ok_mensuelCOSP
1999    write(lunout,*)' ok_journeCOSP = ',ok_journeCOSP
2000    write(lunout,*)' ok_hfCOSP =',ok_hfCOSP
2001    write(lunout,*)' solarlong0 = ', solarlong0
2002    write(lunout,*)' qsol0 = ', qsol0
2003    write(lunout,*)' evap0 = ', evap0
2004    write(lunout,*)' albsno0 = ', albsno0
2005    write(lunout,*)' inertie_sol = ', inertie_sol
2006    write(lunout,*)' inertie_ice = ', inertie_ice
2007    write(lunout,*)' inertie_sno = ', inertie_sno
2008    write(lunout,*)' f_cdrag_ter = ',f_cdrag_ter
2009    write(lunout,*)' f_cdrag_oce = ',f_cdrag_oce
2010    write(lunout,*)' f_rugoro = ',f_rugoro
2011    write(lunout,*)' supcrit1 = ', supcrit1
2012    write(lunout,*)' supcrit2 = ', supcrit2
2013    write(lunout,*)' iflag_mix = ', iflag_mix
2014    write(lunout,*)' scut = ', scut
2015    write(lunout,*)' qqa1 = ', qqa1
2016    write(lunout,*)' qqa2 = ', qqa2
2017    write(lunout,*)' gammas = ', gammas
2018    write(lunout,*)' Fmax = ', Fmax
2019    write(lunout,*)' alphas = ', alphas
2020    write(lunout,*)' iflag_wake = ', iflag_wake
2021    write(lunout,*)' alp_offset = ', alp_offset
2022    ! nrlmd le 10/04/2012
2023    write(lunout,*)' iflag_trig_bl = ', iflag_trig_bl
2024    write(lunout,*)' s_trig = ', s_trig
2025    write(lunout,*)' tau_trig_shallow = ', tau_trig_shallow
2026    write(lunout,*)' tau_trig_deep = ', tau_trig_deep
2027    write(lunout,*)' iflag_clos_bl = ', iflag_clos_bl
2028    ! fin nrlmd le 10/04/2012
2029
2030    write(lunout,*)' lonmin lonmax latmin latmax bilKP_ins =',&
2031         lonmin_ins, lonmax_ins, latmin_ins, latmax_ins
2032    write(lunout,*)' ecrit_ hf, ins, day, mth, reg, tra, ISCCP, LES',&
2033         ecrit_hf, ecrit_ins, ecrit_day, ecrit_mth, ecrit_reg, ecrit_tra, ecrit_ISCCP, ecrit_LES
2034
2035    write(lunout,*) 'ok_strato = ', ok_strato
2036    write(lunout,*) 'ok_hines = ',  ok_hines
2037    write(lunout,*) 'ok_gwd_rando = ',  ok_gwd_rando
2038    write(lunout,*) 'RUWMAX = ', RUWMAX
2039    write(lunout,*) 'sat = ', sat
2040    write(lunout,*) 'read_climoz = ', read_climoz
2041    write(lunout,*) 'carbon_cycle_tr = ', carbon_cycle_tr
2042    write(lunout,*) 'carbon_cycle_cpl = ', carbon_cycle_cpl
2043
2044    !$OMP END MASTER
2045
2046    return
2047
2048  end subroutine conf_phys
2049
2050end module conf_phys_m
2051!
2052!#################################################################
2053!
2054
2055subroutine conf_interface(tau_calv)
2056
2057  use IOIPSL
2058  implicit none
2059  include "iniprint.h"
2060  ! Configuration de l'interace atm/surf
2061  !
2062  ! tau_calv:    temps de relaxation pour la fonte des glaciers
2063
2064  REAL          :: tau_calv
2065  REAL,SAVE     :: tau_calv_omp
2066
2067  !
2068  !Config Key  = tau_calv
2069  !Config Desc = temps de relaxation pour fonte des glaciers en jours
2070  !Config Def  = 1 an
2071  !Config Help =
2072  !
2073  tau_calv_omp = 360.*10.
2074  !$OMP MASTER
2075  call getin('tau_calv',tau_calv_omp)
2076  !$OMP END MASTER
2077  !$OMP BARRIER
2078
2079  tau_calv=tau_calv_omp
2080
2081  !$OMP MASTER
2082  write(lunout,*)' ##############################################'
2083  WRITE(lunout,*)' Configuration de l''interface atm/surfaces  : '
2084  WRITE(lunout,*)' tau_calv = ',tau_calv
2085  !$OMP END MASTER
2086
2087  return
2088
2089end subroutine conf_interface
Note: See TracBrowser for help on using the repository browser.