From 380754ae6d65e1ef4a905851d0e378043d8e4ab3 Mon Sep 17 00:00:00 2001 From: Eric Duminil <eric.duminil@gmail.com> Date: Tue, 23 Apr 2024 10:19:16 +0200 Subject: [PATCH] window ratio as parameter --- .../variable_window_ratio.py | 41 +++++++++++-------- 1 file changed, 23 insertions(+), 18 deletions(-) diff --git a/python_scripts/run_simstadt_from_python/variable_window_ratio.py b/python_scripts/run_simstadt_from_python/variable_window_ratio.py index e14d34e..f119983 100644 --- a/python_scripts/run_simstadt_from_python/variable_window_ratio.py +++ b/python_scripts/run_simstadt_from_python/variable_window_ratio.py @@ -62,7 +62,7 @@ def parse_library(library_path: Path) -> et.ElementTree: return et.parse(library_path) -def set_custom_window_ratio(tree: et.ElementTree, window_ratio_node: float, export_path: Path): +def set_custom_window_ratio(window_ratio: float, tree: et.ElementTree, window_ratio_node: float, export_path: Path): root = tree.getroot() root.find('name', NAMESPACE).text = f"Custom Physics Library with Window Ratio : {window_ratio}" for surface in SURFACES: @@ -90,26 +90,31 @@ def parse_results(window_ratio, heat_demand_csv): 'CoolingDemand': cooling_demand_MWh} -workflow_path, physics_processor_step = copy_workflow_from_template(TEMPLATE_NAME, PROJECT_PATH) -custom_library_path = set_custom_library(physics_processor_step) -lib_tree = parse_library(custom_library_path) +def main(): + workflow_path, physics_processor_step = copy_workflow_from_template(TEMPLATE_NAME, PROJECT_PATH) + custom_library_path = set_custom_library(physics_processor_step) + lib_tree = parse_library(custom_library_path) -all_results = [] -for window_ratio in WINDOW_RATIOS: - # TODO: Status quo too - set_custom_window_ratio(lib_tree, window_ratio, custom_library_path) + all_results = [] + for window_ratio in WINDOW_RATIOS: + # TODO: Status quo too + set_custom_window_ratio(window_ratio, lib_tree, window_ratio, custom_library_path) - output_files = run_workflow(find_simstadt(SIMSTADT2_GLOB), workflow_path, [CITYGML]) + output_files = run_workflow(find_simstadt(SIMSTADT2_GLOB), workflow_path, [CITYGML]) - heat_demand_csv = next(file for file in output_files if 'HEATING_AND_COOLING.csv' in file.name) + heat_demand_csv = next(file for file in output_files if 'HEATING_AND_COOLING.csv' in file.name) - ################### Parse heat demand ######################## + ################### Parse heat demand ######################## - all_results.append(parse_results(window_ratio, heat_demand_csv)) + all_results.append(parse_results(window_ratio, heat_demand_csv)) -df = pd.DataFrame(all_results).set_index('WindowRatio') -print(df) -df.plot() -plt.ylabel('MWh') -plt.title("Demands depending on Window Ratio") -plt.show() + df = pd.DataFrame(all_results).set_index('WindowRatio') + print(df) + df.plot() + plt.ylabel('MWh') + plt.title("Demands depending on Window Ratio") + plt.show() + + +if __name__ == "__main__": + main() -- GitLab