2021-04-15 17:26:00 -04:00
|
|
|
"""
|
|
|
|
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
|
2021-10-19 13:17:11 -04:00
|
|
|
Contributor Peter Yefi peteryefi@gmail.com
|
2021-04-15 17:26:00 -04:00
|
|
|
"""
|
|
|
|
|
2021-10-19 13:17:11 -04:00
|
|
|
from typing import List
|
2021-09-14 13:46:48 -04:00
|
|
|
|
2021-04-15 17:26:00 -04:00
|
|
|
|
|
|
|
class HeatPump:
|
2021-10-26 07:11:19 -04:00
|
|
|
"""
|
2021-04-15 17:26:00 -04:00
|
|
|
HeatPump class
|
|
|
|
"""
|
2021-10-19 13:17:11 -04:00
|
|
|
|
2021-10-26 07:11:19 -04:00
|
|
|
def __init__(self):
|
|
|
|
self._model = None
|
|
|
|
self._cooling_capacity = None
|
|
|
|
self._cooling_comp_power = None
|
|
|
|
self._cooling_water_flow = None
|
|
|
|
self._heating_capacity = None
|
|
|
|
self._heating_comp_power = None
|
|
|
|
self._heating_water_flow = None
|
|
|
|
|
|
|
|
@property
|
|
|
|
def model(self) -> str:
|
|
|
|
"""
|
2021-10-18 11:37:20 -04:00
|
|
|
Get model name
|
|
|
|
:return: str
|
2021-04-15 17:26:00 -04:00
|
|
|
"""
|
2021-10-26 07:11:19 -04:00
|
|
|
return self._model
|
|
|
|
|
|
|
|
@model.setter
|
|
|
|
def model(self, value):
|
|
|
|
"""
|
|
|
|
Set model (name, indicated in capacity)
|
|
|
|
:param value: str
|
|
|
|
"""
|
|
|
|
if self._model is None:
|
|
|
|
self._model = value
|
|
|
|
|
|
|
|
@property
|
|
|
|
def cooling_capacity(self) -> List[float]:
|
|
|
|
"""
|
|
|
|
Get cooling capacity in kW
|
|
|
|
:return: [[float]]
|
|
|
|
"""
|
|
|
|
return self._cooling_capacity
|
|
|
|
|
|
|
|
@cooling_capacity.setter
|
|
|
|
def cooling_capacity(self, value):
|
|
|
|
"""
|
|
|
|
Set cooling capacity in kW
|
|
|
|
:param value: [[float]]
|
|
|
|
"""
|
|
|
|
if self._cooling_capacity is None:
|
|
|
|
self._cooling_capacity = value
|
|
|
|
|
|
|
|
@property
|
|
|
|
def cooling_comp_power(self) -> List[float]:
|
|
|
|
"""
|
|
|
|
Get cooling compressor power input in kW
|
|
|
|
:return: [[float]]
|
|
|
|
"""
|
|
|
|
return self._cooling_comp_power
|
|
|
|
|
|
|
|
@cooling_comp_power.setter
|
|
|
|
def cooling_comp_power(self, value):
|
|
|
|
"""
|
|
|
|
Set the cooling compressor in kW
|
|
|
|
:param value: [[float]]
|
|
|
|
:return:
|
|
|
|
"""
|
|
|
|
if self._cooling_comp_power is None:
|
|
|
|
self._cooling_comp_power = value
|
|
|
|
|
|
|
|
@property
|
|
|
|
def cooling_water_flow(self) -> List[float]:
|
|
|
|
"""
|
|
|
|
Get Water flow in m3/h
|
|
|
|
:return: [[float]]
|
|
|
|
"""
|
|
|
|
return self._cooling_water_flow
|
|
|
|
|
|
|
|
@cooling_water_flow.setter
|
|
|
|
def cooling_water_flow(self, value):
|
|
|
|
"""
|
|
|
|
Set water flow in m3/h
|
|
|
|
:param value: [[float]]
|
|
|
|
:return:
|
|
|
|
"""
|
|
|
|
if self._cooling_water_flow is None:
|
|
|
|
self._cooling_water_flow = value
|
|
|
|
|
|
|
|
@property
|
|
|
|
def heating_capacity(self) -> List[float]:
|
|
|
|
"""
|
|
|
|
Get heating capacity kW
|
|
|
|
:return: [[float]]
|
|
|
|
"""
|
|
|
|
return self._heating_capacity
|
|
|
|
|
|
|
|
@heating_capacity.setter
|
|
|
|
def heating_capacity(self, value):
|
|
|
|
"""
|
|
|
|
Set the heating capacity in kW
|
|
|
|
:param value: [[float]]
|
|
|
|
:return:
|
|
|
|
"""
|
|
|
|
if self._heating_capacity is None:
|
|
|
|
self._heating_capacity = value
|
|
|
|
|
|
|
|
@property
|
|
|
|
def heating_comp_power(self) -> List[float]:
|
|
|
|
"""
|
|
|
|
Get heating compressor power kW
|
|
|
|
:return: [[float]]
|
|
|
|
"""
|
|
|
|
return self._heating_comp_power
|
|
|
|
|
|
|
|
@heating_comp_power.setter
|
|
|
|
def heating_comp_power(self, value):
|
|
|
|
"""
|
|
|
|
Set the heating compressor power in kW
|
|
|
|
:param value: [[float]]
|
|
|
|
:return:
|
|
|
|
"""
|
|
|
|
if self._heating_comp_power is None:
|
|
|
|
self._heating_comp_power = value
|
|
|
|
|
|
|
|
@property
|
|
|
|
def heating_water_flow(self) -> List[float]:
|
|
|
|
"""
|
|
|
|
Get heating water flow in m3/h
|
|
|
|
:return: [[float]]
|
|
|
|
"""
|
|
|
|
return self._heating_water_flow
|
|
|
|
|
|
|
|
@heating_water_flow.setter
|
|
|
|
def heating_water_flow(self, value):
|
|
|
|
"""
|
|
|
|
Set the heating water flow in m3/h
|
|
|
|
:param value: [[float]]
|
|
|
|
:return:
|
|
|
|
"""
|
|
|
|
if self._heating_water_flow is None:
|
|
|
|
self._heating_water_flow = value
|