erased many classes created by Sanam but never used. Modified some classes to adapt to EnergyADE

This commit is contained in:
Pilar 2021-03-16 13:43:59 -04:00
parent 4e4875392f
commit 8ec399947c
10 changed files with 70 additions and 281 deletions

View File

@ -1,53 +0,0 @@
"""
Building module
SPDX - License - Identifier: LGPL - 3.0 - or -later
Copyright © 2020 Project Author Sanam Dabirian sanam.dabirian@mail.concordia.ca
"""
from city_model_structure.attributes.facility import Facility
class DomesticHotWater(Facility):
"""
Domestic Hot Water facilities class
"""
def __init__(self, number_of_baths, number_of_showers, number_of_basin, water_storage_volume, operation_schedules,
convective_fraction, latent_fraction, radiant_fraction, total_value_of_heat_dissipation):
super().__init__(operation_schedules, convective_fraction, latent_fraction, radiant_fraction,
total_value_of_heat_dissipation)
self._number_of_baths = number_of_baths
self._number_of_showers = number_of_showers
self._number_of_basin = number_of_basin
self._water_storage_volume = water_storage_volume
@property
def number_of_baths(self):
"""
Get number of baths of a building unit
:return: number of baths
"""
return self._number_of_baths
@property
def number_of_showers(self):
"""
Get number of showers of a building unit
:return: number of showers
"""
return self._number_of_showers
@property
def number_of_basin(self):
"""
Get number of wash basins of a building unit
:return: number of wash basins
"""
return self._number_of_basin
@property
def water_storage_volume(self):
"""
Get the volume of water storage
:return: volume of water storage
"""
return self._water_storage_volume

View File

@ -1,26 +0,0 @@
"""
Building module
SPDX - License - Identifier: LGPL - 3.0 - or -later
Copyright © 2020 Project Author Sanam Dabirian sanam.dabirian@mail.concordia.ca
"""
from city_model_structure.attributes.facility import Facility
class ElectricAppliances(Facility):
"""
Electric appliance facilities class
"""
def __init__(self, appliance_electric_power, operation_schedules, convective_fraction, latent_fraction,
radiant_fraction, total_value_of_heat_dissipation):
super().__init__(operation_schedules, convective_fraction, latent_fraction, radiant_fraction,
total_value_of_heat_dissipation)
self._appliance_electric_power = appliance_electric_power
@property
def appliance_electric_power(self):
"""
Get appliances electric power
:return: appliances electric power
"""
return self._appliance_electric_power

View File

@ -1,59 +0,0 @@
"""
Building module
SPDX - License - Identifier: LGPL - 3.0 - or -later
Copyright © 2020 Project Author Sanam Dabirian sanam.dabirian@mail.concordia.ca
"""
class Facility:
"""
facilities class
"""
def __init__(self, operation_schedules, convective_fraction, latent_fraction,
radiant_fraction, total_value_of_heat_dissipation):
self._operation_schedules = operation_schedules
self._convective_fraction = convective_fraction
self._latent_fraction = latent_fraction
self._radiant_fraction = radiant_fraction
self._total_value_of_heat_dissipation = total_value_of_heat_dissipation
@property
def operation_schedules(self):
"""
Get operation schedules of the facilities
:return: operation schedules
"""
return self._operation_schedules
@property
def convective_fraction(self):
"""
Get convective fraction value
:return: convective fraction
"""
return self._convective_fraction
@property
def latent_fraction(self):
"""
Get latent fraction value
:return: latent fraction
"""
return self._latent_fraction
@property
def radiant_fraction(self):
"""
Get radiant fraction value
:return: radiant fraction
"""
return self._radiant_fraction
@property
def total_value_of_heat_dissipation(self):
"""
Get heat dissipation value
:return: heat dissipation
"""
return self._total_value_of_heat_dissipation

View File

@ -1,31 +0,0 @@
"""
Building module
SPDX - License - Identifier: LGPL - 3.0 - or -later
Copyright © 2020 Project Author Sanam Dabirian sanam.dabirian@mail.concordia.ca
"""
class Household:
"""
Household class
"""
def __init__(self, resident_type, household_type):
self._resident_type = resident_type
self._household_type = household_type
@property
def resident_type(self):
"""
Get resident type
:return: resident type
"""
return self._resident_type
@property
def household_type(self):
"""
Get household type
:return: household type
"""
return self._household_type

View File

@ -1,36 +0,0 @@
"""
Building module
SPDX - License - Identifier: LGPL - 3.0 - or -later
Copyright © 2020 Project Author Sanam Dabirian sanam.dabirian@mail.concordia.ca
"""
from city_model_structure.attributes.facility import Facility
class Hvac(Facility):
"""
HVAC facilities class
"""
def __init__(self, temperature_setpoints, hvac_schedules, operation_schedules, convective_fraction, latent_fraction,
radiant_fraction, total_value_of_heat_dissipation):
super().__init__(operation_schedules, convective_fraction, latent_fraction, radiant_fraction,
total_value_of_heat_dissipation)
self._temperature_setpoints = temperature_setpoints
self._hvac_schedules = hvac_schedules
@property
def temperature_setpoints(self):
"""
Get temperature setpoints
:return: temperature setpoints
"""
return self._temperature_setpoints
@property
def hvac_schedules(self):
"""
Get HVAC schedules
:return: HVAC schedules
"""
return self._hvac_schedules

View File

@ -1,30 +0,0 @@
"""
Building module
SPDX - License - Identifier: LGPL - 3.0 - or -later
Copyright © 2020 Project Author Sanam Dabirian sanam.dabirian@mail.concordia.ca
"""
from city_model_structure.attributes.facility import Facility
class Lighting(Facility):
"""
Lighting facilities class
"""
def __init__(self, electric_power, operation_schedules, convective_fraction, latent_fraction, radiant_fraction,
total_value_of_heat_dissipation):
super().__init__(operation_schedules, convective_fraction, latent_fraction, radiant_fraction,
total_value_of_heat_dissipation)
"""
Constructor
"""
self._electric_power = electric_power
@property
def electric_power(self):
"""
Get lighting electric power
:return: lighting electric power
"""
return self._electric_power

View File

@ -5,8 +5,10 @@ Copyright © 2020 Project Author Sanam Dabirian sanam.dabirian@mail.concordia.ca
Contributors Pilar Monsalvete Álvarez de Uribarri pilar.monsalvete@concordia.ca Contributors Pilar Monsalvete Álvarez de Uribarri pilar.monsalvete@concordia.ca
""" """
from typing import TypeVar
import calendar as cal import calendar as cal
from city_model_structure.attributes.usage_zone import UsageZone
UsageZone = TypeVar('UsageZone')
class Occupants: class Occupants:
@ -19,11 +21,10 @@ class Occupants:
Constructor Constructor
""" """
self._internal_heat_gain = None
self._heat_dissipation = None self._heat_dissipation = None
self._occupancy_rate = None self._occupancy_rate = None
self._occupant_type = None self._occupant_type = None
self._occupant_zone = None self._usage_zone = None
self._occupant_schedule = None self._occupant_schedule = None
self._number_of_occupants = None self._number_of_occupants = None
self._arrival_time = None self._arrival_time = None
@ -33,23 +34,6 @@ class Occupants:
self._pd_of_meetings_duration = None self._pd_of_meetings_duration = None
self._complete_year_schedule = None self._complete_year_schedule = None
@property
def internal_heat_gain(self):
"""
Get internal heat gain of occupants in W/person
:return: float
"""
return self._internal_heat_gain
@internal_heat_gain.setter
def internal_heat_gain(self, value):
"""
Set internal heat gain of occupants in W/person
:param value: float
:return:
"""
self._internal_heat_gain = value
@property @property
def heat_dissipation(self): def heat_dissipation(self):
""" """
@ -102,12 +86,12 @@ class Occupants:
self._occupant_type = value self._occupant_type = value
@property @property
def occupant_zone(self) -> UsageZone: def usage_zone(self) -> UsageZone:
""" """
Get the zone an occupant is in Get the zone an occupant is in
:return: UsageZone :return: UsageZone
""" """
return self._occupant_zone return self._usage_zone
@property @property
def occupant_schedule(self): def occupant_schedule(self):

View File

@ -10,6 +10,7 @@ from city_model_structure.attributes.thermal_opening import ThermalOpening
from city_model_structure.attributes.surface import Surface from city_model_structure.attributes.surface import Surface
ThermalZone = TypeVar('ThermalZone') ThermalZone = TypeVar('ThermalZone')
Polygon = TypeVar('Polygon')
class ThermalBoundary: class ThermalBoundary:
@ -32,13 +33,7 @@ class ThermalBoundary:
self._he = None self._he = None
self._window_ratio = None self._window_ratio = None
self._refurbishment_measure = None self._refurbishment_measure = None
self._surface_geometry = None
# todo: to discuss with @Guille: 1. emissivity is a function of absorptance
# 2. pg 17: fraction and surface -> NO
self._emissivity = None
# todo: @Guille
self._polygon = None
@property @property
def surface(self) -> Surface: def surface(self) -> Surface:
@ -302,3 +297,11 @@ class ThermalBoundary:
:return: :return:
""" """
self._he = value self._he = value
@property
def surface_geometry(self) -> Polygon:
"""
Get the polygon that defines the thermal boundary
:return: Polygon
"""
return self._surface_geometry

View File

@ -4,6 +4,9 @@ SPDX - License - Identifier: LGPL - 3.0 - or -later
Copyright © 2020 Project Author Guille Gutierrez guillermo.gutierrezmorote@concordia.ca Copyright © 2020 Project Author Guille Gutierrez guillermo.gutierrezmorote@concordia.ca
Contributors Pilar Monsalvete Álvarez de Uribarri pilar.monsalvete@concordia.ca Contributors Pilar Monsalvete Álvarez de Uribarri pilar.monsalvete@concordia.ca
""" """
from typing import TypeVar
Polygon = TypeVar('Polygon')
class ThermalOpening: class ThermalOpening:
@ -22,9 +25,7 @@ class ThermalOpening:
self._overall_u_value = None self._overall_u_value = None
self._hi = None self._hi = None
self._he = None self._he = None
self._surface_geometry = None
# todo: discuss with @Guille
self._polygon = None
@property @property
def area(self): def area(self):
@ -217,3 +218,11 @@ class ThermalOpening:
:return: :return:
""" """
self._he = value self._he = value
@property
def surface_geometry(self) -> Polygon:
"""
Get the polygon that defines the thermal opening
:return: Polygon
"""
return self._surface_geometry

View File

@ -4,10 +4,12 @@ SPDX - License - Identifier: LGPL - 3.0 - or -later
Copyright © 2020 Project Author Pilar Monsalvete pilar_monsalvete@yahoo.es Copyright © 2020 Project Author Pilar Monsalvete pilar_monsalvete@yahoo.es
Contributors Guille Gutierrez guillermo.gutierrezmorote@concordia.ca Contributors Guille Gutierrez guillermo.gutierrezmorote@concordia.ca
""" """
from typing import List from typing import List, TypeVar
from city_model_structure.attributes.internal_gains import InternalGains
from city_model_structure.attributes.lighting import Lighting InternalGains = TypeVar('InternalGains')
from city_model_structure.attributes.occupants import Occupants Lighting = TypeVar('Lighting')
Occupants = TypeVar('Occupants')
Polyhedron = TypeVar('Polyhedron')
class UsageZone: class UsageZone:
@ -31,6 +33,8 @@ class UsageZone:
self._lights = None self._lights = None
self._heating_schedule = None self._heating_schedule = None
self._cooling_schedule = None self._cooling_schedule = None
self._ventilation_schedule = None
self._volume_geometry = None
@property @property
def lights(self) -> List[Lighting]: def lights(self) -> List[Lighting]:
@ -175,24 +179,24 @@ class UsageZone:
@property @property
def occupants(self) -> [Occupants]: def occupants(self) -> [Occupants]:
""" """
Get occupancy data Get occupants data
:return: [Occupancy] :return: [Occupants]
""" """
return self._occupants return self._occupants
@occupants.setter @occupants.setter
def occupants(self, values): def occupants(self, values):
""" """
Set occupancy Set occupants data
:param values: [Occupancy] :param values: [Occupants]
""" """
self._occupants = values self._occupants = values
@property @property
def heating_schedule(self): def heating_schedule(self):
""" """
Get heating schedule: list of 0, 1 that define whether the heating system is OFF or ON Get heating schedule: list of 0, 1 that define whether the heating system should be OFF or ON
:return: dict{DtaFrame(int)} :return: dict{DataFrame(int)}
""" """
return self._heating_schedule return self._heating_schedule
@ -200,15 +204,15 @@ class UsageZone:
def heating_schedule(self, values): def heating_schedule(self, values):
""" """
heating schedule heating schedule
:param values: dict{DtaFrame(int)} :param values: dict{DataFrame(int)}
""" """
self._heating_schedule = values self._heating_schedule = values
@property @property
def cooling_schedule(self): def cooling_schedule(self):
""" """
Get cooling schedule: list of 0, 1 that define whether the heating system is OFF or ON Get cooling schedule: list of 0, 1 that define whether the cooling system should be OFF or ON
:return: dict{DtaFrame(int)} :return: dict{DataFrame(int)}
""" """
return self._cooling_schedule return self._cooling_schedule
@ -216,10 +220,26 @@ class UsageZone:
def cooling_schedule(self, values): def cooling_schedule(self, values):
""" """
cooling schedule cooling schedule
:param values: dict{DtaFrame(int)} :param values: dict{DataFrame(int)}
""" """
self._cooling_schedule = values self._cooling_schedule = values
@property
def ventilation_schedule(self):
"""
Get ventilation schedule: list of 0, 1 that define whether the ventilation system should be OFF or ON
:return: dict{DataFrame(int)}
"""
return self._ventilation_schedule
@ventilation_schedule.setter
def ventilation_schedule(self, values):
"""
ventilation_schedule schedule
:param values: dict{DataFrame(int)}
"""
self._ventilation_schedule = values
@property @property
def occupancy_density(self): def occupancy_density(self):
""" """
@ -283,3 +303,11 @@ class UsageZone:
:param values: float :param values: float
""" """
self._electrical_app_average_consumption_sqm_year = values self._electrical_app_average_consumption_sqm_year = values
@property
def volume_geometry(self) -> Polyhedron:
"""
Get the polyhedron defined by the thermal zone
:return: Polyhedron
"""
return self._volume_geometry