46 USE modi_urban_lw_coef
47 USE modi_urban_solar_abs
48 USE modi_get_sizes_parallel
49 USE modi_diag_misc_teb_init_n
67 TYPE(
bem_t),
INTENT(INOUT) :: B
69 TYPE(
grid_t),
INTENT(INOUT) :: G
70 TYPE(
teb_t),
INTENT(INOUT) :: T
73 INTEGER,
INTENT(IN) :: KI
74 INTEGER,
INTENT(IN) :: KLUOUT
89 CHARACTER(LEN=3) :: YBEM
90 CHARACTER(LEN=6) :: YZ0H
91 CHARACTER(LEN=5) :: YCH_BEM
95 REAL,
DIMENSION(KI) :: ZGD
99 CHARACTER(LEN=6) :: YCOOL_COIL
100 CHARACTER(LEN=6) :: YHEAT_COIL
103 CHARACTER(LEN=4),
DIMENSION(KI) :: YNATVENT
104 REAL,
DIMENSION(KI) :: ZF_WATER_COND
105 REAL,
DIMENSION(KI) :: ZAUX_MAX
106 REAL,
DIMENSION(KI) :: ZT_WIN2
107 LOGICAL,
DIMENSION(KI) :: GNATVENT_NIGHT
115 REAL,
PARAMETER :: ZTSTEP = 300.
116 INTEGER,
PARAMETER :: JPYEAR = 2004
120 INTEGER :: IMONTH = 7
124 CHARACTER(LEN=3) :: YIMPLICIT_WIND =
'NEW' 129 INTEGER :: JFORC_STEP
130 INTEGER :: INB_STEP_ATM
134 REAL,
DIMENSION(KI) :: ZU_RF
135 REAL,
DIMENSION(KI) :: ZU_WL
137 REAL,
DIMENSION(KI) :: ZT1
138 REAL,
DIMENSION(KI) :: ZTN
140 REAL,
DIMENSION(KI) :: ZT_SKY
142 REAL,
DIMENSION(KI) :: ZTOT_SW
143 REAL,
DIMENSION(KI) :: ZTOUT_EQ
147 REAL,
DIMENSION(KI) :: ZT_CAN
148 REAL,
DIMENSION(KI) :: ZQ_CAN
149 REAL,
DIMENSION(KI) :: ZU_CAN
150 REAL,
DIMENSION(KI) :: ZZ_LOWCAN
152 REAL,
DIMENSION(KI) :: ZPS
153 REAL,
DIMENSION(KI) :: ZPA
154 REAL,
DIMENSION(KI) :: ZEXNS
155 REAL,
DIMENSION(KI) :: ZEXNA
156 REAL,
DIMENSION(KI) :: ZTA
157 REAL,
DIMENSION(KI) :: ZQA
158 REAL,
DIMENSION(KI) :: ZRHOA
159 REAL,
DIMENSION(KI) :: ZLW_RAD
160 REAL,
DIMENSION(KI) :: ZRR
161 REAL,
DIMENSION(KI) :: ZSR
162 REAL,
DIMENSION(KI) :: ZZREF
164 REAL,
DIMENSION(KI) :: ZPEW_A_COEF
165 REAL,
DIMENSION(KI) :: ZPEW_B_COEF
167 REAL,
DIMENSION(KI) :: ZTS_GD
169 REAL,
DIMENSION(KI) :: ZDF_RF
170 REAL,
DIMENSION(KI) :: ZDN_RF
171 REAL,
DIMENSION(KI) :: ZDN_RD
172 REAL,
DIMENSION(KI) :: ZDF_RD
174 REAL,
DIMENSION(KI) :: ZQSAT_RF
175 REAL,
DIMENSION(KI) :: ZQSAT_RD
176 REAL,
DIMENSION(KI) :: ZDELT_RF
177 REAL,
DIMENSION(KI) :: ZDELT_RD
179 CHARACTER(LEN=4) :: YSNOW_RF
180 CHARACTER(LEN=4) :: YSNOW_RD
182 REAL,
DIMENSION(KI) :: ZLW_WA_TO_WB
183 REAL,
DIMENSION(KI) :: ZLW_WA_TO_R
184 REAL,
DIMENSION(KI) :: ZLW_WB_TO_R
185 REAL,
DIMENSION(KI) :: ZLW_WA_TO_NR
186 REAL,
DIMENSION(KI) :: ZLW_WB_TO_NR
187 REAL,
DIMENSION(KI) :: ZLW_R_TO_WA
188 REAL,
DIMENSION(KI) :: ZLW_R_TO_WB
189 REAL,
DIMENSION(KI) :: ZLW_G_TO_WA
190 REAL,
DIMENSION(KI) :: ZLW_G_TO_WB
191 REAL,
DIMENSION(KI) :: ZLW_S_TO_WA
192 REAL,
DIMENSION(KI) :: ZLW_S_TO_WB
193 REAL,
DIMENSION(KI) :: ZLW_S_TO_R
194 REAL,
DIMENSION(KI) :: ZLW_S_TO_NR
195 REAL,
DIMENSION(KI) :: ZLW_NR_TO_WA
196 REAL,
DIMENSION(KI) :: ZLW_NR_TO_WB
197 REAL,
DIMENSION(KI) :: ZLW_NR_TO_WIN
198 REAL,
DIMENSION(KI) :: ZLW_WA_TO_WIN
199 REAL,
DIMENSION(KI) :: ZLW_WB_TO_WIN
200 REAL,
DIMENSION(KI) :: ZLW_G_TO_WIN
201 REAL,
DIMENSION(KI) :: ZLW_R_TO_WIN
202 REAL,
DIMENSION(KI) :: ZLW_S_TO_WIN
203 REAL,
DIMENSION(KI) :: ZLW_WIN_TO_WA
204 REAL,
DIMENSION(KI) :: ZLW_WIN_TO_WB
205 REAL,
DIMENSION(KI) :: ZLW_WIN_TO_R
206 REAL,
DIMENSION(KI) :: ZLW_WIN_TO_NR
208 REAL,
DIMENSION(KI) :: ZLEW_RF
210 REAL,
DIMENSION(KI) :: ZLEW_RD
212 REAL,
DIMENSION(KI) :: ZLE_WL_A
213 REAL,
DIMENSION(KI) :: ZLE_WL_B
216 REAL,
DIMENSION(KI) :: ZRNSNOW_RF
217 REAL,
DIMENSION(KI) :: ZHSNOW_RF
218 REAL,
DIMENSION(KI) :: ZLESNOW_RF
219 REAL,
DIMENSION(KI) :: ZGSNOW_RF
220 REAL,
DIMENSION(KI) :: ZMELT_RF
222 REAL,
DIMENSION(KI) :: ZRNSNOW_RD
223 REAL,
DIMENSION(KI) :: ZHSNOW_RD
224 REAL,
DIMENSION(KI) :: ZLESNOW_RD
225 REAL,
DIMENSION(KI) :: ZGSNOW_RD
226 REAL,
DIMENSION(KI) :: ZMELT_RD
228 REAL,
DIMENSION(KI) :: ZUW_RD
229 REAL,
DIMENSION(KI) :: ZUW_RF
230 REAL,
DIMENSION(KI) :: ZDUWDU_RD
231 REAL,
DIMENSION(KI) :: ZDUWDU_RF
232 REAL,
DIMENSION(KI) :: ZUSTAR_TWN
234 REAL,
DIMENSION(KI) :: ZCD
235 REAL,
DIMENSION(KI) :: ZCDN
236 REAL,
DIMENSION(KI) :: ZCH_TWN
237 REAL,
DIMENSION(KI) :: ZRI_TWN
238 REAL,
DIMENSION(KI) :: ZRESA_TWN
239 REAL,
DIMENSION(KI) :: ZAC_RF
240 REAL,
DIMENSION(KI) :: ZAC_RD
241 REAL,
DIMENSION(KI) :: ZAC_WL
242 REAL,
DIMENSION(KI) :: ZAC_TOP
243 REAL,
DIMENSION(KI) :: ZAC_GD
244 REAL,
DIMENSION(KI) :: ZAC_RF_WAT
245 REAL,
DIMENSION(KI) :: ZAC_RD_WAT
246 REAL,
DIMENSION(KI) :: ZEMIT_LW_FAC
247 REAL,
DIMENSION(KI) :: ZEMIT_LW_RD
248 REAL,
DIMENSION(KI) :: ZT_RAD_IND
249 REAL,
DIMENSION(KI) :: ZHU_BLD
250 REAL,
DIMENSION(KI) :: ZTSUN
254 REAL,
DIMENSION(KI) :: ZZENITH
255 REAL,
DIMENSION(KI) :: ZAZIM
257 REAL,
DIMENSION(KI) :: ZDIR_SW
258 REAL,
DIMENSION(KI) :: ZSCA_SW
260 REAL,
DIMENSION(KI) :: ZFRAC_PANEL
261 REAL,
DIMENSION(KI) :: ZALB_PANEL
262 REAL,
DIMENSION(KI) :: ZSVF_GD
264 REAL,
DIMENSION(KI) :: ZREC_SW_RD
265 REAL,
DIMENSION(KI) :: ZREC_SW_SNOW_RD
266 REAL,
DIMENSION(KI) :: ZREC_SW_WL_A
267 REAL,
DIMENSION(KI) :: ZREC_SW_WL_B
268 REAL,
DIMENSION(KI) :: ZREC_SW_GD
269 REAL,
DIMENSION(KI) :: ZREC_SW_RF
271 REAL,
DIMENSION(KI) :: ZDIR_ALB_TWN
272 REAL,
DIMENSION(KI) :: ZSCA_ALB_TWN
273 REAL,
DIMENSION(KI) :: ZSW_RAD_GD
274 REAL,
DIMENSION(KI) :: ZREC_SW_WIN
275 REAL,
DIMENSION(KI) :: ZREF_SW_GRND
276 REAL,
DIMENSION(KI) :: ZREF_SW_FAC
278 REAL,
DIMENSION(KI) :: ZALB_GR
279 REAL,
DIMENSION(KI) :: ZALB_GD
283 REAL,
DIMENSION(KI) :: ZEMIS_GD
285 REAL,
DIMENSION(KI) :: ZLW_WA_TO_G
286 REAL,
DIMENSION(KI) :: ZLW_WB_TO_G
287 REAL,
DIMENSION(KI) :: ZLW_S_TO_G
288 REAL,
DIMENSION(KI) :: ZLW_WIN_TO_G
294 REAL,
DIMENSION(KI) :: ZE_SHADING
295 LOGICAL,
DIMENSION(KI) :: GSHAD_DAY
296 LOGICAL,
DIMENSION(KI) :: GSHADE
300 REAL,
DIMENSION(KI) :: ZUW_GR
301 REAL,
DIMENSION(KI) :: ZRN_GR
302 REAL,
DIMENSION(KI) :: ZH_GR
303 REAL,
DIMENSION(KI) :: ZLE_GR
304 REAL,
DIMENSION(KI) :: ZGFLUX_GR
305 REAL,
DIMENSION(KI) :: ZRUNOFF_GR
306 REAL,
DIMENSION(KI) :: ZDRAIN_GR
308 REAL(KIND=JPRB) :: ZHOOK_HANDLE
331 zt_can(:) = 10.7/2 * sin(2*
xpi/(24*3600) * (ztime+16*3600)) + (b%XT_SIZE_MAX(:)-10.7/2)
356 DO jj=1,top%NROOF_LAYER
357 zu_rf(:) = zu_rf(:) + t%XD_ROOF(:,jj)/t%XTC_ROOF(:,jj)
359 zu_rf(:) = zu_rf(:) + 1./10. + 1./25.
360 zu_rf(:) = 1. / zu_rf(:)
363 DO jj=1,top%NWALL_LAYER
364 zu_wl(:) = zu_wl(:) + t%XD_WALL(:,jj)/t%XTC_WALL(:,jj)
366 zu_wl(:) = zu_wl(:) + 1./10. + 1./25.
367 zu_wl(:) = 1. / zu_wl(:)
371 ztout_eq(:) = (b%XT_SIZE_MIN(:) + zt_sky(:))/2.
374 b%XCAP_SYS_HEAT(:) = zu_wl(:) * t%XWALL_O_BLD(:) * (b%XTHEAT_TARGET(:) - ztout_eq(:)) &
375 + b%XU_WIN(:) * b%XGLAZ_O_BLD(:) * (b%XTHEAT_TARGET(:) - ztout_eq(:)) &
376 + zu_rf(:) * (b%XTHEAT_TARGET(:) - ztout_eq(:)) &
377 - b%XQIN(:) * t%XBLD_HEIGHT(:) / b%XFLOOR_HEIGHT(:)* &
378 (1 - b%XQIN_FLAT(:)) &
379 + b%XINF(:) * t%XBLD_HEIGHT(:) / 3600* zrhoa(:) *
xcpd * &
380 (b%XTHEAT_TARGET(:) - b%XT_SIZE_MIN(:)) &
381 + b%XV_VENT(:) * t%XBLD_HEIGHT(:) / 3600* zrhoa(:) *
xcpd * &
382 (b%XTHEAT_TARGET(:) - b%XT_SIZE_MIN(:))
385 b%XM_SYS_RAT(:) = b%XCAP_SYS_HEAT(:)/
xcpd/(323.15 - b%XTHEAT_TARGET(:))
407 gcanopy = top%LCANOPY
408 top%LCANOPY = .false.
410 ych_bem = top%CCH_BEM
411 top%CCH_BEM =
'DOE-2' 416 ALLOCATE(t%XWS_ROOF(ki))
417 ALLOCATE(t%XWS_ROAD(ki))
421 ALLOCATE(t%TSNOW_ROOF%WSNOW(ki,1))
422 ALLOCATE(t%TSNOW_ROOF%T (ki,1))
423 ALLOCATE(t%TSNOW_ROOF%ALB (ki))
424 ALLOCATE(t%TSNOW_ROOF%RHO (ki,1))
425 ALLOCATE(t%TSNOW_ROOF%TS (ki))
426 ALLOCATE(t%TSNOW_ROOF%EMIS (ki))
428 ysnow_rf = t%TSNOW_ROOF%SCHEME
429 t%TSNOW_ROOF%SCHEME =
'NONE' 430 t%TSNOW_ROOF%WSNOW = 0.0
431 t%TSNOW_ROOF%T = 273.0
432 t%TSNOW_ROOF%RHO = 0.0
433 t%TSNOW_ROOF%ALB = 0.8
434 t%TSNOW_ROOF%TS = 273.0
435 t%TSNOW_ROOF%EMIS = 0.0
437 ALLOCATE(t%TSNOW_ROAD%WSNOW(ki,1))
438 ALLOCATE(t%TSNOW_ROAD%T (ki,1))
439 ALLOCATE(t%TSNOW_ROAD%ALB (ki))
440 ALLOCATE(t%TSNOW_ROAD%RHO (ki,1))
441 ALLOCATE(t%TSNOW_ROAD%TS (ki))
442 ALLOCATE(t%TSNOW_ROAD%EMIS (ki))
444 ysnow_rd = t%TSNOW_ROAD%SCHEME
445 t%TSNOW_ROAD%SCHEME =
'NONE' 446 t%TSNOW_ROAD%WSNOW = 0.0
447 t%TSNOW_ROAD%T = 273.0
448 t%TSNOW_ROAD%RHO = 0.0
449 t%TSNOW_ROAD%ALB = 0.8
450 t%TSNOW_ROAD%TS = 273.0
451 t%TSNOW_ROAD%EMIS = 1.0
459 ycool_coil = bop%CCOOL_COIL
460 bop%CCOOL_COIL =
'IDEAL ' 461 yheat_coil = bop%CHEAT_COIL
462 bop%CHEAT_COIL =
'IDEAL ' 465 ALLOCATE(b%XTI_BLD(ki))
468 b%XTI_BLD(jj) = max(b%XTHEAT_TARGET(jj),zt_can(jj))
472 ALLOCATE(b%XT_FLOOR(ki,bop%NFLOOR_LAYER))
473 ALLOCATE(b%XT_MASS (ki,bop%NFLOOR_LAYER))
475 DO jj=1,bop%NFLOOR_LAYER
476 b%XT_FLOOR(:,jj) = b%XTI_BLD(:)
477 b%XT_MASS(:,jj) = b%XTI_BLD(:)
481 ALLOCATE(b%XT_WIN1(ki))
482 b%XT_WIN1(:) = zt_can(:)
484 ALLOCATE(b%XT_WIN2(ki))
485 b%XT_WIN2(:) = b%XTI_BLD(:)
487 ynatvent(:) = b%CNATVENT(:)
488 b%CNATVENT(:) =
'NONE' 489 zf_water_cond(:) = b%XF_WATER_COND(:)
490 b%XF_WATER_COND(:) = 0.
491 zaux_max = b%XAUX_MAX
494 ALLOCATE(b%XQI_BLD(ki))
497 gnatvent_night(:) = b%LNATVENT_NIGHT(:)
498 b%LNATVENT_NIGHT(:) = .false.
503 ALLOCATE(t%XT_ROOF (ki,top%NROOF_LAYER))
504 ALLOCATE(t%XT_ROAD (ki,top%NROAD_LAYER))
505 ALLOCATE(t%XT_WALL_A(ki,top%NWALL_LAYER))
506 ALLOCATE(t%XT_WALL_B(ki,top%NWALL_LAYER))
509 t%XT_ROOF (:,top%NROOF_LAYER) = b%XTI_BLD(:)
510 t%XT_ROOF(:,1) = zt_can(:)
511 zt1(:) = t%XT_ROOF(:,1)
512 ztn(:) = t%XT_ROOF(:,top%NROOF_LAYER)
513 IF (top%NROOF_LAYER .GT. 2)
CALL interp_proftwl(zt1, ztn, t%XD_ROOF, t%XT_ROOF)
516 DO jj=1,top%NROAD_LAYER
517 t%XT_ROAD(:,jj) = zt_can(:)
521 t%XT_WALL_A(:,top%NWALL_LAYER) = b%XTI_BLD(:)
522 t%XT_WALL_A(:,1) = zt_can(:)
523 zt1(:)=t%XT_WALL_A(:,1)
524 ztn(:)=t%XT_WALL_A(:,top%NWALL_LAYER)
525 IF (top%NWALL_LAYER .GT. 2)
CALL interp_proftwl(zt1, ztn, t%XD_WALL, t%XT_WALL_A)
528 t%XT_WALL_B = t%XT_WALL_A
532 yir%LPAR_RD_IRRIG = .false.
534 ALLOCATE(yir%XRD_START_MONTH(ki))
535 ALLOCATE(yir%XRD_END_MONTH (ki))
536 ALLOCATE(yir%XRD_START_HOUR (ki))
537 ALLOCATE(yir%XRD_END_HOUR (ki))
538 ALLOCATE(yir%XRD_24H_IRRIG (ki))
540 yir%XRD_START_MONTH = 1.
541 yir%XRD_END_MONTH = 1.
542 yir%XRD_START_HOUR = 0.
543 yir%XRD_END_HOUR = 24.
544 yir%XRD_24H_IRRIG = 0.
569 gshad_day(:) = .false.
575 ydmto%LSURF_MISC_BUDGET = .true.
579 ydmt%XG_GREENROOF_ROOF(:) = 0.
581 ydmt%XQIN(:) = b%XQIN(:)
583 ydmt%XT_SYS(:) = b%XTI_BLD(:)
584 ydmt%XQ_SYS(:) = b%XQI_BLD(:)
586 ydmt%XTHEAT_TARGET(:) = b%XTHEAT_TARGET(:)
587 ydmt%XTCOOL_TARGET(:) = b%XTCOOL_TARGET(:)
589 inb_step_atm = 3600*24*4/ztstep
590 DO jforc_step= 1,inb_step_atm
593 zt_can(:) = 10.7/2 * sin(2*
xpi/(24*3600) * (ztime+16*3600)) &
594 + (b%XT_SIZE_MAX(:)-10.7/2)
601 CALL sunpos(jpyear, imonth, iday, ztime, g%XLON, g%XLAT, ztsun, zzenith, zazim)
605 zdir_sw(:) = 0.88 * ztot_sw(:) * 0.85
606 zsca_sw(:) = 0.12 * ztot_sw(:) * 0.85
607 WHERE (zdir_sw < 0.0)
610 WHERE (zsca_sw < 0.0)
616 CALL urban_solar_abs(top, t, b, ydmt, zdir_sw, zsca_sw, zzenith, zazim,&
617 zfrac_panel, zalb_panel, zalb_gd, zsvf_gd,&
618 zalb_gr, zdn_rf, zdf_rf, zdn_rd, &
619 zdf_rd, zrec_sw_rd, zrec_sw_snow_rd, &
620 zrec_sw_wl_a, zrec_sw_wl_b, zrec_sw_gd, &
621 zrec_sw_rf, zdir_alb_twn, zsca_alb_twn, &
622 zsw_rad_gd, zrec_sw_win, zref_sw_grnd, &
623 zref_sw_fac, ze_shading, gshad_day, gshade )
631 t%TSNOW_ROAD%TS, zts_gd, &
632 zlw_wa_to_wb, zlw_wa_to_r, zlw_wb_to_r, &
633 zlw_wa_to_nr,zlw_wb_to_nr, &
634 zlw_wa_to_g, zlw_wb_to_g, &
635 zlw_wa_to_win, zlw_wb_to_win, &
636 zlw_r_to_wa, zlw_r_to_wb, zlw_r_to_win, &
637 zlw_g_to_wa, zlw_g_to_wb, zlw_g_to_win, &
638 zlw_s_to_wa, zlw_s_to_wb, zlw_s_to_r, &
639 zlw_s_to_nr, zlw_s_to_g, zlw_s_to_win, &
640 zlw_win_to_wa, zlw_win_to_wb, zlw_win_to_r, &
641 zlw_win_to_nr, zlw_win_to_g, &
642 zlw_nr_to_wa, zlw_nr_to_wb, zlw_nr_to_win )
647 CALL teb (top, t, bop, b, yir, ydmt, yimplicit_wind, ztsun, &
648 zt_can, zq_can, zu_can, zt_can, zq_can, zu_can, zz_lowcan, &
649 zpew_a_coef, zpew_b_coef, zpew_a_coef, zpew_b_coef, zps, zpa, &
650 zexns, zexna, zta, zqa, zrhoa, zlw_rad, zrr, zsr, zzref, zzref, &
651 zu_can, t%XH_TRAFFIC, t%XLE_TRAFFIC, ztstep, zdf_rf, zdn_rf, &
652 zdf_rd, zdn_rd, zqsat_rf, zqsat_rd, zdelt_rf, zdelt_rd, zts_gd, &
653 zlew_rf, zuw_gr, zlew_rd, zle_wl_a, zle_wl_b,zrnsnow_rf, &
654 zhsnow_rf, zlesnow_rf, zgsnow_rf, zmelt_rf, zrn_gr, zh_gr, &
655 zle_gr, zgflux_gr, zdrain_gr, zrunoff_gr, zrnsnow_rd, &
656 zhsnow_rd, zlesnow_rd, zgsnow_rd, zmelt_rd, zuw_rd, zuw_rf, &
657 zduwdu_rd, zduwdu_rf, zustar_twn, zcd, zcdn, zch_twn, zri_twn, &
658 zresa_twn, zac_rf, zac_rd, zac_wl, zac_top, zac_gd, zac_rf_wat, &
659 zac_rd_wat, zlw_wa_to_wb, zlw_wa_to_r, zlw_wb_to_r, &
660 zlw_wa_to_nr, zlw_wb_to_nr, zlw_r_to_wa, zlw_r_to_wb, &
661 zlw_g_to_wa, zlw_g_to_wb, zlw_s_to_wa, zlw_s_to_wb, zlw_s_to_r, &
662 zlw_s_to_nr, zlw_nr_to_wa, zlw_nr_to_wb, zlw_nr_to_win, &
663 zlw_wa_to_win, zlw_wb_to_win, zlw_g_to_win, zlw_r_to_win, &
664 zlw_s_to_win, zlw_win_to_wa, zlw_win_to_wb, zlw_win_to_r, &
665 zlw_win_to_nr, iday, zemit_lw_fac, zemit_lw_rd, zt_rad_ind, &
666 zhu_bld, ztime, ze_shading )
669 ztime = ztime + ztstep
670 IF (ztime >= 86400)
THEN 677 b%XQIN(:) = ydmt%XQIN(:)
678 b%XTHEAT_TARGET(:) = ydmt%XTHEAT_TARGET(:)
679 b%XTCOOL_TARGET(:) = ydmt%XTCOOL_TARGET(:)
690 top%LCANOPY = gcanopy
691 top%CCH_BEM = ych_bem
695 DEALLOCATE(t%XWS_ROOF,t%XWS_ROAD)
697 t%TSNOW_ROOF%SCHEME = ysnow_rf
698 DEALLOCATE(t%TSNOW_ROOF%WSNOW)
699 DEALLOCATE(t%TSNOW_ROOF%T)
700 DEALLOCATE(t%TSNOW_ROOF%ALB)
701 DEALLOCATE(t%TSNOW_ROOF%RHO)
702 DEALLOCATE(t%TSNOW_ROOF%TS)
703 DEALLOCATE(t%TSNOW_ROOF%EMIS)
705 t%TSNOW_ROAD%SCHEME = ysnow_rd
706 DEALLOCATE(t%TSNOW_ROAD%WSNOW)
707 DEALLOCATE(t%TSNOW_ROAD%T)
708 DEALLOCATE(t%TSNOW_ROAD%ALB)
709 DEALLOCATE(t%TSNOW_ROAD%RHO)
710 DEALLOCATE(t%TSNOW_ROAD%TS)
711 DEALLOCATE(t%TSNOW_ROAD%EMIS)
718 bop%CCOOL_COIL = ycool_coil
719 bop%CHEAT_COIL = yheat_coil
722 DEALLOCATE(b%XTI_BLD)
725 DEALLOCATE(b%XT_FLOOR,b%XT_MASS)
728 DEALLOCATE(b%XT_WIN1)
729 DEALLOCATE(b%XT_WIN2)
731 b%CNATVENT(:) = ynatvent(:)
732 b%XF_WATER_COND(:) = zf_water_cond(:)
733 b%XAUX_MAX = zaux_max
735 DEALLOCATE(b%XQI_BLD)
737 b%LNATVENT_NIGHT(:) = gnatvent_night(:)
741 DEALLOCATE(t%XT_ROOF,t%XT_ROAD,t%XT_WALL_A,t%XT_WALL_B)
750 WRITE(kluout,*)
' --------------------------------' 751 WRITE(kluout,*)
' HVAC AUTOSIZE CALCULATIONS ' 753 WRITE(kluout,*)
' Rated mass flow rate:' 754 WRITE(kluout,*)
' ',maxval(b%XM_SYS_RAT),
'kg s-1 m-2(bld)' 755 WRITE(kluout,*)
' ',minval(b%XM_SYS_RAT),
'kg s-1 m-2(bld)' 756 WRITE(kluout,*)
' Rated cooling system capacity:' 757 WRITE(kluout,*)
' ',maxval(b%XCAP_SYS_RAT),
'W m-2(bld)' 758 WRITE(kluout,*)
' ',minval(b%XCAP_SYS_RAT),
'W m-2(bld)' 759 WRITE(kluout,*)
' Rated heating sysem capacity:' 760 WRITE(kluout,*)
' ',maxval(b%XCAP_SYS_HEAT),
'W m-2(bld)' 761 WRITE(kluout,*)
' ',minval(b%XCAP_SYS_HEAT),
'W m-2(bld)' 762 WRITE(kluout,*)
' --------------------------------' 771 REAL,
DIMENSION(:),
INTENT(IN) :: PT1
772 REAL,
DIMENSION(:),
INTENT(IN) :: PTN
773 REAL,
DIMENSION(:,:),
INTENT(IN) :: PD
774 REAL,
DIMENSION(:,:),
INTENT(OUT) :: PT
777 REAL,
DIMENSION(SIZE(PT1)) :: ZDN
778 REAL,
DIMENSION(SIZE(PT1)) :: ZD
783 zdn(ji) = 0.5 * pd(ji,1)
785 zdn(ji) = zdn(ji) + pd(ji,jj)
787 zdn(ji) = zdn(ji) + 0.5 * pd(ji,ilayer)
790 zd(ji) = 0.5*pd(ji,1)
792 zd(ji) = zd(ji) + 0.5*pd(ji,jj)
793 pt(ji,jj) = pt1(ji) + (ptn(ji)-pt1(ji)) / zdn(ji) * zd(ji)
794 zd(ji) = zd(ji) + 0.5 * pd(ji,jj)
797 pt(ji,ilayer) = ptn(ji)
subroutine teb_irrig_init(YTEB_IRRIG)
subroutine sw_daycycle(KI, PZENITH, PTOT_SW)
subroutine diag_misc_teb_options_init(YDIAG_MISC_TEB_OPTIONS)
subroutine urban_solar_abs(TOP, T, B, DMT, PDIR_SW, PSCA_SW, PZENITH, PAZIM, PFRAC_PANEL, PALB_PANEL, PALB_GD, PSVF_GD, PALB_GRF, PDN_RF, PDF_RF, PDN_RD, PDF_RD, PREC_SW_RD, PREC_SW_SN_RD, PREC_SW_WL_A, PREC_SW_WL_B, PREC_SW_GD, PREC_SW_RF, PDIR_ALB_TWN, PSCA_ALB_TWN, PSW_RAD_GD, PREC_SW_WIN, PREF_SW_GRND, PREF_SW_FAC, PE_SHADING, OSHAD_DAY, OSHADE, OALB_ONLY)
subroutine diag_misc_teb_init_n(DMTC, DMT, DMTO, TOP, KLU, KSW)
subroutine teb(TOP, T, BOP, B, TIR, DMT, HIMPLICIT_WIND, PTSUN, PT_CANYON, PQ_CANYON, PU_CANYON, PT_LOWCAN, PQ_LOWCAN, PU_LOWCAN, PZ_LOWCAN, 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, PTSTEP, PDF_RF, PDN_RF, PDF_RD, PDN_RD, PQSAT_RF, PQSAT_RD, PDELT_RF, PDELT_RD, PTS_GARDEN, PLEW_RF, PUW_GR, PLEW_RD, PLE_WL_A, PLE_WL_B, PRNSN_RF, PHSN_RF, PLESN_RF, PGSN_RF, PMELT_RF, PRN_GR, PH_GR, PLE_GR, PGFLUX_GR, PDRAIN_GR, PRUNOFF_GR, PRNSN_RD, PHSN_RD, PLESN_RD, PGSN_RD, PMELT_RD, PUW_RD, PUW_RF, PDUWDU_RD, PDUWDU_RF, PUSTAR_TWN, PCD, PCDN, PCH_TWN, PRI_TWN, PRESA_TWN, PAC_RF, PAC_RD, PAC_WL, PAC_TOP, PAC_GARDEN, PAC_RF_WAT, PAC_RD_WAT, 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, KDAY, PEMIT_LW_FAC, PEMIT_LW_RD, PT_RAD_IND, PHU_BLD, PTIME, PE_SHADING)
subroutine urban_lw_coef(B, T, PLW_RAD, PEMIS_G, PTS_SR, PTS_G, 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 sunpos(KYEAR, KMONTH, KDAY, PTIME, PLON, PLAT, PTSUN, PZENITH, PAZIMSOL)
subroutine diag_misc_teb_init(YDIAG_MISC_TEB)
subroutine interp_proftwl(PT1, PTN, PD, PT)
subroutine hvac_autosize(B, BOP, G, T, TOP, KI, KLUOUT)