source: trunk/LMDZ.TITAN/libf/phytitan/ini_histday.h @ 324

Last change on this file since 324 was 306, checked in by slebonnois, 14 years ago

SLebonnois: correction de bugs dans la physique Titan:

  • effg.F : Z doit etre en km, donc conversion
  • optc*_1pt_2.F : On utilise cfffv11 et plus optfrac Du coup, les fichiers input testag* ne sont plus necessaires.
  • phytrac.F : passage de la tendance aerosols en intensif dans tous les cas


File size: 13.2 KB
Line 
1      IF (ok_journe) THEN
2c
3         zsto = dtime
4         zout = dtime * FLOAT(ecrit_day)
5c zsto1: pour des flux radiatifs calcules tous les radpas appels physiq
6         zsto1= dtime * FLOAT(radpas)
7c
8         idayref = day_ref
9         CALL ymds2ju(annee_ref, 1, idayref, zero, zjulian)
10c
11         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlond,zx_lon)
12         DO i = 1, iim
13            zx_lon(i,1) = rlond(i+1)
14            zx_lon(i,jjmp1) = rlond(i+1)
15         ENDDO
16         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlatd,zx_lat)
17         CALL histbeg("histday", iim,zx_lon(:,1), jjmp1,zx_lat(1,:),
18     .                 1,iim,1,jjmp1, itau_phy, zjulian, zsto, 
19     .                 nhori, nid_day)
20         write(*,*)'Journee ', itau_phy, zjulian
21         CALL histvert(nid_day, "presnivs", "Vertical levels", "mb",
22     .                 klev, presnivs, nvert)
23
24c-------------------------------------------------------
25      IF(lev_histday.GE.1) THEN
26c
27ccccccccccccc 2D fields, invariables
28c
29         CALL histdef(nid_day, "phis", "Surface geop. height", "-",
30     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
31     .                "once",  zsto,zout)
32c
33         CALL histdef(nid_day, "aire", "Grid area", "-",
34     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
35     .                "once",  zsto,zout)
36c
37ccccccc axe Ls
38         CALL histdef(nid_day, "ls", "Solar longitude", "degrees",
39     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
40     .                "ave(X)", zsto,zout)
41c
42ccccccccccccc 2D fields, variables
43c
44         CALL histdef(nid_day, "tsol", "Surface Temperature", "K",
45     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
46     .                "ave(X)", zsto,zout)
47c
48         CALL histdef(nid_day, "psol", "Surface Pressure", "Pa",
49     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
50     .                "ave(X)", zsto,zout)
51c
52c        CALL histdef(nid_day, "ue", "Zonal energy transport", "-",
53c    .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
54c    .                "ave(X)", zsto,zout)
55c
56c        CALL histdef(nid_day, "ve", "Merid energy transport", "-",
57c     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
58c     .                "ave(X)", zsto,zout)
59c
60      ENDIF !lev_histday.GE.1
61c
62c-------------------------------------------------------
63      IF(lev_histday.GE.2) THEN
64c
65ccccccccccccc 3D fields, basics
66c
67         CALL histdef(nid_day, "temp", "Air temperature", "K",
68     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
69     .                "ave(X)", zsto,zout)
70c
71         CALL histdef(nid_day, "pres", "Air pressure", "Pa",
72     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
73     .                "ave(X)", zsto,zout)
74c
75         CALL histdef(nid_day, "geop", "Geopotential height", "m",
76     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
77     .                "ave(X)", zsto,zout)
78c
79         CALL histdef(nid_day, "vitu", "Zonal wind", "m/s",
80     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
81     .                "ave(X)", zsto,zout)
82c
83         CALL histdef(nid_day, "vitv", "Meridional wind", "m/s",
84     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
85     .                "ave(X)", zsto,zout)
86c
87         CALL histdef(nid_day, "vitw", "Vertical wind", "Pa/s",
88     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
89     .                "ave(X)", zsto,zout)
90c
91         CALL histdef(nid_day, "tops", "Solar rad. at TOA", "W/m2",
92     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
93     .                "ave(X)", zsto1,zout)
94c
95         CALL histdef(nid_day, "dudyn", "Dynamics dU", "m/s2",
96     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
97     .                "ave(X)", zsto,zout)
98c
99         CALL histdef(nid_day, "duvdf", "Boundary-layer dU", "m/s2",
100     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
101     .                "ave(X)", zsto,zout)
102c
103cccccccccccccccccc  Tracers
104c
105         if (iflag_trac.eq.1) THEN
106          if (microfi.ge.1) then
107c           DO iq=1,nmicro
108c             CALL histdef(nid_day, tname(iq), ttext(iq), "n/m2",
109c     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
110c     .                "ave(X)", zsto,zout)
111c           ENDDO
112             CALL histdef(nid_day, "qaer","nb tot aer" , "n/m2",
113     .                    iim,jjmp1,nhori, klev,1,klev,nvert, 32,
114     .                    "ave(X)", zsto,zout)
115
116             if (clouds.eq.1) then
117
118             CALL histdef(nid_day, "qnoy","nb tot noy" , "n/m2",
119     .                    iim,jjmp1,nhori, klev,1,klev,nvert, 32,
120     .                    "ave(X)", zsto,zout)
121             CALL histdef(nid_day, "qgl1","V tot gl1" , "m3/m2",
122     .                    iim,jjmp1,nhori, klev,1,klev,nvert, 32,
123     .                    "ave(X)", zsto,zout)
124             CALL histdef(nid_day, "qgl2","V tot gl2" , "m3/m2",
125     .                    iim,jjmp1,nhori, klev,1,klev,nvert, 32,
126     .                    "ave(X)", zsto,zout)
127             CALL histdef(nid_day, "qgl3","V tot gl3" , "m3/m2",
128     .                    iim,jjmp1,nhori, klev,1,klev,nvert, 32,
129     .                    "ave(X)", zsto,zout)
130c--------------
131c ----- SATURATION ESP NUAGES
132               CALL histdef(nid_day,"ch4sat", "saturation CH4", "--",
133     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
134     .                "ave(X)", zsto,zout)
135               CALL histdef(nid_day,"c2h6sat", "saturation C2H6", "--",
136     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
137     .                "ave(X)", zsto,zout)
138               CALL histdef(nid_day,"c2h2sat", "saturation C2H2", "--",
139     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
140     .                "ave(X)", zsto,zout)
141c --------------
142c ----- RESERVOIR DE SURFACE
143               CALL histdef(nid_day, "reserv", "Reservoir surface","m",
144     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
145     .                "ave(X)", zsto,zout)
146c --------------
147c ----- PRECIPITATIONS (precipitations cumulatives)
148               CALL histdef(nid_day,"prech4","Precip CH4","m",
149     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
150     .                "ave(X)", zsto,zout)
151               CALL histdef(nid_day,"prec2h6","Precip C2H6",
152     .                "m",iim,jjmp1,nhori, 1,1,1, -99, 32,
153     .                "ave(X)", zsto,zout)
154               CALL histdef(nid_day,"prec2h2","Precip C2H2",
155     .                "m",iim,jjmp1,nhori, 1,1,1, -99, 32,
156     .                "ave(X)", zsto,zout)
157c --------------
158c ----- FLUX GLACE
159               CALL histdef(nid_day,"flxgl1", "flux gl CH4",
160     .              "kg/m2/s",iim,jjmp1,nhori, klev,1,klev,nvert, 32,
161     .              "ave(X)", zsto,zout)
162               CALL histdef(nid_day,"flxgl2", "flux gl C2H6",
163     .              "kg/m2/s",iim,jjmp1,nhori, klev,1,klev,nvert, 32,
164     .              "ave(X)", zsto,zout)
165               CALL histdef(nid_day,"flxgl3", "flux gl C2H2",
166     .              "kg/m2/s",iim,jjmp1,nhori, klev,1,klev,nvert, 32,
167     .              "ave(X)", zsto,zout)
168c --------------
169c ----- RAYON DES GOUTTES
170               CALL histdef(nid_day,"rcldbar", "rayon moyen goutte",
171     .                "m",iim,jjmp1,nhori, klev,1,klev,nvert, 32,
172     .                "ave(X)", zsto,zout)
173             endif
174          endif
175c --------------
176c ----- TRACEURS CHIMIQUES
177          if (nmicro.lt.nqmax) then
178           DO iq=nmicro+1,nqmax
179         CALL histdef(nid_day, tname(iq), ttext(iq), "ppm",
180     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
181     .                "ave(X)", zsto,zout)
182           ENDDO
183          endif
184         endif
185c
186      ENDIF !lev_histday.GE.2
187c
188c-------------------------------------------------------
189      IF(lev_histday.GE.3) THEN
190c
191cccccccccccccccccc  Radiative transfer
192c
193c 2D
194c
195         CALL histdef(nid_day, "topl", "IR rad. at TOA", "W/m2",
196     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
197     .                "ave(X)", zsto1,zout)
198c
199         CALL histdef(nid_day, "sols", "Solar rad. at surf.", "W/m2",
200     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
201     .                "ave(X)", zsto1,zout)
202c
203         CALL histdef(nid_day, "soll", "IR rad. at surface", "W/m2",
204     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
205     .                "ave(X)", zsto1,zout)
206c
207c 3D
208c
209         CALL histdef(nid_day, "SWnet", "Net SW flux","W/m2",
210     .                iim,jjmp1,nhori, klev,1,klev,nvert,
211     .                32, "ave(X)", zsto1,zout)
212c
213         CALL histdef(nid_day, "LWnet", "Net LW flux","W/m2",
214     .                iim,jjmp1,nhori, klev,1,klev,nvert,
215     .                32, "ave(X)", zsto1,zout)
216c
217c --------------
218c ----- OPACITE BRUME
219         DO k=7,NSPECV,10
220           write(str1,'(i2.2)') k
221         CALL histdef(nid_day,"thv"//str1,"Haze Opa Vis",
222     .                "--",iim,jjmp1,nhori,klev,1,klev,nvert,32,
223     .                "ave(X)",zsto1,zout)
224         ENDDO
225c
226         DO k=8,NSPECI,10
227           write(str1,'(i2.2)') k
228         CALL histdef(nid_day,"thi"//str1,"Haze Opa IR",
229     .                "--",iim,jjmp1,nhori,klev,1,klev,nvert,32,
230     .                "ave(X)",zsto1,zout)
231         ENDDO
232c
233c --------------
234c ----- EXTINCTION BRUME
235         DO k=7,NSPECV,10
236           write(str1,'(i2.2)') k
237         CALL histdef(nid_day,"khv"//str1,"Haze ext Vis ",
238     .                "m-1",iim,jjmp1,nhori,klev,1,klev,nvert,32,
239     .                "ave(X)",zsto1,zout)
240         ENDDO
241c
242         DO k=8,NSPECI,10
243           write(str1,'(i2.2)') k
244         CALL histdef(nid_day,"khi"//str1,"Haze ext IR ",
245     .                "m-1",iim,jjmp1,nhori,klev,1,klev,nvert,32,
246     .                "ave(X)",zsto1,zout)
247         ENDDO
248c
249c --------------
250c ----- OPACITE GAZ
251         DO k=7,NSPECV,10
252           write(str1,'(i2.2)') k
253         CALL histdef(nid_day,"tgv"//str1,"Gas Opa Vis",
254     .                "--",iim,jjmp1,nhori,klev,1,klev,nvert,32,
255     .                "ave(X)",zsto1,zout)
256         ENDDO
257c
258         DO k=8,NSPECI,10
259           write(str1,'(i2.2)') k
260         CALL histdef(nid_day,"tgi"//str1,"Gas Opa IR",
261     .                "--",iim,jjmp1,nhori,klev,1,klev,nvert,32,
262     .                "ave(X)",zsto1,zout)
263         ENDDO
264c
265c --------------
266c ----- EXTINCTION GAZ
267         DO k=7,NSPECV,10
268           write(str1,'(i2.2)') k
269         CALL histdef(nid_day,"kgv"//str1,"Gas ext Vis ",
270     .                "m-1",iim,jjmp1,nhori,klev,1,klev,nvert,32,
271     .                "ave(X)",zsto1,zout)
272         ENDDO
273c
274         DO k=8,NSPECI,10
275           write(str1,'(i2.2)') k
276         CALL histdef(nid_day,"kgi"//str1,"Gas ext IR ",
277     .                "m-1",iim,jjmp1,nhori,klev,1,klev,nvert,32,
278     .                "ave(X)",zsto1,zout)
279         ENDDO
280c
281c --------------
282c ----- OPACITE NUAGES
283         if (clouds.eq.1) then
284           CALL histdef(nid_day,"tcld","Cld Opa proxy",
285     .                "--",iim,jjmp1,nhori,klev,1,klev,nvert,32,
286     .                "ave(X)",zsto,zout)
287c
288c --------------
289c ----- EXTINCTION NUAGES
290           CALL histdef(nid_day,"kcld","Cld Ext proxy",
291     .                "m-1",iim,jjmp1,nhori,klev,1,klev,nvert,32,
292     .                "ave(X)",zsto,zout)
293         endif
294c
295      ENDIF !lev_histday.GE.3
296c
297c-------------------------------------------------------
298      IF(lev_histday.GE.4) THEN
299c
300         CALL histdef(nid_day, "dtdyn", "Dynamics dT", "K/s",
301     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
302     .                "ave(X)", zsto,zout)
303c
304         CALL histdef(nid_day, "dtphy", "Physics dT", "K/s",
305     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
306     .                "ave(X)", zsto,zout)
307c
308         CALL histdef(nid_day, "dtvdf", "Boundary-layer dT", "K/s",
309     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
310     .                "ave(X)", zsto,zout)
311c
312         CALL histdef(nid_day, "dtajs", "Dry adjust. dT", "K/s",
313     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
314     .                "ave(X)", zsto,zout)
315c
316         CALL histdef(nid_day, "dtswr", "SW radiation dT", "K/s",
317     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
318     .                "ave(X)", zsto,zout)
319c
320         CALL histdef(nid_day, "dtlwr", "LW radiation dT", "K/s",
321     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
322     .                "ave(X)", zsto,zout)
323c
324c        CALL histdef(nid_day, "dtec", "Cinetic dissip dT", "K/s",
325c    .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
326c    .                "ave(X)", zsto,zout)
327c
328      ENDIF !lev_histday.GE.4
329c
330c-------------------------------------------------------
331      IF(lev_histday.GE.5) THEN
332c
333c
334c        call histdef(nid_day, "taux", 
335c    $         "Zonal wind stress", "Pa", 
336c    $         iim,jjmp1,nhori, 1,1,1, -99, 32,
337c    $         "ave(X)", zsto,zout)
338c
339c        call histdef(nid_day, "tauy", 
340c    $         "Meridional xind stress", "Pa", 
341c    $         iim,jjmp1,nhori, 1,1,1, -99, 32,
342c    $         "ave(X)", zsto,zout)
343c
344c        CALL histdef(nid_day, "cdrm", "Momentum drag coef.", "-",
345c    .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
346c    .                "ave(X)", zsto,zout)
347c
348c        CALL histdef(nid_day, "cdrh", "Heat drag coef.", "-",
349c    .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
350c    .                "ave(X)", zsto,zout)
351c
352      ENDIF !lev_histday.GE.5
353c-------------------------------------------------------
354c
355         CALL histend(nid_day)
356c
357         ndex2d = 0
358         ndex3d = 0
359c
360      ENDIF ! fin de test sur ok_journe
Note: See TracBrowser for help on using the repository browser.