source: LMDZ4/branches/IPSL-CM4_IPCC_patches/libf/phylmd/write_histins.h @ 5071

Last change on this file since 5071 was 524, checked in by lmdzadmin, 21 years ago

Initial revision

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 8.0 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)
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) = fluxt( 1 : klon, 1, nsrf)
122        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
123        CALL histwrite(nid_ins,"sens_"//clnsurf(nsrf),itau_w,
124     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
125C
126        zx_tmp_fi2d(1 : klon) = fluxlat( 1 : klon, nsrf)
127        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
128        CALL histwrite(nid_ins,"lat_"//clnsurf(nsrf),itau_w,
129     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
130C
131        zx_tmp_fi2d(1 : klon) = ftsol( 1 : klon, nsrf)
132        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
133        CALL histwrite(nid_ins,"tsol_"//clnsurf(nsrf),itau_w,
134     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
135C
136        zx_tmp_fi2d(1 : klon) = fluxu( 1 : klon, 1, nsrf)
137        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
138        CALL histwrite(nid_ins,"taux_"//clnsurf(nsrf),itau_w,
139     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
140C     
141        zx_tmp_fi2d(1 : klon) = fluxv( 1 : klon, 1, nsrf)
142        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
143        CALL histwrite(nid_ins,"tauy_"//clnsurf(nsrf),itau_w,
144     $      zx_tmp_2d,iim*jjmp1,ndex2d)
145C
146        zx_tmp_fi2d(1 : klon) = frugs( 1 : klon, nsrf)
147        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
148        CALL histwrite(nid_ins,"rugs_"//clnsurf(nsrf),itau_w,
149     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
150C
151        zx_tmp_fi2d(1 : klon) = falbe( 1 : klon, nsrf)
152        CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d , zx_tmp_2d)
153        CALL histwrite(nid_ins,"albe_"//clnsurf(nsrf),itau_w,
154     $      zx_tmp_2d,iim*jjmp1,ndex2d) 
155C
156      END DO 
157      CALL gr_fi_ecrit(1, klon,iim,jjmp1, albsol,zx_tmp_2d)
158      CALL histwrite(nid_ins,"albs",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
159      CALL gr_fi_ecrit(1, klon,iim,jjmp1, albsollw,zx_tmp_2d)
160      CALL histwrite(nid_ins,"albslw",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
161c
162      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxsnow,zx_tmp_2d)
163      CALL histwrite(nid_ins,"snow_mass",itau_w,zx_tmp_2d,iim*jjmp1,
164     .               ndex2d)
165c
166      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zxrugs,zx_tmp_2d)
167      CALL histwrite(nid_ins,"rugs",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
168c
169c Champs 3D:
170c
171      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, t_seri, zx_tmp_3d)
172      CALL histwrite(nid_ins,"temp",itau_w,zx_tmp_3d,
173     .                                   iim*jjmp1*klev,ndex3d)
174c
175      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, u_seri, zx_tmp_3d)
176      CALL histwrite(nid_ins,"vitu",itau_w,zx_tmp_3d,
177     .                                   iim*jjmp1*klev,ndex3d)
178c
179      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, v_seri, zx_tmp_3d)
180      CALL histwrite(nid_ins,"vitv",itau_w,zx_tmp_3d,
181     .                                   iim*jjmp1*klev,ndex3d)
182c
183      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zphi, zx_tmp_3d)
184      CALL histwrite(nid_ins,"geop",itau_w,zx_tmp_3d,
185     .                                   iim*jjmp1*klev,ndex3d)
186c
187      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, pplay, zx_tmp_3d)
188      CALL histwrite(nid_ins,"pres",itau_w,zx_tmp_3d,
189     .                                   iim*jjmp1*klev,ndex3d)
190c
191      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t_vdf, zx_tmp_3d)
192      CALL histwrite(nid_ins,"dtvdf",itau_w,zx_tmp_3d,
193     .                                   iim*jjmp1*klev,ndex3d)
194c
195      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_q_vdf, zx_tmp_3d)
196      CALL histwrite(nid_ins,"dqvdf",itau_w,zx_tmp_3d,
197     .                                   iim*jjmp1*klev,ndex3d)
198
199c
200      if (ok_sync) then
201        call histsync(nid_ins)
202      endif
203      ENDIF
Note: See TracBrowser for help on using the repository browser.