def test_calc_weightfactor(self): '''test of calc_weightfactor''' prj.set_default() helptest.building_test2(prj) prj.buildings[-1].calc_building_parameter(number_of_elements=2, merge_windows=True, used_library='AixLib') therm_zone = prj.buildings[-1].thermal_zones[-1] assert therm_zone.weightfactor_ow == [ 0.024530650180761254, 0.03434291025306576, 0.024530650180761254, 0.03434291025306576, 0.3407000330729792 ] assert therm_zone.weightfactor_win == [ 0.0, 0.054214642472656345, 0.08674342795625017, 0.054214642472656345, 0.0 ] prj.buildings[-1].thermal_zones[-1].weightfactor_ow = [] prj.buildings[-1].thermal_zones[-1].weightfactor_win = [] prj.buildings[-1].calc_building_parameter(number_of_elements=2, merge_windows=False, used_library='AixLib') therm_zone = prj.buildings[-1].thermal_zones[-1] assert therm_zone.weightfactor_ow == [ 0.03047939672771178, 0.04267115541879649, 0.03047939672771178, 0.04267115541879649, 0.423320678280269 ] assert therm_zone.weightfactor_win == [ 0.0, 0.27777777777777778, 0.44444444444444453, 0.27777777777777778, 0.0 ]
def test_ahu_threshold_false(self): prj.set_default() helptest.building_test2(prj) use_cond = prj.buildings[-1].thermal_zones[-1].use_conditions use_cond.with_ahu = False with pytest.raises(Exception): use_cond.with_ideal_thresholds = True
def test_calc_equivalent_res_win(self): '''test of calc_equivalent_res, win''' prj.set_default() helptest.building_test2(prj) therm_zone = prj.buildings[-1].thermal_zones[-1] therm_zone.windows[0].calc_equivalent_res() assert round(therm_zone.windows[0].r1, 3) == 0.072
def test_heating_load(self): '''test of heating_load''' prj.set_default() helptest.building_test2(prj) prj.buildings[-1].thermal_zones[-1].calc_zone_parameters( number_of_elements=2, merge_windows=True) prj.buildings[-1].thermal_zones[-1].calc_heat_load() assert round(prj.buildings[-1].thermal_zones[-1].heating_load, 4) == 15210.3459
def test_heating_load(self): '''test of heating_load''' prj.set_default() helptest.building_test2(prj) prj.buildings[-1].thermal_zones[-1].calc_zone_parameters(number_of_elements=2, merge_windows=True) prj.buildings[-1].thermal_zones[-1].calc_heat_load() assert round( prj.buildings[-1].thermal_zones[-1].heating_load, 4) == 15210.3459
def test_ua_value(self): '''test of ua_value''' prj.set_default() helptest.building_test2(prj) therm_zone = prj.buildings[-1].thermal_zones[-1] therm_zone.outer_walls[0].calc_ua_value() assert round(therm_zone.outer_walls[0].ua_value, 15) == 4.132453174475393
def test_calc_building_parameter(self): '''test of calc_building_parameter''' prj.set_default() helptest.building_test2(prj) prj.buildings[-1].calc_building_parameter(number_of_elements=2, merge_windows=True, used_library='AixLib') assert round(prj.buildings[-1].volume, 1) == 490.0 assert round(prj.buildings[-1].sum_heating_load, 4) == 15210.3459
def test_ua_value(self): '''test of ua_value''' prj.set_default() helptest.building_test2(prj) therm_zone = prj.buildings[-1].thermal_zones[-1] therm_zone.outer_walls[0].calc_ua_value() assert round( therm_zone.outer_walls[0].ua_value, 15) == 4.132453174475393
def test_calc_all_buildings(self): '''test of calc_all_buildings, no calculation verification''' helptest.building_test2(prj) helptest.building_test2(prj) prj.calc_all_buildings(number_of_elements=2, merge_windows=True, used_library='AixLib') prj.calc_all_buildings(number_of_elements=2, merge_windows=False, used_library='AixLib')
def test_set_specific_wall_area(self): '''test of set_specific_wall_area''' prj.set_default() helptest.building_test2(prj) prj.buildings[-1].set_specific_wall_area( prj.buildings[-1].thermal_zones[-1], prj.buildings[-1].thermal_zones[-1].outer_walls[1], 500) therm_zone = prj.buildings[-1].thermal_zones[-1] assert round(therm_zone.outer_walls[0].area, 2) == 10.0 assert round(therm_zone.outer_walls[1].area, 1) == 500
def test_calc_building_parameter(self): '''test of calc_building_parameter''' prj.set_default() helptest.building_test2(prj) prj.buildings[-1].calc_building_parameter(number_of_elements=2, merge_windows=True, used_library='AixLib') assert round(prj.buildings[-1].volume, 1) == 490.0 assert round( prj.buildings[-1].sum_heating_load, 4) == 15210.3459
def test_calc_all_buildings(self): '''test of calc_all_buildings, no calculation verification''' helptest.building_test2(prj) helptest.building_test2(prj) prj.number_of_elements_calc = 2 prj.merge_windows_calc = True prj.used_library_calc = 'AixLib' prj.calc_all_buildings() prj.number_of_elements_calc = 2 prj.merge_windows_calc = False prj.used_library_calc = 'AixLib' prj.calc_all_buildings()
def test_calc_equivalent_res_wall(self): '''test of calc_equivalent_res, wall''' prj.set_default() helptest.building_test2(prj) therm_zone = prj.buildings[-1].thermal_zones[-1] therm_zone.outer_walls[0].calc_equivalent_res() #parameters for outwall assert round(therm_zone.outer_walls[0].c1, 6) == 111237.213205 assert round(therm_zone.outer_walls[0].c2, 7) == 59455.3856787 assert round(therm_zone.outer_walls[0].r1, 13) == 0.0330465078788 assert round(therm_zone.outer_walls[0].r2, 13) == 0.0549256129353 assert round(therm_zone.outer_walls[0].r3, 12) == 0.137027879186 assert round(therm_zone.outer_walls[0].c1_korr, 6) == 111237.213205
def test_calc_weightfactor(self): '''test of calc_weightfactor''' prj.set_default() helptest.building_test2(prj) prj.buildings[-1].calc_building_parameter(number_of_elements=2, merge_windows=True, used_library='AixLib') therm_zone = prj.buildings[-1].thermal_zones[-1] assert therm_zone.weightfactor_ow == [0.024530650180761254, 0.03434291025306576, 0.024530650180761254, 0.03434291025306576, 0.3407000330729792] assert therm_zone.weightfactor_win == [0.0, 0.054214642472656345, 0.08674342795625017, 0.054214642472656345, 0.0] prj.buildings[-1].thermal_zones[-1].weightfactor_ow = [] prj.buildings[-1].thermal_zones[-1].weightfactor_win = [] prj.buildings[-1].calc_building_parameter(number_of_elements=2, merge_windows=False, used_library='AixLib') therm_zone = prj.buildings[-1].thermal_zones[-1] assert therm_zone.weightfactor_ow == [0.03047939672771178, 0.04267115541879649, 0.03047939672771178, 0.04267115541879649, 0.423320678280269] assert therm_zone.weightfactor_win == [0.0, 0.27777777777777778, 0.44444444444444453, 0.27777777777777778, 0.0]
def test_calc_two_element(self): '''test of calc_two_element''' prj.set_default() helptest.building_test2(prj) therm_zone = prj.buildings[-1].thermal_zones[-1] therm_zone.calc_zone_parameters(number_of_elements=2, merge_windows=True) assert round(therm_zone.area_ow, 1) == 328.0 assert round(therm_zone.ua_value_ow, 16) == 135.5818558809656 assert round(therm_zone.r_conv_inner_ow, 16) == 0.0016512549537649 assert round(therm_zone.r_rad_inner_ow, 16) == 0.000609756097561 assert round(therm_zone.r_conv_outer_ow, 9) == 0.001041667 assert round(therm_zone.alpha_conv_inner_ow, 5) == 1.84634 assert round(therm_zone.alpha_rad_inner_ow, 1) == 5.0 assert round(therm_zone.r1_win, 1) == 301.5 assert round(therm_zone.r1_ow, 15) == 0.000772773294534 assert round(therm_zone.r1_iw, 15) == 0.009719561140816 assert round(therm_zone.r_rest_ow, 15) == 0.004740706924836 therm_zone = prj.buildings[-1].thermal_zones[-1] therm_zone.calc_zone_parameters(number_of_elements=2, merge_windows=False) assert round(therm_zone.area_ow, 1) == 328.0 assert round(therm_zone.ua_value_ow, 16) == 135.5818558809656 assert round(therm_zone.r_conv_inner_ow, 16) == 0.0016512549537649 assert round(therm_zone.r_rad_inner_ow, 16) == 0.000609756097561 assert round(therm_zone.r_conv_outer_ow, 9) == 0.001041667 assert round(therm_zone.alpha_conv_inner_ow, 5) == 1.84634 assert round(therm_zone.alpha_rad_inner_ow, 1) == 5.0 assert round(therm_zone.r1_win, 15) == 0.02212271973466 assert round(therm_zone.r1_ow, 15) == 0.001007515484109 assert round(therm_zone.r1_iw, 15) == 0.009719561140816 assert round(therm_zone.r_rest_ow, 15) == 0.005922787404456
def test_ahu_threshold_true(self): prj.set_default() helptest.building_test2(prj) use_cond = prj.buildings[-1].thermal_zones[-1].use_conditions use_cond.with_ahu = True use_cond.with_ideal_thresholds = True
def test_sum_building_elements(self): '''test of combine_building_elements''' prj.set_default() helptest.building_test2(prj) #execute zone parameters for therm_zone therm_zone = prj.buildings[-1].thermal_zones[-1] for out_wall in therm_zone.outer_walls: out_wall.calc_equivalent_res() out_wall.calc_ua_value() for in_wall in therm_zone.inner_walls: in_wall.calc_equivalent_res() in_wall.calc_ua_value() for win in therm_zone.windows: win.calc_equivalent_res() win.calc_ua_value() prj.buildings[-1].thermal_zones[-1].sum_building_elements() therm_zone = prj.buildings[-1].thermal_zones[-1] # innerwall assert round(therm_zone.ua_value_iw, 16) == 13.443390622904332 assert round(therm_zone.area_iw, 1) == 34.0 assert round(therm_zone.r_conv_inner_iw, 18) == 0.010893246187363833 assert round(therm_zone.r_rad_inner_iw, 19) == 0.0058823529411764705 assert round(therm_zone.r_comb_inner_iw, 19) == 0.003819709702062643 assert round(therm_zone.alpha_conv_iw, 1) == 2.7 assert round(therm_zone.alpha_rad_iw, 1) == 5.0 assert round(therm_zone.alpha_comb_iw, 1) == 7.7 # outerwall assert round(therm_zone.ua_value_ow, 16) == 19.83577523748189 assert round(therm_zone.area_ow, 1) == 48.0 assert round(therm_zone.r_conv_inner_ow, 19) == 0.007716049382716048 assert round(therm_zone.r_rad_inner_ow, 18) == 0.004166666666666667 assert round(therm_zone.r_comb_inner_ow, 20) == 0.0027056277056277055 assert round(therm_zone.r_conv_outer_ow, 20) == 0.0010416666666666667 assert round(therm_zone.r_rad_outer_ow, 18) == 0.004166666666666667 assert round(therm_zone.r_comb_outer_ow, 20) == 0.0008333333333333334 assert round(therm_zone.alpha_conv_inner_ow, 5) == 2.7 assert round(therm_zone.alpha_rad_inner_ow, 5) == 5.0 assert round(therm_zone.alpha_comb_inner_ow, 5) == 7.7 assert round(therm_zone.alpha_conv_outer_ow, 1) == 20.0 assert round(therm_zone.alpha_rad_outer_ow, 5) == 5.0 assert round(therm_zone.alpha_comb_outer_ow, 1) == 25.0 # groundfloor assert round(therm_zone.ua_value_gf, 16) == 58.351477449455686 assert round(therm_zone.area_gf, 1) == 140.0 assert round(therm_zone.r_conv_inner_gf, 19) == 0.004201680672268907 assert round(therm_zone.r_rad_inner_gf, 18) == 0.001428571428571429 assert round(therm_zone.r_comb_inner_gf, 20) == 0.0010660980810234541 assert round(therm_zone.alpha_conv_inner_gf, 5) == 1.7 assert round(therm_zone.alpha_rad_inner_gf, 5) == 5.0 assert round(therm_zone.alpha_comb_inner_gf, 5) == 6.7 # outerwall assert round(therm_zone.ua_value_rt, 16) == 57.394603194028036 assert round(therm_zone.area_rt, 1) == 140.0 assert round(therm_zone.r_conv_inner_rt, 19) == 0.004201680672268907 assert round(therm_zone.r_rad_inner_rt, 18) == 0.001428571428571429 assert round(therm_zone.r_comb_inner_rt, 20) == 0.0010660980810234541 assert round(therm_zone.r_conv_outer_rt, 20) == 0.00035714285714285714 assert round(therm_zone.r_rad_outer_rt, 18) == 0.001428571428571429 assert round(therm_zone.r_comb_outer_rt, 20) == 0.00028571428571428574 assert round(therm_zone.alpha_conv_inner_rt, 5) == 1.7 assert round(therm_zone.alpha_rad_inner_rt, 5) == 5.0 assert round(therm_zone.alpha_comb_inner_rt, 5) == 6.7 assert round(therm_zone.alpha_conv_outer_rt, 1) == 20.0 assert round(therm_zone.alpha_rad_outer_rt, 5) == 5.0 assert round(therm_zone.alpha_comb_outer_rt, 1) == 25.0 #window assert round(therm_zone.ua_value_win, 16) == 32.87895310796074 assert round(therm_zone.area_win, 1) == 18.0 assert round(therm_zone.r_conv_inner_win, 19) == 0.032679738562091505 assert round(therm_zone.r_rad_inner_win, 4) == 0.0111 assert round(therm_zone.r_comb_inner_win, 19) == 0.008291873963515755 assert round(therm_zone.r_conv_outer_win, 5) == 0.00278 assert round(therm_zone.r_rad_outer_win, 4) == 0.0111 assert round(therm_zone.r_comb_outer_win, 4) == 0.0022 assert round(therm_zone.alpha_conv_inner_win, 1) == 1.7 assert round(therm_zone.alpha_comb_outer_win, 1) == 25.0 assert round(therm_zone.alpha_conv_outer_win, 1) == 20.0 assert round(therm_zone.weighted_g_value, 3) == 0.789
def test_load_use_conditions_new(self): """Test of load_use_conditions, no parameter checking.""" prj.set_default() helptest.building_test2(prj) use_cond = prj.buildings[-1].thermal_zones[-1].use_conditions use_cond.load_use_conditions("Living", data_class=prj.data)
def test_save_citygml(self): '''test of save_gml''' helptest.building_test2(prj) prj.save_citygml("unitTest") prj.set_default()
def test_get_inner_wall_area(self): '''test of get_inner_wall_area''' prj.set_default() helptest.building_test2(prj) sum_area = prj.buildings[-1].get_inner_wall_area() assert round(sum_area, 1) == 34.0