6 SUBROUTINE hvac_autosize (BDD, DTCO, DGU, B, BOP, UG, U, TG, T, TOP, &
43 USE modd_csts, ONLY : xcpd, xpi, xp00, xrd, xstefan
50 USE modi_urban_lw_coef
51 USE modi_urban_solar_abs
52 USE modi_get_sizes_parallel
54 USE yomhook
,ONLY : lhook, dr_hook
55 USE parkind1
,ONLY : jprb
73 TYPE(bem_t),
INTENT(INOUT) :: b
78 TYPE(teb_t),
INTENT(INOUT) :: t
82 INTEGER,
INTENT(IN) :: ki
83 INTEGER,
INTENT(IN) :: kluout
88 LOGICAL,
PARAMETER :: gcanopy=.false.
89 CHARACTER(LEN=3),
PARAMETER :: ybem=
'BEM'
91 REAL,
PARAMETER :: pptstep = 300.
92 INTEGER,
PARAMETER :: jpyear = 2004
99 REAL,
DIMENSION(KI) :: zu_roof
100 REAL,
DIMENSION(KI) :: zu_wall
101 REAL,
DIMENSION(KI) :: zt_canyon
102 REAL,
DIMENSION(KI) :: zq_canyon
103 REAL,
DIMENSION(KI) :: zu_canyon
104 REAL,
DIMENSION(KI) :: zz_lowcan
105 REAL,
DIMENSION(KI) :: zdir_sw
106 REAL,
DIMENSION(KI) :: zsca_sw
108 CHARACTER(LEN=3) :: himplicit_wind
109 CHARACTER(LEN=6) :: hz0h
110 CHARACTER(LEN=5) :: ych_bem
112 INTEGER :: jforc_step
113 INTEGER :: inb_step_atm
115 REAL,
DIMENSION(KI) :: zfrac_panel
116 REAL,
DIMENSION(KI) :: zalb_panel
118 REAL,
DIMENSION(KI) :: zroad
119 REAL,
DIMENSION(KI) :: zgarden
120 REAL,
DIMENSION(KI) :: zsvf_garden
122 REAL,
DIMENSION(KI) :: zzref
123 REAL,
DIMENSION(KI) :: zps
124 REAL,
DIMENSION(KI) :: zpa
125 REAL,
DIMENSION(KI) :: zexns
126 REAL,
DIMENSION(KI) :: zexna
127 REAL,
DIMENSION(KI) :: zta
128 REAL,
DIMENSION(KI) :: zqa
129 REAL,
DIMENSION(KI) :: zrhoa
130 REAL,
DIMENSION(KI) :: zlw_rad
131 REAL,
DIMENSION(KI) :: zasnow_roof
132 REAL,
DIMENSION(KI) :: zasnow_road
133 REAL,
DIMENSION(KI) :: zdn_roof
134 REAL,
DIMENSION(KI) :: zdf_roof
135 REAL,
DIMENSION(KI) :: zdn_road
136 REAL,
DIMENSION(KI) :: zdf_road
137 REAL,
DIMENSION(KI) :: zemis_garden
138 REAL,
DIMENSION(KI) :: zesnow_road
139 REAL,
DIMENSION(KI) :: ztssnow_road
140 REAL,
DIMENSION(KI) :: zws_roof
141 REAL,
DIMENSION(KI) :: zws_road
142 CHARACTER(LEN=4) :: hsnow_roof
143 REAL,
DIMENSION(KI,1):: zwsnow_roof
144 REAL,
DIMENSION(KI,1) :: ztsnow_roof
145 REAL,
DIMENSION(KI,1) :: zrsnow_roof
146 REAL,
DIMENSION(KI) :: ztssnow_roof
147 REAL,
DIMENSION(KI) :: zesnow_roof
148 CHARACTER(LEN=4) :: hsnow_road
149 REAL,
DIMENSION(KI,1) :: zwsnow_road
150 REAL,
DIMENSION(KI,1) :: ztsnow_road
151 REAL,
DIMENSION(KI,1) :: zrsnow_road
152 REAL,
DIMENSION(KI) :: zrr
153 REAL,
DIMENSION(KI) :: zsr
154 REAL,
DIMENSION(KI) :: zqsat_roof
155 REAL,
DIMENSION(KI) :: zqsat_road
156 REAL,
DIMENSION(KI) :: zdelt_roof
157 REAL,
DIMENSION(KI) :: zdelt_road
158 REAL,
DIMENSION(KI) :: zabs_sw_roof
159 REAL,
DIMENSION(KI) :: zabs_sw_road
160 REAL,
DIMENSION(KI) :: zabs_sw_wall_a
161 REAL,
DIMENSION(KI) :: zabs_sw_wall_b
162 REAL,
DIMENSION(KI) :: zabs_sw_garden
163 REAL,
DIMENSION(KI) :: zabs_sw_greenroof
164 REAL,
DIMENSION(KI) :: zabs_sw_panel
165 REAL,
DIMENSION(KI) :: zabs_sw_snow_roof
166 REAL,
DIMENSION(KI) :: zabs_sw_snow_road
167 REAL,
DIMENSION(KI) :: zrec_sw_road
168 REAL,
DIMENSION(KI) :: zrec_sw_snow_road
169 REAL,
DIMENSION(KI) :: zrec_sw_wall_a
170 REAL,
DIMENSION(KI) :: zrec_sw_wall_b
171 REAL,
DIMENSION(KI) :: zrec_sw_garden
172 REAL,
DIMENSION(KI) :: zrec_sw_roof
173 REAL,
DIMENSION(KI) :: zabs_lw_roof
174 REAL,
DIMENSION(KI) :: zabs_lw_snow_roof
175 REAL,
DIMENSION(KI) :: zabs_lw_road
176 REAL,
DIMENSION(KI) :: zabs_lw_snow_road
177 REAL,
DIMENSION(KI) :: zabs_lw_wall_a
178 REAL,
DIMENSION(KI) :: zabs_lw_wall_b
179 REAL,
DIMENSION(KI) :: zdir_alb_town
180 REAL,
DIMENSION(KI) :: zsca_alb_town
181 REAL,
DIMENSION(KI) :: zsw_rad_garden
182 REAL,
DIMENSION(KI) :: zabs_sw_win
183 REAL,
DIMENSION(KI) :: zrec_sw_win
184 REAL,
DIMENSION(KI) :: zref_sw_grnd
185 REAL,
DIMENSION(KI) :: zref_sw_fac
186 REAL,
DIMENSION(KI) :: zt1
187 REAL,
DIMENSION(KI) :: ztn
188 REAL,
DIMENSION(KI,TOP%NROAD_LAYER ) :: zt_road
189 REAL,
DIMENSION(KI,TOP%NROOF_LAYER) :: zt_roof
190 REAL,
DIMENSION(KI,TOP%NWALL_LAYER) :: zt_wall_a
191 REAL,
DIMENSION(KI,TOP%NWALL_LAYER) :: zt_wall_b
192 REAL,
DIMENSION(KI,BOP%NFLOOR_LAYER ) :: zt_floor
193 REAL,
DIMENSION(KI,BOP%NFLOOR_LAYER ) :: zt_mass
194 REAL,
DIMENSION(KI) :: zts_garden
195 REAL,
DIMENSION(KI) :: zt_win1
196 REAL,
DIMENSION(KI) :: zlw_wa_to_wb
197 REAL,
DIMENSION(KI) :: zlw_wa_to_r
198 REAL,
DIMENSION(KI) :: zlw_wb_to_r
199 REAL,
DIMENSION(KI) :: zlw_wa_to_nr
200 REAL,
DIMENSION(KI) :: zlw_wb_to_nr
201 REAL,
DIMENSION(KI) :: zlw_wa_to_g
202 REAL,
DIMENSION(KI) :: zlw_wb_to_g
203 REAL,
DIMENSION(KI) :: zlw_wa_to_win
204 REAL,
DIMENSION(KI) :: zlw_wb_to_win
205 REAL,
DIMENSION(KI) :: zlw_r_to_wa
206 REAL,
DIMENSION(KI) :: zlw_r_to_wb
207 REAL,
DIMENSION(KI) :: zlw_r_to_win
208 REAL,
DIMENSION(KI) :: zlw_g_to_wa
209 REAL,
DIMENSION(KI) :: zlw_g_to_wb
210 REAL,
DIMENSION(KI) :: zlw_g_to_win
211 REAL,
DIMENSION(KI) :: zlw_s_to_wa
212 REAL,
DIMENSION(KI) :: zlw_s_to_wb
213 REAL,
DIMENSION(KI) :: zlw_s_to_r
214 REAL,
DIMENSION(KI) :: zlw_s_to_nr
215 REAL,
DIMENSION(KI) :: zlw_s_to_g
216 REAL,
DIMENSION(KI) :: zlw_s_to_win
217 REAL,
DIMENSION(KI) :: zlw_win_to_wa
218 REAL,
DIMENSION(KI) :: zlw_win_to_wb
219 REAL,
DIMENSION(KI) :: zlw_win_to_r
220 REAL,
DIMENSION(KI) :: zlw_win_to_nr
221 REAL,
DIMENSION(KI) :: zlw_win_to_g
222 REAL,
DIMENSION(KI) :: zlw_nr_to_wa
223 REAL,
DIMENSION(KI) :: zlw_nr_to_wb
224 REAL,
DIMENSION(KI) :: zlw_nr_to_win
225 REAL,
DIMENSION(KI) :: zti_bld
226 REAL,
DIMENSION(KI) :: zrn_roof
227 REAL,
DIMENSION(KI) :: zh_roof
228 REAL,
DIMENSION(KI) :: zle_roof
229 REAL,
DIMENSION(KI) :: zlew_roof
230 REAL,
DIMENSION(KI) :: zgflux_roof
231 REAL,
DIMENSION(KI) :: zrunoff_roof
232 REAL,
DIMENSION(KI) :: zrn_road
233 REAL,
DIMENSION(KI) :: zh_road
234 REAL,
DIMENSION(KI) :: zle_road
235 REAL,
DIMENSION(KI) :: zlew_road
236 REAL,
DIMENSION(KI) :: zgflux_road
237 REAL,
DIMENSION(KI) :: zrunoff_road
238 REAL,
DIMENSION(KI) :: zrn_wall_a
239 REAL,
DIMENSION(KI) :: zh_wall_a
240 REAL,
DIMENSION(KI) :: zle_wall_a
241 REAL,
DIMENSION(KI) :: zgflux_wall_a
242 REAL,
DIMENSION(KI) :: zrn_wall_b
243 REAL,
DIMENSION(KI) :: zh_wall_b
244 REAL,
DIMENSION(KI) :: zle_wall_b
245 REAL,
DIMENSION(KI) :: zgflux_wall_b
246 REAL,
DIMENSION(KI) :: zrn_blt
247 REAL,
DIMENSION(KI) :: zh_blt
248 REAL,
DIMENSION(KI) :: zle_blt
249 REAL,
DIMENSION(KI) :: zgflux_blt
250 REAL,
DIMENSION(KI) :: zrnsnow_roof
251 REAL,
DIMENSION(KI) :: zhsnow_roof
252 REAL,
DIMENSION(KI) :: zlesnow_roof
253 REAL,
DIMENSION(KI) :: zgsnow_roof
254 REAL,
DIMENSION(KI) :: zmelt_roof
255 REAL,
DIMENSION(KI) :: zrnsnow_road
256 REAL,
DIMENSION(KI) :: zhsnow_road
257 REAL,
DIMENSION(KI) :: zlesnow_road
258 REAL,
DIMENSION(KI) :: zgsnow_road
259 REAL,
DIMENSION(KI) :: zmelt_road
260 REAL,
DIMENSION(KI) :: zuw_road
261 REAL,
DIMENSION(KI) :: zuw_roof
262 REAL,
DIMENSION(KI) :: zduwdu_road
263 REAL,
DIMENSION(KI) :: zduwdu_roof
264 REAL,
DIMENSION(KI) :: zustar_town
265 REAL,
DIMENSION(KI) :: zcd
266 REAL,
DIMENSION(KI) :: zcdn
267 REAL,
DIMENSION(KI) :: zch_town
268 REAL,
DIMENSION(KI) :: zri_town
269 REAL,
DIMENSION(KI) :: zresa_town
270 REAL,
DIMENSION(KI) :: zdqs_town
271 REAL,
DIMENSION(KI) :: zqf_town
272 REAL,
DIMENSION(KI) :: zqf_bld
273 REAL,
DIMENSION(KI) :: zflx_bld
274 REAL,
DIMENSION(KI) :: zac_roof
275 REAL,
DIMENSION(KI) :: zac_road
276 REAL,
DIMENSION(KI) :: zac_wall
277 REAL,
DIMENSION(KI) :: zac_top
278 REAL,
DIMENSION(KI) :: zac_garden
279 REAL,
DIMENSION(KI) :: zac_roof_wat
280 REAL,
DIMENSION(KI) :: zac_road_wat
281 REAL,
DIMENSION(KI) :: zh_bld_cool
282 REAL,
DIMENSION(KI) :: zt_bld_cool
283 REAL,
DIMENSION(KI) :: zh_bld_heat
284 REAL,
DIMENSION(KI) :: zle_bld_cool
285 REAL,
DIMENSION(KI) :: zle_bld_heat
286 REAL,
DIMENSION(KI) :: zh_waste
287 REAL,
DIMENSION(KI) :: zle_waste
288 REAL,
DIMENSION(KI) :: zhvac_cool
289 REAL,
DIMENSION(KI) :: zhvac_heat
290 REAL,
DIMENSION(KI) :: zt_win2
291 REAL,
DIMENSION(KI) :: zqi_bld
292 REAL,
DIMENSION(KI) :: zm_sys
293 REAL,
DIMENSION(KI) :: zq_sys
294 REAL,
DIMENSION(KI) :: zt_sys
295 REAL,
DIMENSION(KI) :: ztr_sw_win
296 REAL,
DIMENSION(KI) :: zfan_power
297 REAL,
DIMENSION(KI) :: zabs_lw_win
298 REAL,
DIMENSION(KI) :: zemit_lw_fac
299 REAL,
DIMENSION(KI) :: zemit_lw_road
300 REAL,
DIMENSION(KI) :: zt_rad_ind
301 REAL,
DIMENSION(KI) :: zhu_bld
302 REAL,
DIMENSION(KI) :: ztsun
303 REAL,
DIMENSION(KI) :: zzenith
304 REAL,
DIMENSION(KI) :: zazim
305 REAL,
DIMENSION(KI) :: zalb_garden
306 REAL,
DIMENSION(KI) :: zalb_greenroof
307 REAL,
DIMENSION(KI) :: zaux_max
308 REAL,
DIMENSION(KI) :: zcap_sys
309 REAL,
DIMENSION(KI) :: zcop
310 REAL,
DIMENSION(KI) :: zpew_a_coef
311 REAL,
DIMENSION(KI) :: zpew_b_coef
312 REAL,
DIMENSION(KI) :: ztot_sw
313 REAL,
DIMENSION(KI) :: ztout_eq
314 REAL,
DIMENSION(KI) :: zt_sky
315 REAL,
DIMENSION(KI) :: zf_water_cond
318 REAL,
DIMENSION(KI) :: ze_shading
319 LOGICAL,
DIMENSION(KI) :: gshad_day
320 LOGICAL,
DIMENSION(KI) :: gshade
321 LOGICAL,
DIMENSION(KI) :: gnatvent_night
323 CHARACTER(LEN=6) :: ycool_coil
324 CHARACTER(LEN=6) :: yheat_coil
325 CHARACTER(LEN=4),
DIMENSION(KI) :: ynatvent
328 REAL,
DIMENSION(KI) :: zrn_greenroof
329 REAL,
DIMENSION(KI) :: zh_greenroof
330 REAL,
DIMENSION(KI) :: zle_greenroof
331 REAL,
DIMENSION(KI) :: zgflux_greenroof
332 REAL,
DIMENSION(KI) :: zrunoff_greenroof
333 REAL,
DIMENSION(KI) :: zdrain_greenroof
334 REAL,
DIMENSION(KI) :: zuw_greenroof
335 REAL,
DIMENSION(KI) :: zg_greenroof_roof
336 REAL,
DIMENSION(KI) :: zrn_strlroof
337 REAL,
DIMENSION(KI) :: zh_strlroof
338 REAL,
DIMENSION(KI) :: zle_strlroof
339 REAL,
DIMENSION(KI) :: zgflux_strlroof
340 REAL,
DIMENSION(KI) :: zrunoff_strlroof
343 LOGICAL :: gpar_rd_irrig = .false.
344 REAL,
DIMENSION(KI) :: zrd_start_month
345 REAL,
DIMENSION(KI) :: zrd_end_month
346 REAL,
DIMENSION(KI) :: zrd_start_hour
347 REAL,
DIMENSION(KI) :: zrd_end_hour
348 REAL,
DIMENSION(KI) :: zrd_24h_irrig
349 REAL,
DIMENSION(KI) :: zirrig_road
351 INTEGER,
DIMENSION(:),
ALLOCATABLE :: isize_omp
355 INTEGER :: inblocktot
358 REAL(KIND=JPRB) :: zhook_handle
363 IF (lhook) CALL dr_hook(
'HVAC_AUTOSIZE',0,zhook_handle)
365 himplicit_wind =
'NEW'
382 b%CUR%XM_SYS_RAT = 0.
383 b%CUR%XCAP_SYS_RAT = 0.
384 b%CUR%XCAP_SYS_HEAT = 0.
393 inb_step_atm = 3600*24*4/pptstep
395 zexns = (zps/xp00)**(xrd/xcpd)
396 zexna = (zpa/xp00)**(xrd/xcpd)
428 gnatvent_night(:) = .false.
430 gshad_day(:) = .false.
436 zrn_greenroof(:) = 0.
438 zle_greenroof(:) = 0.
439 zgflux_greenroof(:) = 0.
440 zuw_greenroof(:) = 0.
441 zrunoff_greenroof(:) = 0.
442 zdrain_greenroof(:) = 0.
444 zg_greenroof_roof(:) = 0.
456 ycool_coil =
'IDEAL '
457 yheat_coil =
'IDEAL '
459 zf_water_cond(:) = 0.
461 ztout_eq(:) = (b%CUR%XT_SIZE_MIN(:) + zt_sky(:))/2.
464 DO jj=1,top%NROOF_LAYER
465 zu_roof(:) = zu_roof(:) + t%CUR%XD_ROOF(:,jj)/t%CUR%XTC_ROOF(:,jj)
467 zu_roof(:) = zu_roof(:) + 1./10. + 1./25.
468 zu_roof(:) = 1. / zu_roof(:)
471 DO jj=1,top%NWALL_LAYER
472 zu_wall(:) = zu_wall(:) + t%CUR%XD_WALL(:,jj)/t%CUR%XTC_WALL(:,jj)
474 zu_wall(:) = zu_wall(:) + 1./10. + 1./25.
475 zu_wall(:) = 1. / zu_wall(:)
478 b%CUR%XCAP_SYS_HEAT(:) = zu_wall(:) * t%CUR%XWALL_O_BLD(:) * (b%CUR%XTHEAT_TARGET(:) - ztout_eq(:)) &
479 + b%CUR%XU_WIN(:) * b%CUR%XGLAZ_O_BLD(:) * (b%CUR%XTHEAT_TARGET(:) - ztout_eq(:)) &
480 + zu_roof(:) * (b%CUR%XTHEAT_TARGET(:) - ztout_eq(:)) &
481 - b%CUR%XQIN(:) * t%CUR%XBLD_HEIGHT(:) / b%CUR%XFLOOR_HEIGHT(:)* &
482 (1 - b%CUR%XQIN_FLAT(:)) &
483 + b%CUR%XINF(:) * t%CUR%XBLD_HEIGHT(:) / 3600* zrhoa(:) * xcpd * &
484 (b%CUR%XTHEAT_TARGET(:) - b%CUR%XT_SIZE_MIN(:)) &
485 + b%CUR%XV_VENT(:) * t%CUR%XBLD_HEIGHT(:) / 3600* zrhoa(:) * xcpd * &
486 (b%CUR%XTHEAT_TARGET(:) - b%CUR%XT_SIZE_MIN(:))
489 b%CUR%XM_SYS_RAT(:) = b%CUR%XCAP_SYS_HEAT(:)/xcpd/(323.15 - b%CUR%XTHEAT_TARGET(:))
498 zt_canyon(:) = 10.7/2 * sin(2*xpi/(24*3600) * (ztime+16*3600)) + (b%CUR%XT_SIZE_MAX(:)-10.7/2)
501 zti_bld(jj) = max(b%CUR%XTHEAT_TARGET(jj),zt_canyon(jj))
503 zt_roof(:,top%NROOF_LAYER) = zti_bld(:)
504 zt_wall_a(:,top%NWALL_LAYER) = zti_bld(:)
505 DO jj=1,bop%NFLOOR_LAYER
506 zt_floor(:,jj) = zti_bld(:)
507 zt_mass(:,jj) = zti_bld(:)
511 DO jj=1,top%NROAD_LAYER
512 zt_road(:,jj) = zt_canyon(:)
515 zt_roof(:,1) = zt_canyon(:)
517 ztn(:)=zt_roof(:,top%NROOF_LAYER)
518 IF (top%NROOF_LAYER .GT. 2) CALL
interp_proftwall(zt1, ztn, t%CUR%XD_ROOF, zt_roof)
520 zt_wall_a(:,1) = zt_canyon(:)
521 zt1(:)=zt_wall_a(:,1)
522 ztn(:)=zt_wall_a(:,top%NWALL_LAYER)
523 IF (top%NWALL_LAYER .GT. 2) CALL
interp_proftwall(zt1, ztn, t%CUR%XD_WALL, zt_wall_a)
524 zt_wall_b = zt_wall_a
526 zt_win1(:) = zt_canyon(:)
528 zt_win2(:) = zti_bld(:)
536 zroad(:) = t%CUR%XROAD(:)+t%CUR%XGARDEN(:)
539 zalb_greenroof(:) = 0.
550 ALLOCATE(isize_omp(0:inblocktot-1))
552 inblocktot,ki,0,isize_omp)
554 ALLOCATE(isize_omp(0:0))
559 DO jforc_step= 1,inb_step_atm
562 zt_canyon(:) = 10.7/2 * sin(2*xpi/(24*3600) * (ztime+16*3600)) &
563 + (b%CUR%XT_SIZE_MAX(:)-10.7/2)
564 zta(:) = zt_canyon(:)
570 CALL
sunpos(isize_omp, jpyear, imonth, iday, ztime, tg%XLON, tg%XLAT, ztsun, zzenith, zazim)
574 zdir_sw(:) = 0.88 * ztot_sw(:) * 0.85
575 zsca_sw(:) = 0.12 * ztot_sw(:) * 0.85
576 WHERE (zdir_sw < 0.0)
579 WHERE (zsca_sw < 0.0)
585 zdir_sw, zsca_sw, zzenith, zazim, &
586 t%CUR%XBLD, zgarden, t%CUR%XROAD_DIR, t%CUR%XROAD, t%CUR%XGREENROOF, &
587 t%CUR%XWALL_O_HOR, t%CUR%XCAN_HW_RATIO, &
589 t%CUR%XALB_ROAD, t%CUR%XSVF_ROAD, t%CUR%XALB_WALL, t%CUR%XSVF_WALL, &
590 zfrac_panel, zalb_panel, &
591 zalb_garden, zsvf_garden, &
593 zasnow_roof, zasnow_road, &
594 zdn_roof, zdf_roof, zdn_road, zdf_road, &
595 b%CUR%XGR, b%CUR%XABS_WIN, b%CUR%XSHGC, b%CUR%XSHGC_SH, b%CUR%XALB_WIN, &
596 zabs_sw_roof, zabs_sw_road, &
597 zabs_sw_wall_a, zabs_sw_wall_b, &
598 zabs_sw_garden, zabs_sw_greenroof, &
599 zabs_sw_snow_roof, zabs_sw_snow_road, &
601 zrec_sw_road, zrec_sw_snow_road, &
602 zrec_sw_wall_a, zrec_sw_wall_b, &
603 zrec_sw_garden, zrec_sw_roof, &
604 zdir_alb_town,zsca_alb_town, &
605 zsw_rad_garden, zabs_sw_win, zrec_sw_win, &
607 zref_sw_grnd, zref_sw_fac, ztr_sw_win, &
608 ze_shading, gshad_day, gshade )
615 t%CUR%XEMIS_ROAD, t%CUR%XSVF_ROAD, t%CUR%XEMIS_WALL, t%CUR%XSVF_WALL, &
616 zemis_garden, t%CUR%XROAD, zgarden, &
618 ztssnow_road, zt_wall_a(:,1), zt_wall_b(:,1), &
619 zt_road(:,1), zts_garden, zt_win1, &
620 zlw_wa_to_wb, zlw_wa_to_r, zlw_wb_to_r, &
621 zlw_wa_to_nr,zlw_wb_to_nr, &
622 zlw_wa_to_g, zlw_wb_to_g, &
623 zlw_wa_to_win, zlw_wb_to_win, &
624 zlw_r_to_wa, zlw_r_to_wb, zlw_r_to_win, &
625 zlw_g_to_wa, zlw_g_to_wb, zlw_g_to_win, &
626 zlw_s_to_wa, zlw_s_to_wb, zlw_s_to_r, &
627 zlw_s_to_nr, zlw_s_to_g, zlw_s_to_win, &
628 zlw_win_to_wa, zlw_win_to_wb, zlw_win_to_r, &
629 zlw_win_to_nr, zlw_win_to_g, &
630 zlw_nr_to_wa, zlw_nr_to_wb, zlw_nr_to_win )
635 CALL
teb(hz0h, himplicit_wind, top%CWALL_OPT, ybem, &
637 zt_canyon, zq_canyon, zu_canyon, &
638 zt_canyon, zq_canyon, zu_canyon, zz_lowcan, zti_bld, &
639 zt_roof, zt_road, zt_wall_a, zt_wall_b, &
640 zws_roof, zws_road, &
641 hsnow_roof, zwsnow_roof, ztsnow_roof, zrsnow_roof, &
642 zasnow_roof, ztssnow_roof, zesnow_roof, &
643 hsnow_road, zwsnow_road, ztsnow_road, zrsnow_road, &
644 zasnow_road, ztssnow_road, zesnow_road, &
645 zpew_a_coef, zpew_b_coef, &
646 zpew_a_coef, zpew_b_coef, &
647 zps, zpa, zexns, zexna, zta, zqa, zrhoa, zlw_rad, &
648 zrr, zsr, zzref, zzref, zu_canyon, &
649 t%CUR%XH_TRAFFIC, t%CUR%XLE_TRAFFIC, t%CUR%XH_INDUSTRY, t%CUR%XLE_INDUSTRY, &
650 pptstep, t%CUR%XZ0_TOWN, t%CUR%XBLD, zgarden, t%CUR%XROAD, t%CUR%XGREENROOF, &
651 t%CUR%XBLD_HEIGHT, t%CUR%XWALL_O_HOR, t%CUR%XCAN_HW_RATIO, t%CUR%XWALL_O_GRND, &
652 zdf_roof, zdn_roof, zdf_road, &
653 zdn_road, zqsat_roof, zqsat_road, zdelt_roof, zdelt_road,&
654 t%CUR%XEMIS_ROOF, t%CUR%XHC_ROOF, t%CUR%XTC_ROOF, t%CUR%XD_ROOF, &
655 t%CUR%XEMIS_ROAD, t%CUR%XHC_ROAD, t%CUR%XTC_ROAD, &
656 t%CUR%XD_ROAD, t%CUR%XEMIS_WALL, zts_garden, &
657 t%CUR%XHC_WALL, t%CUR%XTC_WALL, t%CUR%XD_WALL, zrn_roof, zh_roof, zle_roof,&
658 zlew_roof, zgflux_roof, zrunoff_roof, &
659 zrn_greenroof, zh_greenroof, zle_greenroof, &
660 zgflux_greenroof, zuw_greenroof, &
661 zrunoff_greenroof,zdrain_greenroof, &
662 zrn_strlroof, zh_strlroof, zle_strlroof, zgflux_strlroof,&
665 zle_road, zlew_road, zgflux_road, zrunoff_road, &
666 zrn_wall_a, zh_wall_a, zle_wall_a, zgflux_wall_a, &
667 zrn_wall_b, zh_wall_b, zle_wall_b, zgflux_wall_b, &
668 zrn_blt, zh_blt, zle_blt, zgflux_blt, &
669 zrnsnow_roof, zhsnow_roof, zlesnow_roof, zgsnow_roof, &
671 zrnsnow_road, zhsnow_road, zlesnow_road, zgsnow_road, &
674 zuw_road, zuw_roof, zduwdu_road, zduwdu_roof, &
675 zustar_town, zcd, zcdn, zch_town, zri_town, &
676 zresa_town, zdqs_town, zqf_town, zqf_bld, zflx_bld, &
677 zac_roof, zac_road, zac_wall, zac_top, zac_garden, &
678 zac_roof_wat, zac_road_wat, zabs_sw_roof, zabs_lw_roof, &
679 zabs_sw_snow_roof, zabs_lw_snow_roof, zabs_sw_road, &
680 zabs_lw_road, zabs_sw_snow_road, zabs_lw_snow_road, &
681 zabs_sw_wall_a, zabs_lw_wall_a, &
682 zabs_sw_wall_b, zabs_lw_wall_b, &
684 zlw_wa_to_r, zlw_wb_to_r, &
685 zlw_wa_to_nr, zlw_wb_to_nr, &
686 zlw_r_to_wa, zlw_r_to_wb, &
687 zlw_g_to_wa, zlw_g_to_wb, &
688 zlw_s_to_wa, zlw_s_to_wb, zlw_s_to_r, &
689 zlw_s_to_nr, zlw_nr_to_wa, zlw_nr_to_wb, &
690 zlw_nr_to_win, zlw_wa_to_win, zlw_wb_to_win, &
692 zlw_r_to_win, zlw_s_to_win, zlw_win_to_wa, zlw_win_to_wb,&
693 zlw_win_to_r, zlw_win_to_nr, &
695 ycool_coil, zf_water_cond, yheat_coil, bop%LAUTOSIZE, &
696 iday, zaux_max, zt_floor, zt_mass, zh_bld_cool, &
697 zt_bld_cool, zh_bld_heat, zle_bld_cool, zle_bld_heat, &
698 zh_waste, zle_waste, b%CUR%XF_WASTE_CAN, zhvac_cool, zhvac_heat,&
699 b%CUR%XQIN, b%CUR%XQIN_FRAD, b%CUR%XQIN_FLAT, b%CUR%XGR, b%CUR%XEFF_HEAT, &
700 b%CUR%XINF, b%CUR%XTCOOL_TARGET, b%CUR%XTHEAT_TARGET, b%CUR%XHR_TARGET, zt_win2, &
701 zqi_bld, b%CUR%XV_VENT, b%CUR%XCAP_SYS_HEAT, b%CUR%XCAP_SYS_RAT, b%CUR%XT_ADP, &
702 b%CUR%XM_SYS_RAT, b%CUR%XCOP_RAT, zcap_sys, zm_sys, zcop, zq_sys, &
703 zt_sys, ztr_sw_win, zfan_power, b%CUR%XHC_FLOOR, b%CUR%XTC_FLOOR, &
704 b%CUR%XD_FLOOR, zt_win1, zabs_sw_win, zabs_lw_win, &
705 b%CUR%XUGG_WIN, zemit_lw_fac, &
706 zemit_lw_road, zt_rad_ind, zhu_bld, ztime, ze_shading, &
707 gnatvent_night(:), b%CUR%XN_FLOOR, t%CUR%XWALL_O_BLD, b%CUR%XGLAZ_O_BLD, &
708 b%CUR%XMASS_O_BLD, b%CUR%XFLOOR_HW_RATIO, b%CUR%XF_FLOOR_MASS, b%CUR%XF_FLOOR_WALL, &
709 b%CUR%XF_FLOOR_WIN, b%CUR%XF_FLOOR_ROOF, b%CUR%XF_WALL_FLOOR, b%CUR%XF_WALL_MASS, &
710 b%CUR%XF_WALL_WIN, b%CUR%XF_WIN_FLOOR, b%CUR%XF_WIN_MASS, b%CUR%XF_WIN_WALL, &
711 b%CUR%XF_MASS_FLOOR, b%CUR%XF_MASS_WALL, b%CUR%XF_MASS_WIN, gcanopy, ych_bem, &
712 t%CUR%XROUGH_ROOF, t%CUR%XROUGH_WALL, b%CUR%XF_WIN_WIN, &
713 gpar_rd_irrig, zrd_start_month, zrd_end_month, &
714 zrd_start_hour, zrd_end_hour, zrd_24h_irrig, zirrig_road )
718 ztime = ztime + pptstep
719 IF (ztime >= 86400)
THEN
734 WRITE(kluout,*)
' --------------------------------'
735 WRITE(kluout,*)
' HVAC AUTOSIZE CALCULATIONS '
737 WRITE(kluout,*)
' Rated mass flow rate:'
738 WRITE(kluout,*)
' ',maxval(b%CUR%XM_SYS_RAT),
'kg s-1 m-2(bld)'
739 WRITE(kluout,*)
' ',minval(b%CUR%XM_SYS_RAT),
'kg s-1 m-2(bld)'
740 WRITE(kluout,*)
' Rated cooling system capacity:'
741 WRITE(kluout,*)
' ',maxval(b%CUR%XCAP_SYS_RAT),
'W m-2(bld)'
742 WRITE(kluout,*)
' ',minval(b%CUR%XCAP_SYS_RAT),
'W m-2(bld)'
743 WRITE(kluout,*)
' Rated heating sysem capacity:'
744 WRITE(kluout,*)
' ',maxval(b%CUR%XCAP_SYS_HEAT),
'W m-2(bld)'
745 WRITE(kluout,*)
' ',minval(b%CUR%XCAP_SYS_HEAT),
'W m-2(bld)'
746 WRITE(kluout,*)
' --------------------------------'
748 IF (lhook) CALL dr_hook(
'HVAC_AUTOSIZE',1,zhook_handle)
755 REAL,
DIMENSION(:),
INTENT(IN) :: pt1
756 REAL,
DIMENSION(:),
INTENT(IN) :: ptn
757 REAL,
DIMENSION(:,:),
INTENT(IN) :: pd
758 REAL,
DIMENSION(:,:),
INTENT(OUT) :: pt
761 REAL,
DIMENSION(SIZE(PT1)) :: zdn
762 REAL,
DIMENSION(SIZE(PT1)) :: zd
767 zdn(ji) = 0.5 * pd(ji,1)
769 zdn(ji) = zdn(ji) + pd(ji,jj)
771 zdn(ji) = zdn(ji) + 0.5 * pd(ji,ilayer)
774 zd(ji) = 0.5*pd(ji,1)
776 zd(ji) = zd(ji) + 0.5*pd(ji,jj)
777 pt(ji,jj) = pt1(ji) + (ptn(ji)-pt1(ji)) / zdn(ji) * zd(ji)
778 zd(ji) = zd(ji) + 0.5 * pd(ji,jj)
781 pt(ji,ilayer) = ptn(ji)
subroutine get_sizes_parallel(DTCO, DGU, UG, U, KPROC, KSIZE, KPROCMIN, KSIZE_TASK, OSHADOWS)
subroutine sw_daycycle(KI, PZENITH, PTOT_SW)
subroutine urban_lw_coef(PGR, PBLD, PLW_RAD, PEMIS_R, PSVF_R, PEMIS_W, PSVF_W, PEMIS_G, PROAD, PGARDEN, PESNOW_R, PTS_SR, PTS_W_A, PTS_W_B, PTS_R, PTS_G, PTS_WIN, PLW_WA_TO_WB, PLW_WA_TO_R, PLW_WB_TO_R, PLW_WA_TO_NR, PLW_WB_TO_NR, PLW_WA_TO_G, PLW_WB_TO_G, PLW_WA_TO_WIN, PLW_WB_TO_WIN, PLW_R_TO_WA, PLW_R_TO_WB, PLW_R_TO_WIN, PLW_G_TO_WA, PLW_G_TO_WB, PLW_G_TO_WIN, PLW_S_TO_WA, PLW_S_TO_WB, PLW_S_TO_R, PLW_S_TO_NR, PLW_S_TO_G, PLW_S_TO_WIN, PLW_WIN_TO_WA, PLW_WIN_TO_WB, PLW_WIN_TO_R, PLW_WIN_TO_NR, PLW_WIN_TO_G, PLW_NR_TO_WA, PLW_NR_TO_WB, PLW_NR_TO_WIN)
subroutine interp_proftwall(PT1, PTN, PD, PT)
subroutine sunpos(KSIZE_OMP, KYEAR, KMONTH, KDAY, PTIME, PLON, PLAT, PTSUN, PZENITH, PAZIMSOL)
subroutine hvac_autosize(BDD, DTCO, DGU, B, BOP, UG, U, TG, T, TOP, KI, KLUOUT)
subroutine urban_solar_abs(HBEM, HROAD_DIR, HWALL_OPT, PDIR_SW, PSCA_SW, PZENITH, PAZIM, PBLD, PGARDEN, PROAD_DIR, PROAD, PFRAC_GR, PWALL_O_HOR, PCAN_HW_RATIO, PALB_ROOF, PALB_ROAD, PSVF_ROAD, PALB_WALL, PSVF_WALL, PFRAC_PANEL, PALB_PANEL, PALB_GARDEN, PSVF_GARDEN, PALB_GREENROOF, PASNOW_ROOF, PASNOW_ROAD, PDN_ROOF, PDF_ROOF, PDN_ROAD, PDF_ROAD, PGR, PABS_WIN, PSHGC, PSHGC_SH, PALB_WIN, PABS_SW_ROOF, PABS_SW_ROAD, PABS_SW_WALL_A, PABS_SW_WALL_B, PABS_SW_GARDEN, PABS_SW_GREENROOF, PABS_SW_SNOW_ROOF, PABS_SW_SNOW_ROAD, PABS_SW_SOLAR_PANEL, PREC_SW_ROAD, PREC_SW_SNOW_ROAD, PREC_SW_WALL_A, PREC_SW_WALL_B, PREC_SW_GARDEN, PREC_SW_ROOF, PDIR_ALB_TOWN, PSCA_ALB_TOWN, PSW_RAD_GARDEN, PABS_SW_WIN, PREC_SW_WIN, PTRAN_WIN, PREF_SW_GRND, PREF_SW_FAC, PTR_SW_WIN, PE_SHADING, OSHAD_DAY, OSHADE)
subroutine teb(HZ0H, HIMPLICIT_WIND, HWALL_OPT, HBEM, TPTIME, PTSUN, PT_CANYON, PQ_CANYON, PU_CANYON, PT_LOWCAN, PQ_LOWCAN, PU_LOWCAN, PZ_LOWCAN, PTI_BLD, PT_ROOF, PT_ROAD, PT_WALL_A, PT_WALL_B, PWS_ROOF, PWS_ROAD, HSNOW_ROOF, PWSNOW_ROOF, PTSNOW_ROOF, PRSNOW_ROOF, PASNOW_ROOF, PTSSNOW_ROOF, PESNOW_ROOF, HSNOW_ROAD, PWSNOW_ROAD, PTSNOW_ROAD, PRSNOW_ROAD, PASNOW_ROAD, PTSSNOW_ROAD, PESNOW_ROAD, PPEW_A_COEF, PPEW_B_COEF, PPEW_A_COEF_LOWCAN, PPEW_B_COEF_LOWCAN, PPS, PPA, PEXNS, PEXNA, PTA, PQA, PRHOA, PLW_RAD, PRR, PSR, PZREF, PUREF, PVMOD, PH_TRAFFIC, PLE_TRAFFIC, PH_INDUSTRY, PLE_INDUSTRY, PTSTEP, PZ0_TOWN, PBLD, PGARDEN, PROAD, PFRAC_GR, PBLD_HEIGHT, PWALL_O_HOR, PCAN_HW_RATIO, PWALL_O_GRND, PDF_ROOF, PDN_ROOF, PDF_ROAD, PDN_ROAD, PQSAT_ROOF, PQSAT_ROAD, PDELT_ROOF, PDELT_ROAD, PEMIS_ROOF, PHC_ROOF, PTC_ROOF, PD_ROOF, PEMIS_ROAD, PHC_ROAD, PTC_ROAD, PD_ROAD, PEMIS_WALL, PTS_GARDEN, PHC_WALL, PTC_WALL, PD_WALL, PRN_ROOF, PH_ROOF, PLE_ROOF, PLEW_ROOF, PGFLUX_ROOF, PRUNOFF_ROOF, PRN_GREENROOF, PH_GREENROOF, PLE_GREENROOF, PGFLUX_GREENROOF, PUW_GREENROOF, PRUNOFF_GREENROOF, PDRAIN_GREENROOF, PRN_STRLROOF, PH_STRLROOF, PLE_STRLROOF, PGFLUX_STRLROOF, PRUNOFF_STRLROOF, PRN_ROAD, PH_ROAD, PLE_ROAD, PLEW_ROAD, PGFLUX_ROAD, PRUNOFF_ROAD, PRN_WALL_A, PH_WALL_A, PLE_WALL_A, PGFLUX_WALL_A, PRN_WALL_B, PH_WALL_B, PLE_WALL_B, PGFLUX_WALL_B, PRN_BLT, PH_BLT, PLE_BLT, PGFLUX_BLT, PRNSNOW_ROOF, PHSNOW_ROOF, PLESNOW_ROOF, PGSNOW_ROOF, PMELT_ROOF, PRNSNOW_ROAD, PHSNOW_ROAD, PLESNOW_ROAD, PGSNOW_ROAD, PMELT_ROAD, PG_GREENROOF_ROOF, PUW_ROAD, PUW_ROOF, PDUWDU_ROAD, PDUWDU_ROOF, PUSTAR_TOWN, PCD, PCDN, PCH_TOWN, PRI_TOWN, PRESA_TOWN, PDQS_TOWN, PQF_TOWN, PQF_BLD, PFLX_BLD, PAC_ROOF, PAC_ROAD, PAC_WALL, PAC_TOP, PAC_GARDEN, PAC_ROOF_WAT, PAC_ROAD_WAT, PABS_SW_ROOF, PABS_LW_ROOF, PABS_SW_SNOW_ROOF, PABS_LW_SNOW_ROOF, PABS_SW_ROAD, PABS_LW_ROAD, PABS_SW_SNOW_ROAD, PABS_LW_SNOW_ROAD, PABS_SW_WALL_A, PABS_LW_WALL_A, PABS_SW_WALL_B, PABS_LW_WALL_B, PLW_WA_TO_WB, PLW_WA_TO_R, PLW_WB_TO_R, PLW_WA_TO_NR, PLW_WB_TO_NR, PLW_R_TO_WA, PLW_R_TO_WB, PLW_G_TO_WA, PLW_G_TO_WB, PLW_S_TO_WA, PLW_S_TO_WB, PLW_S_TO_R, PLW_S_TO_NR, PLW_NR_TO_WA, PLW_NR_TO_WB, PLW_NR_TO_WIN, PLW_WA_TO_WIN, PLW_WB_TO_WIN, PLW_G_TO_WIN, PLW_R_TO_WIN, PLW_S_TO_WIN, PLW_WIN_TO_WA, PLW_WIN_TO_WB, PLW_WIN_TO_R, PLW_WIN_TO_NR, HNATVENT, HCOOL_COIL, PF_WATER_COND, HHEAT_COIL, OAUTOSIZE, KDAY, PAUX_MAX, PT_FLOOR, PT_MASS, PH_BLD_COOL, PT_BLD_COOL, PH_BLD_HEAT, PLE_BLD_COOL, PLE_BLD_HEAT, PH_WASTE, PLE_WASTE, PF_WASTE_CAN, PHVAC_COOL, PHVAC_HEAT, PQIN, PQIN_FRAD, PQIN_FLAT, PGR, PEFF_HEAT, PINF, PTCOOL_TARGET, PTHEAT_TARGET, PHR_TARGET, PT_WIN2, PQI_BLD, PV_VENT, PCAP_SYS_HEAT, PCAP_SYS_RAT, PT_ADP, PM_SYS_RAT, PCOP_RAT, PCAP_SYS, PM_SYS, PCOP, PQ_SYS, PT_SYS, PTR_SW_WIN, PFAN_POWER, PHC_FLOOR, PTC_FLOOR, PD_FLOOR, PT_WIN1, PABS_SW_WIN, PABS_LW_WIN, PUGG_WIN, PEMIT_LW_FAC, PEMIT_LW_ROAD, PT_RAD_IND, PHU_BLD, PTIME, PE_SHADING, ONATVENT_NIGHT, PN_FLOOR, PWALL_O_BLD, PGLAZ_O_BLD, PMASS_O_BLD, PFLOOR_HW_RATIO, PF_FLOOR_MASS, PF_FLOOR_WALL, PF_FLOOR_WIN, PF_FLOOR_ROOF, PF_WALL_FLOOR, PF_WALL_MASS, PF_WALL_WIN, PF_WIN_FLOOR, PF_WIN_MASS, PF_WIN_WALL, PF_MASS_FLOOR, PF_MASS_WALL, PF_MASS_WIN, OCANOPY, HCH_BEM, PROUGH_ROOF, PROUGH_WALL, PF_WIN_WIN, OPAR_RD_IRRIG, PRD_START_MONTH, PRD_END_MONTH, PRD_START_HOUR, PRD_END_HOUR, PRD_24H_IRRIG, PIRRIG_ROAD)