source: LMDZ4/trunk/libf/phylmd/write_histins.h @ 648

Last change on this file since 648 was 644, checked in by Laurent Fairhead, 20 years ago

Synchronisation avec tous les diagnostiques de Ionela IM
Inclusion du slab ocean IM
LF

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 9.8 KB
Line 
1!
2! $Header$
3!
4      IF (ok_instan) THEN
5c
6      ndex2d = 0
7      ndex3d = 0
8c
9c Champs 2D:
10c
11         zsto = dtime * ecrit_ins
12         zout = dtime * ecrit_ins
13         itau_w = itau_phy + itap
14
15         i = NINT(zout/zsto)
16      CALL gr_fi_ecrit(1,klon,iim,jjmp1,pphis,zx_tmp_2d)
17      CALL histwrite(nid_ins,"phis",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
18c
19         i = NINT(zout/zsto)
20      CALL gr_fi_ecrit(1,klon,iim,jjmp1,airephy,zx_tmp_2d)
21      CALL histwrite(nid_ins,"aire",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
22
23      DO i = 1, klon
24         zx_tmp_fi2d(i) = paprs(i,1)
25      ENDDO
26      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
27      CALL histwrite(nid_ins,"psol",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
28c
29      DO i = 1, klon
30         zx_tmp_fi2d(i) = rain_fall(i) + snow_fall(i)
31      ENDDO
32      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
33      CALL histwrite(nid_ins,"precip",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
34c
35      DO i = 1, klon
36         zx_tmp_fi2d(i) = rain_lsc(i) + snow_lsc(i)
37      ENDDO
38      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
39      CALL histwrite(nid_ins,"plul",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
40c
41      DO i = 1, klon
42         zx_tmp_fi2d(i) = rain_con(i) + snow_con(i)
43      ENDDO
44      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
45      CALL histwrite(nid_ins,"pluc",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
46
47      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxtsol,zx_tmp_2d)
48      CALL histwrite(nid_ins,"tsol",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
49cccIM
50      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zt2m, zx_tmp_2d)
51      CALL histwrite(nid_ins,"t2m",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
52c
53      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zq2m, zx_tmp_2d)
54      CALL histwrite(nid_ins,"q2m",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
55c
56      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zu10m, zx_tmp_2d)
57      CALL histwrite(nid_ins,"u10m",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
58C
59      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zv10m, zx_tmp_2d)
60      CALL histwrite(nid_ins,"v10m",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
61c
62      CALL gr_fi_ecrit(1, klon,iim,jjmp1, snow_fall,zx_tmp_2d)
63      CALL histwrite(nid_ins,"snow",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
64
65      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragm,zx_tmp_2d)
66      CALL histwrite(nid_ins,"cdrm",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
67c
68      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragh,zx_tmp_2d)
69      CALL histwrite(nid_ins,"cdrh",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
70c
71      CALL gr_fi_ecrit(1, klon,iim,jjmp1, toplw,zx_tmp_2d)
72      CALL histwrite(nid_ins,"topl",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
73c
74      CALL gr_fi_ecrit(1, klon,iim,jjmp1, evap,zx_tmp_2d)
75      CALL histwrite(nid_ins,"evap",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
76c
77      CALL gr_fi_ecrit(1, klon,iim,jjmp1, solsw,zx_tmp_2d)
78      CALL histwrite(nid_ins,"sols",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
79c
80      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollw,zx_tmp_2d)
81      CALL histwrite(nid_ins,"soll",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
82c
83      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollwdown,zx_tmp_2d)
84      CALL histwrite(nid_ins,"solldown",itau_w,zx_tmp_2d,iim*jjmp1,
85     .                ndex2d)
86c
87      CALL gr_fi_ecrit(1, klon,iim,jjmp1, bils,zx_tmp_2d)
88      CALL histwrite(nid_ins,"bils",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
89c
90      zx_tmp_fi2d(1:klon)=-1*sens(1:klon)
91c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, sens,zx_tmp_2d)
92      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
93      CALL histwrite(nid_ins,"sens",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
94c
95      CALL gr_fi_ecrit(1, klon,iim,jjmp1, fder,zx_tmp_2d)
96      CALL histwrite(nid_ins,"fder",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
97c
98      CALL gr_fi_ecrit(1, klon,iim,jjmp1, d_ts(1,is_oce),zx_tmp_2d)
99      CALL histwrite(nid_ins,"dtsvdfo",itau_w,zx_tmp_2d,iim*jjmp1,
100     .               ndex2d)
101c
102      CALL gr_fi_ecrit(1, klon,iim,jjmp1, d_ts(1,is_ter),zx_tmp_2d)
103      CALL histwrite(nid_ins,"dtsvdft",itau_w,zx_tmp_2d,iim*jjmp1,
104     .               ndex2d)
105c
106      CALL gr_fi_ecrit(1, klon,iim,jjmp1, d_ts(1,is_lic),zx_tmp_2d)
107      CALL histwrite(nid_ins,"dtsvdfg",itau_w,zx_tmp_2d,iim*jjmp1,
108     .               ndex2d)
109c
110      CALL gr_fi_ecrit(1, klon,iim,jjmp1, d_ts(1,is_sic),zx_tmp_2d)
111      CALL histwrite(nid_ins,"dtsvdfi",itau_w,zx_tmp_2d,iim*jjmp1,
112     .               ndex2d)
113
114      DO nsrf = 1, nbsrf
115CXXX
116        zx_tmp_fi2d(1 : klon) = pctsrf( 1 : klon, nsrf)*100.
117        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
118        CALL histwrite(nid_ins,"pourc_"//clnsurf(nsrf),itau_w,
119     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
120C
121        zx_tmp_fi2d(1 : klon) = pctsrf( 1 : klon, nsrf)
122        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
123        CALL histwrite(nid_ins,"fract_"//clnsurf(nsrf),itau_w,
124     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
125C
126        zx_tmp_fi2d(1 : klon) = fluxt( 1 : klon, 1, nsrf)
127        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
128        CALL histwrite(nid_ins,"sens_"//clnsurf(nsrf),itau_w,
129     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
130C
131        zx_tmp_fi2d(1 : klon) = fluxlat( 1 : klon, nsrf)
132        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
133        CALL histwrite(nid_ins,"lat_"//clnsurf(nsrf),itau_w,
134     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
135C
136        zx_tmp_fi2d(1 : klon) = ftsol( 1 : klon, nsrf)
137        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
138        CALL histwrite(nid_ins,"tsol_"//clnsurf(nsrf),itau_w,
139     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
140C
141        zx_tmp_fi2d(1 : klon) = fluxu( 1 : klon, 1, nsrf)
142        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
143        CALL histwrite(nid_ins,"taux_"//clnsurf(nsrf),itau_w,
144     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
145C     
146        zx_tmp_fi2d(1 : klon) = fluxv( 1 : klon, 1, nsrf)
147        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
148        CALL histwrite(nid_ins,"tauy_"//clnsurf(nsrf),itau_w,
149     $      zx_tmp_2d,iim*jjmp1,ndex2d)
150C
151        zx_tmp_fi2d(1 : klon) = frugs( 1 : klon, nsrf)
152        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
153        CALL histwrite(nid_ins,"rugs_"//clnsurf(nsrf),itau_w,
154     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
155C
156        zx_tmp_fi2d(1 : klon) = falbe( 1 : klon, nsrf)
157        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
158        CALL histwrite(nid_ins,"albe_"//clnsurf(nsrf),itau_w,
159     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
160C
161      END DO 
162      CALL gr_fi_ecrit(1, klon,iim,jjmp1, albsol,zx_tmp_2d)
163      CALL histwrite(nid_ins,"albs",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
164      CALL gr_fi_ecrit(1, klon,iim,jjmp1, albsollw,zx_tmp_2d)
165      CALL histwrite(nid_ins,"albslw",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
166c
167cIM: 140404   CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxsnow,zx_tmp_2d)
168c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, zsnow_mass,zx_tmp_2d)
169c     CALL histwrite(nid_ins,"snow_mass",itau_w,zx_tmp_2d,iim*jjmp1,
170c    .               ndex2d)
171c
172      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxrugs,zx_tmp_2d)
173      CALL histwrite(nid_ins,"rugs",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
174c
175cIM cf. AM 081204 BEG
176c
177cHBTM2
178c
179c
180      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_pblh,zx_tmp_2d)
181      CALL histwrite(nid_ins,"s_pblh",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
182c
183      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_pblt,zx_tmp_2d)
184      CALL histwrite(nid_ins,"s_pblt",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
185c
186      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_lcl,zx_tmp_2d)
187      CALL histwrite(nid_ins,"s_lcl",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
188c
189      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_capCL,zx_tmp_2d)
190      CALL histwrite(nid_ins,"s_capCL",itau_w,zx_tmp_2d,iim*jjmp1,
191     .               ndex2d)
192c
193      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_oliqCL,zx_tmp_2d)
194      CALL histwrite(nid_ins,"s_oliqCL",itau_w,zx_tmp_2d,iim*jjmp1,
195     .               ndex2d)
196c
197      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_cteiCL,zx_tmp_2d)
198      CALL histwrite(nid_ins,"s_cteiCL",itau_w,zx_tmp_2d,iim*jjmp1,
199     .               ndex2d)
200c
201      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_therm,zx_tmp_2d)
202      CALL histwrite(nid_ins,"s_therm",itau_w,zx_tmp_2d,iim*jjmp1,
203     .               ndex2d)
204c
205      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_trmb1,zx_tmp_2d)
206      CALL histwrite(nid_ins,"s_trmb1",itau_w,zx_tmp_2d,iim*jjmp1,
207     .               ndex2d)
208c
209      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_trmb2,zx_tmp_2d)
210      CALL histwrite(nid_ins,"s_trmb2",itau_w,zx_tmp_2d,iim*jjmp1,
211     .               ndex2d)
212c
213      CALL gr_fi_ecrit(1, klon,iim,jjmp1, s_trmb3,zx_tmp_2d)
214      CALL histwrite(nid_ins,"s_trmb3",itau_w,zx_tmp_2d,iim*jjmp1,
215     .               ndex2d)
216c
217cIM cf. AM 081204 END
218c
219c Champs 3D:
220c
221      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, t_seri, zx_tmp_3d)
222      CALL histwrite(nid_ins,"temp",itau_w,zx_tmp_3d,
223     .                                   iim*jjmp1*klev,ndex3d)
224c
225      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, u_seri, zx_tmp_3d)
226      CALL histwrite(nid_ins,"vitu",itau_w,zx_tmp_3d,
227     .                                   iim*jjmp1*klev,ndex3d)
228c
229      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, v_seri, zx_tmp_3d)
230      CALL histwrite(nid_ins,"vitv",itau_w,zx_tmp_3d,
231     .                                   iim*jjmp1*klev,ndex3d)
232c
233      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zphi, zx_tmp_3d)
234      CALL histwrite(nid_ins,"geop",itau_w,zx_tmp_3d,
235     .                                   iim*jjmp1*klev,ndex3d)
236c
237      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, pplay, zx_tmp_3d)
238      CALL histwrite(nid_ins,"pres",itau_w,zx_tmp_3d,
239     .                                   iim*jjmp1*klev,ndex3d)
240c
241      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t_vdf, zx_tmp_3d)
242      CALL histwrite(nid_ins,"dtvdf",itau_w,zx_tmp_3d,
243     .                                   iim*jjmp1*klev,ndex3d)
244c
245      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_q_vdf, zx_tmp_3d)
246      CALL histwrite(nid_ins,"dqvdf",itau_w,zx_tmp_3d,
247     .                                   iim*jjmp1*klev,ndex3d)
248
249c
250      if (ok_sync) then
251        call histsync(nid_ins)
252      endif
253      ENDIF
Note: See TracBrowser for help on using the repository browser.