source: LMDZ4/trunk/libf/phylmd/conf_phys.F90 @ 1361

Last change on this file since 1361 was 1355, checked in by musat, 14 years ago

use of phys_cal_mod in conf_phys (and change call order in physiq.F) to
automatically calculate the output frequency of standard pressure monthly
file (histmthNMC.nc)
IM

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