source: LMDZ4/branches/IPSL-CM4_IPCC_branch/libf/phylmd/write_histmth.h @ 5051

Last change on this file since 5051 was 710, checked in by Laurent Fairhead, 18 years ago

Integration des modifications d'OM et JLD pour une meilleure prise en compte
de la conservation du flux d'eau
LF

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 30.9 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)
324       CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxfqfonte,zx_tmp_2d)
325       CALL histwrite(nid_mth,"fqfonte",itau_w,zx_tmp_2d,iim*jjmp1,
326     $                ndex2d)
327cIM: 171003
328       DO nsrf = 1, nbsrf
329        zx_tmp_fi2d(1 : klon) = fluxu( 1 : klon, 1, nsrf)
330        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
331        CALL histwrite(nid_mth,"taux_"//clnsurf(nsrf),itau_w,
332     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
333C     
334        zx_tmp_fi2d(1 : klon) = fluxv( 1 : klon, 1, nsrf)
335        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
336        CALL histwrite(nid_mth,"tauy_"//clnsurf(nsrf),itau_w,
337     $      zx_tmp_2d,iim*jjmp1,ndex2d)
338       ENDDO
339cIM: 171003
340c
341cIM      if ( lev_histday.gt.1 ) then
342      DO nsrf = 1, nbsrf
343CYYY
344       IF(nsrf.GT.1) THEN
345        zx_tmp_fi2d(1 : klon) = pctsrf( 1 : klon, nsrf)
346        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
347        CALL histwrite(nid_mth,"pourc_"//clnsurf(nsrf),itau_w,
348     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
349       ENDIF !nsrf.GT.1
350C
351        zx_tmp_fi2d(1 : klon) = ftsol( 1 : klon, nsrf)
352        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
353        CALL histwrite(nid_mth,"tsol_"//clnsurf(nsrf),itau_w,
354     $      zx_tmp_2d,iim*jjmp1,ndex2d)
355C
356        zx_tmp_fi2d(1 : klon) = fluxt( 1 : klon, 1, nsrf)
357        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
358        CALL histwrite(nid_mth,"sens_"//clnsurf(nsrf),itau_w,
359     $      zx_tmp_2d,iim*jjmp1,ndex2d)
360C
361        zx_tmp_fi2d(1 : klon) = fluxlat( 1 : klon, nsrf)
362        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
363        CALL histwrite(nid_mth,"lat_"//clnsurf(nsrf),itau_w,
364     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
365C
366        zx_tmp_fi2d(1 : klon) = fsollw( 1 : klon, nsrf)
367        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
368        CALL histwrite(nid_mth,"flw_"//clnsurf(nsrf),itau_w,
369     $      zx_tmp_2d,iim*jjmp1,ndex2d)
370c
371        zx_tmp_fi2d(1 : klon) = fsolsw( 1 : klon, nsrf)
372        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
373        CALL histwrite(nid_mth,"fsw_"//clnsurf(nsrf),itau_w,
374     $      zx_tmp_2d,iim*jjmp1,ndex2d)
375C
376        zx_tmp_fi2d(1 : klon) = wfbils( 1 : klon, nsrf)
377        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
378        CALL histwrite(nid_mth,"wbils_"//clnsurf(nsrf),itau_w,
379     $      zx_tmp_2d,iim*jjmp1,ndex2d)
380C
381
382      END DO 
383cIM      endif !lev_histday
384
385c
386      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragm,zx_tmp_2d)
387      CALL histwrite(nid_mth,"cdrm",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
388c
389      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragh,zx_tmp_2d)
390      CALL histwrite(nid_mth,"cdrh",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
391c
392      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldl,zx_tmp_2d)
393      CALL histwrite(nid_mth,"cldl",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
394c
395      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldm,zx_tmp_2d)
396      CALL histwrite(nid_mth,"cldm",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
397c
398      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldh,zx_tmp_2d)
399      CALL histwrite(nid_mth,"cldh",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
400c
401      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldt,zx_tmp_2d)
402      CALL histwrite(nid_mth,"cldt",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
403c
404      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldq,zx_tmp_2d)
405      CALL histwrite(nid_mth,"cldq",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
406c
407      zx_tmp_fi2d(1:klon) = flwp(1:klon)
408      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
409      CALL histwrite(nid_mth,"lwp",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
410c
411      zx_tmp_fi2d(1:klon) = fiwp(1:klon)
412      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
413      CALL histwrite(nid_mth,"iwp",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
414c
415      CALL gr_fi_ecrit(1, klon,iim,jjmp1, ue,zx_tmp_2d)
416      CALL histwrite(nid_mth,"ue",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
417c
418      CALL gr_fi_ecrit(1, klon,iim,jjmp1, ve,zx_tmp_2d)
419      CALL histwrite(nid_mth,"ve",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
420c
421      CALL gr_fi_ecrit(1, klon,iim,jjmp1, uq,zx_tmp_2d)
422      CALL histwrite(nid_mth,"uq",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
423c
424      CALL gr_fi_ecrit(1, klon,iim,jjmp1, vq,zx_tmp_2d)
425      CALL histwrite(nid_mth,"vq",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
426cKE43
427      IF (iflag_con.GE.3) THEN ! sb
428c
429      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cape,zx_tmp_2d)
430      CALL histwrite(nid_mth,"cape",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
431c
432      CALL gr_fi_ecrit(1, klon,iim,jjmp1,pbase,zx_tmp_2d)
433      CALL histwrite(nid_mth,"pbase",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
434c
435      CALL gr_fi_ecrit(1, klon,iim,jjmp1,ema_pct,zx_tmp_2d)
436      CALL histwrite(nid_mth,"ptop",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
437c
438      CALL gr_fi_ecrit(1, klon,iim,jjmp1,ema_cbmf,zx_tmp_2d)
439      CALL histwrite(nid_mth,"fbase",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
440c
441c34EK
442c
443      CALL gr_fi_ecrit(1, klon,iim,jjmp1, prw,zx_tmp_2d)
444      CALL histwrite(nid_mth,"prw",itau_w,zx_tmp_2d,
445     .               iim*jjmp1,ndex2d)
446c
447      ENDIF !iflag_con.GE.3
448c
449c
450c
451c  Champs interpolles sur des niveaux de pression
452      DO k=1, nlevENS
453c
454        CALL gr_fi_ecrit(1, klon,iim,jjmp1, ulev(:,k),zx_tmp_2d)
455        CALL histwrite(nid_mth,"u"//clev(k),itau_w,zx_tmp_2d,
456     $       iim*jjmp1,ndex2d)
457c
458        CALL gr_fi_ecrit(1, klon,iim,jjmp1, vlev(:,k),zx_tmp_2d)
459        CALL histwrite(nid_mth,"v"//clev(k),itau_w,zx_tmp_2d,
460     $       iim*jjmp1,ndex2d)
461c
462      CALL gr_fi_ecrit(1, klon,iim,jjmp1, wlev(:,k),zx_tmp_2d)
463      CALL histwrite(nid_mth,"w"//clev(k),itau_w,zx_tmp_2d,
464     $     iim*jjmp1,ndex2d)
465c
466      CALL gr_fi_ecrit(1, klon,iim,jjmp1, philev(:,k),zx_tmp_2d)
467      CALL histwrite(nid_mth,"phi"//clev(k),itau_w,zx_tmp_2d,
468     $     iim*jjmp1,ndex2d)
469c
470      ENDDO !nlevENS
471      ENDIF !lev_histmth.GE.1
472c
473      IF(lev_histmth.GE.2) THEN
474c
475c Champs 3D:
476C
477c
478      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, flwc,zx_tmp_3d)
479      CALL histwrite(nid_mth,"lwcon",itau_w,zx_tmp_3d,
480     .               iim*jjmp1*klev,ndex3d)
481c
482      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, fiwc,zx_tmp_3d)
483      CALL histwrite(nid_mth,"iwcon",itau_w,zx_tmp_3d,
484     .               iim*jjmp1*klev,ndex3d)
485c
486      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, t_seri, zx_tmp_3d)
487      CALL histwrite(nid_mth,"temp",itau_w,zx_tmp_3d,
488     .                                   iim*jjmp1*klev,ndex3d)
489c
490c#ifdef histmthNMC
491c#include "write_histmthNMC.h"
492c#endif
493c
494      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, qx(1,1,ivap), zx_tmp_3d)
495      CALL histwrite(nid_mth,"ovap",itau_w,zx_tmp_3d,
496     .                                   iim*jjmp1*klev,ndex3d)
497c
498cIM: 071003
499c     zx_tmp_fi3d(1:klon,1:klev)=qx(1:klon,1:klev,ivap)/
500c    .                         (1-qx(1:klon,1:klev,ivap))
501c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zx_tmp_fi3d, zx_tmp_3d)
502c     CALL histwrite(nid_mth,"wvap",itau_w,zx_tmp_3d,
503c    .                                   iim*jjmp1*klev,ndex3d)
504c
505      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zphi, zx_tmp_3d)
506      CALL histwrite(nid_mth,"geop",itau_w,zx_tmp_3d,
507     .                                   iim*jjmp1*klev,ndex3d)
508c
509      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, u_seri, zx_tmp_3d)
510      CALL histwrite(nid_mth,"vitu",itau_w,zx_tmp_3d,
511     .                                   iim*jjmp1*klev,ndex3d)
512c
513      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, v_seri, zx_tmp_3d)
514      CALL histwrite(nid_mth,"vitv",itau_w,zx_tmp_3d,
515     .                                   iim*jjmp1*klev,ndex3d)
516c
517      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, omega, zx_tmp_3d)
518      CALL histwrite(nid_mth,"vitw",itau_w,zx_tmp_3d,
519     .                                   iim*jjmp1*klev,ndex3d)
520c
521      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, pplay, zx_tmp_3d)
522      CALL histwrite(nid_mth,"pres",itau_w,zx_tmp_3d,
523     .                                   iim*jjmp1*klev,ndex3d)
524c
525      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, cldfra, zx_tmp_3d)
526      CALL histwrite(nid_mth,"rneb",itau_w,zx_tmp_3d,
527     .                                   iim*jjmp1*klev,ndex3d)
528c
529      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, rnebcon, zx_tmp_3d)
530      CALL histwrite(nid_mth,"rnebcon",itau_w,zx_tmp_3d,
531     .                                   iim*jjmp1*klev,ndex3d)
532c
533      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zx_rh, zx_tmp_3d)
534      CALL histwrite(nid_mth,"rhum",itau_w,zx_tmp_3d,
535     .                                   iim*jjmp1*klev,ndex3d)
536c
537      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, wo, zx_tmp_3d)
538      CALL histwrite(nid_mth,"ozone",itau_w,zx_tmp_3d,
539     .                                   iim*jjmp1*klev,ndex3d)
540c
541cIM 22.03.04 BEG
542      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t, zx_tmp_3d)
543      CALL histwrite(nid_mth,"dtphy",itau_w,zx_tmp_3d,
544     .                                   iim*jjmp1*klev,ndex3d)
545c
546      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_qx(:,:,ivap), 
547     .                 zx_tmp_3d)
548      CALL histwrite(nid_mth,"dqphy",itau_w,zx_tmp_3d,
549     .                                   iim*jjmp1*klev,ndex3d)
550cIM 22.03.04 END
551c
552      ENDIF !lev_histmth.GE.2
553c
554      IF(lev_histmth.GE.3) THEN
555c
556       DO nsrf=1, nbsrf
557c
558        zx_tmp_fi2d(1 : klon) = falbe( 1 : klon, nsrf)
559        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
560        CALL histwrite(nid_mth,"albe_"//clnsurf(nsrf),itau_w,
561     $      zx_tmp_2d,iim*jjmp1,ndex2d)
562C
563        zx_tmp_fi2d(1 : klon) = frugs( 1 : klon, nsrf)
564        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
565        CALL histwrite(nid_mth,"rugs_"//clnsurf(nsrf),itau_w,
566     $      zx_tmp_2d,iim*jjmp1,ndex2d)
567c
568      zx_tmp_fi2d(1 : klon) = agesno( 1 : klon, nsrf)
569      CALL gr_fi_ecrit(1, klon,iim,jjmp1, agesno,zx_tmp_2d)
570      CALL histwrite(nid_mth,"ages_"//clnsurf(nsrf),itau_w
571     $    ,zx_tmp_2d,iim*jjmp1,ndex2d)
572c
573      ENDDO !nsrf=1, nbsrf
574c
575      CALL gr_fi_ecrit(1, klon,iim,jjmp1, albsol,zx_tmp_2d)
576      CALL histwrite(nid_mth,"albs",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
577c
578      CALL gr_fi_ecrit(1, klon,iim,jjmp1, albsollw,zx_tmp_2d)
579      CALL histwrite(nid_mth,"albslw",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
580c
581      ENDIF !lev_histmth.GE.3
582c
583c
584      IF(lev_histmth.GE.4) THEN
585c
586      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, clwcon0, zx_tmp_3d)
587      CALL histwrite(nid_mth,"clwcon",itau_w,zx_tmp_3d,
588     .                                   iim*jjmp1*klev,ndex3d)
589c
590      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, Ma, zx_tmp_3d)
591      CALL histwrite(nid_mth,"Ma",itau_w,zx_tmp_3d,
592     .                                   iim*jjmp1*klev,ndex3d)
593c
594      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, upwd, zx_tmp_3d)
595      CALL histwrite(nid_mth,"upwd",itau_w,zx_tmp_3d,
596     .                                   iim*jjmp1*klev,ndex3d)
597c
598      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, dnwd, zx_tmp_3d)
599      CALL histwrite(nid_mth,"dnwd",itau_w,zx_tmp_3d,
600     .                                   iim*jjmp1*klev,ndex3d)
601c
602      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, dnwd0, zx_tmp_3d)
603      CALL histwrite(nid_mth,"dnwd0",itau_w,zx_tmp_3d,
604     .                                   iim*jjmp1*klev,ndex3d)
605c
606c
607      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t_dyn, zx_tmp_3d)
608      CALL histwrite(nid_mth,"dtdyn",itau_w,zx_tmp_3d,
609     .                                   iim*jjmp1*klev,ndex3d)
610c
611      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_q_dyn, zx_tmp_3d)
612      CALL histwrite(nid_mth,"dqdyn",itau_w,zx_tmp_3d,
613     .                                   iim*jjmp1*klev,ndex3d)
614c
615cIM: 101003 : K/30min ==> K/s
616      zx_tmp_fi3d(1:klon,1:klev)=d_t_con(1:klon,1:klev)/pdtphys
617      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
618      CALL histwrite(nid_mth,"dtcon",itau_w,zx_tmp_3d,
619     .                                   iim*jjmp1*klev,ndex3d)
620c
621      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_q_con, zx_tmp_3d)
622      CALL histwrite(nid_mth,"dqcon",itau_w,zx_tmp_3d,
623     .                                   iim*jjmp1*klev,ndex3d)
624c
625cIM: 101003 : K/30min ==> K/s
626      zx_tmp_fi3d(1:klon,1:klev)=d_t_lsc(1:klon,1:klev)/pdtphys
627      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
628      CALL histwrite(nid_mth,"dtlsc",itau_w,zx_tmp_3d,
629     .                                   iim*jjmp1*klev,ndex3d)
630cIM: 071003
631cIM: 101003 : K/30min ==> K/s
632      zx_tmp_fi3d(1:klon, 1:klev)=(d_t_lsc(1:klon,1:klev)+
633     .                             d_t_eva(1:klon,1:klev))/pdtphys
634      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zx_tmp_fi3d, zx_tmp_3d)
635      CALL histwrite(nid_mth,"dtlschr",itau_w,zx_tmp_3d,
636     .                                   iim*jjmp1*klev,ndex3d)
637c
638      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_q_lsc, zx_tmp_3d)
639      CALL histwrite(nid_mth,"dqlsc",itau_w,zx_tmp_3d,
640     .                                   iim*jjmp1*klev,ndex3d)
641c
642cIM: 101003 : K/30min ==> K/s
643      zx_tmp_fi3d(1:klon,1:klev)=d_t_vdf(1:klon,1:klev)/pdtphys
644      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
645      CALL histwrite(nid_mth,"dtvdf",itau_w,zx_tmp_3d,
646     .                                   iim*jjmp1*klev,ndex3d)
647c
648      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_q_vdf, zx_tmp_3d)
649      CALL histwrite(nid_mth,"dqvdf",itau_w,zx_tmp_3d,
650     .                                   iim*jjmp1*klev,ndex3d)
651c
652cIM: 101003 : K/30min ==> K/s
653      zx_tmp_fi3d(1:klon,1:klev)=d_t_eva(1:klon,1:klev)/pdtphys
654      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
655      CALL histwrite(nid_mth,"dteva",itau_w,zx_tmp_3d,
656     .                                   iim*jjmp1*klev,ndex3d)
657c
658      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_q_eva, zx_tmp_3d)
659      CALL histwrite(nid_mth,"dqeva",itau_w,zx_tmp_3d,
660     .                                   iim*jjmp1*klev,ndex3d)
661c
662      zpt_conv = 0.
663      where (ptconv) zpt_conv = 1.
664      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zpt_conv, zx_tmp_3d)
665      CALL histwrite(nid_mth,"ptconv",itau_w,zx_tmp_3d,
666     .                                   iim*(jjmp1)*klev,ndex3d)
667c
668      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, ratqs, zx_tmp_3d)
669      CALL histwrite(nid_mth,"ratqs",itau_w,zx_tmp_3d,
670     .                                   iim*(jjmp1)*klev,ndex3d)
671c
672cIM: 101003 : K/30min ==> K/s
673      zx_tmp_fi3d(1:klon,1:klev)=d_t_ajs(1:klon,1:klev)/pdtphys
674      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
675      CALL histwrite(nid_mth,"dtajs",itau_w,zx_tmp_3d,
676     .                                   iim*jjmp1*klev,ndex3d)
677c
678      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_q_ajs, zx_tmp_3d)
679      CALL histwrite(nid_mth,"dqajs",itau_w,zx_tmp_3d,
680     .                                   iim*jjmp1*klev,ndex3d)
681c
682cIM: 101003 : K/day ==> K/s
683cIM: LMD_ARMIP3   zx_tmp_fi3d(1:klon,1:klev)=heat(1:klon,1:klev)*pdtphys/RDAY
684      zx_tmp_fi3d(1:klon,1:klev)=heat(1:klon,1:klev)/RDAY
685      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
686      CALL histwrite(nid_mth,"dtswr",itau_w,zx_tmp_3d,
687     .                                   iim*jjmp1*klev,ndex3d)
688c
689cIM: 101003 : K/day ==> K/s     
690cIM: LMD_ARMIP3   zx_tmp_fi3d(1:klon,1:klev)=heat0(1:klon,1:klev)*pdtphys/RDAY
691      zx_tmp_fi3d(1:klon,1:klev)=heat0(1:klon,1:klev)/RDAY
692      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
693      CALL histwrite(nid_mth,"dtsw0",itau_w,zx_tmp_3d,
694     .                                   iim*jjmp1*klev,ndex3d)
695c
696cIM: 101003 : K/day ==> K/s     
697cIM: LMD_ARMIP3     zx_tmp_fi3d(1:klon,1:klev)=-1.*cool(1:klon,1:klev)*pdtphys/RDAY
698      zx_tmp_fi3d(1:klon,1:klev)=-1.*cool(1:klon,1:klev)/RDAY
699      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
700      CALL histwrite(nid_mth,"dtlwr",itau_w,zx_tmp_3d,
701     .                                   iim*jjmp1*klev,ndex3d)
702c
703cIM: 101003 : K/day ==> K/s     
704cIM: LMD_ARMIP3     zx_tmp_fi3d(1:klon,1:klev)=-1.*cool0(1:klon,1:klev)*pdtphys/RDAY
705      zx_tmp_fi3d(1:klon,1:klev)=-1.*cool0(1:klon,1:klev)/RDAY
706      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
707      CALL histwrite(nid_mth,"dtlw0",itau_w,zx_tmp_3d,
708     .                                   iim*jjmp1*klev,ndex3d)
709c
710cIM: 101003 : deja en K/s     
711      zx_tmp_fi3d(1:klon,1:klev)=d_t_ec(1:klon,1:klev)
712      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
713      CALL histwrite(nid_mth,"dtec",itau_w,zx_tmp_3d,
714     .                                   iim*jjmp1*klev,ndex3d)
715c
716      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_vdf, zx_tmp_3d)
717      CALL histwrite(nid_mth,"duvdf",itau_w,zx_tmp_3d,
718     .                                   iim*jjmp1*klev,ndex3d)
719c
720      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_v_vdf, zx_tmp_3d)
721      CALL histwrite(nid_mth,"dvvdf",itau_w,zx_tmp_3d,
722     .                                   iim*jjmp1*klev,ndex3d)
723c
724      IF (ok_orodr) THEN
725      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_oro, zx_tmp_3d)
726      CALL histwrite(nid_mth,"duoro",itau_w,zx_tmp_3d,
727     .                                   iim*jjmp1*klev,ndex3d)
728c
729      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_v_oro, zx_tmp_3d)
730      CALL histwrite(nid_mth,"dvoro",itau_w,zx_tmp_3d,
731     .                                   iim*jjmp1*klev,ndex3d)
732c
733      ENDIF
734C
735      IF (ok_orolf) THEN
736      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_lif, zx_tmp_3d)
737      CALL histwrite(nid_mth,"dulif",itau_w,zx_tmp_3d,
738     .                                   iim*jjmp1*klev,ndex3d)
739c
740      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_v_lif, zx_tmp_3d)
741      CALL histwrite(nid_mth,"dvlif",itau_w,zx_tmp_3d,
742     .                                   iim*jjmp1*klev,ndex3d)
743      ENDIF
744C
745c
746c effets des aerosols
747c
748c     IF (ok_ade.OR.ok_aie) THEN
749      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, re, zx_tmp_3d)
750      CALL histwrite(nid_mth,"re",itau_w,zx_tmp_3d,
751     .                                   iim*jjmp1*klev,ndex3d)
752c
753      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, fl, zx_tmp_3d)
754      CALL histwrite(nid_mth,"redenom",itau_w,zx_tmp_3d,
755     .                                   iim*jjmp1*klev,ndex3d)
756c
757      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, cldtau, zx_tmp_3d)
758      CALL histwrite(nid_mth,"tau",itau_w,zx_tmp_3d,
759     .                                   iim*jjmp1*klev,ndex3d)
760c
761      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, cldtaupi, zx_tmp_3d)
762      CALL histwrite(nid_mth,"taupi",itau_w,zx_tmp_3d,
763     .                                   iim*jjmp1*klev,ndex3d)
764c     endif
765c
766      IF (nqmax.GE.3) THEN
767      DO iq=1,nqmax-2
768      IF (iq.LE.99) THEN
769         CALL gr_fi_ecrit(klev,klon,iim,jjmp1, qx(1,1,iq+2), zx_tmp_3d)
770         WRITE(str2,'(i2.2)') iq
771         CALL histwrite(nid_mth,"trac"//str2,itau_w,zx_tmp_3d,
772     .                                   iim*jjmp1*klev,ndex3d)
773      ELSE
774         PRINT*, "Trop de traceurs"
775         CALL abort
776      ENDIF
777      ENDDO
778      ENDIF
779c
780      ENDIF !lev_histmth.GE.4
781c
782      if (ok_sync) then
783        call histsync(nid_mth)
784      endif
785      ENDIF
Note: See TracBrowser for help on using the repository browser.