source: LMDZ4/trunk/libf/phylmd/write_histmth.h @ 895

Last change on this file since 895 was 895, checked in by Laurent Fairhead, 16 years ago

Un peu de menage sur les fichiers de sortie apres les tests aquaplanete FH
LF

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 70.0 KB
Line 
1c
2c $Header$
3c
4      IF (ok_mensuel) THEN
5c
6      ndex2d = 0
7      ndex3d = 0
8
9         itau_w = itau_phy + itap
10
11c  temperature tendency due to moist convective processes
12       DO l=1, klev
13       DO i=1, klon
14        zx_tmp_fi3d(i,l)=d_t_con(i,l)/pdtphys
15       ENDDO !i
16       ENDDO !l
17c
18
19c
20      IF(type_run.EQ."CLIM".OR.type_run.EQ."ENSP") THEN
21c
22      IF(lev_histmth.GE.1) THEN
23c
24c Champs 2D:
25c
26cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,pphis,zx_tmp_2d)
27      CALL histwrite_phy(nid_mth,"phis",itau_w,pphis)
28C
29cIM 310804   CALL gr_fi_ecrit(1,klon,iim,jjmp1,paire,zx_tmp_2d)
30cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,airephy,zx_tmp_2d)
31      CALL histwrite_phy(nid_mth,"aire",itau_w,airephy)
32c
33      zx_tmp_fi2d(1 : klon) = pctsrf(1 : klon, is_ter)* 100.
34cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
35      CALL histwrite_phy(nid_mth,"pourc_"//clnsurf(is_ter),itau_w,
36     $                   zx_tmp_fi2d)
37c
38      zx_tmp_fi2d(1 : klon) = pctsrf(1 : klon, is_ter)
39cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
40      CALL histwrite_phy(nid_mth,"fract_"//clnsurf(is_ter),itau_w,
41     $                   zx_tmp_fi2d)
42c
43cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, slp,zx_tmp_2d)
44      CALL histwrite_phy(nid_mth,"slp",itau_w,slp)
45
46cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxtsol,zx_tmp_2d)
47      CALL histwrite_phy(nid_mth,"tsol",itau_w,zxtsol)
48c
49cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zt2m,zx_tmp_2d)
50      CALL histwrite_phy(nid_mth,"t2m",itau_w,zt2m)
51c
52c ENSEMBLES BEG
53cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zt2m,zx_tmp_2d)
54c     CALL histwrite_phy(nid_mth,"t2m_min",itau_w,zt2m)
55c
56cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zt2m,zx_tmp_2d)
57c     CALL histwrite_phy(nid_mth,"t2m_max",itau_w,zt2m)
58c
59c     CALL gr_fi_ecrit(1,klon,iim,jjmp1,ftsoil(:,1,is_ter),zx_tmp_2d)
60c     CALL gr_fi_ecrit(1,klon,iim,jjmp1,ftsol(:,is_ter),zx_tmp_2d)
61c     CALL gr_fi_ecrit(1,klon,iim,jjmp1,ztsol,zx_tmp_2d)
62c     CALL histwrite_phy(nid_mth,"tsoil",itau_w,zx_tmp_2d,
63c    .               iim*jjmp1,ndex2d)
64c
65      DO i=1, klon
66       zx_tmp_fi2d(i)=SQRT(zu10m(i)*zu10m(i)+zv10m(i)*zv10m(i))
67      ENDDO
68cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
69      CALL histwrite_phy(nid_mth,"wind10m",itau_w,zx_tmp_fi2d)
70c
71      DO i = 1, klon
72         zx_tmp_fi2d(i) = pctsrf(i,is_sic)
73      ENDDO
74cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
75      CALL histwrite_phy(nid_mth,"sicf",itau_w,zx_tmp_fi2d)
76c
77c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, t_seri, zx_tmp_3d)
78c     CALL histwrite_phy(nid_mth,"temp",itau_w,zx_tmp_3d,
79c    .                                   iim*jjmp1*klev,ndex3d)
80c
81c ENSEMBLES END
82c
83cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zq2m,zx_tmp_2d)
84      CALL histwrite_phy(nid_mth,"q2m",itau_w,zq2m)
85c
86cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zu10m,zx_tmp_2d)
87      CALL histwrite_phy(nid_mth,"u10m",itau_w,zu10m)
88C
89cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zv10m,zx_tmp_2d)
90      CALL histwrite_phy(nid_mth,"v10m",itau_w,zv10m)
91C
92      DO i = 1, klon
93         zx_tmp_fi2d(i) = paprs(i,1)
94      ENDDO
95cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
96      CALL histwrite_phy(nid_mth,"psol",itau_w,zx_tmp_fi2d)
97c
98cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxqsurf,zx_tmp_2d)
99      CALL histwrite_phy(nid_mth,"qsurf",itau_w,zxqsurf)
100c
101      if (.not. ok_veget) then
102cym          CALL gr_fi_ecrit(1, klon,iim,jjmp1, qsol,zx_tmp_2d)
103          CALL histwrite_phy(nid_mth,"qsol",itau_w,qsol)
104      endif
105c
106      DO i = 1, klon
107         zx_tmp_fi2d(i) = rain_fall(i) + snow_fall(i)
108      ENDDO
109cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
110      CALL histwrite_phy(nid_mth,"precip",itau_w,zx_tmp_fi2d)
111c
112cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, nday_rain,zx_tmp_2d)
113c     CALL histwrite_phy(nid_mth,"ndayrain",itau_w,nday_rain)
114c
115      DO i = 1, klon
116         zx_tmp_fi2d(i) = rain_lsc(i) + snow_lsc(i)
117      ENDDO
118cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
119      CALL histwrite_phy(nid_mth,"plul",itau_w,zx_tmp_fi2d)
120c
121      DO i = 1, klon
122         zx_tmp_fi2d(i) = rain_con(i) + snow_con(i)
123      ENDDO
124cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
125      CALL histwrite_phy(nid_mth,"pluc",itau_w,zx_tmp_fi2d)
126c
127cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, snow_fall,zx_tmp_2d)
128      CALL histwrite_phy(nid_mth,"snow",itau_w,snow_fall)
129c
130c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, zsnow_mass,zx_tmp_2d)
131c     CALL histwrite(nid_mth,"snow_mass",itau_w,zx_tmp_2d,iim*jjmp1,
132c    .               ndex2d)
133c
134cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, evap,zx_tmp_2d)
135      CALL histwrite_phy(nid_mth,"evap",itau_w,evap)
136c
137cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, topsw,zx_tmp_2d)
138      CALL histwrite_phy(nid_mth,"tops",itau_w,topsw)
139c
140cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, topsw0,zx_tmp_2d)
141      CALL histwrite_phy(nid_mth,"tops0",itau_w,topsw0)
142c
143cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, toplw,zx_tmp_2d)
144      CALL histwrite_phy(nid_mth,"topl",itau_w,toplw)
145c
146cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, toplw0,zx_tmp_2d)
147      CALL histwrite_phy(nid_mth,"topl0",itau_w,toplw0)
148c
149      zx_tmp_fi2d(1 : klon) = swup ( 1 : klon, klevp1 )
150cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
151      CALL histwrite_phy(nid_mth, "SWupTOA",itau_w,zx_tmp_fi2d)
152c
153c
154      zx_tmp_fi2d(1 : klon) = swup0 ( 1 : klon, klevp1 )
155cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
156      CALL histwrite_phy(nid_mth, "SWupTOAclr",itau_w,zx_tmp_fi2d)
157c
158      zx_tmp_fi2d(1 : klon) = swdn ( 1 : klon, klevp1 )
159cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
160      CALL histwrite_phy(nid_mth, "SWdnTOA",itau_w,zx_tmp_fi2d)
161c
162      zx_tmp_fi2d(1 : klon) = swdn0 ( 1 : klon, klevp1 )
163cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
164      CALL histwrite_phy(nid_mth, "SWdnTOAclr",itau_w,zx_tmp_fi2d)
165c
166cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, SWup200,zx_tmp_2d)
167      CALL histwrite_phy(nid_mth,"SWup200",itau_w,SWup200)
168c
169cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, SWup200clr,zx_tmp_2d)
170      CALL histwrite_phy(nid_mth,"SWup200clr",itau_w,SWup200clr)
171c
172cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, SWdn200,zx_tmp_2d)
173      CALL histwrite_phy(nid_mth,"SWdn200",itau_w,SWdn200)
174c
175cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, SWdn200clr,zx_tmp_2d)
176      CALL histwrite_phy(nid_mth,"SWdn200clr",itau_w,SWdn200clr)
177c
178cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, LWup200,zx_tmp_2d)
179      CALL histwrite_phy(nid_mth,"LWup200",itau_w,LWup200)
180c
181cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, LWup200clr,zx_tmp_2d)
182      CALL histwrite_phy(nid_mth,"LWup200clr",itau_w,LWup200clr)
183c
184      zx_tmp_fi2d(1:klon)=-1*LWdn200(1:klon)
185cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
186      CALL histwrite_phy(nid_mth,"LWdn200",itau_w,zx_tmp_fi2d)
187c
188      zx_tmp_fi2d(1:klon)=-1*LWdn200clr(1:klon)
189cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
190      CALL histwrite_phy(nid_mth,"LWdn200clr",itau_w,zx_tmp_fi2d)
191c
192c200 END
193cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, solsw,zx_tmp_2d)
194      CALL histwrite_phy(nid_mth,"sols",itau_w,solsw)
195c
196cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, solsw0,zx_tmp_2d)
197      CALL histwrite_phy(nid_mth,"sols0",itau_w,solsw0)
198c
199cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollw,zx_tmp_2d)
200      CALL histwrite_phy(nid_mth,"soll",itau_w,sollw)
201c
202cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, radsol,zx_tmp_2d)
203      CALL histwrite_phy(nid_mth,"radsol",itau_w,radsol)
204c
205cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollw0,zx_tmp_2d)
206      CALL histwrite_phy(nid_mth,"soll0",itau_w,sollw0)
207c
208c      zx_tmp_fi2d(1 : klon) = ZFSUP( 1 : klon, 1)
209      zx_tmp_fi2d(1 : klon) = swup ( 1 : klon, 1 )
210cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
211      CALL histwrite_phy(nid_mth, "SWupSFC",itau_w,zx_tmp_fi2d)
212c
213c      zx_tmp_fi2d(1 : klon) = ZFSUP0( 1 : klon, 1)
214      zx_tmp_fi2d(1 : klon) = swup0 ( 1 : klon, 1 )
215cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
216      CALL histwrite_phy(nid_mth, "SWupSFCclr",itau_w,zx_tmp_fi2d)
217c
218c      zx_tmp_fi2d(1 : klon) = ZFSDN( 1 : klon, 1)
219      zx_tmp_fi2d(1 : klon) = swdn ( 1 : klon, 1 )
220cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
221      CALL histwrite_phy(nid_mth, "SWdnSFC",itau_w,zx_tmp_fi2d)
222c
223c      zx_tmp_fi2d(1 : klon) = ZFSDN0( 1 : klon, 1)
224      zx_tmp_fi2d(1 : klon) = swdn0 ( 1 : klon, 1 )
225cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
226      CALL histwrite_phy(nid_mth, "SWdnSFCclr",itau_w,zx_tmp_fi2d)
227c
228cIM 080904   zx_tmp_fi2d(1:klon)=sollw(1:klon)+sollwdown(1:klon)
229cIM 130904   zx_tmp_fi2d(1:klon)=sollw(1:klon)-sollwdown(1:klon)
230      zx_tmp_fi2d(1:klon)=sollwdown(1:klon)-sollw(1:klon)
231cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d, zx_tmp_2d)
232      CALL histwrite_phy(nid_mth,"LWupSFC",itau_w,zx_tmp_fi2d)
233c
234      DO i=1, klon
235       sollwdownclr(i)=-1.*lwdn0(i,1)
236      ENDDO !i=1, klon
237
238cIM 080904   zx_tmp_fi2d(1:klon)=sollw0(1:klon)+sollwdownclr(1:klon)
239cIM 130904   zx_tmp_fi2d(1:klon)=sollw0(1:klon)-sollwdownclr(1:klon)
240      zx_tmp_fi2d(1:klon)=sollwdownclr(1:klon)-sollw0(1:klon)
241cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d, zx_tmp_2d)
242      CALL histwrite_phy(nid_mth,"LWupSFCclr",itau_w,zx_tmp_fi2d)
243c
244cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollwdown,zx_tmp_2d)
245      CALL histwrite_phy(nid_mth,"LWdnSFC",itau_w,sollwdown)
246c
247c     DO i=1, klon
248cIM 080904     sollwdownclr(i)=lwdn0(i,1)
249c      sollwdownclr(i)=-1.*lwdn0(i,1)
250c     ENDDO !i=1, klon
251c
252cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollwdownclr,zx_tmp_2d)
253      CALL histwrite_phy(nid_mth,"LWdnSFCclr",itau_w,sollwdownclr)
254c
255cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, bils,zx_tmp_2d)
256      CALL histwrite_phy(nid_mth,"bils",itau_w,bils)
257c
258      zx_tmp_fi2d(1:klon)=-1*sens(1:klon)
259c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, sens,zx_tmp_2d)
260cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
261      CALL histwrite_phy(nid_mth,"sens",itau_w,zx_tmp_fi2d)
262c
263cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, fder,zx_tmp_2d)
264      CALL histwrite_phy(nid_mth,"fder",itau_w,fder)
265c
266c
267c      DO i = 1, klon
268c         zx_tmp_fi2d(i) = fluxu(i,1)
269c      ENDDO
270c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
271c      CALL histwrite(nid_mth,"frtu",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
272c
273c      DO i = 1, klon
274c         zx_tmp_fi2d(i) = fluxv(i,1)
275c      ENDDO
276c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
277c      CALL histwrite(nid_mth,"frtv",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
278c
279c
280cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxffonte,zx_tmp_2d)
281       CALL histwrite_phy(nid_mth,"ffonte",itau_w,zxffonte)
282c
283cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxfqcalving,zx_tmp_2d)
284       CALL histwrite_phy(nid_mth,"fqcalving",itau_w,zxfqcalving)
285
286cym       CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxfqfonte,zx_tmp_2d)
287       CALL histwrite_phy(nid_mth,"fqfonte",itau_w,zxfqfonte)
288
289       DO nsrf = 1, nbsrf
290        zx_tmp_fi2d(1 : klon) = fluxu( 1 : klon, 1, nsrf)
291cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
292        CALL histwrite_phy(nid_mth,"taux_"//clnsurf(nsrf),itau_w,
293     $      zx_tmp_fi2d) 
294C     
295        zx_tmp_fi2d(1 : klon) = fluxv( 1 : klon, 1, nsrf)
296cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
297        CALL histwrite_phy(nid_mth,"tauy_"//clnsurf(nsrf),itau_w,
298     $      zx_tmp_fi2d)
299       ENDDO
300c
301      DO nsrf = 1, nbsrf
302CYYY
303       IF(nsrf.GE.2) THEN
304        zx_tmp_fi2d(1 : klon) = pctsrf( 1 : klon, nsrf)*100.
305cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
306        CALL histwrite_phy(nid_mth,"pourc_"//clnsurf(nsrf),itau_w,
307     &                     zx_tmp_fi2d) 
308c
309        zx_tmp_fi2d(1 : klon) = pctsrf( 1 : klon, nsrf)
310cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
311        CALL histwrite_phy(nid_mth,"fract_"//clnsurf(nsrf),itau_w,
312     $      zx_tmp_fi2d) 
313       ENDIF !nsrf.GT.2
314C
315        zx_tmp_fi2d(1 : klon) = ftsol( 1 : klon, nsrf)
316cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
317        CALL histwrite_phy(nid_mth,"tsol_"//clnsurf(nsrf),itau_w,
318     $      zx_tmp_fi2d)
319C
320        zx_tmp_fi2d(1 : klon) = fluxt( 1 : klon, 1, nsrf)
321cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
322        CALL histwrite_phy(nid_mth,"sens_"//clnsurf(nsrf),itau_w,
323     $      zx_tmp_fi2d)
324C
325        zx_tmp_fi2d(1 : klon) = fluxlat( 1 : klon, nsrf)
326cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
327        CALL histwrite_phy(nid_mth,"lat_"//clnsurf(nsrf),itau_w,
328     $      zx_tmp_fi2d) 
329C
330        zx_tmp_fi2d(1 : klon) = fsollw( 1 : klon, nsrf)
331cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
332        CALL histwrite_phy(nid_mth,"flw_"//clnsurf(nsrf),itau_w,
333     $      zx_tmp_fi2d)
334c
335        zx_tmp_fi2d(1 : klon) = fsolsw( 1 : klon, nsrf)
336cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
337        CALL histwrite_phy(nid_mth,"fsw_"//clnsurf(nsrf),itau_w,
338     $      zx_tmp_fi2d)
339C
340        zx_tmp_fi2d(1 : klon) = wfbils( 1 : klon, nsrf)
341cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
342        CALL histwrite_phy(nid_mth,"wbils_"//clnsurf(nsrf),itau_w,
343     $      zx_tmp_fi2d)
344C
345        zx_tmp_fi2d(1 : klon) = wfbilo( 1 : klon, nsrf)
346cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
347        CALL histwrite_phy(nid_mth,"wbilo_"//clnsurf(nsrf),itau_w,
348     $      zx_tmp_fi2d)
349C
350       IF(1.EQ.0) THEN
351C
352        zx_tmp_fi2d(1:klon) = fevap(1:klon,nsrf)*pctsrf(1:klon,nsrf)
353cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
354        CALL histwrite_phy(nid_mth,"evapour_"//clnsurf(nsrf),itau_w,
355     $      zx_tmp_fi2d)
356C
357        zx_tmp_fi2d(1:klon) = (rain_fall(1:klon) + snow_fall(1:klon))
358     $                        *pctsrf(1:klon,nsrf)
359cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
360        CALL histwrite_phy(nid_mth,"prepour_"//clnsurf(nsrf),itau_w,
361     $      zx_tmp_fi2d)
362C
363       ENDIF !(1.EQ.0) THEN
364C
365      END DO 
366c
367cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragm,zx_tmp_2d)
368      CALL histwrite_phy(nid_mth,"cdrm",itau_w,cdragm)
369c
370cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragh,zx_tmp_2d)
371      CALL histwrite_phy(nid_mth,"cdrh",itau_w,cdragh)
372c
373cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldl,zx_tmp_2d)
374      CALL histwrite_phy(nid_mth,"cldl",itau_w,cldl)
375c
376cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldm,zx_tmp_2d)
377      CALL histwrite_phy(nid_mth,"cldm",itau_w,cldm)
378c
379cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldh,zx_tmp_2d)
380      CALL histwrite_phy(nid_mth,"cldh",itau_w,cldh)
381c
382cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldt,zx_tmp_2d)
383      CALL histwrite_phy(nid_mth,"cldt",itau_w,cldt)
384c
385cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldq,zx_tmp_2d)
386      CALL histwrite_phy(nid_mth,"cldq",itau_w,cldq)
387c
388      zx_tmp_fi2d(1:klon) = flwp(1:klon)
389cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
390      CALL histwrite_phy(nid_mth,"lwp",itau_w,zx_tmp_fi2d)
391c
392      zx_tmp_fi2d(1:klon) = fiwp(1:klon)
393cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
394      CALL histwrite_phy(nid_mth,"iwp",itau_w,zx_tmp_fi2d)
395c
396cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, ue,zx_tmp_2d)
397      CALL histwrite_phy(nid_mth,"ue",itau_w,ue)
398c
399cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, ve,zx_tmp_2d)
400      CALL histwrite_phy(nid_mth,"ve",itau_w,ve)
401c
402cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, uq,zx_tmp_2d)
403      CALL histwrite_phy(nid_mth,"uq",itau_w,uq)
404c
405cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, vq,zx_tmp_2d)
406      CALL histwrite_phy(nid_mth,"vq",itau_w,vq)
407cKE43
408      IF (iflag_con.GE.3) THEN ! sb
409c
410cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cape,zx_tmp_2d)
411      CALL histwrite_phy(nid_mth,"cape",itau_w,cape)
412c
413cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,pbase,zx_tmp_2d)
414      CALL histwrite_phy(nid_mth,"pbase",itau_w,pbase)
415c
416cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,ema_pct,zx_tmp_2d)
417      CALL histwrite_phy(nid_mth,"ptop",itau_w,ema_pct)
418c
419cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,ema_cbmf,zx_tmp_2d)
420      CALL histwrite_phy(nid_mth,"fbase",itau_w,ema_cbmf)
421c
422c34EK
423c
424cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, prw,zx_tmp_2d)
425      CALL histwrite_phy(nid_mth,"prw",itau_w,prw)
426c
427      ENDIF !iflag_con.GE.3
428c
429c
430cIM cf. AM 081204 BEG
431cHBTM2
432c
433c
434cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_pblh,zx_tmp_2d)
435      CALL histwrite_phy(nid_mth,"s_pblh",itau_w,s_pblh)
436c
437cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_pblt,zx_tmp_2d)
438      CALL histwrite_phy(nid_mth,"s_pblt",itau_w,s_pblt)
439c
440cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_lcl,zx_tmp_2d)
441      CALL histwrite_phy(nid_mth,"s_lcl",itau_w,s_lcl)
442c
443cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_capCL,zx_tmp_2d)
444      CALL histwrite_phy(nid_mth,"s_capCL",itau_w,s_capCL)
445c
446cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_oliqCL,zx_tmp_2d)
447      CALL histwrite_phy(nid_mth,"s_oliqCL",itau_w,s_oliqCL)
448c
449cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_cteiCL,zx_tmp_2d)
450      CALL histwrite_phy(nid_mth,"s_cteiCL",itau_w,s_cteiCL)
451c
452cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_therm,zx_tmp_2d)
453      CALL histwrite_phy(nid_mth,"s_therm",itau_w,s_therm)
454c
455cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_trmb1,zx_tmp_2d)
456      CALL histwrite_phy(nid_mth,"s_trmb1",itau_w,s_trmb1)
457c
458cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_trmb2,zx_tmp_2d)
459      CALL histwrite_phy(nid_mth,"s_trmb2",itau_w,s_trmb2)
460c
461cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_trmb3,zx_tmp_2d)
462      CALL histwrite_phy(nid_mth,"s_trmb3",itau_w,s_trmb3)
463c
464cIM cf. AM 081204 END
465c
466c  Champs interpolles sur des niveaux de pression
467      DO k=1, nlevSTD
468c
469c        bb=clevSTD(k)
470c
471c        IF(k.GE.2) THEN
472         IF(k.GE.2.AND.k.LE.12) bb2=clevSTD(k)
473         IF(k.GE.13.AND.k.LE.17) bb3=clevSTD(k)
474c         aa=clevSTD(k)
475c         bb=aa(1:lnblnk1(aa))
476c        ENDIF
477c
478      IF(bb2.EQ."850".OR.bb2.EQ."700".OR.
479     $   bb2.EQ."500".OR.bb2.EQ."200") THEN
480c
481cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1,usumSTD(:,k,2),zx_tmp_2d)
482        CALL histwrite_phy(nid_mth,"u"//bb2,itau_w,usumSTD(:,k,2))
483c
484cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1,vsumSTD(:,k,2),zx_tmp_2d)
485        CALL histwrite_phy(nid_mth,"v"//bb2,itau_w,vsumSTD(:,k,2))
486c
487cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,wsumSTD(:,k,2),zx_tmp_2d)
488      CALL histwrite_phy(nid_mth,"w"//bb2,itau_w,wsumSTD(:,k,2))
489c
490cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,phisumSTD(:,k,2),zx_tmp_2d)
491      CALL histwrite_phy(nid_mth,"phi"//bb2,itau_w,phisumSTD(:,k,2))
492c
493      ENDIF !(bb2.EQ."850".OR.bb2.EQ."700".OR.
494      ENDDO !nlevSTD
495c
496      DO i=1, klon
497       IF (pctsrf(i,is_oce).GT.epsfra) THEN
498        zx_tmp_fi2d(i) = fluxo(i)
499       ELSE
500        zx_tmp_fi2d(i) = 0.
501       ENDIF
502      ENDDO
503c
504cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
505      CALL histwrite_phy(nid_mth,"fluxo",itau_w,zx_tmp_fi2d)
506c
507      DO i=1, klon
508       IF (pctsrf(i,is_sic).GT.epsfra) THEN
509        zx_tmp_fi2d(i) = fluxg(i)
510       ELSE
511        zx_tmp_fi2d(i) = 0.
512       ENDIF
513      ENDDO
514c
515cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
516      CALL histwrite_phy(nid_mth,"fluxg",itau_w,zx_tmp_fi2d)
517c
518      DO i=1, klon
519       IF (pctsrf(i,is_oce).GT.epsfra.OR.
520     .     pctsrf(i,is_sic).GT.epsfra) THEN
521        zx_tmp_fi2d(i) = (ftsol(i, is_oce) * pctsrf(i,is_oce)+ 
522     .                   ftsol(i, is_sic) * pctsrf(i,is_sic))/
523     .                   (pctsrf(i,is_oce)+pctsrf(i,is_sic))
524       ELSE
525        zx_tmp_fi2d(i) = 273.15
526       ENDIF
527      ENDDO
528c
529cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
530      CALL histwrite_phy(nid_mth,"t_oce_sic",itau_w,zx_tmp_fi2d)
531c
532      IF (OCEAN.EQ.'force ') THEN
533c
534      DO i=1, klon
535      IF((pctsrf(i,is_oce).GT.epsfra).OR.
536     .   (pctsrf(i,is_sic).GT.epsfra)) THEN
537       zx_tmp_fi2d(i) = (radsol(i) + fluxo(i))*pctsrf(i,is_oce)+
538     .                  fluxg(i)*pctsrf(i,is_sic)
539      ELSE
540       zx_tmp_fi2d(i) = 1.E+20
541      ENDIF
542      ENDDO
543cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
544      CALL histwrite_phy(nid_mth,"lmt_bils",itau_w,zx_tmp_fi2d)
545c
546      ELSE IF (OCEAN.EQ.'slab  ') THEN
547c
548      DO i=1, klon
549      IF((pctsrf(i,is_oce).GT.epsfra).OR.
550     .   (pctsrf(i,is_sic).GT.epsfra)) THEN
551       zx_tmp_fi2d(i) = (radsol(i) + fluxo(i))*pctsrf(i,is_oce)+
552     .                  fluxg(i)*pctsrf(i,is_sic)
553      ELSE
554       zx_tmp_fi2d(i) = 1.E+20
555      ENDIF
556      ENDDO
557cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
558      CALL histwrite_phy(nid_mth,"slab_bils",itau_w,zx_tmp_fi2d)
559c
560      DO i=1, klon
561       IF(pctsrf(i,is_oce).GT.epsfra.OR.
562     $    pctsrf(i,is_sic).GT.epsfra) THEN
563        zx_tmp_fi2d(i)=tslab(i)
564       ELSE
565        zx_tmp_fi2d(i) = 1.E+20
566       ENDIF
567      ENDDO !i=1, klon
568cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
569      CALL histwrite_phy(nid_mth,"tslab",itau_w,zx_tmp_fi2d)
570c
571cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, seaice,zx_tmp_2d)
572      CALL histwrite_phy(nid_mth,"seaice",itau_w,seaice)
573c
574cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, seaice/1000.,zx_tmp_2d)
575      CALL histwrite_phy(nid_mth,"siceh",itau_w, seaice/1000.)
576c
577      ENDIF !OCEAN.EQ.force/slab
578c
579      ENDIF !lev_histmth.GE.1
580c
581      IF(lev_histmth.GE.2) THEN
582c
583c Champs 3D:
584C
585c
586cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, flwc,zx_tmp_3d)
587      CALL histwrite_phy(nid_mth,"lwcon",itau_w,flwc)
588c
589cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, fiwc,zx_tmp_3d)
590      CALL histwrite_phy(nid_mth,"iwcon",itau_w,fiwc)
591c
592cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, t_seri, zx_tmp_3d)
593      CALL histwrite_phy(nid_mth,"temp",itau_w,t_seri)
594c
595c#ifdef histmthNMC
596c#include "write_histmthNMC.h"
597c#endif
598c
599cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, qx(1,1,ivap), zx_tmp_3d)
600      CALL histwrite_phy(nid_mth,"ovap",itau_w,qx(:,:,ivap))
601c
602c     zx_tmp_fi3d(1:klon,1:klev)=qx(1:klon,1:klev,ivap)/
603c    .                         (1-qx(1:klon,1:klev,ivap))
604c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zx_tmp_fi3d, zx_tmp_3d)
605c     CALL histwrite(nid_mth,"wvap",itau_w,zx_tmp_3d,
606c    .                                   iim*jjmp1*klev,ndex3d)
607c
608cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zphi, zx_tmp_3d)
609      CALL histwrite_phy(nid_mth,"geop",itau_w,zphi)
610c
611cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, u_seri, zx_tmp_3d)
612      CALL histwrite_phy(nid_mth,"vitu",itau_w,u_seri)
613c
614cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, v_seri, zx_tmp_3d)
615      CALL histwrite_phy(nid_mth,"vitv",itau_w,v_seri)
616c
617cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, omega, zx_tmp_3d)
618      CALL histwrite_phy(nid_mth,"vitw",itau_w,omega)
619c
620cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, pplay, zx_tmp_3d)
621      CALL histwrite_phy(nid_mth,"pres",itau_w,pplay)
622c
623cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, cldfra, zx_tmp_3d)
624      CALL histwrite_phy(nid_mth,"rneb",itau_w,cldfra)
625c
626cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, rnebcon, zx_tmp_3d)
627      CALL histwrite_phy(nid_mth,"rnebcon",itau_w,rnebcon)
628c
629cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zx_rh, zx_tmp_3d)
630      CALL histwrite_phy(nid_mth,"rhum",itau_w,zx_rh)
631
632      DO k=1, klev
633       DO i=1, klon
634cIM 151004      zx_tmp_fi3d(i,k)=MAX(wo(i,k),1.0e-12)*RG/46.6968
635c    $                    /(paprs(i,k)-paprs(i,k+1))
636c    $                    *(paprs(i,1)/101325.0)
637c        zx_tmp2_fi3d(i,k)=MAX(wo(i,k)*1.0e+6,1.0e-6)*RG/46.6968
638         zx_tmp_fi3d(i,k)=wo(i,k)*RG/46.6968
639     $                    /(paprs(i,k)-paprs(i,k+1))
640     $                    *(paprs(i,1)/101325.0)
641       ENDDO !i
642      ENDDO !k
643c
644c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, wo, zx_tmp_3d)
645c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp2_fi3d,zx_tmp_3d)
646cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
647      CALL histwrite_phy(nid_mth,"ozone",itau_w,zx_tmp_fi3d)
648c
649cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t, zx_tmp_3d)
650      CALL histwrite_phy(nid_mth,"dtphy",itau_w,d_t)
651c
652cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_qx(:,:,ivap), 
653cym     .                 zx_tmp_3d)
654      CALL histwrite_phy(nid_mth,"dqphy",itau_w, d_qx(:,:,ivap))
655cIM 22.03.04 END
656c
657      ENDIF !lev_histmth.GE.2
658c
659      IF(lev_histmth.GE.3) THEN
660c
661       DO nsrf=1, nbsrf
662c
663        zx_tmp_fi2d(1 : klon) = falb1( 1 : klon, nsrf)
664cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
665        CALL histwrite_phy(nid_mth,"albe_"//clnsurf(nsrf),itau_w,
666     $      zx_tmp_fi2d)
667C
668        zx_tmp_fi2d(1 : klon) = frugs( 1 : klon, nsrf)
669cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
670        CALL histwrite_phy(nid_mth,"rugs_"//clnsurf(nsrf),itau_w,
671     $      zx_tmp_fi2d)
672c
673      zx_tmp_fi2d(1 : klon) = agesno( 1 : klon, nsrf)
674cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, agesno,zx_tmp_2d)
675      CALL histwrite_phy(nid_mth,"ages_"//clnsurf(nsrf),itau_w
676     $    ,zx_tmp_fi2d)
677c
678      ENDDO !nsrf=1, nbsrf
679c
680cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, albsol1,zx_tmp_2d)
681      CALL histwrite_phy(nid_mth,"albs",itau_w,albsol1)
682c
683cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, albsol2,zx_tmp_2d)
684      CALL histwrite_phy(nid_mth,"albslw",itau_w,albsol2)
685c
686      ENDIF !lev_histmth.GE.3
687c
688c
689      IF(lev_histmth.GE.4) THEN
690c
691c  FH Sorties pour la couche limite
692      CALL histwrite_phy(nid_mth,"kz",itau_w,ycoefh)
693      CALL histwrite_phy(nid_mth,"kz_max",itau_w,ycoefh)
694
695      if(iflag_pbl>1) then
696      zx_tmp_fi3d=0.
697      do nsrf=1,nbsrf
698         do k=1,klev
699          zx_tmp_fi3d(:,k)=zx_tmp_fi3d(:,k)
700     ,    +pctsrf(:,nsrf)*pbl_tke(:,k,nsrf)
701         enddo
702      enddo
703      CALL histwrite_phy(nid_mth,"tke",itau_w,zx_tmp_fi3d)
704      CALL histwrite_phy(nid_mth,"tke_max",itau_w,zx_tmp_fi3d)
705      endif
706
707
708
709cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, clwcon0, zx_tmp_3d)
710      CALL histwrite_phy(nid_mth,"clwcon",itau_w,clwcon0)
711
712      IF (iflag_con.GE.3) THEN
713c
714cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, Ma, zx_tmp_3d)
715      CALL histwrite_phy(nid_mth,"Ma",itau_w,Ma)
716c
717cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, upwd, zx_tmp_3d)
718      CALL histwrite_phy(nid_mth,"upwd",itau_w,upwd)
719c
720cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, dnwd, zx_tmp_3d)
721      CALL histwrite_phy(nid_mth,"dnwd",itau_w,dnwd)
722c
723cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, dnwd0, zx_tmp_3d)
724      CALL histwrite_phy(nid_mth,"dnwd0",itau_w,dnwd0)
725c
726      ENDIF !iflag_con.GE.3
727c
728cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t_dyn, zx_tmp_3d)
729      CALL histwrite_phy(nid_mth,"dtdyn",itau_w,d_t_dyn)
730c
731cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_q_dyn, zx_tmp_3d)
732      CALL histwrite_phy(nid_mth,"dqdyn",itau_w,d_q_dyn)
733c
734cIM: 101003 : K/30min ==> K/s
735      zx_tmp_fi3d(1:klon,1:klev)=d_t_con(1:klon,1:klev)/pdtphys
736cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
737      CALL histwrite_phy(nid_mth,"dtcon",itau_w,zx_tmp_fi3d)
738c
739      zx_tmp_fi3d(1:klon,1:klev)=d_q_con(1:klon,1:klev)/pdtphys
740cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
741      CALL histwrite_phy(nid_mth,"dqcon",itau_w,zx_tmp_fi3d)
742c
743cIM: 101003 : K/30min ==> K/s
744      zx_tmp_fi3d(1:klon,1:klev)=d_t_lsc(1:klon,1:klev)/pdtphys
745cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
746      CALL histwrite_phy(nid_mth,"dtlsc",itau_w,zx_tmp_fi3d)
747cIM: 071003
748cIM: 101003 : K/30min ==> K/s
749      zx_tmp_fi3d(1:klon, 1:klev)=(d_t_lsc(1:klon,1:klev)+
750     .                             d_t_eva(1:klon,1:klev))/pdtphys
751cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zx_tmp_fi3d, zx_tmp_3d)
752      CALL histwrite_phy(nid_mth,"dtlschr",itau_w,zx_tmp_fi3d)
753c
754      zx_tmp_fi3d(1:klon,1:klev)=d_q_lsc(1:klon,1:klev)/pdtphys
755cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
756      CALL histwrite_phy(nid_mth,"dqlsc",itau_w,zx_tmp_fi3d)
757c
758cIM: 101003 : K/30min ==> K/s
759      zx_tmp_fi3d(1:klon,1:klev)=d_t_vdf(1:klon,1:klev)/pdtphys
760cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
761      CALL histwrite_phy(nid_mth,"dtvdf",itau_w,zx_tmp_fi3d)
762c
763      zx_tmp_fi3d(1:klon,1:klev)=d_q_vdf(1:klon,1:klev)/pdtphys
764cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
765      CALL histwrite_phy(nid_mth,"dqvdf",itau_w,zx_tmp_fi3d)
766c
767cIM: 101003 : K/30min ==> K/s
768      zx_tmp_fi3d(1:klon,1:klev)=d_t_eva(1:klon,1:klev)/pdtphys
769cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
770      CALL histwrite_phy(nid_mth,"dteva",itau_w,zx_tmp_fi3d)
771c
772      zx_tmp_fi3d(1:klon,1:klev)=d_q_eva(1:klon,1:klev)/pdtphys
773cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
774      CALL histwrite_phy(nid_mth,"dqeva",itau_w,zx_tmp_fi3d)
775c
776      zpt_conv = 0.
777      where (ptconv) zpt_conv = 1.
778cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zpt_conv, zx_tmp_3d)
779      CALL histwrite_phy(nid_mth,"ptconv",itau_w,zpt_conv)
780c
781cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, ratqs, zx_tmp_3d)
782      CALL histwrite_phy(nid_mth,"ratqs",itau_w,ratqs)
783c
784cIM: 101003 : K/30min ==> K/s
785      zx_tmp_fi3d(1:klon,1:klev)=d_t_ajsb(1:klon,1:klev)/pdtphys
786cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
787      CALL histwrite_phy(nid_mth,"dtajs",itau_w,zx_tmp_fi3d)
788c
789      zx_tmp_fi3d(1:klon,1:klev)=d_q_ajsb(1:klon,1:klev)/pdtphys
790cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
791      CALL histwrite_phy(nid_mth,"dqajs",itau_w,zx_tmp_fi3d)
792c
793cIM: 101003 : K/30min ==> K/s
794      zx_tmp_fi3d(1:klon,1:klev)=d_t_ajs(1:klon,1:klev)/pdtphys
795cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
796      CALL histwrite_phy(nid_mth,"dtthe",itau_w,zx_tmp_fi3d)
797c
798      zx_tmp_fi3d(1:klon,1:klev)=d_q_ajs(1:klon,1:klev)/pdtphys
799cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
800      CALL histwrite_phy(nid_mth,"dqthe",itau_w,zx_tmp_fi3d)
801c
802cIM: 101003 : K/day ==> K/s
803      zx_tmp_fi3d(1:klon,1:klev)=heat(1:klon,1:klev)/RDAY
804cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
805      CALL histwrite_phy(nid_mth,"dtswr",itau_w,zx_tmp_fi3d)
806c
807cIM: 101003 : K/day ==> K/s     
808      zx_tmp_fi3d(1:klon,1:klev)=heat0(1:klon,1:klev)/RDAY
809cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
810      CALL histwrite_phy(nid_mth,"dtsw0",itau_w,zx_tmp_fi3d)
811c
812cIM: 101003 : K/day ==> K/s     
813      zx_tmp_fi3d(1:klon,1:klev)=-1.*cool(1:klon,1:klev)/RDAY
814cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
815      CALL histwrite_phy(nid_mth,"dtlwr",itau_w,zx_tmp_fi3d)
816c
817cIM: 101003 : K/day ==> K/s     
818      zx_tmp_fi3d(1:klon,1:klev)=-1.*cool0(1:klon,1:klev)/RDAY
819cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
820      CALL histwrite_phy(nid_mth,"dtlw0",itau_w,zx_tmp_fi3d)
821c
822cIM: 101003 : deja en K/s     
823      zx_tmp_fi3d(1:klon,1:klev)=d_t_ec(1:klon,1:klev)
824cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
825      CALL histwrite_phy(nid_mth,"dtec",itau_w,zx_tmp_fi3d)
826c
827      zx_tmp_fi3d(1:klon,1:klev)=d_u_vdf(1:klon,1:klev)/pdtphys
828cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
829      CALL histwrite_phy(nid_mth,"duvdf",itau_w,zx_tmp_fi3d)
830c
831      zx_tmp_fi3d(1:klon,1:klev)=d_v_vdf(1:klon,1:klev)/pdtphys
832cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
833      CALL histwrite_phy(nid_mth,"dvvdf",itau_w,zx_tmp_fi3d)
834c
835      IF (ok_orodr) THEN
836      zx_tmp_fi3d(1:klon,1:klev)=d_u_oro(1:klon,1:klev)/pdtphys
837cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
838      CALL histwrite_phy(nid_mth,"duoro",itau_w,zx_tmp_fi3d)
839c
840      zx_tmp_fi3d(1:klon,1:klev)=d_v_oro(1:klon,1:klev)/pdtphys
841cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
842      CALL histwrite_phy(nid_mth,"dvoro",itau_w,zx_tmp_fi3d)
843c
844      ENDIF
845C
846      IF (ok_orolf) THEN
847      zx_tmp_fi3d(1:klon,1:klev)=d_u_lif(1:klon,1:klev)/pdtphys
848cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
849      CALL histwrite_phy(nid_mth,"dulif",itau_w,zx_tmp_fi3d)
850c
851      zx_tmp_fi3d(1:klon,1:klev)=d_v_lif(1:klon,1:klev)/pdtphys
852cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
853      CALL histwrite_phy(nid_mth,"dvlif",itau_w,zx_tmp_fi3d)
854      ENDIF
855C
856#if defined(INCA_AER) && defined(CPP_COUPLE)
857      CALL histwrite_phy(nid_mth,"tau",itau_w,cldtau)
858      CALL histwrite_phy(nid_mth,"CCM1",itau_w,ccm(:,:,1))
859      CALL histwrite_phy(nid_mth,"CCM2",itau_w,ccm(:,:,2))
860      CALL histwrite_phy(nid_mth,"taupi",itau_w,cldtaupi)
861      CALL histwrite_phy(nid_mth,"cldemi",itau_w,cldemi)
862      CALL histwrite_phy(nid_mth,"SWTOAAS_ZERO",itau_w,topsw_inca(:,1))
863      CALL histwrite_phy(nid_mth,"SWTOAAS_AER",itau_w,topsw_inca(:,2))
864      CALL histwrite_phy(nid_mth,"SWTOAAS_NAT",itau_w,topsw_inca(:,3))
865      CALL histwrite_phy(nid_mth,"SWTOAAS_AD",itau_w,topswad_inca(:))
866      CALL histwrite_phy(nid_mth,"SWTOAAS_AI",itau_w,topswai_inca(:))
867      CALL histwrite_phy(nid_mth,"SWTOACS_ZERO",itau_w,topsw0_inca(:,1))
868      CALL histwrite_phy(nid_mth,"SWTOACS_AER",itau_w,topsw0_inca(:,2))
869      CALL histwrite_phy(nid_mth,"SWTOACS_AD",itau_w,topswad0_inca(:))
870      CALL histwrite_phy(nid_mth,"SWTOACS_NAT",itau_w,topsw0_inca(:,3))
871#endif
872#ifndef INCA
873      IF (nqmax.GE.3) THEN
874      DO iq=3,nqmax
875cym         CALL gr_fi_ecrit(klev,klon,iim,jjmp1, qx(1,1,iq), zx_tmp_3d)
876         CALL histwrite_phy(nid_mth,tnom(iq),itau_w,qx(:,:,iq))
877      ENDDO
878      ENDIF
879#endif
880c
881      ENDIF !lev_histmth.GE.4
882c
883      ELSE IF(type_run.EQ."AMIP".OR.type_run.EQ."CFMI") THEN
884c
885      IF(lev_histmth.GE.1) THEN
886c
887c Champs 2D:
888c
889cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,pphis/RG,zx_tmp_2d)
890      CALL histwrite_phy(nid_mth,"phis",itau_w,pphis/RG)
891C
892cIM 310804   CALL gr_fi_ecrit(1,klon,iim,jjmp1,paire,zx_tmp_2d)
893cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,airephy,zx_tmp_2d)
894      CALL histwrite_phy(nid_mth,"aire",itau_w,airephy)
895c
896      zx_tmp_fi2d(1 : klon) = pctsrf(1 : klon, is_ter)* 100.
897cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,zx_tmp_fi2d, zx_tmp_2d)
898      CALL histwrite_phy(nid_mth,"pourc_"//clnsurf(is_ter),itau_w,
899     $      zx_tmp_fi2d)
900c
901      zx_tmp_fi2d(1 : klon) = pctsrf(1 : klon, is_ter)
902cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,zx_tmp_fi2d, zx_tmp_2d)
903      CALL histwrite_phy(nid_mth,"fract_"//clnsurf(is_ter),itau_w,
904     $      zx_tmp_fi2d)
905c
906      zx_tmp_fi2d(1 : klon) = pctsrf(1 : klon, is_lic)* 100.
907cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,zx_tmp_fi2d, zx_tmp_2d)
908      CALL histwrite_phy(nid_mth,"pourc_"//clnsurf(is_lic),itau_w,
909     $      zx_tmp_fi2d)
910c
911      zx_tmp_fi2d(1 : klon) = pctsrf(1 : klon, is_lic)
912cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,zx_tmp_fi2d, zx_tmp_2d)
913      CALL histwrite_phy(nid_mth,"fract_"//clnsurf(is_lic),itau_w,
914     $      zx_tmp_fi2d)
915c
916      zx_tmp_fi2d(1 : klon) = pctsrf(1 : klon, is_sic)* 100.
917cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
918      CALL histwrite_phy(nid_mth,"pourc_"//clnsurf(is_sic),itau_w,
919     $      zx_tmp_fi2d)
920c
921      zx_tmp_fi2d(1 : klon) = pctsrf(1 : klon, is_sic)
922cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
923      CALL histwrite_phy(nid_mth,"fract_"//clnsurf(is_sic),itau_w,
924     $      zx_tmp_fi2d)
925c
926cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxfluxlat,zx_tmp_2d)
927      CALL histwrite_phy(nid_mth,"flat",itau_w,zxfluxlat)
928c
929      zx_tmp_fi2d(1 : klon) = topsw(1:klon)-toplw(1:klon)
930cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
931      CALL histwrite_phy(nid_mth,"bilTOA",itau_w,zx_tmp_fi2d)
932c
933c     IF(itap.EQ.ecrit_mth) THEN
934c       DO i=1, klon
935c         IF(nday_clr(i).GT.0.) THEN
936c          tops01(i)=tops01(i)/nday_clr(i)
937c         ELSE
938c          tops01(i)=1.e+20
939c         ENDIF
940c       ENDDO
941c       CALL gr_fi_ecrit(1, klon,iim,jjmp1, tops01,zx_tmp_2d)
942c       CALL histwrite_phy(nid_mth,"tops01",itau_w,zx_tmp_2d,
943c    .       iim*jjmp1,ndex2d)
944c     ENDIF !itap.EQ.ecrit_mth
945c
946c220404 BEG
947c
948c temperature tendency due to total diabatic heating
949       DO l=1, klev
950       DO i=1, klon
951       d_t(i,l) = (t_seri(i,l)-t(i,l))/dtime
952       ENDDO !i
953       ENDDO !l
954c
955cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t,zx_tmp_3d)
956      CALL histwrite_phy(nid_mth,"dtdia",itau_w,d_t)
957c
958c temperature tendency due to SW radiation
959       DO l=1, klev
960       DO i=1, klon
961       zx_tmp_fi3d(i,l)=heat(i,l)/RDAY
962       ENDDO !i
963       ENDDO !l
964c
965cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zx_tmp_fi3d,zx_tmp_3d)
966      CALL histwrite_phy(nid_mth,"dtsw",itau_w,zx_tmp_fi3d)
967c
968c temperature tendency due to LW radiation
969       DO l=1, klev
970       DO i=1, klon
971        zx_tmp_fi3d(i,l)=-1*cool(i,l)/RDAY
972       ENDDO !i
973       ENDDO !l
974c
975cym      CALL gr_fi_ecrit(klev, klon,iim,jjmp1, zx_tmp_fi3d,zx_tmp_3d)
976      CALL histwrite_phy(nid_mth,"dtlw",itau_w,zx_tmp_fi3d)
977c
978
979c
980c  temperature tendency due to large scale precipitation
981       DO l=1, klev
982       DO i=1, klon
983       zx_tmp_fi3d(i,l)=d_t_lsc(i,l)/pdtphys
984       ENDDO !i
985       ENDDO !l
986c
987cym      CALL gr_fi_ecrit(klev, klon,iim,jjmp1, zx_tmp_fi3d,zx_tmp_3d)
988      CALL histwrite_phy(nid_mth,"dtlsc",itau_w,zx_tmp_fi3d)
989c
990c  total moisture tendency due to diabatic processes
991       DO l=1, klev
992       DO i=1, klon
993        d_qx(i,l,ivap) = ( q_seri(i,l) - qx(i,l,ivap) ) / dtime
994        zx_tmp_fi3d(i,l)=d_qx(i,l,ivap)
995       ENDDO !i
996       ENDDO !l
997c
998cym      CALL gr_fi_ecrit(klev, klon,iim,jjmp1, zx_tmp_fi3d,zx_tmp_3d)
999      CALL histwrite_phy(nid_mth,"dqdia",itau_w,zx_tmp_fi3d)
1000c
1001cBEG 210404 BEG
1002c
1003      IF(ok_orodr.AND.ok_orolf) THEN
1004      DO k = 1, klev
1005      DO i = 1, klon
1006        d_u_oli(i,k) = (d_u_oro(i,k) + d_u_lif(i,k))/pdtphys
1007        d_v_oli(i,k) = (d_v_oro(i,k) + d_v_lif(i,k))/pdtphys
1008      ENDDO
1009      ENDDO
1010      ENDIF !(ok_orodr.AND.ok_orolf) THEN
1011c
1012cym      CALL gr_fi_ecrit(klev, klon,iim,jjmp1,d_u_oli,zx_tmp_3d)
1013      CALL histwrite_phy(nid_mth,"duoli",itau_w,d_u_oli)
1014c
1015cym      CALL gr_fi_ecrit(klev, klon,iim,jjmp1,d_v_oli,zx_tmp_3d)
1016      CALL histwrite_phy(nid_mth,"dvoli",itau_w,d_v_oli)
1017c
1018      zx_tmp_fi3d(1:klon,1:klev)=d_u_con(1:klon,1:klev)/pdtphys
1019cym      CALL gr_fi_ecrit(klev, klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1020      CALL histwrite_phy(nid_mth,"ducon",itau_w,zx_tmp_fi3d)
1021c
1022      zx_tmp_fi3d(1:klon,1:klev)=d_v_con(1:klon,1:klev)/pdtphys
1023cym      CALL gr_fi_ecrit(klev, klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1024      CALL histwrite_phy(nid_mth,"dvcon",itau_w,zx_tmp_fi3d)
1025c
1026cym      CALL gr_fi_ecrit(klev, klon,iim,jjmp1,d_u,zx_tmp_3d)
1027      CALL histwrite_phy(nid_mth,"dutot",itau_w,d_u)
1028c
1029cym      CALL gr_fi_ecrit(klev, klon,iim,jjmp1,d_v,zx_tmp_3d)
1030      CALL histwrite_phy(nid_mth,"dvtot",itau_w,d_v)
1031
1032cEND 210404 END
1033c
1034c cldtrue
1035c     CALL gr_fi_ecrit(klev, klon,iim,jjmp1,cldtrue,zx_tmp_3d)
1036c     CALL histwrite_phy(nid_mth,"cldtrue",itau_w,zx_tmp_3d,
1037c    $       iim*jjmp1*klev,ndex3d)
1038c
1039c     CALL gr_fi_ecrit(klev, klon,iim,jjmp1,cldTOA,zx_tmp_3d)
1040c     CALL histwrite_phy(nid_mth,"cldTOA",itau_w,zx_tmp_3d,
1041c    $       iim*jjmp1*klev,ndex3d)
1042c
1043c     CALL gr_fi_ecrit(klev, klon,iim,jjmp1,cldSFC,zx_tmp_3d)
1044c     CALL histwrite_phy(nid_mth,"cldSFC",itau_w,zx_tmp_3d,
1045c    $       iim*jjmp1*klev,ndex3d)
1046c
1047      DO i=1, klon
1048cIM 151004    zx_tmp_fi2d(i)=GWDtaux1(i,1)-GWDtaux0(i,1)
1049       zx_tmp_fi2d(i)=zustrdr(i)+zustrli(i)
1050      ENDDO
1051cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
1052      CALL histwrite_phy(nid_mth,"GWDtaux",itau_w,zx_tmp_fi2d)
1053c
1054      DO i=1, klon
1055cIM 151004    zx_tmp_fi2d(i)=GWDtauy1(i,1)-GWDtauy0(i,1)
1056       zx_tmp_fi2d(i)=zvstrdr(i)+zvstrli(i)
1057      ENDDO
1058cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
1059      CALL histwrite_phy(nid_mth,"GWDtauy",itau_w,zx_tmp_fi2d)
1060c
1061c220404 END
1062cAMIP2 END
1063c
1064cym     CALL gr_fi_ecrit(1, klon,iim,jjmp1, slp,zx_tmp_2d)
1065      CALL histwrite_phy(nid_mth,"slp",itau_w,slp)
1066
1067cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxtsol,zx_tmp_2d)
1068      CALL histwrite_phy(nid_mth,"tsol",itau_w,zxtsol)
1069c
1070cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zt2m,zx_tmp_2d)
1071      CALL histwrite_phy(nid_mth,"t2m",itau_w,zt2m)
1072c
1073c ENSEMBLES BEG
1074cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zt2m,zx_tmp_2d)
1075c     CALL histwrite_phy(nid_mth,"t2m_min",itau_w,zt2m)
1076c
1077cym     CALL gr_fi_ecrit(1,klon,iim,jjmp1,zt2m,zx_tmp_2d)
1078c     CALL histwrite_phy(nid_mth,"t2m_max",itau_w,zt2m)
1079c
1080c     CALL gr_fi_ecrit(1,klon,iim,jjmp1,ftsoil(:,1,is_ter),zx_tmp_2d)
1081c     CALL gr_fi_ecrit(1,klon,iim,jjmp1,ftsol(:,is_ter),zx_tmp_2d)
1082c     CALL gr_fi_ecrit(1,klon,iim,jjmp1,ztsol,zx_tmp_2d)
1083c     CALL histwrite_phy(nid_mth,"tsoil",itau_w,zx_tmp_2d,
1084c    .               iim*jjmp1,ndex2d)
1085c
1086      DO i=1, klon
1087       zx_tmp_fi2d(i)=SQRT(zu10m(i)*zu10m(i)+zv10m(i)*zv10m(i))
1088      ENDDO
1089cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1090      CALL histwrite_phy(nid_mth,"wind10m",itau_w,zx_tmp_fi2d)
1091c
1092      DO i = 1, klon
1093         zx_tmp_fi2d(i) = pctsrf(i,is_sic)
1094      ENDDO
1095cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1096      CALL histwrite_phy(nid_mth,"sicf",itau_w,zx_tmp_fi2d)
1097c
1098c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, t_seri, zx_tmp_3d)
1099c     CALL histwrite_phy(nid_mth,"temp",itau_w,zx_tmp_3d,
1100c    .                                   iim*jjmp1*klev,ndex3d)
1101c
1102c ENSEMBLES END
1103c
1104cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zq2m,zx_tmp_2d)
1105      CALL histwrite_phy(nid_mth,"q2m",itau_w,zq2m)
1106c
1107cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zu10m,zx_tmp_2d)
1108      CALL histwrite_phy(nid_mth,"u10m",itau_w,zu10m)
1109C
1110cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zv10m,zx_tmp_2d)
1111      CALL histwrite_phy(nid_mth,"v10m",itau_w,zv10m)
1112C
1113      DO i = 1, klon
1114         zx_tmp_fi2d(i) = paprs(i,1)
1115      ENDDO
1116cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1117      CALL histwrite_phy(nid_mth,"psol",itau_w,zx_tmp_fi2d)
1118c
1119cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxqsurf,zx_tmp_2d)
1120      CALL histwrite_phy(nid_mth,"qsurf",itau_w,zxqsurf)
1121c
1122      if (.not. ok_veget) then
1123cym          CALL gr_fi_ecrit(1, klon,iim,jjmp1, qsol,zx_tmp_2d)
1124          CALL histwrite_phy(nid_mth,"qsol",itau_w,qsol)
1125      endif
1126c
1127      DO i = 1, klon
1128         zx_tmp_fi2d(i) = rain_fall(i) + snow_fall(i)
1129      ENDDO
1130cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1131      CALL histwrite_phy(nid_mth,"precip",itau_w,zx_tmp_fi2d)
1132c
1133cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, nday_rain,zx_tmp_2d)
1134c     CALL histwrite_phy(nid_mth,"ndayrain",itau_w,nday_rain)
1135c
1136      DO i = 1, klon
1137         zx_tmp_fi2d(i) = rain_lsc(i) + snow_lsc(i)
1138      ENDDO
1139cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1140      CALL histwrite_phy(nid_mth,"plul",itau_w,zx_tmp_fi2d)
1141c
1142      DO i = 1, klon
1143         zx_tmp_fi2d(i) = rain_con(i) + snow_con(i)
1144      ENDDO
1145cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1146      CALL histwrite_phy(nid_mth,"pluc",itau_w,zx_tmp_fi2d)
1147c
1148cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, snow_fall,zx_tmp_2d)
1149      CALL histwrite_phy(nid_mth,"snowf",itau_w,snow_fall)
1150c
1151c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, zsnow_mass,zx_tmp_2d)
1152c     CALL histwrite_phy(nid_mth,"snow_mass",itau_w,zx_tmp_2d,iim*jjmp1,
1153c    .               ndex2d)
1154c
1155cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, evap,zx_tmp_2d)
1156      CALL histwrite_phy(nid_mth,"evap",itau_w,evap)
1157c
1158cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, topsw,zx_tmp_2d)
1159      CALL histwrite_phy(nid_mth,"tops",itau_w,topsw)
1160c
1161cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, topsw0,zx_tmp_2d)
1162      CALL histwrite_phy(nid_mth,"tops0",itau_w,topsw0)
1163c
1164cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, toplw,zx_tmp_2d)
1165      CALL histwrite_phy(nid_mth,"topl",itau_w,toplw)
1166c
1167cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, toplw0,zx_tmp_2d)
1168      CALL histwrite_phy(nid_mth,"topl0",itau_w,toplw0)
1169c
1170      zx_tmp_fi2d(1 : klon) = swup ( 1 : klon, klevp1 )
1171cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
1172      CALL histwrite_phy(nid_mth, "SWupTOA",itau_w,zx_tmp_fi2d)
1173c
1174c
1175      zx_tmp_fi2d(1 : klon) = swup0 ( 1 : klon, klevp1 )
1176cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
1177      CALL histwrite_phy(nid_mth, "SWupTOAclr",itau_w,zx_tmp_fi2d)
1178c
1179      zx_tmp_fi2d(1 : klon) = swdn ( 1 : klon, klevp1 )
1180cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
1181      CALL histwrite_phy(nid_mth, "SWdnTOA",itau_w,zx_tmp_fi2d)
1182c
1183      zx_tmp_fi2d(1 : klon) = swdn0 ( 1 : klon, klevp1 )
1184cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
1185      CALL histwrite_phy(nid_mth, "SWdnTOAclr",itau_w,zx_tmp_fi2d)
1186c
1187cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, SWup200,zx_tmp_2d)
1188      CALL histwrite_phy(nid_mth,"SWup200",itau_w,SWup200)
1189c
1190cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, SWup200clr,zx_tmp_2d)
1191      CALL histwrite_phy(nid_mth,"SWup200clr",itau_w,SWup200clr)
1192c
1193cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, SWdn200,zx_tmp_2d)
1194      CALL histwrite_phy(nid_mth,"SWdn200",itau_w,SWdn200)
1195c
1196cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, SWdn200clr,zx_tmp_2d)
1197      CALL histwrite_phy(nid_mth,"SWdn200clr",itau_w,SWdn200clr)
1198c
1199cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, LWup200,zx_tmp_2d)
1200      CALL histwrite_phy(nid_mth,"LWup200",itau_w,LWup200)
1201c
1202cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, LWup200clr,zx_tmp_2d)
1203      CALL histwrite_phy(nid_mth,"LWup200clr",itau_w,LWup200clr)
1204c
1205      zx_tmp_fi2d(1:klon)=-1*LWdn200(1:klon)
1206cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1207      CALL histwrite_phy(nid_mth,"LWdn200",itau_w,zx_tmp_fi2d)
1208c
1209      zx_tmp_fi2d(1:klon)=-1*LWdn200clr(1:klon)
1210cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1211      CALL histwrite_phy(nid_mth,"LWdn200clr",itau_w,zx_tmp_fi2d)
1212c
1213c200 END
1214cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, solsw,zx_tmp_2d)
1215      CALL histwrite_phy(nid_mth,"sols",itau_w,solsw)
1216c
1217cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, solsw0,zx_tmp_2d)
1218      CALL histwrite_phy(nid_mth,"sols0",itau_w,solsw0)
1219c
1220cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollw,zx_tmp_2d)
1221      CALL histwrite_phy(nid_mth,"soll",itau_w,sollw)
1222c
1223cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, radsol,zx_tmp_2d)
1224      CALL histwrite_phy(nid_mth,"radsol",itau_w,radsol)
1225c
1226cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollw0,zx_tmp_2d)
1227      CALL histwrite_phy(nid_mth,"soll0",itau_w,sollw0)
1228c
1229c      zx_tmp_fi2d(1 : klon) = ZFSUP( 1 : klon, 1)
1230      zx_tmp_fi2d(1 : klon) = swup ( 1 : klon, 1 )
1231cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
1232      CALL histwrite_phy(nid_mth, "SWupSFC",itau_w,zx_tmp_fi2d)
1233c
1234c      zx_tmp_fi2d(1 : klon) = ZFSUP0( 1 : klon, 1)
1235      zx_tmp_fi2d(1 : klon) = swup0 ( 1 : klon, 1 )
1236cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
1237      CALL histwrite_phy(nid_mth, "SWupSFCclr",itau_w,zx_tmp_fi2d)
1238c
1239c      zx_tmp_fi2d(1 : klon) = ZFSDN( 1 : klon, 1)
1240      zx_tmp_fi2d(1 : klon) = swdn ( 1 : klon, 1 )
1241cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
1242      CALL histwrite_phy(nid_mth, "SWdnSFC",itau_w,zx_tmp_fi2d)
1243c
1244c      zx_tmp_fi2d(1 : klon) = ZFSDN0( 1 : klon, 1)
1245      zx_tmp_fi2d(1 : klon) = swdn0 ( 1 : klon, 1 )
1246cym      CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
1247      CALL histwrite_phy(nid_mth, "SWdnSFCclr",itau_w,zx_tmp_fi2d)
1248c
1249cIM 080904   zx_tmp_fi2d(1:klon)=sollw(1:klon)+sollwdown(1:klon)
1250cIM 130904   zx_tmp_fi2d(1:klon)=sollw(1:klon)-sollwdown(1:klon)
1251      zx_tmp_fi2d(1:klon)=sollwdown(1:klon)-sollw(1:klon)
1252cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d, zx_tmp_2d)
1253      CALL histwrite_phy(nid_mth,"LWupSFC",itau_w,zx_tmp_fi2d)
1254c
1255      DO i=1, klon
1256       sollwdownclr(i)=-1.*lwdn0(i,1)
1257      ENDDO !i=1, klon
1258c
1259cIM 080904   zx_tmp_fi2d(1:klon)=sollw0(1:klon)+sollwdownclr(1:klon)
1260cIM 130904   zx_tmp_fi2d(1:klon)=sollw0(1:klon)-sollwdownclr(1:klon)
1261      zx_tmp_fi2d(1:klon)=sollwdownclr(1:klon)-sollw0(1:klon)
1262cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d, zx_tmp_2d)
1263      CALL histwrite_phy(nid_mth,"LWupSFCclr",itau_w,zx_tmp_fi2d)
1264c
1265cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollwdown,zx_tmp_2d)
1266      CALL histwrite_phy(nid_mth,"LWdnSFC",itau_w,sollwdown)
1267c
1268c     DO i=1, klon
1269cIM 08004    sollwdownclr(i)=lwdn0(i,1)
1270c      sollwdownclr(i)=-1.*lwdn0(i,1)
1271c     ENDDO !i=1, klon
1272c
1273cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollwdownclr,zx_tmp_2d)
1274      CALL histwrite_phy(nid_mth,"LWdnSFCclr",itau_w,sollwdownclr)
1275c
1276cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, bils,zx_tmp_2d)
1277      CALL histwrite_phy(nid_mth,"bils",itau_w,bils)
1278c
1279      zx_tmp_fi2d(1:klon)=-1*sens(1:klon)
1280c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, sens,zx_tmp_2d)
1281cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1282      CALL histwrite_phy(nid_mth,"sens",itau_w,zx_tmp_fi2d)
1283c
1284cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, fder,zx_tmp_2d)
1285      CALL histwrite_phy(nid_mth,"fder",itau_w,fder)
1286c
1287c
1288c      DO i = 1, klon
1289c         zx_tmp_fi2d(i) = fluxu(i,1)
1290c      ENDDO
1291c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1292c      CALL histwrite_phy(nid_mth,"frtu",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
1293c
1294c      DO i = 1, klon
1295c         zx_tmp_fi2d(i) = fluxv(i,1)
1296c      ENDDO
1297c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1298c      CALL histwrite_phy(nid_mth,"frtv",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
1299c
1300c
1301cym       CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxffonte,zx_tmp_2d)
1302       CALL histwrite_phy(nid_mth,"ffonte",itau_w,zxffonte)
1303c
1304cym       CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxfqcalving,zx_tmp_2d)
1305       CALL histwrite_phy(nid_mth,"fqcalving",itau_w,zxfqcalving)
1306c
1307       DO nsrf = 1, nbsrf
1308        zx_tmp_fi2d(1 : klon) = fluxu( 1 : klon, 1, nsrf)
1309cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
1310        CALL histwrite_phy(nid_mth,"taux_"//clnsurf(nsrf),itau_w,
1311     $      zx_tmp_fi2d) 
1312C     
1313        zx_tmp_fi2d(1 : klon) = fluxv( 1 : klon, 1, nsrf)
1314cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
1315        CALL histwrite_phy(nid_mth,"tauy_"//clnsurf(nsrf),itau_w,
1316     $      zx_tmp_fi2d)
1317       ENDDO
1318c
1319        zx_tmp_fi2d(1 : klon) = pctsrf( 1 : klon, is_oce)*100.
1320cym        CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
1321        CALL histwrite_phy(nid_mth,"pourc_"//clnsurf(is_oce),itau_w,
1322     $      zx_tmp_fi2d) 
1323c
1324        zx_tmp_fi2d(1 : klon) = pctsrf( 1 : klon, is_oce)
1325cym        CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
1326        CALL histwrite_phy(nid_mth,"fract_"//clnsurf(is_oce),itau_w,
1327     $      zx_tmp_fi2d) 
1328c
1329      DO nsrf = 1, nbsrf
1330CYYY
1331C
1332        zx_tmp_fi2d(1 : klon) = ftsol( 1 : klon, nsrf)
1333cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
1334        CALL histwrite_phy(nid_mth,"tsol_"//clnsurf(nsrf),itau_w,
1335     $      zx_tmp_fi2d)
1336C
1337        zx_tmp_fi2d(1 : klon) = fluxt( 1 : klon, 1, nsrf)
1338cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
1339        CALL histwrite_phy(nid_mth,"sens_"//clnsurf(nsrf),itau_w,
1340     $      zx_tmp_fi2d)
1341C
1342        zx_tmp_fi2d(1 : klon) = fluxlat( 1 : klon, nsrf)
1343cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
1344        CALL histwrite_phy(nid_mth,"lat_"//clnsurf(nsrf),itau_w,
1345     $      zx_tmp_fi2d) 
1346C
1347        zx_tmp_fi2d(1 : klon) = fsollw( 1 : klon, nsrf)
1348cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
1349        CALL histwrite_phy(nid_mth,"flw_"//clnsurf(nsrf),itau_w,
1350     $      zx_tmp_fi2d)
1351c
1352        zx_tmp_fi2d(1 : klon) = fsolsw( 1 : klon, nsrf)
1353cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
1354        CALL histwrite_phy(nid_mth,"fsw_"//clnsurf(nsrf),itau_w,
1355     $      zx_tmp_fi2d)
1356C
1357        zx_tmp_fi2d(1 : klon) = wfbils( 1 : klon, nsrf)
1358cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
1359        CALL histwrite_phy(nid_mth,"wbils_"//clnsurf(nsrf),itau_w,
1360     $      zx_tmp_fi2d)
1361C
1362        zx_tmp_fi2d(1 : klon) = wfbilo( 1 : klon, nsrf)
1363cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
1364        CALL histwrite_phy(nid_mth,"wbilo_"//clnsurf(nsrf),itau_w,
1365     $      zx_tmp_fi2d)
1366C
1367       IF(1.EQ.0) THEN
1368C
1369        zx_tmp_fi2d(1:klon) = fevap(1:klon,nsrf)*pctsrf(1:klon,nsrf)
1370cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
1371        CALL histwrite_phy(nid_mth,"evapour_"//clnsurf(nsrf),itau_w,
1372     $      zx_tmp_fi2d)
1373C
1374        zx_tmp_fi2d(1:klon) = (rain_fall(1:klon) + snow_fall(1:klon))
1375     $                        *pctsrf(1:klon,nsrf)
1376cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
1377        CALL histwrite_phy(nid_mth,"prepour_"//clnsurf(nsrf),itau_w,
1378     $      zx_tmp_fi2d)
1379C
1380       ENDIF !(1.EQ.0) THEN
1381C
1382      END DO 
1383c
1384cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragm,zx_tmp_2d)
1385      CALL histwrite_phy(nid_mth,"cdrm",itau_w,cdragm)
1386c
1387cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragh,zx_tmp_2d)
1388      CALL histwrite_phy(nid_mth,"cdrh",itau_w,cdragh)
1389c
1390cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldl,zx_tmp_2d)
1391      CALL histwrite_phy(nid_mth,"cldl",itau_w,cldl)
1392c
1393cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldm,zx_tmp_2d)
1394      CALL histwrite_phy(nid_mth,"cldm",itau_w,cldm)
1395c
1396cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldh,zx_tmp_2d)
1397      CALL histwrite_phy(nid_mth,"cldh",itau_w,cldh)
1398c
1399cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldt*100.,zx_tmp_2d)
1400      CALL histwrite_phy(nid_mth,"cldt",itau_w,cldt*100.)
1401c
1402cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cldq,zx_tmp_2d)
1403      CALL histwrite_phy(nid_mth,"cldq",itau_w,cldq)
1404c
1405      zx_tmp_fi2d(1:klon) = flwp(1:klon)
1406cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1407      CALL histwrite_phy(nid_mth,"lwp",itau_w,zx_tmp_fi2d)
1408c
1409      zx_tmp_fi2d(1:klon) = fiwp(1:klon)
1410cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1411      CALL histwrite_phy(nid_mth,"iwp",itau_w,zx_tmp_fi2d)
1412c
1413cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, ue,zx_tmp_2d)
1414      CALL histwrite_phy(nid_mth,"ue",itau_w,ue)
1415c
1416cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, ve,zx_tmp_2d)
1417      CALL histwrite_phy(nid_mth,"ve",itau_w,ve)
1418c
1419cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, uq,zx_tmp_2d)
1420      CALL histwrite_phy(nid_mth,"uq",itau_w,uq)
1421c
1422cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, vq,zx_tmp_2d)
1423      CALL histwrite_phy(nid_mth,"vq",itau_w,vq)
1424cKE43
1425      IF (iflag_con.GE.3) THEN ! sb
1426c
1427cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cape,zx_tmp_2d)
1428      CALL histwrite_phy(nid_mth,"cape",itau_w,cape)
1429c
1430cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,pbase,zx_tmp_2d)
1431      CALL histwrite_phy(nid_mth,"pbase",itau_w,pbase)
1432c
1433cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,ema_pct,zx_tmp_2d)
1434      CALL histwrite_phy(nid_mth,"ptop",itau_w,ema_pct)
1435c
1436cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,ema_cbmf,zx_tmp_2d)
1437      CALL histwrite_phy(nid_mth,"fbase",itau_w,ema_cbmf)
1438c
1439c34EK
1440c
1441cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, prw,zx_tmp_2d)
1442      CALL histwrite_phy(nid_mth,"prw",itau_w,prw)
1443c
1444      ENDIF !iflag_con.GE.3
1445c
1446cIM cf. AM 081204 BEG
1447cHBTM2
1448c
1449c
1450cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_pblh,zx_tmp_2d)
1451      CALL histwrite_phy(nid_mth,"s_pblh",itau_w,s_pblh)
1452c
1453cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_pblt,zx_tmp_2d)
1454      CALL histwrite_phy(nid_mth,"s_pblt",itau_w,s_pblt)
1455c
1456cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_lcl,zx_tmp_2d)
1457      CALL histwrite_phy(nid_mth,"s_lcl",itau_w,s_lcl)
1458c
1459cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_capCL,zx_tmp_2d)
1460      CALL histwrite_phy(nid_mth,"s_capCL",itau_w,s_capCL)
1461c
1462cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_oliqCL,zx_tmp_2d)
1463      CALL histwrite_phy(nid_mth,"s_oliqCL",itau_w,s_oliqCL)
1464c
1465cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_cteiCL,zx_tmp_2d)
1466      CALL histwrite_phy(nid_mth,"s_cteiCL",itau_w,s_cteiCL)
1467c
1468cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_therm,zx_tmp_2d)
1469      CALL histwrite_phy(nid_mth,"s_therm",itau_w,s_therm)
1470c
1471cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_trmb1,zx_tmp_2d)
1472      CALL histwrite_phy(nid_mth,"s_trmb1",itau_w,s_trmb1)
1473c
1474cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_trmb2,zx_tmp_2d)
1475      CALL histwrite_phy(nid_mth,"s_trmb2",itau_w,s_trmb2)
1476c
1477cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_trmb3,zx_tmp_2d)
1478      CALL histwrite_phy(nid_mth,"s_trmb3",itau_w,s_trmb3)
1479c
1480cIM cf. AM 081204 END
1481c
1482c  Champs interpolles sur des niveaux de pression
1483c     DO k=1, nlevENS
1484      DO k=1, nlevSTD
1485c
1486c        bb=clevSTD(k)
1487c
1488c        IF(k.GE.2) THEN
1489         IF(k.GE.2.AND.k.LE.12) bb2=clevSTD(k)
1490         IF(k.GE.13.AND.k.LE.17) bb3=clevSTD(k)
1491c         aa=clevSTD(k)
1492c         bb=aa(1:lnblnk1(aa))
1493c        ENDIF
1494c
1495       IF(bb2.EQ."850".OR.bb2.EQ."700"
1496     $   .OR.bb2.EQ."500".OR.bb2.EQ."200") THEN
1497c
1498cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1,usumSTD(:,k,2),zx_tmp_2d)
1499        CALL histwrite_phy(nid_mth,"u"//bb2,itau_w,usumSTD(:,k,2))
1500c
1501cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1,vsumSTD(:,k,2),zx_tmp_2d)
1502        CALL histwrite_phy(nid_mth,"v"//bb2,itau_w,vsumSTD(:,k,2))
1503c
1504cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,wsumSTD(:,k,2),zx_tmp_2d)
1505      CALL histwrite_phy(nid_mth,"w"//bb2,itau_w,wsumSTD(:,k,2))
1506c
1507cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1,phisumSTD(:,k,2),zx_tmp_2d)
1508      CALL histwrite_phy(nid_mth,"phi"//bb2,itau_w,phisumSTD(:,k,2))
1509c
1510      ENDIF !(bb2.EQ."850".OR.bb2.EQ."700"
1511      ENDDO !nlevSTD
1512c
1513      DO i=1, klon
1514       IF (pctsrf(i,is_oce).GT.epsfra) THEN
1515        zx_tmp_fi2d(i) = fluxo(i)
1516       ELSE
1517        zx_tmp_fi2d(i) = 0.
1518       ENDIF
1519      ENDDO
1520c
1521cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1522      CALL histwrite_phy(nid_mth,"fluxo",itau_w,zx_tmp_fi2d)
1523c
1524      DO i=1, klon
1525       IF (pctsrf(i,is_sic).GT.epsfra) THEN
1526        zx_tmp_fi2d(i) = fluxg(i)
1527       ELSE
1528        zx_tmp_fi2d(i) = 0.
1529       ENDIF
1530      ENDDO
1531c
1532cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1533      CALL histwrite_phy(nid_mth,"fluxg",itau_w,zx_tmp_fi2d)
1534c
1535      DO i=1, klon
1536       IF (pctsrf(i,is_oce).GT.epsfra.OR.
1537     .     pctsrf(i,is_sic).GT.epsfra) THEN
1538        zx_tmp_fi2d(i) = (ftsol(i, is_oce) * pctsrf(i,is_oce)+ 
1539     .                   ftsol(i, is_sic) * pctsrf(i,is_sic))/
1540     .                   (pctsrf(i,is_oce)+pctsrf(i,is_sic))
1541       ELSE
1542        zx_tmp_fi2d(i) = 273.15
1543       ENDIF
1544      ENDDO
1545c
1546cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1547      CALL histwrite_phy(nid_mth,"t_oce_sic",itau_w,zx_tmp_fi2d)
1548c
1549      IF (OCEAN.EQ.'force ') THEN
1550c
1551      DO i=1, klon
1552      IF((pctsrf(i,is_oce).GT.epsfra).OR.
1553     .   (pctsrf(i,is_sic).GT.epsfra)) THEN
1554       zx_tmp_fi2d(i) = (radsol(i) + fluxo(i))*pctsrf(i,is_oce)+
1555     .                  fluxg(i)*pctsrf(i,is_sic)
1556      ELSE
1557       zx_tmp_fi2d(i) = 1.E+20
1558      ENDIF
1559      ENDDO
1560cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1561      CALL histwrite_phy(nid_mth,"lmt_bils",itau_w,
1562     .     zx_tmp_fi2d)
1563c
1564      ELSE IF (OCEAN.EQ.'slab  ') THEN
1565c
1566c
1567      DO i=1, klon
1568      IF((pctsrf(i,is_oce).GT.epsfra).OR.
1569     .   (pctsrf(i,is_sic).GT.epsfra)) THEN
1570       zx_tmp_fi2d(i) = (radsol(i) + fluxo(i))*pctsrf(i,is_oce)+
1571     .                  fluxg(i)*pctsrf(i,is_sic)
1572      ELSE
1573       zx_tmp_fi2d(i) = 1.E+20
1574      ENDIF
1575      ENDDO
1576cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1577      CALL histwrite_phy(nid_mth,"slab_bils",itau_w,
1578     .     zx_tmp_fi2d)
1579c
1580      DO i=1, klon
1581       IF(pctsrf(i,is_oce).GT.epsfra.OR.
1582     $    pctsrf(i,is_sic).GT.epsfra) THEN
1583        zx_tmp_fi2d(i)=tslab(i)
1584       ELSE
1585        zx_tmp_fi2d(i) = 1.E+20
1586       ENDIF
1587      ENDDO !i=1, klon
1588cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
1589      CALL histwrite_phy(nid_mth,"tslab",itau_w,zx_tmp_fi2d)
1590c
1591cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, seaice,zx_tmp_2d)
1592      CALL histwrite_phy(nid_mth,"seaice",itau_w,seaice)
1593c
1594cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, seaice/1000.,zx_tmp_2d)
1595      CALL histwrite_phy(nid_mth,"siceh",itau_w,seaice/1000.)
1596c
1597      ENDIF !OCEAN.EQ.force/slab
1598c
1599      ENDIF !lev_histmth.GE.1
1600c
1601      IF(lev_histmth.GE.2) THEN
1602c
1603c Champs 3D:
1604C
1605c
1606cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, flwc,zx_tmp_3d)
1607      CALL histwrite_phy(nid_mth,"lwcon",itau_w,flwc)
1608c
1609cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, fiwc,zx_tmp_3d)
1610      CALL histwrite_phy(nid_mth,"iwcon",itau_w,fiwc)
1611c
1612c#ifdef histmthNMC
1613c#include "write_histmthNMC.h"
1614c#endif
1615c
1616cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, qx(1,1,ivap), zx_tmp_3d)
1617      CALL histwrite_phy(nid_mth,"ovap",itau_w, qx(:,:,ivap))
1618c
1619c     zx_tmp_fi3d(1:klon,1:klev)=qx(1:klon,1:klev,ivap)/
1620c    .                         (1-qx(1:klon,1:klev,ivap))
1621c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zx_tmp_fi3d, zx_tmp_3d)
1622c     CALL histwrite_phy(nid_mth,"wvap",itau_w,zx_tmp_3d,
1623c    .                                   iim*jjmp1*klev,ndex3d)
1624c
1625cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zphi, zx_tmp_3d)
1626      CALL histwrite_phy(nid_mth,"geop",itau_w,zphi)
1627c
1628cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, u_seri, zx_tmp_3d)
1629      CALL histwrite_phy(nid_mth,"vitu",itau_w,u_seri)
1630c
1631cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, v_seri, zx_tmp_3d)
1632      CALL histwrite_phy(nid_mth,"vitv",itau_w,v_seri)
1633c
1634cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, omega, zx_tmp_3d)
1635      CALL histwrite_phy(nid_mth,"vitw",itau_w,omega)
1636c
1637cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, pplay, zx_tmp_3d)
1638      CALL histwrite_phy(nid_mth,"pres",itau_w,pplay)
1639c
1640cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, cldfra*100., zx_tmp_3d)
1641      CALL histwrite_phy(nid_mth,"rneb",itau_w,cldfra*100.)
1642c
1643cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, rnebcon, zx_tmp_3d)
1644      CALL histwrite_phy(nid_mth,"rnebcon",itau_w,rnebcon)
1645c
1646cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zx_rh, zx_tmp_3d)
1647      CALL histwrite_phy(nid_mth,"rhum",itau_w,zx_rh)
1648c
1649      DO k=1, klev
1650       DO i=1, klon
1651cIM 151004        zx_tmp_fi3d(i,k)=MAX(wo(i,k),1.0e-12)*RG/46.6968
1652c    $                    /(paprs(i,k)-paprs(i,k+1))
1653c    $                    *(paprs(i,1)/101325.0)
1654c        zx_tmp2_fi3d(i,k)=MAX(wo(i,k)*1.0e+6,1.0e-6)*RG/46.6968
1655         zx_tmp_fi3d(i,k)=wo(i,k)*RG/46.6968
1656     $                    /(paprs(i,k)-paprs(i,k+1))
1657     $                    *(paprs(i,1)/101325.0)
1658       ENDDO !i
1659      ENDDO !k
1660c
1661c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, wo, zx_tmp_3d)
1662c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp2_fi3d,zx_tmp_3d)
1663cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1664      CALL histwrite_phy(nid_mth,"ozone",itau_w,zx_tmp_fi3d)
1665c
1666cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t, zx_tmp_3d)
1667      CALL histwrite_phy(nid_mth,"dtphy",itau_w,d_t)
1668c
1669cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_qx(:,:,ivap),zx_tmp_3d)
1670      CALL histwrite_phy(nid_mth,"dqphy",itau_w,d_qx(:,:,ivap))
1671c
1672      ENDIF !lev_histmth.GE.2
1673c
1674      IF(lev_histmth.GE.3) THEN
1675c
1676       DO nsrf=1, nbsrf
1677c
1678        zx_tmp_fi2d(1 : klon) = falb1( 1 : klon, nsrf)
1679cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
1680        CALL histwrite_phy(nid_mth,"albe_"//clnsurf(nsrf),itau_w,
1681     $      zx_tmp_fi2d)
1682C
1683        zx_tmp_fi2d(1 : klon) = frugs( 1 : klon, nsrf)
1684cym        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
1685        CALL histwrite_phy(nid_mth,"rugs_"//clnsurf(nsrf),itau_w,
1686     $      zx_tmp_fi2d)
1687c
1688      zx_tmp_fi2d(1 : klon) = agesno( 1 : klon, nsrf)
1689cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, agesno,zx_tmp_2d)
1690      CALL histwrite_phy(nid_mth,"ages_"//clnsurf(nsrf),itau_w
1691     $    ,agesno)
1692c
1693      ENDDO !nsrf=1, nbsrf
1694c
1695cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, albsol1,zx_tmp_2d)
1696      CALL histwrite_phy(nid_mth,"albs",itau_w,albsol1)
1697c
1698cym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, albsol2,zx_tmp_2d)
1699      CALL histwrite_phy(nid_mth,"albslw",itau_w,albsol2)
1700c
1701      ENDIF !lev_histmth.GE.3
1702c
1703c
1704      IF(lev_histmth.GE.4) THEN
1705c
1706c  FH Sorties pour la couche limite
1707      CALL histwrite_phy(nid_mth,"kz",itau_w,ycoefh)
1708      CALL histwrite_phy(nid_mth,"kz_max",itau_w,ycoefh)
1709
1710      if(iflag_pbl>1) then
1711      zx_tmp_fi3d=0.
1712      do nsrf=1,nbsrf
1713         do k=1,klev
1714          zx_tmp_fi3d(:,k)=zx_tmp_fi3d(:,k)
1715     ,    +pctsrf(:,nsrf)*pbl_tke(:,k,nsrf)
1716         enddo
1717      enddo
1718      CALL histwrite_phy(nid_mth,"tke",itau_w,zx_tmp_fi3d)
1719      CALL histwrite_phy(nid_mth,"tke_max",itau_w,zx_tmp_fi3d)
1720      endif
1721
1722
1723
1724cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, clwcon0, zx_tmp_3d)
1725      CALL histwrite_phy(nid_mth,"clwcon",itau_w,clwcon0)
1726c
1727      IF (iflag_con.GE.3) THEN
1728c
1729cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, Ma, zx_tmp_3d)
1730      CALL histwrite_phy(nid_mth,"Ma",itau_w,Ma)
1731c
1732cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, upwd, zx_tmp_3d)
1733      CALL histwrite_phy(nid_mth,"upwd",itau_w,upwd)
1734c
1735cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, dnwd, zx_tmp_3d)
1736      CALL histwrite_phy(nid_mth,"dnwd",itau_w,dnwd)
1737c
1738cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, dnwd0, zx_tmp_3d)
1739      CALL histwrite_phy(nid_mth,"dnwd0",itau_w,dnwd0)
1740c
1741      ENDIF !iflag_con.GE.3
1742c
1743cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t_dyn, zx_tmp_3d)
1744      CALL histwrite_phy(nid_mth,"dtdyn",itau_w,d_t_dyn)
1745c
1746cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_q_dyn, zx_tmp_3d)
1747      CALL histwrite_phy(nid_mth,"dqdyn",itau_w,d_q_dyn)
1748c
1749cIM: 101003 : K/30min ==> K/s
1750c
1751      zx_tmp_fi3d(1:klon,1:klev)=d_q_con(1:klon,1:klev)/pdtphys
1752cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1753      CALL histwrite_phy(nid_mth,"dqcon",itau_w,zx_tmp_fi3d)
1754c
1755cIM: 101003 : K/30min ==> K/s
1756      zx_tmp_fi3d(1:klon, 1:klev)=(d_t_lsc(1:klon,1:klev)+
1757     .                             d_t_eva(1:klon,1:klev))/pdtphys
1758cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zx_tmp_fi3d, zx_tmp_3d)
1759      CALL histwrite_phy(nid_mth,"dtlschr",itau_w,zx_tmp_fi3d)
1760c
1761      zx_tmp_fi3d(1:klon,1:klev)=d_q_lsc(1:klon,1:klev)/pdtphys
1762cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1763      CALL histwrite_phy(nid_mth,"dqlsc",itau_w,zx_tmp_fi3d)
1764c
1765cIM: 101003 : K/30min ==> K/s
1766      zx_tmp_fi3d(1:klon,1:klev)=d_t_vdf(1:klon,1:klev)/pdtphys
1767cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1768      CALL histwrite_phy(nid_mth,"dtvdf",itau_w,zx_tmp_fi3d)
1769c
1770      zx_tmp_fi3d(1:klon,1:klev)=d_q_vdf(1:klon,1:klev)/pdtphys
1771cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1772      CALL histwrite_phy(nid_mth,"dqvdf",itau_w,zx_tmp_fi3d)
1773c
1774cIM: 101003 : K/30min ==> K/s
1775      zx_tmp_fi3d(1:klon,1:klev)=d_t_eva(1:klon,1:klev)/pdtphys
1776cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1777      CALL histwrite_phy(nid_mth,"dteva",itau_w,zx_tmp_fi3d)
1778c
1779      zx_tmp_fi3d(1:klon,1:klev)=d_q_eva(1:klon,1:klev)/pdtphys
1780cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1781      CALL histwrite_phy(nid_mth,"dqeva",itau_w,zx_tmp_fi3d)
1782c
1783      zpt_conv = 0.
1784      where (ptconv) zpt_conv = 1.
1785cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zpt_conv, zx_tmp_3d)
1786      CALL histwrite_phy(nid_mth,"ptconv",itau_w,zpt_conv)
1787c
1788cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, ratqs, zx_tmp_3d)
1789      CALL histwrite_phy(nid_mth,"ratqs",itau_w,ratqs)
1790cIM: 101003 : K/30min ==> K/s
1791      zx_tmp_fi3d(1:klon,1:klev)=d_t_ajsb(1:klon,1:klev)/pdtphys
1792cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1793      CALL histwrite_phy(nid_mth,"dtajs",itau_w,zx_tmp_fi3d)
1794c
1795      zx_tmp_fi3d(1:klon,1:klev)=d_q_ajsb(1:klon,1:klev)/pdtphys
1796cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1797      CALL histwrite_phy(nid_mth,"dqajs",itau_w,zx_tmp_fi3d)
1798c
1799cIM: 101003 : K/30min ==> K/s
1800c
1801      zx_tmp_fi3d(1:klon,1:klev)=d_q_ajs(1:klon,1:klev)/pdtphys
1802cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1803      CALL histwrite_phy(nid_mth,"dqthe",itau_w,zx_tmp_fi3d)
1804c
1805c
1806cIM: 101003 : K/day ==> K/s
1807      zx_tmp_fi3d(1:klon,1:klev)=heat(1:klon,1:klev)/RDAY
1808cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1809      CALL histwrite_phy(nid_mth,"dtswr",itau_w,zx_tmp_fi3d)
1810c
1811cIM: 101003 : K/day ==> K/s     
1812      zx_tmp_fi3d(1:klon,1:klev)=heat0(1:klon,1:klev)/RDAY
1813cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1814      CALL histwrite_phy(nid_mth,"dtsw0",itau_w,zx_tmp_fi3d)
1815c
1816cIM: 101003 : K/day ==> K/s     
1817      zx_tmp_fi3d(1:klon,1:klev)=-1.*cool(1:klon,1:klev)/RDAY
1818cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1819      CALL histwrite_phy(nid_mth,"dtlwr",itau_w,zx_tmp_fi3d)
1820c
1821cIM: 101003 : K/day ==> K/s     
1822      zx_tmp_fi3d(1:klon,1:klev)=-1.*cool0(1:klon,1:klev)/RDAY
1823cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1824      CALL histwrite_phy(nid_mth,"dtlw0",itau_w,zx_tmp_fi3d)
1825c
1826cIM: 101003 : deja en K/s     
1827      zx_tmp_fi3d(1:klon,1:klev)=d_t_ec(1:klon,1:klev)
1828cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1829      CALL histwrite_phy(nid_mth,"dtec",itau_w,zx_tmp_fi3d)
1830c
1831      zx_tmp_fi3d(1:klon,1:klev)=d_u_vdf(1:klon,1:klev)/pdtphys
1832cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1833      CALL histwrite_phy(nid_mth,"duvdf",itau_w,zx_tmp_fi3d)
1834c
1835      zx_tmp_fi3d(1:klon,1:klev)=d_v_vdf(1:klon,1:klev)/pdtphys
1836cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1837      CALL histwrite_phy(nid_mth,"dvvdf",itau_w,zx_tmp_fi3d)
1838c
1839      IF (ok_orodr) THEN
1840      zx_tmp_fi3d(1:klon,1:klev)=d_u_oro(1:klon,1:klev)/pdtphys
1841cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1842      CALL histwrite_phy(nid_mth,"duoro",itau_w,zx_tmp_fi3d)
1843c
1844      zx_tmp_fi3d(1:klon,1:klev)=d_v_oro(1:klon,1:klev)/pdtphys
1845cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1846      CALL histwrite_phy(nid_mth,"dvoro",itau_w,zx_tmp_fi3d)
1847c
1848      ENDIF
1849C
1850      IF (ok_orolf) THEN
1851      zx_tmp_fi3d(1:klon,1:klev)=d_u_lif(1:klon,1:klev)/pdtphys
1852cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1853      CALL histwrite_phy(nid_mth,"dulif",itau_w,zx_tmp_fi3d)
1854c
1855      zx_tmp_fi3d(1:klon,1:klev)=d_v_lif(1:klon,1:klev)/pdtphys
1856cym      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
1857      CALL histwrite_phy(nid_mth,"dvlif",itau_w,zx_tmp_fi3d)
1858      ENDIF
1859C
1860#if defined(INCA_AER) && defined(CPP_COUPLE)
1861      CALL histwrite_phy(nid_mth,"tau",itau_w,cldtau)
1862      CALL histwrite_phy(nid_mth,"CCM1",itau_w,ccm(:,:,1))
1863      CALL histwrite_phy(nid_mth,"CCM2",itau_w,ccm(:,:,2))
1864      CALL histwrite_phy(nid_mth,"taupi",itau_w,cldtaupi)
1865      CALL histwrite_phy(nid_mth,"cldemi",itau_w,cldemi)
1866      CALL histwrite_phy(nid_mth,"SWTOAAS_ZERO",itau_w,topsw_inca(:,1))
1867      CALL histwrite_phy(nid_mth,"SWTOAAS_AER",itau_w,topsw_inca(:,2))
1868      CALL histwrite_phy(nid_mth,"SWTOAAS_NAT",itau_w,topsw_inca(:,3))
1869      CALL histwrite_phy(nid_mth,"SWTOAAS_AD",itau_w,topswad_inca(:))
1870      CALL histwrite_phy(nid_mth,"SWTOAAS_AI",itau_w,topswai_inca(:))
1871      CALL histwrite_phy(nid_mth,"SWTOACS_ZERO",itau_w,topsw0_inca(:,1))
1872      CALL histwrite_phy(nid_mth,"SWTOACS_AER",itau_w,topsw0_inca(:,2))
1873      CALL histwrite_phy(nid_mth,"SWTOACS_AD",itau_w,topswad0_inca(:))
1874      CALL histwrite_phy(nid_mth,"SWTOACS_NAT",itau_w,topsw0_inca(:,3))
1875#endif
1876#ifndef INCA
1877      IF (nqmax.GE.3) THEN
1878      DO iq=3,nqmax
1879cym         CALL gr_fi_ecrit(klev,klon,iim,jjmp1, qx(1,1,iq), zx_tmp_3d)
1880         CALL histwrite_phy(nid_mth,tnom(iq),itau_w,qx(:,:,iq))
1881      ENDDO
1882      ENDIF
1883#endif
1884c
1885      ENDIF !lev_histmth.GE.4
1886c
1887      ENDIF !(type_run.EQ."AMIP")
1888c
1889      if (ok_sync) then
1890c$OMP MASTER
1891        call histsync(nid_mth)
1892c$OMP END MASTER
1893      endif
1894c
1895      ENDIF !ok_mensuel
Note: See TracBrowser for help on using the repository browser.