city_retrofit/city_model_structure/building_demand/appliances.py

104 lines
2.3 KiB
Python
Raw Normal View History

2022-03-08 19:19:52 -05:00
"""
Appliances module
SPDX - License - Identifier: LGPL - 3.0 - or -later
Copyright © 2022 Project Author Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca
"""
from typing import Union, List
2022-03-08 19:19:52 -05:00
from city_model_structure.attributes.schedule import Schedule
class Appliances:
"""
Appliances class
"""
def __init__(self):
self._appliances_density = None
2022-03-08 19:19:52 -05:00
self._convective_fraction = None
self._radiative_fraction = None
2022-03-08 19:19:52 -05:00
self._latent_fraction = None
self._schedules = None
2022-03-08 19:19:52 -05:00
@property
def appliances_density(self) -> Union[None, float]:
2022-03-08 19:19:52 -05:00
"""
Get appliances density in Watts per m2
2022-03-08 19:19:52 -05:00
:return: None or float
"""
return self._appliances_density
2022-03-08 19:19:52 -05:00
@appliances_density.setter
def appliances_density(self, value):
2022-03-08 19:19:52 -05:00
"""
Set appliances density in Watts per m2
2022-03-08 19:19:52 -05:00
:param value: float
"""
if value is not None:
self._appliances_density = float(value)
2022-03-08 19:19:52 -05:00
@property
def convective_fraction(self) -> Union[None, float]:
"""
Get convective fraction
:return: None or float
"""
return self._convective_fraction
@convective_fraction.setter
def convective_fraction(self, value):
"""
Set convective fraction
:param value: float
"""
if value is not None:
self._convective_fraction = float(value)
@property
def radiative_fraction(self) -> Union[None, float]:
2022-03-08 19:19:52 -05:00
"""
Get radiant fraction
:return: None or float
"""
return self._radiative_fraction
2022-03-08 19:19:52 -05:00
@radiative_fraction.setter
def radiative_fraction(self, value):
2022-03-08 19:19:52 -05:00
"""
Set radiant fraction
:param value: float
"""
if value is not None:
self._radiative_fraction = float(value)
2022-03-08 19:19:52 -05:00
@property
def latent_fraction(self) -> Union[None, float]:
"""
Get latent fraction
:return: None or float
"""
return self._latent_fraction
@latent_fraction.setter
def latent_fraction(self, value):
"""
Set latent fraction
:param value: float
"""
if value is not None:
self._latent_fraction = float(value)
@property
def schedules(self) -> Union[None, List[Schedule]]:
2022-03-08 19:19:52 -05:00
"""
Get schedules
:return: None or [Schedule]
2022-03-08 19:19:52 -05:00
"""
return self._schedules
2022-03-08 19:19:52 -05:00
@schedules.setter
def schedules(self, value):
2022-03-08 19:19:52 -05:00
"""
Set schedules
:param value: [Schedule]
2022-03-08 19:19:52 -05:00
"""
self._schedules = value