source: LMDZ4/trunk/libf/phylmd/ini_histmth.h @ 684

Last change on this file since 684 was 684, checked in by lmdzadmin, 18 years ago

Ajout nouveaux flags (ip_ebil_phy, ok_slab_sicOBS) ds physiq.def +
Lecture freq. ecriture en nombre de jours
IM

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 69.2 KB
Line 
1c
2c $Header$
3c
4      IF (ok_mensuel) THEN
5c
6       zstophy = dtime
7       zstomth = ecrit_mth                       !valeurs mensuelles "instantannees"
8       zstorad = dtime * FLOAT(radpas)    !variables stockees toutes les 2h
9       zstohf = ecrit_hf                         !variables stockees toutes les 6h
10       zout = ecrit_mth                          !frequence des sorties : 1 val. par mois
11c
12         idayref = day_ref
13         CALL ymds2ju(annee_ref, 1, idayref, 0.0, zjulian)
14c
15         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlon,zx_lon)
16         DO i = 1, iim
17            zx_lon(i,1) = rlon(i+1)
18            zx_lon(i,jjmp1) = rlon(i+1)
19         ENDDO
20c
21cIM cf. AM 081204 BEG region
22c         imin_histmth=1
23c         imax_histmth=iim
24c         jmin_histmth=1
25c         jmax_histmth=jjmp1
26c         do i=1,iim-1
27c            if(zx_lon(i,1).lt.lonmin_histmth) imin_histmth=i
28c            if(zx_lon(i,1).le.lonmax_histmth) imax_histmth=i+1
29c         enddo
30cIM 220704 BAD??       do j=1,jjmp1-1
31c         do j=1,jjmp1
32c            if(zx_lat(1,j).ge.latmin_histmth) jmax_histmth=j
33c            if(zx_lat(1,j).gt.latmax_histmth) jmin_histmth=j
34c         enddo
35c
36c         print*,'On stoke le fichier instantanne sur, ',
37c     s   imin_histmth,imax_histmth,jmin_histmth,jmax_histmth
38c         print*,'On stoke le fichier instantanne sur, ',
39c     s   zx_lon(imin_histmth,1),zx_lon(imax_histmth,1),
40c     s   zx_lat(1,jmin_histmth),zx_lat(1,jmax_histmth)
41cIM cf. AM 081204 END region
42c
43         DO ll=1,klev
44            znivsig(ll)=float(ll)
45         ENDDO
46         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlat,zx_lat)
47         CALL histbeg("histmth.nc", iim,zx_lon(:,1), jjmp1,zx_lat(1,:),
48     .                 1,iim,1,jjmp1, itau_phy, zjulian, dtime, 
49     .                 nhori, nid_mth)
50c
51cIM cf. AM 081204 BEG region
52c         CALL histbeg("histmth.nc", iim,zx_lon(:,1), jjmp1,zx_lat(1,:),
53c     .                 imin_histmth,imax_histmth-imin_histmth+1
54c     .                 ,jmin_histmth,jmax_histmth-jmin_histmth+1
55c     .                 , itau_phy, zjulian, dtime,
56c     .                 nhori, nid_mth)
57cIM 081204 END
58c
59         CALL histvert(nid_mth, "presnivs", "Vertical levels", "mb",
60     .                 klev, presnivs/100., nvert)
61c
62      IF(type_run.EQ."CLIM".OR.type_run.EQ."ENSP") THEN
63c
64      IF(lev_histmth.GE.1) THEN
65c
66         CALL histdef(nid_mth, "phis", 
67     .                "Surface geop. height", "m2/s2",
68     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
69     .                "once",  zstophy,zout)
70c
71         CALL histdef(nid_mth, "aire", "Grid area", "-",
72     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
73     .                "once",  zstophy,zout)
74c
75         CALL histdef(nid_mth, "pourc_"//clnsurf(is_ter),
76     .         "% "//clnsurf(is_ter), "%", 
77     .         iim,jjmp1,nhori, 1,1,1, -99, 32,
78     .         "once", zstophy,zout)
79c
80         CALL histdef(nid_mth, "fract_"//clnsurf(is_ter),
81     .         "Fraction "//clnsurf(is_ter), "1", 
82     .         iim,jjmp1,nhori, 1,1,1, -99, 32,
83     .         "once", zstophy,zout)
84c
85c Champs 2D:
86c
87         CALL histdef(nid_mth, "slp", "Sea Level Pressure", "Pa",
88     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
89     .                "ave(X)", zstophy,zout)
90c
91         CALL histdef(nid_mth, "tsol", "Surface Temperature", "K",
92     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
93     .                "ave(X)", zstophy,zout)
94c
95         CALL histdef(nid_mth, "t2m", "Temperature 2m", "K",
96     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
97     .                "ave(X)", zstophy,zout)
98c
99c ENSEMBLES BEG
100         CALL histdef(nid_mth, "t2m_min", "Temp. 2m min.",
101     .                "K",
102     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
103     .                t2mincels, zstophy,zout)
104c
105         CALL histdef(nid_mth, "t2m_max", "Temp. 2m max.",
106     .                "K",
107     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
108     .                t2maxcels, zstophy,zout)
109c
110c        CALL histdef(nid_mth, "tsoil", "Sfce soil Temperature",
111c    .                "K",
112c    .                iim,jjmp1,nhori, 1,1,1, -99, 32,
113c    .                "ave(X)", zstophy,zout)
114c
115         CALL histdef(nid_mth, "wind10m","10-m wind speed","m/s",
116     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
117     .                "ave(X)", zstophy,zout)
118c
119         CALL histdef(nid_mth, "sicf", "Sea-ice fraction", "-",
120     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
121     .                "ave(X)", zstophy,zout)
122c
123c ENSEMBLES END
124         CALL histdef(nid_mth, "q2m", "Specific humidity 2m", "kg/kg",
125     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
126     .                "ave(X)", zstophy,zout)
127c
128         CALL histdef(nid_mth, "u10m", "Vent zonal 10m", "m/s",
129     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
130     .                "ave(X)", zstophy,zout)
131c
132         CALL histdef(nid_mth, "v10m", "Vent meridien 10m", "m/s",
133     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
134     .                "ave(X)", zstophy,zout)
135c
136         CALL histdef(nid_mth, "psol", "Surface Pressure", "Pa",
137     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
138     .                "ave(X)", zstophy,zout)
139c
140         CALL histdef(nid_mth, "qsurf", "Surface Air humidity", "kg/kg",
141     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
142     .                "ave(X)", zstophy,zout)
143c
144      if (.not. ok_veget) then
145         CALL histdef(nid_mth, "qsol", "Soil watter content", "mm",
146     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
147     .                "ave(X)", zstophy,zout)
148      endif
149c
150         CALL histdef(nid_mth, "ndayrain", 
151     .                "Number of day with rain (liq+sol)", "-",
152     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
153     .                "inst(X)", zstomth,zout)
154c
155         CALL histdef(nid_mth, "precip", "Precipitation Totale liq+sol", 
156     .                "kg/(s*m2)",
157     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
158     .                "ave(X)", zstophy,zout)
159c
160         CALL histdef(nid_mth, "plul", "Large-scale Precip.", 
161     .   "kg/(s*m2)",
162     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
163     .                "ave(X)", zstophy,zout)
164c
165         CALL histdef(nid_mth, "pluc", "Convective Precip.", 
166     .   "kg/(s*m2)",
167     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
168     .                "ave(X)", zstophy,zout)
169c
170         CALL histdef(nid_mth, "snow", "Snow fall", "kg/(s*m2)",
171     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
172     .                "ave(X)", zstophy,zout)
173c
174c        CALL histdef(nid_mth, "snow_mass", "Snow Mass", "kg/m2",
175c    .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
176c    .                "ave(X)", zstophy,zout)
177c
178         CALL histdef(nid_mth, "evap", "Evaporation", "kg/(s*m2)",
179     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
180     .                "ave(X)", zstophy,zout)
181c
182         CALL histdef(nid_mth, "tops", "Solar rad. at TOA", "W/m2",
183     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
184     .                "ave(X)", zstophy,zout)
185c
186         CALL histdef(nid_mth, "tops0", "CS Solar rad. at TOA", "W/m2",
187     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
188     .                "ave(X)", zstophy,zout)
189c
190         CALL histdef(nid_mth, "topl", "IR rad. at TOA", "W/m2",
191     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
192     .                "ave(X)", zstophy,zout)
193c
194         CALL histdef(nid_mth, "topl0", "IR rad. at TOA", "W/m2",
195     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
196     .                "ave(X)", zstophy,zout)
197c
198         CALL histdef(nid_mth, "SWupTOA", "SWup at TOA","W/m2",
199     .                iim,jjmp1,nhori, 1,1,1,-99,
200     .                32, "ave(X)", zstophy,zout)
201c
202         CALL histdef(nid_mth, "SWupTOAclr", 
203     .                "SWup clear sky at TOA","W/m2",
204     .                iim,jjmp1,nhori, 1,1,1,-99,
205     .                32, "ave(X)", zstophy,zout)
206c
207         CALL histdef(nid_mth, "SWdnTOA", "SWdn at TOA","W/m2",
208     .                iim,jjmp1,nhori, 1,1,1,-99,
209     .                32, "ave(X)", zstophy,zout)
210c
211         CALL histdef(nid_mth, "SWdnTOAclr", 
212     .                "SWdn clear sky at TOA","W/m2",
213     .                iim,jjmp1,nhori, 1,1,1,-99,
214     .                32, "ave(X)", zstophy,zout)
215c
216         CALL histdef(nid_mth, "SWup200", "SWup at 200mb","W/m2",
217     .                iim,jjmp1,nhori, 1,1,1,-99,
218     .                32, "ave(X)", zstophy,zout)
219c
220         CALL histdef(nid_mth, "SWup200clr", 
221     .                "SWup clear sky at 200mb","W/m2",
222     .                iim,jjmp1,nhori, 1,1,1,-99,
223     .                32, "ave(X)", zstophy,zout)
224c
225         CALL histdef(nid_mth, "SWdn200", "SWdn at 200mb","W/m2",
226     .                iim,jjmp1,nhori, 1,1,1,-99,
227     .                32, "ave(X)", zstophy,zout)
228c
229         CALL histdef(nid_mth, "SWdn200clr", 
230     .                "SWdn clear sky at 200mb","W/m2",
231     .                iim,jjmp1,nhori, 1,1,1,-99,
232     .                32, "ave(X)", zstophy,zout)
233c
234         CALL histdef(nid_mth, "LWup200", "LWup at 200mb","W/m2",
235     .                iim,jjmp1,nhori, 1,1,1,-99,
236     .                32, "ave(X)", zstophy,zout)
237c
238         CALL histdef(nid_mth, "LWup200clr", 
239     .                "LWup clear sky at 200mb","W/m2",
240     .                iim,jjmp1,nhori, 1,1,1,-99,
241     .                32, "ave(X)", zstophy,zout)
242c
243         CALL histdef(nid_mth, "LWdn200", "LWdn at 200mb","W/m2",
244     .                iim,jjmp1,nhori, 1,1,1,-99,
245     .                32, "ave(X)", zstophy,zout)
246c
247         CALL histdef(nid_mth, "LWdn200clr", 
248     .                "LWdn clear sky at 200mb","W/m2",
249     .                iim,jjmp1,nhori, 1,1,1,-99,
250     .                32, "ave(X)", zstophy,zout)
251c
252         CALL histdef(nid_mth, "sols", "Solar rad. at surf.", "W/m2",
253     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
254     .                "ave(X)", zstophy,zout)
255c
256         CALL histdef(nid_mth, "sols0", "Solar rad. at surf.", "W/m2",
257     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
258     .                "ave(X)", zstophy,zout)
259c
260         CALL histdef(nid_mth, "soll", "IR rad. at surface", "W/m2",
261     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
262     .                "ave(X)", zstophy,zout)
263c
264         CALL histdef(nid_mth, "radsol", "Rayonnement au sol", "W/m2",
265     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
266     .                "ave(X)", zstophy,zout)
267c
268         CALL histdef(nid_mth, "soll0", "IR rad. at surface", "W/m2",
269     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
270     .                "ave(X)", zstophy,zout)
271c
272         CALL histdef(nid_mth, "SWupSFC", "SWup at surface","W/m2",
273     .                iim,jjmp1,nhori, 1,1,1,-99,
274     .                32, "ave(X)", zstophy,zout)
275c
276         CALL histdef(nid_mth, "SWupSFCclr", 
277     .                "SWup clear sky at surface","W/m2",
278     .                iim,jjmp1,nhori, 1,1,1,-99,
279     .                32, "ave(X)", zstophy,zout)
280c
281         CALL histdef(nid_mth, "SWdnSFC", "SWdn at surface","W/m2",
282     .                iim,jjmp1,nhori, 1,1,1,-99,
283     .                32, "ave(X)", zstophy,zout)
284c
285         CALL histdef(nid_mth, "SWdnSFCclr", 
286     .                "SWdn clear sky at surface","W/m2",
287     .                iim,jjmp1,nhori, 1,1,1,-99,
288     .                32, "ave(X)", zstophy,zout)
289c
290         CALL histdef(nid_mth,"LWupSFC","Upwd. IR rad. at surface", 
291     .                "W/m2", iim,jjmp1,nhori, 1,1,1, -99, 32, 
292     .                "ave(X)", zstophy,zout)
293c
294         CALL histdef(nid_mth,"LWdnSFC","Down. IR rad. at surface", 
295     .                "W/m2", iim,jjmp1,nhori, 1,1,1, -99, 32, 
296     .                "ave(X)", zstophy,zout)
297c
298         CALL histdef(nid_mth,"LWupSFCclr",
299     .                "CS Upwd. IR rad. at surface", 
300     .                "W/m2", iim,jjmp1,nhori, 1,1,1, -99, 32, 
301     .                "ave(X)", zstophy,zout)
302c
303         CALL histdef(nid_mth,"LWdnSFCclr",
304     .                "Down. CS IR rad. at surface", 
305     .                "W/m2", iim,jjmp1,nhori, 1,1,1, -99, 32, 
306     .                "ave(X)", zstophy,zout)
307c
308         CALL histdef(nid_mth, "bils", "Surf. total heat flux", "W/m2",
309     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
310     .                "ave(X)", zstophy,zout)
311c
312         CALL histdef(nid_mth, "sens", "Sensible heat flux", "W/m2",
313     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
314     .                "ave(X)", zstophy,zout)
315c
316         CALL histdef(nid_mth, "fder", "Heat flux derivation", "W/m2",
317     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
318     .                "ave(X)", zstophy,zout)
319c
320c          CALL histdef(nid_mth, "frtu", "Zonal wind stress", "Pa",
321c    .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
322c    .                "ave(X)", zstophy,zout)
323c
324c        CALL histdef(nid_mth, "frtv", "Meridional wind stress", "Pa",
325c    .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
326c    .                "ave(X)", zstophy,zout)
327c
328         CALL histdef(nid_mth, "ffonte","Thermal flux for snow melting",
329     .                "W/m2",iim,jjmp1,nhori, 1,1,1, -99, 32,
330     .                "ave(X)", zstophy,zout)
331c
332         CALL histdef(nid_mth, "fqcalving","Ice Calving",
333     .                "kg/m2/s",iim,jjmp1,nhori, 1,1,1, -99, 32,
334     .                "ave(X)", zstophy,zout)
335c
336         DO nsrf = 1, nbsrf
337           call histdef(nid_mth, "taux_"//clnsurf(nsrf),
338     $         "Zonal wind stress"//clnsurf(nsrf), "Pa", 
339     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
340     $         "ave(X)", zstophy,zout)
341
342           call histdef(nid_mth, "tauy_"//clnsurf(nsrf),
343     $         "Meridional wind stress "//clnsurf(nsrf), "Pa", 
344     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
345     $         "ave(X)", zstophy,zout)
346         ENDDO
347c
348         DO nsrf = 1, nbsrf
349C
350          IF(nsrf.GT.2) THEN
351           call histdef(nid_mth, "pourc_"//clnsurf(nsrf),
352     $         "% "//clnsurf(nsrf), "%", 
353     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
354     $         "ave(X)", zstophy,zout)
355c
356           call histdef(nid_mth, "fract_"//clnsurf(nsrf),
357     $         "Fraction "//clnsurf(nsrf), "1", 
358     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
359     $         "ave(X)", zstophy,zout)
360          ENDIF !nsrf.GT.2
361C
362           call histdef(nid_mth, "tsol_"//clnsurf(nsrf),
363     $         "Temperature "//clnsurf(nsrf), "K", 
364     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
365     $         "ave(X)", zstophy,zout)
366C
367           call histdef(nid_mth, "sens_"//clnsurf(nsrf),
368     $         "Sensible heat flux "//clnsurf(nsrf), "W/m2", 
369     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
370     $         "ave(X)", zstophy,zout)
371c
372           call histdef(nid_mth, "lat_"//clnsurf(nsrf),
373     $         "Latent heat flux "//clnsurf(nsrf), "W/m2", 
374     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
375     $         "ave(X)", zstophy,zout)
376C
377           call histdef(nid_mth, "flw_"//clnsurf(nsrf),
378     $         "LW "//clnsurf(nsrf), "W/m2",
379     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
380     $         "ave(X)", zstophy,zout)
381c
382           call histdef(nid_mth, "fsw_"//clnsurf(nsrf),
383     $         "SW "//clnsurf(nsrf), "W/m2",
384     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
385     $         "ave(X)", zstophy,zout)
386C
387           call histdef(nid_mth, "wbils_"//clnsurf(nsrf),
388     $         "Bilan sol "//clnsurf(nsrf), "W/m2",
389     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
390     $         "ave(X)", zstophy,zout)
391C
392           call histdef(nid_mth, "wbilo_"//clnsurf(nsrf),
393     $         "Bilan eau "//clnsurf(nsrf), "kg/(m2*s)",
394     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
395     $         "ave(X)", zstophy,zout)
396C
397cIM 250105 BEG
398          IF(1.EQ.0) THEN
399C
400           call histdef(nid_mth, "evapour_"//clnsurf(nsrf),
401     $         "Evap*pourc "//clnsurf(nsrf), "kg/(s*m2)",
402     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
403     $         "ave(X)", zstophy,zout)
404C
405           call histdef(nid_mth, "prepour_"//clnsurf(nsrf),
406     $         "Precip*pourc "//clnsurf(nsrf), "kg/(s*m2)",
407     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
408     $         "ave(X)", zstophy,zout)
409C
410          ENDIF !(1.EQ.0) THEN
411cIM 250105 END
412C
413         END DO
414c
415         CALL histdef(nid_mth, "cdrm", "Momentum drag coef.", "-",
416     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
417     .                "ave(X)", zstophy,zout)
418c
419         CALL histdef(nid_mth, "cdrh", "Heat drag coef.", "-",
420     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
421     .                "ave(X)", zstophy,zout)
422c
423         CALL histdef(nid_mth, "cldl", "Low-level cloudiness", "-",
424     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
425     .                "ave(X)", zstophy,zout)
426c
427         CALL histdef(nid_mth, "cldm", "Mid-level cloudiness", "-",
428     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
429     .                "ave(X)", zstophy,zout)
430c
431         CALL histdef(nid_mth, "cldh", "High-level cloudiness", "-",
432     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
433     .                "ave(X)", zstophy,zout)
434c
435         CALL histdef(nid_mth, "cldt", "Total cloudiness", "-",
436     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
437     .                "ave(X)", zstophy,zout)
438c
439         CALL histdef(nid_mth,"cldq","Cloud liquid water path","kg/m2",
440     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
441     .                "ave(X)", zstophy,zout)
442c
443         CALL histdef(nid_mth,"lwp","Cloud water path","kg/m2",
444     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
445     .                "ave(X)", zstophy,zout)
446c
447         CALL histdef(nid_mth,"iwp","Cloud ice water path","kg/m2",
448     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
449     .                "ave(X)", zstophy,zout)
450c
451         CALL histdef(nid_mth, "ue", "Zonal energy transport", "-",
452     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
453     .                "ave(X)", zstophy,zout)
454c
455         CALL histdef(nid_mth, "ve", "Merid energy transport", "-",
456     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
457     .                "ave(X)", zstophy,zout)
458c
459         CALL histdef(nid_mth, "uq", "Zonal humidity transport", "-",
460     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
461     .                "ave(X)", zstophy,zout)
462c
463         CALL histdef(nid_mth, "vq", "Merid humidity transport", "-",
464     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
465     .                "ave(X)", zstophy,zout)
466cKE43
467      IF(iflag_con.GE.3) THEN ! sb
468c
469         CALL histdef(nid_mth, "cape", "Conv avlbl pot ener", "J/kg",
470     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
471     .                "ave(X)", zstophy,zout)
472c
473         CALL histdef(nid_mth, "pbase", "Cld base pressure", "mb",
474     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
475     .                "ave(X)", zstophy,zout)
476c
477         CALL histdef(nid_mth, "ptop", "Cld top pressure", "mb",
478     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
479     .                "ave(X)", zstophy,zout)
480c
481         CALL histdef(nid_mth, "fbase", "Cld base mass flux", "kg/m2/s",
482     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
483     .                "ave(X)", zstophy,zout)
484c
485         CALL histdef(nid_mth, "prw", "Precipitable water", "kg/m2",
486     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
487     .                "ave(X)", zstophy,zout)
488c
489      ENDIF !iflag_con .GE. 3
490c34EK
491cIM cf. AM 081204 BEG
492c34EK
493c HBTM2
494         CALL histdef(nid_mth, "s_pblh", "Boundary Layer Height", "m",
495     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
496     .                "ave(X)", zstophy,zout)
497         CALL histdef(nid_mth, "s_pblt", "t at Boundary Layer Height",
498     .                "K",
499     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
500     .                "ave(X)", zstophy,zout)
501         CALL histdef(nid_mth, "s_lcl", "Condensation level", "m",
502     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
503     .                "ave(X)", zstophy,zout)
504         CALL histdef(nid_mth, "s_capCL", "Conv avlbl pot ener
505     .                for ABL", "J/m2",
506     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
507     .                "ave(X)", zstophy,zout)
508         CALL histdef(nid_mth, "s_oliqCL", "Liq Water in BL", "kg/m2",
509     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
510     .                "ave(X)", zstophy,zout)
511         CALL histdef(nid_mth, "s_cteiCL", "Instability criteria
512     .                (ABL)", "K",
513     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
514     .                "ave(X)", zstophy,zout)
515         CALL histdef(nid_mth, "s_therm", "Exces du thermique", "K",
516     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
517     .                "ave(X)", zstophy,zout)
518         CALL histdef(nid_mth, "s_trmb1", "deep_cape(HBTM2)", "J/m2",
519     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
520     .                "ave(X)", zstophy,zout)
521         CALL histdef(nid_mth, "s_trmb2", "inhibition (HBTM2)", "J/m2",
522     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
523     .                "ave(X)", zstophy,zout)
524         CALL histdef(nid_mth, "s_trmb3", "Point Omega (HBTM2)", "m",
525     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
526     .                "ave(X)", zstophy,zout)
527c
528cIM cf. AM 081204 END
529c
530c Champs interpolles sur des niveaux de pression
531         DO k=1, nlevSTD
532c
533c        bb=clevSTD(k)
534c
535c        IF(k.GE.2) THEN
536         IF(k.GE.2.AND.k.LE.12) bb2=clevSTD(k)
537         IF(k.GE.13.AND.k.LE.17) bb3=clevSTD(k)
538c         aa=clevSTD(k)
539c         bb=aa(1:lnblnk1(aa))
540c        ENDIF
541c
542      IF(bb2.EQ."850".OR.bb2.EQ."700".OR.
543     $   bb2.EQ."500".OR.bb2.EQ."200") THEN
544c
545          CALL histdef(nid_mth, "u"//bb2,
546     .                 "Zonal wind "//bb2//"mb","m/s",
547     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
548     .                "inst(X)", zout,zout)
549c
550          CALL histdef(nid_mth, "v"//bb2,
551     .                 "Meridional wind "//bb2//"mb","m/s",
552     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
553     .                "inst(X)", zout,zout)
554c
555          CALL histdef(nid_mth, "w"//bb2,
556     .                 "Vertical wind "//bb2//"mb","m/s",
557     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
558     .                "inst(X)", zout,zout)
559c
560          CALL histdef(nid_mth, "phi"//bb2,
561     .                 "Geopotential "//bb2//"mb","m",
562     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
563     .                "inst(X)", zout,zout)
564c
565        ENDIF !(bb2.EQ."850".OR.bb2.EQ."700".OR.
566       ENDDO
567c
568cIM diagnostiques flux ocean-atm ou ocean-glace de mer
569cIM pour utilisation dans un modele de "slab" ocean
570c
571       CALL histdef(nid_mth, "fluxo",
572     .              "Flux turbulents ocean-atmosphere", "W/m2",
573     .              iim,jjmp1,nhori, 1,1,1, -99, 32,
574     .              "ave(X)", zstophy,zout)
575c
576       CALL histdef(nid_mth, "fluxg",
577     .              "Flux turbulents ocean-glace de mer","W/m2",
578     .              iim,jjmp1,nhori, 1,1,1, -99, 32,
579     .              "ave(X)", zstophy,zout)
580c
581       CALL histdef(nid_mth, "t_oce_sic",
582     .              "Temp. mixte oce-sic","K",
583     .              iim,jjmp1,nhori, 1,1,1, -99, 32,
584     .              "ave(X)", zstophy,zout)
585c
586       IF (OCEAN.EQ.'force ') THEN
587c
588        CALL histdef(nid_mth, "lmt_bils",
589     .       "Bilan au sol atmosphere forcee", "W/m2",
590     .              iim,jjmp1,nhori, 1,1,1, -99, 32,
591     .              "ave(X)", zstophy,zout)
592c
593       ELSE IF (OCEAN.EQ.'slab  ') THEN
594c
595        CALL histdef(nid_mth, "slab_bils",
596     .       "Bilan au sol Slab", "W/m2",
597     .              iim,jjmp1,nhori, 1,1,1, -99, 32,
598     .              "ave(X)", zstophy,zout)
599c
600        CALL histdef(nid_mth, "tslab", "Slab SST ", "K",
601     .              iim,jjmp1,nhori, 1,1,1, -99, 32,
602     .              "ave(X)", zstophy,zout)
603c
604        CALL histdef(nid_mth, "seaice", "Slab seaice", "kg/m2",
605     .              iim,jjmp1,nhori, 1,1,1, -99, 32,
606     .              "ave(X)", zstophy,zout)
607c
608        CALL histdef(nid_mth, "siceh", "Slab seaice height", "m",
609     .              iim,jjmp1,nhori, 1,1,1, -99, 32,
610     .              "ave(X)", zstophy,zout)
611c
612       ENDIF
613c
614      ENDIF !lev_histmth.GE.1
615c
616      IF(lev_histmth.GE.2) THEN
617c
618c Champs 3D:
619c
620c
621         CALL histdef(nid_mth,"lwcon","Cloud liquid water content",
622     .                "kg/kg",
623     .                iim,jjmp1,nhori, klev,1,klev, nvert, 32, 
624     .                "ave(X)", zstophy,zout)
625c
626         CALL histdef(nid_mth,"iwcon","Cloud ice water content","kg/kg",
627     .                iim,jjmp1,nhori, klev,1,klev, nvert, 32, 
628     .                "ave(X)", zstophy,zout)
629c
630         CALL histdef(nid_mth, "temp", "Air temperature", "K",
631     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
632     .                "ave(X)", zstophy,zout)
633c
634         CALL histdef(nid_mth, "ovap", "Specific humidity", "kg/kg",
635     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
636     .                "ave(X)", zstophy,zout)
637c
638c        CALL histdef(nid_mth,"wvap","Water vapor mixing ratio","kg/kg",
639c    .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
640c    .                "ave(X)", zstophy,zout)
641c
642         CALL histdef(nid_mth, "geop", "Geopotential height", "m2/s2",
643     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
644     .                "ave(X)", zstophy,zout)
645c
646         CALL histdef(nid_mth, "vitu", "Zonal wind", "m/s",
647     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
648     .                "ave(X)", zstophy,zout)
649c
650         CALL histdef(nid_mth, "vitv", "Meridional wind", "m/s",
651     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
652     .                "ave(X)", zstophy,zout)
653c
654         CALL histdef(nid_mth, "vitw", "Vertical wind", "m/s",
655     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
656     .                "ave(X)", zstophy,zout)
657c
658         CALL histdef(nid_mth, "pres", "Air pressure", "Pa",
659     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
660     .                "ave(X)", zstophy,zout)
661c
662        CALL histdef(nid_mth, "rneb", "Cloud fraction", "-",
663     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
664     .                "ave(X)", zstophy,zout)
665c
666         CALL histdef(nid_mth, "rnebcon", "Convective Cloud Fraction"
667     .                , "-",
668     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
669     .                "ave(X)", zstophy,zout)
670c
671         CALL histdef(nid_mth, "rhum", "Relative humidity", "-",
672     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
673     .                "ave(X)", zstophy,zout)
674c
675         CALL histdef(nid_mth, "ozone", "Ozone concentration", "ppmv",
676     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
677     .                "ave(X)", zstophy,zout)
678c
679         CALL histdef(nid_mth, "upwd", "saturated updraft", "kg/m2/s",
680     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
681     .                "ave(X)", zstophy,zout)
682c
683         CALL histdef(nid_mth, "dtphy", "Physics dT", "K/s",
684     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
685     .                "ave(X)", zstophy,zout)
686c
687         CALL histdef(nid_mth, "dqphy", "Physics dQ", "(kg/kg)/s",
688     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
689     .                "ave(X)", zstophy,zout)
690c
691      ENDIF !lev_histmth.GE.2
692c
693      IF(lev_histmth.GE.3) THEN
694c
695        DO nsrf=1, nbsrf
696c
697           call histdef(nid_mth, "albe_"//clnsurf(nsrf),
698     $         "Albedo surf. "//clnsurf(nsrf), "-", 
699     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
700     $         "ave(X)", zstophy,zout)
701c
702           call histdef(nid_mth, "rugs_"//clnsurf(nsrf),
703     $         "Latent heat flux "//clnsurf(nsrf), "W/m2", 
704     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
705     $         "ave(X)", zstophy,zout)
706c
707         CALL histdef(nid_mth, "ages_"//clnsurf(nsrf), "Snow age","day",
708     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
709     .                "ave(X)", zstophy,zout)
710c
711         ENDDO !nsrf=1, nbsrf
712c
713         CALL histdef(nid_mth, "albs", "Surface albedo", "-",
714     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
715     .                "ave(X)", zstophy,zout)
716         CALL histdef(nid_mth, "albslw", "Surface albedo LW", "-",
717     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
718     .                "ave(X)", zstophy,zout)
719c
720      ENDIF !lev_histmth.GE.3
721c
722      IF(lev_histmth.GE.4) THEN
723c
724         CALL histdef(nid_mth, "clwcon", 
725     .                "Convective Cloud Liquid water content"
726     .                , "kg/kg",
727     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
728     .                "ave(X)", zstophy,zout)
729c
730         CALL histdef(nid_mth,"Ma","undilute adiab updraft","kg/m2/s",
731     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
732     .                "ave(X)", zstophy,zout)
733c
734         CALL histdef(nid_mth, "dnwd", "saturated downdraft","kg/m2/s",
735     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
736     .                "ave(X)", zstophy,zout)
737c
738         CALL histdef(nid_mth, "dnwd0", "unsat. downdraft", "kg/m2/s",
739     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
740     .                "ave(X)", zstophy,zout)
741c
742         CALL histdef(nid_mth, "dtdyn", "Dynamics dT", "K/s",
743     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
744     .                "ave(X)", zstophy,zout)
745c
746         CALL histdef(nid_mth, "dqdyn", "Dynamics dQ", "(kg/kg)/s",
747     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
748     .                "ave(X)", zstophy,zout)
749c
750         CALL histdef(nid_mth, "dtcon", "Convection dT", "K/s",
751     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
752     .                "ave(X)", zstophy,zout)
753c
754c        CALL histdef(nid_mth, "ducon", "Convection du", "m/s2",
755c    .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
756c    .                "ave(X)", zstophy,zout)
757c
758         CALL histdef(nid_mth, "dqcon", "Convection dQ", "(kg/kg)/s",
759     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
760     .                "ave(X)", zstophy,zout)
761c
762         CALL histdef(nid_mth, "dtlsc", "Condensation dT", "K/s",
763     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
764     .                "ave(X)", zstophy,zout)
765c
766         CALL histdef(nid_mth, "dtlschr",
767     $       "Large-scale condensational heating rate", "K/s",iim,jjmp1
768     $       ,nhori, klev,1,klev,nvert, 32,"ave(X)", zstophy,zout)
769c
770         CALL histdef(nid_mth, "dqlsc", "Condensation dQ", "(kg/kg)/s",
771     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
772     .                "ave(X)", zstophy,zout)
773c
774         CALL histdef(nid_mth, "dtvdf", "Boundary-layer dT", "K/s",
775     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
776     .                "ave(X)", zstophy,zout)
777c
778         CALL histdef(nid_mth, "dqvdf","Boundary-layer dQ","(kg/kg)/s",
779     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
780     .                "ave(X)", zstophy,zout)
781c
782         CALL histdef(nid_mth, "dteva", "Reevaporation dT", "K/s",
783     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
784     .                "ave(X)", zstophy,zout)
785c
786         CALL histdef(nid_mth, "dqeva","Reevaporation dQ","(kg/kg)/s",
787     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
788     .                "ave(X)", zstophy,zout)
789
790         CALL histdef(nid_mth, "ptconv", "POINTS CONVECTIFS"," ",
791     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
792     .                "ave(X)", zstophy,zout)
793
794         CALL histdef(nid_mth, "ratqs", "RATQS"," ",
795     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
796     .                "ave(X)", zstophy,zout)
797
798c
799         CALL histdef(nid_mth, "dtajs", "Dry adjust. dT", "K/s",
800     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
801     .                "ave(X)", zstophy,zout)
802
803         CALL histdef(nid_mth,"dqajs","Dry adjust. dQ","(kg/kg)/s",
804     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
805     .                "ave(X)", zstophy,zout)
806c
807         CALL histdef(nid_mth, "dtswr", "SW radiation dT", "K/s",
808     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
809     .                "ave(X)", zstophy,zout)
810c
811         CALL histdef(nid_mth, "dtsw0", "CS SW radiation dT", "K/s",
812     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
813     .                "ave(X)", zstophy,zout)
814c
815         CALL histdef(nid_mth, "dtlwr", "LW radiation dT", "K/s",
816     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
817     .                "ave(X)", zstophy,zout)
818c
819         CALL histdef(nid_mth,"dtlw0","CS LW radiation dT","K/s",
820     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
821     .                "ave(X)", zstophy,zout)
822c
823         CALL histdef(nid_mth, "dtec", "Cinetic dissip dT", "K/s",
824     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
825     .                "ave(X)", zstophy,zout)
826c
827         CALL histdef(nid_mth, "duvdf", "Boundary-layer dU", "m/s2",
828     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
829     .                "ave(X)", zstophy,zout)
830c
831         CALL histdef(nid_mth, "dvvdf", "Boundary-layer dV", "m/s2",
832     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
833     .                "ave(X)", zstophy,zout)
834c
835         IF (ok_orodr) THEN
836         CALL histdef(nid_mth, "duoro", "Orography dU", "m/s2",
837     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
838     .                "ave(X)", zstophy,zout)
839c
840         CALL histdef(nid_mth, "dvoro", "Orography dV", "m/s2",
841     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
842     .                "ave(X)", zstophy,zout)
843c
844         ENDIF
845C
846         IF (ok_orolf) THEN
847         CALL histdef(nid_mth, "dulif", "Orography dU", "m/s2",
848     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
849     .                "ave(X)", zstophy,zout)
850c
851         CALL histdef(nid_mth, "dvlif", "Orography dV", "m/s2",
852     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
853     .                "ave(X)", zstophy,zout)
854         ENDIF
855C
856         if (nqmax.GE.3) THEN
857         DO iq=1,nqmax-2
858         IF (iq.LE.99) THEN
859         WRITE(str2,'(i2.2)') iq
860         CALL histdef(nid_mth, "trac"//str2, "Tracer No."//str2, "-",
861     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
862     .                "ave(X)", zstophy,zout)
863         ELSE
864         PRINT*, "Trop de traceurs"
865         CALL abort
866         ENDIF
867         ENDDO
868         ENDIF
869c
870      ENDIF !lev_histmth.GE.4
871c
872      ELSE IF(type_run.EQ."AMIP".OR.type_run.EQ."CFMI") THEN
873c
874      IF(lev_histmth.GE.1) THEN
875c
876         CALL histdef(nid_mth, "phis", "Surface geop. height", "m",
877     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
878     .                "once",  zstophy,zout)
879c
880         CALL histdef(nid_mth, "aire", "Grid area", "-",
881     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
882     .                "once",  zstophy,zout)
883c
884         CALL histdef(nid_mth, "pourc_"//clnsurf(is_ter),
885     .         "% "//clnsurf(is_ter), "%", 
886     .         iim,jjmp1,nhori, 1,1,1, -99, 32,
887     .         "once", zstophy,zout)
888c
889         CALL histdef(nid_mth, "fract_"//clnsurf(is_ter),
890     .         "Fraction "//clnsurf(is_ter), "1", 
891     .         iim,jjmp1,nhori, 1,1,1, -99, 32,
892     .         "once", zstophy,zout)
893c
894         CALL histdef(nid_mth, "pourc_"//clnsurf(is_lic),
895     .         "% "//clnsurf(is_lic), "%", 
896     .         iim,jjmp1,nhori, 1,1,1, -99, 32,
897     .         "once", zstophy,zout)
898c
899         CALL histdef(nid_mth, "fract_"//clnsurf(is_lic),
900     .         "Fraction "//clnsurf(is_lic), "1", 
901     .         iim,jjmp1,nhori, 1,1,1, -99, 32,
902     .         "once", zstophy,zout)
903c
904         CALL histdef(nid_mth, "pourc_"//clnsurf(is_sic),
905     .         "% "//clnsurf(is_sic), "%",
906     .         iim,jjmp1,nhori, 1,1,1, -99, 32,
907     .                "ave(X)", zstophy,zout)
908c
909         CALL histdef(nid_mth, "fract_"//clnsurf(is_sic),
910     .         "Fraction "//clnsurf(is_sic), "1",
911     .         iim,jjmp1,nhori, 1,1,1, -99, 32,
912     .                "ave(X)", zstophy,zout)
913c
914         CALL histdef(nid_mth, "flat", "Latent heat flux", "W/m2",
915     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
916     .                "ave(X)", zstophy,zout)
917c
918         CALL histdef(nid_mth, "bilTOA",
919     .                "Net radiation at TOA", "W/m2",
920     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
921     .                "ave(X)", zstophy,zout)
922c
923c
924c        CALL histdef(nid_mth, "tops01",
925c    .                "TOA reflected clear-sky shortwave
926c    .                radiation (method 1)", "W/m2",
927c    .                iim,jjmp1,nhori, 1,1,1, -99, 32,
928c    .                "ave(X)", zstophy,zout)
929c
930          CALL histdef(nid_mth, "dtdia","dtdia","K/s",
931     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
932     .                "ave(X)", zstophy,zout)
933c
934          CALL histdef(nid_mth, "dtsw","dtsw","K/s",
935     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
936     .                "ave(X)", zstophy,zout)
937c
938          CALL histdef(nid_mth, "dtlw","dtlw","K/s",
939     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
940     .                "ave(X)", zstophy,zout)
941c
942          CALL histdef(nid_mth, "dtcon","dtcon","K/s",
943     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
944     .                "ave(X)", zstophy,zout)
945c
946          CALL histdef(nid_mth, "dtajs","dtajs","K/s",
947     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
948     .                "ave(X)", zstophy,zout)
949c
950          CALL histdef(nid_mth, "dtlsc","dtlsc","K/s",
951     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
952     .                "ave(X)", zstophy,zout)
953c
954          CALL histdef(nid_mth, "dqdia","dqdia","(kg/kg)/s",
955     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
956     .                "ave(X)", zstophy,zout)
957c
958          CALL histdef(nid_mth, "duoli",
959     .         "duoli","m/s2",
960     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
961     .                "ave(X)", zstophy,zout)
962c
963          CALL histdef(nid_mth, "dvoli",
964     .         "dvoli","m/s2",
965     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
966     .                "ave(X)", zstophy,zout)
967c
968          CALL histdef(nid_mth, "ducon",
969     .         "ducon","m/s2",
970     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
971     .                "ave(X)", zstophy,zout)
972c
973          CALL histdef(nid_mth, "dvcon",
974     .         "dvcon","m/s2",
975     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
976     .                "ave(X)", zstophy,zout)
977c
978          CALL histdef(nid_mth, "dutot",
979     .         "dutot","m/s2",
980     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
981     .                "ave(X)", zstophy,zout)
982c
983          CALL histdef(nid_mth, "dvtot",
984     .         "dvtot","m/s2",
985     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
986     .                "ave(X)", zstophy,zout)
987c
988c         CALL histdef(nid_mth, "cldtrue",
989c    .         "TRUE Cloud fraction ","%",
990c    .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
991c    .         "inst(X)", zout,zout)
992c
993c         CALL histdef(nid_mth, "cldTOA",
994c    .         "Cloud amount (satellite view)","%",
995c    .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
996c    .         "ave(X)", zstophy,zout)
997c
998c         CALL histdef(nid_mth, "cldSFC",
999c    .         "Cloud amount (surface view)","%",
1000c    .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1001c    .         "ave(X)", zstophy,zout)
1002c
1003          CALL histdef(nid_mth, "GWDtaux",
1004     .         "GWD induced Ewd wind stress","Pa",
1005     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1006     .         "ave(X)", zstophy,zout)
1007c
1008          CALL histdef(nid_mth, "GWDtauy",
1009     .         "GWD induced Nwd wind stress","Pa",
1010     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1011     .         "ave(X)", zstophy,zout)
1012c
1013c Champs 2D:
1014c
1015         CALL histdef(nid_mth, "slp", "Sea Level Pressure", "Pa",
1016     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1017     .                "ave(X)", zstorad,zout)
1018c
1019         CALL histdef(nid_mth, "tsol", "Surface Temperature", "K",
1020     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1021     .                "ave(X)", zstophy,zout)
1022c
1023         CALL histdef(nid_mth, "t2m", "Temperature 2m", "K",
1024     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1025     .                "ave(X)", zstorad,zout)
1026c
1027         CALL histdef(nid_mth, "t2m_min", "Temp. 2m min.",
1028     .                "K",
1029     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1030     .                t2mincels, zstophy,zout)
1031c
1032         CALL histdef(nid_mth, "t2m_max", "Temp. 2m max.",
1033     .                "K",
1034     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1035     .                t2maxcels, zstophy,zout)
1036c
1037c        CALL histdef(nid_mth, "tsoil", "Sfce soil Temperature",
1038c    .                "K",
1039c    .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1040c    .                "ave(X)", zstophy,zout)
1041c
1042         CALL histdef(nid_mth, "wind10m","10-m wind speed","m/s",
1043     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1044     .                "ave(X)", zstorad,zout)
1045c
1046         CALL histdef(nid_mth, "sicf", "Sea-ice fraction", "-",
1047     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1048     .                "ave(X)", zstophy,zout)
1049
1050c
1051         CALL histdef(nid_mth, "q2m","Specific humidity 2m","kg/kg",
1052     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1053     .                "ave(X)", zstorad,zout)
1054c
1055         CALL histdef(nid_mth, "u10m", "Vent zonal 10m", "m/s",
1056     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1057     .                "ave(X)", zstorad,zout)
1058c
1059         CALL histdef(nid_mth, "v10m", "Vent meridien 10m", "m/s",
1060     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1061     .                "ave(X)", zstorad,zout)
1062c
1063         CALL histdef(nid_mth, "psol", "Surface Pressure", "Pa",
1064     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1065     .                "ave(X)", zstorad,zout)
1066c
1067         CALL histdef(nid_mth, "qsurf","Surface Air humidity","kg/kg",
1068     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1069     .                "ave(X)", zstophy,zout)
1070c
1071      if (.not. ok_veget) then
1072         CALL histdef(nid_mth, "qsol", "Soil watter content", "mm",
1073     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1074     .                "ave(X)", zstophy,zout)
1075      endif
1076c
1077         CALL histdef(nid_mth, "ndayrain", 
1078     .                "Number of day with rain (liq+sol)", "-",
1079     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1080     .                "inst(X)", zstomth,zout)
1081c
1082         CALL histdef(nid_mth, "precip", "Precipitation Totale liq+sol", 
1083     .                "kg/(s*m2)",
1084     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1085     .                "ave(X)", zstophy,zout)
1086c
1087         CALL histdef(nid_mth, "plul", "Large-scale Precip.", 
1088     .   "kg/(s*m2)",
1089     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1090     .                "ave(X)", zstophy,zout)
1091c
1092         CALL histdef(nid_mth, "pluc", "Convective Precip.", 
1093     .   "kg/(s*m2)",
1094     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1095     .                "ave(X)", zstophy,zout)
1096c
1097         CALL histdef(nid_mth, "snowf", "Snow fall", "kg/(s*m2)",
1098     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1099     .                "ave(X)", zstophy,zout)
1100c
1101c        CALL histdef(nid_mth, "snow_mass", "Snow Mass", "kg/m2",
1102c    .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1103c    .                "ave(X)", zstophy,zout)
1104c
1105         CALL histdef(nid_mth, "evap", 
1106     .                "Evaporation plus sublimation rate", "kg/(s*m2)",
1107     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1108     .                "ave(X)", zstophy,zout)
1109c
1110         CALL histdef(nid_mth, "tops", "Solar rad. at TOA", "W/m2",
1111     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1112     .                "ave(X)", zstophy,zout)
1113c
1114         CALL histdef(nid_mth, "tops0", "CS Solar rad. at TOA", "W/m2",
1115     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1116     .                "ave(X)", zstophy,zout)
1117c
1118         CALL histdef(nid_mth, "topl", "IR rad. at TOA", "W/m2",
1119     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1120     .                "ave(X)", zstophy,zout)
1121c
1122         CALL histdef(nid_mth, "topl0", "IR rad. at TOA", "W/m2",
1123     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1124     .                "ave(X)", zstophy,zout)
1125c
1126         CALL histdef(nid_mth, "SWupTOA", "SWup at TOA","W/m2",
1127     .                iim,jjmp1,nhori, 1,1,1,-99,
1128     .                32, "ave(X)", zstophy,zout)
1129c
1130         CALL histdef(nid_mth, "SWupTOAclr", 
1131     .                "SWup clear sky at TOA","W/m2",
1132     .                iim,jjmp1,nhori, 1,1,1,-99,
1133     .                32, "ave(X)", zstophy,zout)
1134c
1135         CALL histdef(nid_mth, "SWdnTOA", "SWdn at TOA","W/m2",
1136     .                iim,jjmp1,nhori, 1,1,1,-99,
1137     .                32, "ave(X)", zstophy,zout)
1138c
1139         CALL histdef(nid_mth, "SWdnTOAclr", 
1140     .                "SWdn clear sky at TOA","W/m2",
1141     .                iim,jjmp1,nhori, 1,1,1,-99,
1142     .                32, "ave(X)", zstophy,zout)
1143c
1144         CALL histdef(nid_mth, "SWup200", "SWup at 200mb","W/m2",
1145     .                iim,jjmp1,nhori, 1,1,1,-99,
1146     .                32, "ave(X)", zstophy,zout)
1147c
1148         CALL histdef(nid_mth, "SWup200clr", 
1149     .                "SWup clear sky at 200mb","W/m2",
1150     .                iim,jjmp1,nhori, 1,1,1,-99,
1151     .                32, "ave(X)", zstophy,zout)
1152c
1153         CALL histdef(nid_mth, "SWdn200", "SWdn at 200mb","W/m2",
1154     .                iim,jjmp1,nhori, 1,1,1,-99,
1155     .                32, "ave(X)", zstophy,zout)
1156c
1157         CALL histdef(nid_mth, "SWdn200clr", 
1158     .                "SWdn clear sky at 200mb","W/m2",
1159     .                iim,jjmp1,nhori, 1,1,1,-99,
1160     .                32, "ave(X)", zstophy,zout)
1161c
1162         CALL histdef(nid_mth, "LWup200", "LWup at 200mb","W/m2",
1163     .                iim,jjmp1,nhori, 1,1,1,-99,
1164     .                32, "ave(X)", zstophy,zout)
1165c
1166         CALL histdef(nid_mth, "LWup200clr", 
1167     .                "LWup clear sky at 200mb","W/m2",
1168     .                iim,jjmp1,nhori, 1,1,1,-99,
1169     .                32, "ave(X)", zstophy,zout)
1170c
1171         CALL histdef(nid_mth, "LWdn200", "LWdn at 200mb","W/m2",
1172     .                iim,jjmp1,nhori, 1,1,1,-99,
1173     .                32, "ave(X)", zstophy,zout)
1174c
1175         CALL histdef(nid_mth, "LWdn200clr", 
1176     .                "LWdn clear sky at 200mb","W/m2",
1177     .                iim,jjmp1,nhori, 1,1,1,-99,
1178     .                32, "ave(X)", zstophy,zout)
1179c
1180         CALL histdef(nid_mth, "sols", "Solar rad. at surf.", "W/m2",
1181     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1182     .                "ave(X)", zstophy,zout)
1183c
1184         CALL histdef(nid_mth, "sols0", "Solar rad. at surf.", "W/m2",
1185     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1186     .                "ave(X)", zstophy,zout)
1187c
1188         CALL histdef(nid_mth, "soll", "IR rad. at surface", "W/m2",
1189     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1190     .                "ave(X)", zstophy,zout)
1191c
1192         CALL histdef(nid_mth, "radsol", "Rayonnement au sol", "W/m2",
1193     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1194     .                "ave(X)", zstophy,zout)
1195c
1196         CALL histdef(nid_mth, "soll0", "IR rad. at surface", "W/m2",
1197     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1198     .                "ave(X)", zstophy,zout)
1199c
1200         CALL histdef(nid_mth, "SWupSFC", "SWup at surface","W/m2",
1201     .                iim,jjmp1,nhori, 1,1,1,-99,
1202     .                32, "ave(X)", zstophy,zout)
1203c
1204         CALL histdef(nid_mth, "SWupSFCclr", 
1205     .                "SWup clear sky at surface","W/m2",
1206     .                iim,jjmp1,nhori, 1,1,1,-99,
1207     .                32, "ave(X)", zstophy,zout)
1208c
1209         CALL histdef(nid_mth, "SWdnSFC", "SWdn at surface","W/m2",
1210     .                iim,jjmp1,nhori, 1,1,1,-99,
1211     .                32, "ave(X)", zstophy,zout)
1212c
1213         CALL histdef(nid_mth, "SWdnSFCclr", 
1214     .                "SWdn clear sky at surface","W/m2",
1215     .                iim,jjmp1,nhori, 1,1,1,-99,
1216     .                32, "ave(X)", zstophy,zout)
1217c
1218         CALL histdef(nid_mth,"LWupSFC","Upwd. IR rad. at surface", 
1219     .                "W/m2", iim,jjmp1,nhori, 1,1,1, -99, 32, 
1220     .                "ave(X)", zstophy,zout)
1221c
1222         CALL histdef(nid_mth,"LWdnSFC","Down. IR rad. at surface", 
1223     .                "W/m2", iim,jjmp1,nhori, 1,1,1, -99, 32, 
1224     .                "ave(X)", zstophy,zout)
1225c
1226         CALL histdef(nid_mth,"LWupSFCclr",
1227     .                "CS Upwd. IR rad. at surface", 
1228     .                "W/m2", iim,jjmp1,nhori, 1,1,1, -99, 32, 
1229     .                "ave(X)", zstophy,zout)
1230c
1231         CALL histdef(nid_mth,"LWdnSFCclr",
1232     .                "Down. CS IR rad. at surface", 
1233     .                "W/m2", iim,jjmp1,nhori, 1,1,1, -99, 32, 
1234     .                "ave(X)", zstophy,zout)
1235c
1236         CALL histdef(nid_mth, "bils", "Surf. total heat flux", "W/m2",
1237     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1238     .                "ave(X)", zstophy,zout)
1239c
1240         CALL histdef(nid_mth, "sens", "Sensible heat flux", "W/m2",
1241     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1242     .                "ave(X)", zstophy,zout)
1243c
1244         CALL histdef(nid_mth, "fder", "Heat flux derivation", "W/m2",
1245     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1246     .                "ave(X)", zstophy,zout)
1247c
1248c          CALL histdef(nid_mth, "frtu", "Zonal wind stress", "Pa",
1249c    .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1250c    .                "ave(X)", zstophy,zout)
1251c
1252c        CALL histdef(nid_mth, "frtv", "Meridional wind stress", "Pa",
1253c    .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1254c    .                "ave(X)", zstophy,zout)
1255c
1256         CALL histdef(nid_mth, "ffonte","Thermal flux for snow melting",
1257     .                "W/m2",iim,jjmp1,nhori, 1,1,1, -99, 32,
1258     .                "ave(X)", zstophy,zout)
1259c
1260         CALL histdef(nid_mth, "fqcalving","Ice Calving",
1261     .                "kg/m2/s",iim,jjmp1,nhori, 1,1,1, -99, 32,
1262     .                "ave(X)", zstophy,zout)
1263c
1264         DO nsrf = 1, nbsrf
1265           call histdef(nid_mth, "taux_"//clnsurf(nsrf),
1266     $         "Zonal wind stress"//clnsurf(nsrf), "Pa", 
1267     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
1268     $         "ave(X)", zstophy,zout)
1269
1270           call histdef(nid_mth, "tauy_"//clnsurf(nsrf),
1271     $         "Meridional wind stress "//clnsurf(nsrf), "Pa", 
1272     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
1273     $         "ave(X)", zstophy,zout)
1274         ENDDO
1275c
1276           call histdef(nid_mth, "pourc_"//clnsurf(is_oce),
1277     $         "% "//clnsurf(is_oce), "%", 
1278     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
1279     $         "ave(X)", zstophy,zout)
1280c
1281           call histdef(nid_mth, "fract_"//clnsurf(is_oce),
1282     $         "Fraction "//clnsurf(is_oce), "1", 
1283     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
1284     $         "ave(X)", zstophy,zout)
1285C
1286         DO nsrf = 1, nbsrf
1287C
1288           call histdef(nid_mth, "tsol_"//clnsurf(nsrf),
1289     $         "Temperature "//clnsurf(nsrf), "K", 
1290     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
1291     $         "ave(X)", zstophy,zout)
1292C
1293           call histdef(nid_mth, "sens_"//clnsurf(nsrf),
1294     $         "Sensible heat flux "//clnsurf(nsrf), "W/m2", 
1295     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
1296     $         "ave(X)", zstophy,zout)
1297c
1298           call histdef(nid_mth, "lat_"//clnsurf(nsrf),
1299     $         "Latent heat flux "//clnsurf(nsrf), "W/m2", 
1300     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
1301     $         "ave(X)", zstophy,zout)
1302C
1303           call histdef(nid_mth, "flw_"//clnsurf(nsrf),
1304     $         "LW "//clnsurf(nsrf), "W/m2",
1305     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
1306     $         "ave(X)", zstophy,zout)
1307c
1308           call histdef(nid_mth, "fsw_"//clnsurf(nsrf),
1309     $         "SW "//clnsurf(nsrf), "W/m2",
1310     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
1311     $         "ave(X)", zstophy,zout)
1312C
1313           call histdef(nid_mth, "wbils_"//clnsurf(nsrf),
1314     $         "Bilan sol "//clnsurf(nsrf), "W/m2",
1315     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
1316     $         "ave(X)", zstophy,zout)
1317C
1318           call histdef(nid_mth, "wbilo_"//clnsurf(nsrf),
1319     $         "Bilan eau "//clnsurf(nsrf), "kg/(m2*s)",
1320     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
1321     $         "ave(X)", zstophy,zout)
1322C
1323cIM 250105 BEG
1324          IF(1.EQ.0) THEN
1325C
1326           call histdef(nid_mth, "evapour_"//clnsurf(nsrf),
1327     $         "Evap*pourc "//clnsurf(nsrf), "kg/(s*m2)",
1328     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
1329     $         "ave(X)", zstophy,zout)
1330C
1331           call histdef(nid_mth, "prepour_"//clnsurf(nsrf),
1332     $         "Precip*pourc "//clnsurf(nsrf), "kg/(s*m2)",
1333     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
1334     $         "ave(X)", zstophy,zout)
1335C
1336          ENDIF !(1.EQ.0) THEN
1337cIM 250105 END
1338C
1339         END DO
1340c
1341         CALL histdef(nid_mth, "cdrm", "Momentum drag coef.", "-",
1342     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1343     .                "ave(X)", zstophy,zout)
1344c
1345         CALL histdef(nid_mth, "cdrh", "Heat drag coef.", "-",
1346     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1347     .                "ave(X)", zstophy,zout)
1348c
1349         CALL histdef(nid_mth, "cldl", "Low-level cloudiness", "-",
1350     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1351     .                "ave(X)", zstophy,zout)
1352c
1353         CALL histdef(nid_mth, "cldm", "Mid-level cloudiness", "-",
1354     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1355     .                "ave(X)", zstophy,zout)
1356c
1357         CALL histdef(nid_mth, "cldh", "High-level cloudiness", "-",
1358     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1359     .                "ave(X)", zstophy,zout)
1360c
1361         CALL histdef(nid_mth, "cldt", "Total cloudiness", "%",
1362     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1363     .                "ave(X)", zstophy,zout)
1364c
1365         CALL histdef(nid_mth,"cldq","Cloud liquid water path","kg/m2",
1366     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1367     .                "ave(X)", zstophy,zout)
1368c
1369         CALL histdef(nid_mth,"lwp","Cloud water path","kg/m2",
1370     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1371     .                "ave(X)", zstophy,zout)
1372c
1373         CALL histdef(nid_mth,"iwp","Cloud ice water path","kg/m2",
1374     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1375     .                "ave(X)", zstophy,zout)
1376c
1377         CALL histdef(nid_mth, "ue", "Zonal energy transport", "-",
1378     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1379     .                "ave(X)", zstophy,zout)
1380c
1381         CALL histdef(nid_mth, "ve", "Merid energy transport", "-",
1382     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1383     .                "ave(X)", zstophy,zout)
1384c
1385         CALL histdef(nid_mth, "uq", "Zonal humidity transport", "-",
1386     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1387     .                "ave(X)", zstophy,zout)
1388c
1389         CALL histdef(nid_mth, "vq", "Merid humidity transport", "-",
1390     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1391     .                "ave(X)", zstophy,zout)
1392cKE43
1393      IF(iflag_con.GE.3) THEN ! sb
1394c
1395         CALL histdef(nid_mth, "cape", "Conv avlbl pot ener", "J/kg",
1396     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1397     .                "ave(X)", zstophy,zout)
1398c
1399         CALL histdef(nid_mth, "pbase", "Cld base pressure", "mb",
1400     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1401     .                "ave(X)", zstophy,zout)
1402c
1403         CALL histdef(nid_mth, "ptop", "Cld top pressure", "mb",
1404     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1405     .                "ave(X)", zstophy,zout)
1406c
1407         CALL histdef(nid_mth, "fbase", "Cld base mass flux", "kg/m2/s",
1408     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1409     .                "ave(X)", zstophy,zout)
1410c
1411         CALL histdef(nid_mth, "prw", "Precipitable water", "kg/m2",
1412     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1413     .                "ave(X)", zstophy,zout)
1414c
1415         CALL histdef(nid_mth, "upwd", "saturated updraft", "kg/m2/s",
1416     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1417     .                "ave(X)", zstophy,zout)
1418c
1419      ENDIF !iflag_con .GE. 3
1420c34EK
1421cIM cf. AM 081204 BEG
1422c34EK
1423c HBTM2
1424         CALL histdef(nid_mth, "s_pblh", "Boundary Layer Height", "m",
1425     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1426     .                "ave(X)", zstophy,zout)
1427         CALL histdef(nid_mth, "s_pblt", "T at Boundary Layer Height",
1428     .                "K",
1429     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1430     .                "ave(X)", zstophy,zout)
1431         CALL histdef(nid_mth, "s_lcl", "Condensation level", "m",
1432     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1433     .                "ave(X)", zstophy,zout)
1434         CALL histdef(nid_mth,"s_capCL","Conv avlbl pot ener for ABL",
1435     .                "J/m2",
1436     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1437     .                "ave(X)", zstophy,zout)
1438         CALL histdef(nid_mth, "s_oliqCL", "Liq Water in BL", "kg/m2",
1439     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1440     .                "ave(X)", zstophy,zout)
1441         CALL histdef(nid_mth,"s_cteiCL","Instability criteria (ABL)",
1442     .                "K",
1443     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1444     .                "ave(X)", zstophy,zout)
1445         CALL histdef(nid_mth, "s_therm", "Exces du thermique", "K",
1446     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1447     .                "ave(X)", zstophy,zout)
1448         CALL histdef(nid_mth, "s_trmb1", "deep_cape(HBTM2)", "J/m2",
1449     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1450     .                "ave(X)", zstophy,zout)
1451         CALL histdef(nid_mth, "s_trmb2", "inhibition (HBTM2)", "J/m2",
1452     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1453     .                "ave(X)", zstophy,zout)
1454         CALL histdef(nid_mth, "s_trmb3", "Point Omega (HBTM2)", "m",
1455     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1456     .                "ave(X)", zstophy,zout)
1457c
1458cIM cf. AM 081204 END
1459c
1460c Champs interpolles sur des niveaux de pression
1461         DO k=1, nlevSTD
1462c
1463c        bb=clevSTD(k)
1464c
1465c        IF(k.GE.2) THEN
1466         IF(k.GE.2.AND.k.LE.12) bb2=clevSTD(k)
1467         IF(k.GE.13.AND.k.LE.17) bb3=clevSTD(k)
1468c         aa=clevSTD(k)
1469c         bb=aa(1:lnblnk1(aa))
1470c        ENDIF
1471c
1472       IF(bb2.EQ."850".OR.bb2.EQ."700"
1473     $   .OR.bb2.EQ."500".OR.bb2.EQ."200") THEN
1474c
1475          CALL histdef(nid_mth, "u"//bb2,
1476     .                 "Zonal wind "//bb2//"mb","m/s",
1477     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1478     .                "inst(X)", zout,zout)
1479c
1480          CALL histdef(nid_mth, "v"//bb2,
1481     .                 "Meridional wind "//bb2//"mb","m/s",
1482     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1483     .                "inst(X)", zout,zout)
1484c
1485          CALL histdef(nid_mth, "w"//bb2,
1486     .                 "Vertical wind "//bb2//"mb","m/s",
1487     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1488     .                "inst(X)", zout,zout)
1489c
1490          CALL histdef(nid_mth, "phi"//bb2,
1491     .                 "Geopotential "//bb2//"mb","m",
1492     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
1493     .                "inst(X)", zout,zout)
1494c
1495         ENDIF !(bb2.EQ."850".OR.bb2.EQ."700"
1496c
1497       ENDDO !nlevSTD
1498c
1499cIM diagnostiques flux ocean-atm ou ocean-glace de mer
1500cIM pour utilisation dans un modele de "slab" ocean
1501c
1502       CALL histdef(nid_mth, "fluxo",
1503     .              "Flux turbulents ocean-atmosphere", "W/m2",
1504     .              iim,jjmp1,nhori, 1,1,1, -99, 32,
1505     .              "ave(X)", zstophy,zout)
1506c
1507       CALL histdef(nid_mth, "fluxg",
1508     .              "Flux turbulents ocean-glace de mer","W/m2",
1509     .              iim,jjmp1,nhori, 1,1,1, -99, 32,
1510     .              "ave(X)", zstophy,zout)
1511c
1512       CALL histdef(nid_mth, "t_oce_sic",
1513     .              "Temp. mixte oce-sic","K",
1514     .              iim,jjmp1,nhori, 1,1,1, -99, 32,
1515     .              "ave(X)", zstophy,zout)
1516c
1517       IF (OCEAN.EQ.'force ') THEN
1518c
1519        CALL histdef(nid_mth, "lmt_bils",
1520     .       "Bilan au sol atmosphere forcee", "W/m2",
1521     .       iim,jjmp1,nhori, 1,1,1, -99, 32,
1522     .       "ave(X)", zstophy,zout)
1523c
1524       ELSE IF (OCEAN.EQ.'slab  ') THEN
1525c
1526        CALL histdef(nid_mth, "slab_bils",
1527     .              "Bilan au sol Slab", "W/m2",
1528     .              iim,jjmp1,nhori, 1,1,1, -99, 32,
1529     .              "ave(X)", zstophy,zout)
1530c
1531        CALL histdef(nid_mth, "tslab", "Slab SST ", "K",
1532     .              iim,jjmp1,nhori, 1,1,1, -99, 32,
1533     .              "ave(X)", zstophy,zout)
1534c
1535        CALL histdef(nid_mth, "seaice", "Slab seaice", "kg/m2",
1536     .              iim,jjmp1,nhori, 1,1,1, -99, 32,
1537     .              "ave(X)", zstophy,zout)
1538c
1539        CALL histdef(nid_mth, "siceh", "Slab seaice height", "m",
1540     .              iim,jjmp1,nhori, 1,1,1, -99, 32,
1541     .              "ave(X)", zstophy,zout)
1542c
1543       ENDIF !OCEAN.EQ.slab/force
1544c
1545      ENDIF !lev_histmth.GE.1
1546c
1547      IF(lev_histmth.GE.2) THEN
1548c
1549c Champs 3D:
1550c
1551c
1552         CALL histdef(nid_mth,"lwcon","Cloud liquid water content",
1553     .                "kg/kg",
1554     .                iim,jjmp1,nhori, klev,1,klev, nvert, 32, 
1555     .                "ave(X)", zstophy,zout)
1556c
1557         CALL histdef(nid_mth,"iwcon","Cloud ice water content","kg/kg",
1558     .                iim,jjmp1,nhori, klev,1,klev, nvert, 32, 
1559     .                "ave(X)", zstophy,zout)
1560c
1561         CALL histdef(nid_mth, "temp", "Air temperature", "K",
1562     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1563     .                "ave(X)", zstophy,zout)
1564c
1565         CALL histdef(nid_mth, "ovap", "Specific humidity", "kg/kg",
1566     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1567     .                "ave(X)", zstophy,zout)
1568c
1569c        CALL histdef(nid_mth,"wvap","Water vapor mixing ratio","kg/kg",
1570c    .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1571c    .                "ave(X)", zstophy,zout)
1572c
1573         CALL histdef(nid_mth, "geop", "Geopotential height", "m2/s2",
1574     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1575     .                "ave(X)", zstophy,zout)
1576c
1577         CALL histdef(nid_mth, "vitu", "Zonal wind", "m/s",
1578     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1579     .                "ave(X)", zstophy,zout)
1580c
1581         CALL histdef(nid_mth, "vitv", "Meridional wind", "m/s",
1582     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1583     .                "ave(X)", zstophy,zout)
1584c
1585         CALL histdef(nid_mth, "vitw", "Vertical wind", "m/s",
1586     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1587     .                "ave(X)", zstophy,zout)
1588c
1589         CALL histdef(nid_mth, "pres", "Air pressure", "Pa",
1590     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1591     .                "ave(X)", zstophy,zout)
1592c
1593        CALL histdef(nid_mth, "rneb", "Cloud fraction", "%",
1594     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1595     .                "ave(X)", zstophy,zout)
1596c
1597         CALL histdef(nid_mth, "rnebcon", "Convective Cloud Fraction"
1598     .                , "-",
1599     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1600     .                "ave(X)", zstophy,zout)
1601c
1602         CALL histdef(nid_mth, "rhum", "Relative humidity", "-",
1603     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1604     .                "ave(X)", zstophy,zout)
1605c
1606         CALL histdef(nid_mth, "ozone", "Ozone concentration", "ppmv",
1607     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1608     .                "ave(X)", zstophy,zout)
1609c
1610         CALL histdef(nid_mth, "dtphy", "Physics dT", "K/s",
1611     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1612     .                "ave(X)", zstophy,zout)
1613c
1614         CALL histdef(nid_mth, "dqphy","Physics dQ","(kg/kg)/s",
1615     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1616     .                "ave(X)", zstophy,zout)
1617c
1618      ENDIF !lev_histmth.GE.2
1619c
1620      IF(lev_histmth.GE.3) THEN
1621c
1622        DO nsrf=1, nbsrf
1623c
1624           call histdef(nid_mth, "albe_"//clnsurf(nsrf),
1625     $         "Albedo surf. "//clnsurf(nsrf), "-", 
1626     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
1627     $         "ave(X)", zstophy,zout)
1628c
1629           call histdef(nid_mth, "rugs_"//clnsurf(nsrf),
1630     $         "Rugosite "//clnsurf(nsrf), "m", 
1631     $         iim,jjmp1,nhori, 1,1,1, -99, 32,
1632     $         "ave(X)", zstophy,zout)
1633c
1634         CALL histdef(nid_mth, "ages_"//clnsurf(nsrf), "Snow age","day",
1635     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1636     .                "ave(X)", zstophy,zout)
1637c
1638         ENDDO !nsrf=1, nbsrf
1639c
1640         CALL histdef(nid_mth, "albs", "Surface albedo", "-",
1641     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1642     .                "ave(X)", zstophy,zout)
1643         CALL histdef(nid_mth, "albslw", "Surface albedo LW", "-",
1644     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
1645     .                "ave(X)", zstophy,zout)
1646c
1647      ENDIF !lev_histmth.GE.3
1648c
1649      IF(lev_histmth.GE.4) THEN
1650c
1651         CALL histdef(nid_mth, "clwcon", 
1652     .                "Convective Cloud Liquid water content"
1653     .                , "kg/kg",
1654     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1655     .                "ave(X)", zstophy,zout)
1656c
1657         CALL histdef(nid_mth,"Ma","undilute adiab updraft","kg/m2/s",
1658     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1659     .                "ave(X)", zstophy,zout)
1660c
1661         CALL histdef(nid_mth, "dnwd", "saturated downdraft","kg/m2/s",
1662     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1663     .                "ave(X)", zstophy,zout)
1664c
1665         CALL histdef(nid_mth, "dnwd0", "unsat. downdraft", "kg/m2/s",
1666     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1667     .                "ave(X)", zstophy,zout)
1668c
1669         CALL histdef(nid_mth, "dtdyn", "Dynamics dT", "K/s",
1670     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1671     .                "ave(X)", zstophy,zout)
1672c
1673         CALL histdef(nid_mth, "dqdyn","Dynamics dQ","(kg/kg)/s",
1674     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1675     .                "ave(X)", zstophy,zout)
1676c
1677         CALL histdef(nid_mth, "dqcon","Convection dQ","(kg/kg)/s",
1678     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1679     .                "ave(X)", zstophy,zout)
1680c
1681         CALL histdef(nid_mth, "dtlschr",
1682     $       "Large-scale condensational heating rate", "K/s",iim,jjmp1
1683     $       ,nhori, klev,1,klev,nvert, 32,"ave(X)", zstophy,zout)
1684c
1685         CALL histdef(nid_mth, "dqlsc","Condensation dQ","(kg/kg)/s",
1686     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1687     .                "ave(X)", zstophy,zout)
1688c
1689         CALL histdef(nid_mth, "dtvdf", "Boundary-layer dT", "K/s",
1690     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1691     .                "ave(X)", zstophy,zout)
1692c
1693         CALL histdef(nid_mth, "dqvdf","Boundary-layer dQ","(kg/kg)/s",
1694     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1695     .                "ave(X)", zstophy,zout)
1696c
1697         CALL histdef(nid_mth, "dteva", "Reevaporation dT", "K/s",
1698     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1699     .                "ave(X)", zstophy,zout)
1700c
1701         CALL histdef(nid_mth,"dqeva","Reevaporation dQ","(kg/kg)/s",
1702     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1703     .                "ave(X)", zstophy,zout)
1704
1705         CALL histdef(nid_mth, "ptconv", "POINTS CONVECTIFS"," ",
1706     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1707     .                "ave(X)", zstophy,zout)
1708
1709         CALL histdef(nid_mth, "ratqs", "RATQS"," ",
1710     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1711     .                "ave(X)", zstophy,zout)
1712
1713c
1714         CALL histdef(nid_mth, "dqajs","Dry adjust. dQ","(kg/kg)/s",
1715     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1716     .                "ave(X)", zstophy,zout)
1717c
1718         CALL histdef(nid_mth, "dtswr", "SW radiation dT", "K/s",
1719     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1720     .                "ave(X)", zstophy,zout)
1721c
1722         CALL histdef(nid_mth, "dtsw0", "CS SW radiation dT", "K/s",
1723     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1724     .                "ave(X)", zstophy,zout)
1725c
1726         CALL histdef(nid_mth, "dtlwr", "LW radiation dT", "K/s",
1727     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1728     .                "ave(X)", zstophy,zout)
1729c
1730         CALL histdef(nid_mth,"dtlw0","CS LW radiation dT","K/s",
1731     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1732     .                "ave(X)", zstophy,zout)
1733c
1734         CALL histdef(nid_mth, "dtec", "Cinetic dissip dT", "K/s",
1735     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1736     .                "ave(X)", zstophy,zout)
1737c
1738         CALL histdef(nid_mth, "duvdf", "Boundary-layer dU", "m/s2",
1739     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1740     .                "ave(X)", zstophy,zout)
1741c
1742         CALL histdef(nid_mth, "dvvdf", "Boundary-layer dV", "m/s2",
1743     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1744     .                "ave(X)", zstophy,zout)
1745c
1746         IF (ok_orodr) THEN
1747         CALL histdef(nid_mth, "duoro", "Orography dU", "m/s2",
1748     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1749     .                "ave(X)", zstophy,zout)
1750c
1751         CALL histdef(nid_mth, "dvoro", "Orography dV", "m/s2",
1752     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1753     .                "ave(X)", zstophy,zout)
1754c
1755         ENDIF
1756C
1757         IF (ok_orolf) THEN
1758         CALL histdef(nid_mth, "dulif", "Orography dU", "m/s2",
1759     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1760     .                "ave(X)", zstophy,zout)
1761c
1762         CALL histdef(nid_mth, "dvlif", "Orography dV", "m/s2",
1763     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1764     .                "ave(X)", zstophy,zout)
1765         ENDIF
1766C
1767         if (nqmax.GE.3) THEN
1768         DO iq=3,nqmax
1769         iiq=niadv(iq)
1770         CALL histdef(nid_mth, tnom(iq), ttext(iiq), "-",
1771     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
1772     .                "ave(X)", zstophy,zout)
1773         ENDDO
1774         ENDIF
1775
1776      ENDIF !lev_histmth.GE.4
1777c
1778      ENDIF !type_run.EQ."CLIM".OR.type_run.EQ."ENSP")
1779c
1780         CALL histend(nid_mth)
1781c
1782         ndex2d = 0
1783         ndex3d = 0
1784c
1785      ENDIF ! fin de test sur ok_mensuel
Note: See TracBrowser for help on using the repository browser.