/[lmdze]/trunk/Sources/phylmd/ini_histins.f
ViewVC logotype

Contents of /trunk/Sources/phylmd/ini_histins.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 206 - (show annotations)
Tue Aug 30 12:52:46 2016 UTC (7 years, 9 months ago) by guez
File size: 12535 byte(s)
Removed dimension klev of flux_[tquv] and y_flux_[tquv] in
clmain. Removed dimension klev of flux_[tquv] in physiq. Removed
dimension klev of flux_[tq] in hbtm. Removed dimension klev of
flux_[tq] in clqh and computations for layers other than the surface
layer. Removed dimension klev of flux_v in clvent and computations for
layers other than the surface layer. Values for layers other than the
surface layer were not used nor output (not even in LMDZ).

Removed argument dnwd0 of concvl. Simply write - mp in physiq
(following LMDZ).

Removed useless intermediary variables zxflux[tquv] in physiq.

1 module ini_histins_m
2
3 implicit none
4
5 integer, save:: nid_ins
6
7 contains
8
9 subroutine ini_histins(dtime)
10
11 ! From phylmd/ini_histins.h, v 1.2 2005/05/25 13:10:09
12
13 use clesphys, only: ecrit_ins, ok_instan
14 use clesphys2, only: conv_emanuel
15 use dimens_m, only: iim, jjm, llm, nqmx
16 use dimphy, only: klon
17 use disvert_m, only: presnivs
18 use dynetat0_m, only: day_ref, annee_ref, rlatu, rlonv
19 USE histbeg_totreg_m, ONLY : histbeg_totreg
20 USE histdef_m, ONLY : histdef
21 USE histend_m, ONLY : histend
22 USE histvert_m, ONLY : histvert
23 use indicesol, only: nbsrf, clnsurf
24 use iniadvtrac_m, only: tname, ttext
25 use nr_util, only: pi
26 use phyetat0_m, only: itau_phy
27 USE ymds2ju_m, only: ymds2ju
28
29 REAL, intent(in):: dtime ! pas temporel de la physique (s)
30
31 ! Local:
32 real zjulian, zsto, zout
33 integer nhori, nvert, nsrf, iq, it
34
35 !-------------------------------------------------------------------
36
37 IF (ok_instan) THEN
38 zsto = dtime * ecrit_ins
39 zout = dtime * ecrit_ins
40 CALL ymds2ju(annee_ref, 1, day_ref, 0.0, zjulian)
41 CALL histbeg_totreg("histins", rlonv(:iim) / pi * 180., &
42 rlatu / pi * 180., 1, iim, &
43 1, jjm + 1, itau_phy, zjulian, dtime, nhori, nid_ins)
44 write(*, *)'Inst ', itau_phy, zjulian
45 CALL histvert(nid_ins, "presnivs", "Vertical levels", "mb", &
46 presnivs/100., nvert)
47 CALL histdef(nid_ins, "phis", "Surface geop. height", "-", &
48 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
49 "once", zsto, zout)
50 CALL histdef(nid_ins, "aire", "Grid area", "-", &
51 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
52 "once", zsto, zout)
53
54 ! Champs 2D:
55
56 CALL histdef(nid_ins, "tsol", "Surface Temperature", "K", &
57 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
58 "inst(X)", zsto, zout)
59
60 CALL histdef(nid_ins, "t2m", "Temperature 2m", "K", &
61 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
62 "inst(X)", zsto, zout)
63
64 CALL histdef(nid_ins, "q2m", "Specific humidity 2m", "Kg/Kg", &
65 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
66 "inst(X)", zsto, zout)
67
68 CALL histdef(nid_ins, "u10m", "Vent zonal 10m", "m/s", &
69 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
70 "inst(X)", zsto, zout)
71
72 CALL histdef(nid_ins, "v10m", "Vent meridien 10m", "m/s", &
73 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
74 "inst(X)", zsto, zout)
75
76 CALL histdef(nid_ins, "psol", "Surface Pressure", "Pa", &
77 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
78 "inst(X)", zsto, zout)
79
80 CALL histdef(nid_ins, "plul", "Large-scale Precip.", "mm/day", &
81 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
82 "inst(X)", zsto, zout)
83
84 CALL histdef(nid_ins, "pluc", "Convective Precip.", "mm/day", &
85 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
86 "inst(X)", zsto, zout)
87
88 CALL histdef(nid_ins, "cdrm", "Momentum drag coef.", "-", &
89 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
90 "inst(X)", zsto, zout)
91
92 CALL histdef(nid_ins, "cdrh", "Heat drag coef.", "-", &
93 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
94 "inst(X)", zsto, zout)
95
96 CALL histdef(nid_ins, "precip", "Precipitation Totale liq+sol", &
97 "kg/(s*m2)", &
98 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
99 "inst(X)", zsto, zout)
100
101 CALL histdef(nid_ins, "snow", "Snow fall", "kg/(s*m2)", &
102 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
103 "inst(X)", zsto, zout)
104
105 ! CALL histdef(nid_ins, "snow_mass", "Snow Mass", "kg/m2",
106 ! . iim, (jjm + 1), nhori, 1, 1, 1, -99,
107 ! . "inst(X)", zsto, zout)
108
109 CALL histdef(nid_ins, "topl", "OLR", "W/m2", &
110 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
111 "inst(X)", zsto, zout)
112
113 CALL histdef(nid_ins, "evap", "Evaporation", "kg/(s*m2)", &
114 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
115 "inst(X)", zsto, zout)
116
117 CALL histdef(nid_ins, "sols", "Solar rad. at surf.", "W/m2", &
118 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
119 "inst(X)", zsto, zout)
120
121 CALL histdef(nid_ins, "soll", "IR rad. at surface", "W/m2", &
122 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
123 "inst(X)", zsto, zout)
124
125 CALL histdef(nid_ins, "solldown", "Down. IR rad. at surface", &
126 "W/m2", iim, (jjm + 1), nhori, 1, 1, 1, -99, &
127 "inst(X)", zsto, zout)
128
129 CALL histdef(nid_ins, "bils", "Surf. total heat flux", "W/m2", &
130 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
131 "inst(X)", zsto, zout)
132
133 CALL histdef(nid_ins, "sens", "Sensible heat flux", "W/m2", &
134 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
135 "inst(X)", zsto, zout)
136
137 CALL histdef(nid_ins, "fder", "Heat flux derivation", "W/m2", &
138 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
139 "inst(X)", zsto, zout)
140
141 CALL histdef(nid_ins, "dtsvdfo", "Boundary-layer dTs(o)", "K/s", &
142 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
143 "inst(X)", zsto, zout)
144
145 CALL histdef(nid_ins, "dtsvdft", "Boundary-layer dTs(t)", "K/s", &
146 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
147 "inst(X)", zsto, zout)
148
149 CALL histdef(nid_ins, "dtsvdfg", "Boundary-layer dTs(g)", "K/s", &
150 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
151 "inst(X)", zsto, zout)
152
153 CALL histdef(nid_ins, "dtsvdfi", "Boundary-layer dTs(g)", "K/s", &
154 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
155 "inst(X)", zsto, zout)
156
157 DO nsrf = 1, nbsrf
158 call histdef(nid_ins, "pourc_"//clnsurf(nsrf), &
159 "% "//clnsurf(nsrf), "%", &
160 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
161 "inst(X)", zsto, zout)
162
163 call histdef(nid_ins, "fract_"//clnsurf(nsrf), &
164 "Fraction "//clnsurf(nsrf), "1", &
165 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
166 "inst(X)", zsto, zout)
167
168 call histdef(nid_ins, "sens_"//clnsurf(nsrf), &
169 "Sensible heat flux "//clnsurf(nsrf), "W/m2", &
170 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
171 "inst(X)", zsto, zout)
172
173 call histdef(nid_ins, "tsol_"//clnsurf(nsrf), &
174 "Surface Temperature"//clnsurf(nsrf), "W/m2", &
175 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
176 "inst(X)", zsto, zout)
177
178 call histdef(nid_ins, "lat_"//clnsurf(nsrf), &
179 "Latent heat flux "//clnsurf(nsrf), "W/m2", &
180 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
181 "inst(X)", zsto, zout)
182
183 call histdef(nid_ins, "taux_"//clnsurf(nsrf), &
184 "Zonal wind stress"//clnsurf(nsrf), "Pa", &
185 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
186 "inst(X)", zsto, zout)
187
188 call histdef(nid_ins, "tauy_"//clnsurf(nsrf), &
189 "Meridional xind stress "//clnsurf(nsrf), "Pa", &
190 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
191 "inst(X)", zsto, zout)
192
193 call histdef(nid_ins, "albe_"//clnsurf(nsrf), &
194 "Albedo "//clnsurf(nsrf), "-", &
195 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
196 "inst(X)", zsto, zout)
197
198 call histdef(nid_ins, "rugs_"//clnsurf(nsrf), &
199 "rugosite "//clnsurf(nsrf), "-", &
200 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
201 "inst(X)", zsto, zout)
202 END DO
203
204 CALL histdef(nid_ins, "rugs", "rugosity", "-", &
205 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
206 "inst(X)", zsto, zout)
207
208 CALL histdef(nid_ins, "albs", "Surface albedo", "-", &
209 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
210 "inst(X)", zsto, zout)
211
212 CALL histdef(nid_ins, "s_pblh", "Boundary Layer Height", "m", &
213 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
214 "inst(X)", zsto, zout)
215
216 CALL histdef(nid_ins, "s_pblt", "T at Boundary Layer Height", &
217 "K", &
218 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
219 "inst(X)", zsto, zout)
220
221 CALL histdef(nid_ins, "s_lcl", "Condensation level", "m", &
222 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
223 "inst(X)", zsto, zout)
224
225 CALL histdef(nid_ins, "s_capCL", "Conv avlbl pot ener for ABL", "J/m2", &
226 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
227 "inst(X)", zsto, zout)
228
229 CALL histdef(nid_ins, "s_oliqCL", "Liq Water in BL", "kg/m2", &
230 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
231 "inst(X)", zsto, zout)
232
233 CALL histdef(nid_ins, "s_cteiCL", "Instability criteria (ABL)", "K", &
234 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
235 "inst(X)", zsto, zout)
236
237 CALL histdef(nid_ins, "s_therm", "Exces du thermique", "K", &
238 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
239 "inst(X)", zsto, zout)
240
241 CALL histdef(nid_ins, "s_trmb1", "deep_cape(HBTM2)", "J/m2", &
242 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
243 "inst(X)", zsto, zout)
244
245 CALL histdef(nid_ins, "s_trmb2", "inhibition (HBTM2)", "J/m2", &
246 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
247 "inst(X)", zsto, zout)
248
249 CALL histdef(nid_ins, "s_trmb3", "Point Omega (HBTM2)", "m", &
250 iim, (jjm + 1), nhori, 1, 1, 1, -99, &
251 "inst(X)", zsto, zout)
252
253 if (conv_emanuel) then
254 CALL histdef(nid_ins, "ptop", "cloud top pressure", &
255 "Pa", iim, jjm + 1, nhori, 1, 1, 1, -99, "inst(X)", zsto, zout)
256 CALL histdef(nid_ins, "dnwd0", "unsaturated downdraft", &
257 "kg/m2/s", iim, jjm + 1, nhori, llm, 1, llm, nvert, "inst(X)", &
258 zsto, zout)
259 end if
260
261 ! Champs 3D:
262
263 CALL histdef(nid_ins, "temp", "Temperature", "K", &
264 iim, (jjm + 1), nhori, llm, 1, llm, nvert, &
265 "inst(X)", zsto, zout)
266
267 CALL histdef(nid_ins, "vitu", "Zonal wind", "m/s", &
268 iim, (jjm + 1), nhori, llm, 1, llm, nvert, &
269 "inst(X)", zsto, zout)
270
271 CALL histdef(nid_ins, "vitv", "Merid wind", "m/s", &
272 iim, (jjm + 1), nhori, llm, 1, llm, nvert, &
273 "inst(X)", zsto, zout)
274
275 CALL histdef(nid_ins, "geop", "Geopotential height", "m", &
276 iim, (jjm + 1), nhori, llm, 1, llm, nvert, &
277 "inst(X)", zsto, zout)
278
279 CALL histdef(nid_ins, "pres", "Air pressure", "Pa", &
280 iim, (jjm + 1), nhori, llm, 1, llm, nvert, &
281 "inst(X)", zsto, zout)
282
283 CALL histdef(nid_ins, "dtvdf", "Boundary-layer dT", "K/s", &
284 iim, (jjm + 1), nhori, llm, 1, llm, nvert, &
285 "inst(X)", zsto, zout)
286
287 CALL histdef(nid_ins, "dqvdf", "Boundary-layer dQ", "Kg/Kg/s", &
288 iim, (jjm + 1), nhori, llm, 1, llm, nvert, &
289 "inst(X)", zsto, zout)
290
291 CALL histdef(nid_ins, "zmasse", "column density of air in cell", &
292 "kg m-2", iim, jjm + 1, nhori, llm, 1, llm, nvert, "inst(X)", &
293 zsto, zout)
294
295 CALL histdef(nid_ins, "rhum", "Relative humidity", &
296 "", iim, jjm + 1, nhori, llm, 1, llm, nvert, "inst(X)", &
297 zsto, zout)
298
299 DO it = 1, nqmx - 2
300 ! champ 2D
301 iq=it+2
302 CALL histdef(nid_ins, tname(iq), ttext(iq), "U/kga", iim, jjm+1, &
303 nhori, llm, 1, llm, nvert, "inst(X)", zsto, zout)
304 CALL histdef(nid_ins, "fl"//tname(iq), "Flux "//ttext(iq), &
305 "U/m2/s", iim, jjm+1, nhori, llm, 1, llm, nvert, &
306 "inst(X)", zsto, zout)
307
308 !---Ajout Olivia
309 CALL histdef(nid_ins, "d_tr_th_"//tname(iq), &
310 "tendance thermique"// ttext(iq), "?", &
311 iim, jjm+1, nhori, llm, 1, llm, nvert, &
312 "inst(X)", zsto, zout)
313 CALL histdef(nid_ins, "d_tr_cv_"//tname(iq), &
314 "tendance convection"// ttext(iq), "?", &
315 iim, jjm+1, nhori, llm, 1, llm, nvert, &
316 "inst(X)", zsto, zout)
317 CALL histdef(nid_ins, "d_tr_cl_"//tname(iq), &
318 "tendance couche limite"// ttext(iq), "?", &
319 iim, jjm+1, nhori, llm, 1, llm, nvert, &
320 "inst(X)", zsto, zout)
321 !---fin Olivia
322
323 ENDDO
324
325 CALL histend(nid_ins)
326 ENDIF
327
328 end subroutine ini_histins
329
330 end module ini_histins_m

  ViewVC Help
Powered by ViewVC 1.1.21