56 USE yomhook
,ONLY : lhook, dr_hook
57 USE parkind1
,ONLY : jprb
70 INTEGER,
INTENT(IN) :: klu
71 INTEGER,
INTENT(IN) :: ksw
72 CHARACTER(LEN=6),
INTENT(IN):: hprogram
78 CHARACTER(LEN=12) :: yrec
79 REAL(KIND=JPRB) :: zhook_handle
85 IF (lhook) CALL dr_hook(
'DIAG_MISC_TEB_INIT_N',0,zhook_handle)
89 IF (dgmto%LSURF_MISC_BUDGET)
THEN
90 ALLOCATE(dgmt%CUR%XQF_BLD (klu))
91 ALLOCATE(dgmt%CUR%XFLX_BLD (klu))
92 ALLOCATE(dgmt%CUR%XQF_TOWN (klu))
93 ALLOCATE(dgmt%CUR%XDQS_TOWN (klu))
94 ALLOCATE(dgmt%CUR%XRN_ROAD (klu))
95 ALLOCATE(dgmt%CUR%XH_ROAD (klu))
96 ALLOCATE(dgmt%CUR%XLE_ROAD (klu))
97 ALLOCATE(dgmt%CUR%XGFLUX_ROAD (klu))
98 ALLOCATE(dgmt%CUR%XRN_WALL_A (klu))
99 ALLOCATE(dgmt%CUR%XH_WALL_A (klu))
100 ALLOCATE(dgmt%CUR%XGFLUX_WALL_A (klu))
101 ALLOCATE(dgmt%CUR%XRN_WALL_B (klu))
102 ALLOCATE(dgmt%CUR%XH_WALL_B (klu))
103 ALLOCATE(dgmt%CUR%XGFLUX_WALL_B (klu))
104 ALLOCATE(dgmt%CUR%XRN_ROOF (klu))
105 ALLOCATE(dgmt%CUR%XH_ROOF (klu))
106 ALLOCATE(dgmt%CUR%XLE_ROOF (klu))
107 ALLOCATE(dgmt%CUR%XGFLUX_ROOF (klu))
108 ALLOCATE(dgmt%CUR%XRN_GARDEN (klu))
109 ALLOCATE(dgmt%CUR%XH_GARDEN (klu))
110 ALLOCATE(dgmt%CUR%XLE_GARDEN (klu))
111 ALLOCATE(dgmt%CUR%XGFLUX_GARDEN (klu))
112 ALLOCATE(dgmt%CUR%XRN_BLT (klu))
113 ALLOCATE(dgmt%CUR%XH_BLT (klu))
114 ALLOCATE(dgmt%CUR%XLE_BLT (klu))
115 ALLOCATE(dgmt%CUR%XGFLUX_BLT (klu))
116 ALLOCATE(dgmt%CUR%XRN_STRLROOF (klu))
117 ALLOCATE(dgmt%CUR%XH_STRLROOF (klu))
118 ALLOCATE(dgmt%CUR%XLE_STRLROOF (klu))
119 ALLOCATE(dgmt%CUR%XGFLUX_STRLROOF (klu))
120 ALLOCATE(dgmt%CUR%XRN_GREENROOF (klu))
121 ALLOCATE(dgmt%CUR%XH_GREENROOF (klu))
122 ALLOCATE(dgmt%CUR%XLE_GREENROOF (klu))
123 ALLOCATE(dgmt%CUR%XGFLUX_GREENROOF (klu))
124 ALLOCATE(dgmt%CUR%XG_GREENROOF_ROOF (klu))
125 ALLOCATE(dgmt%CUR%XRUNOFF_TOWN (klu))
126 ALLOCATE(dgmt%CUR%XRUNOFF_GARDEN (klu))
127 ALLOCATE(dgmt%CUR%XRUNOFF_ROAD (klu))
128 ALLOCATE(dgmt%CUR%XRUNOFF_STRLROOF (klu))
129 ALLOCATE(dgmt%CUR%XRUNOFF_ROOF (klu))
130 ALLOCATE(dgmt%CUR%XRUNOFF_GREENROOF (klu))
131 ALLOCATE(dgmt%CUR%XDRAIN_GREENROOF (klu))
132 ALLOCATE(dgmt%CUR%XDRAIN_GARDEN (klu))
133 ALLOCATE(dgmt%CUR%XIRRIG_GREENROOF (klu))
134 ALLOCATE(dgmt%CUR%XIRRIG_GARDEN (klu))
135 ALLOCATE(dgmt%CUR%XIRRIG_ROAD (klu))
137 ALLOCATE(dgmt%CUR%XABS_SW_ROOF (klu))
138 ALLOCATE(dgmt%CUR%XABS_SW_SNOW_ROOF (klu))
139 ALLOCATE(dgmt%CUR%XABS_LW_ROOF (klu))
140 ALLOCATE(dgmt%CUR%XABS_LW_SNOW_ROOF (klu))
141 ALLOCATE(dgmt%CUR%XABS_SW_ROAD (klu))
142 ALLOCATE(dgmt%CUR%XABS_SW_SNOW_ROAD (klu))
143 ALLOCATE(dgmt%CUR%XABS_LW_ROAD (klu))
144 ALLOCATE(dgmt%CUR%XABS_LW_SNOW_ROAD (klu))
145 ALLOCATE(dgmt%CUR%XABS_SW_WALL_A (klu))
146 ALLOCATE(dgmt%CUR%XABS_SW_WALL_B (klu))
147 ALLOCATE(dgmt%CUR%XABS_LW_WALL_A (klu))
148 ALLOCATE(dgmt%CUR%XABS_LW_WALL_B (klu))
149 ALLOCATE(dgmt%CUR%XABS_SW_GARDEN (klu))
150 ALLOCATE(dgmt%CUR%XABS_LW_GARDEN (klu))
151 ALLOCATE(dgmt%CUR%XABS_SW_GREENROOF (klu))
152 ALLOCATE(dgmt%CUR%XABS_LW_GREENROOF (klu))
154 ALLOCATE(dgmt%CUR%XREF_SW_FAC (klu))
155 ALLOCATE(dgmt%CUR%XREF_SW_GRND (klu))
157 ALLOCATE(dgmt%CUR%XEMIT_LW_FAC (klu))
158 ALLOCATE(dgmt%CUR%XEMIT_LW_GRND (klu))
160 ALLOCATE(dgmt%CUR%XTCOOL_CUR_TARGET (klu))
161 ALLOCATE(dgmt%CUR%XTHEAT_CUR_TARGET (klu))
162 ALLOCATE(dgmt%CUR%XCUR_QIN (klu))
164 IF (top%CBEM==
'BEM')
THEN
165 ALLOCATE(dgmt%CUR%XH_BLD_COOL (klu))
166 ALLOCATE(dgmt%CUR%XT_BLD_COOL (klu))
167 ALLOCATE(dgmt%CUR%XH_BLD_HEAT (klu))
168 ALLOCATE(dgmt%CUR%XLE_BLD_COOL (klu))
169 ALLOCATE(dgmt%CUR%XLE_BLD_HEAT (klu))
170 ALLOCATE(dgmt%CUR%XH_WASTE (klu))
171 ALLOCATE(dgmt%CUR%XLE_WASTE (klu))
172 ALLOCATE(dgmt%CUR%XHVAC_COOL (klu))
173 ALLOCATE(dgmt%CUR%XHVAC_HEAT (klu))
174 ALLOCATE(dgmt%CUR%XCAP_SYS (klu))
175 ALLOCATE(dgmt%CUR%XM_SYS (klu))
176 ALLOCATE(dgmt%CUR%XCOP (klu))
177 ALLOCATE(dgmt%CUR%XQ_SYS (klu))
178 ALLOCATE(dgmt%CUR%XT_SYS (klu))
179 ALLOCATE(dgmt%CUR%XTR_SW_WIN (klu))
180 ALLOCATE(dgmt%CUR%XFAN_POWER (klu))
181 ALLOCATE(dgmt%CUR%XT_RAD_IND (klu))
182 ALLOCATE(dgmt%CUR%XHU_BLD (klu))
183 ALLOCATE(dgmt%CUR%XABS_SW_WIN (klu))
184 ALLOCATE(dgmt%CUR%XABS_LW_WIN (klu))
187 IF (top%LSOLAR_PANEL)
THEN
188 ALLOCATE(dgmt%CUR%XABS_SW_PANEL (klu))
189 ALLOCATE(dgmt%CUR%XABS_LW_PANEL (klu))
190 ALLOCATE(dgmt%CUR%XRN_PANEL (klu))
191 ALLOCATE(dgmt%CUR%XH_PANEL (klu))
192 ALLOCATE(dgmt%CUR%XTHER_PROD_PANEL(klu))
193 ALLOCATE(dgmt%CUR%XPHOT_PROD_PANEL(klu))
194 ALLOCATE(dgmt%CUR%XPROD_PANEL (klu))
195 ALLOCATE(dgmt%CUR%XTHER_PROD_BLD (klu))
196 ALLOCATE(dgmt%CUR%XPHOT_PROD_BLD (klu))
199 ALLOCATE(dgct%CUR%XRUNOFFC_TOWN (klu))
200 ALLOCATE(dgct%CUR%XRUNOFFC_GARDEN (klu))
201 ALLOCATE(dgct%CUR%XDRAINC_GARDEN (klu))
202 ALLOCATE(dgct%CUR%XIRRIGC_GARDEN (klu))
203 ALLOCATE(dgct%CUR%XRUNOFFC_ROAD (klu))
204 ALLOCATE(dgct%CUR%XIRRIGC_ROAD (klu))
205 ALLOCATE(dgct%CUR%XRUNOFFC_STRLROOF (klu))
206 ALLOCATE(dgct%CUR%XRUNOFFC_ROOF (klu))
207 ALLOCATE(dgct%CUR%XRUNOFFC_GREENROOF (klu))
208 ALLOCATE(dgct%CUR%XDRAINC_GREENROOF (klu))
209 ALLOCATE(dgct%CUR%XIRRIGC_GREENROOF (klu))
210 IF (top%CBEM==
'BEM')
THEN
211 ALLOCATE(dgct%CUR%XHVACC_COOL (klu))
212 ALLOCATE(dgct%CUR%XHVACC_HEAT (klu))
214 IF (top%LSOLAR_PANEL)
THEN
215 ALLOCATE(dgct%CUR%XTHER_PROD_BLDC(klu))
216 ALLOCATE(dgct%CUR%XPHOT_PROD_BLDC(klu))
218 dgmt%CUR%XQF_BLD = xundef
219 dgmt%CUR%XFLX_BLD = xundef
220 dgmt%CUR%XQF_TOWN = xundef
221 dgmt%CUR%XDQS_TOWN = xundef
222 dgmt%CUR%XRN_ROAD = xundef
223 dgmt%CUR%XH_ROAD = xundef
224 dgmt%CUR%XLE_ROAD = xundef
225 dgmt%CUR%XGFLUX_ROAD = xundef
226 dgmt%CUR%XRN_WALL_A = xundef
227 dgmt%CUR%XH_WALL_A = xundef
228 dgmt%CUR%XGFLUX_WALL_A = xundef
229 dgmt%CUR%XRN_WALL_B = xundef
230 dgmt%CUR%XH_WALL_B = xundef
231 dgmt%CUR%XGFLUX_WALL_B = xundef
232 dgmt%CUR%XRN_ROOF = xundef
233 dgmt%CUR%XH_ROOF = xundef
234 dgmt%CUR%XLE_ROOF = xundef
235 dgmt%CUR%XGFLUX_ROOF = xundef
236 dgmt%CUR%XRN_GARDEN = xundef
237 dgmt%CUR%XH_GARDEN = xundef
238 dgmt%CUR%XLE_GARDEN = xundef
239 dgmt%CUR%XGFLUX_GARDEN = xundef
240 dgmt%CUR%XRN_BLT = xundef
241 dgmt%CUR%XH_BLT = xundef
242 dgmt%CUR%XLE_BLT = xundef
243 dgmt%CUR%XGFLUX_BLT = xundef
244 dgmt%CUR%XRN_STRLROOF = xundef
245 dgmt%CUR%XH_STRLROOF = xundef
246 dgmt%CUR%XLE_STRLROOF = xundef
247 dgmt%CUR%XGFLUX_STRLROOF = xundef
248 dgmt%CUR%XRN_GREENROOF = xundef
249 dgmt%CUR%XH_GREENROOF = xundef
250 dgmt%CUR%XLE_GREENROOF = xundef
251 dgmt%CUR%XGFLUX_GREENROOF = xundef
252 dgmt%CUR%XG_GREENROOF_ROOF = xundef
253 dgmt%CUR%XRUNOFF_TOWN = xundef
254 dgmt%CUR%XRUNOFF_GARDEN = xundef
255 dgmt%CUR%XRUNOFF_ROAD = xundef
256 dgmt%CUR%XRUNOFF_ROOF = xundef
257 dgmt%CUR%XRUNOFF_STRLROOF = xundef
258 dgmt%CUR%XRUNOFF_GREENROOF = xundef
259 dgmt%CUR%XDRAIN_GREENROOF = xundef
260 dgmt%CUR%XDRAIN_GARDEN = xundef
261 dgmt%CUR%XIRRIG_GREENROOF = xundef
262 dgmt%CUR%XIRRIG_GARDEN = xundef
263 dgmt%CUR%XIRRIG_ROAD = xundef
265 dgmt%CUR%XABS_SW_ROOF = xundef
266 dgmt%CUR%XABS_SW_SNOW_ROOF = xundef
267 dgmt%CUR%XABS_LW_ROOF = xundef
268 dgmt%CUR%XABS_LW_SNOW_ROOF = xundef
269 dgmt%CUR%XABS_SW_ROAD = xundef
270 dgmt%CUR%XABS_SW_SNOW_ROAD = xundef
271 dgmt%CUR%XABS_LW_ROAD = xundef
272 dgmt%CUR%XABS_LW_SNOW_ROAD = xundef
273 dgmt%CUR%XABS_SW_WALL_A = xundef
274 dgmt%CUR%XABS_SW_WALL_B = xundef
275 dgmt%CUR%XABS_LW_WALL_A = xundef
276 dgmt%CUR%XABS_LW_WALL_B = xundef
277 dgmt%CUR%XABS_SW_GARDEN = xundef
278 dgmt%CUR%XABS_LW_GARDEN = xundef
279 dgmt%CUR%XABS_SW_GREENROOF = xundef
280 dgmt%CUR%XABS_LW_GREENROOF = xundef
282 dgmt%CUR%XREF_SW_FAC = xundef
283 dgmt%CUR%XREF_SW_GRND = xundef
285 dgmt%CUR%XEMIT_LW_FAC = xundef
286 dgmt%CUR%XEMIT_LW_GRND = xundef
288 dgmt%CUR%XTCOOL_CUR_TARGET = xundef
289 dgmt%CUR%XTHEAT_CUR_TARGET = xundef
290 dgmt%CUR%XCUR_QIN = xundef
292 IF (top%CBEM==
'BEM')
THEN
293 dgmt%CUR%XH_BLD_COOL = xundef
294 dgmt%CUR%XT_BLD_COOL = xundef
295 dgmt%CUR%XH_BLD_HEAT = xundef
296 dgmt%CUR%XLE_BLD_COOL = xundef
297 dgmt%CUR%XLE_BLD_HEAT = xundef
298 dgmt%CUR%XH_WASTE = xundef
299 dgmt%CUR%XLE_WASTE = xundef
300 dgmt%CUR%XHVAC_COOL = xundef
301 dgmt%CUR%XHVAC_HEAT = xundef
302 dgmt%CUR%XCAP_SYS = xundef
303 dgmt%CUR%XM_SYS = xundef
304 dgmt%CUR%XCOP = xundef
305 dgmt%CUR%XQ_SYS = xundef
306 dgmt%CUR%XT_SYS = xundef
307 dgmt%CUR%XTR_SW_WIN = xundef
308 dgmt%CUR%XFAN_POWER = xundef
309 dgmt%CUR%XT_RAD_IND = xundef
310 dgmt%CUR%XHU_BLD = xundef
311 dgmt%CUR%XABS_SW_WIN = xundef
312 dgmt%CUR%XABS_LW_WIN = xundef
315 IF (top%LSOLAR_PANEL)
THEN
316 dgmt%CUR%XABS_SW_PANEL = xundef
317 dgmt%CUR%XABS_LW_PANEL = xundef
318 dgmt%CUR%XRN_PANEL = xundef
319 dgmt%CUR%XH_PANEL = xundef
320 dgmt%CUR%XTHER_PROD_PANEL= xundef
321 dgmt%CUR%XPHOT_PROD_PANEL= xundef
322 dgmt%CUR%XPROD_PANEL = xundef
323 dgmt%CUR%XTHER_PROD_BLD = xundef
324 dgmt%CUR%XPHOT_PROD_BLD = xundef
327 dgct%CUR%XRUNOFFC_TOWN = 0.0
328 dgct%CUR%XRUNOFFC_GARDEN = 0.0
329 dgct%CUR%XRUNOFFC_ROAD = 0.0
330 dgct%CUR%XRUNOFFC_ROOF = 0.0
331 dgct%CUR%XRUNOFFC_STRLROOF = 0.0
332 dgct%CUR%XRUNOFFC_GREENROOF = 0.0
333 dgct%CUR%XDRAINC_GREENROOF = 0.0
334 dgct%CUR%XDRAINC_GARDEN = 0.0
335 dgct%CUR%XIRRIGC_GREENROOF = 0.0
336 dgct%CUR%XIRRIGC_GARDEN = 0.0
337 dgct%CUR%XIRRIGC_ROAD = 0.0
338 IF (top%CBEM==
'BEM')
THEN
339 dgct%CUR%XHVACC_COOL = 0.0
340 dgct%CUR%XHVACC_HEAT = 0.0
342 IF (top%LSOLAR_PANEL)
THEN
343 dgct%CUR%XTHER_PROD_BLDC = 0.
344 dgct%CUR%XPHOT_PROD_BLDC = 0.
348 IF (lhook) CALL dr_hook(
'DIAG_MISC_TEB_INIT_N',1,zhook_handle)
subroutine diag_misc_teb_init_n(DGCT, DGMT, DGMTO, TOP, HPROGRAM, KLU, KSW)