source: LMDZ4/branches/unlabeled-1.1.1/libf/phylmd/write_histmth.h @ 4045

Last change on this file since 4045 was 524, checked in by lmdzadmin, 20 years ago

Initial revision

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 30.7 KB
Line 
1!
2! $Header$
3!
4      IF (ok_mensuel) THEN
5c
6      ndex2d = 0
7      ndex3d = 0
8
9         zsto = dtime
10         zout = dtime * ecrit_mth
11         itau_w = itau_phy + itap
12
13      i = NINT(zout/zsto)
14c
15      IF(lev_histmth.GE.1) THEN
16c
17c Champs 2D:
18c
19      CALL gr_fi_ecrit(1,klon,iim,jjmp1,pphis,zx_tmp_2d)
20      CALL histwrite(nid_mth,"phis",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
21C
22      i = NINT(zout/zsto)
23      CALL gr_fi_ecrit(1,klon,iim,jjmp1,airephy,zx_tmp_2d)
24      CALL histwrite(nid_mth,"aire",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
25c
26      zx_tmp_fi2d(1 : klon) = pctsrf( 1 : klon, is_ter)
27      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
28      CALL histwrite(nid_mth,"pourc_"//clnsurf(is_ter),itau_w,
29     $      zx_tmp_2d,iim*jjmp1,ndex2d)
30c
31      CALL gr_fi_ecrit(1, klon,iim,jjmp1, slp,zx_tmp_2d)
32      CALL histwrite(nid_mth,"slp",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
33
34      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxtsol,zx_tmp_2d)
35      CALL histwrite(nid_mth,"tsol",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
36c
37      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zt2m,zx_tmp_2d)
38      CALL histwrite(nid_mth,"t2m",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
39c
40c ENSEMBLES BEG
41      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zt2m,zx_tmp_2d)
42      CALL histwrite(nid_mth,"t2m_min",itau_w,zx_tmp_2d,
43     .               iim*jjmp1,ndex2d)
44c
45      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zt2m,zx_tmp_2d)
46      CALL histwrite(nid_mth,"t2m_max",itau_w,zx_tmp_2d,
47     .               iim*jjmp1,ndex2d)
48c
49c     CALL gr_fi_ecrit(1,klon,iim,jjmp1,ftsoil(:,1,is_ter),zx_tmp_2d)
50c     CALL gr_fi_ecrit(1,klon,iim,jjmp1,ftsol(:,is_ter),zx_tmp_2d)
51c     CALL gr_fi_ecrit(1,klon,iim,jjmp1,ztsol,zx_tmp_2d)
52c     CALL histwrite(nid_mth,"tsoil",itau_w,zx_tmp_2d,
53c    .               iim*jjmp1,ndex2d)
54c
55      DO i=1, klon
56       zx_tmp_fi2d(i)=SQRT(zu10m(i)*zu10m(i)+zv10m(i)*zv10m(i))
57      ENDDO
58      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
59      CALL histwrite(nid_mth,"wind10m",itau_w,zx_tmp_2d,
60     $     iim*jjmp1,ndex2d)
61c
62      DO i = 1, klon
63         zx_tmp_fi2d(i) = pctsrf(i,is_sic)
64      ENDDO
65      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
66      CALL histwrite(nid_mth,"sicf",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
67c
68c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, t_seri, zx_tmp_3d)
69c     CALL histwrite(nid_mth,"temp",itau_w,zx_tmp_3d,
70c    .                                   iim*jjmp1*klev,ndex3d)
71c
72c ENSEMBLES END
73c
74      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zq2m,zx_tmp_2d)
75      CALL histwrite(nid_mth,"q2m",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
76c
77      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zu10m,zx_tmp_2d)
78      CALL histwrite(nid_mth,"u10m",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
79C
80      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zv10m,zx_tmp_2d)
81      CALL histwrite(nid_mth,"v10m",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
82C
83      DO i = 1, klon
84         zx_tmp_fi2d(i) = paprs(i,1)
85      ENDDO
86      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
87      CALL histwrite(nid_mth,"psol",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
88c
89      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxqsurf,zx_tmp_2d)
90      CALL histwrite(nid_mth,"qsurf",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
91c
92      if (.not. ok_veget) then
93          CALL gr_fi_ecrit(1, klon,iim,jjmp1, qsol,zx_tmp_2d)
94          CALL histwrite(nid_mth,"qsol",itau_w,zx_tmp_2d,iim*jjmp1
95     $        ,ndex2d)
96      endif
97c
98      DO i = 1, klon
99         zx_tmp_fi2d(i) = rain_fall(i) + snow_fall(i)
100      ENDDO
101      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
102      CALL histwrite(nid_mth,"precip",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
103c
104      CALL gr_fi_ecrit(1, klon,iim,jjmp1, nday_rain,zx_tmp_2d)
105      CALL histwrite(nid_mth,"ndayrain",itau_w,zx_tmp_2d,
106     $               iim*jjmp1,ndex2d)
107c
108      DO i = 1, klon
109         zx_tmp_fi2d(i) = rain_lsc(i) + snow_lsc(i)
110      ENDDO
111      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
112      CALL histwrite(nid_mth,"plul",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
113c
114      DO i = 1, klon
115         zx_tmp_fi2d(i) = rain_con(i) + snow_con(i)
116      ENDDO
117      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
118      CALL histwrite(nid_mth,"pluc",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
119c
120      CALL gr_fi_ecrit(1, klon,iim,jjmp1, snow_fall,zx_tmp_2d)
121      CALL histwrite(nid_mth,"snow",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
122c
123      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxsnow,zx_tmp_2d)
124      CALL histwrite(nid_mth,"snow_mass",itau_w,zx_tmp_2d,iim*jjmp1,
125     .               ndex2d)
126c
127cIM: 071003
128c     zx_tmp_fi2d(1:klon)=evap(1:klon)*86400.
129c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
130      CALL gr_fi_ecrit(1, klon,iim,jjmp1, evap,zx_tmp_2d)
131      CALL histwrite(nid_mth,"evap",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
132c
133      CALL gr_fi_ecrit(1, klon,iim,jjmp1, topsw,zx_tmp_2d)
134      CALL histwrite(nid_mth,"tops",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
135c
136      CALL gr_fi_ecrit(1, klon,iim,jjmp1, topsw0,zx_tmp_2d)
137      CALL histwrite(nid_mth,"tops0",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
138c
139      CALL gr_fi_ecrit(1, klon,iim,jjmp1, toplw,zx_tmp_2d)
140      CALL histwrite(nid_mth,"topl",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
141c
142      CALL gr_fi_ecrit(1, klon,iim,jjmp1, toplw0,zx_tmp_2d)
143      CALL histwrite(nid_mth,"topl0",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
144c
145c     zx_tmp_fi2d(1 : klon) = ZFSUP( 1 : klon, klevp1)
146cIM 080304   zx_tmp_fi2d(1 : klon) = swup ( 1 : klon, 2 )
147      zx_tmp_fi2d(1 : klon) = swup ( 1 : klon, klevp1 )
148      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
149      CALL histwrite(nid_mth, "SWupTOA",itau_w,zx_tmp_2d,
150     .                               iim*jjmp1,ndex2d)
151c
152c
153c      zx_tmp_fi2d(1 : klon) = ZFSUP0( 1 : klon, klevp1)
154cIM 080304   zx_tmp_fi2d(1 : klon) = swup0 ( 1 : klon, 2 )
155      zx_tmp_fi2d(1 : klon) = swup0 ( 1 : klon, klevp1 )
156      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
157      CALL histwrite(nid_mth, "SWupTOAclr",itau_w,zx_tmp_2d,
158     .                               iim*jjmp1,ndex2d)
159c
160c      zx_tmp_fi2d(1 : klon) = ZFSDN( 1 : klon, klevp1)
161cIM 080304   zx_tmp_fi2d(1 : klon) = swdn ( 1 : klon, 2 )
162      zx_tmp_fi2d(1 : klon) = swdn ( 1 : klon, klevp1 )
163      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
164      CALL histwrite(nid_mth, "SWdnTOA",itau_w,zx_tmp_2d,
165     .                               iim*jjmp1,ndex2d)
166c
167c      zx_tmp_fi2d(1 : klon) = ZFSDN0( 1 : klon, klevp1)
168cIM 080304   zx_tmp_fi2d(1 : klon) = swdn0 ( 1 : klon, 2 )
169      zx_tmp_fi2d(1 : klon) = swdn0 ( 1 : klon, klevp1 )
170      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
171      CALL histwrite(nid_mth, "SWdnTOAclr",itau_w,zx_tmp_2d,
172     .                               iim*jjmp1,ndex2d)
173c
174      CALL gr_fi_ecrit(1, klon,iim,jjmp1, SWup200,zx_tmp_2d)
175      CALL histwrite(nid_mth,"SWup200",itau_w,zx_tmp_2d,
176     $     iim*jjmp1,ndex2d)
177c
178      CALL gr_fi_ecrit(1, klon,iim,jjmp1, SWup200clr,zx_tmp_2d)
179      CALL histwrite(nid_mth,"SWup200clr",itau_w,zx_tmp_2d,
180     $     iim*jjmp1,ndex2d)
181c
182      CALL gr_fi_ecrit(1, klon,iim,jjmp1, SWdn200,zx_tmp_2d)
183      CALL histwrite(nid_mth,"SWdn200",itau_w,zx_tmp_2d,
184     $     iim*jjmp1,ndex2d)
185c
186      CALL gr_fi_ecrit(1, klon,iim,jjmp1, SWdn200clr,zx_tmp_2d)
187      CALL histwrite(nid_mth,"SWdn200clr",itau_w,zx_tmp_2d,
188     $     iim*jjmp1,ndex2d)
189c
190      CALL gr_fi_ecrit(1, klon,iim,jjmp1, LWup200,zx_tmp_2d)
191      CALL histwrite(nid_mth,"LWup200",itau_w,zx_tmp_2d,
192     $     iim*jjmp1,ndex2d)
193c
194      CALL gr_fi_ecrit(1, klon,iim,jjmp1, LWup200clr,zx_tmp_2d)
195      CALL histwrite(nid_mth,"LWup200clr",itau_w,zx_tmp_2d,
196     $     iim*jjmp1,ndex2d)
197c
198      zx_tmp_fi2d(1:klon)=-1*LWdn200(1:klon)
199      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
200      CALL histwrite(nid_mth,"LWdn200",itau_w,zx_tmp_2d,
201     $     iim*jjmp1,ndex2d)
202c
203      zx_tmp_fi2d(1:klon)=-1*LWdn200clr(1:klon)
204      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
205      CALL histwrite(nid_mth,"LWdn200clr",itau_w,zx_tmp_2d,
206     $     iim*jjmp1,ndex2d)
207c
208c200 END
209      CALL gr_fi_ecrit(1, klon,iim,jjmp1, solsw,zx_tmp_2d)
210      CALL histwrite(nid_mth,"sols",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
211c
212      CALL gr_fi_ecrit(1, klon,iim,jjmp1, solsw0,zx_tmp_2d)
213      CALL histwrite(nid_mth,"sols0",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
214c
215      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollw,zx_tmp_2d)
216      CALL histwrite(nid_mth,"soll",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
217c
218      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollw0,zx_tmp_2d)
219      CALL histwrite(nid_mth,"soll0",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
220c
221c      zx_tmp_fi2d(1 : klon) = ZFSUP( 1 : klon, 1)
222      zx_tmp_fi2d(1 : klon) = swup ( 1 : klon, 1 )
223      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
224      CALL histwrite(nid_mth, "SWupSFC",itau_w,zx_tmp_2d,
225     .                               iim*jjmp1,ndex2d)
226c
227c      zx_tmp_fi2d(1 : klon) = ZFSUP0( 1 : klon, 1)
228      zx_tmp_fi2d(1 : klon) = swup0 ( 1 : klon, 1 )
229      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
230      CALL histwrite(nid_mth, "SWupSFCclr",itau_w,zx_tmp_2d,
231     .                               iim*jjmp1,ndex2d)
232c
233c      zx_tmp_fi2d(1 : klon) = ZFSDN( 1 : klon, 1)
234      zx_tmp_fi2d(1 : klon) = swdn ( 1 : klon, 1 )
235      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
236      CALL histwrite(nid_mth, "SWdnSFC",itau_w,zx_tmp_2d,
237     .                               iim*jjmp1,ndex2d)
238c
239c      zx_tmp_fi2d(1 : klon) = ZFSDN0( 1 : klon, 1)
240      zx_tmp_fi2d(1 : klon) = swdn0 ( 1 : klon, 1 )
241      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
242      CALL histwrite(nid_mth, "SWdnSFCclr",itau_w,zx_tmp_2d,
243     .                               iim*jjmp1,ndex2d)
244c
245      zx_tmp_fi2d(1:klon)=sollw(1:klon)+sollwdown(1:klon)
246      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d, zx_tmp_2d)
247      CALL histwrite(nid_mth,"LWupSFC",itau_w,zx_tmp_2d,iim*jjmp1,
248     .               ndex2d)
249c
250      zx_tmp_fi2d(1:klon)=sollw0(1:klon)+sollwdownclr(1:klon)
251      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d, zx_tmp_2d)
252      CALL histwrite(nid_mth,"LWupSFCclr",itau_w,zx_tmp_2d,iim*jjmp1,
253     .               ndex2d)
254c
255      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollwdown,zx_tmp_2d)
256      CALL histwrite(nid_mth,"LWdnSFC",itau_w,zx_tmp_2d,iim*jjmp1,
257     .               ndex2d)
258c
259      DO i=1, klon
260       sollwdownclr(i)=lwdn0(i,1)
261      ENDDO !i=1, klon
262c
263      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollwdownclr,zx_tmp_2d)
264      CALL histwrite(nid_mth,"LWdnSFCclr",itau_w,zx_tmp_2d,
265     $               iim*jjmp1,ndex2d)
266c
267c
268c effets des aerosols
269c
270c     IF (ok_ade.OR.ok_aie) THEN
271      zx_tmp_fi2d(1:klon) = topswai(1:klon) - topswad(1:klon)
272c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, topswad,zx_tmp_2d)
273      CALL gr_fi_ecrit(1, klon,iim,jjmp1,zx_tmp_fi2d ,zx_tmp_2d)
274      CALL histwrite(nid_mth,"topsad",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
275c
276      zx_tmp_fi2d(1:klon) = solswai(1:klon) - solswad(1:klon)
277c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, solswad,zx_tmp_2d)
278      CALL gr_fi_ecrit(1, klon,iim,jjmp1,zx_tmp_fi2d ,zx_tmp_2d)
279      CALL histwrite(nid_mth,"solsad",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
280c
281      zx_tmp_fi2d(1:klon) = topsw(1:klon) - topswai(1:klon)
282c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, topswai,zx_tmp_2d)
283      CALL gr_fi_ecrit(1, klon,iim,jjmp1,zx_tmp_fi2d ,zx_tmp_2d)
284      CALL histwrite(nid_mth,"topsai",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
285c
286      zx_tmp_fi2d(1:klon) = solsw(1:klon) - solswai(1:klon)
287c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, solswai,zx_tmp_2d)
288      CALL gr_fi_ecrit(1, klon,iim,jjmp1,zx_tmp_fi2d ,zx_tmp_2d)
289      CALL histwrite(nid_mth,"solsai",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
290c     endif
291c
292      CALL gr_fi_ecrit(1, klon,iim,jjmp1, bils,zx_tmp_2d)
293      CALL histwrite(nid_mth,"bils",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
294c
295      zx_tmp_fi2d(1:klon)=-1*sens(1:klon)
296c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, sens,zx_tmp_2d)
297      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
298      CALL histwrite(nid_mth,"sens",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
299c
300      CALL gr_fi_ecrit(1, klon,iim,jjmp1, fder,zx_tmp_2d)
301      CALL histwrite(nid_mth,"fder",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
302c
303c
304c      DO i = 1, klon
305c         zx_tmp_fi2d(i) = fluxu(i,1)
306c      ENDDO
307c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
308c      CALL histwrite(nid_mth,"frtu",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
309c
310c      DO i = 1, klon
311c         zx_tmp_fi2d(i) = fluxv(i,1)
312c      ENDDO
313c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
314c      CALL histwrite(nid_mth,"frtv",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
315c
316c
317       CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxffonte,zx_tmp_2d)
318       CALL histwrite(nid_mth,"ffonte",itau_w,zx_tmp_2d,iim*jjmp1,
319     $                ndex2d)
320c
321       CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxfqcalving,zx_tmp_2d)
322       CALL histwrite(nid_mth,"fqcalving",itau_w,zx_tmp_2d,iim*jjmp1,
323     $                ndex2d)
324cIM: 171003
325       DO nsrf = 1, nbsrf
326        zx_tmp_fi2d(1 : klon) = fluxu( 1 : klon, 1, nsrf)
327        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
328        CALL histwrite(nid_mth,"taux_"//clnsurf(nsrf),itau_w,
329     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
330C     
331        zx_tmp_fi2d(1 : klon) = fluxv( 1 : klon, 1, nsrf)
332        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
333        CALL histwrite(nid_mth,"tauy_"//clnsurf(nsrf),itau_w,
334     $      zx_tmp_2d,iim*jjmp1,ndex2d)
335       ENDDO
336cIM: 171003
337c
338cIM      if ( lev_histday.gt.1 ) then
339      DO nsrf = 1, nbsrf
340CYYY
341       IF(nsrf.GT.1) THEN
342        zx_tmp_fi2d(1 : klon) = pctsrf( 1 : klon, nsrf)
343        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
344        CALL histwrite(nid_mth,"pourc_"//clnsurf(nsrf),itau_w,
345     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
346       ENDIF !nsrf.GT.1
347C
348        zx_tmp_fi2d(1 : klon) = ftsol( 1 : klon, nsrf)
349        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
350        CALL histwrite(nid_mth,"tsol_"//clnsurf(nsrf),itau_w,
351     $      zx_tmp_2d,iim*jjmp1,ndex2d)
352C
353        zx_tmp_fi2d(1 : klon) = fluxt( 1 : klon, 1, nsrf)
354        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
355        CALL histwrite(nid_mth,"sens_"//clnsurf(nsrf),itau_w,
356     $      zx_tmp_2d,iim*jjmp1,ndex2d)
357C
358        zx_tmp_fi2d(1 : klon) = fluxlat( 1 : klon, nsrf)
359        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
360        CALL histwrite(nid_mth,"lat_"//clnsurf(nsrf),itau_w,
361     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
362C
363        zx_tmp_fi2d(1 : klon) = fsollw( 1 : klon, nsrf)
364        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
365        CALL histwrite(nid_mth,"flw_"//clnsurf(nsrf),itau_w,
366     $      zx_tmp_2d,iim*jjmp1,ndex2d)
367c
368        zx_tmp_fi2d(1 : klon) = fsolsw( 1 : klon, nsrf)
369        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
370        CALL histwrite(nid_mth,"fsw_"//clnsurf(nsrf),itau_w,
371     $      zx_tmp_2d,iim*jjmp1,ndex2d)
372C
373        zx_tmp_fi2d(1 : klon) = wfbils( 1 : klon, nsrf)
374        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
375        CALL histwrite(nid_mth,"wbils_"//clnsurf(nsrf),itau_w,
376     $      zx_tmp_2d,iim*jjmp1,ndex2d)
377C
378
379      END DO 
380cIM      endif !lev_histday
381
382c
383      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragm,zx_tmp_2d)
384      CALL histwrite(nid_mth,"cdrm",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
385c
386      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragh,zx_tmp_2d)
387      CALL histwrite(nid_mth,"cdrh",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
388c
389      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldl,zx_tmp_2d)
390      CALL histwrite(nid_mth,"cldl",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
391c
392      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldm,zx_tmp_2d)
393      CALL histwrite(nid_mth,"cldm",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
394c
395      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldh,zx_tmp_2d)
396      CALL histwrite(nid_mth,"cldh",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
397c
398      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldt,zx_tmp_2d)
399      CALL histwrite(nid_mth,"cldt",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
400c
401      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldq,zx_tmp_2d)
402      CALL histwrite(nid_mth,"cldq",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
403c
404      zx_tmp_fi2d(1:klon) = flwp(1:klon)
405      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
406      CALL histwrite(nid_mth,"lwp",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
407c
408      zx_tmp_fi2d(1:klon) = fiwp(1:klon)
409      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
410      CALL histwrite(nid_mth,"iwp",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
411c
412      CALL gr_fi_ecrit(1, klon,iim,jjmp1, ue,zx_tmp_2d)
413      CALL histwrite(nid_mth,"ue",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
414c
415      CALL gr_fi_ecrit(1, klon,iim,jjmp1, ve,zx_tmp_2d)
416      CALL histwrite(nid_mth,"ve",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
417c
418      CALL gr_fi_ecrit(1, klon,iim,jjmp1, uq,zx_tmp_2d)
419      CALL histwrite(nid_mth,"uq",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
420c
421      CALL gr_fi_ecrit(1, klon,iim,jjmp1, vq,zx_tmp_2d)
422      CALL histwrite(nid_mth,"vq",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
423cKE43
424      IF (iflag_con.GE.3) THEN ! sb
425c
426      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cape,zx_tmp_2d)
427      CALL histwrite(nid_mth,"cape",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
428c
429      CALL gr_fi_ecrit(1, klon,iim,jjmp1,pbase,zx_tmp_2d)
430      CALL histwrite(nid_mth,"pbase",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
431c
432      CALL gr_fi_ecrit(1, klon,iim,jjmp1,ema_pct,zx_tmp_2d)
433      CALL histwrite(nid_mth,"ptop",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
434c
435      CALL gr_fi_ecrit(1, klon,iim,jjmp1,ema_cbmf,zx_tmp_2d)
436      CALL histwrite(nid_mth,"fbase",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
437c
438c34EK
439c
440      CALL gr_fi_ecrit(1, klon,iim,jjmp1, prw,zx_tmp_2d)
441      CALL histwrite(nid_mth,"prw",itau_w,zx_tmp_2d,
442     .               iim*jjmp1,ndex2d)
443c
444      ENDIF !iflag_con.GE.3
445c
446c
447c
448c  Champs interpolles sur des niveaux de pression
449      DO k=1, nlevENS
450c
451        CALL gr_fi_ecrit(1, klon,iim,jjmp1, ulev(:,k),zx_tmp_2d)
452        CALL histwrite(nid_mth,"u"//clev(k),itau_w,zx_tmp_2d,
453     $       iim*jjmp1,ndex2d)
454c
455        CALL gr_fi_ecrit(1, klon,iim,jjmp1, vlev(:,k),zx_tmp_2d)
456        CALL histwrite(nid_mth,"v"//clev(k),itau_w,zx_tmp_2d,
457     $       iim*jjmp1,ndex2d)
458c
459      CALL gr_fi_ecrit(1, klon,iim,jjmp1, wlev(:,k),zx_tmp_2d)
460      CALL histwrite(nid_mth,"w"//clev(k),itau_w,zx_tmp_2d,
461     $     iim*jjmp1,ndex2d)
462c
463      CALL gr_fi_ecrit(1, klon,iim,jjmp1, philev(:,k),zx_tmp_2d)
464      CALL histwrite(nid_mth,"phi"//clev(k),itau_w,zx_tmp_2d,
465     $     iim*jjmp1,ndex2d)
466c
467      ENDDO !nlevENS
468      ENDIF !lev_histmth.GE.1
469c
470      IF(lev_histmth.GE.2) THEN
471c
472c Champs 3D:
473C
474c
475      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, flwc,zx_tmp_3d)
476      CALL histwrite(nid_mth,"lwcon",itau_w,zx_tmp_3d,
477     .               iim*jjmp1*klev,ndex3d)
478c
479      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, fiwc,zx_tmp_3d)
480      CALL histwrite(nid_mth,"iwcon",itau_w,zx_tmp_3d,
481     .               iim*jjmp1*klev,ndex3d)
482c
483      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, t_seri, zx_tmp_3d)
484      CALL histwrite(nid_mth,"temp",itau_w,zx_tmp_3d,
485     .                                   iim*jjmp1*klev,ndex3d)
486c
487c#ifdef histmthNMC
488c#include "write_histmthNMC.h"
489c#endif
490c
491      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, qx(1,1,ivap), zx_tmp_3d)
492      CALL histwrite(nid_mth,"ovap",itau_w,zx_tmp_3d,
493     .                                   iim*jjmp1*klev,ndex3d)
494c
495cIM: 071003
496c     zx_tmp_fi3d(1:klon,1:klev)=qx(1:klon,1:klev,ivap)/
497c    .                         (1-qx(1:klon,1:klev,ivap))
498c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zx_tmp_fi3d, zx_tmp_3d)
499c     CALL histwrite(nid_mth,"wvap",itau_w,zx_tmp_3d,
500c    .                                   iim*jjmp1*klev,ndex3d)
501c
502      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zphi, zx_tmp_3d)
503      CALL histwrite(nid_mth,"geop",itau_w,zx_tmp_3d,
504     .                                   iim*jjmp1*klev,ndex3d)
505c
506      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, u_seri, zx_tmp_3d)
507      CALL histwrite(nid_mth,"vitu",itau_w,zx_tmp_3d,
508     .                                   iim*jjmp1*klev,ndex3d)
509c
510      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, v_seri, zx_tmp_3d)
511      CALL histwrite(nid_mth,"vitv",itau_w,zx_tmp_3d,
512     .                                   iim*jjmp1*klev,ndex3d)
513c
514      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, omega, zx_tmp_3d)
515      CALL histwrite(nid_mth,"vitw",itau_w,zx_tmp_3d,
516     .                                   iim*jjmp1*klev,ndex3d)
517c
518      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, pplay, zx_tmp_3d)
519      CALL histwrite(nid_mth,"pres",itau_w,zx_tmp_3d,
520     .                                   iim*jjmp1*klev,ndex3d)
521c
522      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, cldfra, zx_tmp_3d)
523      CALL histwrite(nid_mth,"rneb",itau_w,zx_tmp_3d,
524     .                                   iim*jjmp1*klev,ndex3d)
525c
526      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, rnebcon, zx_tmp_3d)
527      CALL histwrite(nid_mth,"rnebcon",itau_w,zx_tmp_3d,
528     .                                   iim*jjmp1*klev,ndex3d)
529c
530      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zx_rh, zx_tmp_3d)
531      CALL histwrite(nid_mth,"rhum",itau_w,zx_tmp_3d,
532     .                                   iim*jjmp1*klev,ndex3d)
533c
534      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, wo, zx_tmp_3d)
535      CALL histwrite(nid_mth,"ozone",itau_w,zx_tmp_3d,
536     .                                   iim*jjmp1*klev,ndex3d)
537c
538cIM 22.03.04 BEG
539      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t, zx_tmp_3d)
540      CALL histwrite(nid_mth,"dtphy",itau_w,zx_tmp_3d,
541     .                                   iim*jjmp1*klev,ndex3d)
542c
543      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_qx(:,:,ivap), 
544     .                 zx_tmp_3d)
545      CALL histwrite(nid_mth,"dqphy",itau_w,zx_tmp_3d,
546     .                                   iim*jjmp1*klev,ndex3d)
547cIM 22.03.04 END
548c
549      ENDIF !lev_histmth.GE.2
550c
551      IF(lev_histmth.GE.3) THEN
552c
553       DO nsrf=1, nbsrf
554c
555        zx_tmp_fi2d(1 : klon) = falbe( 1 : klon, nsrf)
556        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
557        CALL histwrite(nid_mth,"albe_"//clnsurf(nsrf),itau_w,
558     $      zx_tmp_2d,iim*jjmp1,ndex2d)
559C
560        zx_tmp_fi2d(1 : klon) = frugs( 1 : klon, nsrf)
561        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
562        CALL histwrite(nid_mth,"rugs_"//clnsurf(nsrf),itau_w,
563     $      zx_tmp_2d,iim*jjmp1,ndex2d)
564c
565      zx_tmp_fi2d(1 : klon) = agesno( 1 : klon, nsrf)
566      CALL gr_fi_ecrit(1, klon,iim,jjmp1, agesno,zx_tmp_2d)
567      CALL histwrite(nid_mth,"ages_"//clnsurf(nsrf),itau_w
568     $    ,zx_tmp_2d,iim*jjmp1,ndex2d)
569c
570      ENDDO !nsrf=1, nbsrf
571c
572      CALL gr_fi_ecrit(1, klon,iim,jjmp1, albsol,zx_tmp_2d)
573      CALL histwrite(nid_mth,"albs",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
574c
575      CALL gr_fi_ecrit(1, klon,iim,jjmp1, albsollw,zx_tmp_2d)
576      CALL histwrite(nid_mth,"albslw",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
577c
578      ENDIF !lev_histmth.GE.3
579c
580c
581      IF(lev_histmth.GE.4) THEN
582c
583      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, clwcon0, zx_tmp_3d)
584      CALL histwrite(nid_mth,"clwcon",itau_w,zx_tmp_3d,
585     .                                   iim*jjmp1*klev,ndex3d)
586c
587      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, Ma, zx_tmp_3d)
588      CALL histwrite(nid_mth,"Ma",itau_w,zx_tmp_3d,
589     .                                   iim*jjmp1*klev,ndex3d)
590c
591      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, upwd, zx_tmp_3d)
592      CALL histwrite(nid_mth,"upwd",itau_w,zx_tmp_3d,
593     .                                   iim*jjmp1*klev,ndex3d)
594c
595      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, dnwd, zx_tmp_3d)
596      CALL histwrite(nid_mth,"dnwd",itau_w,zx_tmp_3d,
597     .                                   iim*jjmp1*klev,ndex3d)
598c
599      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, dnwd0, zx_tmp_3d)
600      CALL histwrite(nid_mth,"dnwd0",itau_w,zx_tmp_3d,
601     .                                   iim*jjmp1*klev,ndex3d)
602c
603c
604      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t_dyn, zx_tmp_3d)
605      CALL histwrite(nid_mth,"dtdyn",itau_w,zx_tmp_3d,
606     .                                   iim*jjmp1*klev,ndex3d)
607c
608      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_q_dyn, zx_tmp_3d)
609      CALL histwrite(nid_mth,"dqdyn",itau_w,zx_tmp_3d,
610     .                                   iim*jjmp1*klev,ndex3d)
611c
612cIM: 101003 : K/30min ==> K/s
613      zx_tmp_fi3d(1:klon,1:klev)=d_t_con(1:klon,1:klev)/pdtphys
614      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
615      CALL histwrite(nid_mth,"dtcon",itau_w,zx_tmp_3d,
616     .                                   iim*jjmp1*klev,ndex3d)
617c
618      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_q_con, zx_tmp_3d)
619      CALL histwrite(nid_mth,"dqcon",itau_w,zx_tmp_3d,
620     .                                   iim*jjmp1*klev,ndex3d)
621c
622cIM: 101003 : K/30min ==> K/s
623      zx_tmp_fi3d(1:klon,1:klev)=d_t_lsc(1:klon,1:klev)/pdtphys
624      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
625      CALL histwrite(nid_mth,"dtlsc",itau_w,zx_tmp_3d,
626     .                                   iim*jjmp1*klev,ndex3d)
627cIM: 071003
628cIM: 101003 : K/30min ==> K/s
629      zx_tmp_fi3d(1:klon, 1:klev)=(d_t_lsc(1:klon,1:klev)+
630     .                             d_t_eva(1:klon,1:klev))/pdtphys
631      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zx_tmp_fi3d, zx_tmp_3d)
632      CALL histwrite(nid_mth,"dtlschr",itau_w,zx_tmp_3d,
633     .                                   iim*jjmp1*klev,ndex3d)
634c
635      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_q_lsc, zx_tmp_3d)
636      CALL histwrite(nid_mth,"dqlsc",itau_w,zx_tmp_3d,
637     .                                   iim*jjmp1*klev,ndex3d)
638c
639cIM: 101003 : K/30min ==> K/s
640      zx_tmp_fi3d(1:klon,1:klev)=d_t_vdf(1:klon,1:klev)/pdtphys
641      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
642      CALL histwrite(nid_mth,"dtvdf",itau_w,zx_tmp_3d,
643     .                                   iim*jjmp1*klev,ndex3d)
644c
645      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_q_vdf, zx_tmp_3d)
646      CALL histwrite(nid_mth,"dqvdf",itau_w,zx_tmp_3d,
647     .                                   iim*jjmp1*klev,ndex3d)
648c
649cIM: 101003 : K/30min ==> K/s
650      zx_tmp_fi3d(1:klon,1:klev)=d_t_eva(1:klon,1:klev)/pdtphys
651      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
652      CALL histwrite(nid_mth,"dteva",itau_w,zx_tmp_3d,
653     .                                   iim*jjmp1*klev,ndex3d)
654c
655      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_q_eva, zx_tmp_3d)
656      CALL histwrite(nid_mth,"dqeva",itau_w,zx_tmp_3d,
657     .                                   iim*jjmp1*klev,ndex3d)
658c
659      zpt_conv = 0.
660      where (ptconv) zpt_conv = 1.
661      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zpt_conv, zx_tmp_3d)
662      CALL histwrite(nid_mth,"ptconv",itau_w,zx_tmp_3d,
663     .                                   iim*(jjmp1)*klev,ndex3d)
664c
665      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, ratqs, zx_tmp_3d)
666      CALL histwrite(nid_mth,"ratqs",itau_w,zx_tmp_3d,
667     .                                   iim*(jjmp1)*klev,ndex3d)
668c
669cIM: 101003 : K/30min ==> K/s
670      zx_tmp_fi3d(1:klon,1:klev)=d_t_ajs(1:klon,1:klev)/pdtphys
671      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
672      CALL histwrite(nid_mth,"dtajs",itau_w,zx_tmp_3d,
673     .                                   iim*jjmp1*klev,ndex3d)
674c
675      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_q_ajs, zx_tmp_3d)
676      CALL histwrite(nid_mth,"dqajs",itau_w,zx_tmp_3d,
677     .                                   iim*jjmp1*klev,ndex3d)
678c
679cIM: 101003 : K/day ==> K/s
680cIM: LMD_ARMIP3   zx_tmp_fi3d(1:klon,1:klev)=heat(1:klon,1:klev)*pdtphys/RDAY
681      zx_tmp_fi3d(1:klon,1:klev)=heat(1:klon,1:klev)/RDAY
682      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
683      CALL histwrite(nid_mth,"dtswr",itau_w,zx_tmp_3d,
684     .                                   iim*jjmp1*klev,ndex3d)
685c
686cIM: 101003 : K/day ==> K/s     
687cIM: LMD_ARMIP3   zx_tmp_fi3d(1:klon,1:klev)=heat0(1:klon,1:klev)*pdtphys/RDAY
688      zx_tmp_fi3d(1:klon,1:klev)=heat0(1:klon,1:klev)/RDAY
689      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
690      CALL histwrite(nid_mth,"dtsw0",itau_w,zx_tmp_3d,
691     .                                   iim*jjmp1*klev,ndex3d)
692c
693cIM: 101003 : K/day ==> K/s     
694cIM: LMD_ARMIP3     zx_tmp_fi3d(1:klon,1:klev)=-1.*cool(1:klon,1:klev)*pdtphys/RDAY
695      zx_tmp_fi3d(1:klon,1:klev)=-1.*cool(1:klon,1:klev)/RDAY
696      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
697      CALL histwrite(nid_mth,"dtlwr",itau_w,zx_tmp_3d,
698     .                                   iim*jjmp1*klev,ndex3d)
699c
700cIM: 101003 : K/day ==> K/s     
701cIM: LMD_ARMIP3     zx_tmp_fi3d(1:klon,1:klev)=-1.*cool0(1:klon,1:klev)*pdtphys/RDAY
702      zx_tmp_fi3d(1:klon,1:klev)=-1.*cool0(1:klon,1:klev)/RDAY
703      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
704      CALL histwrite(nid_mth,"dtlw0",itau_w,zx_tmp_3d,
705     .                                   iim*jjmp1*klev,ndex3d)
706c
707cIM: 101003 : deja en K/s     
708      zx_tmp_fi3d(1:klon,1:klev)=d_t_ec(1:klon,1:klev)
709      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
710      CALL histwrite(nid_mth,"dtec",itau_w,zx_tmp_3d,
711     .                                   iim*jjmp1*klev,ndex3d)
712c
713      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_vdf, zx_tmp_3d)
714      CALL histwrite(nid_mth,"duvdf",itau_w,zx_tmp_3d,
715     .                                   iim*jjmp1*klev,ndex3d)
716c
717      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_v_vdf, zx_tmp_3d)
718      CALL histwrite(nid_mth,"dvvdf",itau_w,zx_tmp_3d,
719     .                                   iim*jjmp1*klev,ndex3d)
720c
721      IF (ok_orodr) THEN
722      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_oro, zx_tmp_3d)
723      CALL histwrite(nid_mth,"duoro",itau_w,zx_tmp_3d,
724     .                                   iim*jjmp1*klev,ndex3d)
725c
726      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_v_oro, zx_tmp_3d)
727      CALL histwrite(nid_mth,"dvoro",itau_w,zx_tmp_3d,
728     .                                   iim*jjmp1*klev,ndex3d)
729c
730      ENDIF
731C
732      IF (ok_orolf) THEN
733      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_lif, zx_tmp_3d)
734      CALL histwrite(nid_mth,"dulif",itau_w,zx_tmp_3d,
735     .                                   iim*jjmp1*klev,ndex3d)
736c
737      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_v_lif, zx_tmp_3d)
738      CALL histwrite(nid_mth,"dvlif",itau_w,zx_tmp_3d,
739     .                                   iim*jjmp1*klev,ndex3d)
740      ENDIF
741C
742c
743c effets des aerosols
744c
745c     IF (ok_ade.OR.ok_aie) THEN
746      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, re, zx_tmp_3d)
747      CALL histwrite(nid_mth,"re",itau_w,zx_tmp_3d,
748     .                                   iim*jjmp1*klev,ndex3d)
749c
750      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, fl, zx_tmp_3d)
751      CALL histwrite(nid_mth,"redenom",itau_w,zx_tmp_3d,
752     .                                   iim*jjmp1*klev,ndex3d)
753c
754      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, cldtau, zx_tmp_3d)
755      CALL histwrite(nid_mth,"tau",itau_w,zx_tmp_3d,
756     .                                   iim*jjmp1*klev,ndex3d)
757c
758      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, cldtaupi, zx_tmp_3d)
759      CALL histwrite(nid_mth,"taupi",itau_w,zx_tmp_3d,
760     .                                   iim*jjmp1*klev,ndex3d)
761c     endif
762c
763      IF (nqmax.GE.3) THEN
764      DO iq=1,nqmax-2
765      IF (iq.LE.99) THEN
766         CALL gr_fi_ecrit(klev,klon,iim,jjmp1, qx(1,1,iq+2), zx_tmp_3d)
767         WRITE(str2,'(i2.2)') iq
768         CALL histwrite(nid_mth,"trac"//str2,itau_w,zx_tmp_3d,
769     .                                   iim*jjmp1*klev,ndex3d)
770      ELSE
771         PRINT*, "Trop de traceurs"
772         CALL abort
773      ENDIF
774      ENDDO
775      ENDIF
776c
777      ENDIF !lev_histmth.GE.4
778c
779      if (ok_sync) then
780        call histsync(nid_mth)
781      endif
782      ENDIF
Note: See TracBrowser for help on using the repository browser.