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

Last change on this file since 894 was 889, checked in by Laurent Fairhead, 17 years ago

Modifs pour que l'aquaplanete marche FH
LF

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 26.8 KB
Line 
1!
2! $Header$
3!
4!
5!
6
7  subroutine conf_phys(ocean, ok_veget, ok_journe, ok_mensuel, ok_instan, ok_hf, &
8 &                     solarlong0,seuil_inversion, &
9 &                     fact_cldcon, facttemps,ok_newmicro,iflag_radia,&
10 &                     iflag_cldcon, &
11 &                     iflag_ratqs,ratqsbas,ratqshaut, &
12 &                     ok_ade, ok_aie, &
13 &                     bl95_b0, bl95_b1,&
14 &                     iflag_thermals,nsplit_thermals, &
15 &                     iflag_coupl,iflag_clos,iflag_wake )
16
17   use IOIPSL
18   implicit none
19
20 include "conema3.h"
21 include "fisrtilp.h"
22 include "nuage.h"
23 include "YOMCST.h"
24!IM : on inclut/initialise les taux de CH4, N2O, CFC11 et CFC12
25include "clesphys.h"
26include "compbl.h"
27include "control.h"
28include "comsoil.h"
29!
30! Configuration de la "physique" de LMDZ a l'aide de la fonction
31! GETIN de IOIPSL
32!
33! LF 05/2001
34!
35
36!
37! ocean:      type d'ocean (force, slab, couple)
38! ok_veget:   type de modele de vegetation
39! ok_journe:  sorties journalieres
40! ok_hf:  sorties haute frequence
41! ok_mensuel: sorties mensuelles
42! ok_instan:  sorties instantanees
43! ok_ade, ok_aie: apply or not aerosol direct and indirect effects
44! bl95_b*: parameters in the formula to link CDNC to aerosol mass conc
45!
46
47
48! Sortie:
49  character (len = 6)  :: ocean
50  logical              :: ok_veget, ok_newmicro
51  integer              :: iflag_radia
52  logical              :: ok_journe, ok_mensuel, ok_instan, ok_hf
53  LOGICAL              :: ok_ade, ok_aie
54  REAL                 :: bl95_b0, bl95_b1
55  real                 :: fact_cldcon, facttemps,ratqsbas,ratqshaut
56  integer              :: iflag_cldcon
57  integer              :: iflag_ratqs
58
59  character (len = 6),SAVE  :: ocean_omp
60  logical,SAVE              :: ok_veget_omp, ok_newmicro_omp
61  logical,SAVE        :: ok_journe_omp, ok_mensuel_omp, ok_instan_omp, ok_hf_omp       
62  LOGICAL,SAVE        :: ok_ade_omp, ok_aie_omp
63  REAL,SAVE           :: bl95_b0_omp, bl95_b1_omp
64  REAL,SAVE           :: freq_ISCCP_omp, ecrit_ISCCP_omp
65  real,SAVE           :: fact_cldcon_omp, facttemps_omp,ratqsbas_omp
66  real,SAVE           :: ratqshaut_omp
67  integer,SAVE        :: iflag_radia_omp
68  integer,SAVE        :: iflag_cldcon_omp, ip_ebil_phy_omp
69  integer,SAVE        :: iflag_ratqs_omp
70
71! Local
72  integer              :: numout = 6
73  real                 :: zzz
74
75  real :: seuil_inversion
76  real,save :: seuil_inversion_omp
77
78  integer :: iflag_thermals,nsplit_thermals
79  integer,SAVE :: iflag_thermals_omp,nsplit_thermals_omp
80  integer :: iflag_coupl
81  integer :: iflag_clos
82  integer :: iflag_wake
83  integer,SAVE :: iflag_coupl_omp,iflag_clos_omp,iflag_wake_omp
84  integer,SAVE :: iflag_cvl_sigd_omp
85
86  REAL,SAVE :: R_ecc_omp,R_peri_omp,R_incl_omp,solaire_omp,co2_ppm_omp
87  REAL,SAVE :: RCO2_omp,CH4_ppb_omp,RCH4_omp,N2O_ppb_omp,RN2O_omp,CFC11_ppt_omp
88  REAL,SAVE :: RCFC11_omp,CFC12_ppt_omp,RCFC12_omp,epmax_omp
89  LOGICAL,SAVE :: ok_adj_ema_omp
90  INTEGER,SAVE :: iflag_clw_omp
91  REAL,SAVE :: cld_lc_lsc_omp,cld_lc_con_omp,cld_tau_lsc_omp,cld_tau_con_omp
92  REAL,SAVE :: ffallv_lsc_omp, ffallv_con_omp,coef_eva_omp
93  LOGICAL,SAVE :: reevap_ice_omp
94  INTEGER,SAVE :: iflag_pdf_omp
95  REAL,SAVE :: rad_froid_omp, rad_chau1_omp, rad_chau2_omp
96  REAL,SAVE :: inertie_sol_omp,inertie_sno_omp,inertie_ice_omp
97  REAL,SAVE :: qsol0_omp
98  REAL      :: solarlong0
99  REAL,SAVE :: solarlong0_omp
100  INTEGER,SAVE :: top_height_omp,overlap_omp
101  REAL,SAVE :: cdmmax_omp,cdhmax_omp,ksta_omp,ksta_ter_omp
102  LOGICAL,SAVE :: ok_kzmin_omp
103  REAL, SAVE :: fmagic_omp
104  INTEGER,SAVE :: iflag_pbl_omp,lev_histhf_omp,lev_histday_omp,lev_histmth_omp
105  CHARACTER*4, SAVE :: type_run_omp
106  LOGICAL,SAVE :: ok_isccp_omp
107  REAL,SAVE :: lonmin_ins_omp, lonmax_ins_omp, latmin_ins_omp, latmax_ins_omp
108  REAL,SAVE :: ecrit_hf_omp, ecrit_day_omp, ecrit_mth_omp, ecrit_reg_omp
109  REAL,SAVE :: ecrit_tra_omp
110  LOGICAL, SAVE :: ok_slab_sicOBS_omp
111  REAL,SAVE :: cvl_corr_omp
112  LOGICAL,SAVE :: ok_lic_melt_omp
113!
114!
115!
116
117!$OMP MASTER
118!Config Key  = OCEAN
119!Config Desc = Type d'ocean
120!Config Def  = force
121!Config Help = Type d'ocean utilise: force, slab,couple
122!
123  ocean_omp = 'force '
124  call getin('OCEAN', ocean_omp)
125!
126!Config Key  = VEGET
127!Config Desc = Type de modele de vegetation
128!Config Def  = .false.
129!Config Help = Type de modele de vegetation utilise
130!
131  ok_veget_omp = .false.
132  call getin('VEGET', ok_veget_omp)
133!
134!Config Key  = OK_journe
135!Config Desc = Pour des sorties journalieres
136!Config Def  = .false.
137!Config Help = Pour creer le fichier histday contenant les sorties
138!              journalieres
139!
140  ok_journe_omp = .false.
141  call getin('OK_journe', ok_journe_omp)
142!
143!Config Key  = ok_hf
144!Config Desc = Pour des sorties haute frequence
145!Config Def  = .false.
146!Config Help = Pour creer le fichier histhf contenant les sorties
147!              haute frequence ( 3h ou 6h)
148!
149  ok_hf_omp = .false.
150  call getin('ok_hf', ok_hf_omp)
151!
152!Config Key  = OK_mensuel
153!Config Desc = Pour des sorties mensuelles
154!Config Def  = .true.
155!Config Help = Pour creer le fichier histmth contenant les sorties
156!              mensuelles
157!
158  ok_mensuel_omp = .true.
159  call getin('OK_mensuel', ok_mensuel_omp)
160!
161!Config Key  = OK_instan
162!Config Desc = Pour des sorties instantanees
163!Config Def  = .false.
164!Config Help = Pour creer le fichier histins contenant les sorties
165!              instantanees
166!
167  ok_instan_omp = .false.
168  call getin('OK_instan', ok_instan_omp)
169!
170!Config Key  = ok_ade
171!Config Desc = Aerosol direct effect or not?
172!Config Def  = .false.
173!Config Help = Used in radlwsw.F
174!
175  ok_ade_omp = .false.
176  call getin('ok_ade', ok_ade_omp)
177
178!
179!Config Key  = ok_aie
180!Config Desc = Aerosol indirect effect or not?
181!Config Def  = .false.
182!Config Help = Used in nuage.F and radlwsw.F
183!
184  ok_aie_omp = .false.
185  call getin('ok_aie', ok_aie_omp)
186
187!
188!Config Key  = bl95_b0
189!Config Desc = Parameter in CDNC-maer link (Boucher&Lohmann 1995)
190!Config Def  = .false.
191!Config Help = Used in nuage.F
192!
193  bl95_b0_omp = 2.
194  call getin('bl95_b0', bl95_b0_omp)
195
196!Config Key  = bl95_b1
197!Config Desc = Parameter in CDNC-maer link (Boucher&Lohmann 1995)
198!Config Def  = .false.
199!Config Help = Used in nuage.F
200!
201  bl95_b1_omp = 0.2
202  call getin('bl95_b1', bl95_b1_omp)
203
204!Config Key  = freq_ISCCP
205!Config Desc = Frequence d'appel du simulateur ISCCP en secondes;
206!              par defaut 10800, i.e. 3 heures
207!Config Def  = 10800.
208!Config Help = Used in ini_histISCCP.h
209!
210  freq_ISCCP_omp = 10800.
211  call getin('freq_ISCCP', freq_ISCCP_omp)
212!
213!Config Key  = ecrit_ISCCP
214!Config Desc = Frequence d'ecriture des resultats du simulateur ISCCP en nombre de jours;
215!              par defaut 1., i.e. 1 jour
216!Config Def  = 1.
217!Config Help = Used in ini_histISCCP.h
218!
219!
220  ecrit_ISCCP_omp = 1.
221  call getin('ecrit_ISCCP', ecrit_ISCCP_omp)
222!
223!Config Key  = ip_ebil_phy
224!Config Desc = Niveau de sortie pour les diags bilan d'energie
225!Config Def  = 0
226!Config Help =
227!               
228  ip_ebil_phy_omp = 0
229  call getin('ip_ebil_phy', ip_ebil_phy_omp)
230!
231!Config Key  = seuil_inversion
232!Config Desc = Seuil ur dTh pour le choix entre les schemas de CL
233!Config Def  = -0.1
234!Config Help =
235!               
236  seuil_inversion_omp = -0.1
237  call getin('seuil_inversion', seuil_inversion_omp)
238
239!!
240!! Constante solaire & Parametres orbitaux & taux gaz effet de serre BEG
241!!
242!Config Key  = R_ecc
243!Config Desc = Excentricite
244!Config Def  = 0.016715
245!Config Help =
246!               
247!valeur AMIP II
248  R_ecc_omp = 0.016715
249  call getin('R_ecc', R_ecc_omp)
250!!
251!Config Key  = R_peri
252!Config Desc = Equinoxe
253!Config Def  =
254!Config Help =
255!               
256!
257!valeur AMIP II
258  R_peri_omp = 102.7
259  call getin('R_peri', R_peri_omp)
260!!
261!Config Key  = R_incl
262!Config Desc = Inclinaison
263!Config Def  =
264!Config Help =
265!               
266!
267!valeur AMIP II
268  R_incl_omp = 23.441
269  call getin('R_incl', R_incl_omp)
270!!
271!Config Key  = solaire
272!Config Desc = Constante solaire en W/m2
273!Config Def  = 1365.
274!Config Help =
275!               
276!
277!valeur AMIP II
278  solaire_omp = 1365.
279  call getin('solaire', solaire_omp)
280!!
281!Config Key  = co2_ppm
282!Config Desc = concentration du gaz carbonique en ppmv
283!Config Def  = 348.
284!Config Help =
285!               
286!
287!valeur AMIP II
288  co2_ppm_omp = 348.
289  call getin('co2_ppm', co2_ppm_omp)
290!!
291!Config Key  = RCO2
292!Config Desc = Concentration du CO2
293!Config Def  = co2_ppm * 1.0e-06  * 44.011/28.97
294!Config Def  = 348. * 1.0e-06  * 44.011/28.97
295!Config Help =
296!               
297! RCO2 = 5.286789092164308E-04
298!ancienne valeur
299  RCO2_omp = co2_ppm_omp * 1.0e-06  * 44.011/28.97 ! pour co2_ppm=348.
300
301!!  call getin('RCO2', RCO2)
302!!
303!Config Key  = RCH4
304!Config Desc = Concentration du CH4
305!Config Def  = 1.65E-06* 16.043/28.97
306!Config Help =
307!               
308!
309!valeur AMIP II
310!OK  RCH4 = 1.65E-06* 16.043/28.97
311! RCH4 = 9.137366240938903E-07
312!
313!ancienne valeur
314! RCH4 = 1.72E-06* 16.043/28.97
315!OK call getin('RCH4', RCH4)
316  zzz = 1650.
317  call getin('CH4_ppb', zzz)
318  CH4_ppb_omp = zzz
319  RCH4_omp = CH4_ppb_omp * 1.0E-09 * 16.043/28.97
320!!
321!Config Key  = RN2O
322!Config Desc = Concentration du N2O
323!Config Def  = 306.E-09* 44.013/28.97
324!Config Help =
325!               
326!
327!valeur AMIP II
328!OK  RN2O = 306.E-09* 44.013/28.97
329! RN2O = 4.648939592682085E-07
330!
331!ancienne valeur
332! RN2O = 310.E-09* 44.013/28.97
333!OK  call getin('RN2O', RN2O)
334  zzz=306.
335  call getin('N2O_ppb', zzz)
336  N2O_ppb_omp = zzz
337  RN2O_omp = N2O_ppb_omp * 1.0E-09 * 44.013/28.97
338!!
339!Config Key  = RCFC11
340!Config Desc = Concentration du CFC11
341!Config Def  = 280.E-12* 137.3686/28.97
342!Config Help =
343!               
344!
345!OK RCFC11 = 280.E-12* 137.3686/28.97
346  zzz = 280.
347  call getin('CFC11_ppt',zzz)
348  CFC11_ppt_omp = zzz
349  RCFC11_omp=CFC11_ppt_omp* 1.0E-12 * 137.3686/28.97
350! RCFC11 = 1.327690990680013E-09
351!OK call getin('RCFC11', RCFC11)
352!!
353!Config Key  = RCFC12
354!Config Desc = Concentration du CFC12
355!Config Def  = 484.E-12* 120.9140/28.97
356!Config Help =
357!               
358!
359!OK RCFC12 = 484.E-12* 120.9140/28.97
360  zzz = 484.
361  call getin('CFC12_ppt',zzz)
362  CFC12_ppt_omp = zzz
363  RCFC12_omp = CFC12_ppt_omp * 1.0E-12 * 120.9140/28.97
364! RCFC12 = 2.020102726958923E-09
365!OK call getin('RCFC12', RCFC12)
366!!
367!! Constante solaire & Parametres orbitaux & taux gaz effet de serre END
368!!
369!! KE
370!
371
372!Config key  = cvl_corr
373!Config Desc = Facteur multiplication des precip convectives dans KE
374!Config Def  = 1.00
375!Config Help = 1.02 pour un moderne ou un pre-ind. A ajuster pour un glaciaire
376  cvl_corr_omp = 1.00
377  CALL getin('cvl_corr', cvl_corr_omp)
378
379
380!Config Key  = epmax
381!Config Desc = Efficacite precip
382!Config Def  = 0.993
383!Config Help =
384!
385  epmax_omp = .993
386  call getin('epmax', epmax_omp)
387!
388!Config Key  = ok_adj_ema
389!Config Desc = 
390!Config Def  = false
391!Config Help =
392!
393  ok_adj_ema_omp = .false.
394  call getin('ok_adj_ema',ok_adj_ema_omp)
395!
396!Config Key  = iflag_clw
397!Config Desc = 
398!Config Def  = 0
399!Config Help =
400!
401  iflag_clw_omp = 0
402  call getin('iflag_clw',iflag_clw_omp)
403!
404!Config Key  = cld_lc_lsc
405!Config Desc = 
406!Config Def  = 2.6e-4
407!Config Help =
408!
409  cld_lc_lsc_omp = 2.6e-4
410  call getin('cld_lc_lsc',cld_lc_lsc_omp)
411!
412!Config Key  = cld_lc_con
413!Config Desc = 
414!Config Def  = 2.6e-4
415!Config Help =
416!
417  cld_lc_con_omp = 2.6e-4
418  call getin('cld_lc_con',cld_lc_con_omp)
419!
420!Config Key  = cld_tau_lsc
421!Config Desc = 
422!Config Def  = 3600.
423!Config Help =
424!
425  cld_tau_lsc_omp = 3600.
426  call getin('cld_tau_lsc',cld_tau_lsc_omp)
427!
428!Config Key  = cld_tau_con
429!Config Desc = 
430!Config Def  = 3600.
431!Config Help =
432!
433  cld_tau_con_omp = 3600.
434  call getin('cld_tau_con',cld_tau_con_omp)
435!
436!Config Key  = ffallv_lsc
437!Config Desc = 
438!Config Def  = 1.
439!Config Help =
440!
441  ffallv_lsc_omp = 1.
442  call getin('ffallv_lsc',ffallv_lsc_omp)
443!
444!Config Key  = ffallv_con
445!Config Desc = 
446!Config Def  = 1.
447!Config Help =
448!
449  ffallv_con_omp = 1.
450  call getin('ffallv_con',ffallv_con_omp)
451!
452!Config Key  = coef_eva
453!Config Desc = 
454!Config Def  = 2.e-5
455!Config Help =
456!
457  coef_eva_omp = 2.e-5
458  call getin('coef_eva',coef_eva_omp)
459!
460!Config Key  = reevap_ice
461!Config Desc = 
462!Config Def  = .false.
463!Config Help =
464!
465  reevap_ice_omp = .false.
466  call getin('reevap_ice',reevap_ice_omp)
467
468!Config Key  = iflag_ratqs
469!Config Desc =
470!Config Def  = 1
471!Config Help =
472!
473  iflag_ratqs_omp = 1
474  call getin('iflag_ratqs',iflag_ratqs_omp)
475
476!
477!Config Key  = iflag_radia
478!Config Desc = 
479!Config Def  = 1
480!Config Help =
481!
482  iflag_radia_omp = 1
483  call getin('iflag_radia',iflag_radia_omp)
484
485!Config Key  = iflag_cldcon
486!Config Desc = 
487!Config Def  = 1
488!Config Help =
489!
490  iflag_cldcon_omp = 1
491  call getin('iflag_cldcon',iflag_cldcon_omp)
492
493!
494!Config Key  = iflag_pdf
495!Config Desc = 
496!Config Def  = 0
497!Config Help =
498!
499  iflag_pdf_omp = 0
500  call getin('iflag_pdf',iflag_pdf_omp)
501!
502!Config Key  = fact_cldcon
503!Config Desc = 
504!Config Def  = 0.375
505!Config Help =
506!
507  fact_cldcon_omp = 0.375
508  call getin('fact_cldcon',fact_cldcon_omp)
509
510!
511!Config Key  = facttemps
512!Config Desc = 
513!Config Def  = 1.e-4
514!Config Help =
515!
516  facttemps_omp = 1.e-4
517  call getin('facttemps',facttemps_omp)
518
519!
520!Config Key  = ok_newmicro
521!Config Desc = 
522!Config Def  = .true.
523!Config Help =
524!
525  ok_newmicro_omp = .true.
526  call getin('ok_newmicro',ok_newmicro_omp)
527!
528!Config Key  = ratqsbas
529!Config Desc = 
530!Config Def  = 0.01
531!Config Help =
532!
533  ratqsbas_omp = 0.01
534  call getin('ratqsbas',ratqsbas_omp)
535!
536!Config Key  = ratqshaut
537!Config Desc = 
538!Config Def  = 0.3
539!Config Help =
540!
541  ratqshaut_omp = 0.3
542  call getin('ratqshaut',ratqshaut_omp)
543
544!
545!-----------------------------------------------------------------------
546! Longitude solaire pour le calcul de l'ensoleillement en degre
547! si on veut imposer la saison. Sinon, solarlong0=-999.999
548!Config Key  = solarlong0
549!Config Desc = 
550!Config Def  = -999.999
551!Config Help =
552!
553  solarlong0_omp = -999.999
554  call getin('solarlong0',solarlong0_omp)
555!
556!-----------------------------------------------------------------------
557!  Valeur imposee de l'humidite du sol pour le modele bucket.
558!Config Key  = qsol0
559!Config Desc = 
560!Config Def  = -1.
561!Config Help =
562!
563  qsol0_omp = -1.
564  call getin('qsol0',qsol0_omp)
565!
566!-----------------------------------------------------------------------
567!
568!Config Key  = inertie_ice
569!Config Desc = 
570!Config Def  = 2000.
571!Config Help =
572!
573  inertie_ice_omp = 2000.
574  call getin('inertie_ice',inertie_ice_omp)
575!
576!Config Key  = inertie_sno
577!Config Desc = 
578!Config Def  = 2000.
579!Config Help =
580!
581  inertie_sno_omp = 2000.
582  call getin('inertie_sno',inertie_sno_omp)
583!
584!Config Key  = inertie_sol
585!Config Desc = 
586!Config Def  = 2000.
587!Config Help =
588!
589  inertie_sol_omp = 2000.
590  call getin('inertie_sol',inertie_sol_omp)
591
592!
593!Config Key  = rad_froid
594!Config Desc = 
595!Config Def  = 35.0
596!Config Help =
597!
598  rad_froid_omp = 35.0
599  call getin('rad_froid',rad_froid_omp)
600
601!
602!Config Key  = rad_chau1
603!Config Desc = 
604!Config Def  = 13.0
605!Config Help =
606!
607  rad_chau1_omp = 13.0
608  call getin('rad_chau1',rad_chau1_omp)
609
610!
611!Config Key  = rad_chau2
612!Config Desc = 
613!Config Def  = 9.0
614!Config Help =
615!
616  rad_chau2_omp = 9.0
617  call getin('rad_chau2',rad_chau2_omp)
618
619!
620!Config Key  = top_height
621!Config Desc =
622!Config Def  = 3
623!Config Help =
624!
625  top_height_omp = 3
626  call getin('top_height',top_height_omp)
627
628!
629!Config Key  = overlap
630!Config Desc =
631!Config Def  = 3
632!Config Help =
633!
634  overlap_omp = 3
635  call getin('overlap',overlap_omp)
636
637
638!
639!
640!Config Key  = cdmmax
641!Config Desc =
642!Config Def  = 1.3E-3
643!Config Help =
644!
645  cdmmax_omp = 1.3E-3
646  call getin('cdmmax',cdmmax_omp)
647
648!
649!Config Key  = cdhmax
650!Config Desc =
651!Config Def  = 1.1E-3
652!Config Help =
653!
654  cdhmax_omp = 1.1E-3
655  call getin('cdhmax',cdhmax_omp)
656
657!261103
658!
659!Config Key  = ksta
660!Config Desc =
661!Config Def  = 1.0e-10
662!Config Help =
663!
664  ksta_omp = 1.0e-10
665  call getin('ksta',ksta_omp)
666
667!
668!Config Key  = ksta_ter
669!Config Desc =
670!Config Def  = 1.0e-10
671!Config Help =
672!
673  ksta_ter_omp = 1.0e-10
674  call getin('ksta_ter',ksta_ter_omp)
675
676!
677!Config Key  = ok_kzmin
678!Config Desc =
679!Config Def  = .true.
680!Config Help =
681!
682  ok_kzmin_omp = .true.
683  call getin('ok_kzmin',ok_kzmin_omp)
684
685!
686!Config Key  = fmagic
687!Config Desc =
688!Config Def  = 1.
689!Config Help = Used in albedo.F
690!
691  fmagic_omp = 1.
692  call getin('fmagic',fmagic_omp)
693
694!Config Key = ok_lic_melt
695!Config Desc = Prise en compte de la fonte de la calotte dans le bilan d'eau
696!Config Def  = .false.
697!Config Help = mettre a .false. pour assurer la conservation en eau
698  ok_lic_melt_omp = .false.
699  call getin('ok_lic_melt', ok_lic_melt_omp)
700
701!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
702! PARAMETER FOR THE PLANETARY BOUNDARY LAYER
703!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
704
705!Config Key  = iflag_pbl
706!Config Desc =
707!Config Def  = 1
708!Config Help =
709!
710  iflag_pbl_omp = 1
711  call getin('iflag_pbl',iflag_pbl_omp)
712!
713!Config Key  = iflag_thermals
714!Config Desc =
715!Config Def  = 0
716!Config Help =
717!
718  iflag_thermals_omp = 0
719  call getin('iflag_thermals',iflag_thermals_omp)
720!
721!
722!Config Key  = nsplit_thermals
723!Config Desc =
724!Config Def  = 1
725!Config Help =
726!
727  nsplit_thermals_omp = 1
728  call getin('nsplit_thermals',nsplit_thermals_omp)
729
730!
731!Config Key  = iflag_coupl
732!Config Desc =
733!Config Def  = 0
734!Config Help =
735!
736  iflag_coupl = 0
737  call getin('iflag_coupl',iflag_coupl_omp)
738
739!
740!Config Key  = iflag_clos
741!Config Desc = 
742!Config Def  = 0
743!Config Help =
744!
745  iflag_clos = 1
746  call getin('iflag_clos',iflag_clos_omp)
747!
748!Config Key  = iflag_cvl_sigd
749!Config Desc = 
750!Config Def  = 0
751!Config Help =
752!
753  iflag_cvl_sigd = 0
754  call getin('iflag_cvl_sigd',iflag_cvl_sigd_omp)
755
756!Config Key  = iflag_wake
757!Config Desc = 
758!Config Def  = 0
759!Config Help =
760!
761  iflag_wake = 0
762  call getin('iflag_wake',iflag_wake_omp)
763
764!
765!Config Key  = lev_histhf
766!Config Desc =
767!Config Def  = 1
768!Config Help =
769!
770  lev_histhf_omp = 1
771  call getin('lev_histhf',lev_histhf_omp)
772
773!
774!Config Key  = lev_histday
775!Config Desc =
776!Config Def  = 1
777!Config Help =
778!
779  lev_histday_omp = 1
780  call getin('lev_histday',lev_histday_omp)
781
782!
783!Config Key  = lev_histmth
784!Config Desc =
785!Config Def  = 2
786!Config Help =
787!
788  lev_histmth_omp = 2
789  call getin('lev_histmth',lev_histmth_omp)
790
791  !
792!Config Key  = type_run
793!Config Desc =
794!Config Def  = 'AMIP'/'CFMIP'  ou 'CLIM'/'ENSP'
795!Config Help =
796!
797  type_run_omp = 'AMIP'
798  call getin('type_run',type_run_omp)
799
800!
801!Config Key  = ok_isccp
802!Config Desc =
803!Config Def  = .true.
804!Config Help =
805!
806! ok_isccp = .true.
807  ok_isccp_omp = .false.
808  call getin('ok_isccp',ok_isccp_omp)
809
810!
811! coordonnees (lonmin_ins, lonmax_ins, latmin_ins, latmax_ins) pour la zone
812! avec sorties instantannees tous les pas de temps de la physique => "histbilKP_ins.nc"
813!
814!Config Key  = lonmin_ins
815!Config Desc = 100. 
816!Config Def  = longitude minimale sorties "bilKP_ins"
817!Config Help =
818!
819   lonmin_ins_omp = 100.
820   call getin('lonmin_ins',lonmin_ins_omp)
821!
822!Config Key  = lonmax_ins
823!Config Desc = 130.
824!Config Def  = longitude maximale sorties "bilKP_ins"
825!Config Help =
826!
827   lonmax_ins = 130.
828   call getin('lonmax_ins',lonmax_ins_omp)
829!
830!Config Key  = latmin_ins
831!Config Desc = -20. 
832!Config Def  = latitude minimale sorties "bilKP_ins"
833!Config Help =
834!
835   latmin_ins_omp = -20.
836   call getin('latmin_ins',latmin_ins_omp)
837!
838!Config Key  = latmax_ins
839!Config Desc = 20.
840!Config Def  = latitude maximale sorties "bilKP_ins"
841!Config Help =
842!
843   latmax_ins_omp = 20.
844   call getin('latmax_ins',latmax_ins_omp)
845!
846!Config Key  = ecrit_hf
847!Config Desc =
848!Config Def  = 1./8. !toutes les 3h
849!Config Help =
850!
851  ecrit_hf_omp = 1./8.
852  call getin('ecrit_hf',ecrit_hf_omp)
853!
854!Config Key  = ecrit_day
855!Config Desc =
856!Config Def  = 1.0 !tous les jours
857!Config Help = nombre de jours pour ecriture fichier histday.nc
858!
859  ecrit_day_omp = 1.0
860  call getin('ecrit_day',ecrit_day_omp)
861!
862!Config Key  = ecrit_mth
863!Config Desc =
864!Config Def  = 30. !tous les 30jours (1 fois par mois)
865!Config Help =
866!
867  ecrit_mth_omp = 30.
868  call getin('ecrit_mth',ecrit_mth_omp)
869!
870!Config Key  = ecrit_tra
871!Config Desc =
872!Config Def  = 30. !tous les 30jours (1 fois par mois)
873!Config Help =
874!
875  ecrit_tra_omp = 30.
876  call getin('ecrit_tra',ecrit_tra_omp)
877!
878!Config Key  = ecrit_reg
879!Config Desc =
880!Config Def  = 0.25  !4 fois par jour
881!Config Help =
882!
883  ecrit_reg_omp = 0.25   !4 fois par jour
884  call getin('ecrit_reg',ecrit_reg_omp)
885!
886!
887!
888!Config Key  = ok_slab_sicOBS
889!Config Desc =
890!Config Def  = .true.
891!Config Help = Pour faire tourner le slab avec fraction
892!              de glace de mer Observee
893!
894  ok_slab_sicOBS_omp = .true.
895  call getin('ok_slab_sicOBS', ok_slab_sicOBS_omp)
896
897
898!$OMP END MASTER
899!$OMP BARRIER
900
901    R_ecc = R_ecc_omp
902    R_peri = R_peri_omp
903    R_incl = R_incl_omp
904    solaire = solaire_omp
905    co2_ppm = co2_ppm_omp
906    RCO2 = RCO2_omp
907    CH4_ppb = CH4_ppb_omp
908    RCH4 = RCH4_omp
909    N2O_ppb = N2O_ppb_omp
910    RN2O = RN2O_omp
911    CFC11_ppt = CFC11_ppt_omp
912    RCFC11 = RCFC11_omp
913    CFC12_ppt = CFC12_ppt_omp
914    RCFC12 = RCFC12_omp
915    epmax = epmax_omp
916    ok_adj_ema = ok_adj_ema_omp
917    iflag_clw = iflag_clw_omp
918    cld_lc_lsc = cld_lc_lsc_omp
919    cld_lc_con = cld_lc_con_omp
920    cld_tau_lsc = cld_tau_lsc_omp
921    cld_tau_con = cld_tau_con_omp
922    ffallv_lsc = ffallv_lsc_omp
923    ffallv_con = ffallv_con_omp
924    coef_eva = coef_eva_omp
925    reevap_ice = reevap_ice_omp
926    iflag_pdf = iflag_pdf_omp
927    solarlong0 = solarlong0_omp
928    qsol0 = qsol0_omp
929    inertie_sol = inertie_sol_omp
930    inertie_ice = inertie_ice_omp
931    inertie_sno = inertie_sno_omp
932    rad_froid = rad_froid_omp
933    rad_chau1 = rad_chau1_omp
934    rad_chau2 = rad_chau2_omp
935    top_height = top_height_omp
936    overlap = overlap_omp
937    cdmmax = cdmmax_omp
938    cdhmax = cdhmax_omp
939    ksta = ksta_omp
940    ksta_ter = ksta_ter_omp
941    ok_kzmin = ok_kzmin_omp
942    fmagic = fmagic_omp
943    iflag_pbl = iflag_pbl_omp
944    lev_histhf = lev_histhf_omp
945    lev_histday = lev_histday_omp
946    lev_histmth = lev_histmth_omp
947
948    ocean = ocean_omp
949    ok_veget = ok_veget_omp
950    ok_newmicro = ok_newmicro_omp
951    ok_journe = ok_journe_omp
952    ok_hf = ok_hf_omp
953    ok_mensuel = ok_mensuel_omp
954    ok_instan = ok_instan_omp
955    freq_ISCCP = freq_ISCCP_omp
956    ecrit_ISCCP = ecrit_ISCCP_omp
957    ok_ade = ok_ade_omp
958    ok_aie = ok_aie_omp
959    bl95_b0 = bl95_b0_omp
960    bl95_b1 = bl95_b1_omp
961    fact_cldcon = fact_cldcon_omp
962    facttemps = facttemps_omp
963    ratqsbas = ratqsbas_omp
964    ratqshaut = ratqshaut_omp
965    iflag_radia = iflag_radia_omp
966    iflag_cldcon = iflag_cldcon_omp
967    iflag_ratqs = iflag_ratqs_omp
968    ip_ebil_phy = ip_ebil_phy_omp
969    iflag_thermals = iflag_thermals_omp
970    nsplit_thermals = nsplit_thermals_omp
971    iflag_coupl = iflag_coupl_omp
972    iflag_clos = iflag_clos_omp
973    iflag_wake = iflag_wake_omp
974    iflag_cvl_sigd = iflag_cvl_sigd_omp
975    type_run = type_run_omp
976    ok_isccp = ok_isccp_omp
977    seuil_inversion=seuil_inversion_omp
978    lonmin_ins = lonmin_ins_omp
979    lonmax_ins = lonmax_ins_omp
980    latmin_ins = latmin_ins_omp
981    latmax_ins = latmax_ins_omp
982    ecrit_hf   = ecrit_hf_omp
983    ecrit_day = ecrit_day_omp
984    ecrit_mth = ecrit_mth_omp
985    ecrit_tra = ecrit_tra_omp
986    ecrit_reg = ecrit_reg_omp
987    ok_slab_sicOBS = ok_slab_sicOBS_omp
988    cvl_corr = cvl_corr_omp
989    ok_lic_melt = ok_lic_melt_omp
990
991!$OMP MASTER
992
993  write(numout,*)' ##############################################'
994  write(numout,*)' Configuration des parametres de la physique: '
995  write(numout,*)' Config ocean = ', ocean
996  write(numout,*)' Config veget = ', ok_veget
997  write(numout,*)' Sortie journaliere = ', ok_journe
998  write(numout,*)' Sortie haute frequence = ', ok_hf
999  write(numout,*)' Sortie mensuelle = ', ok_mensuel
1000  write(numout,*)' Sortie instantanee = ', ok_instan
1001  write(numout,*)' Frequence appel simulateur ISCCP, freq_ISCCP =', freq_ISCCP
1002  write(numout,*)' Frequence appel simulateur ISCCP, ecrit_ISCCP =', ecrit_ISCCP
1003  write(numout,*)' Sortie bilan d''energie, ip_ebil_phy =', ip_ebil_phy
1004  write(numout,*)' Excentricite = ',R_ecc
1005  write(numout,*)' Equinoxe = ',R_peri
1006  write(numout,*)' Inclinaison =',R_incl
1007  write(numout,*)' Constante solaire =',solaire
1008  write(numout,*)' co2_ppm =',co2_ppm
1009  write(numout,*)' RCO2 = ',RCO2
1010  write(numout,*)' CH4_ppb =',CH4_ppb,' RCH4 = ',RCH4
1011  write(numout,*)' N2O_ppb =',N2O_ppb,' RN2O =  ',RN2O
1012  write(numout,*)' CFC11_ppt=',CFC11_ppt,' RCFC11 =  ',RCFC11
1013  write(numout,*)' CFC12_ppt=',CFC12_ppt,' RCFC12 =  ',RCFC12
1014  write(numout,*)' cvl_corr=', cvl_corr
1015  write(numout,*)'ok_lic_melt=', ok_lic_melt
1016  write(numout,*)' epmax = ', epmax
1017  write(numout,*)' ok_adj_ema = ', ok_adj_ema
1018  write(numout,*)' iflag_clw = ', iflag_clw
1019  write(numout,*)' cld_lc_lsc = ', cld_lc_lsc
1020  write(numout,*)' cld_lc_con = ', cld_lc_con
1021  write(numout,*)' cld_tau_lsc = ', cld_tau_lsc
1022  write(numout,*)' cld_tau_con = ', cld_tau_con
1023  write(numout,*)' ffallv_lsc = ', ffallv_lsc
1024  write(numout,*)' ffallv_con = ', ffallv_con
1025  write(numout,*)' coef_eva = ', coef_eva
1026  write(numout,*)' reevap_ice = ', reevap_ice
1027  write(numout,*)' iflag_pdf = ', iflag_pdf
1028  write(numout,*)' iflag_cldcon = ', iflag_cldcon
1029  write(numout,*)' iflag_radia = ', iflag_radia
1030  write(numout,*)' iflag_ratqs = ', iflag_ratqs
1031  write(numout,*)' seuil_inversion = ', seuil_inversion
1032  write(numout,*)' fact_cldcon = ', fact_cldcon
1033  write(numout,*)' facttemps = ', facttemps
1034  write(numout,*)' ok_newmicro = ',ok_newmicro
1035  write(numout,*)' ratqsbas = ',ratqsbas
1036  write(numout,*)' ratqshaut = ',ratqshaut
1037  write(numout,*)' top_height = ',top_height
1038  write(numout,*)' overlap = ',overlap
1039  write(numout,*)' cdmmax = ',cdmmax
1040  write(numout,*)' cdhmax = ',cdhmax
1041  write(numout,*)' ksta = ',ksta
1042  write(numout,*)' ksta_ter = ',ksta_ter
1043  write(numout,*)' ok_kzmin = ',ok_kzmin
1044  write(numout,*)' fmagic = ',fmagic
1045  write(numout,*)' ok_ade = ',ok_ade
1046  write(numout,*)' ok_aie = ',ok_aie
1047  write(numout,*)' bl95_b0 = ',bl95_b0
1048  write(numout,*)' bl95_b1 = ',bl95_b1
1049  write(numout,*)' lev_histhf = ',lev_histhf
1050  write(numout,*)' lev_histday = ',lev_histday
1051  write(numout,*)' lev_histmth = ',lev_histmth
1052  write(numout,*)' iflag_pbl = ', iflag_pbl
1053  write(numout,*)' iflag_thermals = ', iflag_thermals
1054  write(numout,*)' type_run = ',type_run
1055  write(numout,*)' ok_isccp = ',ok_isccp
1056  WRITE(numout,*)' solarlong0 = ', solarlong0
1057  write(numout,*)' qsol0 = ', qsol0
1058  write(numout,*)' inertie_sol = ', inertie_sol
1059  write(numout,*)' inertie_ice = ', inertie_ice
1060  write(numout,*)' inertie_sno = ', inertie_sno
1061
1062  write(numout,*)' lonmin lonmax latmin latmax bilKP_ins =',&
1063 & lonmin_ins, lonmax_ins, latmin_ins, latmax_ins
1064  write(numout,*)' ecrit_ hf, day, mth, reg, tra, ISCCP',&
1065 & ecrit_hf, ecrit_day, ecrit_mth, ecrit_reg, ecrit_tra, ecrit_ISCCP
1066
1067!$OMP END MASTER
1068
1069  return
1070 
1071  end subroutine conf_phys
1072
1073!
1074!#################################################################
1075!
1076
1077   subroutine conf_interface(tau_calv)
1078
1079   use IOIPSL
1080   implicit none
1081
1082! Configuration de l'interace atm/surf
1083!
1084! tau_calv:    temps de relaxation pour la fonte des glaciers
1085
1086  REAL          :: tau_calv
1087  REAL,SAVE     :: tau_calv_omp
1088
1089! Local
1090  integer              :: numout = 6
1091!
1092!Config Key  = tau_calv
1093!Config Desc = temps de relaxation pour fonte des glaciers en jours
1094!Config Def  = 1 an
1095!Config Help =
1096!
1097  tau_calv_omp = 360.*10.
1098!$OMP MASTER
1099  call getin('tau_calv',tau_calv_omp)
1100!$OMP END MASTER
1101!$OMP BARRIER
1102
1103  tau_calv=tau_calv_omp
1104 
1105!$OMP MASTER
1106  write(numout,*)' ##############################################'
1107  WRITE(numout,*)' Configuration de l''interface atm/surfaces  : '
1108  WRITE(numout,*)' tau_calv = ',tau_calv
1109!$OMP END MASTER
1110
1111  return
1112
1113  end subroutine conf_interface
Note: See TracBrowser for help on using the repository browser.