diff --git a/Model_Library b/Model_Library index ba6678d2f4b50bc525d62221dd99440d03993efe..6e57b6dbd8ccd5adfc5346ab689e005568c793cb 160000 --- a/Model_Library +++ b/Model_Library @@ -1 +1 @@ -Subproject commit ba6678d2f4b50bc525d62221dd99440d03993efe +Subproject commit 6e57b6dbd8ccd5adfc5346ab689e005568c793cb diff --git a/Tooling b/Tooling index f82ba6f7d9f1316a3cd36b8af27c99953803d17d..3e220d972c875cff3025a6c19f0ea29a5c9b080c 160000 --- a/Tooling +++ b/Tooling @@ -1 +1 @@ -Subproject commit f82ba6f7d9f1316a3cd36b8af27c99953803d17d +Subproject commit 3e220d972c875cff3025a6c19f0ea29a5c9b080c diff --git a/runme.py b/runme.py index c0e6c76e1f8b70686654b0c791ec96385b1bedc9..986874044e0d89ec31ce3ba24175bc188e5a058a 100644 --- a/runme.py +++ b/runme.py @@ -24,6 +24,7 @@ THE SOFTWARE. import pandas as pd import Tooling.input_profile_processor.input_profile_processor +from Tooling.dynamics.Dynamic import TrivialDynamic import Model_Library.Prosumer.main as main_prosumer import Model_Library.District.main as main_district from enum import Enum @@ -35,8 +36,7 @@ class SimulationScope(Enum): simulation_scope = SimulationScope.DISTRICT t_start = pd.Timestamp("2019-05-10 00:00:00") # start time of simulation -t_horizon = 240 # number of time steps to be simulated -t_step = 1 # length of a time step in hours +dynamic = TrivialDynamic([1 for i in range(240)]) input_profile_dict = {'irradiance_1': {'type': 'irradiance', 'file': 'input_files/data/irradiance/Lindenberg2006BSRN_Irradiance_60sec.csv'}, 'temperature_1': {'type': 'air_temperature', 'file': 'input_files/data/temperature/temperature.csv'}, @@ -55,7 +55,7 @@ input_profile_dict = {'irradiance_1': {'type': 'irradiance', 'file': 'input_file 'demand_hot_water_3': {'type': 'hot_water_demand', 'generate': {'yearly_demand': 0, 'temperature': 'temperature_3'}}, 'elec_price_1': {'type': 'elec_price', 'file': 'input_files/data/prices/day-ahead/hourly_price.csv'}} -input_profiles = Tooling.input_profile_processor.input_profile_processor.process_input_profiles(input_profile_dict, t_start, t_horizon, t_step) +input_profiles = Tooling.input_profile_processor.input_profile_processor.process_input_profiles(input_profile_dict, t_start, dynamic) prosumer_paths = {'SCN2_CAT1_PV11_3000_6000': 'input_files/models/prosumer_models/SCN2_CAT1_PV11/prosumer.json', 'SCN0_CAT1_3000_6000': 'input_files/models/prosumer_models/SCN0_CAT1/prosumer.json'} @@ -75,7 +75,7 @@ for prosumer_name, component_profiles in prosumer_profiles.items(): for component_name, profiles in component_profiles.items(): prosumer_dict[prosumer_name]['components'][component_name].update(profiles) -prosumer_main = main_prosumer.ProsumerMain(prosumer_dict, input_profiles, t_horizon, t_step) +prosumer_main = main_prosumer.ProsumerMain(prosumer_dict, input_profiles, dynamic) prosumer_sizing_strategy = 'annuity' prosumer_main.optimize_sizing(prosumer_sizing_strategy) @@ -98,7 +98,7 @@ for district_asset_name, component_profiles in district_asset_profiles.items(): for component_name, profiles in component_profiles.items(): district_asset_dict[district_asset_name]['components'][component_name].update(profiles) -district_assets = main_prosumer.DistrictAssetMain(district_asset_dict, input_profiles, t_horizon, t_step).district_assets +district_assets = main_prosumer.DistrictAssetMain(district_asset_dict, input_profiles, dynamic).district_assets district_paths = {'community': 'input_files/models/district_models/example_community/district.json'} district_profiles = {'community': {'wholesale_price': 'elec_price_1', 'injection_price': 'elec_price_1'}} @@ -110,7 +110,7 @@ for district_name, district_path in district_paths.items(): for district_name, profiles in district_profiles.items(): district_dict[district_name].update(profiles) -district_main = main_district.DistrictMain(district_dict, prosumers, district_assets, input_profiles, t_horizon, t_step) +district_main = main_district.DistrictMain(district_dict, prosumers, district_assets, input_profiles, dynamic) district_sizing_strategy = 'max_operational_profit' district_main.optimize_sizing(district_sizing_strategy)