diff --git a/hub_api/mockup/building.py b/hub_api/mockup/building.py index 466742d..6c74508 100644 --- a/hub_api/mockup/building.py +++ b/hub_api/mockup/building.py @@ -33,14 +33,26 @@ class Building: @property def function(self): + """ + Get building function + :return: str + """ return self._function @property def volume(self): + """ + Get building volume in m3 + :return: float + """ return self._volume @property - def thermal_zones(self): + def thermal_zones(self) -> [ThermalZone]: + """ + Get building thermal zones + :return: [ThermalZone] + """ ground = ThermalBoundary() ground.type = 'Ground' ground.opaque_area = self._area @@ -57,7 +69,11 @@ class Building: return [thermal_zone] @property - def roofs(self): + def roofs(self) -> [Roof]: + """ + Get building roofs + :return: [Roof] + """ polygon = Polygon() polygon.area = self._roof_area roof = Roof() @@ -67,38 +83,74 @@ class Building: @property def heating_consumption(self): + """ + Get building heating consumption in J + :return: dict + """ return self._heating_consumption @property def cooling_consumption(self): + """ + Get building cooling consumption in J + :return: dict + """ return self._cooling_consumption @property def domestic_hot_water_consumption(self): + """ + Get building domestic hot water consumption in J + :return: dict + """ return self._domestic_hot_water_consumption @property def lighting_electrical_demand(self): + """ + Get building lighting demand in J + :return: dict + """ return self._lighting_electrical_demand @property def appliances_electrical_demand(self): + """ + Get building appliances electrical demand in J + :return: dict + """ return self._appliances_electrical_demand @property def heating_peak_load(self): + """ + Get building heating peak load in W + :return: dict + """ return self._heating_peak_load @property def cooling_peak_load(self): + """ + Get building cooling peak load in W + :return: dict + """ return self._cooling_peak_load @property def onsite_electrical_production(self): + """ + Get building onsite electrical production in J + :return: dict + """ return self._onsite_electrical_production @property - def energy_systems(self): + def energy_systems(self) -> [EnergySystem]: + """ + Get building energy systems + :return: [EnergySystem] + """ _energy_systems = [] for system in self._catalog_archetype.systems: diff --git a/hub_api/mockup/properties.py b/hub_api/mockup/properties.py index 3b5c9aa..610f56b 100644 --- a/hub_api/mockup/properties.py +++ b/hub_api/mockup/properties.py @@ -5,6 +5,8 @@ Copyright © 2023 Concordia CERC group Project Coder Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca """ +from __future__ import annotations + class EnergySystem: """ @@ -15,19 +17,35 @@ class EnergySystem: self._demand_types = None @property - def generation_system(self): + def generation_system(self) -> GenerationSystem: + """ + Get building generation system + :return: GenerationSystem + """ return self._generation_system @generation_system.setter def generation_system(self, value): + """ + Set building generation system + :param value: GenerationSystem + """ self._generation_system = value @property def demand_types(self): + """ + Get demand types covered by an energy system + :return: [str] + """ return self._demand_types @demand_types.setter def demand_types(self, value): + """ + Set demand types covered by an energy system + :param value: [str] + """ self._demand_types = value @@ -40,11 +58,19 @@ class GenerationSystem: self._generic_generation_system = None @property - def generic_generation_system(self): + def generic_generation_system(self) -> GenericGenerationSystem: + """ + Get generic generation system + :return: GenericGenerationSystem + """ return self._generic_generation_system @generic_generation_system.setter def generic_generation_system(self, value): + """ + Set generic generation system + :param value: GenericGenerationSystem + """ self._generic_generation_system = value @@ -58,10 +84,18 @@ class GenericGenerationSystem: @property def fuel_type(self): + """ + Get fuel type of generic generation system + :return: str + """ return self._fuel_type @fuel_type.setter def fuel_type(self, value): + """ + Set fuel type of generic generation system + :param value: str + """ self._fuel_type = value @@ -75,19 +109,35 @@ class ThermalZone: self._total_floor_area = None @property - def thermal_boundaries(self): + def thermal_boundaries(self) -> [ThermalBoundary]: + """ + Get thermal boundaries + :return: [ThermalBoundary] + """ return self._thermal_boundaries @thermal_boundaries.setter def thermal_boundaries(self, value): + """ + Set thermal boundaries + :param value: [ThermalBoundary] + """ self._thermal_boundaries = value @property def total_floor_area(self): + """ + Get total floor area in m2 + :return: float + """ return self._total_floor_area @total_floor_area.setter def total_floor_area(self, value): + """ + Get total floor area in m2 + :param value: float + """ self._total_floor_area = value @@ -103,26 +153,50 @@ class ThermalBoundary: @property def type(self): + """ + Get thermal boundary type + :return: str + """ return self._type @type.setter def type(self, value): + """ + Set thermal boundary type + :param value: str + """ self._type = value @property def opaque_area(self): + """ + Get thermal boundary opaque area in m2 + :return: float + """ return self._opaque_area @opaque_area.setter def opaque_area(self, value): + """ + Set thermal boundary opaque area in m2 + :param value: float + """ self._opaque_area = value @property def window_ratio(self): + """ + Get thermal boundary window ratio + :return: float + """ return self._window_ratio @window_ratio.setter def window_ratio(self, value): + """ + Set thermal boundary window ratio + :param value: float + """ self._window_ratio = value @@ -136,19 +210,35 @@ class Roof: self._solar_collectors_area_reduction_factor = None @property - def solid_polygon(self): + def solid_polygon(self) -> Polygon: + """ + Get solid polygon + :return: Polygon + """ return self._solid_polygon @solid_polygon.setter def solid_polygon(self, value): + """ + Set solid polygon + :param value: Polygon + """ self._solid_polygon = value @property def solar_collectors_area_reduction_factor(self): + """ + Get solar-collectors-area reduction factor + :return: float + """ return self._solar_collectors_area_reduction_factor @solar_collectors_area_reduction_factor.setter def solar_collectors_area_reduction_factor(self, value): + """ + Set solar-collectors-area reduction factor + :param value: float + """ self._solar_collectors_area_reduction_factor = value @@ -162,9 +252,16 @@ class Polygon: @property def area(self): + """ + Get polygon area in m2 + :return: float + """ return self._area @area.setter def area(self, value): + """ + Set polygon area in m2 + :param value: float + """ self._area = value -