diff --git a/enrich_demand.py b/enrich_demand.py new file mode 100644 index 00000000..fa0b88e1 --- /dev/null +++ b/enrich_demand.py @@ -0,0 +1,55 @@ +import pandas as pd +import calendar + + +def enrich(city): + """ + Enrich the city by using the heating and cooling demand data from Excel files. + """ + + + # Read the heating and cooling Excel files + heating_df = pd.read_excel('./input_files/heating.xlsx') + cooling_df = pd.read_excel('./input_files/cooling.xlsx') + + # Ensure that the data frames have the same number of buildings as city.buildings + assert len(heating_df) == len(city.buildings), "Mismatch in number of buildings in heating data." + assert len(cooling_df) == len(city.buildings), "Mismatch in number of buildings in cooling data." + + # Helper function to compute monthly totals + def get_monthly_totals(hourly_values): + monthly_totals = [] + hour_index = 0 + for month in range(1, 13): + days_in_month = calendar.monthrange(2023, month)[1] + hours_in_month = days_in_month * 24 + monthly_total = sum(hourly_values[hour_index:hour_index + hours_in_month]) + monthly_totals.append(monthly_total) + hour_index += hours_in_month + return monthly_totals + + # Iterate over buildings and data frames + for idx, (building, heating_row, cooling_row) in enumerate( + zip(city.buildings, heating_df.itertuples(index=False), cooling_df.itertuples(index=False))): + # Skip the 'building' column (assuming it's the first column) + heating_demand_hourly = list(heating_row)[1:] # Exclude the 'building' column + cooling_demand_hourly = list(cooling_row)[1:] # Exclude the 'building' column + + # Convert demands to Joules (1 kWh = 3.6e6 J) + heating_demand_hourly_joules = [value * 3.6e6 for value in heating_demand_hourly] + cooling_demand_hourly_joules = [value * 3.6e6 for value in cooling_demand_hourly] + + # Store the demands in the building object + building.heating_demand = {} + building.cooling_demand = {} + + building.heating_demand['hour'] = heating_demand_hourly_joules + building.cooling_demand['hour'] = cooling_demand_hourly_joules + + # Compute monthly demands + building.heating_demand['month'] = get_monthly_totals(heating_demand_hourly_joules) + building.cooling_demand['month'] = get_monthly_totals(cooling_demand_hourly_joules) + + # Compute yearly demands + building.heating_demand['year'] = [sum(building.heating_demand['month'])] + building.cooling_demand['year'] = [sum(building.cooling_demand['month'])] \ No newline at end of file diff --git a/input_files/cooling.xlsx b/input_files/cooling.xlsx new file mode 100644 index 00000000..47d55108 Binary files /dev/null and b/input_files/cooling.xlsx differ diff --git a/input_files/heating.xlsx b/input_files/heating.xlsx new file mode 100644 index 00000000..3cb35c4c Binary files /dev/null and b/input_files/heating.xlsx differ diff --git a/lachine_development.py b/lachine_development.py index 826ea4ac..965c98c3 100644 --- a/lachine_development.py +++ b/lachine_development.py @@ -1,25 +1,12 @@ from pathlib import Path -import subprocess from building_modelling.ep_run_enrich import energy_plus_workflow -from energy_system_modelling_package.energy_system_modelling_factories.montreal_energy_system_archetype_modelling_factory import \ - MontrealEnergySystemArchetypesSimulationFactory -from energy_system_modelling_package.energy_system_modelling_factories.pv_assessment.pv_feasibility import \ - pv_feasibility from hub.imports.geometry_factory import GeometryFactory from hub.helpers.dictionaries import Dictionaries from hub.imports.construction_factory import ConstructionFactory from hub.imports.usage_factory import UsageFactory from hub.imports.weather_factory import WeatherFactory -from hub.imports.results_factory import ResultFactory -from energy_system_modelling_package.energy_system_retrofit.energy_system_retrofit_report import EnergySystemRetrofitReport -from building_modelling.geojson_creator import process_geojson -from energy_system_modelling_package import random_assignation -from hub.imports.energy_systems_factory import EnergySystemsFactory -from energy_system_modelling_package.energy_system_modelling_factories.energy_system_sizing_factory import EnergySystemsSizingFactory -from energy_system_modelling_package.energy_system_retrofit.energy_system_retrofit_results import consumption_data, cost_data -from costing_package.cost import Cost -from costing_package.constants import SYSTEM_RETROFIT_AND_PV, CURRENT_STATUS -from hub.exports.exports_factory import ExportsFactory +from enrich_demand import enrich +import pandas as pd # Directory management input_files_path = (Path(__file__).parent / 'input_files') @@ -34,21 +21,131 @@ simulation_results_path.mkdir(parents=True, exist_ok=True) sra_output_path = output_path / 'sra_outputs' sra_output_path.mkdir(parents=True, exist_ok=True) cost_analysis_output_path = output_path / 'cost_analysis' -cost_analysis_output_path.mkdir(parents=True, exist_ok=True) +cost_analysis_output_path.mkdir(parents=True, exist_ok=True)]) +lachine_output_path = output_path / 'lachine_outputs' -# Create City from HUB -city = GeometryFactory(file_type='geojson', - path=geojson_file_path, - height_field='maximum_roof_height', - year_of_construction_field='year_built', - function_field='building_type', - function_to_hub=Dictionaries().montreal_function_to_hub_function).city -ConstructionFactory('nrcan', city).enrich() -UsageFactory('nrcan', city).enrich() -WeatherFactory('epw', city).enrich() -ExportsFactory('sra', city, sra_output_path).export() -sra_path = (sra_output_path / f'{city.name}_sra.xml').resolve() -subprocess.run(['sra', str(sra_path)]) -ResultFactory('sra', city, sra_output_path).enrich() +# Create City from HUB to run EP_Workflow +city_ep_workflow = GeometryFactory( + file_type='geojson', + path=geojson_file_path, + height_field='maximum_roof_height', + year_of_construction_field='year_built', + function_field='building_type', + function_to_hub=Dictionaries().montreal_function_to_hub_function +).city -energy_plus_workflow(city, energy_plus_output_path) \ No newline at end of file +ConstructionFactory('nrcan', city_ep_workflow).enrich() +UsageFactory('nrcan', city_ep_workflow).enrich() +WeatherFactory('epw', city_ep_workflow).enrich() +energy_plus_workflow(city_ep_workflow, energy_plus_output_path) + +# Create City from HUB to use Grasshopper results +city_grasshopper = GeometryFactory( + file_type='geojson', + path=geojson_file_path, + height_field='maximum_roof_height', + year_of_construction_field='year_built', + function_field='building_type', + function_to_hub=Dictionaries().montreal_function_to_hub_function +).city + +ConstructionFactory('nrcan', city_grasshopper).enrich() +UsageFactory('nrcan', city_grasshopper).enrich() +WeatherFactory('epw', city_grasshopper).enrich() + +enrich(city_grasshopper) + +# Collect data from city_ep_workflow +ep_building_data = [] + +for building in city_ep_workflow.buildings: + building_name = building.name + + # Get total floor area + total_floor_area = 0 + for zone in building.thermal_zones_from_internal_zones: + total_floor_area += zone.total_floor_area # Assuming area is in m^2 + + # Get yearly heating demand in Joules + yearly_heating_demand_J = building.heating_demand['year'][0] # Should be a single value + # Convert to kWh + yearly_heating_demand_kWh = yearly_heating_demand_J / 3.6e6 + # Compute heating demand intensity (kWh/m²) + heating_demand_intensity = yearly_heating_demand_kWh / total_floor_area if total_floor_area > 0 else 0 + + # Get yearly cooling demand in Joules + yearly_cooling_demand_J = building.cooling_demand['year'][0] # Should be a single value + # Convert to kWh + yearly_cooling_demand_kWh = yearly_cooling_demand_J / 3.6e6 + # Compute cooling demand intensity (kWh/m²) + cooling_demand_intensity = yearly_cooling_demand_kWh / total_floor_area if total_floor_area > 0 else 0 + + # Append data to list + ep_building_data.append({ + 'Building Name': building_name, + 'Yearly Heating Demand EP (kWh)': yearly_heating_demand_kWh, + 'Demand Intensity Heating EP (kWh/m²)': heating_demand_intensity, + 'Yearly Cooling Demand EP (kWh)': yearly_cooling_demand_kWh, + 'Demand Intensity Cooling EP (kWh/m²)': cooling_demand_intensity, + 'Total Floor Area (m²)': total_floor_area + }) + +# Collect data from city_grasshopper +grasshopper_building_data = [] + +for building in city_grasshopper.buildings: + building_name = building.name + + # Get total floor area + total_floor_area = 0 + for zone in building.thermal_zones_from_internal_zones: + total_floor_area += zone.total_floor_area # Assuming area is in m^2 + + # Get yearly heating demand in Joules + yearly_heating_demand_J = building.heating_demand['year'][0] # Should be a single value + # Convert to kWh + yearly_heating_demand_kWh = yearly_heating_demand_J / 3.6e6 + # Compute heating demand intensity (kWh/m²) + heating_demand_intensity = yearly_heating_demand_kWh / total_floor_area if total_floor_area > 0 else 0 + + # Get yearly cooling demand in Joules + yearly_cooling_demand_J = building.cooling_demand['year'][0] # Should be a single value + # Convert to kWh + yearly_cooling_demand_kWh = yearly_cooling_demand_J / 3.6e6 + # Compute cooling demand intensity (kWh/m²) + cooling_demand_intensity = yearly_cooling_demand_kWh / total_floor_area if total_floor_area > 0 else 0 + + # Append data to list + grasshopper_building_data.append({ + 'Building Name': building_name, + 'Yearly Heating Demand Grasshopper (kWh)': yearly_heating_demand_kWh, + 'Demand Intensity Heating Grasshopper (kWh/m²)': heating_demand_intensity, + 'Yearly Cooling Demand Grasshopper (kWh)': yearly_cooling_demand_kWh, + 'Demand Intensity Cooling Grasshopper (kWh/m²)': cooling_demand_intensity + }) + +# Create DataFrames +ep_df = pd.DataFrame(ep_building_data) +grasshopper_df = pd.DataFrame(grasshopper_building_data) + +# Merge DataFrames on 'Building Name' and 'Total Floor Area (m²)' +# Since Total Floor Area should be the same for both, we can use it from ep_df +merged_df = pd.merge(ep_df, grasshopper_df, on='Building Name') + +# Rearrange columns if needed +merged_df = merged_df[[ + 'Building Name', + 'Yearly Heating Demand EP (kWh)', + 'Demand Intensity Heating EP (kWh/m²)', + 'Yearly Cooling Demand EP (kWh)', + 'Demand Intensity Cooling EP (kWh/m²)', + 'Yearly Heating Demand Grasshopper (kWh)', + 'Demand Intensity Heating Grasshopper (kWh/m²)', + 'Yearly Cooling Demand Grasshopper (kWh)', + 'Demand Intensity Cooling Grasshopper (kWh/m²)', + 'Total Floor Area (m²)' +]] + +# Write to Excel +output_excel_path = lachine_output_path / 'building_heating_cooling_demands.xlsx' +merged_df.to_excel(output_excel_path, index=False) diff --git a/out_files/energy_plus_outputs/Cote-Saint-Luc_out.audit b/out_files/energy_plus_outputs/Cote-Saint-Luc_out.audit index ea86e2b6..db830e1b 100644 --- a/out_files/energy_plus_outputs/Cote-Saint-Luc_out.audit +++ b/out_files/energy_plus_outputs/Cote-Saint-Luc_out.audit @@ -1,41 +1,41 @@ Processing Schedule Input -- Start -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 33-commercial_67-warehouse.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 33-commercial_67-warehouse.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 33-commercial_67-warehouse.csv -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 16-commercial_84-residential.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 16-commercial_84-residential.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 16-commercial_84-residential.csv -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 25-commercial_75-warehouse.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 25-commercial_75-warehouse.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 25-commercial_75-warehouse.csv -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 22-commercial_78-warehouse.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 22-commercial_78-warehouse.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 22-commercial_78-warehouse.csv -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 100-warehouse.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 100-warehouse.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 100-warehouse.csv -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 15-commercial_46-warehouse_39-office and administration.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 15-commercial_46-warehouse_39-office and administration.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 15-commercial_46-warehouse_39-office and administration.csv -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 71-warehouse_29-office and administration.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 71-warehouse_29-office and administration.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 71-warehouse_29-office and administration.csv -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 75-warehouse_25-office and administration.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 75-warehouse_25-office and administration.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 75-warehouse_25-office and administration.csv -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 100-residential.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 100-residential.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 100-residential.csv -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 100-office and administration.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 100-office and administration.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 100-office and administration.csv -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 15-commercial_85-residential.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 15-commercial_85-residential.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 15-commercial_85-residential.csv -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 21-commercial_79-residential.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 21-commercial_79-residential.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 21-commercial_79-residential.csv -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 9-commercial_91-residential.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 9-commercial_91-residential.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 9-commercial_91-residential.csv -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 33-commercial_33-warehouse_33-office and administration.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 33-commercial_33-warehouse_33-office and administration.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 33-commercial_33-warehouse_33-office and administration.csv -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 8-commercial_92-residential.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 8-commercial_92-residential.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 8-commercial_92-residential.csv -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 6-commercial_94-residential.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 6-commercial_94-residential.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 6-commercial_94-residential.csv -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 67-warehouse_33-office and administration.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 67-warehouse_33-office and administration.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 67-warehouse_33-office and administration.csv -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 50-warehouse_50-office and administration.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 50-warehouse_50-office and administration.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 50-warehouse_50-office and administration.csv -not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmpwga_02mw\cold_temp schedules 18-commercial_82-residential.csv +not found (Current Working Directory)=C:\Users\ab_reza\AppData\Local\Temp\tmp7ivpaqop\cold_temp schedules 18-commercial_82-residential.csv found (IDF Directory)=C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\cold_temp schedules 18-commercial_82-residential.csv Processing Schedule Input -- Complete MonthlyInputCount= 2 diff --git a/out_files/energy_plus_outputs/Cote-Saint-Luc_out.bnd b/out_files/energy_plus_outputs/Cote-Saint-Luc_out.bnd index 5151505f..f2d8704e 100644 --- a/out_files/energy_plus_outputs/Cote-Saint-Luc_out.bnd +++ b/out_files/energy_plus_outputs/Cote-Saint-Luc_out.bnd @@ -1,4 +1,4 @@ -Program Version,EnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 10:35 +Program Version,EnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 22:17 ! This file shows details about the branches, nodes, and other ! elements of the flow connections. ! This file is intended for use in "debugging" potential problems diff --git a/out_files/energy_plus_outputs/Cote-Saint-Luc_out.eio b/out_files/energy_plus_outputs/Cote-Saint-Luc_out.eio index de90877e..6a5adb11 100644 --- a/out_files/energy_plus_outputs/Cote-Saint-Luc_out.eio +++ b/out_files/energy_plus_outputs/Cote-Saint-Luc_out.eio @@ -1,4 +1,4 @@ -Program Version,EnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 10:35 +Program Version,EnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 22:17 ! , Version ID Version, 23.2 ! , #TimeSteps, Minutes per TimeStep {minutes} diff --git a/out_files/energy_plus_outputs/Cote-Saint-Luc_out.end b/out_files/energy_plus_outputs/Cote-Saint-Luc_out.end index 66933d40..c9d13ad0 100644 --- a/out_files/energy_plus_outputs/Cote-Saint-Luc_out.end +++ b/out_files/energy_plus_outputs/Cote-Saint-Luc_out.end @@ -1 +1 @@ -EnergyPlus Completed Successfully-- 160 Warning; 0 Severe Errors; Elapsed Time=00hr 02min 16.02sec +EnergyPlus Completed Successfully-- 160 Warning; 0 Severe Errors; Elapsed Time=00hr 01min 37.44sec diff --git a/out_files/energy_plus_outputs/Cote-Saint-Luc_out.err b/out_files/energy_plus_outputs/Cote-Saint-Luc_out.err index c5c7d215..1cefcbd9 100644 --- a/out_files/energy_plus_outputs/Cote-Saint-Luc_out.err +++ b/out_files/energy_plus_outputs/Cote-Saint-Luc_out.err @@ -1,4 +1,4 @@ -Program Version,EnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 10:35, +Program Version,EnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 22:17, ** Warning ** GetHTSurfaceData: Surfaces with interface to Ground found but no "Ground Temperatures" were input. ** ~~~ ** Found first in surface=BUILDING_BUILDING10A_SURFACE_0 ** ~~~ ** Defaults, constant throughout the year of (18.0) will be used. @@ -428,4 +428,4 @@ Program Version,EnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 10:35, ************* ************* EnergyPlus Warmup Error Summary. During Warmup: 0 Warning; 0 Severe Errors. ************* EnergyPlus Sizing Error Summary. During Sizing: 0 Warning; 0 Severe Errors. - ************* EnergyPlus Completed Successfully-- 160 Warning; 0 Severe Errors; Elapsed Time=00hr 02min 16.02sec + ************* EnergyPlus Completed Successfully-- 160 Warning; 0 Severe Errors; Elapsed Time=00hr 01min 37.44sec diff --git a/out_files/energy_plus_outputs/Cote-Saint-Luc_out.eso b/out_files/energy_plus_outputs/Cote-Saint-Luc_out.eso index be31578d..997cd8a7 100644 --- a/out_files/energy_plus_outputs/Cote-Saint-Luc_out.eso +++ b/out_files/energy_plus_outputs/Cote-Saint-Luc_out.eso @@ -1,4 +1,4 @@ -Program Version,EnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 10:35 +Program Version,EnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 22:17 1,5,Environment Title[],Latitude[deg],Longitude[deg],Time Zone[],Elevation[m] 2,8,Day of Simulation[],Month[],Day of Month[],DST Indicator[1=yes 0=no],Hour[],StartMinute[],EndMinute[],DayType 3,5,Cumulative Day of Simulation[],Month[],Day of Month[],DST Indicator[1=yes 0=no],DayType ! When Daily Report Variables Requested diff --git a/out_files/energy_plus_outputs/Cote-Saint-Luc_out.mtr b/out_files/energy_plus_outputs/Cote-Saint-Luc_out.mtr index 0533c777..dd161a8e 100644 --- a/out_files/energy_plus_outputs/Cote-Saint-Luc_out.mtr +++ b/out_files/energy_plus_outputs/Cote-Saint-Luc_out.mtr @@ -1,4 +1,4 @@ -Program Version,EnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 10:35 +Program Version,EnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 22:17 1,5,Environment Title[],Latitude[deg],Longitude[deg],Time Zone[],Elevation[m] 2,8,Day of Simulation[],Month[],Day of Month[],DST Indicator[1=yes 0=no],Hour[],StartMinute[],EndMinute[],DayType 3,5,Cumulative Day of Simulation[],Month[],Day of Month[],DST Indicator[1=yes 0=no],DayType ! When Daily Meters Requested diff --git a/out_files/energy_plus_outputs/Cote-Saint-Luc_out.rvaudit b/out_files/energy_plus_outputs/Cote-Saint-Luc_out.rvaudit index ea5c2504..c1a9b375 100644 --- a/out_files/energy_plus_outputs/Cote-Saint-Luc_out.rvaudit +++ b/out_files/energy_plus_outputs/Cote-Saint-Luc_out.rvaudit @@ -1,16 +1,16 @@ ReadVarsESO - processing:C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\Cote-Saint-Luc_72b54d.rvi + processing:C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\Cote-Saint-Luc_dd62c9.rvi input file:C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\Cote-Saint-Luc_out.eso output file:C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\Cote-Saint-Luc_out.csv getting all vars from:C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\Cote-Saint-Luc_out.eso number variables requested for output= 498 - ReadVars Run Time=00hr 00min 6.59sec + ReadVars Run Time=00hr 00min 7.50sec ReadVarsESO program completed successfully. ReadVarsESO - processing:C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\Cote-Saint-Luc_72b54d.mvi + processing:C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\Cote-Saint-Luc_dd62c9.mvi input file:C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\Cote-Saint-Luc_out.mtr output file:C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\Cote-Saint-Luc_mtr.csv getting all vars from:C:\Users\ab_reza\Majid\Concordia\Repositories\energy_system_modelling_workflow\out_files\energy_plus_outputs\Cote-Saint-Luc_out.mtr number variables requested for output= 3 - ReadVars Run Time=00hr 00min 0.08sec + ReadVars Run Time=00hr 00min 0.14sec ReadVarsESO program completed successfully. diff --git a/out_files/energy_plus_outputs/Cote-Saint-Luc_tbl.csv b/out_files/energy_plus_outputs/Cote-Saint-Luc_tbl.csv index 0e0407f5..6d7ea30a 100644 --- a/out_files/energy_plus_outputs/Cote-Saint-Luc_tbl.csv +++ b/out_files/energy_plus_outputs/Cote-Saint-Luc_tbl.csv @@ -1,4 +1,4 @@ -Program Version:,EnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 10:35 +Program Version:,EnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 22:17 Tabular Output Report in Format: ,Comma Building:,Buildings in b'Cote-Saint-Luc' @@ -488,7 +488,7 @@ FOR:,Entire Facility General ,,Value -,Program Version and Build,EnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 10:35 +,Program Version and Build,EnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 22:17 ,RunPeriod,RUN PERIOD 1 ,Weather File,Montreal Int'l PQ CAN WYEC2-B-94792 WMO#=716270 ,Latitude [deg],45.47 diff --git a/out_files/energy_plus_outputs/Cote-Saint-Luc_tbl.htm b/out_files/energy_plus_outputs/Cote-Saint-Luc_tbl.htm index c4a9ba4c..48ffd215 100644 --- a/out_files/energy_plus_outputs/Cote-Saint-Luc_tbl.htm +++ b/out_files/energy_plus_outputs/Cote-Saint-Luc_tbl.htm @@ -3,26 +3,26 @@ Buildings in b'Cote-Saint-Luc' RUN PERIOD 1 ** Montreal Int'l PQ CAN WYEC2-B-94792 WMO#=716270 2024-09-24 - 10:35:39 + 22:17:09 - EnergyPlus

Table of Contents

-

Program Version:EnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 10:35

+

Program Version:EnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 22:17

Tabular Output Report in Format: HTML

Building: Buildings in b'Cote-Saint-Luc'

Environment: RUN PERIOD 1 ** Montreal Int'l PQ CAN WYEC2-B-94792 WMO#=716270

Simulation Timestamp: 2024-09-24 - 10:35:39

+ 22:17:09


Table of Contents

Report: Annual Building Utility Performance Summary

For: Entire Facility

Timestamp: 2024-09-24 - 10:35:39

+ 22:17:09

Values gathered over 8760.00 hours



Site and Source Energy

@@ -6710,7 +6710,7 @@ Note 1: An asterisk (*) indicates that the feature is not yet implemented.

Report: Input Verification and Results Summary

For: Entire Facility

Timestamp: 2024-09-24 - 10:35:39

+ 22:17:09

General

@@ -6719,7 +6719,7 @@ Note 1: An asterisk (*) indicates that the feature is not yet implemented.
- + @@ -9949,7 +9949,7 @@ Note 1: An asterisk (*) indicates that the feature is not yet implemented.

Report: Demand End Use Components Summary

For: Entire Facility

Timestamp: 2024-09-24 - 10:35:39

+ 22:17:09

End Uses

Program Version and BuildEnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 10:35EnergyPlus, Version 23.2.0-7636e6b3e9, YMD=2024.09.24 22:17
RunPeriod
@@ -15832,14 +15832,14 @@ Note 1: An asterisk (*) indicates that the feature is not yet implemented.

Report: Component Sizing Summary

For: Entire Facility

Timestamp: 2024-09-24 - 10:35:39

+ 22:17:09


Table of Contents

Report: Adaptive Comfort Summary

For: Entire Facility

Timestamp: 2024-09-24 - 10:35:39

+ 22:17:09

Time Not Meeting the Adaptive Comfort Models during Occupied Hours

@@ -15858,7 +15858,7 @@ Note 1: An asterisk (*) indicates that the feature is not yet implemented.

Report: Climatic Data Summary

For: Entire Facility

Timestamp: 2024-09-24 - 10:35:39

+ 22:17:09

SizingPeriod:DesignDay

@@ -16007,7 +16007,7 @@ Note 1: An asterisk (*) indicates that the feature is not yet implemented.

Report: Envelope Summary

For: Entire Facility

Timestamp: 2024-09-24 - 10:35:39

+ 22:17:09

Opaque Exterior

@@ -42864,7 +42864,7 @@ Note 1: An asterisk (*) indicates that the feature is not yet implemented.

Report: Lighting Summary

For: Entire Facility

Timestamp: 2024-09-24 - 10:35:39

+ 22:17:09

Interior Lighting

@@ -44640,7 +44640,7 @@ Note 1: An asterisk (*) indicates that the feature is not yet implemented.

Report: Equipment Summary

For: Entire Facility

Timestamp: 2024-09-24 - 10:35:39

+ 22:17:09

Central Plant

@@ -45153,7 +45153,7 @@ Note 1: An asterisk (*) indicates that the feature is not yet implemented.

Report: HVAC Sizing Summary

For: Entire Facility

Timestamp: 2024-09-24 - 10:35:39

+ 22:17:09

Space Sensible Cooling

@@ -45444,7 +45444,7 @@ Note 1: An asterisk (*) indicates that the feature is not yet implemented.

Report: System Summary

For: Entire Facility

Timestamp: 2024-09-24 - 10:35:39

+ 22:17:09

Economizer

@@ -46828,7 +46828,7 @@ Note 1: An asterisk (*) indicates that the feature is not yet implemented.

Report: Outdoor Air Summary

For: Entire Facility

Timestamp: 2024-09-24 - 10:35:39

+ 22:17:09

Average Outdoor Air During Occupied Hours

@@ -48845,7 +48845,7 @@ Note 1: An asterisk (*) indicates that the feature is not yet implemented.

Report: Object Count Summary

For: Entire Facility

Timestamp: 2024-09-24 - 10:35:39

+ 22:17:09

Surfaces by Class

@@ -48995,7 +48995,7 @@ Note 1: An asterisk (*) indicates that the feature is not yet implemented.

Report: Sensible Heat Gain Summary

For: Entire Facility

Timestamp: 2024-09-24 - 10:35:39

+ 22:17:09

Annual Building Sensible Heat Gain Components

diff --git a/out_files/lachine_output/building_heating_cooling_demands.xlsx b/out_files/lachine_output/building_heating_cooling_demands.xlsx new file mode 100644 index 00000000..f1d47cc7 Binary files /dev/null and b/out_files/lachine_output/building_heating_cooling_demands.xlsx differ