def get_setup(config): area = Area( 'Grid', children=[ Area( 'House 1', event_list=[DisableAreaEvent(12), EnableAreaEvent(16)], children=[ Area('H1 General Load', strategy=LoadHoursStrategy(avg_power_W=200, hrs_per_day=24, hrs_of_day=list( range(0, 24)), final_buying_rate=35), appliance=SwitchableAppliance()) ] ), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=20), appliance=SimpleAppliance() ), ], config=config ) return area
def get_setup(config): config.read_market_maker_rate(30) area = Area( 'Grid', [ Area( 'House 1', [ Area('H1 General Load', strategy=LoadHoursStrategy(avg_power_W=100, hrs_per_day=24, hrs_of_day=list( range(0, 24)), final_buying_rate=14), appliance=SwitchableAppliance()), Area('H1 Storage1', strategy=StorageStrategy(energy_rate_decrease_per_update=7, battery_capacity_kWh=1.2, max_abs_battery_power_kW=5, final_buying_rate=12, final_selling_rate=17.01), appliance=SwitchableAppliance()), Area('H1 PV', strategy=PVStrategy(panel_count=4, final_selling_rate=5, energy_rate_decrease_per_update=7), appliance=PVAppliance()), ] ), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=15), appliance=SimpleAppliance()), ], config=config ) return area
def get_setup(config): ConstSettings.IAASettings.MARKET_TYPE = 2 area = Area( 'Grid', [ Area( 'House 1', [ Area('H1 General Load', strategy=LoadHoursStrategy(avg_power_W=200, hrs_per_day=24, hrs_of_day=list( range(0, 24)), initial_buying_rate=0, final_buying_rate=30)) ] ), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=30), appliance=SimpleAppliance() ), ], config=config ) return area
def get_setup(config): ConstSettings.IAASettings.MARKET_TYPE = 3 ConstSettings.GeneralSettings.MARKET_CLEARING_FREQUENCY_PER_SLOT = 3 ConstSettings.LoadSettings.INITIAL_BUYING_RATE = 35 ConstSettings.LoadSettings.FINAL_BUYING_RATE = 35 ConstSettings.StorageSettings.BUYING_RANGE = RangeLimit(24.99, 25) ConstSettings.StorageSettings.SELLING_RANGE = RangeLimit(30, 25.01) area = Area('Grid', [ Area('House 1', [ Area('H1 General Load', strategy=LoadHoursStrategy(avg_power_W=100, hrs_per_day=24, hrs_of_day=list(range(24)), final_buying_rate=35), appliance=SwitchableAppliance()), Area('H1 Storage1', strategy=StorageStrategy(initial_soc=50), appliance=SwitchableAppliance()), Area('H1 Storage2', strategy=StorageStrategy(initial_soc=50), appliance=SwitchableAppliance()), Area('H1 PV', strategy=PVStrategy(4), appliance=PVAppliance()), Area('H1 CEP', strategy=CommercialStrategy(energy_rate=30), appliance=SimpleAppliance()), ]), ], config=config) return area
def get_setup(config): # Left this for testing that the KPIs export also works with KEEP_PAST_MARKETS ConstSettings.GeneralSettings.KEEP_PAST_MARKETS = True area = Area('Grid', [ Area( 'House 1', [ Area('H1 General Load', strategy=LoadHoursStrategy(avg_power_W=200, hrs_per_day=4, hrs_of_day=list(range(10, 14)), final_buying_rate=35), appliance=SwitchableAppliance()), Area('H1 PV', strategy=PVStrategy(panel_count=4, initial_selling_rate=30, final_selling_rate=5), appliance=PVAppliance()), ], grid_fee_percentage=0, transfer_fee_const=0, ), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=30), appliance=SimpleAppliance()), ], config=config) return area
def get_setup(config): """Returns a setup that allows testing a Home Meter device and its profile.""" area = Area("Grid", [ Area( "House 1", [ Area("H1 Load", strategy=LoadHoursStrategy(avg_power_W=200, hrs_per_day=6, hrs_of_day=list(range(12, 18)), final_buying_rate=35)), Area("H1 Storage 1", strategy=StorageStrategy(initial_soc=50)) ], grid_fee_percentage=0, grid_fee_constant=0, ), Area( "House 2", [ Area("H2 Home Meter", strategy=HomeMeterStrategy( initial_selling_rate=30, final_selling_rate=5, home_meter_profile=Path(d3a_path) / "resources/home_meter_profile.csv")) ], grid_fee_percentage=0, grid_fee_constant=0, ), Area("Commercial Energy Producer", strategy=CommercialStrategy(energy_rate=30)), ], config=config) return area
def get_setup(config): config.read_market_maker_rate(30) area = Area('Grid', [ Area('House 1', [ Area('H1 General Load', strategy=LoadHoursStrategy(avg_power_W=100, hrs_per_day=24, hrs_of_day=list(range(0, 24)), max_energy_rate=25), appliance=SwitchableAppliance()), Area('H1 Storage1', strategy=StorageStrategy(risk=10, initial_capacity_kWh=0.6, initial_rate_option=2, energy_rate_decrease_option=2, energy_rate_decrease_per_update=7, battery_capacity_kWh=1.2, max_abs_battery_power_kW=0.05, break_even=(16, 17.01)), appliance=SwitchableAppliance()), ]), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=15), appliance=SimpleAppliance()), ], config=config) return area
def get_setup(config): ConstSettings.IAASettings.MARKET_TYPE = 2 area = Area('Grid', [ Area('House 1', [ Area('H1 General Load 1', strategy=LoadHoursStrategy( avg_power_W=200, hrs_of_day=list(range(0, 24)), update_interval=duration(minutes=30), initial_buying_rate=user_profile_int, final_buying_rate=35), appliance=SwitchableAppliance()), Area('H1 General Load 2', strategy=LoadHoursStrategy( avg_power_W=200, hrs_of_day=list(range(0, 24)), initial_buying_rate=user_profile_str, final_buying_rate=35), appliance=SwitchableAppliance()), ]), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=9), appliance=SimpleAppliance()), ], config=config) return area
def get_setup(config): area = Area('Grid', [ Area('House 1', [ Area('H1 General Load', strategy=LoadHoursStrategy(avg_power_W=100, hrs_per_day=4, hrs_of_day=list(range(12, 16))), appliance=SwitchableAppliance()), Area('H1 Storage1', strategy=StorageStrategy(initial_capacity_kWh=0.6), appliance=SwitchableAppliance()), ]), Area('House 2', [ Area('H2 General Load', strategy=LoadHoursStrategy(avg_power_W=100, hrs_per_day=4, hrs_of_day=list(range(12, 16))), appliance=SwitchableAppliance()), Area('H2 PV', strategy=PVStrategy(6, 80), appliance=PVAppliance()), ]), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=30), appliance=SimpleAppliance()), ], config=config) return area
def get_setup(config): ConstSettings.IAASettings.AlternativePricing.PRICING_SCHEME = 1 area = Area('Grid', [ Area('House 1', [ Area('H1 General Load', strategy=LoadHoursStrategy(avg_power_W=100, hrs_per_day=24, hrs_of_day=list(range(0, 24))), appliance=SwitchableAppliance()), Area('H1 Storage1', strategy=StorageStrategy(initial_soc=50), appliance=SwitchableAppliance()), Area('H1 PV', strategy=PVStrategy(4, 0), appliance=PVAppliance()), ]), Area('House 2', [ Area('H2 General Load', strategy=LoadHoursStrategy(avg_power_W=100, hrs_per_day=24, hrs_of_day=list(range(0, 24))), appliance=SwitchableAppliance()), Area('H2 PV', strategy=PVStrategy(4, 0), appliance=PVAppliance()), Area('H2 Storage1', strategy=StorageStrategy(initial_soc=100), appliance=SwitchableAppliance()), ]), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=30), appliance=SimpleAppliance()), ], config=config) return area
def get_setup(config): ConstSettings.GeneralSettings.KEEP_PAST_MARKETS = True area = Area('Grid', [ Area( 'House 1', [ Area('H1 General Load', strategy=LoadHoursStrategy(avg_power_W=200, hrs_per_day=24, hrs_of_day=list(range(24)), final_buying_rate=35), appliance=SwitchableAppliance()), Area('H1 PV', strategy=PVStrategy(panel_count=4, initial_selling_rate=30, final_selling_rate=5), appliance=PVAppliance()), ], transfer_fee_pct=0, transfer_fee_const=0, ), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=30), appliance=SimpleAppliance()), ], config=config) return area
def get_setup(config): ConstSettings.IAASettings.MARKET_TYPE = 2 area = Area( 'Grid', children=[ Area('House 1', children=[ Area('H1 General Load', strategy=LoadHoursStrategy(avg_power_W=200, hrs_per_day=24, hrs_of_day=list( range(0, 24)), initial_buying_rate=1, final_buying_rate=37), event_list=[ StrategyEvents( 12, { 'avg_power_W': 400, 'hrs_per_day': 22, 'hrs_of_day': range(0, 22) }), StrategyEvents( 15, { 'initial_buying_rate': 24, 'fit_to_limit': False, 'update_interval': 10, 'energy_rate_increase_per_update': 1 }) ]) ]), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=30)), ], config=config) return area
def get_setup(config): area = Area('Grid', [ Area('House 1', [ Area('H1 DefinedLoad', strategy=DefinedLoadStrategy(daily_load_profile=profile_path, final_buying_rate=36), appliance=SwitchableAppliance()), Area('H1 Storage1', strategy=StorageStrategy(initial_soc=50), appliance=SwitchableAppliance()), ]), Area('House 2', [ Area('H2 General Load', strategy=LoadHoursStrategy(avg_power_W=1000, hrs_per_day=4, hrs_of_day=list(range(12, 16)), final_buying_rate=35), appliance=SwitchableAppliance()), Area('H2 PV', strategy=PVStrategy(1, 80), appliance=PVAppliance()), ]), Area('Finite Commercial Producer', strategy=FinitePowerPlant(energy_rate=30, max_available_power_kW=0.01), appliance=SwitchableAppliance()), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=30), appliance=SimpleAppliance()), ], config=config) return area
def get_setup(config): ConstSettings.IAASettings.MARKET_TYPE = 2 area = Area( 'Grid', children=[ Area( 'House 1', children=[ Area('H1 General Load', strategy=DefinedLoadStrategy(daily_load_profile={0: 200, 12: 200}, initial_buying_rate=1, final_buying_rate=37), event_list=[StrategyEvents(12, {'daily_load_profile': {0: 200, 12: 400}}), StrategyEvents(15, {'initial_buying_rate': 24, 'fit_to_limit': False, 'update_interval': 10, 'energy_rate_increase_per_update': 1})] ) ] ), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=30) ), ], config=config ) return area
def get_setup(config): area = Area( 'Grid', [ Area( 'House 1', [ Area('H1 General Load', strategy=LoadHoursStrategy(avg_power_W=200, hrs_per_day=4, hrs_of_day=list( range(19, 24)), final_buying_rate=30), appliance=SwitchableAppliance()), Area('H1 ESS', strategy=StorageStrategy(), appliance=SwitchableAppliance()), Area('H1 PV', strategy=PVStrategy(panel_count=2, initial_selling_rate=30, final_selling_rate=5), appliance=PVAppliance()), ], grid_fee_percentage=0, grid_fee_constant=0, ), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=31), appliance=SimpleAppliance() ), ], config=config ) return area
def get_setup(config): config.read_market_maker_rate(30) area = Area('Grid', [ Area('House 1', [ Area('H1 General Load', strategy=LoadHoursStrategy(avg_power_W=100, hrs_per_day=24, hrs_of_day=list(range(0, 24)), final_buying_rate=25)), Area('H1 Storage1', strategy=StorageStrategy(initial_soc=50, fit_to_limit=False, energy_rate_increase_per_update=7, energy_rate_decrease_per_update=7, battery_capacity_kWh=1.2, max_abs_battery_power_kW=0.05, initial_buying_rate=0, final_buying_rate=16, final_selling_rate=17.01)), ]), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=15)), ], config=config) return area
def get_setup(config): area = Area('Grid', [ Area( 'House 1', [ Area('H1 General Load', strategy=LoadHoursStrategy(avg_power_W=200, hrs_per_day=4, hrs_of_day=list(range(24)), final_buying_rate=35)), Area( 'H1 PV', strategy=PVStrategy(panel_count=4, initial_selling_rate=30, final_selling_rate=5), ), ], grid_fee_percentage=0, grid_fee_constant=0, ), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=30)), ], config=config) return area
def get_setup(config): area = Area( 'Grid', children=[ Area( 'House 1', event_list=[DisconnectIntervalAreaEvent(6, 16)], children=[ Area('H1 General Load', strategy=LoadHoursStrategy(avg_power_W=200, hrs_per_day=24, hrs_of_day=list( range(0, 24)), final_buying_rate=27), appliance=SwitchableAppliance()), Area('H1 Storage1', strategy=StorageStrategy(initial_soc=50, battery_capacity_kWh=30, max_abs_battery_power_kW=1), appliance=SwitchableAppliance()), ] ), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=22), appliance=SimpleAppliance() ), ], config=config ) return area
def get_setup(config): area = Area( 'Grid', [ Area( 'House 1', [ Area('H1 General Load 1', strategy=LoadHoursStrategy(avg_power_W=200, hrs_of_day=list(range(0, 24)), max_energy_rate=user_profile_int), appliance=SwitchableAppliance()), Area('H1 General Load 2', strategy=LoadHoursStrategy(avg_power_W=200, hrs_of_day=list(range(0, 24)), max_energy_rate=user_profile_str), appliance=SwitchableAppliance()), ] ), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=34), appliance=SimpleAppliance() ), ], config=config ) return area
def get_setup(config): market_maker_rate = 3 ConstSettings.IAASettings.MARKET_TYPE = 1 config.update_config_parameters(market_maker_rate=market_maker_rate) houses_1 = [ Area(f'House 1 {i}', children=[ Area(f'House 1 {i} Loads ', strategy=LoadHoursStrategy(avg_power_W=500, hrs_per_day=24, hrs_of_day=list(range(0, 24)), initial_buying_rate=1, final_buying_rate=12)) ]) for i in range(1, 50) ] houses_2 = [ Area(f'House 2 {i}', children=[ Area(f'House 2 {i} Loads ', strategy=LoadHoursStrategy(avg_power_W=500, hrs_per_day=24, hrs_of_day=list(range(0, 24)), initial_buying_rate=1, final_buying_rate=12)) ]) for i in range(1, 50) ] houses_3 = [ Area(f'House 3 {i}', children=[ Area(f'House 3 {i} Loads', strategy=LoadHoursStrategy(avg_power_W=500, hrs_per_day=24, hrs_of_day=list(range(0, 24)), initial_buying_rate=1, final_buying_rate=12)) ]) for i in range(1, 50) ] flats = [ Area(f'Flat {i}', children=[ Area(f'Flat {i} Loads ', strategy=LoadHoursStrategy(avg_power_W=500, hrs_per_day=24, hrs_of_day=list(range(0, 24)), initial_buying_rate=1, final_buying_rate=12)) ]) for i in range(1, 120) ] area = Area('Grid', [ Area('Micro-grid', children=[*houses_1, *houses_2, *houses_3, *flats]), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=market_maker_rate)), ], config=config) return area
def get_setup(config): ConstSettings.IAASettings.MARKET_TYPE = 2 ConstSettings.IAASettings.BID_OFFER_MATCH_TYPE = \ BidOfferMatchAlgoEnum.PAY_AS_CLEAR.value # ConstSettings.GeneralSettings.SUPPLY_DEMAND_PLOTS = False ConstSettings.GeneralSettings.MARKET_CLEARING_FREQUENCY_PER_SLOT = 3 ConstSettings.GeneralSettings.DEFAULT_UPDATE_INTERVAL = 5 area = Area('Grid', [ Area('House 1', [ Area( 'H1 General Load', strategy=LoadHoursStrategy(avg_power_W=100, hrs_per_day=6, hrs_of_day=list(range(12, 18)), initial_buying_rate=35, final_buying_rate=35), ), Area( 'H1 Storage1', strategy=StorageStrategy(initial_soc=50), ), Area( 'H1 Storage2', strategy=StorageStrategy(initial_soc=50), ), ]), Area('House 2', [ Area( 'H2 General Load', strategy=LoadHoursStrategy(avg_power_W=100, hrs_per_day=4, hrs_of_day=list(range(12, 16)), final_buying_rate=35), ), Area( 'H2 PV', strategy=PVStrategy(4), ), Area( 'H2 CEP', strategy=CommercialStrategy(energy_rate=10), ), ]), Area( 'Cell Tower', strategy=LoadHoursStrategy(avg_power_W=100, hrs_per_day=24, hrs_of_day=list(range(0, 24)), final_buying_rate=35), ), ], config=config) return area
def get_setup(config): area = Area('Grid', [ Area('House 1', [ Area('H1 DefinedLoad', strategy=DefinedLoadStrategy(daily_load_profile=user_profile, final_buying_rate=35)), ]), Area('Commercial Energy Producer', strategy=CommercialStrategy()), ], config=config) return area
def get_setup(config): area = Area('Grid', [ Area('House 1', [ Area('H1 Electrolyser', strategy=ElectrolyzerStrategy( discharge_profile=discharge_path, production_rate_kg_h=4.0)), ]), Area('Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=20)), ], config=config) return area
def get_setup(config): config.read_market_maker_rate(market_maker_rate) area = Area('Grid', [ Area('House 1', [ Area('H1 General Load', strategy=LoadHoursStrategy(avg_power_W=200, hrs_per_day=23, hrs_of_day=list(range(0, 23)), final_buying_rate=40)), ]), Area('Commercial Energy Producer', strategy=CommercialStrategy()), ], config=config) return area
def get_setup(config): area = Area('Grid', [ Area('House 1', [ Area('H1 DefinedLoad', strategy=DefinedLoadStrategy(daily_load_profile=profile_path, final_buying_rate=36), appliance=SwitchableAppliance()), ]), Area('Commercial Energy Producer', strategy=CommercialStrategy(), appliance=SimpleAppliance()), ], config=config) return area
def get_setup(config): ConstSettings.IAASettings.MARKET_TYPE = 3 # ConstSettings.GeneralSettings.SUPPLY_DEMAND_PLOTS = False ConstSettings.GeneralSettings.MARKET_CLEARING_FREQUENCY_PER_SLOT = 3 ConstSettings.LoadSettings.INITIAL_BUYING_RATE = 35 ConstSettings.LoadSettings.FINAL_BUYING_RATE = 35 ConstSettings.StorageSettings.INITIAL_BUYING_RATE = 24.99 ConstSettings.StorageSettings.FINAL_BUYING_RATE = 25 ConstSettings.StorageSettings.INITIAL_SELLING_RATE = 30 ConstSettings.StorageSettings.FINAL_SELLING_RATE = 25.01 area = Area('Grid', [ Area('House 1', [ Area('H1 General Load', strategy=LoadHoursStrategy(avg_power_W=100, hrs_per_day=6, hrs_of_day=list(range(12, 18)), initial_buying_rate=35, final_buying_rate=35), appliance=SwitchableAppliance()), Area('H1 Storage1', strategy=StorageStrategy(initial_soc=50), appliance=SwitchableAppliance()), Area('H1 Storage2', strategy=StorageStrategy(initial_soc=50), appliance=SwitchableAppliance()), ]), Area('House 2', [ Area('H2 General Load', strategy=LoadHoursStrategy(avg_power_W=100, hrs_per_day=4, hrs_of_day=list(range(12, 16)), final_buying_rate=35), appliance=SwitchableAppliance()), Area('H2 PV', strategy=PVStrategy(4), appliance=PVAppliance()), Area('H2 CEP', strategy=CommercialStrategy(energy_rate=10), appliance=SimpleAppliance()), ]), Area('Cell Tower', strategy=CellTowerLoadHoursStrategy(avg_power_W=100, hrs_per_day=24, hrs_of_day=list(range(0, 24)), final_buying_rate=35), appliance=SwitchableAppliance()), ], config=config) return area
def get_setup(config): ConstSettings.IAASettings.MARKET_TYPE = 3 area = Area( 'Grid', [ Area( 'House 1', [ Area('H1 PV', strategy=PVUserProfileStrategy( power_profile=house1_pv_production), appliance=PVAppliance()), Area('H1 General Load', strategy=DefinedLoadStrategy( daily_load_profile=load_profile_path, final_buying_rate=28), appliance=SwitchableAppliance()), ]), Area( 'House 2', [ Area('H2 PV', strategy=PVStrategy(30), appliance=PVAppliance()), Area('H2 General Load', strategy=DefinedLoadStrategy( daily_load_profile=house2_load_dict), appliance=SwitchableAppliance()), ]), Area( 'House 3', [ Area('H3 General Load', strategy=DefinedLoadStrategy( daily_load_profile=house3_load_dict, final_buying_rate=25), appliance=SwitchableAppliance()), ]), Area( 'House 4', [ Area('H4 General Load', strategy=DefinedLoadStrategy( daily_load_profile=load_profile_path, final_buying_rate=24), appliance=SwitchableAppliance()), ]), Area('Infinite Power Plant', strategy=CommercialStrategy(energy_rate=30), appliance=SimpleAppliance()), ], config=config ) return area
def get_setup(config): area = Area('Grid', [ Area('House 1', [ Area('H1 Storage1', strategy=StorageStrategy(initial_soc=40, battery_capacity_kWh=5, max_abs_battery_power_kW=5, initial_buying_rate=0, final_buying_rate=16.99, final_selling_rate=17.01)), ]), Area( 'Commercial Energy Producer', strategy=CommercialStrategy(energy_rate=15), ) ], config=config) return area
def get_setup(config): ConstSettings.IAASettings.MARKET_TYPE = 2 ConstSettings.IAASettings.BID_OFFER_MATCH_TYPE = \ BidOfferMatchAlgoEnum.PAY_AS_CLEAR.value area = Area('Grid', [ Area('House 1', [ Area('H1 PV', strategy=PVUserProfileStrategy( power_profile=house1_pv_production)), Area('H1 General Load', strategy=DefinedLoadStrategy( daily_load_profile=load_profile_path, final_buying_rate=28)), ]), Area('House 2', [ Area('H2 PV', strategy=PVStrategy(30)), Area( 'H2 General Load', strategy=DefinedLoadStrategy( daily_load_profile=house2_load_dict), ) ]), Area('House 3', [ Area( 'H3 General Load', strategy=DefinedLoadStrategy( daily_load_profile=house3_load_dict, final_buying_rate=25), ) ]), Area('House 4', [ Area( 'H4 General Load', strategy=DefinedLoadStrategy( daily_load_profile=load_profile_path, final_buying_rate=24), ) ]), Area( 'Infinite Power Plant', strategy=CommercialStrategy(energy_rate=30), ) ], config=config) return area
def get_setup(config): area = Area('Grid', [ Area('Electrolyzer', strategy=ElectrolyzerStrategy( discharge_profile=electrolizer_profile_file, conversion_factor_kg_to_kWh=50, reservoir_capacity_kg=56.0, reservoir_initial_capacity_kg=10, production_rate_kg_h=2.8), appliance=SwitchableAppliance()), Area('PV', strategy=PVPredefinedStrategy(panel_count=1), appliance=PVAppliance()), Area("Commercial Energy Producer", strategy=CommercialStrategy(), appliance=SwitchableAppliance()), ], config=config) return area