source: trunk/libf/phyvenus/write_histmth.h @ 4

Last change on this file since 4 was 3, checked in by slebonnois, 15 years ago

Creation de repertoires:

  • chantiers : pour communiquer sur nos projets de modifs
  • documentation : pour stocker les docs

Ajout de:

  • libf/phytitan : physique de Titan
  • libf/chimtitan: chimie de Titan
  • libf/phyvenus : physique de Venus
File size: 10.7 KB
Line 
1!
2! $Header: /home/cvsroot/LMDZ4/libf/phylmd/write_histmth.h,v 1.2 2005/03/09 12:30:16 fairhead Exp $
3!
4      IF (ok_mensuel) THEN
5c
6      ndex2d = 0
7      ndex3d = 0
8      zx_tmp_2d = 0.
9      z4_tmp_2d = 0.
10      zx_tmp_3d = 0.
11      z4_tmp_3d = 0.
12      zx_tmp_fi2d=0.
13      zx_tmp_fi3d=0.
14
15         zsto = dtime
16         zout = dtime * ecrit_mth
17         itau_w = itau_phy + itap
18
19c
20c-------------------------------------------------------
21      IF(lev_histmth.GE.1) THEN
22c
23ccccccccccccc 2D fields, basics
24c
25      i = NINT(zout/zsto)
26      CALL gr_fi_ecrit(1,klon,iim,jjmp1,pphis,zx_tmp_2d)
27      z4_tmp_2d=zx_tmp_2d
28      CALL histwrite(nid_mth,"phis",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
29C
30      i = NINT(zout/zsto)
31      CALL gr_fi_ecrit(1,klon,iim,jjmp1,airephy,zx_tmp_2d)
32      z4_tmp_2d=zx_tmp_2d
33      CALL histwrite(nid_mth,"aire",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
34c
35      CALL gr_fi_ecrit(1, klon,iim,jjmp1, ftsol,zx_tmp_2d)
36      z4_tmp_2d=zx_tmp_2d
37      CALL histwrite(nid_mth,"tsol",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
38c
39      DO i = 1, klon
40         zx_tmp_fi2d(i) = paprs(i,1)
41      ENDDO
42      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
43      z4_tmp_2d=zx_tmp_2d
44      CALL histwrite(nid_mth,"psol",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
45c
46c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, ue,zx_tmp_2d)
47c     z4_tmp_2d=zx_tmp_2d
48c     CALL histwrite(nid_mth,"ue",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
49c
50c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, ve,zx_tmp_2d)
51c VENUS: regardee a l'envers!!!!!!!!!!!!!!!
52c     z4_tmp_2d=-1.*zx_tmp_2d
53c     CALL histwrite(nid_mth,"ve",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
54c
55      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragh,zx_tmp_2d)
56      z4_tmp_2d=zx_tmp_2d
57      CALL histwrite(nid_mth,"cdragh",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
58c
59      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragm,zx_tmp_2d)
60      z4_tmp_2d=zx_tmp_2d
61      CALL histwrite(nid_mth,"cdragm",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
62c
63      ENDIF !lev_histmth.GE.1
64c
65c-------------------------------------------------------
66      IF(lev_histmth.GE.2) THEN
67c
68ccccccccccccc 3D fields, basics
69c
70      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, t_seri, zx_tmp_3d)
71      z4_tmp_3d=zx_tmp_3d
72      CALL histwrite(nid_mth,"temp",itau_w,z4_tmp_3d,
73     .                                   iim*jjmp1*klev,ndex3d)
74c
75      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, pplay, zx_tmp_3d)
76      z4_tmp_3d=zx_tmp_3d
77      CALL histwrite(nid_mth,"pres",itau_w,z4_tmp_3d,
78     .                                   iim*jjmp1*klev,ndex3d)
79c
80      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zphi, zx_tmp_3d)
81      z4_tmp_3d=zx_tmp_3d
82      CALL histwrite(nid_mth,"geop",itau_w,z4_tmp_3d,
83     .                                   iim*jjmp1*klev,ndex3d)
84c
85      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, u_seri, zx_tmp_3d)
86      z4_tmp_3d=zx_tmp_3d
87      CALL histwrite(nid_mth,"vitu",itau_w,z4_tmp_3d,
88     .                                   iim*jjmp1*klev,ndex3d)
89c
90      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, v_seri, zx_tmp_3d)
91c VENUS: regardee a l'envers!!!!!!!!!!!!!!!
92      z4_tmp_3d=-1.*zx_tmp_3d
93      CALL histwrite(nid_mth,"vitv",itau_w,z4_tmp_3d,
94     .                                   iim*jjmp1*klev,ndex3d)
95c
96      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, omega, zx_tmp_3d)
97      z4_tmp_3d=zx_tmp_3d
98      CALL histwrite(nid_mth,"vitw",itau_w,z4_tmp_3d,
99     .                                   iim*jjmp1*klev,ndex3d)
100c
101c en (m/s)/s     
102      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_dyn, zx_tmp_3d)
103      z4_tmp_3d=zx_tmp_3d
104      CALL histwrite(nid_mth,"dudyn",itau_w,z4_tmp_3d,
105     .                                   iim*jjmp1*klev,ndex3d)
106c
107c en (m/s)/s     
108      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_vdf, zx_tmp_3d)
109      z4_tmp_3d=zx_tmp_3d
110      CALL histwrite(nid_mth,"duvdf",itau_w,z4_tmp_3d,
111     .                                   iim*jjmp1*klev,ndex3d)
112c
113c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, mang, zx_tmp_3d)
114c     z4_tmp_3d=zx_tmp_3d
115c     CALL histwrite(nid_mth,"mang",itau_w,z4_tmp_3d,
116c    .                                   iim*jjmp1*klev,ndex3d)
117c
118      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, ycoefh, zx_tmp_3d)
119      z4_tmp_3d=zx_tmp_3d
120      CALL histwrite(nid_mth,"Kz",itau_w,z4_tmp_3d,
121     .                                   iim*jjmp1*klev,ndex3d)
122c
123c plusieurs traceurs
124       IF (iflag_trac.eq.1) THEN
125         DO iq=1,nqmax
126          IF (iq.LE.99) THEN
127       CALL gr_fi_ecrit(klev,klon,iim,jjmp1, qx(1,1,iq), zx_tmp_3d)
128       z4_tmp_3d=zx_tmp_3d
129       WRITE(str2,'(i2.2)') iq
130       CALL histwrite(nid_mth,tnom(iq),itau_w,z4_tmp_3d,
131     .                                   iim*jjmp1*klev,ndex3d)
132          ELSE
133       PRINT*, "Trop de traceurs"
134       CALL abort
135          ENDIF
136         ENDDO
137       ENDIF
138c
139      CALL gr_fi_ecrit(1, klon,iim,jjmp1, topsw,zx_tmp_2d)
140      z4_tmp_2d=zx_tmp_2d
141      CALL histwrite(nid_mth,"tops",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
142c
143      ENDIF !lev_histmth.GE.2
144c
145c-------------------------------------------------------
146      IF(lev_histmth.GE.3) THEN
147c
148cccccccccccccccccc  Radiative transfer
149c
150c 2D
151c
152      CALL gr_fi_ecrit(1, klon,iim,jjmp1, toplw,zx_tmp_2d)
153      z4_tmp_2d=zx_tmp_2d
154      CALL histwrite(nid_mth,"topl",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
155c
156      CALL gr_fi_ecrit(1, klon,iim,jjmp1, solsw,zx_tmp_2d)
157      z4_tmp_2d=zx_tmp_2d
158      CALL histwrite(nid_mth,"sols",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
159c
160      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollw,zx_tmp_2d)
161      z4_tmp_2d=zx_tmp_2d
162      CALL histwrite(nid_mth,"soll",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
163c
164c 3D
165c
166      zx_tmp_fi3d(1:klon,1:klev)=swnet(1:klon,1:klev)
167      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
168      z4_tmp_3d=zx_tmp_3d
169      CALL histwrite(nid_mth,"SWnet",itau_w,z4_tmp_3d,
170     .                                   iim*jjmp1*klev,ndex3d)
171c
172      zx_tmp_fi3d(1:klon,1:klev)=lwnet(1:klon,1:klev)
173      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
174      z4_tmp_3d=zx_tmp_3d
175      CALL histwrite(nid_mth,"LWnet",itau_w,z4_tmp_3d,
176     .                                   iim*jjmp1*klev,ndex3d)
177c
178      zx_tmp_fi3d(1:klon,1:klev)=fluxt(1:klon,1:klev)
179      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
180      z4_tmp_3d=zx_tmp_3d
181      CALL histwrite(nid_mth,"fluxvdf",itau_w,z4_tmp_3d,
182     .                                   iim*jjmp1*klev,ndex3d)
183c
184      zx_tmp_fi3d(1:klon,1:klev)=flux_dyn(1:klon,1:klev)
185      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
186      z4_tmp_3d=zx_tmp_3d
187      CALL histwrite(nid_mth,"fluxdyn",itau_w,z4_tmp_3d,
188     .                                   iim*jjmp1*klev,ndex3d)
189c
190      zx_tmp_fi3d(1:klon,1:klev)=flux_ajs(1:klon,1:klev)
191      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
192      z4_tmp_3d=zx_tmp_3d
193      CALL histwrite(nid_mth,"fluxajs",itau_w,z4_tmp_3d,
194     .                                   iim*jjmp1*klev,ndex3d)
195c
196c     zx_tmp_fi3d(1:klon,1:klev)=flux_ec(1:klon,1:klev)
197c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
198c     z4_tmp_3d=zx_tmp_3d
199c     CALL histwrite(nid_mth,"fluxec",itau_w,z4_tmp_3d,
200c    .                                   iim*jjmp1*klev,ndex3d)
201c
202      ENDIF !lev_histmth.GE.3
203c
204c-------------------------------------------------------
205      IF(lev_histmth.GE.4) THEN
206c
207c en K/s     
208      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t_dyn, zx_tmp_3d)
209      z4_tmp_3d=zx_tmp_3d
210      CALL histwrite(nid_mth,"dtdyn",itau_w,z4_tmp_3d,
211     .                                   iim*jjmp1*klev,ndex3d)
212c
213c en K/s     
214c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t, zx_tmp_3d)
215c     z4_tmp_3d=zx_tmp_3d
216c     CALL histwrite(nid_mth,"dtphy",itau_w,z4_tmp_3d,
217c    .                                   iim*jjmp1*klev,ndex3d)
218c
219c en K/s     
220      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,d_t_vdf,zx_tmp_3d)
221      z4_tmp_3d=zx_tmp_3d
222      CALL histwrite(nid_mth,"dtvdf",itau_w,z4_tmp_3d,
223     .                                   iim*jjmp1*klev,ndex3d)
224c
225c en K/s     
226      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,d_t_ajs,zx_tmp_3d)
227      z4_tmp_3d=zx_tmp_3d
228      CALL histwrite(nid_mth,"dtajs",itau_w,z4_tmp_3d,
229     .                                   iim*jjmp1*klev,ndex3d)
230c
231c K/day ==> K/s
232      zx_tmp_fi3d(1:klon,1:klev)=heat(1:klon,1:klev)/RDAY
233      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
234      z4_tmp_3d=zx_tmp_3d
235      CALL histwrite(nid_mth,"dtswr",itau_w,z4_tmp_3d,
236     .                                   iim*jjmp1*klev,ndex3d)
237c
238c K/day ==> K/s     
239      zx_tmp_fi3d(1:klon,1:klev)=-1.*cool(1:klon,1:klev)/RDAY
240      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
241      z4_tmp_3d=zx_tmp_3d
242      CALL histwrite(nid_mth,"dtlwr",itau_w,z4_tmp_3d,
243     .                                   iim*jjmp1*klev,ndex3d)
244c en K/s     
245c     zx_tmp_fi3d(1:klon,1:klev)=d_t_ec(1:klon,1:klev)
246c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
247c     z4_tmp_3d=zx_tmp_3d
248c     CALL histwrite(nid_mth,"dtec",itau_w,z4_tmp_3d,
249c    .                                   iim*jjmp1*klev,ndex3d)
250c
251c en (m/s)/s     
252      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_ajs, zx_tmp_3d)
253      z4_tmp_3d=zx_tmp_3d
254      CALL histwrite(nid_mth,"duajs",itau_w,z4_tmp_3d,
255     .                                   iim*jjmp1*klev,ndex3d)
256c
257c en (m/s)/s     
258      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_oro, zx_tmp_3d)
259      z4_tmp_3d=zx_tmp_3d
260      CALL histwrite(nid_mth,"dugwo",itau_w,z4_tmp_3d,
261     .                                   iim*jjmp1*klev,ndex3d)
262c
263c en (m/s)/s     
264      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_hin, zx_tmp_3d)
265      z4_tmp_3d=zx_tmp_3d
266      CALL histwrite(nid_mth,"dugwno",itau_w,z4_tmp_3d,
267     .                                   iim*jjmp1*klev,ndex3d)
268c
269c en (m/s)/s     
270c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_v_vdf, zx_tmp_3d)
271c VENUS: regardee a l'envers!!!!!!!!!!!!!!!
272c     z4_tmp_3d=-1.*zx_tmp_3d
273c     CALL histwrite(nid_mth,"dvvdf",itau_w,z4_tmp_3d,
274c    .                                   iim*jjmp1*klev,ndex3d)
275c
276      ENDIF !lev_histmth.GE.4
277c
278c-------------------------------------------------------
279       IF(lev_histmth.GE.5) THEN
280c
281c
282c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, fluxu , zx_tmp_2d)
283c      z4_tmp_2d=zx_tmp_2d
284c      CALL histwrite(nid_mth,"taux_",itau_w,
285c    $      z4_tmp_2d,iim*jjmp1,ndex2d) 
286c     
287c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, fluxv , zx_tmp_2d)
288c      z4_tmp_2d=zx_tmp_2d
289c      CALL histwrite(nid_mth,"tauy_",itau_w,
290c    $      z4_tmp_2d,iim*jjmp1,ndex2d)
291c
292c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragm,zx_tmp_2d)
293c      z4_tmp_2d=zx_tmp_2d
294c     CALL histwrite(nid_mth,"cdrm",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
295c
296c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragh,zx_tmp_2d)
297c      z4_tmp_2d=zx_tmp_2d
298c     CALL histwrite(nid_mth,"cdrh",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
299c
300      ENDIF !lev_histmth.GE.5
301c-------------------------------------------------------
302c
303      if (ok_sync) then
304        call histsync(nid_mth)
305      endif
306      ENDIF
Note: See TracBrowser for help on using the repository browser.