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-11-01 10:52:38 -04:00
|
|
|
from typing import Dict
|
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
|
2021-11-01 10:52:38 -04:00
|
|
|
self._cooling_capacity_coff = None
|
|
|
|
self._cooling_comp_power_coff = None
|
2021-10-26 07:11:19 -04:00
|
|
|
self._heating_capacity = None
|
|
|
|
self._heating_comp_power = None
|
2021-11-01 10:52:38 -04:00
|
|
|
self._heating_capacity_coff = None
|
|
|
|
self._heating_comp_power_coff = None
|
2021-10-26 07:11:19 -04:00
|
|
|
|
|
|
|
@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
|
2021-11-01 10:52:38 -04:00
|
|
|
def cooling_capacity_coff(self) -> List[float]:
|
2021-10-26 07:11:19 -04:00
|
|
|
"""
|
2021-11-01 10:52:38 -04:00
|
|
|
Get cooling capacity coefficients
|
|
|
|
:return: [float]
|
2021-10-26 07:11:19 -04:00
|
|
|
"""
|
2021-11-01 10:52:38 -04:00
|
|
|
return self._cooling_capacity_coff
|
2021-10-26 07:11:19 -04:00
|
|
|
|
2021-11-01 10:52:38 -04:00
|
|
|
@cooling_capacity_coff.setter
|
|
|
|
def cooling_capacity_coff(self, value):
|
2021-10-26 07:11:19 -04:00
|
|
|
"""
|
2021-11-01 10:52:38 -04:00
|
|
|
Set the value for cooling capacity coefficients
|
|
|
|
:param value: [float]
|
|
|
|
:return:
|
|
|
|
"""
|
|
|
|
if self._cooling_capacity_coff is None:
|
|
|
|
self._cooling_capacity_coff = value
|
|
|
|
|
|
|
|
@property
|
|
|
|
def cooling_comp_power_coff(self) -> List[float]:
|
|
|
|
"""
|
|
|
|
Get cooling compressor power coefficients
|
|
|
|
:return: [float]
|
|
|
|
"""
|
|
|
|
return self._cooling_comp_power_coff
|
|
|
|
|
|
|
|
@cooling_comp_power_coff.setter
|
|
|
|
def cooling_comp_power_coff(self, value):
|
|
|
|
"""
|
|
|
|
Set the value for cooling compressor power coefficients
|
|
|
|
:param value: [float]
|
2021-10-26 07:11:19 -04:00
|
|
|
:return:
|
|
|
|
"""
|
2021-11-01 10:52:38 -04:00
|
|
|
if self._cooling_comp_power_coff is None:
|
|
|
|
self._cooling_comp_power_coff = value
|
|
|
|
|
|
|
|
|
2021-10-26 07:11:19 -04:00
|
|
|
|
|
|
|
@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
|
2021-11-01 10:52:38 -04:00
|
|
|
def heating_comp_power_coff(self) -> List[float]:
|
2021-10-26 07:11:19 -04:00
|
|
|
"""
|
2021-11-01 10:52:38 -04:00
|
|
|
Get heating compressor power coefficients
|
|
|
|
:return: [float]
|
2021-10-26 07:11:19 -04:00
|
|
|
"""
|
2021-11-01 10:52:38 -04:00
|
|
|
return self._heating_comp_power_coff
|
2021-10-26 07:11:19 -04:00
|
|
|
|
2021-11-01 10:52:38 -04:00
|
|
|
@heating_comp_power_coff.setter
|
|
|
|
def heating_comp_power_coff(self, value):
|
2021-10-26 07:11:19 -04:00
|
|
|
"""
|
2021-11-01 10:52:38 -04:00
|
|
|
Set the value for heating compressor power coefficients
|
|
|
|
:param value: [float]
|
|
|
|
:return:
|
|
|
|
"""
|
|
|
|
if self._heating_comp_power_coff is None:
|
|
|
|
self._heating_comp_power_coff = value
|
|
|
|
|
|
|
|
@property
|
|
|
|
def heating_capacity_coff(self) -> List[float]:
|
|
|
|
"""
|
|
|
|
Get heating capacity coefficients
|
|
|
|
:return: [float]
|
|
|
|
"""
|
|
|
|
return self._heating_capacity_coff
|
|
|
|
|
|
|
|
@heating_capacity_coff.setter
|
|
|
|
def heating_capacity_coff(self, value):
|
|
|
|
"""
|
|
|
|
Set the value for heating capacity coefficients
|
|
|
|
:param value: [float]
|
2021-10-26 07:11:19 -04:00
|
|
|
:return:
|
|
|
|
"""
|
2021-11-01 10:52:38 -04:00
|
|
|
if self._heating_capacity_coff is None:
|
|
|
|
self._heating_capacity_coff = value
|
|
|
|
|
|
|
|
|