Skip to content
Snippets Groups Projects
Commit 0e8c1f97 authored by Christoph von Oy's avatar Christoph von Oy
Browse files

Refactored additional model logic

parent 1d5520f8
No related branches found
No related tags found
No related merge requests found
Subproject commit 7fb211d58a0ef773b36c6fbc4b4ca4d7d2c904e0
Subproject commit 309aba58c30a46e20112da48b3e9413ac13c8de3
......@@ -15,28 +15,28 @@
"model": "depot_inverter.json",
"min_capacity": 0,
"max_capacity": 5000,
"additional_model_logic": [
{
"additional_model_logic": {
"ramp_penalty": {
"type": "RampPenalty",
"variable": "output_1",
"variable_ub": "capacity",
"objective_factor": 0.001
}
]
}
},
"depot_inverter_2": {
"type": "BiPowerElectronic",
"model": "depot_inverter.json",
"min_capacity": 0,
"max_capacity": 5000,
"additional_model_logic": [
{
"additional_model_logic": {
"ramp_penalty": {
"type": "RampPenalty",
"variable": "output_1",
"variable_ub": "capacity",
"objective_factor": 0.001
}
]
}
},
"bus_1_battery": {
"type": "LiionBattery",
......@@ -47,12 +47,12 @@
"sense": ">=",
"value": [1.0, "first_soe"]
},
"additional_model_logic" : [
{
"additional_model_logic": {
"input_penalty": {
"type": "additional_operational_objective",
"value": [0.2, "input_1"]
}
]
}
},
"bus_1_consumption": {
"type": "ElectricalConsumption"
......@@ -69,12 +69,12 @@
"sense": ">=",
"value": [1.0, "first_soe"]
},
"additional_model_logic" : [
{
"additional_model_logic": {
"input_penalty": {
"type": "additional_operational_objective",
"value": [0.2, "input_1"]
}
]
}
},
"bus_2_consumption": {
"type": "ElectricalConsumption"
......@@ -173,24 +173,24 @@
"planning_horizon": 20,
"price_change_factor": 1.02,
"interest_factor": 1.05,
"additional_model_logic": [
{
"additional_model_logic": {
"battery_capacities": {
"type": "EqualCapacity",
"components": ["bus_1_battery", "bus_2_battery"]
},
{
"charging_capacities": {
"type": "EqualCapacity",
"components": ["depot_inverter_1", "depot_inverter_2"]
},
{
"charger_1_enable": {
"type": "ConnectorEnable",
"component": "depot_inverter_1",
"connector": "output_1"
},
{
"charger_2_enable": {
"type": "ConnectorEnable",
"component": "depot_inverter_2",
"connector": "output_1"
}
]
}
}
\ No newline at end of file
......@@ -65,12 +65,12 @@ prosumer_dict["LaTreille"]["components"]["bus_1_generation"][
prosumer_dict["LaTreille"]["components"]["bus_2_generation"][
"generation"
] = input_profiles["bus_2_recuperation"]
prosumer_dict["LaTreille"]["additional_model_logic"][2]["enable"] = input_profiles[
"bus_1_connected"
].values
prosumer_dict["LaTreille"]["additional_model_logic"][3]["enable"] = input_profiles[
"bus_2_connected"
].values
prosumer_dict["LaTreille"]["additional_model_logic"]["charger_1_enable"][
"enable"
] = input_profiles["bus_1_connected"].values
prosumer_dict["LaTreille"]["additional_model_logic"]["charger_2_enable"][
"enable"
] = input_profiles["bus_2_connected"].values
prosumer_main = ProsumerMain(prosumer_dict, dynamic)
......
......@@ -15,70 +15,70 @@
"model": "depot_inverter.json",
"min_capacity": 0,
"max_capacity": 10,
"additional_model_logic": [
{
"additional_model_logic": {
"ramp_penalty": {
"type": "RampPenalty",
"variable": "output_1",
"variable_ub": "capacity",
"objective_factor": 0.001
}
]
}
},
"depot_inverter_2": {
"type": "BiPowerElectronic",
"model": "depot_inverter.json",
"min_capacity": 0,
"max_capacity": 10,
"additional_model_logic": [
{
"additional_model_logic": {
"ramp_penalty": {
"type": "RampPenalty",
"variable": "output_1",
"variable_ub": "capacity",
"objective_factor": 0.001
}
]
}
},
"HPC_1": {
"type": "BiPowerElectronic",
"model": "depot_inverter.json",
"min_capacity": 0,
"max_capacity": 5000,
"additional_model_logic": [
{
"additional_model_logic": {
"ramp_penalty": {
"type": "RampPenalty",
"variable": "output_1",
"variable_ub": "capacity",
"objective_factor": 0.001
}
]
}
},
"HPC_2": {
"type": "BiPowerElectronic",
"model": "depot_inverter.json",
"min_capacity": 0,
"max_capacity": 5000,
"additional_model_logic": [
{
"additional_model_logic": {
"ramp_penalty": {
"type": "RampPenalty",
"variable": "output_1",
"variable_ub": "capacity",
"objective_factor": 0.001
}
]
}
},
"HPC_3": {
"type": "BiPowerElectronic",
"model": "depot_inverter.json",
"min_capacity": 0,
"max_capacity": 5000,
"additional_model_logic": [
{
"additional_model_logic": {
"ramp_penalty": {
"type": "RampPenalty",
"variable": "output_1",
"variable_ub": "capacity",
"objective_factor": 0.001
}
]
}
},
"bus_1_battery": {
"type": "LiionBattery",
......@@ -89,12 +89,12 @@
"sense": ">=",
"value": [1.0, "first_soe"]
},
"additional_model_logic" : [
{
"additional_model_logic": {
"input_penalty": {
"type": "additional_operational_objective",
"value": [0.2, "input_1"]
}
]
}
},
"bus_1_consumption": {
"type": "ElectricalConsumption"
......@@ -111,12 +111,12 @@
"sense": ">=",
"value": [1.0, "first_soe"]
},
"additional_model_logic" : [
{
"additional_model_logic": {
"input_penalty": {
"type": "additional_operational_objective",
"value": [0.2, "input_1"]
}
]
}
},
"bus_2_consumption": {
"type": "ElectricalConsumption"
......@@ -322,26 +322,26 @@
"planning_horizon": 20,
"price_change_factor": 1.02,
"interest_factor": 1.05,
"additional_model_logic": [
{
"additional_model_logic": {
"battery_capacities": {
"type": "EqualCapacity",
"components": ["bus_1_battery", "bus_2_battery"]
},
{
"charging_capacities": {
"type": "EqualCapacity",
"components": ["depot_inverter_1", "depot_inverter_2"]
},
{
"charger_1_enable": {
"type": "ConnectorEnable",
"component": "depot_inverter_1",
"connector": "output_1"
},
{
"charger_2_enable": {
"type": "ConnectorEnable",
"component": "depot_inverter_2",
"connector": "output_1"
},
{
"HPC_1_bus_1_enable": {
"type": "ConnectionEnable",
"connections": [
{
......@@ -358,7 +358,7 @@
}
]
},
{
"HPC_1_bus_2_enable": {
"type": "ConnectionEnable",
"connections": [
{
......@@ -375,7 +375,7 @@
}
]
},
{
"HPC_2_bus_1_enable": {
"type": "ConnectionEnable",
"connections": [
{
......@@ -392,7 +392,7 @@
}
]
},
{
"HPC_2_bus_2_enable": {
"type": "ConnectionEnable",
"connections": [
{
......@@ -409,7 +409,7 @@
}
]
},
{
"HPC_3_bus_1_enable": {
"type": "ConnectionEnable",
"connections": [
{
......@@ -426,7 +426,7 @@
}
]
},
{
"HPC_3_bus_2_enable": {
"type": "ConnectionEnable",
"connections": [
{
......@@ -443,5 +443,5 @@
}
]
}
]
}
}
\ No newline at end of file
......@@ -65,30 +65,30 @@ prosumer_dict["LaTreille"]["components"]["bus_1_generation"][
prosumer_dict["LaTreille"]["components"]["bus_2_generation"][
"generation"
] = input_profiles["bus_2_recuperation"]
prosumer_dict["LaTreille"]["additional_model_logic"][2]["enable"] = input_profiles[
"bus_1_connected"
].values.loc[:, "Connected to depot"]
prosumer_dict["LaTreille"]["additional_model_logic"][3]["enable"] = input_profiles[
"bus_2_connected"
].values.loc[:, "Connected to depot"]
prosumer_dict["LaTreille"]["additional_model_logic"][4]["enable"] = input_profiles[
"bus_1_connected"
].values.loc[:, "Connected to HPC 1"]
prosumer_dict["LaTreille"]["additional_model_logic"][5]["enable"] = input_profiles[
"bus_1_connected"
].values.loc[:, "Connected to HPC 2"]
prosumer_dict["LaTreille"]["additional_model_logic"][6]["enable"] = input_profiles[
"bus_1_connected"
].values.loc[:, "Connected to HPC 3"]
prosumer_dict["LaTreille"]["additional_model_logic"][7]["enable"] = input_profiles[
"bus_2_connected"
].values.loc[:, "Connected to HPC 1"]
prosumer_dict["LaTreille"]["additional_model_logic"][8]["enable"] = input_profiles[
"bus_2_connected"
].values.loc[:, "Connected to HPC 2"]
prosumer_dict["LaTreille"]["additional_model_logic"][9]["enable"] = input_profiles[
"bus_2_connected"
].values.loc[:, "Connected to HPC 3"]
prosumer_dict["LaTreille"]["additional_model_logic"]["charger_1_enable"][
"enable"
] = input_profiles["bus_1_connected"].values.loc[:, "Connected to depot"]
prosumer_dict["LaTreille"]["additional_model_logic"]["charger_2_enable"][
"enable"
] = input_profiles["bus_2_connected"].values.loc[:, "Connected to depot"]
prosumer_dict["LaTreille"]["additional_model_logic"]["HPC_1_bus_1_enable"][
"enable"
] = input_profiles["bus_1_connected"].values.loc[:, "Connected to HPC 1"]
prosumer_dict["LaTreille"]["additional_model_logic"]["HPC_1_bus_2_enable"][
"enable"
] = input_profiles["bus_1_connected"].values.loc[:, "Connected to HPC 2"]
prosumer_dict["LaTreille"]["additional_model_logic"]["HPC_2_bus_1_enable"][
"enable"
] = input_profiles["bus_1_connected"].values.loc[:, "Connected to HPC 3"]
prosumer_dict["LaTreille"]["additional_model_logic"]["HPC_2_bus_2_enable"][
"enable"
] = input_profiles["bus_2_connected"].values.loc[:, "Connected to HPC 1"]
prosumer_dict["LaTreille"]["additional_model_logic"]["HPC_3_bus_1_enable"][
"enable"
] = input_profiles["bus_2_connected"].values.loc[:, "Connected to HPC 2"]
prosumer_dict["LaTreille"]["additional_model_logic"]["HPC_3_bus_2_enable"][
"enable"
] = input_profiles["bus_2_connected"].values.loc[:, "Connected to HPC 3"]
prosumer_main = ProsumerMain(prosumer_dict, dynamic)
......
......@@ -40,26 +40,26 @@
"sense": ">=",
"value": [1.0, "first_soe"]
},
"additional_model_logic" : [
{
"additional_model_logic": {
"input_penalty": {
"type": "additional_operational_objective",
"value": [0.2, "input_1"]
}
]
}
},
"bus_1_motor_inverter": {
"type": "PowerElectronic",
"model": "motor_inverter.json",
"min_capacity": 0,
"max_capacity": 5000,
"additional_model_logic": [
{
"additional_model_logic": {
"ramp_penalty": {
"type": "RampPenalty",
"variable": "output_1",
"variable_ub": "capacity",
"objective_factor": 0.001
}
]
}
},
"bus_1_consumption": {
"type": "ElectricalConsumption"
......@@ -85,26 +85,26 @@
"sense": ">=",
"value": [1.0, "first_soe"]
},
"additional_model_logic" : [
{
"additional_model_logic": {
"input_penalty": {
"type": "additional_operational_objective",
"value": [0.2, "input_1"]
}
]
}
},
"bus_2_motor_inverter": {
"type": "PowerElectronic",
"model": "motor_inverter.json",
"min_capacity": 0,
"max_capacity": 5000,
"additional_model_logic": [
{
"additional_model_logic": {
"ramp_penalty": {
"type": "RampPenalty",
"variable": "output_1",
"variable_ub": "capacity",
"objective_factor": 0.001
}
]
}
},
"bus_2_consumption": {
"type": "ElectricalConsumption"
......@@ -262,16 +262,16 @@
"planning_horizon": 20,
"price_change_factor": 1.02,
"interest_factor": 1.05,
"additional_model_logic": [
{
"additional_model_logic": {
"battery_capacities": {
"type": "EqualCapacity",
"components": ["bus_1_battery", "bus_2_battery"]
},
{
"charging_capacities": {
"type": "EqualCapacity",
"components": ["bus_1_converter", "bus_2_converter"]
},
{
"bus_1_connected": {
"type": "ConnectionEnable",
"connections": [
{
......@@ -288,7 +288,7 @@
}
]
},
{
"bus_2_connected": {
"type": "ConnectionEnable",
"connections": [
{
......@@ -305,13 +305,13 @@
}
]
},
{
"bus_1_moter_inverter_capacity": {
"type": "FixedCapacity",
"component": "bus_1_motor_inverter"
},
{
"bus_2_moter_inverter_capacity": {
"type": "FixedCapacity",
"component": "bus_1_motor_inverter"
}
]
}
}
\ No newline at end of file
......@@ -65,12 +65,12 @@ prosumer_dict["LaTreille"]["components"]["bus_1_generation"][
prosumer_dict["LaTreille"]["components"]["bus_2_generation"][
"generation"
] = input_profiles["bus_2_recuperation"]
prosumer_dict["LaTreille"]["additional_model_logic"][2]["enable"] = input_profiles[
"bus_1_connected"
].values
prosumer_dict["LaTreille"]["additional_model_logic"][3]["enable"] = input_profiles[
"bus_2_connected"
].values
prosumer_dict["LaTreille"]["additional_model_logic"]["bus_1_connected"][
"enable"
] = input_profiles["bus_1_connected"].values
prosumer_dict["LaTreille"]["additional_model_logic"]["bus_2_connected"][
"enable"
] = input_profiles["bus_2_connected"].values
max_driving_consumpion = max(
max(input_profiles["bus_1_demand"].values),
max(input_profiles["bus_1_demand"].values),
......@@ -79,16 +79,16 @@ with open(
prosumer_dict["LaTreille"]["components"]["bus_1_motor_inverter"]["model"]
) as f:
inverter_1_efficiency = json.load(f)["efficiency"]
prosumer_dict["LaTreille"]["additional_model_logic"][4]["capacity"] = (
max_driving_consumpion / inverter_1_efficiency
)
prosumer_dict["LaTreille"]["additional_model_logic"]["bus_1_moter_inverter_capacity"][
"capacity"
] = (max_driving_consumpion / inverter_1_efficiency)
with open(
prosumer_dict["LaTreille"]["components"]["bus_2_motor_inverter"]["model"]
) as f:
inverter_2_efficiency = json.load(f)["efficiency"]
prosumer_dict["LaTreille"]["additional_model_logic"][5]["capacity"] = (
max_driving_consumpion / inverter_2_efficiency
)
prosumer_dict["LaTreille"]["additional_model_logic"]["bus_2_moter_inverter_capacity"][
"capacity"
] = (max_driving_consumpion / inverter_2_efficiency)
prosumer_main = ProsumerMain(prosumer_dict, dynamic)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment