source: LMDZ.3.3/branches/rel-LF/libf/phylmd/conf_phys.F90 @ 480

Last change on this file since 480 was 480, checked in by lmdzadmin, 21 years ago

Possible incoherence entre co2_ppm et RCO2 et probleme de definition des
variables des gaz (definies en double ce qui ne plait pas a getin)
LF

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 10.5 KB
Line 
1!
2! $Header$
3!
4
5  subroutine conf_phys(ocean, ok_veget, ok_journe, ok_mensuel, ok_instan, &
6 &                     fact_cldcon, facttemps,ok_newmicro,iflag_cldcon, &
7 &                     ratqsbas,ratqshaut,if_ebil)
8
9   use IOIPSL
10   implicit none
11
12#include "conema3.h"
13#include "fisrtilp.inc"
14#include "nuage.h"
15#include "YOMCST.inc"
16!IM : on inclut/initialise les taux de CH4, N2O, CFC11 et CFC12
17include "clesphys.inc"
18!
19! Configuration de la "physique" de LMDZ a l'aide de la fonction
20! GETIN de IOIPSL
21!
22! LF 05/2001
23!
24
25!
26! ocean:      type d'ocean (force, slab, couple)
27! ok_veget:   type de modele de vegetation
28! ok_journe:  sorties journalieres
29! ok_mensuel: sorties mensuelles
30! ok_instan:  sorties instantanees
31
32
33
34! Sortie:
35  character (len = 6)  :: ocean
36  logical              :: ok_veget, ok_newmicro
37  logical              :: ok_journe, ok_mensuel, ok_instan
38  real                 :: fact_cldcon, facttemps,ratqsbas,ratqshaut
39  integer              :: iflag_cldcon, if_ebil
40! Local
41  integer              :: numout = 6
42  real                 :: zzz
43
44!
45!
46!
47
48
49!Config Key  = OCEAN
50!Config Desc = Type d'ocean
51!Config Def  = force
52!Config Help = Type d'ocean utilise: force, slab,couple
53!
54  ocean = 'force '
55  call getin('OCEAN', ocean)
56!
57!Config Key  = VEGET
58!Config Desc = Type de modele de vegetation
59!Config Def  = .false.
60!Config Help = Type de modele de vegetation utilise
61!
62  ok_veget = .false.
63  call getin('VEGET', ok_veget)
64!
65!Config Key  = OK_journe
66!Config Desc = Pour des sorties journalieres
67!Config Def  = .false.
68!Config Help = Pour creer le fichier histday contenant les sorties
69!              journalieres
70!
71  ok_journe = .false.
72  call getin('OK_journe', ok_journe)
73!
74!Config Key  = OK_mensuel
75!Config Desc = Pour des sorties mensuelles
76!Config Def  = .true.
77!Config Help = Pour creer le fichier histmth contenant les sorties
78!              mensuelles
79!
80  ok_mensuel = .true.
81  call getin('OK_mensuel', ok_mensuel)
82!
83!Config Key  = OK_instan
84!Config Desc = Pour des sorties instantanees
85!Config Def  = .false.
86!Config Help = Pour creer le fichier histins contenant les sorties
87!              instantanees
88!
89  ok_instan = .false.
90  call getin('OK_instan', ok_instan)
91!
92!Config Key  = if_ebil
93!Config Desc = Niveau de sortie pour les diags bilan d'energie
94!Config Def  = 0
95!Config Help =
96!               
97!
98  if_ebil = 0
99  call getin('if_ebil', if_ebil)
100!!
101!! Constante solaire & Parametres orbitaux & taux gaz effet de serre BEG
102!!
103!Config Key  = R_ecc
104!Config Desc = Excentricite
105!Config Def  = 0.016715
106!Config Help =
107!               
108!valeur AMIP II
109  R_ecc = 0.016715
110  call getin('R_ecc', R_ecc)
111!!
112!Config Key  = R_peri
113!Config Desc = Equinoxe
114!Config Def  =
115!Config Help =
116!               
117!
118!valeur AMIP II
119  R_peri = 102.7
120  call getin('R_peri', R_peri)
121!!
122!Config Key  = R_incl
123!Config Desc = Inclinaison
124!Config Def  =
125!Config Help =
126!               
127!
128!valeur AMIP II
129  R_incl = 23.441
130  call getin('R_incl', R_incl)
131!!
132!Config Key  = solaire
133!Config Desc = Constante solaire en W/m2
134!Config Def  = 1365.
135!Config Help =
136!               
137!
138!valeur AMIP II
139  solaire = 1365.
140  call getin('solaire', solaire)
141!!
142!Config Key  = co2_ppm
143!Config Desc = concentration du gaz carbonique en ppmv
144!Config Def  = 348.
145!Config Help =
146!               
147!
148!valeur AMIP II
149  co2_ppm = 348.
150  call getin('co2_ppm', co2_ppm)
151!!
152!Config Key  = RCO2
153!Config Desc = Concentration du CO2
154!Config Def  = co2_ppm * 1.0e-06  * 44.011/28.97
155!Config Def  = 348. * 1.0e-06  * 44.011/28.97
156!Config Help =
157!               
158! RCO2 = 5.286789092164308E-04
159!ancienne valeur
160  RCO2 = co2_ppm * 1.0e-06  * 44.011/28.97 ! pour co2_ppm=348.
161
162!!  call getin('RCO2', RCO2)
163!!
164!Config Key  = RCH4
165!Config Desc = Concentration du CH4
166!Config Def  = 1.65E-06* 16.043/28.97
167!Config Help =
168!               
169!
170!valeur AMIP II
171!OK  RCH4 = 1.65E-06* 16.043/28.97
172! RCH4 = 9.137366240938903E-07
173!
174!ancienne valeur
175! RCH4 = 1.72E-06* 16.043/28.97
176!OK call getin('RCH4', RCH4)
177  zzz = 1650.
178  call getin('CH4_ppb', zzz)
179  CH4_ppb = zzz
180  RCH4 = CH4_ppb * 1.0E-09 * 16.043/28.97
181!!
182!Config Key  = RN2O
183!Config Desc = Concentration du N2O
184!Config Def  = 306.E-09* 44.013/28.97
185!Config Help =
186!               
187!
188!valeur AMIP II
189!OK  RN2O = 306.E-09* 44.013/28.97
190! RN2O = 4.648939592682085E-07
191!
192!ancienne valeur
193! RN2O = 310.E-09* 44.013/28.97
194!OK  call getin('RN2O', RN2O)
195  zzz=306.
196  call getin('N2O_ppb', zzz)
197  N2O_ppb = zzz
198  RN2O = N2O_ppb * 1.0E-09 * 44.013/28.97
199!!
200!Config Key  = RCFC11
201!Config Desc = Concentration du CFC11
202!Config Def  = 280.E-12* 137.3686/28.97
203!Config Help =
204!               
205!
206!OK RCFC11 = 280.E-12* 137.3686/28.97
207  zzz = 280.
208  call getin('CFC11_ppt',zzz)
209  CFC11_ppt = zzz
210  RCFC11=CFC11_ppt* 1.0E-12 * 137.3686/28.97
211! RCFC11 = 1.327690990680013E-09
212!OK call getin('RCFC11', RCFC11)
213!!
214!Config Key  = RCFC12
215!Config Desc = Concentration du CFC12
216!Config Def  = 484.E-12* 120.9140/28.97
217!Config Help =
218!               
219!
220!OK RCFC12 = 484.E-12* 120.9140/28.97
221  zzz = 484.
222  call getin('CFC12_ppt',zzz)
223  CFC12_ppt = zzz
224  RCFC12 = CFC12_ppt * 1.0E-12 * 120.9140/28.97
225! RCFC12 = 2.020102726958923E-09
226!OK call getin('RCFC12', RCFC12)
227!!
228!! Constante solaire & Parametres orbitaux & taux gaz effet de serre END
229!!
230!! KE
231!
232!Config Key  = epmax
233!Config Desc = Efficacite precip
234!Config Def  = 0.993
235!Config Help =
236!
237  epmax = .993
238  call getin('epmax', epmax)
239!
240!Config Key  = ok_adj_ema
241!Config Desc = 
242!Config Def  = false
243!Config Help =
244!
245  ok_adj_ema = .false.
246  call getin('ok_adj_ema',ok_adj_ema)
247!
248!Config Key  = iflag_clw
249!Config Desc = 
250!Config Def  = 0
251!Config Help =
252!
253  iflag_clw = 0
254  call getin('iflag_clw',iflag_clw)
255!
256!Config Key  = cld_lc_lsc
257!Config Desc = 
258!Config Def  = 2.6e-4
259!Config Help =
260!
261  cld_lc_lsc = 2.6e-4
262  call getin('cld_lc_lsc',cld_lc_lsc)
263!
264!Config Key  = cld_lc_con
265!Config Desc = 
266!Config Def  = 2.6e-4
267!Config Help =
268!
269  cld_lc_con = 2.6e-4
270  call getin('cld_lc_con',cld_lc_con)
271!
272!Config Key  = cld_tau_lsc
273!Config Desc = 
274!Config Def  = 3600.
275!Config Help =
276!
277  cld_tau_lsc = 3600.
278  call getin('cld_tau_lsc',cld_tau_lsc)
279!
280!Config Key  = cld_tau_con
281!Config Desc = 
282!Config Def  = 3600.
283!Config Help =
284!
285  cld_tau_con = 3600.
286  call getin('cld_tau_con',cld_tau_con)
287!
288!Config Key  = ffallv_lsc
289!Config Desc = 
290!Config Def  = 1.
291!Config Help =
292!
293  ffallv_lsc = 1.
294  call getin('ffallv_lsc',ffallv_lsc)
295!
296!Config Key  = ffallv_con
297!Config Desc = 
298!Config Def  = 1.
299!Config Help =
300!
301  ffallv_con = 1.
302  call getin('ffallv_con',ffallv_con)
303!
304!Config Key  = coef_eva
305!Config Desc = 
306!Config Def  = 2.e-5
307!Config Help =
308!
309  coef_eva = 2.e-5
310  call getin('coef_eva',coef_eva)
311!
312!Config Key  = reevap_ice
313!Config Desc = 
314!Config Def  = .false.
315!Config Help =
316!
317  reevap_ice = .false.
318  call getin('reevap_ice',reevap_ice)
319!
320!Config Key  = iflag_cldcon
321!Config Desc = 
322!Config Def  = 1
323!Config Help =
324!
325  iflag_cldcon = 1
326  call getin('iflag_cldcon',iflag_cldcon)
327
328!
329!Config Key  = iflag_pdf
330!Config Desc = 
331!Config Def  = 0
332!Config Help =
333!
334  iflag_pdf = 0
335  call getin('iflag_pdf',iflag_pdf)
336!
337!Config Key  = fact_cldcon
338!Config Desc = 
339!Config Def  = 0.375
340!Config Help =
341!
342  fact_cldcon = 0.375
343  call getin('fact_cldcon',fact_cldcon)
344
345!
346!Config Key  = facttemps
347!Config Desc = 
348!Config Def  = 1.e-4
349!Config Help =
350!
351  facttemps = 1.e-4
352  call getin('facttemps',facttemps)
353
354!
355!Config Key  = ok_newmicro
356!Config Desc = 
357!Config Def  = .true.
358!Config Help =
359!
360  ok_newmicro = .true.
361  call getin('ok_newmicro',ok_newmicro)
362!
363!Config Key  = ratqsbas
364!Config Desc = 
365!Config Def  = 0.01
366!Config Help =
367!
368  ratqsbas = 0.01
369  call getin('ratqsbas',ratqsbas)
370!
371!Config Key  = ratqshaut
372!Config Desc = 
373!Config Def  = 0.3
374!Config Help =
375!
376  ratqshaut = 0.3
377  call getin('ratqshaut',ratqshaut)
378
379!
380!Config Key  = rad_froid
381!Config Desc = 
382!Config Def  = 35.0
383!Config Help =
384!
385  rad_froid = 35.0
386  call getin('rad_froid',rad_froid)
387
388!
389!Config Key  = rad_chau1
390!Config Desc = 
391!Config Def  = 13.0
392!Config Help =
393!
394  rad_chau1 = 13.0
395  call getin('rad_chau1',rad_chau1)
396
397!
398!Config Key  = rad_chau2
399!Config Desc = 
400!Config Def  = 9.0
401!Config Help =
402!
403  rad_chau2 = 9.0
404  call getin('rad_chau2',rad_chau2)
405
406!
407!Config Key  = top_height
408!Config Desc =
409!Config Def  = 3
410!Config Help =
411!
412  top_height = 3
413  call getin('top_height',top_height)
414
415!
416!Config Key  = overlap
417!Config Desc =
418!Config Def  = 3
419!Config Help =
420!
421  overlap = 3
422  call getin('overlap',overlap)
423
424
425!IM
426!
427!Config Key  = cdmmax
428!Config Desc =
429!Config Def  = 1.3E-3
430!Config Help =
431!
432  cdmmax = 1.3E-3
433  call getin('cdmmax',cdmmax)
434
435!
436!Config Key  = cdhmax
437!Config Desc =
438!Config Def  = 1.1E-3
439!Config Help =
440!
441  cdhmax = 1.1E-3
442  call getin('cdhmax',cdhmax)
443
444!
445!Config Key  =
446!Config Desc = 
447!Config Def  =
448!Config Help =
449!
450!   =
451!  call getin('',)
452!
453!
454!
455!
456
457  write(numout,*)' ##############################################'
458  write(numout,*)' Configuration des parametres de la physique: '
459  write(numout,*)' Config ocean = ', ocean
460  write(numout,*)' Config veget = ', ok_veget
461  write(numout,*)' Sortie journaliere = ', ok_journe
462  write(numout,*)' Sortie mensuelle = ', ok_mensuel
463  write(numout,*)' Sortie instantanee = ', ok_instan
464  write(numout,*)' Sortie bilan d''energie, if_ebil =', if_ebil
465!IM constantes physiques BEG
466  write(numout,*)' Excentricite = ',R_ecc
467  write(numout,*)' Equinoxe = ',R_peri
468  write(numout,*)' Inclinaison =',R_incl
469  write(numout,*)' Constante solaire =',solaire
470  write(numout,*)' co2_ppm =',co2_ppm
471  write(numout,*)' RCO2 = ',RCO2
472  write(numout,*)' CH4_ppb =',CH4_ppb,' RCH4 = ',RCH4
473  write(numout,*)' N2O_ppb =',N2O_ppb,' RN2O =  ',RN2O
474  write(numout,*)' CFC11_ppt=',CFC11_ppt,' RCFC11 =  ',RCFC11
475  write(numout,*)' CFC12_ppt=',CFC12_ppt,' RCFC12 =  ',RCFC12
476!IM constantes physiques END
477  write(numout,*)' epmax = ', epmax
478  write(numout,*)' ok_adj_ema = ', ok_adj_ema
479  write(numout,*)' iflag_clw = ', iflag_clw
480  write(numout,*)' cld_lc_lsc = ', cld_lc_lsc
481  write(numout,*)' cld_lc_con = ', cld_lc_con
482  write(numout,*)' cld_tau_lsc = ', cld_tau_lsc
483  write(numout,*)' cld_tau_con = ', cld_tau_con
484  write(numout,*)' ffallv_lsc = ', ffallv_lsc
485  write(numout,*)' ffallv_con = ', ffallv_con
486  write(numout,*)' coef_eva = ', coef_eva
487  write(numout,*)' reevap_ice = ', reevap_ice
488  write(numout,*)' iflag_pdf = ', iflag_pdf
489  write(numout,*)' iflag_cldcon = ', iflag_cldcon
490  write(numout,*)' fact_cldcon = ', fact_cldcon
491  write(numout,*)' facttemps = ', facttemps
492  write(numout,*)' ok_newmicro = ',ok_newmicro
493  write(numout,*)' ratqsbas = ',ratqsbas
494  write(numout,*)' ratqshaut = ',ratqshaut
495  write(numout,*)' top_height = ',top_height
496  write(numout,*)' overlap = ',overlap
497
498  return
499
500  end subroutine conf_phys
501
Note: See TracBrowser for help on using the repository browser.