source: LMDZ4/branches/LMDZ4_V2_patch/libf/phylmd/write_histrac.h @ 1328

Last change on this file since 1328 was 759, checked in by lsce, 17 years ago

correction de bug pour le couplage avec le modele inca - ACo

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 22.0 KB
Line 
1!
2! $Header$
3!
4      ndex = 0
5      ndex2d = 0
6      ndex3d = 0
7c
8cIM itau_phy n'est pas defini dans phytrac   itau_w = itau_phy + nstep
9      itau_w = nstep
10c     print*,'write_histrac: itau_w itau_phy nstep',itau_w,itau_phy,
11c    $ nstep
12c     
13      CALL gr_fi_ecrit(1,klon,iim,jjm+1,pphis,zx_tmp_2d)
14      CALL histwrite(nid_tra,"phis",itau_w,zx_tmp_2d,iim*(jjm+1),ndex2d)
15C
16      CALL gr_fi_ecrit(1,klon,iim,jjm+1,airephy,zx_tmp_2d)     
17      CALL histwrite(nid_tra,"aire",itau_w,zx_tmp_2d,iim*(jjm+1),ndex2d)
18#ifdef INCA
19      CALL gr_fi_ecrit(1, klon,iim,jjm+1, ps,zx_tmp_2d)
20      CALL histwrite(nid_tra,"ps",itau_w,zx_tmp_2d,
21     .     iim*(jjm+1),ndex2d)
22
23      CALL gr_fi_ecrit(1, klon,iim,jjm+1, ptrop,zx_tmp_2d)
24      CALL histwrite(nid_tra,"ptrop",itau_w,zx_tmp_2d,
25     .     iim*(jjm+1),ndex2d)
26
27C   3d FIELDS
28
29      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,t_seri, zx_tmp_3d)
30      CALL histwrite(nid_tra,"temp",itau_w,zx_tmp_3d,
31     .                                   iim*(jjm+1)*klev,ndex3d)
32
33      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,u, zx_tmp_3d)
34      CALL histwrite(nid_tra,"u",itau_w,zx_tmp_3d,
35     .                                   iim*(jjm+1)*klev,ndex3d)
36
37      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,v, zx_tmp_3d)
38      CALL histwrite(nid_tra,"v",itau_w,zx_tmp_3d,
39     .                                   iim*(jjm+1)*klev,ndex3d)
40
41      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,sh, zx_tmp_3d)
42      CALL histwrite(nid_tra,"h2o",itau_w,zx_tmp_3d,
43     .                                   iim*(jjm+1)*klev,ndex3d)
44
45      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,pdel, zx_tmp_3d)
46      CALL histwrite(nid_tra,"pdel",itau_w,zx_tmp_3d,
47     .                                   iim*(jjm+1)*klev,ndex3d)
48
49      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,pplay, zx_tmp_3d)
50      CALL histwrite(nid_tra,"pmid",itau_w,zx_tmp_3d,
51     .                                   iim*(jjm+1)*klev,ndex3d)
52
53! Ajout Anne
54#ifdef INCA_AER
55      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,airm, zx_tmp_3d)
56      CALL histwrite(nid_tra,"airm",itau_w,zx_tmp_3d,
57     .                                   iim*(jjm+1)*klev,ndex)
58#endif
59
60! Fin ajout Anne
61
62#ifdef INCA
63#ifdef INCAINFO
64#ifdef INCA_NMHC
65      DO it=1, phtcnt
66      WRITE(str2,'(i2.2)') it
67      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,jrates(1,1,it),
68     .     zx_tmp_3d)
69      CALL histwrite(nid_tra,"j"//str2,itau_w,zx_tmp_3d,
70     .                                   iim*(jjm+1)*klev,ndex3d)
71      ENDDO
72
73      DO it=1, hetcnt
74      WRITE(str2,'(i2.2)') it
75      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,hrates(1,1,it),
76     .     zx_tmp_3d)
77      CALL histwrite(nid_tra,"w"//str2,itau_w,zx_tmp_3d,
78     .                                   iim*(jjm+1)*klev,ndex3d)
79      ENDDO
80
81      DO it=1, extcnt
82      WRITE(str2,'(i2.2)') it
83      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,extflx(1,1,it),
84     .     zx_tmp_3d)
85      CALL histwrite(nid_tra,"ext"//str2,itau_w,zx_tmp_3d,
86     .                                   iim*(jjm+1)*klev,ndex3d)
87      ENDDO
88#endif
89#ifdef INCA_CH4
90       DO it=1, phtcnt
91      WRITE(str2,'(i2.2)') it
92      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,jrates(1,1,it),
93     .     zx_tmp_3d)
94      CALL histwrite(nid_tra,"j"//str2,itau_w,zx_tmp_3d,
95     .                                   iim*(jjm+1)*klev,ndex3d)
96      ENDDO
97
98      DO it=1, hetcnt
99      WRITE(str2,'(i2.2)') it
100      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,hrates(1,1,it),
101     .     zx_tmp_3d)
102      CALL histwrite(nid_tra,"w"//str2,itau_w,zx_tmp_3d,
103     .                                   iim*(jjm+1)*klev,ndex3d)
104      ENDDO
105
106      DO it=1, extcnt
107      WRITE(str2,'(i2.2)') it
108      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,extflx(1,1,it),
109     .     zx_tmp_3d)
110      CALL histwrite(nid_tra,"ext"//str2,itau_w,zx_tmp_3d,
111     .                                   iim*(jjm+1)*klev,ndex3d)
112      ENDDO
113#endif
114
115      DO it=1, nfs
116      WRITE(str2,'(i2.2)') it
117      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,invariants(1,1,it),
118     .     zx_tmp_3d)
119      CALL histwrite(nid_tra,"INV"//str2,itau_w,zx_tmp_3d,
120     .                                   iim*(jjm+1)*klev,ndex3d)
121      ENDDO
122#else
123#ifdef INCA_NMHC
124      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,jrates(1,1,2),
125     .     zx_tmp_3d)
126      CALL histwrite(nid_tra,"jO3",itau_w,zx_tmp_3d,
127     .                                   iim*(jjm+1)*klev,ndex3d)
128
129      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,jrates(1,1,4),
130     .     zx_tmp_3d)
131      CALL histwrite(nid_tra,"jNO2",itau_w,zx_tmp_3d,
132     .                                   iim*(jjm+1)*klev,ndex3d)
133
134      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,jrates(1,1,13),
135     .     zx_tmp_3d)
136      CALL histwrite(nid_tra,"jH2O2",itau_w,zx_tmp_3d,
137     .                                   iim*(jjm+1)*klev,ndex3d)
138
139      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,hrates(1,1,1),
140     .     zx_tmp_3d)
141      CALL histwrite(nid_tra,"wHNO3",itau_w,zx_tmp_3d,
142     .                                   iim*(jjm+1)*klev,ndex3d)
143
144      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,krates(1,1,1),
145     .     zx_tmp_3d)
146      CALL histwrite(nid_tra,"kN2O5",itau_w,zx_tmp_3d,
147     .                                   iim*(jjm+1)*klev,ndex3d)
148
149      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,extflx(1,1,1),
150     .     zx_tmp_3d)
151      CALL histwrite(nid_tra,"LghtNO",itau_w,zx_tmp_3d,
152     .                                   iim*(jjm+1)*klev,ndex3d)
153#endif
154#ifdef INCA_CH4
155      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,jrates(1,1,2),
156     .     zx_tmp_3d)
157      CALL histwrite(nid_tra,"jO3",itau_w,zx_tmp_3d,
158     .                                   iim*(jjm+1)*klev,ndex3d)
159
160      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,jrates(1,1,4),
161     .     zx_tmp_3d)
162      CALL histwrite(nid_tra,"jNO2",itau_w,zx_tmp_3d,
163     .                                   iim*(jjm+1)*klev,ndex3d)
164
165      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,jrates(1,1,13),
166     .     zx_tmp_3d)
167      CALL histwrite(nid_tra,"jH2O2",itau_w,zx_tmp_3d,
168     .                                   iim*(jjm+1)*klev,ndex3d)
169
170      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,hrates(1,1,1),
171     .     zx_tmp_3d)
172      CALL histwrite(nid_tra,"wHNO3",itau_w,zx_tmp_3d,
173     .                                   iim*(jjm+1)*klev,ndex3d)
174
175      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,krates(1,1,1),
176     .     zx_tmp_3d)
177      CALL histwrite(nid_tra,"kN2O5",itau_w,zx_tmp_3d,
178     .                                   iim*(jjm+1)*klev,ndex3d)
179      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,extflx(1,1,1),
180     .     zx_tmp_3d)
181      CALL histwrite(nid_tra,"LghtNO",itau_w,zx_tmp_3d,
182     .                                   iim*(jjm+1)*klev,ndex3d)
183#endif
184#endif
185!      DO it=1, grpcnt
186!
187!      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,nas(1,1,it),zx_tmp_3d)
188!      zx_tmp_3d = zx_tmp_3d * dry_mass / nadv_mass(it)
189!      CALL histwrite(nid_tra,grpsym(it),itau_w,zx_tmp_3d,
190!     .                                   iim*(jjm+1)*klev,ndex3d)
191!      ENDDO
192#endif
193
194#ifdef INCA_AER
195
196      it = id_CIDUSTM
197       CALL gr_fi_ecrit(klev,klon,iim,jjm+1,scavcoef_st(1,1,it),
198     .                  zx_tmp_3d)
199       CALL histwrite(nid_tra2,"scavcoef_st",itau_w,zx_tmp_3d,
200     .                  iim*(jjm+1)*klev,ndex3d)
201       CALL gr_fi_ecrit(klev,klon,iim,jjm+1,scavcoef_cv(1,1,it),
202     .                  zx_tmp_3d)
203       CALL histwrite(nid_tra2,"scavcoef_cv",itau_w,zx_tmp_3d,
204     .                  iim*(jjm+1)*klev,ndex3d)
205
206       CALL gr_fi_ecrit(1, klon,iim,jjm+1,angst(1),zx_tmp_2d)
207       CALL histwrite(nid_tra2,"AngstroemComp",itau_w,zx_tmp_2d,
208     .                     iim*(jjm+1),ndex2d)
209
210       CALL gr_fi_ecrit(klev,klon,iim,jjm+1,totaerh2o(1,1), zx_tmp_3d)
211       CALL histwrite(nid_tra2,"TOTAERH2O",itau_w,zx_tmp_3d, 
212     .                     iim*(jjm+1)*klev,ndex3d)
213
214#endif
215#endif
216
217      DO it=1,nqmax
218C champs 2D
219#ifdef INCA
220      IF ( prt_flag_ts(it) == 0 ) CYCLE
221      CALL gr_fi_ecrit(1, klon,iim,jjm+1, eflux(1,it),zx_tmp_2d)
222      CALL histwrite(nid_tra,"Emi_"//solsym(it),itau_w,zx_tmp_2d,
223     .     iim*(jjm+1),ndex2d)
224
225      CALL gr_fi_ecrit(1, klon,iim,jjm+1, dvel(1,it),zx_tmp_2d)
226      CALL histwrite(nid_tra,"Dep_"//solsym(it),itau_w,zx_tmp_2d,
227     .     iim*(jjm+1),ndex2d)
228#ifdef INCA_AER
229      call diag(airephy,tr_seri,.false.)
230
231      CALL gr_fi_ecrit(1, klon,iim,jjm+1,dflux(1,it),zx_tmp_2d)
232      CALL histwrite(nid_tra2,"Dry_"//solsym(it),itau_w,zx_tmp_2d,iim*(jjm+1),ndex2d)
233
234      IF  ((it .ge. trmx) .and. (it .le. trnx)) then
235        CALL gr_fi_ecrit(1, klon,iim,jjm+1,sflux(1,it),zx_tmp_2d)
236        CALL histwrite(nid_tra2,"Sed_"//solsym(it),itau_w,zx_tmp_2d,iim*(jjm+1),ndex2d)
237       
238        CALL gr_fi_ecrit(1, klon,iim,jjm+1,wflux(1,it),zx_tmp_2d)
239        CALL histwrite(nid_tra2,"Wet_"//solsym(it),itau_w,zx_tmp_2d,iim*(jjm+1),ndex2d)
240        CALL gr_fi_ecrit(1, klon,iim,jjm+1,wsflux(1,it),zx_tmp_2d)
241        CALL histwrite(nid_tra2,"WetST_"//solsym(it),itau_w,zx_tmp_2d,iim*(jjm+1),ndex2d)
242        CALL gr_fi_ecrit(1, klon,iim,jjm+1,wcflux(1,it),zx_tmp_2d)
243        CALL histwrite(nid_tra2,"WetCV_"//solsym(it),itau_w,zx_tmp_2d,iim*(jjm+1),ndex2d)
244       
245        CALL gr_fi_ecrit(klev, klon,iim,jjm+1,eflux_alt(1,1,it),zx_tmp_3d)
246        CALL histwrite(nid_tra2,"Emi_alt_"//solsym(it),itau_w,zx_tmp_3d,iim*(jjm+1)*klev,ndex3d)
247       
248        CALL gr_fi_ecrit(1, klon,iim,jjm+1,aload(1,it),zx_tmp_2d)
249        CALL histwrite(nid_tra2,"Load_"//solsym(it),itau_w,zx_tmp_2d,iim*(jjm+1),ndex2d)
250        CALL histwrite(nid_tra3,"Inst_Load_"//solsym(it),itau_w,zx_tmp_2d,iim*(jjm+1),ndex2d)
251
252        CALL gr_fi_ecrit(1, klon,iim,jjm+1,sconc(1,it),zx_tmp_2d)
253        CALL histwrite(nid_tra2,"SConc_"//solsym(it),itau_w,zx_tmp_2d,iim*(jjm+1),ndex2d)
254
255        do la=1,las
256          CALL gr_fi_ecrit(1, klon,iim,jjm+1,tausum(1,la,it),zx_tmp_2d)
257          CALL histwrite(nid_tra2,"OD"//cla(la)//"_"//solsym(it),itau_w,zx_tmp_2d,iim*(jjm+1),ndex2d)
258          CALL gr_fi_ecrit(klev, klon,iim,jjm+1,tau(1,1,la,it),zx_tmp_3d)
259          CALL histwrite(nid_tra2,"OD3D"//cla(la)//"_"//solsym(it),itau_w,zx_tmp_3d,iim*(jjm+1)*klev,ndex3d)
260        enddo
261
262        CALL gr_fi_ecrit(klev, klon,iim,jjm+1,md(1,1,it),zx_tmp_3d)
263        CALL histwrite(nid_tra2,"MD_"//solsym(it),itau_w,zx_tmp_3d,iim*(jjm+1)*klev,ndex3d)
264
265        CALL gr_fi_ecrit(klev, klon,iim,jjm+1,mdw(1,1,it),zx_tmp_3d)
266        CALL histwrite(nid_tra2,"MDW_"//solsym(it),itau_w,zx_tmp_3d,iim*(jjm+1)*klev,ndex3d)
267
268        CALL gr_fi_ecrit(klev, klon,iim,jjm+1,cload(1,1,it),zx_tmp_3d)
269        CALL histwrite(nid_tra2,"CLOAD_"//solsym(it),itau_w,zx_tmp_3d,iim*(jjm+1)*klev,ndex3d)
270
271
272      endif
273
274
275#endif
276C champs 3D
277       CALL gr_fi_ecrit(klev,klon,iim,jjm+1,tr_seri(1,1,it),zx_tmp_3d)
278
279       !Prefer vmr to mmr for transported species
280       if( adv_mass(it) /= 0. ) then
281#ifdef INCA_AER
282         if (it .lt. trmx) then
283#endif
284       zx_tmp_3d = zx_tmp_3d * dry_mass / adv_mass(it)
285#ifdef INCA_AER
286         endif
287#endif
288       else
289#ifdef INCA_CH4
290       if ( solsym(it) == 'OX' ) then
291       zx_tmp_3d = zx_tmp_3d * dry_mass / nadv_mass(id_o3)
292       end if
293#endif
294#ifdef INCA_NMHC
295       if ( solsym(it) == 'OX' ) then
296       zx_tmp_3d = zx_tmp_3d * dry_mass / nadv_mass(id_o3)
297       end if
298#endif
299       end if
300
301       CALL histwrite(nid_tra,solsym(it),itau_w,zx_tmp_3d,
302     .                                   iim*(jjm+1)*klev,ndex3d)
303#else
304
305       CALL gr_fi_ecrit(klev,klon,iim,jjm+1,tr_seri(1,1,it),zx_tmp_3d)
306       CALL histwrite(nid_tra,tnom(it+2),itau_w,zx_tmp_3d,
307     .                                   iim*(jjm+1)*klev,ndex3d)
308       if (lessivage) THEN
309       CALL gr_fi_ecrit(klev,klon,iim,jjm+1,flestottr(1,1,it),zx_tmp_3d)
310       CALL histwrite(nid_tra,"fl"//tnom(it+2),itau_w,zx_tmp_3d,
311     .                                   iim*(jjm+1)*klev,ndex3d)
312      endif
313     
314c----Olivia
315       CALL gr_fi_ecrit(klev,klon,iim,jjm+1,d_tr_th(1,1,it),zx_tmp_3d)
316       CALL histwrite(nid_tra,"d_tr_th_"//tnom(it+2),itau_w,zx_tmp_3d,
317     .                                   iim*(jjm+1)*klev,ndex3d)
318       CALL gr_fi_ecrit(klev,klon,iim,jjm+1,d_tr_cv(1,1,it),zx_tmp_3d)
319       CALL histwrite(nid_tra,"d_tr_cv_"//tnom(it+2),itau_w,zx_tmp_3d,
320     .                                   iim*(jjm+1)*klev,ndex3d)
321       CALL gr_fi_ecrit(klev,klon,iim,jjm+1,d_tr_cl(1,1,it),zx_tmp_3d)
322       CALL histwrite(nid_tra,"d_tr_cl_"//tnom(it+2),itau_w,zx_tmp_3d,
323     .                                   iim*(jjm+1)*klev,ndex3d)
324c---fin Olivia     
325     
326#endif
327      ENDDO
328
329#ifdef INCA
330      CALL gr_fi_ecrit(1, klon,iim,jjm+1, o3_col(1), zx_tmp_2d)
331      CALL histwrite(nid_tra,"O3_column",itau_w,zx_tmp_2d,
332     .     iim*(jjm+1),ndex2d)
333
334      CALL gr_fi_ecrit(1, klon,iim,jjm+1, co_col(1), zx_tmp_2d)
335      CALL histwrite(nid_tra,"CO_column",itau_w,zx_tmp_2d,
336     .     iim*(jjm+1),ndex2d)
337
338      CALL gr_fi_ecrit(1, klon,iim,jjm+1, ch4_col(1), zx_tmp_2d)
339      CALL histwrite(nid_tra,"CH4_column",itau_w,zx_tmp_2d,
340     .     iim*(jjm+1),ndex2d)
341
342      CALL gr_fi_ecrit(1, klon,iim,jjm+1, no2_col(1), zx_tmp_2d)
343      CALL histwrite(nid_tra,"NO2_column",itau_w,zx_tmp_2d,
344     .     iim*(jjm+1),ndex2d)
345
346      CALL gr_fi_ecrit(1, klon,iim,jjm+1, o3_st_flx(1), zx_tmp_2d)
347      CALL histwrite(nid_tra,"O3_ste",itau_w,zx_tmp_2d,
348     .     iim*(jjm+1),ndex2d)
349
350      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,o3_prod(1,1),
351     .     zx_tmp_3d)
352      CALL histwrite(nid_tra,"O3_prod",itau_w,zx_tmp_3d,
353     .                                   iim*(jjm+1)*klev,ndex3d)
354
355      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,o3_loss(1,1),
356     .     zx_tmp_3d)
357      CALL histwrite(nid_tra,"O3_loss",itau_w,zx_tmp_3d,
358     .                                   iim*(jjm+1)*klev,ndex3d)
359! Ajout Anne
360#ifdef INCA_AER
361! for sulfur cycle
362
363      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,SO2_p_dmsoh(1,1),
364     .     zx_tmp_3d)
365      CALL histwrite(nid_tra,"SO2_p_dmsoh",itau_w,zx_tmp_3d,
366     .                                   iim*(jjm+1)*klev,ndex)
367
368      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,SO2_p_dmsno3(1,1),
369     .     zx_tmp_3d)
370      CALL histwrite(nid_tra,"SO2_p_dmsno3",itau_w,zx_tmp_3d,
371     .                                   iim*(jjm+1)*klev,ndex)
372
373      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,SO2_p_h2soh(1,1),
374     .     zx_tmp_3d)
375      CALL histwrite(nid_tra,"SO2_p_h2soh",itau_w,zx_tmp_3d,
376     .                                   iim*(jjm+1)*klev,ndex)
377
378      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,SO2_p_dmsooh(1,1),
379     .     zx_tmp_3d)
380      CALL histwrite(nid_tra,"SO2_p_dmsooh",itau_w,zx_tmp_3d,
381     .                                   iim*(jjm+1)*klev,ndex)
382
383      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,DMSO_p_dmsoh(1,1),
384     .     zx_tmp_3d)
385      CALL histwrite(nid_tra,"DMSO_p_dmsoh",itau_w,zx_tmp_3d,
386     .                                   iim*(jjm+1)*klev,ndex)
387
388      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,ASMSAM_p_dmsooh(1,1),
389     .     zx_tmp_3d)
390      CALL histwrite(nid_tra,"ASMSAM_p_dmsooh",itau_w,zx_tmp_3d,
391     .                                   iim*(jjm+1)*klev,ndex)
392
393      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,ASSO4M_p_so2oh(1,1),
394     .     zx_tmp_3d)
395      CALL histwrite(nid_tra,"ASSO4M_p_so2oh",itau_w,zx_tmp_3d,
396     .                                   iim*(jjm+1)*klev,ndex)
397      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,ASSO4M_p_so2h2o2(1,1),
398     .     zx_tmp_3d)
399      CALL histwrite(nid_tra,"ASSO4M_p_so2h2o2",itau_w,zx_tmp_3d,
400     .                                   iim*(jjm+1)*klev,ndex)
401
402      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,ASSO4M_p_so2o3(1,1),
403     .     zx_tmp_3d)
404      CALL histwrite(nid_tra,"ASSO4M_p_so2o3",itau_w,zx_tmp_3d,
405     .                                   iim*(jjm+1)*klev,ndex)
406
407c closing the sulfur budget
408      CALL gr_fi_ecrit(klev,klon,iim,jjm+1, wet3d_so2(1,1), zx_tmp_3d)
409      CALL histwrite(nid_tra,"Wet3D_SO2",itau_w,zx_tmp_3d,
410     .     iim*(jjm+1)*klev,ndex)
411      CALL gr_fi_ecrit(klev,klon,iim,jjm+1, wet3d_dms(1,1), zx_tmp_3d)
412      CALL histwrite(nid_tra,"Wet3D_DMS",itau_w,zx_tmp_3d,
413     .     iim*(jjm+1)*klev,ndex)
414      CALL gr_fi_ecrit(klev,klon,iim,jjm+1, wet3d_hno3(1,1), zx_tmp_3d)
415      CALL histwrite(nid_tra,"Wet3D_HNO3",itau_w,zx_tmp_3d,
416     .     iim*(jjm+1)*klev,ndex)
417      CALL gr_fi_ecrit(klev,klon,iim,jjm+1, wet3d_h2o2(1,1), zx_tmp_3d)
418      CALL histwrite(nid_tra,"Wet3D_H2O2",itau_w,zx_tmp_3d,
419     .     iim*(jjm+1)*klev,ndex)
420
421
422      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,PH_HIST(1,1),
423     .     zx_tmp_3d)
424      CALL histwrite(nid_tra,"PH_HIST",itau_w,zx_tmp_3d,
425     .                                   iim*(jjm+1)*klev,ndex)
426#endif
427
428#ifdef INCA_CH4
429      DO it=1, grpcnt
430
431      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,nas(1,1,it),zx_tmp_3d)
432      zx_tmp_3d = zx_tmp_3d * dry_mass / nadv_mass(it)
433      CALL histwrite(nid_tra,grpsym(it),itau_w,zx_tmp_3d,
434     .                                   iim*(jjm+1)*klev,ndex3d)
435      ENDDO
436
437#endif
438
439
440#ifdef INCA_NMHC
441      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,CO2_basprod(1,1),
442     .     zx_tmp_3d)
443      CALL histwrite(nid_tra,"CO2_basprod",itau_w,zx_tmp_3d,
444     .                                   iim*(jjm+1)*klev,ndex)
445
446      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,CO2_nmhcprod(1,1),
447     .     zx_tmp_3d)
448      CALL histwrite(nid_tra,"CO2_nmhcprod",itau_w,zx_tmp_3d,
449     .                                   iim*(jjm+1)*klev,ndex)
450
451      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,CO2_radicalprod(1,1),
452     .     zx_tmp_3d)
453      CALL histwrite(nid_tra,"CO2_radicalprod",itau_w,zx_tmp_3d,
454     .                                   iim*(jjm+1)*klev,ndex)
455
456      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,hno3_prod(1,1),
457     .     zx_tmp_3d)
458      CALL histwrite(nid_tra,"HNO3_prod",itau_w,zx_tmp_3d,
459     .                                   iim*(jjm+1)*klev,ndex)
460
461      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,hno3_loss(1,1),
462     .     zx_tmp_3d)
463      CALL histwrite(nid_tra,"HNO3_loss",itau_w,zx_tmp_3d,
464     .                                   iim*(jjm+1)*klev,ndex)
465
466      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,co_prod(1,1),
467     .     zx_tmp_3d)
468      CALL histwrite(nid_tra,"CO_prod",itau_w,zx_tmp_3d,
469     .                                   iim*(jjm+1)*klev,ndex)
470
471      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,co_loss(1,1),
472     .     zx_tmp_3d)
473      CALL histwrite(nid_tra,"CO_loss",itau_w,zx_tmp_3d,
474     .                                   iim*(jjm+1)*klev,ndex)
475
476      DO it=1, grpcnt
477
478      CALL gr_fi_ecrit(klev,klon,iim,jjm+1,nas(1,1,it),zx_tmp_3d)
479      zx_tmp_3d = zx_tmp_3d * dry_mass / nadv_mass(it)
480      CALL histwrite(nid_tra,grpsym(it),itau_w,zx_tmp_3d,
481     .                                   iim*(jjm+1)*klev,ndex3d)
482      ENDDO
483
484
485#endif
486
487! Fin ajout Anne
488
489!     ... Special section for daytime averaging
490!       CALL gr_fi_ecrit(klev,klon,iim,jjm+1,day_cnt(1,1),
491!    .       zx_tmp_3d)
492!       CALL histwrite(nid_tra,"day_cnt",itau_w,zx_tmp_3d,
493!    .                                  iim*(jjm+1)*klev,ndex3d)
494!       CALL gr_fi_ecrit(klev,klon,iim,jjm+1,no_daytime(1,1),
495!    .       zx_tmp_3d)
496!       CALL histwrite(nid_tra,"NO_day",itau_w,zx_tmp_3d,
497!    .                                  iim*(jjm+1)*klev,ndex3d)
498
499!#endif
500#else
501
502C abder
503         CALL gr_fi_ecrit(1,klon,iim,jjm+1,yu1,zx_tmp_2d)
504         CALL histwrite(nid_tra,"pyu1",itau_w,zx_tmp_2d,
505     s                                  iim*(jjm+1),ndex2d)
506
507         CALL gr_fi_ecrit(1,klon,iim,jjm+1,yv1,zx_tmp_2d)
508         CALL histwrite(nid_tra,"pyv1",itau_w,zx_tmp_2d,
509     s                                  iim*(jjm+1),ndex2d)
510
511         CALL gr_fi_ecrit(1,klon,iim,jjm+1,pftsol1,zx_tmp_2d)
512         CALL histwrite(nid_tra,"ftsol1",itau_w,zx_tmp_2d,
513     s                                       iim*(jjm+1),ndex2d)
514
515         CALL gr_fi_ecrit(1,klon,iim,jjm+1,pftsol2,zx_tmp_2d)
516         CALL histwrite(nid_tra,"ftsol2",itau_w,zx_tmp_2d,
517     s                                       iim*(jjm+1),ndex2d)
518
519         CALL gr_fi_ecrit(1,klon,iim,jjm+1,pftsol3,zx_tmp_2d)
520         CALL histwrite(nid_tra,"ftsol3",itau_w,zx_tmp_2d,
521     s                                      iim*(jjm+1),ndex2d)
522
523         CALL gr_fi_ecrit(1,klon,iim,jjm+1,pftsol4,zx_tmp_2d)
524         CALL histwrite(nid_tra,"ftsol4",itau_w,zx_tmp_2d,
525     s                                      iim*(jjm+1),ndex2d)
526
527         CALL gr_fi_ecrit(1,klon,iim,jjm+1,ppsrf1,zx_tmp_2d)
528         CALL histwrite(nid_tra,"psrf1",itau_w,zx_tmp_2d,
529     s                                     iim*(jjm+1),ndex2d)
530
531         CALL gr_fi_ecrit(1,klon,iim,jjm+1,ppsrf2,zx_tmp_2d)
532         CALL histwrite(nid_tra,"psrf2",itau_w,zx_tmp_2d,
533     s                                     iim*(jjm+1),ndex2d)
534
535         CALL gr_fi_ecrit(1,klon,iim,jjm+1,ppsrf3,zx_tmp_2d)
536         CALL histwrite(nid_tra,"psrf3",itau_w,zx_tmp_2d,
537     s                                     iim*(jjm+1),ndex2d)
538
539         CALL gr_fi_ecrit(1,klon,iim,jjm+1,ppsrf4,zx_tmp_2d)
540         CALL histwrite(nid_tra,"psrf4",itau_w,zx_tmp_2d,
541     s                                     iim*(jjm+1),ndex2d)
542        CALL gr_fi_ecrit(klev,klon,iim,jjm+1,pplay,zx_tmp_3d)
543        CALL histwrite(nid_tra,"pplay",itau_w,zx_tmp_3d,
544     .                  iim*(jjm+1)*klev,ndex3d)
545
546        CALL gr_fi_ecrit(klev,klon,iim,jjm+1,t_seri,zx_tmp_3d)
547        CALL histwrite(nid_tra,"t",itau_w,zx_tmp_3d,
548     .                  iim*(jjm+1)*klev,ndex3d)
549        CALL gr_fi_ecrit(klev,klon,iim,jjm+1,pmfu,zx_tmp_3d)
550        CALL histwrite(nid_tra,"mfu",itau_w,zx_tmp_3d,
551     .                  iim*(jjm+1)*klev,ndex3d)
552        CALL gr_fi_ecrit(klev,klon,iim,jjm+1,pmfd,zx_tmp_3d)
553        CALL histwrite(nid_tra,"mfd",itau_w,zx_tmp_3d,
554     .                  iim*(jjm+1)*klev,ndex3d)
555        CALL gr_fi_ecrit(klev,klon,iim,jjm+1,pen_u,zx_tmp_3d)
556        CALL histwrite(nid_tra,"en_u",itau_w,zx_tmp_3d,
557     .                  iim*(jjm+1)*klev,ndex3d)
558        CALL gr_fi_ecrit(klev,klon,iim,jjm+1,pen_d,zx_tmp_3d)
559        CALL histwrite(nid_tra,"en_d",itau_w,zx_tmp_3d,
560     .                  iim*(jjm+1)*klev,ndex3d)
561        CALL gr_fi_ecrit(klev,klon,iim,jjm+1,pde_d,zx_tmp_3d)
562        CALL histwrite(nid_tra,"de_d",itau_w,zx_tmp_3d,
563     .                  iim*(jjm+1)*klev,ndex3d)
564        CALL gr_fi_ecrit(klev,klon,iim,jjm+1,pde_u,zx_tmp_3d)
565        CALL histwrite(nid_tra,"de_u",itau_w,zx_tmp_3d,
566     .                  iim*(jjm+1)*klev,ndex3d)
567        CALL gr_fi_ecrit(klev,klon,iim,jjm+1,coefh,zx_tmp_3d)
568        CALL histwrite(nid_tra,"coefh",itau_w,zx_tmp_3d,
569     .                  iim*(jjm+1)*klev,ndex3d)
570
571
572c abder
573#endif
574
575      if (ok_sync) then
576         call histsync(nid_tra)
577#ifdef INCA_AER
578         call histsync(nid_tra2)
579         call histsync(nid_tra3)
580#endif
581       endif
582
583
Note: See TracBrowser for help on using the repository browser.