source: LMDZ5/branches/testing/libf/phylmd/phys_output_write.h @ 1790

Last change on this file since 1790 was 1750, checked in by Laurent Fairhead, 11 years ago

Version testing basée sur r1745


Testing release based on r1745

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 78.1 KB
RevLine 
[1665]1      itau_w = itau_phy + itap + start_time * day_step / iphysiq
[907]2
3      DO iff=1,nfiles
4
5       IF (clef_files(iff)) THEN
6             ndex2d = 0
7             ndex3d = 0
8
9!!! Champs 1D !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[1146]10       IF (o_phis%flag(iff)<=lev_files(iff)) THEN
[1539]11      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
12     $                  o_phis%name,itau_w,pphis)
[907]13       ENDIF
14
[1539]15       IF (.NOT.clef_stations(iff)) THEN
[1146]16       IF (o_aire%flag(iff)<=lev_files(iff)) THEN
[1539]17       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
18     $o_aire%name,itau_w,airephy)
[907]19       ENDIF
20
[1146]21       IF (o_contfracATM%flag(iff)<=lev_files(iff)) THEN
[907]22      DO i=1, klon
23       zx_tmp_fi2d(i)=pctsrf(i,is_ter)+pctsrf(i,is_lic)
24      ENDDO
[1539]25      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]26     $             o_contfracATM%name,itau_w,zx_tmp_fi2d)
[907]27       ENDIF
[1539]28       ENDIF
[907]29
[1146]30       IF (o_contfracOR%flag(iff)<=lev_files(iff)) THEN
[1539]31      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
32     $                  o_contfracOR%name,itau_w,pctsrf(:,is_ter))
[907]33       ENDIF
34
[1146]35       IF (o_aireTER%flag(iff)<=lev_files(iff)) THEN
[1539]36      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]37     $                  o_aireTER%name,itau_w,paire_ter)
[907]38       ENDIF
39
40!!! Champs 2D !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
41
[1146]42       IF (o_flat%flag(iff)<=lev_files(iff)) THEN
[1539]43      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
44     $                  o_flat%name,itau_w,zxfluxlat)
[907]45       ENDIF
46
[1146]47       IF (o_slp%flag(iff)<=lev_files(iff)) THEN
[1539]48      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
49     $                  o_slp%name,itau_w,slp)
[907]50       ENDIF
51
[1146]52       IF (o_tsol%flag(iff)<=lev_files(iff)) THEN
[1539]53      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
54     $                  o_tsol%name,itau_w,zxtsol)
[907]55       ENDIF
56
[1146]57       IF (o_t2m%flag(iff)<=lev_files(iff)) THEN
[1539]58      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
59     $                  o_t2m%name,itau_w,zt2m)
[907]60       ENDIF
61
[1539]62      IF (.NOT.clef_stations(iff)) THEN
[1146]63       IF (o_t2m_min%flag(iff)<=lev_files(iff)) THEN
[1539]64      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
65     $o_t2m_min%name,itau_w,zt2m)
[907]66       ENDIF
67
[1146]68       IF (o_t2m_max%flag(iff)<=lev_files(iff)) THEN
[1539]69      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
70     $o_t2m_max%name,itau_w,zt2m)
[907]71       ENDIF
[1539]72       ENDIF
[907]73
[1146]74       IF (o_wind10m%flag(iff)<=lev_files(iff)) THEN
[907]75      DO i=1, klon
76       zx_tmp_fi2d(i)=SQRT(zu10m(i)*zu10m(i)+zv10m(i)*zv10m(i))
77      ENDDO
[1539]78      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]79     s                  o_wind10m%name,itau_w,zx_tmp_fi2d)
[907]80       ENDIF
81
[1539]82      IF (.NOT.clef_stations(iff)) THEN
[1146]83       IF (o_wind10max%flag(iff)<=lev_files(iff)) THEN
[907]84      DO i=1, klon
85       zx_tmp_fi2d(i)=SQRT(zu10m(i)*zu10m(i)+zv10m(i)*zv10m(i))
86      ENDDO
[1539]87      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
88     $o_wind10max%name,itau_w,zx_tmp_fi2d)
[907]89       ENDIF
[1539]90      ENDIF
[907]91
[1146]92       IF (o_sicf%flag(iff)<=lev_files(iff)) THEN
[907]93      DO i = 1, klon
94         zx_tmp_fi2d(i) = pctsrf(i,is_sic)
95      ENDDO
[1539]96      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]97     $                   o_sicf%name,itau_w,zx_tmp_fi2d)
[907]98       ENDIF
99
[1146]100       IF (o_q2m%flag(iff)<=lev_files(iff)) THEN
[1539]101      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
102     $o_q2m%name,itau_w,zq2m)
[907]103       ENDIF
104
[1707]105       IF (o_ustar%flag(iff)<=lev_files(iff)) THEN
106      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
107     $o_ustar%name,itau_w,zustar)
108       ENDIF
109
[1146]110       IF (o_u10m%flag(iff)<=lev_files(iff)) THEN
[1539]111      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
112     $o_u10m%name,itau_w,zu10m)
[907]113       ENDIF
114
[1146]115       IF (o_v10m%flag(iff)<=lev_files(iff)) THEN
[1539]116      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
117     $o_v10m%name,itau_w,zv10m)
[907]118       ENDIF
119
[1146]120       IF (o_psol%flag(iff)<=lev_files(iff)) THEN
[907]121      DO i = 1, klon
122         zx_tmp_fi2d(i) = paprs(i,1)
123      ENDDO
[1539]124      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]125     s                   o_psol%name,itau_w,zx_tmp_fi2d)
[907]126       ENDIF
127
[1492]128       IF (o_mass%flag(iff)<=lev_files(iff)) THEN
[1539]129      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
130     s                   o_mass%name,itau_w,zmasse)
[1492]131        ENDIF
132
133
[1146]134       IF (o_qsurf%flag(iff)<=lev_files(iff)) THEN
[1539]135      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
136     $o_qsurf%name,itau_w,zxqsurf)
[907]137       ENDIF
138
139       if (.not. ok_veget) then
[1146]140         IF (o_qsol%flag(iff)<=lev_files(iff)) THEN
[1539]141        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
142     $o_qsol%name,itau_w,qsol)
[907]143         ENDIF
144       endif
145
[1146]146      IF (o_precip%flag(iff)<=lev_files(iff)) THEN
[907]147       DO i = 1, klon
148         zx_tmp_fi2d(i) = rain_fall(i) + snow_fall(i)
149       ENDDO
[1539]150      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
151     $o_precip%name,itau_w,zx_tmp_fi2d)
[907]152      ENDIF
153
[1146]154       IF (o_ndayrain%flag(iff)<=lev_files(iff)) THEN
[1539]155      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
156     $o_ndayrain%name,itau_w,nday_rain)
[907]157       ENDIF
158
[1146]159      IF (o_plul%flag(iff)<=lev_files(iff)) THEN
[907]160       DO i = 1, klon
161         zx_tmp_fi2d(i) = rain_lsc(i) + snow_lsc(i)
162       ENDDO
[1539]163      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
164     $o_plul%name,itau_w,zx_tmp_fi2d)
[907]165      ENDIF
166
[1146]167      IF (o_pluc%flag(iff)<=lev_files(iff)) THEN
[907]168      DO i = 1, klon
169         zx_tmp_fi2d(i) = rain_con(i) + snow_con(i)
170      ENDDO
[1539]171      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
172     $o_pluc%name,itau_w,zx_tmp_fi2d)
[907]173      ENDIF
174
[1146]175       IF (o_snow%flag(iff)<=lev_files(iff)) THEN
[1539]176      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
177     $o_snow%name,itau_w,snow_fall)
[907]178       ENDIF
179
[1334]180       IF (o_msnow%flag(iff)<=lev_files(iff)) THEN
[1539]181      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
182     $o_msnow%name,itau_w,snow_o)
[1334]183       ENDIF
184
185       IF (o_fsnow%flag(iff)<=lev_files(iff)) THEN
[1539]186      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
187     $o_fsnow%name,itau_w,zfra_o)
[1334]188       ENDIF
189
[1146]190       IF (o_evap%flag(iff)<=lev_files(iff)) THEN
[1539]191      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
192     $o_evap%name,itau_w,evap)
[907]193       ENDIF
194
[1146]195       IF (o_tops%flag(iff)<=lev_files(iff)) THEN
[1539]196      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
197     $o_tops%name,itau_w,topsw)
[907]198       ENDIF
199
[1146]200       IF (o_tops0%flag(iff)<=lev_files(iff)) THEN
[1539]201      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
202     $o_tops0%name,itau_w,topsw0)
[907]203       ENDIF
204
[1146]205       IF (o_topl%flag(iff)<=lev_files(iff)) THEN
[1539]206      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
207     $o_topl%name,itau_w,toplw)
[907]208       ENDIF
209
[1146]210       IF (o_topl0%flag(iff)<=lev_files(iff)) THEN
[1539]211      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
212     $o_topl0%name,itau_w,toplw0)
[907]213       ENDIF
214
[1146]215       IF (o_SWupTOA%flag(iff)<=lev_files(iff)) THEN
[907]216      zx_tmp_fi2d(1 : klon) = swup ( 1 : klon, klevp1 )
[1539]217      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
218     $o_SWupTOA%name,itau_w,zx_tmp_fi2d)
[907]219       ENDIF
220
[1146]221       IF (o_SWupTOAclr%flag(iff)<=lev_files(iff)) THEN
[907]222      zx_tmp_fi2d(1 : klon) = swup0 ( 1 : klon, klevp1 )
[1539]223      CALL histwrite_phy(nid_files(iff),clef_stations(iff), 
[1146]224     $                  o_SWupTOAclr%name,itau_w,zx_tmp_fi2d)
[907]225       ENDIF
226
[1146]227       IF (o_SWdnTOA%flag(iff)<=lev_files(iff)) THEN
[907]228      zx_tmp_fi2d(1 : klon) = swdn ( 1 : klon, klevp1 )
[1539]229      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]230     s                  o_SWdnTOA%name,itau_w,zx_tmp_fi2d)
[907]231       ENDIF
232
[1146]233       IF (o_SWdnTOAclr%flag(iff)<=lev_files(iff)) THEN
[907]234      zx_tmp_fi2d(1 : klon) = swdn0 ( 1 : klon, klevp1 )
[1539]235      CALL histwrite_phy(nid_files(iff),clef_stations(iff), 
[1146]236     $                  o_SWdnTOAclr%name,itau_w,zx_tmp_fi2d)
[907]237       ENDIF
238
[1334]239       IF (o_nettop%flag(iff)<=lev_files(iff)) THEN
240      zx_tmp_fi2d(:) = topsw(:)-toplw(:)
[1539]241      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1334]242     $                  o_nettop%name,itau_w,zx_tmp_fi2d)
243       ENDIF
244
[1146]245       IF (o_SWup200%flag(iff)<=lev_files(iff)) THEN
[1539]246      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
247     $o_SWup200%name,itau_w,SWup200)
[907]248       ENDIF
249
[1146]250       IF (o_SWup200clr%flag(iff)<=lev_files(iff)) THEN
[1539]251      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]252     s                   o_SWup200clr%name,itau_w,SWup200clr)
[907]253       ENDIF
254
[1146]255       IF (o_SWdn200%flag(iff)<=lev_files(iff)) THEN
[1539]256      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
257     $o_SWdn200%name,itau_w,SWdn200)
[907]258       ENDIF
259
[1146]260       IF (o_SWdn200clr%flag(iff)<=lev_files(iff)) THEN
[1539]261      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]262     s                o_SWdn200clr%name,itau_w,SWdn200clr)
[907]263       ENDIF
264
[1146]265       IF (o_LWup200%flag(iff)<=lev_files(iff)) THEN
[1539]266      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
267     $o_LWup200%name,itau_w,LWup200)
[907]268       ENDIF
269
[1146]270       IF (o_LWup200clr%flag(iff)<=lev_files(iff)) THEN
[1539]271      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]272     s                   o_LWup200clr%name,itau_w,LWup200clr)
[907]273       ENDIF
274
[1146]275       IF (o_LWdn200%flag(iff)<=lev_files(iff)) THEN
[1539]276      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1279]277     s                   o_LWdn200%name,itau_w,LWdn200)
[907]278       ENDIF
279
[1146]280       IF (o_LWdn200clr%flag(iff)<=lev_files(iff)) THEN
[1539]281      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1279]282     s                  o_LWdn200clr%name,itau_w,LWdn200clr)
[907]283       ENDIF
284
[1146]285       IF (o_sols%flag(iff)<=lev_files(iff)) THEN
[1539]286      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
287     $o_sols%name,itau_w,solsw)
[907]288       ENDIF
289
[1146]290       IF (o_sols0%flag(iff)<=lev_files(iff)) THEN
[1539]291      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
292     $o_sols0%name,itau_w,solsw0)
[907]293       ENDIF
294
[1146]295       IF (o_soll%flag(iff)<=lev_files(iff)) THEN
[1539]296      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
297     $o_soll%name,itau_w,sollw)
[907]298       ENDIF
299
[1146]300       IF (o_radsol%flag(iff)<=lev_files(iff)) THEN
[1539]301      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
302     $o_radsol%name,itau_w,radsol)
[907]303       ENDIF
304
[1146]305       IF (o_soll0%flag(iff)<=lev_files(iff)) THEN
[1539]306      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
307     $o_soll0%name,itau_w,sollw0)
[907]308       ENDIF
309
[1146]310       IF (o_SWupSFC%flag(iff)<=lev_files(iff)) THEN
[907]311      zx_tmp_fi2d(1 : klon) = swup ( 1 : klon, 1 )
[1539]312      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]313     s               o_SWupSFC%name,itau_w,zx_tmp_fi2d)
[907]314       ENDIF
315
[1146]316       IF (o_SWupSFCclr%flag(iff)<=lev_files(iff)) THEN
[907]317      zx_tmp_fi2d(1 : klon) = swup0 ( 1 : klon, 1 )
[1539]318      CALL histwrite_phy(nid_files(iff),clef_stations(iff), 
[1146]319     $                   o_SWupSFCclr%name,itau_w,zx_tmp_fi2d)
[907]320       ENDIF
321
[1146]322       IF (o_SWdnSFC%flag(iff)<=lev_files(iff)) THEN
[907]323      zx_tmp_fi2d(1 : klon) = swdn ( 1 : klon, 1 )
[1539]324      CALL histwrite_phy(nid_files(iff),clef_stations(iff), 
[1146]325     $                   o_SWdnSFC%name,itau_w,zx_tmp_fi2d)
[907]326       ENDIF
327
[1146]328       IF (o_SWdnSFCclr%flag(iff)<=lev_files(iff)) THEN
[907]329      zx_tmp_fi2d(1 : klon) = swdn0 ( 1 : klon, 1 )
[1539]330      CALL histwrite_phy(nid_files(iff),clef_stations(iff), 
[1146]331     $                  o_SWdnSFCclr%name,itau_w,zx_tmp_fi2d)
[907]332       ENDIF
333
[1146]334       IF (o_LWupSFC%flag(iff)<=lev_files(iff)) THEN
[907]335      zx_tmp_fi2d(1:klon)=sollwdown(1:klon)-sollw(1:klon)
[1539]336      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]337     $                    o_LWupSFC%name,itau_w,zx_tmp_fi2d)
[907]338       ENDIF
339
[1146]340       IF (o_LWdnSFC%flag(iff)<=lev_files(iff)) THEN
[1539]341      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]342     $                   o_LWdnSFC%name,itau_w,sollwdown)
[907]343       ENDIF
344
[958]345       sollwdownclr(1:klon) = -1.*lwdn0(1:klon,1)
[1146]346       IF (o_LWupSFCclr%flag(iff)<=lev_files(iff)) THEN
[907]347      zx_tmp_fi2d(1:klon)=sollwdownclr(1:klon)-sollw0(1:klon)
[1539]348      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]349     $                   o_LWupSFCclr%name,itau_w,zx_tmp_fi2d)
[907]350       ENDIF
351
[1146]352       IF (o_LWdnSFCclr%flag(iff)<=lev_files(iff)) THEN
[1539]353      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]354     $                   o_LWdnSFCclr%name,itau_w,sollwdownclr)
[907]355       ENDIF
356
[1146]357       IF (o_bils%flag(iff)<=lev_files(iff)) THEN
[1539]358      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
359     $o_bils%name,itau_w,bils)
[907]360       ENDIF
361
[1146]362       IF (o_sens%flag(iff)<=lev_files(iff)) THEN
[907]363      zx_tmp_fi2d(1:klon)=-1*sens(1:klon)
[1539]364      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
365     $o_sens%name,itau_w,zx_tmp_fi2d)
[907]366       ENDIF
367
[1146]368       IF (o_fder%flag(iff)<=lev_files(iff)) THEN
[1539]369      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
370     $o_fder%name,itau_w,fder)
[907]371       ENDIF
372
[1146]373       IF (o_ffonte%flag(iff)<=lev_files(iff)) THEN
[1539]374       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
375     $o_ffonte%name,itau_w,zxffonte)
[907]376       ENDIF
377
[1146]378       IF (o_fqcalving%flag(iff)<=lev_files(iff)) THEN
[1539]379       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]380     $                    o_fqcalving%name,itau_w,zxfqcalving)
[907]381       ENDIF
382
[1146]383       IF (o_fqfonte%flag(iff)<=lev_files(iff)) THEN
[1539]384       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]385     $                   o_fqfonte%name,itau_w,zxfqfonte)
[907]386       ENDIF
387
[1334]388       IF (o_taux%flag(iff)<=lev_files(iff)) THEN
389         zx_tmp_fi2d=0.
390         do nsrf=1,nbsrf
391          zx_tmp_fi2d(:)=zx_tmp_fi2d(:)+pctsrf(:,nsrf)*fluxu(:,1,nsrf)
392         enddo
[1539]393         CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1334]394     $                   o_taux%name,itau_w,zx_tmp_fi2d)
395       ENDIF
396
397       IF (o_tauy%flag(iff)<=lev_files(iff)) THEN
398         zx_tmp_fi2d=0.
399         do nsrf=1,nbsrf
400          zx_tmp_fi2d(:)=zx_tmp_fi2d(:)+pctsrf(:,nsrf)*fluxv(:,1,nsrf)
401         enddo
[1539]402         CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1334]403     $                   o_tauy%name,itau_w,zx_tmp_fi2d)
404       ENDIF
405
[907]406         DO nsrf = 1, nbsrf
[1146]407!           IF(nsrf.GE.2) THEN
408            IF (o_pourc_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
[907]409            zx_tmp_fi2d(1 : klon) = pctsrf( 1 : klon, nsrf)*100.
410            CALL histwrite_phy(nid_files(iff),
[1539]411     $                     clef_stations(iff),
[1146]412     $                     o_pourc_srf(nsrf)%name,itau_w,
[907]413     $                     zx_tmp_fi2d)
414            ENDIF
415
[1146]416          IF (o_fract_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
[907]417          zx_tmp_fi2d(1 : klon) = pctsrf( 1 : klon, nsrf)
[1539]418          CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]419     $                  o_fract_srf(nsrf)%name,itau_w,
420     $                  zx_tmp_fi2d)
[907]421          ENDIF
[1146]422!         ENDIF !nsrf.GT.2
[907]423
[1146]424        IF (o_taux_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
[907]425        zx_tmp_fi2d(1 : klon) = fluxu( 1 : klon, 1, nsrf)
[1539]426        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]427     $                     o_taux_srf(nsrf)%name,itau_w,
428     $                     zx_tmp_fi2d)
[907]429        ENDIF
430
[1146]431        IF (o_tauy_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN           
[907]432        zx_tmp_fi2d(1 : klon) = fluxv( 1 : klon, 1, nsrf)
[1539]433        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]434     $                    o_tauy_srf(nsrf)%name,itau_w,
435     $                    zx_tmp_fi2d)
[907]436        ENDIF
437
[1146]438        IF (o_tsol_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
[907]439        zx_tmp_fi2d(1 : klon) = ftsol( 1 : klon, nsrf)
[1539]440        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]441     $                   o_tsol_srf(nsrf)%name,itau_w,
[907]442     $      zx_tmp_fi2d)
443        ENDIF
444
[1750]445        IF (o_evappot_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
446        zx_tmp_fi2d(1 : klon) = evap_pot( 1 : klon, nsrf)
447        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
448     $                   o_evappot_srf(nsrf)%name,itau_w,
449     $      zx_tmp_fi2d)
450        ENDIF
451
[1707]452      IF (o_ustar_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
453      zx_tmp_fi2d(1 : klon) = ustar(1 : klon, nsrf)
454      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
455     $o_ustar_srf(nsrf)%name,
456     $                 itau_w,zx_tmp_fi2d)
457      ENDIF
458
[1146]459      IF (o_u10m_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
[907]460      zx_tmp_fi2d(1 : klon) = u10m(1 : klon, nsrf)
[1539]461      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
462     $o_u10m_srf(nsrf)%name,
[907]463     $                 itau_w,zx_tmp_fi2d)
464      ENDIF
465
[1146]466      IF (o_v10m_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
[907]467      zx_tmp_fi2d(1 : klon) = v10m(1 : klon, nsrf)
[1539]468      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
469     $o_v10m_srf(nsrf)%name,
[907]470     $              itau_w,zx_tmp_fi2d)
471      ENDIF
472 
[1146]473      IF (o_t2m_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
[907]474      zx_tmp_fi2d(1 : klon) = t2m(1 : klon, nsrf)
[1539]475      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
476     $o_t2m_srf(nsrf)%name,
[907]477     $           itau_w,zx_tmp_fi2d)
478      ENDIF
479
[1334]480      IF (o_evap_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
481      zx_tmp_fi2d(1 : klon) = fevap(1 : klon, nsrf)
[1539]482      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
483     $o_evap_srf(nsrf)%name,
[1334]484     $           itau_w,zx_tmp_fi2d)
485      ENDIF
486
[1146]487       IF (o_sens_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
[907]488       zx_tmp_fi2d(1 : klon) = fluxt( 1 : klon, 1, nsrf)
[1539]489       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]490     $                    o_sens_srf(nsrf)%name,itau_w,
[907]491     $      zx_tmp_fi2d)
492       ENDIF
493
[1146]494        IF (o_lat_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
[907]495        zx_tmp_fi2d(1 : klon) = fluxlat( 1 : klon, nsrf)
[1539]496        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]497     $                 o_lat_srf(nsrf)%name,itau_w,
[907]498     $                                   zx_tmp_fi2d)
499          ENDIF
500
[1146]501        IF (o_flw_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
[907]502        zx_tmp_fi2d(1 : klon) = fsollw( 1 : klon, nsrf)
[1539]503        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]504     $                     o_flw_srf(nsrf)%name,itau_w,
[907]505     $      zx_tmp_fi2d)
506        ENDIF
507
[1146]508        IF (o_fsw_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
[907]509        zx_tmp_fi2d(1 : klon) = fsolsw( 1 : klon, nsrf)
[1539]510        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]511     $                   o_fsw_srf(nsrf)%name,itau_w,
[907]512     $      zx_tmp_fi2d)
513        ENDIF
514
[1146]515        IF (o_wbils_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
[907]516        zx_tmp_fi2d(1 : klon) = wfbils( 1 : klon, nsrf)
[1539]517        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]518     $                   o_wbils_srf(nsrf)%name,itau_w,
[907]519     $      zx_tmp_fi2d)
520        ENDIF
521
[1146]522        IF (o_wbilo_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
[907]523        zx_tmp_fi2d(1 : klon) = wfbilo( 1 : klon, nsrf)
[1539]524        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]525     $                    o_wbilo_srf(nsrf)%name,itau_w,
[907]526     $      zx_tmp_fi2d)
527        ENDIF
528
[1669]529       if (iflag_pbl>1 .and. lev_files(iff).gt.10 ) then
[1146]530        IF (o_tke_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
[1539]531        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]532     $                   o_tke_srf(nsrf)%name,itau_w,
533     $                    pbl_tke(:,1:klev,nsrf))
[907]534       ENDIF
535
[1539]536      IF (.NOT.clef_stations(iff)) THEN
[1146]537        IF (o_tke_max_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
[1539]538        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]539     $                    o_tke_max_srf(nsrf)%name,itau_w,
[907]540     $      pbl_tke(:,1:klev,nsrf))
541        ENDIF
[1539]542      ENDIF
[907]543       endif
544      ENDDO
545
[1146]546        IF (o_cdrm%flag(iff)<=lev_files(iff)) THEN
[1539]547      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
548     $o_cdrm%name,itau_w,cdragm)
[907]549        ENDIF
550
[1146]551        IF (o_cdrh%flag(iff)<=lev_files(iff)) THEN
[1539]552      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
553     $o_cdrh%name,itau_w,cdragh)
[907]554        ENDIF
555
[1146]556        IF (o_cldl%flag(iff)<=lev_files(iff)) THEN
[1539]557      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
558     $o_cldl%name,itau_w,cldl)
[907]559        ENDIF
560
[1146]561        IF (o_cldm%flag(iff)<=lev_files(iff)) THEN
[1539]562      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
563     $o_cldm%name,itau_w,cldm)
[907]564        ENDIF
565
[1146]566        IF (o_cldh%flag(iff)<=lev_files(iff)) THEN
[1539]567      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
568     $o_cldh%name,itau_w,cldh)
[907]569        ENDIF
570
[1146]571        IF (o_cldt%flag(iff)<=lev_files(iff)) THEN
[1539]572      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
573     $o_cldt%name, 
[1285]574     &                   itau_w,cldt)
[907]575        ENDIF
576
[1146]577        IF (o_cldq%flag(iff)<=lev_files(iff)) THEN
[1539]578      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
579     $o_cldq%name,itau_w,cldq)
[907]580        ENDIF
581
[1146]582        IF (o_lwp%flag(iff)<=lev_files(iff)) THEN
[907]583      zx_tmp_fi2d(1:klon) = flwp(1:klon)
[1539]584      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]585     s                   o_lwp%name,itau_w,zx_tmp_fi2d)
[907]586        ENDIF
587
[1146]588        IF (o_iwp%flag(iff)<=lev_files(iff)) THEN
[907]589      zx_tmp_fi2d(1:klon) = fiwp(1:klon)
[1539]590      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]591     s                    o_iwp%name,itau_w,zx_tmp_fi2d)
[907]592        ENDIF
593
[1146]594        IF (o_ue%flag(iff)<=lev_files(iff)) THEN
[1539]595      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
596     $o_ue%name,itau_w,ue)
[907]597        ENDIF
598
[1146]599        IF (o_ve%flag(iff)<=lev_files(iff)) THEN
[1539]600      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
601     $o_ve%name,itau_w,ve)
[907]602        ENDIF
603
[1146]604        IF (o_uq%flag(iff)<=lev_files(iff)) THEN
[1539]605      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
606     $o_uq%name,itau_w,uq)
[907]607        ENDIF
608
[1146]609        IF (o_vq%flag(iff)<=lev_files(iff)) THEN
[1539]610      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
611     $o_vq%name,itau_w,vq)
[907]612        ENDIF
613
614      IF(iflag_con.GE.3) THEN ! sb
[1146]615        IF (o_cape%flag(iff)<=lev_files(iff)) THEN
[1539]616      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
617     $o_cape%name,itau_w,cape)
[907]618        ENDIF
619
[1146]620        IF (o_pbase%flag(iff)<=lev_files(iff)) THEN
[1539]621      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
622     $o_pbase%name,itau_w,ema_pcb)
[907]623        ENDIF
624
[1146]625        IF (o_ptop%flag(iff)<=lev_files(iff)) THEN
[1539]626      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
627     $o_ptop%name,itau_w,ema_pct)
[907]628        ENDIF
629
[1146]630        IF (o_fbase%flag(iff)<=lev_files(iff)) THEN
[1539]631      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
632     $o_fbase%name,itau_w,ema_cbmf)
[907]633        ENDIF
634
[1664]635        if (iflag_con /= 30) then
636           if (o_plcl%flag(iff)<=lev_files(iff)) THEN
637              CALL histwrite_phy(nid_files(iff),clef_stations(iff),
638     $             o_plcl%name,itau_w,plcl)
639           ENDIF
[1518]640
[1664]641           IF (o_plfc%flag(iff)<=lev_files(iff)) THEN
642              CALL histwrite_phy(nid_files(iff),clef_stations(iff),
643     $             o_plfc%name,itau_w,plfc)
644           ENDIF
[1518]645
[1664]646           IF (o_wbeff%flag(iff)<=lev_files(iff)) THEN
647              CALL histwrite_phy(nid_files(iff),clef_stations(iff),
648     $             o_wbeff%name,itau_w,wbeff)
649           ENDIF
650        end if
[1518]651
[1539]652      IF (.NOT.clef_stations(iff)) THEN
[1146]653      IF (o_cape_max%flag(iff)<=lev_files(iff)) THEN
[1539]654      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
655     $o_cape_max%name,itau_w,cape)
[1100]656      ENDIF
[1539]657      ENDIF
[1100]658
[1146]659       IF (o_upwd%flag(iff)<=lev_files(iff)) THEN
[1539]660      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
661     $o_upwd%name,itau_w,upwd)
[1146]662       ENDIF
663
664       IF (o_Ma%flag(iff)<=lev_files(iff)) THEN
[1539]665      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
666     $o_Ma%name,itau_w,Ma)
[1146]667       ENDIF
668
669       IF (o_dnwd%flag(iff)<=lev_files(iff)) THEN
[1539]670      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
671     $o_dnwd%name,itau_w,dnwd)
[1146]672       ENDIF
673
674       IF (o_dnwd0%flag(iff)<=lev_files(iff)) THEN
[1539]675      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
676     $o_dnwd0%name,itau_w,dnwd0)
[1146]677       ENDIF
678
[1334]679       IF (o_ftime_con%flag(iff)<=lev_files(iff)) THEN
680        zx_tmp_fi2d=float(itau_con)/float(itap)
[1539]681      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
682     $o_ftime_con%name,
[1334]683     s                   itau_w,zx_tmp_fi2d)
684       ENDIF
685
686       IF (o_mc%flag(iff)<=lev_files(iff)) THEN
[1669]687        if(iflag_thermals>=1)then
[1507]688         zx_tmp_fi3d=dnwd+dnwd0+upwd+fm_therm(:,1:klev)
[1334]689        else
690         zx_tmp_fi3d=dnwd+dnwd0+upwd
691        endif
[1539]692      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
693     $o_mc%name,itau_w,zx_tmp_fi3d)
[1334]694       ENDIF
695     
[907]696      ENDIF !iflag_con .GE. 3
697
[1669]698        IF (o_prw%flag(iff)<=lev_files(iff)) THEN
699      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
700     $o_prw%name,itau_w,prw)
701        ENDIF
702
[1146]703        IF (o_s_pblh%flag(iff)<=lev_files(iff)) THEN
[1539]704      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
705     $o_s_pblh%name,itau_w,s_pblh)
[907]706        ENDIF
707
[1146]708        IF (o_s_pblt%flag(iff)<=lev_files(iff)) THEN
[1539]709      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
710     $o_s_pblt%name,itau_w,s_pblt)
[907]711        ENDIF
712
[1146]713        IF (o_s_lcl%flag(iff)<=lev_files(iff)) THEN
[1539]714      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
715     $o_s_lcl%name,itau_w,s_lcl)
[907]716        ENDIF
717
[1398]718        IF (o_s_therm%flag(iff)<=lev_files(iff)) THEN
[1539]719      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
720     $o_s_therm%name,itau_w,s_therm)
[907]721        ENDIF
722
[1398]723!IM : Les champs suivants (s_capCL, s_oliqCL, s_cteiCL, s_trmb1, s_trmb2, s_trmb3) ne sont pas definis dans HBTM.F
724!       IF (o_s_capCL%flag(iff)<=lev_files(iff)) THEN
[1539]725!     CALL histwrite_phy(nid_files(iff),clef_stations(iff),
726!    $o_s_capCL%name,itau_w,s_capCL)
[1398]727!       ENDIF
[907]728
[1398]729!       IF (o_s_oliqCL%flag(iff)<=lev_files(iff)) THEN
[1539]730!     CALL histwrite_phy(nid_files(iff),clef_stations(iff),
731!    $o_s_oliqCL%name,itau_w,s_oliqCL)
[1398]732!       ENDIF
[907]733
[1398]734!       IF (o_s_cteiCL%flag(iff)<=lev_files(iff)) THEN
[1539]735!     CALL histwrite_phy(nid_files(iff),clef_stations(iff),
736!    $o_s_cteiCL%name,itau_w,s_cteiCL)
[1398]737!       ENDIF
[907]738
[1398]739!       IF (o_s_trmb1%flag(iff)<=lev_files(iff)) THEN
[1539]740!     CALL histwrite_phy(nid_files(iff),clef_stations(iff),
741!    $o_s_trmb1%name,itau_w,s_trmb1)
[1398]742!       ENDIF
[907]743
[1398]744!       IF (o_s_trmb2%flag(iff)<=lev_files(iff)) THEN
[1539]745!     CALL histwrite_phy(nid_files(iff),clef_stations(iff),
746!    $o_s_trmb2%name,itau_w,s_trmb2)
[1398]747!       ENDIF
[907]748
[1398]749!       IF (o_s_trmb3%flag(iff)<=lev_files(iff)) THEN
[1539]750!     CALL histwrite_phy(nid_files(iff),clef_stations(iff),
751!    $o_s_trmb3%name,itau_w,s_trmb3)
[1398]752!       ENDIF
[907]753
754! Champs interpolles sur des niveaux de pression
755
[1146]756        ll=0
[907]757        DO k=1, nlevSTD
[1279]758         bb2=clevSTD(k) 
[907]759         IF(bb2.EQ."850".OR.bb2.EQ."700".OR.
[1279]760     $      bb2.EQ."500".OR.bb2.EQ."200".OR.
[1539]761     $      bb2.EQ."100".OR.
[1279]762     $      bb2.EQ."50".OR.bb2.EQ."10") THEN
[907]763
764! a refaire correctement !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[1146]765          ll=ll+1
766       IF (o_uSTDlevs(ll)%flag(iff)<=lev_files(iff)) THEN
[1539]767       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
768     $o_uSTDlevs(ll)%name,
[1146]769     &                    itau_w,uwriteSTD(:,k,iff))
[907]770       ENDIF
771
[1146]772       IF (o_vSTDlevs(ll)%flag(iff)<=lev_files(iff)) THEN
[1539]773      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
774     $o_vSTDlevs(ll)%name, 
[1146]775     &                   itau_w,vwriteSTD(:,k,iff))
[907]776       ENDIF
777
[1146]778       IF (o_wSTDlevs(ll)%flag(iff)<=lev_files(iff)) THEN
[1539]779      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
780     $o_wSTDlevs(ll)%name,
[1146]781     &                    itau_w,wwriteSTD(:,k,iff))
[907]782       ENDIF
783
[1398]784       IF (o_zSTDlevs(ll)%flag(iff)<=lev_files(iff)) THEN
[1539]785      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
786     $o_zSTDlevs(ll)%name,
[1055]787     &               itau_w,phiwriteSTD(:,k,iff))
[907]788       ENDIF
789
[1146]790       IF (o_qSTDlevs(ll)%flag(iff)<=lev_files(iff)) THEN
[1539]791      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
792     $o_qSTDlevs(ll)%name,
[1146]793     &                   itau_w, qwriteSTD(:,k,iff))
[907]794       ENDIF
795
[1146]796       IF (o_tSTDlevs(ll)%flag(iff)<=lev_files(iff)) THEN
[1539]797      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
798     $o_tSTDlevs(ll)%name,
[1146]799     &                   itau_w, twriteSTD(:,k,iff))
[907]800       ENDIF
801
802       ENDIF !(bb2.EQ."850".OR.bb2.EQ."700".OR.
803       ENDDO
804
[1146]805      IF (o_t_oce_sic%flag(iff)<=lev_files(iff)) THEN
[907]806      DO i=1, klon
807       IF (pctsrf(i,is_oce).GT.epsfra.OR.
808     $     pctsrf(i,is_sic).GT.epsfra) THEN
809        zx_tmp_fi2d(i) = (ftsol(i, is_oce) * pctsrf(i,is_oce)+
810     $                   ftsol(i, is_sic) * pctsrf(i,is_sic))/
811     $                   (pctsrf(i,is_oce)+pctsrf(i,is_sic))
812       ELSE
813        zx_tmp_fi2d(i) = 273.15
814       ENDIF
815      ENDDO
[1539]816      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]817     s                   o_t_oce_sic%name,itau_w,zx_tmp_fi2d)
[907]818      ENDIF
819
[1146]820! Couplage convection-couche limite
821      IF (iflag_con.GE.3) THEN
[1669]822      IF (iflag_coupl>=1) THEN
[1146]823       IF (o_ale_bl%flag(iff)<=lev_files(iff)) THEN
[1539]824       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
825     $o_ale_bl%name,itau_w,ale_bl)
[951]826       ENDIF
[1146]827       IF (o_alp_bl%flag(iff)<=lev_files(iff)) THEN
[1539]828       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
829     $o_alp_bl%name,itau_w,alp_bl)
[951]830       ENDIF
[1669]831      ENDIF !iflag_coupl>=1
[1146]832      ENDIF !(iflag_con.GE.3)
[951]833
[1146]834! Wakes
835      IF (iflag_con.EQ.3) THEN
[1507]836      IF (iflag_wake>=1) THEN
[1146]837       IF (o_ale_wk%flag(iff)<=lev_files(iff)) THEN
[1539]838       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
839     $o_ale_wk%name,itau_w,ale_wake)
[951]840       ENDIF
[1146]841       IF (o_alp_wk%flag(iff)<=lev_files(iff)) THEN
[1539]842       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
843     $o_alp_wk%name,itau_w,alp_wake)
[951]844       ENDIF
[973]845
[1669]846       IF (o_ale%flag(iff)<=lev_files(iff)) THEN
847       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
848     $o_ale%name,itau_w,ale)
849       ENDIF
850       IF (o_alp%flag(iff)<=lev_files(iff)) THEN
851       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
852     $o_alp%name,itau_w,alp)
853       ENDIF
854       IF (o_cin%flag(iff)<=lev_files(iff)) THEN
855       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
856     $o_cin%name,itau_w,cin)
857       ENDIF
[1146]858       IF (o_wape%flag(iff)<=lev_files(iff)) THEN
[1539]859       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
860     $o_WAPE%name,itau_w,wake_pe)
[1146]861       ENDIF
862       IF (o_wake_h%flag(iff)<=lev_files(iff)) THEN
[1539]863      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
864     $o_wake_h%name,itau_w,wake_h)
[1146]865       ENDIF
[1063]866
[1146]867       IF (o_wake_s%flag(iff)<=lev_files(iff)) THEN
[1539]868      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
869     $o_wake_s%name,itau_w,wake_s)
[1063]870       ENDIF
871
[1146]872        IF (o_wake_deltat%flag(iff)<=lev_files(iff)) THEN
[1539]873       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
874     $o_wake_deltat%name,
[1063]875     $                     itau_w,wake_deltat)
876        ENDIF
877
[1146]878        IF (o_wake_deltaq%flag(iff)<=lev_files(iff)) THEN
[1539]879       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
880     $o_wake_deltaq%name,
[1063]881     $                    itau_w,wake_deltaq)
882        ENDIF
883
[1146]884        IF (o_wake_omg%flag(iff)<=lev_files(iff)) THEN
[1539]885       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]886     s                    o_wake_omg%name,itau_w,wake_omg)
[1063]887        ENDIF
[1146]888
889         IF (o_dtwak%flag(iff)<=lev_files(iff)) THEN
890           zx_tmp_fi3d(1:klon,1:klev)=d_t_wake(1:klon,1:klev)
[1100]891     &                                        /pdtphys
[1146]892           CALL histwrite_phy(nid_files(iff),
[1539]893     $clef_stations(iff),
[1146]894     &                       o_dtwak%name,itau_w,zx_tmp_fi3d)
895         ENDIF
896
897        IF (o_dqwak%flag(iff)<=lev_files(iff)) THEN
898        zx_tmp_fi3d(1:klon,1:klev)=d_q_wake(1:klon,1:klev)/pdtphys
[1539]899        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]900     &                     o_dqwak%name,itau_w,zx_tmp_fi3d)
[1100]901        ENDIF
[1507]902      ENDIF ! iflag_wake>=1
[1063]903
[1146]904        IF (o_Vprecip%flag(iff)<=lev_files(iff)) THEN
[1539]905       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
906     $o_Vprecip%name,itau_w,Vprecip)
[1063]907        ENDIF
908
[1146]909        IF (o_ftd%flag(iff)<=lev_files(iff)) THEN
[1539]910       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
911     $o_ftd%name,itau_w,ftd)
[1063]912        ENDIF
913
[1146]914        IF (o_fqd%flag(iff)<=lev_files(iff)) THEN
[1539]915       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
916     $o_fqd%name,itau_w,fqd)
[1063]917        ENDIF
[1750]918
919      ELSEIF (iflag_con.EQ.30) THEN
920! sortie RomP convection descente insaturee iflag_con=30
921       IF (o_Vprecip%flag(iff)<=lev_files(iff)) THEN
922      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
923     $o_Vprecip%name,itau_w,Vprecip)
924       ENDIF
925      IF (o_wdtrainA%flag(iff)<=lev_files(iff)) THEN
926      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
927     $o_wdtrainA%name,itau_w,wdtrainA)
928      ENDIF
929      IF (o_wdtrainM%flag(iff)<=lev_files(iff)) THEN
930      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
931     $o_wdtrainM%name,itau_w,wdtrainM)
932      ENDIF
933
934      ENDIF !(iflag_con.EQ.3.or.iflag_con.EQ.30)
[996]935 
[1669]936!!! nrlmd le 10/04/2012
937
938        IF (iflag_trig_bl>=1) THEN
939          IF (o_n2%flag(iff)<=lev_files(iff)) THEN
940        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
941     s                     o_n2%name,itau_w,n2)
942         ENDIF
943
944         IF (o_s2%flag(iff)<=lev_files(iff)) THEN
945        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
946     s                     o_s2%name,itau_w,s2)
947         ENDIF
948
949          IF (o_proba_notrig%flag(iff)<=lev_files(iff)) THEN
950        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
951     s                     o_proba_notrig%name,itau_w,proba_notrig)
952         ENDIF
953
954         IF (o_random_notrig%flag(iff)<=lev_files(iff)) THEN
955        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
956     s                     o_random_notrig%name,itau_w,random_notrig)
957         ENDIF
958
959         IF (o_ale_bl_stat%flag(iff)<=lev_files(iff)) THEN
960        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
961     s                     o_ale_bl_stat%name,itau_w,ale_bl_stat)
962         ENDIF
963
964         IF (o_ale_bl_trig%flag(iff)<=lev_files(iff)) THEN
965        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
966     s                     o_ale_bl_trig%name,itau_w,ale_bl_trig)
967         ENDIF
968       ENDIF  !(iflag_trig_bl>=1)
969
970        IF (iflag_clos_bl>=1) THEN
971         IF (o_alp_bl_det%flag(iff)<=lev_files(iff)) THEN
972        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
973     s                     o_alp_bl_det%name,itau_w,alp_bl_det)
974         ENDIF
975
976         IF (o_alp_bl_fluct_m%flag(iff)<=lev_files(iff)) THEN
977        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
978     s                     o_alp_bl_fluct_m%name,itau_w,alp_bl_fluct_m)
979         ENDIF
980
981         IF (o_alp_bl_fluct_tke%flag(iff)<=lev_files(iff)) THEN
982        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
983     s                o_alp_bl_fluct_tke%name,itau_w,alp_bl_fluct_tke)
984         ENDIF
985
986         IF (o_alp_bl_conv%flag(iff)<=lev_files(iff)) THEN
987        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
988     s                     o_alp_bl_conv%name,itau_w,alp_bl_conv)
989         ENDIF
990
991         IF (o_alp_bl_stat%flag(iff)<=lev_files(iff)) THEN
992        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
993     s                     o_alp_bl_stat%name,itau_w,alp_bl_stat)
994         ENDIF
995       ENDIF  !(iflag_clos_bl>=1)
996
997!!! fin nrlmd le 10/04/2012
998
[1146]999      IF (type_ocean=='slab ') THEN
1000      IF ( o_slab_bils%flag(iff)<=lev_files(iff)) 
[996]1001     $     CALL histwrite_phy(
[1539]1002     $     nid_files(iff),clef_stations(iff),
1003     $o_slab_bils%name,itau_w,slab_wfbils)
[907]1004
[996]1005      ENDIF !type_ocean == force/slab
[907]1006
[1146]1007      IF (o_weakinv%flag(iff)<=lev_files(iff)) THEN
[1539]1008      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]1009     s                  o_weakinv%name,itau_w,weak_inversion)
[907]1010      ENDIF
1011
[1146]1012      IF (o_dthmin%flag(iff)<=lev_files(iff)) THEN
[1539]1013      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1014     $o_dthmin%name,itau_w,dthmin)
[907]1015      ENDIF
1016
[1146]1017       IF (o_cldtau%flag(iff)<=lev_files(iff)) THEN
[1539]1018       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1019     $o_cldtau%name,itau_w,cldtau)
[907]1020       ENDIF
1021
[1146]1022       IF (o_cldemi%flag(iff)<=lev_files(iff)) THEN
[1539]1023       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1024     $o_cldemi%name,itau_w,cldemi)
[907]1025       ENDIF
1026
[1279]1027      IF (o_pr_con_l%flag(iff)<=lev_files(iff)) THEN
[1539]1028      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1279]1029     s         o_pr_con_l%name,itau_w,pmflxr(:,1:klev))
1030      ENDIF
[929]1031
[1279]1032      IF (o_pr_con_i%flag(iff)<=lev_files(iff)) THEN
[1539]1033      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1279]1034     s         o_pr_con_i%name,itau_w,pmflxs(:,1:klev))
1035      ENDIF
[929]1036
[1279]1037      IF (o_pr_lsc_l%flag(iff)<=lev_files(iff)) THEN
[1539]1038      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1279]1039     s        o_pr_lsc_l%name,itau_w,prfl(:,1:klev))
1040      ENDIF
[929]1041
[1279]1042      IF (o_pr_lsc_i%flag(iff)<=lev_files(iff)) THEN
[1539]1043      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1279]1044     s        o_pr_lsc_i%name,itau_w,psfl(:,1:klev))
1045      ENDIF
[929]1046
[1284]1047      IF (o_re%flag(iff)<=lev_files(iff)) THEN
[1539]1048      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1049     $o_re%name,itau_w,re)
[1284]1050      ENDIF
[1279]1051
[1284]1052      IF (o_fl%flag(iff)<=lev_files(iff)) THEN
[1539]1053      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1054     $o_fl%name,itau_w,fl)
[1284]1055      ENDIF
1056
1057
1058
[1146]1059      IF (o_rh2m%flag(iff)<=lev_files(iff)) THEN
[907]1060      DO i=1, klon
1061       zx_tmp_fi2d(i)=MIN(100.,rh2m(i)*100.)
1062      ENDDO
[1539]1063      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1064     $o_rh2m%name,itau_w,zx_tmp_fi2d)
[907]1065      ENDIF
1066
[1539]1067      IF (.NOT.clef_stations(iff)) THEN
[1334]1068      IF (o_rh2m_min%flag(iff)<=lev_files(iff)) THEN
1069      DO i=1, klon
1070       zx_tmp_fi2d(i)=MIN(100.,rh2m(i)*100.)
1071      ENDDO
[1539]1072      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1073     $o_rh2m_min%name,
[1334]1074     s               itau_w,zx_tmp_fi2d)
1075      ENDIF
1076
1077      IF (o_rh2m_max%flag(iff)<=lev_files(iff)) THEN
1078      DO i=1, klon
1079       zx_tmp_fi2d(i)=MIN(100.,rh2m(i)*100.)
1080      ENDDO
[1539]1081      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1082     $o_rh2m_max%name,
[1334]1083     s              itau_w,zx_tmp_fi2d)
1084      ENDIF
[1539]1085      ENDIF
[1334]1086
1087
[1146]1088      IF (o_qsat2m%flag(iff)<=lev_files(iff)) THEN
[1539]1089      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1090     $o_qsat2m%name,itau_w,qsat2m)
[907]1091      ENDIF
1092
[1146]1093      IF (o_tpot%flag(iff)<=lev_files(iff)) THEN
[1539]1094      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1095     $o_tpot%name,itau_w,tpot)
[907]1096      ENDIF
1097
[1146]1098       IF (o_tpote%flag(iff)<=lev_files(iff)) THEN
[1539]1099      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1100     $o_tpote%name,itau_w,tpote)
[907]1101       ENDIF
1102
[1146]1103      IF (o_SWnetOR%flag(iff)<=lev_files(iff)) THEN
[907]1104      zx_tmp_fi2d(1 : klon) = fsolsw( 1 : klon, is_ter)
[1539]1105      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]1106     s                   o_SWnetOR%name,itau_w, zx_tmp_fi2d)
[907]1107      ENDIF
1108
[1146]1109      IF (o_SWdownOR%flag(iff)<=lev_files(iff)) THEN
[907]1110      zx_tmp_fi2d(1:klon) = solsw(1:klon)/(1.-albsol1(1:klon))
[1539]1111      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]1112     s                   o_SWdownOR%name,itau_w, zx_tmp_fi2d)
[907]1113      ENDIF
1114
[1146]1115      IF (o_LWdownOR%flag(iff)<=lev_files(iff)) THEN
[1539]1116      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]1117     s                  o_LWdownOR%name,itau_w,sollwdown)
[907]1118      ENDIF
1119
[1146]1120      IF (o_snowl%flag(iff)<=lev_files(iff)) THEN
[1539]1121      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1122     $o_snowl%name,itau_w,snow_lsc)
[907]1123      ENDIF
1124
[1146]1125      IF (o_solldown%flag(iff)<=lev_files(iff)) THEN
[1539]1126      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]1127     s                   o_solldown%name,itau_w,sollwdown)
[907]1128      ENDIF
1129
[1146]1130      IF (o_dtsvdfo%flag(iff)<=lev_files(iff)) THEN
[1539]1131      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]1132     s                 o_dtsvdfo%name,itau_w,d_ts(:,is_oce))
[907]1133      ENDIF
1134
[1146]1135      IF (o_dtsvdft%flag(iff)<=lev_files(iff)) THEN
[1539]1136      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]1137     s                   o_dtsvdft%name,itau_w,d_ts(:,is_ter))
[907]1138      ENDIF
1139
[1146]1140       IF (o_dtsvdfg%flag(iff)<=lev_files(iff)) THEN
[1539]1141        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]1142     $                   o_dtsvdfg%name,itau_w, d_ts(:,is_lic))
[907]1143       ENDIF
1144
[1146]1145       IF (o_dtsvdfi%flag(iff)<=lev_files(iff)) THEN
[1539]1146      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]1147     s                   o_dtsvdfi%name,itau_w,d_ts(:,is_sic))
[907]1148       ENDIF
1149
[1146]1150       IF (o_rugs%flag(iff)<=lev_files(iff)) THEN
[1539]1151      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1152     $o_rugs%name,itau_w,zxrugs)
[907]1153       ENDIF
1154
[1279]1155! OD550 per species
1156      IF (new_aod .and. (.not. aerosol_couple)) THEN
[1345]1157          IF (ok_ade.OR.ok_aie) THEN
[1337]1158
1159          IF (o_od550aer%flag(iff)<=lev_files(iff)) THEN
[1539]1160             CALL histwrite_phy(nid_files(iff),
1161     $clef_stations(iff),
1162     $o_od550aer%name,itau_w,
[1337]1163     $            od550aer)
1164          ENDIF
1165          IF (o_od865aer%flag(iff)<=lev_files(iff)) THEN
[1539]1166             CALL histwrite_phy(nid_files(iff),
1167     $clef_stations(iff),
1168     $o_od865aer%name,itau_w,
[1337]1169     $            od865aer)
1170          ENDIF
1171          IF (o_absvisaer%flag(iff)<=lev_files(iff)) THEN
[1539]1172             CALL histwrite_phy(nid_files(iff),
1173     $clef_stations(iff),
1174     $o_absvisaer%name,itau_w,
[1337]1175     $            absvisaer)
1176          ENDIF
1177          IF (o_od550lt1aer%flag(iff)<=lev_files(iff)) THEN
[1539]1178            CALL histwrite_phy(nid_files(iff),
1179     $clef_stations(iff),
1180     $o_od550lt1aer%name,itau_w,
[1337]1181     $            od550lt1aer)
1182          ENDIF
1183
[1345]1184          IF (o_sconcso4%flag(iff)<=lev_files(iff)) THEN
[1539]1185              CALL histwrite_phy(nid_files(iff),
1186     $clef_stations(iff),
1187     $o_sconcso4%name,itau_w,
[1345]1188     $            sconcso4)
[1279]1189          ENDIF
[1345]1190          IF (o_sconcoa%flag(iff)<=lev_files(iff)) THEN
[1539]1191              CALL histwrite_phy(nid_files(iff),
1192     $clef_stations(iff),
1193     $o_sconcoa%name,itau_w,
[1345]1194     $            sconcoa)
1195          ENDIF
1196          IF (o_sconcbc%flag(iff)<=lev_files(iff)) THEN
[1539]1197              CALL histwrite_phy(nid_files(iff),
1198     $clef_stations(iff),
1199     $o_sconcbc%name,itau_w,
[1345]1200     $            sconcbc)
1201          ENDIF
1202          IF (o_sconcss%flag(iff)<=lev_files(iff)) THEN
[1539]1203              CALL histwrite_phy(nid_files(iff),
1204     $clef_stations(iff),
1205     $o_sconcss%name,itau_w,
[1345]1206     $            sconcss)
1207          ENDIF
1208          IF (o_sconcdust%flag(iff)<=lev_files(iff)) THEN
[1539]1209              CALL histwrite_phy(nid_files(iff),
1210     $clef_stations(iff),
1211     $o_sconcdust%name,itau_w,
[1345]1212     $            sconcdust)
1213          ENDIF
1214         
1215          IF (o_concso4%flag(iff)<=lev_files(iff)) THEN
[1539]1216              CALL histwrite_phy(nid_files(iff),
1217     $clef_stations(iff),
1218     $o_concso4%name,itau_w,
[1345]1219     $            concso4)
1220          ENDIF
1221          IF (o_concoa%flag(iff)<=lev_files(iff)) THEN
[1539]1222              CALL histwrite_phy(nid_files(iff),
1223     $clef_stations(iff),
1224     $o_concoa%name,itau_w,
[1345]1225     $            concoa)
1226          ENDIF
1227          IF (o_concbc%flag(iff)<=lev_files(iff)) THEN
[1539]1228              CALL histwrite_phy(nid_files(iff),
1229     $clef_stations(iff),
1230     $o_concbc%name,itau_w,
[1345]1231     $            concbc)
1232          ENDIF
1233          IF (o_concss%flag(iff)<=lev_files(iff)) THEN
[1539]1234              CALL histwrite_phy(nid_files(iff),
1235     $clef_stations(iff),
1236     $o_concss%name,itau_w,
[1345]1237     $            concss)
1238          ENDIF
1239          IF (o_concdust%flag(iff)<=lev_files(iff)) THEN
[1539]1240              CALL histwrite_phy(nid_files(iff),
1241     $clef_stations(iff),
1242     $o_concdust%name,itau_w,
[1345]1243     $            concdust)
1244          ENDIF
1245         
1246          IF (o_loadso4%flag(iff)<=lev_files(iff)) THEN
[1539]1247              CALL histwrite_phy(nid_files(iff),
1248     $clef_stations(iff),
1249     $o_loadso4%name,itau_w,
[1345]1250     $            loadso4)
1251          ENDIF
1252          IF (o_loadoa%flag(iff)<=lev_files(iff)) THEN
[1539]1253              CALL histwrite_phy(nid_files(iff),
1254     $clef_stations(iff),
1255     $o_loadoa%name,itau_w,
[1345]1256     $            loadoa)
1257          ENDIF
1258          IF (o_loadbc%flag(iff)<=lev_files(iff)) THEN
[1539]1259              CALL histwrite_phy(nid_files(iff),
1260     $clef_stations(iff),
1261     $o_loadbc%name,itau_w,
[1345]1262     $            loadbc)
1263          ENDIF
1264          IF (o_loadss%flag(iff)<=lev_files(iff)) THEN
[1539]1265              CALL histwrite_phy(nid_files(iff),
1266     $clef_stations(iff),
1267     $o_loadss%name,itau_w,
[1345]1268     $            loadss)
1269          ENDIF
1270          IF (o_loaddust%flag(iff)<=lev_files(iff)) THEN
[1539]1271              CALL histwrite_phy(nid_files(iff),
1272     $clef_stations(iff),
1273     $o_loaddust%name,itau_w,
[1345]1274     $            loaddust)
1275          ENDIF
1276         
1277          DO naero = 1, naero_spc
1278            IF (o_tausumaero(naero)%flag(iff)<=lev_files(iff)) THEN
1279                CALL histwrite_phy(nid_files(iff),
[1539]1280     $clef_stations(iff),
[1345]1281     $              o_tausumaero(naero)%name,itau_w,
1282     $              tausum_aero(:,2,naero) )
1283            ENDIF
1284          END DO
1285          endif
[1279]1286      ENDIF
[1345]1287     
[1146]1288       IF (ok_ade) THEN
[1279]1289          IF (o_topswad%flag(iff)<=lev_files(iff)) THEN
[1539]1290             CALL histwrite_phy(nid_files(iff),
1291     $clef_stations(iff),
1292     $o_topswad%name,itau_w,
[1279]1293     $            topswad_aero)
1294          ENDIF
[1669]1295          IF (o_topswad0%flag(iff)<=lev_files(iff)) THEN
1296             CALL histwrite_phy(nid_files(iff),
1297     $clef_stations(iff),
1298     $o_topswad0%name,itau_w,
1299     $            topswad0_aero)
1300          ENDIF
[1279]1301          IF (o_solswad%flag(iff)<=lev_files(iff)) THEN
[1539]1302             CALL histwrite_phy(nid_files(iff),
1303     $clef_stations(iff),
1304     $o_solswad%name,itau_w,
[1279]1305     $            solswad_aero)
1306          ENDIF
[1669]1307          IF (o_solswad0%flag(iff)<=lev_files(iff)) THEN
1308             CALL histwrite_phy(nid_files(iff),
1309     $clef_stations(iff),
1310     $o_solswad0%name,itau_w,
1311     $            solswad0_aero)
1312          ENDIF
[1279]1313
1314!====MS forcing diagnostics
1315        if (new_aod) then             
1316        IF (o_swtoaas_nat%flag(iff)<=lev_files(iff)) THEN
[1539]1317        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1318     $o_swtoaas_nat%name,itau_w,
[1279]1319     $      topsw_aero(:,1))
[1146]1320        ENDIF
[1279]1321
1322        IF (o_swsrfas_nat%flag(iff)<=lev_files(iff)) THEN
[1539]1323        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1324     $o_swsrfas_nat%name,itau_w,
[1279]1325     $      solsw_aero(:,1))
[1146]1326        ENDIF
1327
[1279]1328        IF (o_swtoacs_nat%flag(iff)<=lev_files(iff)) THEN
[1539]1329        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1330     $o_swtoacs_nat%name,itau_w,
[1279]1331     $      topsw0_aero(:,1))
[1146]1332        ENDIF
[1279]1333
1334        IF (o_swsrfcs_nat%flag(iff)<=lev_files(iff)) THEN
[1539]1335        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1336     $o_swsrfcs_nat%name,itau_w,
[1279]1337     $      solsw0_aero(:,1))
[1146]1338        ENDIF
[1279]1339 
1340!ant
1341        IF (o_swtoaas_ant%flag(iff)<=lev_files(iff)) THEN
[1539]1342        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1343     $o_swtoaas_ant%name,itau_w,
[1279]1344     $      topsw_aero(:,2))
1345        ENDIF
1346
1347        IF (o_swsrfas_ant%flag(iff)<=lev_files(iff)) THEN
[1539]1348        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1349     $o_swsrfas_ant%name,itau_w,
[1279]1350     $      solsw_aero(:,2))
1351        ENDIF
1352
1353        IF (o_swtoacs_ant%flag(iff)<=lev_files(iff)) THEN
[1539]1354        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1355     $o_swtoacs_ant%name,itau_w,
[1279]1356     $      topsw0_aero(:,2))
1357        ENDIF
1358
1359        IF (o_swsrfcs_ant%flag(iff)<=lev_files(iff)) THEN
[1539]1360        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1361     $o_swsrfcs_ant%name,itau_w,
[1279]1362     $      solsw0_aero(:,2))
1363        ENDIF
1364
1365!cf
1366
1367        if (.not. aerosol_couple) then
1368        IF (o_swtoacf_nat%flag(iff)<=lev_files(iff)) THEN
[1539]1369        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1370     $o_swtoacf_nat%name,itau_w,
[1279]1371     $      topswcf_aero(:,1))
1372        ENDIF
1373
1374        IF (o_swsrfcf_nat%flag(iff)<=lev_files(iff)) THEN
[1539]1375        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1376     $o_swsrfcf_nat%name,itau_w,
[1279]1377     $      solswcf_aero(:,1))
1378        ENDIF
1379
1380        IF (o_swtoacf_ant%flag(iff)<=lev_files(iff)) THEN
[1539]1381        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1382     $o_swtoacf_ant%name,itau_w,
[1279]1383     $      topswcf_aero(:,2))
1384        ENDIF
1385
1386        IF (o_swsrfcf_ant%flag(iff)<=lev_files(iff)) THEN
[1539]1387        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1388     $o_swsrfcf_ant%name,itau_w,
[1279]1389     $      solswcf_aero(:,2))
1390        ENDIF
1391
1392        IF (o_swtoacf_zero%flag(iff)<=lev_files(iff)) THEN
[1539]1393        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1394     $o_swtoacf_zero%name,itau_w,
[1279]1395     $      topswcf_aero(:,3))
1396        ENDIF
1397
1398        IF (o_swsrfcf_zero%flag(iff)<=lev_files(iff)) THEN
[1539]1399        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1400     $o_swsrfcf_zero%name,itau_w,
[1279]1401     $      solswcf_aero(:,3))
1402        ENDIF
1403        endif
1404
1405        endif ! new_aod
1406!====MS forcing diagnostics
1407
[1146]1408       ENDIF
1409
[1279]1410       IF (ok_aie) THEN
1411          IF (o_topswai%flag(iff)<=lev_files(iff)) THEN
[1539]1412             CALL histwrite_phy(nid_files(iff),
1413     $clef_stations(iff),
1414     $o_topswai%name,itau_w,
[1279]1415     $            topswai_aero)
1416          ENDIF
1417          IF (o_solswai%flag(iff)<=lev_files(iff)) THEN
[1539]1418             CALL histwrite_phy(nid_files(iff),
1419     $clef_stations(iff),
1420     $o_solswai%name,itau_w,
[1279]1421     $            solswai_aero)
1422          ENDIF
[1337]1423          IF (o_scdnc%flag(iff)<=lev_files(iff)) THEN
[1539]1424             CALL histwrite_phy(nid_files(iff),
1425     $clef_stations(iff),
1426     $o_scdnc%name,itau_w,
[1337]1427     $            scdnc)
1428          ENDIF
1429          IF (o_cldncl%flag(iff)<=lev_files(iff)) THEN
[1539]1430             CALL histwrite_phy(nid_files(iff),
1431     $clef_stations(iff),
1432     $o_cldncl%name,itau_w,
[1337]1433     $            cldncl)
1434          ENDIF
[1539]1435         IF (o_reffclws%flag(iff)<=lev_files(iff)) THEN
1436            CALL histwrite_phy(nid_files(iff),
1437     $clef_stations(iff),
1438     $o_reffclws%name,itau_w,
[1337]1439     $            reffclws)
[1539]1440         ENDIF
1441         IF (o_reffclwc%flag(iff)<=lev_files(iff)) THEN
1442            CALL histwrite_phy(nid_files(iff),
1443     $clef_stations(iff),
1444     $o_reffclwc%name,itau_w,
[1337]1445     $            reffclwc)
[1539]1446         ENDIF
[1337]1447          IF (o_cldnvi%flag(iff)<=lev_files(iff)) THEN
[1539]1448             CALL histwrite_phy(nid_files(iff),
1449     $clef_stations(iff),
1450     $o_cldnvi%name,itau_w,
[1337]1451     $            cldnvi)
1452          ENDIF
1453          IF (o_lcc%flag(iff)<=lev_files(iff)) THEN
[1539]1454             CALL histwrite_phy(nid_files(iff),
1455     $clef_stations(iff),
1456     $o_lcc%name,itau_w,
[1337]1457     $            lcc)
1458          ENDIF
1459          IF (o_lcc3d%flag(iff)<=lev_files(iff)) THEN
[1539]1460             CALL histwrite_phy(nid_files(iff),
1461     $clef_stations(iff),
1462     $o_lcc3d%name,itau_w,
[1337]1463     $            lcc3d)
1464          ENDIF
1465          IF (o_lcc3dcon%flag(iff)<=lev_files(iff)) THEN
[1539]1466             CALL histwrite_phy(nid_files(iff),
1467     $clef_stations(iff),
1468     $o_lcc3dcon%name,itau_w,
[1337]1469     $            lcc3dcon)
1470          ENDIF
1471          IF (o_lcc3dstra%flag(iff)<=lev_files(iff)) THEN
[1539]1472             CALL histwrite_phy(nid_files(iff),
1473     $clef_stations(iff),
1474     $o_lcc3dstra%name,itau_w,
[1337]1475     $            lcc3dstra)
1476          ENDIF
1477          IF (o_reffclwtop%flag(iff)<=lev_files(iff)) THEN
[1539]1478             CALL histwrite_phy(nid_files(iff),
1479     $clef_stations(iff),
1480     $o_reffclwtop%name,itau_w,
[1337]1481     $            reffclwtop)
1482          ENDIF
[1279]1483       ENDIF
1484
[907]1485! Champs 3D:
[1364]1486       IF (ok_ade .OR. ok_aie) then
1487          IF (o_ec550aer%flag(iff)<=lev_files(iff)) THEN
[1539]1488             CALL histwrite_phy(nid_files(iff),
1489     $clef_stations(iff),
1490     $o_ec550aer%name,itau_w,
[1367]1491     &            ec550aer)
[1364]1492          ENDIF
[1337]1493       ENDIF
1494
[1146]1495       IF (o_lwcon%flag(iff)<=lev_files(iff)) THEN
[1539]1496      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1497     $o_lwcon%name,itau_w,flwc)
[907]1498       ENDIF
1499
[1146]1500       IF (o_iwcon%flag(iff)<=lev_files(iff)) THEN
[1539]1501      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1502     $o_iwcon%name,itau_w,fiwc)
[907]1503       ENDIF
1504
[1146]1505       IF (o_temp%flag(iff)<=lev_files(iff)) THEN
[1539]1506      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1507     $o_temp%name,itau_w,t_seri)
[907]1508       ENDIF
1509
[1146]1510       IF (o_theta%flag(iff)<=lev_files(iff)) THEN
[1539]1511      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1512     $o_theta%name,itau_w,theta)
[945]1513       ENDIF
1514
[1398]1515       IF (o_ovapinit%flag(iff)<=lev_files(iff)) THEN
[1539]1516      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1517     $o_ovapinit%name,itau_w,
[1398]1518     $ qx(:,:,ivap))
[907]1519       ENDIF
1520
[1398]1521       IF (o_ovap%flag(iff)<=lev_files(iff)) THEN
[1539]1522      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1398]1523     $                   o_ovap%name,itau_w,q_seri)
[907]1524       ENDIF
[1669]1525                                                               
1526       IF (o_oliq%flag(iff)<=lev_files(iff)) THEN             
1527      CALL histwrite_phy(nid_files(iff),clef_stations(iff),   
1528     $                   o_oliq%name,itau_w,ql_seri)           
1529       ENDIF
[907]1530
[1146]1531       IF (o_geop%flag(iff)<=lev_files(iff)) THEN
[1539]1532      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1533     $o_geop%name,itau_w,zphi)
[907]1534       ENDIF
1535
[1146]1536       IF (o_vitu%flag(iff)<=lev_files(iff)) THEN
[1539]1537      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1538     $o_vitu%name,itau_w,u_seri)
[907]1539       ENDIF
1540
[1146]1541       IF (o_vitv%flag(iff)<=lev_files(iff)) THEN
[1539]1542      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1543     $o_vitv%name,itau_w,v_seri)
[907]1544       ENDIF
1545
[1146]1546       IF (o_vitw%flag(iff)<=lev_files(iff)) THEN
[1539]1547      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1548     $o_vitw%name,itau_w,omega)
[1146]1549       ENDIF
1550
1551        IF (o_pres%flag(iff)<=lev_files(iff)) THEN
[1539]1552      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1553     $o_pres%name,itau_w,pplay)
[907]1554        ENDIF
1555
[1334]1556        IF (o_paprs%flag(iff)<=lev_files(iff)) THEN
[1539]1557      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1558     $o_paprs%name,
[1334]1559     s                    itau_w,paprs(:,1:klev))
1560        ENDIF
1561
[1539]1562        IF (o_zfull%flag(iff)<=lev_files(iff)) THEN
1563         DO i=1, klon
1564          zx_tmp_fi3d1(i,1)= pphis(i)/RG
1565!020611   zx_tmp_fi3d(i,1)= pphis(i)/RG
1566         ENDDO
1567         DO k=1, klev
1568!020611        DO k=1, klev-1
1569         DO i=1, klon
1570!020611         zx_tmp_fi3d(i,k+1)= zx_tmp_fi3d(i,k) - (t_seri(i,k) *RD * 
1571          zx_tmp_fi3d1(i,k+1)= zx_tmp_fi3d1(i,k) - (t_seri(i,k) *RD * 
1572     $    (paprs(i,k+1) - paprs(i,k))) / ( pplay(i,k) * RG ) 
1573         ENDDO
1574         ENDDO
1575      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1576     $o_zfull%name,itau_w,zx_tmp_fi3d1(:,2:klevp1))
1577!020611    $o_zfull%name,itau_w,zx_tmp_fi3d)
1578        ENDIF
1579
1580        IF (o_zhalf%flag(iff)<=lev_files(iff)) THEN
1581         DO i=1, klon
1582          zx_tmp_fi3d(i,1)= pphis(i)/RG - (
1583     $    (t_seri(i,1)+zxtsol(i))/2. *RD *
1584     $    (pplay(i,1) - paprs(i,1)))/( (paprs(i,1)+pplay(i,1))/2. * RG)
1585         ENDDO
1586         DO k=1, klev-1
1587         DO i=1, klon
1588          zx_tmp_fi3d(i,k+1)= zx_tmp_fi3d(i,k) - (
1589     $    (t_seri(i,k)+t_seri(i,k+1))/2. *RD * 
1590     $    (pplay(i,k+1) - pplay(i,k))) / ( paprs(i,k) * RG ) 
1591         ENDDO
1592         ENDDO
1593      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1594     $o_zhalf%name,itau_w,zx_tmp_fi3d)
1595        ENDIF
1596
[1146]1597       IF (o_rneb%flag(iff)<=lev_files(iff)) THEN
[1539]1598      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1599     $o_rneb%name,itau_w,cldfra)
[907]1600       ENDIF
1601
[1146]1602       IF (o_rnebcon%flag(iff)<=lev_files(iff)) THEN
[1539]1603      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1604     $o_rnebcon%name,itau_w,rnebcon)
[907]1605       ENDIF
1606
[1750]1607       IF (o_rnebls%flag(iff)<=lev_files(iff)) THEN
1608      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1609     $o_rnebls%name,itau_w,rneb)
1610       ENDIF
1611
[1146]1612       IF (o_rhum%flag(iff)<=lev_files(iff)) THEN
[1539]1613      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1614     $o_rhum%name,itau_w,zx_rh)
[907]1615       ENDIF
1616
[1146]1617      IF (o_ozone%flag(iff)<=lev_files(iff)) THEN
[1539]1618         CALL histwrite_phy(nid_files(iff),clef_stations(iff), 
1619     $o_ozone%name, itau_w,
[1279]1620     $        wo(:, :, 1) * dobson_u * 1e3 / zmasse / rmo3 * rmd)
[907]1621      ENDIF
1622
[1279]1623      IF (o_ozone_light%flag(iff)<=lev_files(iff) .and.
1624     $     read_climoz == 2) THEN
[1539]1625         CALL histwrite_phy(nid_files(iff),clef_stations(iff), 
1626     $o_ozone_light%name, itau_w,
[1279]1627     $        wo(:, :, 2) * dobson_u * 1e3 / zmasse / rmo3 * rmd)
1628      ENDIF
1629
[1146]1630       IF (o_dtphy%flag(iff)<=lev_files(iff)) THEN
[1539]1631      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1632     $o_dtphy%name,itau_w,d_t)
[907]1633       ENDIF
1634
[1146]1635       IF (o_dqphy%flag(iff)<=lev_files(iff)) THEN
[1539]1636      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]1637     s                  o_dqphy%name,itau_w, d_qx(:,:,ivap))
[907]1638       ENDIF
1639
1640        DO nsrf=1, nbsrf
[1146]1641        IF (o_albe_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
[907]1642        zx_tmp_fi2d(1 : klon) = falb1( 1 : klon, nsrf)
[1539]1643        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]1644     s                    o_albe_srf(nsrf)%name,itau_w,
1645     $                     zx_tmp_fi2d)
[907]1646        ENDIF
1647
[1146]1648        IF (o_rugs_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN 
[907]1649        zx_tmp_fi2d(1 : klon) = frugs( 1 : klon, nsrf)
[1539]1650        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]1651     s                     o_rugs_srf(nsrf)%name,itau_w,
[907]1652     $      zx_tmp_fi2d)
1653        ENDIF
1654
[1146]1655        IF (o_ages_srf(nsrf)%flag(iff)<=lev_files(iff)) THEN
[907]1656        zx_tmp_fi2d(1 : klon) = agesno( 1 : klon, nsrf)
[1539]1657        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]1658     s                     o_ages_srf(nsrf)%name,itau_w
[907]1659     $    ,zx_tmp_fi2d)
1660        ENDIF
1661        ENDDO !nsrf=1, nbsrf
1662
[1398]1663       IF (o_alb1%flag(iff)<=lev_files(iff)) THEN
[1539]1664      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1665     $o_alb1%name,itau_w,albsol1)
[907]1666       ENDIF
1667
[1398]1668       IF (o_alb2%flag(iff)<=lev_files(iff)) THEN
[1539]1669      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1670     $o_alb2%name,itau_w,albsol2)
[907]1671       ENDIF
1672
1673!FH Sorties pour la couche limite
1674      if (iflag_pbl>1) then
1675      zx_tmp_fi3d=0.
1676      do nsrf=1,nbsrf
1677         do k=1,klev
1678          zx_tmp_fi3d(:,k)=zx_tmp_fi3d(:,k)
1679     $    +pctsrf(:,nsrf)*pbl_tke(:,k,nsrf)
1680         enddo
1681      enddo
[1146]1682       IF (o_tke%flag(iff)<=lev_files(iff)) THEN
[1539]1683      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1684     $o_tke%name,itau_w,zx_tmp_fi3d)
[907]1685       ENDIF
1686
[1539]1687      IF (.NOT.clef_stations(iff)) THEN
[1146]1688       IF (o_tke_max%flag(iff)<=lev_files(iff)) THEN
[1539]1689      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]1690     s                   o_tke_max%name,itau_w,zx_tmp_fi3d)
[907]1691       ENDIF
[1539]1692      ENDIF
[907]1693      endif
1694
[1146]1695       IF (o_kz%flag(iff)<=lev_files(iff)) THEN
[1539]1696      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1697     $o_kz%name,itau_w,coefh)
[907]1698       ENDIF
1699
[1539]1700      IF (.NOT.clef_stations(iff)) THEN
[1146]1701       IF (o_kz_max%flag(iff)<=lev_files(iff)) THEN
[1539]1702      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1703     $o_kz_max%name,itau_w,coefh)
[907]1704       ENDIF
[1539]1705      ENDIF
[907]1706
[1146]1707       IF (o_clwcon%flag(iff)<=lev_files(iff)) THEN
[1539]1708      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1709     $o_clwcon%name,itau_w,clwcon0)
[907]1710       ENDIF
1711
[1146]1712       IF (o_dtdyn%flag(iff)<=lev_files(iff)) THEN
[1539]1713      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1714     $o_dtdyn%name,itau_w,d_t_dyn)
[907]1715       ENDIF
1716
[1146]1717       IF (o_dqdyn%flag(iff)<=lev_files(iff)) THEN
[1539]1718      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1719     $o_dqdyn%name,itau_w,d_q_dyn)
[907]1720       ENDIF
1721
[1146]1722       IF (o_dudyn%flag(iff)<=lev_files(iff)) THEN
[1539]1723      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1724     $o_dudyn%name,itau_w,d_u_dyn)
[1054]1725       ENDIF                                                   
1726
[1146]1727       IF (o_dvdyn%flag(iff)<=lev_files(iff)) THEN                 
[1539]1728      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1729     $o_dvdyn%name,itau_w,d_v_dyn) 
[1054]1730       ENDIF                                                     
1731
[1146]1732       IF (o_dtcon%flag(iff)<=lev_files(iff)) THEN
[907]1733      zx_tmp_fi3d(1:klon,1:klev)=d_t_con(1:klon,1:klev)/pdtphys
[1539]1734      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1735     $o_dtcon%name,itau_w,zx_tmp_fi3d)
1736      ENDIF                                                     
[907]1737
[1539]1738      if(iflag_thermals.eq.1)then
1739      IF (o_tntc%flag(iff)<=lev_files(iff)) THEN
1740      zx_tmp_fi3d(1:klon,1:klev)=d_t_con(1:klon,1:klev)/pdtphys +
1741     $                           d_t_ajsb(1:klon,1:klev)/pdtphys
1742      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1743     $o_tntc%name,itau_w,zx_tmp_fi3d)
1744      ENDIF
1745      else if(iflag_thermals.gt.1.and.iflag_wake.EQ.1)then
1746      IF (o_tntc%flag(iff)<=lev_files(iff)) THEN
1747      zx_tmp_fi3d(1:klon,1:klev)=d_t_con(1:klon,1:klev)/pdtphys +
1748     $                           d_t_ajs(1:klon,1:klev)/pdtphys +
1749     $                           d_t_wake(1:klon,1:klev)/pdtphys
1750      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1751     $o_tntc%name,itau_w,zx_tmp_fi3d)
1752      ENDIF
1753      endif
1754
[1146]1755       IF (o_ducon%flag(iff)<=lev_files(iff)) THEN
[907]1756      zx_tmp_fi3d(1:klon,1:klev)=d_u_con(1:klon,1:klev)/pdtphys
[1539]1757      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1758     $o_ducon%name,itau_w,zx_tmp_fi3d)
[907]1759       ENDIF
1760
[1669]1761       IF (o_dvcon%flag(iff)<=lev_files(iff)) THEN
1762      zx_tmp_fi3d(1:klon,1:klev)=d_v_con(1:klon,1:klev)/pdtphys
1763      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1764     $o_dvcon%name,itau_w,zx_tmp_fi3d)
1765       ENDIF
1766
[1146]1767       IF (o_dqcon%flag(iff)<=lev_files(iff)) THEN
[907]1768      zx_tmp_fi3d(1:klon,1:klev)=d_q_con(1:klon,1:klev)/pdtphys
[1539]1769      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1770     $o_dqcon%name,itau_w,zx_tmp_fi3d)
[907]1771       ENDIF
1772
[1539]1773      if(iflag_thermals.eq.1)then
1774       IF (o_tnhusc%flag(iff)<=lev_files(iff)) THEN
1775      zx_tmp_fi3d(1:klon,1:klev)=d_q_con(1:klon,1:klev)/pdtphys
1776      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1777     $o_tnhusc%name,itau_w,zx_tmp_fi3d)
1778       ENDIF
1779      else if(iflag_thermals.gt.1.and.iflag_wake.EQ.1)then
1780      IF (o_tnhusc%flag(iff)<=lev_files(iff)) THEN
1781      zx_tmp_fi3d(1:klon,1:klev)=d_q_con(1:klon,1:klev)/pdtphys +
1782     $                           d_q_ajs(1:klon,1:klev)/pdtphys +
1783     $                           d_q_wake(1:klon,1:klev)/pdtphys
1784      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1785     $o_tnhusc%name,itau_w,zx_tmp_fi3d)
1786      ENDIF
1787      endif
1788
[1146]1789       IF (o_dtlsc%flag(iff)<=lev_files(iff)) THEN
[907]1790      zx_tmp_fi3d(1:klon,1:klev)=d_t_lsc(1:klon,1:klev)/pdtphys
[1539]1791      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1792     $o_dtlsc%name,itau_w,zx_tmp_fi3d)
[907]1793       ENDIF
1794
[1146]1795       IF (o_dtlschr%flag(iff)<=lev_files(iff)) THEN
[907]1796      zx_tmp_fi3d(1:klon, 1:klev)=(d_t_lsc(1:klon,1:klev)+
1797     $                           d_t_eva(1:klon,1:klev))/pdtphys
[1539]1798      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]1799     s                   o_dtlschr%name,itau_w,zx_tmp_fi3d)
[907]1800       ENDIF
1801
[1146]1802       IF (o_dqlsc%flag(iff)<=lev_files(iff)) THEN
[907]1803      zx_tmp_fi3d(1:klon,1:klev)=d_q_lsc(1:klon,1:klev)/pdtphys
[1539]1804      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1805     $o_dqlsc%name,itau_w,zx_tmp_fi3d)
[907]1806       ENDIF
1807
[1750]1808       IF (o_beta_prec%flag(iff)<=lev_files(iff)) THEN
1809      zx_tmp_fi3d(1:klon,1:klev)=beta_prec(1:klon,1:klev)
1810      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1811     $o_beta_prec%name,itau_w,zx_tmp_fi3d)
1812       ENDIF
1813
[1507]1814!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1815! Sorties specifiques a la separation thermiques/non thermiques
[1669]1816       if (iflag_thermals>=1) then
[1507]1817
1818       IF (o_dtlscth%flag(iff)<=lev_files(iff)) THEN
1819      zx_tmp_fi3d(1:klon,1:klev)=d_t_lscth(1:klon,1:klev)/pdtphys
1820      CALL
[1539]1821     s histwrite_phy(nid_files(iff),clef_stations(iff),
1822     $o_dtlscth%name,itau_w,zx_tmp_fi3d)
[1507]1823       ENDIF
1824
1825       IF (o_dtlscst%flag(iff)<=lev_files(iff)) THEN
1826      zx_tmp_fi3d(1:klon,1:klev)=d_t_lscst(1:klon,1:klev)/pdtphys
1827      CALL
[1539]1828     s histwrite_phy(nid_files(iff),clef_stations(iff),
1829     $o_dtlscst%name,itau_w,zx_tmp_fi3d)
[1507]1830       ENDIF
1831
1832       IF (o_dqlscth%flag(iff)<=lev_files(iff)) THEN
1833      zx_tmp_fi3d(1:klon,1:klev)=d_q_lscth(1:klon,1:klev)/pdtphys
1834      CALL
[1539]1835     s histwrite_phy(nid_files(iff),clef_stations(iff),
1836     $o_dqlscth%name,itau_w,zx_tmp_fi3d)
[1507]1837       ENDIF
1838
1839       IF (o_dqlscst%flag(iff)<=lev_files(iff)) THEN
1840      zx_tmp_fi3d(1:klon,1:klev)=d_q_lscst(1:klon,1:klev)/pdtphys
1841      CALL
[1539]1842     s histwrite_phy(nid_files(iff),clef_stations(iff),
1843     $o_dqlscst%name,itau_w,zx_tmp_fi3d)
[1507]1844       ENDIF
1845
1846       IF (o_plulth%flag(iff)<=lev_files(iff)) THEN
[1539]1847      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1848     $o_plulth%name,itau_w,plul_th)
[1507]1849       ENDIF
1850
1851       IF (o_plulst%flag(iff)<=lev_files(iff)) THEN
[1539]1852      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1853     $o_plulst%name,itau_w,plul_st)
[1507]1854       ENDIF
1855
1856      do k=1,klev
1857      do i=1,klon
1858          if (ptconvth(i,k)) then
1859           zx_tmp_fi3d(i,k)=1.
1860          else
1861           zx_tmp_fi3d(i,k)=0.
1862          endif
1863      enddo
1864      enddo
1865       IF (o_ptconvth%flag(iff)<=lev_files(iff)) THEN
1866      CALL
[1539]1867     s  histwrite_phy(nid_files(iff),clef_stations(iff),
1868     $o_ptconvth%name,itau_w,zx_tmp_fi3d)
[1507]1869       ENDIF
1870
1871      do i=1,klon
1872           zx_tmp_fi2d(1:klon)=lmax_th(:)
1873      enddo
1874       IF (o_ptconvth%flag(iff)<=lev_files(iff)) THEN
1875      CALL
[1539]1876     s histwrite_phy(nid_files(iff),clef_stations(iff),
1877     $o_lmaxth%name,itau_w,zx_tmp_fi2d)
[1507]1878       ENDIF
1879
[1669]1880      endif ! iflag_thermals>=1
[1507]1881
1882!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1883
[1146]1884       IF (o_dtvdf%flag(iff)<=lev_files(iff)) THEN
[907]1885      zx_tmp_fi3d(1:klon,1:klev)=d_t_vdf(1:klon,1:klev)/pdtphys
[1539]1886      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1887     $o_dtvdf%name,itau_w,zx_tmp_fi3d)
[907]1888       ENDIF
1889
[1146]1890       IF (o_dqvdf%flag(iff)<=lev_files(iff)) THEN
[907]1891      zx_tmp_fi3d(1:klon,1:klev)=d_q_vdf(1:klon,1:klev)/pdtphys
[1539]1892      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1893     $o_dqvdf%name,itau_w,zx_tmp_fi3d)
[907]1894       ENDIF
1895
[1146]1896       IF (o_dteva%flag(iff)<=lev_files(iff)) THEN
[907]1897      zx_tmp_fi3d(1:klon,1:klev)=d_t_eva(1:klon,1:klev)/pdtphys
[1539]1898      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1899     $o_dteva%name,itau_w,zx_tmp_fi3d)
[907]1900       ENDIF
1901
[1146]1902       IF (o_dqeva%flag(iff)<=lev_files(iff)) THEN
[907]1903      zx_tmp_fi3d(1:klon,1:klev)=d_q_eva(1:klon,1:klev)/pdtphys
[1539]1904      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1905     $o_dqeva%name,itau_w,zx_tmp_fi3d)
[907]1906       ENDIF
1907
[1146]1908       IF (o_ptconv%flag(iff)<=lev_files(iff)) THEN
[907]1909      zpt_conv = 0.
1910      where (ptconv) zpt_conv = 1.
[1539]1911      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1912     $o_ptconv%name,itau_w,zpt_conv)
[907]1913       ENDIF
1914
[1146]1915       IF (o_ratqs%flag(iff)<=lev_files(iff)) THEN
[1539]1916      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1917     $o_ratqs%name,itau_w,ratqs)
[907]1918       ENDIF
1919
[1146]1920       IF (o_dtthe%flag(iff)<=lev_files(iff)) THEN
[1539]1921      zx_tmp_fi3d(1:klon,1:klev)=d_t_ajs(1:klon,1:klev)/pdtphys -
1922     $                           d_t_ajsb(1:klon,1:klev)/pdtphys
1923      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1924     $o_dtthe%name,itau_w,zx_tmp_fi3d)
[907]1925       ENDIF
1926
[1669]1927       IF (iflag_thermals>=1) THEN
[1334]1928        IF (o_ftime_th%flag(iff)<=lev_files(iff)) THEN
1929! Pour l instant 0 a y reflichir pour les thermiques
1930         zx_tmp_fi2d=0. 
[1539]1931        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1932     $o_ftime_th%name,
[1334]1933     s                     itau_w,zx_tmp_fi2d)
1934        ENDIF
1935
[1146]1936        IF (o_f_th%flag(iff)<=lev_files(iff)) THEN
[1539]1937        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1938     $o_f_th%name,itau_w,fm_therm)
[951]1939        ENDIF
[945]1940
[1146]1941        IF (o_e_th%flag(iff)<=lev_files(iff)) THEN
[1539]1942        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1943     $o_e_th%name,itau_w,entr_therm)
[951]1944        ENDIF
[945]1945
[1146]1946        IF (o_w_th%flag(iff)<=lev_files(iff)) THEN
[1539]1947        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1948     $o_w_th%name,itau_w,zw2)
[1028]1949        ENDIF
1950
[1146]1951        IF (o_q_th%flag(iff)<=lev_files(iff)) THEN
[1539]1952        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1953     $o_q_th%name,itau_w,zqasc)
[1028]1954        ENDIF
1955
1956
[1146]1957        IF (o_a_th%flag(iff)<=lev_files(iff)) THEN
[1539]1958        CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1959     $o_a_th%name,itau_w,fraca)
[1028]1960        ENDIF
1961
[1146]1962       IF (o_d_th%flag(iff)<=lev_files(iff)) THEN
[1539]1963       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1964     $o_d_th%name,itau_w,detr_therm)
[1028]1965       ENDIF
1966
[1146]1967       IF (o_f0_th%flag(iff)<=lev_files(iff)) THEN
[1539]1968      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1969     $o_f0_th%name,itau_w,f0)
[945]1970       ENDIF
1971
[1507]1972       IF (o_zmax_th%flag(iff)<=lev_files(iff)) THEN
[1539]1973       CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1974     $o_zmax_th%name,itau_w,zmax_th)
[945]1975       ENDIF
1976
[1146]1977       IF (o_dqthe%flag(iff)<=lev_files(iff)) THEN
[1539]1978      zx_tmp_fi3d(1:klon,1:klev)=d_q_ajs(1:klon,1:klev)/pdtphys -
1979     $                           d_q_ajsb(1:klon,1:klev)/pdtphys
1980      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1981     $o_dqthe%name,itau_w,zx_tmp_fi3d)
[907]1982       ENDIF
1983
[1398]1984      ENDIF !iflag_thermals
1985
[1146]1986       IF (o_dtajs%flag(iff)<=lev_files(iff)) THEN
[907]1987      zx_tmp_fi3d(1:klon,1:klev)=d_t_ajsb(1:klon,1:klev)/pdtphys
[1539]1988      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1989     $o_dtajs%name,itau_w,zx_tmp_fi3d)
[907]1990       ENDIF
1991
[1146]1992       IF (o_dqajs%flag(iff)<=lev_files(iff)) THEN
[907]1993      zx_tmp_fi3d(1:klon,1:klev)=d_q_ajsb(1:klon,1:klev)/pdtphys
[1539]1994      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
1995     $o_dqajs%name,itau_w,zx_tmp_fi3d)
[907]1996       ENDIF
1997
[1146]1998       IF (o_dtswr%flag(iff)<=lev_files(iff)) THEN
[907]1999      zx_tmp_fi3d(1:klon,1:klev)=heat(1:klon,1:klev)/RDAY
[1539]2000      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2001     $o_dtswr%name,itau_w,zx_tmp_fi3d)
[907]2002       ENDIF
2003
[1146]2004       IF (o_dtsw0%flag(iff)<=lev_files(iff)) THEN
[907]2005      zx_tmp_fi3d(1:klon,1:klev)=heat0(1:klon,1:klev)/RDAY
[1539]2006      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2007     $o_dtsw0%name,itau_w,zx_tmp_fi3d)
[907]2008       ENDIF
2009
[1146]2010       IF (o_dtlwr%flag(iff)<=lev_files(iff)) THEN
[907]2011      zx_tmp_fi3d(1:klon,1:klev)=-1.*cool(1:klon,1:klev)/RDAY
[1539]2012      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2013     $o_dtlwr%name,itau_w,zx_tmp_fi3d)
[907]2014       ENDIF
2015
[1146]2016       IF (o_dtlw0%flag(iff)<=lev_files(iff)) THEN
[907]2017      zx_tmp_fi3d(1:klon,1:klev)=-1.*cool0(1:klon,1:klev)/RDAY
[1539]2018      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2019     $o_dtlw0%name,itau_w,zx_tmp_fi3d)
[907]2020       ENDIF
2021
[1146]2022       IF (o_dtec%flag(iff)<=lev_files(iff)) THEN
[907]2023      zx_tmp_fi3d(1:klon,1:klev)=d_t_ec(1:klon,1:klev)
[1539]2024      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2025     $o_dtec%name,itau_w,zx_tmp_fi3d)
[907]2026       ENDIF
2027
[1146]2028       IF (o_duvdf%flag(iff)<=lev_files(iff)) THEN
[907]2029      zx_tmp_fi3d(1:klon,1:klev)=d_u_vdf(1:klon,1:klev)/pdtphys
[1539]2030      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2031     $o_duvdf%name,itau_w,zx_tmp_fi3d)
[907]2032       ENDIF
2033
[1146]2034       IF (o_dvvdf%flag(iff)<=lev_files(iff)) THEN
[907]2035      zx_tmp_fi3d(1:klon,1:klev)=d_v_vdf(1:klon,1:klev)/pdtphys
[1539]2036      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2037     $o_dvvdf%name,itau_w,zx_tmp_fi3d)
[907]2038       ENDIF
2039
2040       IF (ok_orodr) THEN
[1146]2041      IF (o_duoro%flag(iff)<=lev_files(iff)) THEN
[907]2042      zx_tmp_fi3d(1:klon,1:klev)=d_u_oro(1:klon,1:klev)/pdtphys
[1539]2043      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2044     $o_duoro%name,itau_w,zx_tmp_fi3d)
[907]2045       ENDIF
2046
[1146]2047      IF (o_dvoro%flag(iff)<=lev_files(iff)) THEN
[907]2048      zx_tmp_fi3d(1:klon,1:klev)=d_v_oro(1:klon,1:klev)/pdtphys
[1539]2049      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2050     $o_dvoro%name,itau_w,zx_tmp_fi3d)
[907]2051      ENDIF
[1539]2052
2053      IF (o_dtoro%flag(iff)<=lev_files(iff)) THEN
2054      zx_tmp_fi3d(1:klon,1:klev)=d_t_oro(1:klon,1:klev)/pdtphys
2055      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2056     $o_dtoro%name,itau_w,zx_tmp_fi3d)
2057      ENDIF
[907]2058       ENDIF
2059
2060        IF (ok_orolf) THEN
[1146]2061       IF (o_dulif%flag(iff)<=lev_files(iff)) THEN
[907]2062      zx_tmp_fi3d(1:klon,1:klev)=d_u_lif(1:klon,1:klev)/pdtphys
[1539]2063      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2064     $o_dulif%name,itau_w,zx_tmp_fi3d)
[907]2065       ENDIF
2066
[1146]2067        IF (o_dvlif%flag(iff)<=lev_files(iff)) THEN
[907]2068      zx_tmp_fi3d(1:klon,1:klev)=d_v_lif(1:klon,1:klev)/pdtphys
[1539]2069      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2070     $o_dvlif%name,itau_w,zx_tmp_fi3d)
[907]2071       ENDIF
[1539]2072
2073        IF (o_dtlif%flag(iff)<=lev_files(iff)) THEN
2074      zx_tmp_fi3d(1:klon,1:klev)=d_t_lif(1:klon,1:klev)/pdtphys
2075      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2076     $o_dtlif%name,itau_w,zx_tmp_fi3d)
2077       ENDIF
[907]2078        ENDIF
2079
[1539]2080       IF (ok_hines) THEN
2081       IF (o_duhin%flag(iff)<=lev_files(iff)) THEN
2082      zx_tmp_fi3d(1:klon,1:klev)=d_u_hin(1:klon,1:klev)/pdtphys
2083      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2084     $o_duhin%name,itau_w,zx_tmp_fi3d)
2085       ENDIF
2086
2087
2088        IF (o_dvhin%flag(iff)<=lev_files(iff)) THEN
2089      zx_tmp_fi3d(1:klon,1:klev)=d_v_hin(1:klon,1:klev)/pdtphys
2090      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2091     $o_dvhin%name,itau_w,zx_tmp_fi3d)
2092       ENDIF
2093
2094        IF (o_dthin%flag(iff)<=lev_files(iff)) THEN
2095      zx_tmp_fi3d(1:klon,1:klev)=d_t_hin(1:klon,1:klev)/pdtphys
2096      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2097     $o_dthin%name,itau_w,zx_tmp_fi3d)
2098       ENDIF
2099        ENDIF
2100
2101       IF (o_rsu%flag(iff)<=lev_files(iff)) THEN
2102      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2103     $o_rsu%name,itau_w,swup)
2104       ENDIF
2105       IF (o_rsd%flag(iff)<=lev_files(iff)) THEN
2106      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2107     $o_rsd%name,itau_w,swdn)
2108       ENDIF
2109       IF (o_rlu%flag(iff)<=lev_files(iff)) THEN
2110      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2111     $o_rlu%name,itau_w,lwup)
2112       ENDIF
2113       IF (o_rld%flag(iff)<=lev_files(iff)) THEN
2114      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2115     $o_rld%name,itau_w,lwdn)
2116       ENDIF
2117
2118       IF (o_rsucs%flag(iff)<=lev_files(iff)) THEN
2119      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2120     $o_rsucs%name,itau_w,swup0)
2121       ENDIF
2122       IF (o_rsdcs%flag(iff)<=lev_files(iff)) THEN
2123      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2124     $o_rsdcs%name,itau_w,swdn0)
2125       ENDIF
2126       IF (o_rlucs%flag(iff)<=lev_files(iff)) THEN
2127      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2128     $o_rlucs%name,itau_w,lwup0)
2129       ENDIF
2130       IF (o_rldcs%flag(iff)<=lev_files(iff)) THEN
2131      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2132     $o_rldcs%name,itau_w,lwdn0)
2133       ENDIF
2134
2135       IF (o_tnt%flag(iff)<=lev_files(iff)) THEN
2136      zx_tmp_fi3d(1:klon,1:klev)=d_t(1:klon,1:klev)+
2137     $d_t_dyn(1:klon,1:klev)
2138      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2139     $o_tnt%name,itau_w,zx_tmp_fi3d)
2140       ENDIF
2141
2142       IF (o_tntr%flag(iff)<=lev_files(iff)) THEN
2143      zx_tmp_fi3d(1:klon,1:klev)=heat(1:klon,1:klev)/RDAY -
2144     $cool(1:klon,1:klev)/RDAY
2145      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2146     $o_tntr%name,itau_w,zx_tmp_fi3d)
2147       ENDIF
2148
2149       IF (o_tntscpbl%flag(iff)<=lev_files(iff)) THEN
2150      zx_tmp_fi3d(1:klon,1:klev)= (d_t_lsc(1:klon,1:klev)+
2151     $                             d_t_eva(1:klon,1:klev)+
2152     $                             d_t_vdf(1:klon,1:klev))/pdtphys
2153      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2154     $o_tntscpbl%name,itau_w,zx_tmp_fi3d)
2155       ENDIF
2156
2157       IF (o_tnhus%flag(iff)<=lev_files(iff)) THEN
2158      zx_tmp_fi3d(1:klon,1:klev)=d_qx(1:klon,1:klev,ivap)+
2159     $d_q_dyn(1:klon,1:klev)
2160      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2161     $o_tnhus%name,itau_w,zx_tmp_fi3d)
2162       ENDIF
2163
2164       IF (o_tnhusscpbl%flag(iff)<=lev_files(iff)) THEN
2165      zx_tmp_fi3d(1:klon,1:klev)=d_q_lsc(1:klon,1:klev)/pdtphys+
2166     $                           d_q_eva(1:klon,1:klev)/pdtphys
2167      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2168     $o_tnhusscpbl%name,itau_w,zx_tmp_fi3d)
2169       ENDIF
2170
2171       IF (o_evu%flag(iff)<=lev_files(iff)) THEN
2172      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2173     $o_evu%name,itau_w,coefm)
2174       ENDIF
2175
2176       IF (o_h2o%flag(iff)<=lev_files(iff)) THEN
2177      zx_tmp_fi3d(1:klon,1:klev)=q_seri(1:klon,1:klev)+
2178     $                           ql_seri(1:klon,1:klev) 
2179      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2180     $o_h2o%name,itau_w,zx_tmp_fi3d)
2181       ENDIF
2182
[1669]2183       if (iflag_con >= 3) then
2184          IF (o_mcd%flag(iff)<=lev_files(iff)) THEN
2185             zx_tmp_fi3d(1:klon,1:klev)=-1 * (dnwd(1:klon,1:klev)+
2186     $            dnwd0(1:klon,1:klev)) 
2187             CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2188     $            o_mcd%name,itau_w,zx_tmp_fi3d)
2189          ENDIF
[1539]2190
[1669]2191          IF (o_dmc%flag(iff)<=lev_files(iff)) THEN
2192             zx_tmp_fi3d(1:klon,1:klev)=upwd(1:klon,1:klev) +
2193     $            dnwd(1:klon,1:klev)+ dnwd0(1:klon,1:klev) 
2194             CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2195     $            o_dmc%name,itau_w,zx_tmp_fi3d)
2196          ENDIF
2197       else if (iflag_con == 2) then
2198          IF (o_mcd%flag(iff) <= lev_files(iff)) THEN
2199             CALL histwrite_phy(nid_files(iff), clef_stations(iff),
2200     $            o_mcd%name, itau_w, pmfd)
2201          ENDIF
[1539]2202
[1669]2203          IF (o_dmc%flag(iff) <= lev_files(iff)) THEN
2204             CALL histwrite_phy(nid_files(iff), clef_stations(iff),
2205     $            o_dmc%name, itau_w, pmfu + pmfd)
2206          ENDIF
2207       end if
2208
[1539]2209       IF (o_ref_liq%flag(iff)<=lev_files(iff)) THEN
2210      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2211     $o_ref_liq%name,itau_w,ref_liq)
2212       ENDIF
2213
2214       IF (o_ref_ice%flag(iff)<=lev_files(iff)) THEN
2215      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2216     $o_ref_ice%name,itau_w,ref_ice)
2217       ENDIF
2218
2219      if (RCO2_per.NE.RCO2_act.OR.RCH4_per.NE.RCH4_act.OR.
2220     $ RN2O_per.NE.RN2O_act.OR.RCFC11_per.NE.RCFC11_act.OR.
2221     $ RCFC12_per.NE.RCFC12_act) THEN
2222
2223       IF (o_rsut4co2%flag(iff)<=lev_files(iff)) THEN
2224      zx_tmp_fi2d(1 : klon) = swupp ( 1 : klon, klevp1 )
2225      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2226     $o_rsut4co2%name,itau_w,zx_tmp_fi2d)
2227       ENDIF
2228
2229       IF (o_rlut4co2%flag(iff)<=lev_files(iff)) THEN
2230      zx_tmp_fi2d(1 : klon) = lwupp ( 1 : klon, klevp1 )
2231      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2232     $o_rlut4co2%name,itau_w,zx_tmp_fi2d)
2233       ENDIF
2234
2235       IF (o_rsutcs4co2%flag(iff)<=lev_files(iff)) THEN
2236      zx_tmp_fi2d(1 : klon) = swup0p ( 1 : klon, klevp1 )
2237      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2238     $o_rsutcs4co2%name,itau_w,zx_tmp_fi2d)
2239       ENDIF
2240
2241       IF (o_rlutcs4co2%flag(iff)<=lev_files(iff)) THEN
2242      zx_tmp_fi2d(1 : klon) = lwup0p ( 1 : klon, klevp1 )
2243      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2244     $o_rlutcs4co2%name,itau_w,zx_tmp_fi2d)
2245       ENDIF
2246
2247       IF (o_rsu4co2%flag(iff)<=lev_files(iff)) THEN
2248      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2249     $o_rsu4co2%name,itau_w,swupp)
2250       ENDIF
2251
2252       IF (o_rlu4co2%flag(iff)<=lev_files(iff)) THEN
2253      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2254     $o_rlu4co2%name,itau_w,lwupp)
2255       ENDIF
2256
2257       IF (o_rsucs4co2%flag(iff)<=lev_files(iff)) THEN
2258      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2259     $o_rsucs4co2%name,itau_w,swup0p)
2260       ENDIF
2261
2262       IF (o_rlucs4co2%flag(iff)<=lev_files(iff)) THEN
2263      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2264     $o_rlucs4co2%name,itau_w,lwup0p)
2265       ENDIF
2266
2267       IF (o_rsd4co2%flag(iff)<=lev_files(iff)) THEN
2268      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2269     $o_rsd4co2%name,itau_w,swdnp)
2270       ENDIF
2271
2272       IF (o_rld4co2%flag(iff)<=lev_files(iff)) THEN
2273      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2274     $o_rld4co2%name,itau_w,lwdnp)
2275       ENDIF
2276
2277       IF (o_rsdcs4co2%flag(iff)<=lev_files(iff)) THEN
2278      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2279     $o_rsdcs4co2%name,itau_w,swdn0p)
2280       ENDIF
2281
2282       IF (o_rldcs4co2%flag(iff)<=lev_files(iff)) THEN
2283      CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2284     $o_rldcs4co2%name,itau_w,lwdn0p)
2285       ENDIF
2286
2287      endif
2288
[1403]2289        if (nqtot.GE.3) THEN
2290         DO iq=3,nqtot
[1146]2291       IF (o_trac(iq-2)%flag(iff)<=lev_files(iff)) THEN
[1539]2292         CALL histwrite_phy(nid_files(iff),clef_stations(iff),
[1146]2293     s                  o_trac(iq-2)%name,itau_w,qx(:,:,iq))
2294       ENDIF
[1403]2295         ENDDO
[1707]2296         DO iq=3,nqtot
2297       IF (o_trac_cum(iq-2)%flag(iff)<=lev_files(iff)) THEN
2298         zx_tmp_fi2d=0.
2299         do k=1,klev
2300            zx_tmp_fi2d(:)=zx_tmp_fi2d(:)+zmasse(:,k)*qx(:,k,iq)
2301         enddo
2302         CALL histwrite_phy(nid_files(iff),clef_stations(iff),
2303     s                  o_trac_cum(iq-2)%name,itau_w,zx_tmp_fi2d)
2304
2305       ENDIF
2306         ENDDO
[1403]2307        endif
[907]2308
2309      if (ok_sync) then
2310c$OMP MASTER
[1539]2311      call histsync(nid_files(iff))
[907]2312c$OMP END MASTER
2313      endif
2314
2315       ENDIF ! clef_files
2316
2317      ENDDO ! iff=1,nfiles
Note: See TracBrowser for help on using the repository browser.