source: LMDZ.3.3/branches/rel-LF/libf/phylmd/write_histmth.h @ 5235

Last change on this file since 5235 was 517, checked in by lmdzadmin, 21 years ago

Inclusion des modifications de O. Boucher et de J. Quaas pour le calcul des
premiers effets directs et indirects dus aux aerosols
LF

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