37 lines
1.6 KiB
Python
37 lines
1.6 KiB
Python
|
"""
|
||
|
LifeCycleCosts calculates the life cycle costs of one building
|
||
|
SPDX - License - Identifier: LGPL - 3.0 - or -later
|
||
|
Copyright © 2022 Project Coder Atiya atiya.atiya@mail.concordia.ca
|
||
|
"""
|
||
|
|
||
|
from city_model_structure.city import City
|
||
|
|
||
|
class CapitalCost:
|
||
|
|
||
|
def __init__(self, city):
|
||
|
self._city = city
|
||
|
|
||
|
@property
|
||
|
def city(self) -> City:
|
||
|
return self._city
|
||
|
|
||
|
def calculate_capital_cost(building):
|
||
|
print("calculate_capital_cost called")
|
||
|
for internal_zone in building.internal_zones:
|
||
|
print("volume of the building ", internal_zone.volume)
|
||
|
print("area of the building ", internal_zone.area)
|
||
|
# for thermal_zone in internal_zone.thermal_zones:
|
||
|
# for thermal_boundary in thermal_zone.thermal_boundaries:
|
||
|
# total_opaque_area = []
|
||
|
# for i, layer in enumerate(thermal_boundary.layers):
|
||
|
# print(layer)
|
||
|
# if layer.material.no_mass == False:
|
||
|
# layer_area = layer.thickness * thermal_boundary.opaque_area
|
||
|
# # total_opaque_area[layer.material.].append(material_layers_lca)
|
||
|
# # else:
|
||
|
# # material_layers_lca['layer_name'] = f'Layer {i+1}'
|
||
|
# # material_layers_lca['nrel_material_id'] = layer.material.id
|
||
|
# # material_layers_lca['lca_material_id'] = mat_id
|
||
|
# # material_layers_lca['embodied_carbon'] = (layer.thickness * thermal_boundary.opaque_area) * mat_density * embodied_carbon
|
||
|
# # material_layers_lca['end_of_life_per_layer'] = 0.0
|
||
|
# # materials_lca[thermal_boundary.type].append(material_layers_lca)
|