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

Last change on this file since 2227 was 2227, checked in by Laurent Fairhead, 9 years ago

New ocean albedo.

To activate the new scheme, put iflag_albedo=1 in physiq.def

To activate chlorophyll concentration effect on albedo,
put ok_chlorophyll=y in def file

and download file named chlorophyll.nc
chlorophyll.nc has the same dimension as the model grid with 12 months data,
(i=lon, j=lat, L=1:12) and can be degraded from the original file of dimension
i=1:4320 , j=1:2160 , L=1:12
ada:/workgpfs/rech/psl/rpsl949/clima/chlor_seasonal_clim_seawifs.nc

For 96X96 resolution, chlorophyll.nc file is in
ada:/workgpfs/rech/psl/rpsl949/clima/chlorophyll.nc

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