Source code for sap2012.SAP_worksheet.space_heating_requirement

# -*- coding: utf-8 -*-


[docs]def space_heating_requirement ( utilisation_factor_for_heating_whole_house, total_internal_and_solar_gains, monthly_external_temperature_table_U1, mean_internal_temp_whole_dwelling, heat_transfer_coefficient, days_in_month, total_floor_area ): """Calculates Space Heating Requirement, Section 8. :param utilisation_factor_for_gains_table_9a: See (94). :type utilisation_factor_for_gains_table_9a: float :param total_gains_internal_and_solar: See (84) in W. :type total_gains_internal_and_solar: float :param monthly_external_temperature_table_U1: See (96) in degC. :type monthly_external_temperature_table_U1: float :param mean_internal_temperature_whole_dwelling: See (92) in degC. :type mean_internal_temperature_whole_dwelling: float :param heat_transfer_coefficient: See (39). :type heat_transfer_coefficient: float :param days_in_month: :type days_in_month: float :param total_floor_area: in m. :type total_floor_area: float :returns: A dictionary with keys of ( useful_gains, heat_loss_rate_for_mean_internal_temperature, space_heating_requirement_monthly, space_heating_requirement_yearly, space_heating_requirement_yearly_per_m2 ) - **useful_gains** (`float`): See (95) in W. - **heat_loss_rate_for_mean_internal_temperature** (`float`): See (97) in W. - **space_heating_requirement_monthly** (`float`): See (98) in kWh/month. - **space_heating_requirement_yearly** (`float`): See (98) in kWh. - **space_heating_requirement_yearly_per_m2** (`float`): See (99) in kWh/m2/yr. :rtype: dict """ useful_gains =[] for i in range(12): useful_gains.append(utilisation_factor_for_heating_whole_house[i] * total_internal_and_solar_gains[i]) heat_loss_rate_for_mean_internal_temperature =[] for i in range(12): heat_loss_rate_for_mean_internal_temperature.append(heat_transfer_coefficient[i] * (mean_internal_temp_whole_dwelling[i] - monthly_external_temperature_table_U1[i])) space_heating_requirement_monthly =[] for i in range(12): space_heating_requirement_monthly.append(0.024 * (heat_loss_rate_for_mean_internal_temperature[i] - useful_gains[i]) * days_in_month[i]) space_heating_requirement_yearly = sum(space_heating_requirement_monthly) space_heating_requirement_yearly_per_m2 = sum(space_heating_requirement_monthly) / total_floor_area return dict(useful_gains=useful_gains, heat_loss_rate_for_mean_internal_temperature=heat_loss_rate_for_mean_internal_temperature, space_heating_requirement_monthly=space_heating_requirement_monthly, space_heating_requirement_yearly=space_heating_requirement_yearly, space_heating_requirement_yearly_per_m2=space_heating_requirement_yearly_per_m2 )