From 6584a16b068d1a1529333283060424b668371a98 Mon Sep 17 00:00:00 2001
From: GillisHommen <98752265+GillisHommen@users.noreply.github.com>
Date: Thu, 31 Jul 2025 17:30:40 +0200
Subject: [PATCH 01/16] replaced J_assetFlows with J_assetFlowsMap, all plots
still work it seems.
---
Zero_engine.alpx | 55 +++++++++
_alp/Agents/EnergyCoop/Code/Functions.java | 21 ++--
_alp/Agents/EnergyCoop/Variables.xml | 23 ++++
_alp/Agents/EnergyModel/Code/Functions.java | 20 ++--
_alp/Agents/EnergyModel/Variables.xml | 23 ++++
.../Agents/GridConnection/Code/Functions.java | 16 ++-
_alp/Agents/GridConnection/Code/Functions.xml | 4 +
_alp/Agents/GridConnection/Variables.xml | 24 +++-
_alp/Classes/Class.J_AssetFlowsMap.java | 113 ++++++++++++++++++
_alp/Classes/Class.J_EA.java | 11 +-
_alp/Classes/Class.J_EAConversion.java | 3 +
.../Class.J_EAConversionElectrolyser.java | 3 +-
.../Class.J_EAConversionHeatDeliverySet.java | 3 +-
_alp/Classes/Class.J_EADieselTractor.java | 2 +-
_alp/Classes/Class.J_EADieselVehicle.java | 4 +-
_alp/Classes/Class.J_EAHydrogenVehicle.java | 2 +-
_alp/Classes/Class.J_EAProduction.java | 12 +-
_alp/Classes/Class.J_EAProfile.java | 37 +++---
_alp/Classes/Class.J_EAStorageElectric.java | 3 +
_alp/Classes/Class.J_LiveData.java | 37 +++---
_alp/Classes/Class.J_RapidRunData.java | 87 ++++++++------
21 files changed, 394 insertions(+), 109 deletions(-)
create mode 100644 _alp/Classes/Class.J_AssetFlowsMap.java
diff --git a/Zero_engine.alpx b/Zero_engine.alpx
index f0c492d0..03a5d807 100644
--- a/Zero_engine.alpx
+++ b/Zero_engine.alpx
@@ -1280,6 +1280,54 @@
+
+ 1753968826411
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -1734,6 +1782,8 @@
1753106536266
+ true
+ 1752679379816
1753199813037
@@ -1775,6 +1825,11 @@
1753342021373
+
+ 1753968339982
+
+ 1752679379816
+
com.anylogic.libraries.modules.markup_descriptors
diff --git a/_alp/Agents/EnergyCoop/Code/Functions.java b/_alp/Agents/EnergyCoop/Code/Functions.java
index 60448c50..7ed6664b 100644
--- a/_alp/Agents/EnergyCoop/Code/Functions.java
+++ b/_alp/Agents/EnergyCoop/Code/Functions.java
@@ -176,26 +176,26 @@
fm_currentProductionFlows_kW.clear();
fm_currentConsumptionFlows_kW.clear();
fm_currentBalanceFlows_kW.clear();
+fm_currentAssetFlows_kW.clear();
v_currentPrimaryEnergyProduction_kW = 0;
v_currentFinalEnergyConsumption_kW = 0;
v_currentEnergyCurtailed_kW = 0;
v_currentPrimaryEnergyProductionHeatpumps_kW = 0;
-v_assetFlows.reset();
for(GridConnection gc : c_memberGridConnections) { // Can't do this in parallel due to different threads writing to the same values!
fm_currentBalanceFlows_kW.addFlows(gc.fm_currentBalanceFlows_kW);
fm_currentProductionFlows_kW.addFlows(gc.fm_currentProductionFlows_kW);
fm_currentConsumptionFlows_kW.addFlows(gc.fm_currentConsumptionFlows_kW);
-
+ fm_currentAssetFlows_kW.addFlows(gc.fm_currentAssetFlows_kW);
v_currentFinalEnergyConsumption_kW += gc.v_currentFinalEnergyConsumption_kW;
v_currentPrimaryEnergyProduction_kW += gc.v_currentPrimaryEnergyProduction_kW;
v_currentEnergyCurtailed_kW += gc.v_currentEnergyCurtailed_kW;
v_currentPrimaryEnergyProductionHeatpumps_kW += gc.v_currentPrimaryEnergyProductionHeatpumps_kW;
v_currentOwnElectricityProduction_kW += gc.fm_currentProductionFlows_kW.get(OL_EnergyCarriers.ELECTRICITY);
- v_assetFlows.addFlows(gc.v_assetFlows);
+
}
// gather electricity flows
@@ -206,7 +206,7 @@
fm_currentBalanceFlows_kW.addFlows(EC.fm_currentBalanceFlows_kW);
fm_currentProductionFlows_kW.addFlows(EC.fm_currentProductionFlows_kW);
fm_currentConsumptionFlows_kW.addFlows(EC.fm_currentConsumptionFlows_kW);
-
+ fm_currentAssetFlows_kW.addFlows(EC.fm_currentAssetFlows_kW);
v_currentPrimaryEnergyProduction_kW += EC.v_currentPrimaryEnergyProduction_kW;
v_currentFinalEnergyConsumption_kW += EC.v_currentFinalEnergyConsumption_kW;
v_currentEnergyCurtailed_kW += EC.v_currentEnergyCurtailed_kW;
@@ -214,7 +214,7 @@
v_currentOwnElectricityProduction_kW += EC.fm_currentProductionFlows_kW.get(OL_EnergyCarriers.ELECTRICITY);
// Asset flows
- v_assetFlows.addFlows(EC.v_assetFlows);
+ //v_assetFlows.addFlows(EC.v_assetFlows);
}
}
@@ -224,6 +224,7 @@
fm_currentProductionFlows_kW.addFlow( energyCarrier, max(0, -nettConsumption_kW));
fm_currentConsumptionFlows_kW.addFlow( energyCarrier, max(0, nettConsumption_kW));
fm_currentBalanceFlows_kW.addFlow( energyCarrier, nettConsumption_kW);
+
if (energyCarrier == OL_EnergyCarriers.ELECTRICITY) {
v_currentCustomerFeedIn_kW += max(0,-nettConsumption_kW);
v_currentCustomerDelivery_kW += max(0,nettConsumption_kW);
@@ -238,7 +239,7 @@
fm_currentBalanceFlows_kW.addFlows(EC.fm_currentBalanceFlows_kW);
fm_currentProductionFlows_kW.addFlows(EC.fm_currentProductionFlows_kW);
fm_currentConsumptionFlows_kW.addFlows(EC.fm_currentConsumptionFlows_kW);
-
+ fm_currentAssetFlows_kW.addFlows(EC.fm_currentAssetFlows_kW);
v_currentCustomerFeedIn_kW += EC.v_currentCustomerFeedIn_kW;
v_currentCustomerDelivery_kW += EC.v_currentCustomerDelivery_kW;
}
@@ -768,11 +769,12 @@
fm_currentBalanceFlows_kW,
fm_currentConsumptionFlows_kW,
fm_currentProductionFlows_kW,
+ fm_currentAssetFlows_kW,
v_currentPrimaryEnergyProduction_kW,
v_currentFinalEnergyConsumption_kW,
v_currentPrimaryEnergyProductionHeatpumps_kW,
- v_currentEnergyCurtailed_kW,
- v_assetFlows
+ v_currentEnergyCurtailed_kW//,
+ //v_assetFlows
);
/*
//Current timestep
@@ -1483,11 +1485,12 @@ HashSet f_getAllChildCustomerGridConnections_recursion(HashSet
1753111072241
+ true
60
1160