added pv and hp classes and modified surface to include pv_systems
This commit is contained in:
parent
e31fc59b8f
commit
a7b7e6bb0d
46
city_model_structure/attributes/heat_pump.py
Normal file
46
city_model_structure/attributes/heat_pump.py
Normal file
|
@ -0,0 +1,46 @@
|
|||
"""
|
||||
heat_pump module defines a heat pump
|
||||
SPDX - License - Identifier: LGPL - 3.0 - or -later
|
||||
Copyright © 2020 Project Author Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca
|
||||
"""
|
||||
|
||||
|
||||
class HeatPump:
|
||||
"""
|
||||
HeatPump class
|
||||
"""
|
||||
def __init__(self):
|
||||
self._seasonal_mean_cop = None
|
||||
self._seasonal_mean_coverage_factor = None
|
||||
|
||||
@property
|
||||
def seasonal_mean_cop(self):
|
||||
"""
|
||||
Get seasonal mean COP (-)
|
||||
:return: real
|
||||
"""
|
||||
return self._seasonal_mean_cop
|
||||
|
||||
@seasonal_mean_cop.setter
|
||||
def seasonal_mean_cop(self, value):
|
||||
"""
|
||||
Get seasonal mean COP (-)
|
||||
:param value: real
|
||||
"""
|
||||
self._seasonal_mean_cop = value
|
||||
|
||||
@property
|
||||
def seasonal_mean_coverage_factor(self):
|
||||
"""
|
||||
Get percentage of demand covered by the hp (-)
|
||||
:return: real
|
||||
"""
|
||||
return self._seasonal_mean_coverage_factor
|
||||
|
||||
@seasonal_mean_coverage_factor.setter
|
||||
def seasonal_mean_coverage_factor(self, value):
|
||||
"""
|
||||
Set percentage of demand covered by the hp (-)
|
||||
:return: real
|
||||
"""
|
||||
self._seasonal_mean_coverage_factor = value
|
114
city_model_structure/attributes/pv_system.py
Normal file
114
city_model_structure/attributes/pv_system.py
Normal file
|
@ -0,0 +1,114 @@
|
|||
"""
|
||||
pv_system defines a pv system including all components: PV panels, transformer...
|
||||
SPDX - License - Identifier: LGPL - 3.0 - or -later
|
||||
Copyright © 2020 Project Author Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca
|
||||
"""
|
||||
|
||||
|
||||
class PvSystem:
|
||||
"""
|
||||
PvSystem class
|
||||
"""
|
||||
def __init__(self):
|
||||
self._modules_mean_seasonal_efficiency = None
|
||||
self._total_area = None
|
||||
self._module_area = None
|
||||
self._number_of_modules = None
|
||||
self._overall_system_performance_ratio = None
|
||||
self._electricity_generation = None
|
||||
|
||||
@property
|
||||
def modules_mean_seasonal_efficiency(self):
|
||||
"""
|
||||
Get mean modules efficiency (-)
|
||||
:return: real
|
||||
"""
|
||||
return self._modules_mean_seasonal_efficiency
|
||||
|
||||
@modules_mean_seasonal_efficiency.setter
|
||||
def modules_mean_seasonal_efficiency(self, value):
|
||||
"""
|
||||
Set mean modules efficiency (-)
|
||||
:param value: real
|
||||
"""
|
||||
self._modules_mean_seasonal_efficiency = value
|
||||
|
||||
@property
|
||||
def total_area(self):
|
||||
"""
|
||||
Get total modules area (m2)
|
||||
:return: real
|
||||
"""
|
||||
return self._total_area
|
||||
|
||||
@total_area.setter
|
||||
def total_area(self, value):
|
||||
"""
|
||||
Set total modules area (m2)
|
||||
:param value: real
|
||||
"""
|
||||
self._total_area = value
|
||||
|
||||
@property
|
||||
def module_area(self):
|
||||
"""
|
||||
Get module area (m2)
|
||||
:return: real
|
||||
"""
|
||||
return self._module_area
|
||||
|
||||
@module_area.setter
|
||||
def module_area(self, value):
|
||||
"""
|
||||
Set module area (m2)
|
||||
:param value: real
|
||||
"""
|
||||
self._module_area = value
|
||||
|
||||
@property
|
||||
def number_of_modules(self):
|
||||
"""
|
||||
Get number of modules
|
||||
:return: int
|
||||
"""
|
||||
return self._number_of_modules
|
||||
|
||||
@number_of_modules.setter
|
||||
def number_of_modules(self, value):
|
||||
"""
|
||||
Set number of modules
|
||||
:param value: int
|
||||
"""
|
||||
self._number_of_modules = value
|
||||
|
||||
@property
|
||||
def overall_system_performance_ratio(self):
|
||||
"""
|
||||
Get overall system performance ratio (-)
|
||||
:return: real
|
||||
"""
|
||||
return self._overall_system_performance_ratio
|
||||
|
||||
@overall_system_performance_ratio.setter
|
||||
def overall_system_performance_ratio(self, value):
|
||||
"""
|
||||
Set overall system performance ratio (-)
|
||||
:param value: real
|
||||
"""
|
||||
self._overall_system_performance_ratio = value
|
||||
|
||||
@property
|
||||
def electricity_generation(self):
|
||||
"""
|
||||
Get electricity generation (J)
|
||||
:return: real
|
||||
"""
|
||||
return self._electricity_generation
|
||||
|
||||
@electricity_generation.setter
|
||||
def electricity_generation(self, value):
|
||||
"""
|
||||
Set electricity generation (J)
|
||||
:param value: real
|
||||
"""
|
||||
self._electricity_generation = value
|
|
@ -9,6 +9,7 @@ from __future__ import annotations
|
|||
import numpy as np
|
||||
import uuid
|
||||
from city_model_structure.attributes.polygon import Polygon
|
||||
from city_model_structure.attributes.pv_system import PvSystem
|
||||
|
||||
|
||||
class Surface:
|
||||
|
@ -31,7 +32,8 @@ class Surface:
|
|||
self._global_irradiance = dict()
|
||||
self._perimeter_polygon = perimeter_polygon
|
||||
self._holes_polygons = holes_polygons
|
||||
self._solid_polygons = solid_polygon
|
||||
self._solid_polygon = solid_polygon
|
||||
self._pv_system_installed = None
|
||||
|
||||
@property
|
||||
def name(self):
|
||||
|
@ -201,7 +203,7 @@ class Surface:
|
|||
solid surface
|
||||
:return: Polygon
|
||||
"""
|
||||
return self._solid_polygons
|
||||
return self._solid_polygon
|
||||
|
||||
@property
|
||||
def holes_polygons(self) -> [Polygon]:
|
||||
|
@ -213,3 +215,19 @@ class Surface:
|
|||
[Polygon] -> one or more holes in the surface
|
||||
"""
|
||||
return self._holes_polygons
|
||||
|
||||
@property
|
||||
def pv_system_installed(self) -> PvSystem:
|
||||
"""
|
||||
PV system installed on the surface
|
||||
:return: PvSystem
|
||||
"""
|
||||
return self._pv_system_installed
|
||||
|
||||
@pv_system_installed.setter
|
||||
def pv_system_installed(self, value):
|
||||
"""
|
||||
PV system installed on the surface
|
||||
:param value: PvSystem
|
||||
"""
|
||||
self._pv_system_installed = value
|
||||
|
|
Loading…
Reference in New Issue
Block a user