source: LMDZ4/tags/LF_20080728/libf/phy_IPCC_AR4/write_histmth.h @ 1596

Last change on this file since 1596 was 868, checked in by Laurent Fairhead, 17 years ago

Preparation du remplacement de la physique utilisee pour l'exercice IPCC_AR4
par la version de la physique avec thermique. On garde le repertoire phylmd
pour un petit moment pour que les utilisateurs ne soient pas trop perdus ...
phy_IPCC_AR4 = phylmd
LF

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