source: trunk/libf/phytitan/write_histins.h @ 102

Last change on this file since 102 was 97, checked in by slebonnois, 14 years ago

Serie de modifs SL pour homogeneisation des phytitan et phyvenus
Ca touche aussi aux liens phy/dyn (surtout a propos de clesphy0),
a verifier avec les autres, donc...

File size: 7.7 KB
Line 
1!
2! $Header: /home/cvsroot/LMDZ4/libf/phylmd/write_histins.h,v 1.1.1.1 2004/05/19 12:53:09 lmdzadmin Exp $
3!
4      IF (ok_instan) THEN
5c
6      ndex2d = 0
7      ndex3d = 0
8      zx_tmp_2d = 0.
9      zx_tmp_3d = 0.
10      zx_tmp_fi2d=0.
11      zx_tmp_fi3d=0.
12c
13          zsto = dtime * FLOAT(ecrit_ins)
14          zout = dtime * FLOAT(ecrit_ins)
15         itau_w = itau_phy + itap
16
17c
18c-------------------------------------------------------
19      IF(lev_histday.GE.1) THEN
20c
21ccccccccccccc 2D fields, invariables
22c
23      CALL gr_fi_ecrit(1,klon,iim,jjmp1,pphis,zx_tmp_2d)
24      CALL histwrite(nid_ins,"phis",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
25C
26      CALL gr_fi_ecrit(1,klon,iim,jjmp1,airephy,zx_tmp_2d)
27      CALL histwrite(nid_ins,"aire",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
28c
29ccccccc axe Ls
30      do j=1,jjmp1
31       do i=1,iim
32        zx_tmp_2d(i,j)=zls*180./RPI      ! zls est en radians !!
33       enddo
34      enddo
35      CALL histwrite(nid_ins,"ls",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
36c
37ccccccccccccc 2D fields, variables
38c
39      CALL gr_fi_ecrit(1, klon,iim,jjmp1, ftsol,zx_tmp_2d)
40      CALL histwrite(nid_ins,"tsol",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
41c
42      DO i = 1, klon
43         zx_tmp_fi2d(i) = paprs(i,1)
44      ENDDO
45      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
46      CALL histwrite(nid_ins,"psol",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
47c
48c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, ue,zx_tmp_2d)
49c     CALL histwrite(nid_ins,"ue",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
50c
51c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, ve,zx_tmp_2d)
52c     CALL histwrite(nid_ins,"ve",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
53c
54      ENDIF !lev_histday.GE.1
55c
56c-------------------------------------------------------
57      IF(lev_histday.GE.2) THEN
58c
59ccccccccccccc 3D fields, basics
60c
61      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, t_seri, zx_tmp_3d)
62      CALL histwrite(nid_ins,"temp",itau_w,zx_tmp_3d,
63     .                                   iim*jjmp1*klev,ndex3d)
64c
65      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, pplay, zx_tmp_3d)
66      CALL histwrite(nid_ins,"pres",itau_w,zx_tmp_3d,
67     .                                   iim*jjmp1*klev,ndex3d)
68c
69      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zphi, zx_tmp_3d)
70      CALL histwrite(nid_ins,"geop",itau_w,zx_tmp_3d,
71     .                                   iim*jjmp1*klev,ndex3d)
72c
73      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, u_seri, zx_tmp_3d)
74      CALL histwrite(nid_ins,"vitu",itau_w,zx_tmp_3d,
75     .                                   iim*jjmp1*klev,ndex3d)
76c
77      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, v_seri, zx_tmp_3d)
78      CALL histwrite(nid_ins,"vitv",itau_w,zx_tmp_3d,
79     .                                   iim*jjmp1*klev,ndex3d)
80c
81      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, omega, zx_tmp_3d)
82      CALL histwrite(nid_ins,"vitw",itau_w,zx_tmp_3d,
83     .                                   iim*jjmp1*klev,ndex3d)
84c
85      CALL gr_fi_ecrit(1, klon,iim,jjmp1, topsw,zx_tmp_2d)
86      CALL histwrite(nid_ins,"tops",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
87c
88      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_vdf, zx_tmp_3d)
89      CALL histwrite(nid_ins,"duvdf",itau_w,zx_tmp_3d,
90     .                                   iim*jjmp1*klev,ndex3d)
91c
92      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_dyn, zx_tmp_3d)
93      CALL histwrite(nid_ins,"dudyn",itau_w,zx_tmp_3d,
94     .                                   iim*jjmp1*klev,ndex3d)
95c
96      ENDIF !lev_histday.GE.2
97c
98c-------------------------------------------------------
99      IF(lev_histday.GE.3) THEN
100c
101cccccccccccccccccc  Tracers
102c
103         if (iflag_trac.eq.1) THEN
104          if (microfi.eq.1) then
105           DO iq=1,nmicro
106       CALL gr_fi_ecrit(klev,klon,iim,jjmp1, qaer(1,1,iq), zx_tmp_3d)
107       CALL histwrite(nid_ins,tname(iq),itau_w,zx_tmp_3d,
108     .                                   iim*jjmp1*klev,ndex3d)
109           ENDDO
110          endif
111          if (nmicro.lt.nqmax) then
112           DO iq=nmicro+1,nqmax
113       CALL gr_fi_ecrit(klev,klon,iim,jjmp1,tr_seri(1,1,iq),zx_tmp_3d)
114       CALL histwrite(nid_ins,tname(iq),itau_w,zx_tmp_3d,
115     .                                   iim*jjmp1*klev,ndex3d)
116           ENDDO
117          endif
118         endif
119c
120cccccccccccccccccc  Radiative transfer
121c
122c 2D
123c
124      CALL gr_fi_ecrit(1, klon,iim,jjmp1, toplw,zx_tmp_2d)
125      CALL histwrite(nid_ins,"topl",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
126c
127      CALL gr_fi_ecrit(1, klon,iim,jjmp1, solsw,zx_tmp_2d)
128      CALL histwrite(nid_ins,"sols",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
129c
130      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollw,zx_tmp_2d)
131      CALL histwrite(nid_ins,"soll",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
132c
133c 3D
134c
135      zx_tmp_fi3d(1:klon,1:klev)=swnet(1:klon,1:klev)
136      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
137      CALL histwrite(nid_ins,"SWnet",itau_w,zx_tmp_3d,
138     .                                   iim*jjmp1*klev,ndex3d)
139c
140      zx_tmp_fi3d(1:klon,1:klev)=lwnet(1:klon,1:klev)
141      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
142      CALL histwrite(nid_ins,"LWnet",itau_w,zx_tmp_3d,
143     .                                   iim*jjmp1*klev,ndex3d)
144c
145      ENDIF !lev_histday.GE.3
146c
147c-------------------------------------------------------
148      IF(lev_histday.GE.4) THEN
149c
150      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t_dyn, zx_tmp_3d)
151      CALL histwrite(nid_ins,"dtdyn",itau_w,zx_tmp_3d,
152     .                                   iim*jjmp1*klev,ndex3d)
153c
154      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t, zx_tmp_3d)
155      CALL histwrite(nid_ins,"dtphy",itau_w,zx_tmp_3d,
156     .                                   iim*jjmp1*klev,ndex3d)
157c K/s
158      zx_tmp_fi3d(1:klon,1:klev)=d_t_vdf(1:klon,1:klev)
159      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
160      CALL histwrite(nid_ins,"dtvdf",itau_w,zx_tmp_3d,
161     .                                   iim*jjmp1*klev,ndex3d)
162c
163c K/s
164      zx_tmp_fi3d(1:klon,1:klev)=d_t_ajs(1:klon,1:klev)
165      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
166      CALL histwrite(nid_ins,"dtajs",itau_w,zx_tmp_3d,
167     .                                   iim*jjmp1*klev,ndex3d)
168c
169c K/s
170      zx_tmp_fi3d(1:klon,1:klev)=heat(1:klon,1:klev)
171      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
172      CALL histwrite(nid_ins,"dtswr",itau_w,zx_tmp_3d,
173     .                                   iim*jjmp1*klev,ndex3d)
174c
175c K/s     
176      zx_tmp_fi3d(1:klon,1:klev)=-1.*cool(1:klon,1:klev)
177      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
178      CALL histwrite(nid_ins,"dtlwr",itau_w,zx_tmp_3d,
179     .                                   iim*jjmp1*klev,ndex3d)
180c K/s     
181      zx_tmp_fi3d(1:klon,1:klev)=d_t_ec(1:klon,1:klev)
182      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
183      CALL histwrite(nid_ins,"dtec",itau_w,zx_tmp_3d,
184     .                                   iim*jjmp1*klev,ndex3d)
185c
186c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_v_vdf, zx_tmp_3d)
187c     CALL histwrite(nid_ins,"dvvdf",itau_w,zx_tmp_3d,
188c    .                                   iim*jjmp1*klev,ndex3d)
189c
190      ENDIF !lev_histday.GE.4
191c
192c-------------------------------------------------------
193      IF(lev_histday.GE.5) THEN
194c
195c
196c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, fluxu , zx_tmp_2d)
197c      CALL histwrite(nid_ins,"taux_",itau_w,
198c    $      zx_tmp_2d,iim*jjmp1,ndex2d) 
199c     
200c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, fluxv , zx_tmp_2d)
201c      CALL histwrite(nid_ins,"tauy_",itau_w,
202c    $      zx_tmp_2d,iim*jjmp1,ndex2d)
203c
204c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragm,zx_tmp_2d)
205c     CALL histwrite(nid_ins,"cdrm",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
206c
207c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragh,zx_tmp_2d)
208c     CALL histwrite(nid_ins,"cdrh",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
209c
210      ENDIF !lev_histday.GE.5
211c-------------------------------------------------------
212c
213      if (ok_sync) then
214        call histsync(nid_ins)
215      endif
216      ENDIF
Note: See TracBrowser for help on using the repository browser.