Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
5e109bc
initial setup of the avgc_data_economic class
AteZenmo Mar 3, 2026
fc6d828
addition of co2 emission pp
AteZenmo Mar 4, 2026
ca293d7
finalization of default pp and pf for co2 emission factor
AteZenmo Mar 6, 2026
773941f
Merge branch 'main' into CO2-emission-pp
AteZenmo Mar 6, 2026
5f83a9c
Merge branch 'main' into economicAVGC_data
AteZenmo Mar 6, 2026
4bc79f8
Merge branch 'CO2-emission-pp' into economicAVGC_data
AteZenmo Mar 6, 2026
2ff013b
Merge branch 'main' into economicAVGC_data
AteZenmo Mar 10, 2026
b6bb084
grid operator class setup
AteZenmo Mar 10, 2026
e0eb7c3
nfato refactor and connectionMetaData class updates
AteZenmo Mar 13, 2026
070b9fa
refactor van connection capacity meta data + nfato functionality
AteZenmo Mar 17, 2026
effc931
name change and updates to economic data avgc and gridoperator tariffs
AteZenmo Mar 20, 2026
c103f06
Merge branch 'main' into economicAVGC_data
AteZenmo Mar 20, 2026
c52abc7
adjustments to avgc + added acc_annualHeatBalance_kW to grid node
AteZenmo Mar 24, 2026
f71de93
initial version of light asset information save
AteZenmo Mar 24, 2026
003b2b4
Merge branch 'main' into economicAVGC_data
AteZenmo Mar 27, 2026
c394ccd
Merge branch 'main' into economicAVGC_data
AteZenmo Mar 27, 2026
22ac879
co2 emissino per energy carrier map added
AteZenmo Mar 27, 2026
acf326c
Merge branch 'main' into economicAVGC_data
AteZenmo Mar 30, 2026
2c1642f
merge fixes
AteZenmo Mar 30, 2026
e767e3d
Merge branch 'main' into economicAVGC_data
AteZenmo Mar 30, 2026
d2edda0
bugfixes and cleanup + rename of capacity sharing contract
AteZenmo Mar 30, 2026
1852efb
rename of monthStartHours variable
AteZenmo Mar 30, 2026
fed3b6c
Update Class.J_ConnectionMetaData.java
AteZenmo Mar 31, 2026
374bfba
Merge branch 'main' into economicAVGC_data
AteZenmo Apr 2, 2026
d0b579a
merge fix
AteZenmo Apr 2, 2026
a182360
merge fixes
AteZenmo Apr 2, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 53 additions & 0 deletions Zero_engine.alpx
Original file line number Diff line number Diff line change
Expand Up @@ -832,6 +832,10 @@
<Id>1769674053743</Id>
<Name><![CDATA[KW]]></Name>
</Option>
<Option>
<Id>1772717876628</Id>
<Name><![CDATA[CO2EMISSION_KGPKWH]]></Name>
</Option>
</OptionList>
<OptionList>
<Id>1726685111559</Id>
Expand Down Expand Up @@ -1206,6 +1210,41 @@ EXCLUDE_PV => Use PV profile to preprocess gridnode profile to create a more acc
<Name><![CDATA[EXCLUDE_PV]]></Name>
</Option>
</OptionList>
<OptionList>
<Id>1772554719495</Id>
<Name><![CDATA[OL_GridOperator]]></Name>
<Option>
<Id>1772554719496</Id>
<Name><![CDATA[ENEXIS]]></Name>
</Option>
<Option>
<Id>1772554719497</Id>
<Name><![CDATA[STEDIN]]></Name>
</Option>
<Option>
<Id>1772554719498</Id>
<Name><![CDATA[LIANDER]]></Name>
</Option>
<Option>
<Id>1772554719499</Id>
<Name><![CDATA[WESTLAND_INFRA]]></Name>
</Option>
</OptionList>
<OptionList>
<Id>1773327283452</Id>
<Name><![CDATA[OL_ConnectionSizeType]]></Name>
<Description><![CDATA[SMALL_CONNECTION (kleinverbruik, <= 3x80)
LARGE_CONNECTION (grootverbruik, > 3x80)
]]></Description>
<Option>
<Id>1773327283453</Id>
<Name><![CDATA[SMALL_CONNECTION]]></Name>
</Option>
<Option>
<Id>1773327283454</Id>
<Name><![CDATA[LARGE_CONNECTION]]></Name>
</Option>
</OptionList>
<OptionList>
<Id>1773399744566</Id>
<Name><![CDATA[OL_PVOrientation]]></Name>
Expand Down Expand Up @@ -2026,6 +2065,16 @@ EXCLUDE_PV => Use PV profile to preprocess gridnode profile to create a more acc
<Id>1772013198482</Id>
<Name><![CDATA[I_StoreStatesAndReset]]></Name>
</JavaClass>
<JavaClass>
<Id>1772554413488</Id>
<Name><![CDATA[J_AVGC_Economic_data]]></Name>
<Folder>1752680962144</Folder>
</JavaClass>
<JavaClass>
<Id>1773938776746</Id>
<Name><![CDATA[I_GridOperatorTariffs]]></Name>
<Folder>1752680962144</Folder>
</JavaClass>
<JavaClass>
<Id>1773841546071</Id>
<Name><![CDATA[J_BatteryManagementLocalBalancing]]></Name>
Expand All @@ -2036,6 +2085,10 @@ EXCLUDE_PV => Use PV profile to preprocess gridnode profile to create a more acc
<Name><![CDATA[J_EAConversionAirConditioner]]></Name>
<Folder>1752677832758</Folder>
</JavaClass>
<JavaClass>
<Id>1774877343744</Id>
<Name><![CDATA[J_CapacitySharingContract]]></Name>
</JavaClass>
<JavaClass>
<Id>1774957587021</Id>
<Name><![CDATA[I_AggregatorEnergyManagement]]></Name>
Expand Down
31 changes: 18 additions & 13 deletions _alp/Agents/EnergyCoop/Code/Functions.java
Original file line number Diff line number Diff line change
Expand Up @@ -220,9 +220,6 @@
v_batteryStoredEnergy_kWh += EC.v_batteryStoredEnergy_kWh;
v_currentPrimaryEnergyProductionHeatpumps_kW += EC.v_currentPrimaryEnergyProductionHeatpumps_kW;
v_currentOwnElectricityProduction_kW += EC.fm_currentProductionFlows_kW.get(OL_EnergyCarriers.ELECTRICITY);

// Asset flows
//v_assetFlows.addFlows(EC.v_assetFlows);
}
}

Expand Down Expand Up @@ -568,34 +565,42 @@

double f_initialize(J_TimeParameters timeParameters)
{/*ALCODESTART::1669042410671*/
v_liveConnectionMetaData.contractedDeliveryCapacityKnown = true;
v_liveConnectionMetaData.contractedFeedinCapacityKnown = true;
double cumulativeContractedDeliveryCapacity_kW = 0;
double cumulativeContractedFeedinCapacity_kW = 0;
boolean cumulativeContractedDeliveryCapacityKnown = true;
boolean cumulativeContractedFeedinCapacityKnown = true;

v_liveData.activeEnergyCarriers = EnumSet.of(OL_EnergyCarriers.ELECTRICITY);
v_liveData.activeProductionEnergyCarriers = EnumSet.of(OL_EnergyCarriers.ELECTRICITY);
v_liveData.activeConsumptionEnergyCarriers= EnumSet.of(OL_EnergyCarriers.ELECTRICITY);
v_liveData.assetsMetaData.activeAssetFlows.clear();
v_liveConnectionMetaData.contractedDeliveryCapacity_kW = 0.0;
v_liveConnectionMetaData.contractedFeedinCapacity_kW = 0.0;
v_liveConnectionMetaData.setCapacities_kW(0, 0, 0);

//Get energy carriers and capacities boolean
for(GridConnection GC:c_memberGridConnections){
if(GC.v_isActive){
v_liveConnectionMetaData.contractedDeliveryCapacity_kW += GC.v_liveConnectionMetaData.contractedDeliveryCapacity_kW;
v_liveConnectionMetaData.contractedFeedinCapacity_kW += GC.v_liveConnectionMetaData.contractedFeedinCapacity_kW;
cumulativeContractedDeliveryCapacity_kW += GC.v_liveConnectionMetaData.getContractedDeliveryCapacity_kW();
cumulativeContractedFeedinCapacity_kW += GC.v_liveConnectionMetaData.getContractedFeedinCapacity_kW();
v_liveData.activeEnergyCarriers.addAll(GC.v_liveData.activeEnergyCarriers);
v_liveData.activeProductionEnergyCarriers.addAll(GC.v_liveData.activeProductionEnergyCarriers);
v_liveData.activeConsumptionEnergyCarriers.addAll(GC.v_liveData.activeConsumptionEnergyCarriers);
v_liveData.assetsMetaData.activeAssetFlows.addAll(GC.v_liveData.assetsMetaData.activeAssetFlows);

if(!GC.v_liveConnectionMetaData.contractedDeliveryCapacityKnown){
v_liveConnectionMetaData.contractedDeliveryCapacityKnown = false;
if(!GC.v_liveConnectionMetaData.getContractedDeliveryCapacityKnown()){
cumulativeContractedDeliveryCapacityKnown = false;
}

if(!GC.v_liveConnectionMetaData.contractedFeedinCapacityKnown){
v_liveConnectionMetaData.contractedFeedinCapacityKnown = false;
if(!GC.v_liveConnectionMetaData.getContractedFeedinCapacityKnown()){
cumulativeContractedFeedinCapacityKnown = false;
}
}
}
//For coops this value does not make sense, but is mandatory for the model currently so just get the max of the 2 contracted.
double physicalCapacity_kW = max(cumulativeContractedDeliveryCapacity_kW, cumulativeContractedFeedinCapacity_kW);

//Set connection values
v_liveConnectionMetaData.setCapacities_kW(cumulativeContractedDeliveryCapacity_kW, cumulativeContractedFeedinCapacity_kW, physicalCapacity_kW);
v_liveConnectionMetaData.setCapacitiesKnown(cumulativeContractedDeliveryCapacityKnown, cumulativeContractedFeedinCapacityKnown, false);


acc_totalOwnElectricityProduction_kW = new ZeroAccumulator(true, timeParameters.getTimeStep_h(), 8760);
Expand Down
25 changes: 1 addition & 24 deletions _alp/Agents/EnergyCoop/Variables.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1451,33 +1451,10 @@
<Type><![CDATA[J_ConnectionMetaData]]></Type>
</Properties>
</Variable>
<Variable Class="PlainVariable">
<Id>1753111072241</Id>
<Name><![CDATA[v_assetFlows]]></Name>
<ExcludeFromBuild>true</ExcludeFromBuild>
<X>60</X>
<Y>1160</Y>
<Label>
<X>10</X>
<Y>0</Y>
</Label>
<PublicFlag>false</PublicFlag>
<PresentationFlag>true</PresentationFlag>
<ShowLabel>true</ShowLabel>
<Properties SaveInSnapshot="true"
Constant="false"
AccessType="public"
StaticVariable="false">
<Type><![CDATA[J_AssetFlows]]></Type>
<InitialValue Class="CodeValue">
<Code><![CDATA[new J_AssetFlows()]]></Code>
</InitialValue>
</Properties>
</Variable>
<Variable Class="PlainVariable">
<Id>1753970982500</Id>
<Name><![CDATA[fm_currentAssetFlows_kW]]></Name>
<X>202</X>
<X>62</X>
<Y>1161</Y>
<Label>
<X>10</X>
Expand Down
12 changes: 6 additions & 6 deletions _alp/Agents/EnergyDataViewer/Code/Functions.java
Original file line number Diff line number Diff line change
Expand Up @@ -86,16 +86,16 @@
double f_updateVariables(I_EnergyData data)
{/*ALCODESTART::1741792546535*/
//Grid capacity
v_gridCapacityDelivery_kW = data.getLiveData().connectionMetaData.contractedDeliveryCapacity_kW;
v_gridCapacityFeedIn_kW = data.getLiveData().connectionMetaData.contractedFeedinCapacity_kW;
v_gridCapacityDelivery_kW = data.getLiveData().connectionMetaData.getContractedDeliveryCapacity_kW();
v_gridCapacityFeedIn_kW = data.getLiveData().connectionMetaData.getContractedFeedinCapacity_kW();

v_gridCapacityDelivery_kW_rapidRun = data.getRapidRunData().connectionMetaData.contractedDeliveryCapacity_kW;
v_gridCapacityFeedIn_kW_rapidRun = data.getRapidRunData().connectionMetaData.contractedFeedinCapacity_kW;
v_gridCapacityDelivery_kW_rapidRun = data.getRapidRunData().connectionMetaData.getContractedDeliveryCapacity_kW();
v_gridCapacityFeedIn_kW_rapidRun = data.getRapidRunData().connectionMetaData.getContractedFeedinCapacity_kW();
//area.v_gridCapacityDelivery_groupcontract_kW = GC.p_contractedDeliveryCapacity_kW;
//area.v_gridCapacityFeedin_groupcontract_kW = GC.p_contractedFeedinCapacity_kW;

b_isRealDeliveryCapacityAvailable = data.getLiveData().connectionMetaData.contractedDeliveryCapacityKnown;
b_isRealFeedinCapacityAvailable = data.getLiveData().connectionMetaData.contractedFeedinCapacityKnown;
b_isRealDeliveryCapacityAvailable = data.getLiveData().connectionMetaData.getContractedDeliveryCapacityKnown();
b_isRealFeedinCapacityAvailable = data.getLiveData().connectionMetaData.getContractedFeedinCapacityKnown();

//Installed Asset variables
v_batteryStorageCapacityInstalled_MWh = data.getLiveData().assetsMetaData.totalInstalledBatteryStorageCapacity_MWh;
Expand Down
27 changes: 13 additions & 14 deletions _alp/Agents/EnergyModel/Code/Functions.java
Original file line number Diff line number Diff line change
Expand Up @@ -62,9 +62,6 @@
v_electricityYieldForecast_fr = (pf_PVProduction35DegSouth_fr.getForecast() * v_liveAssetsMetaData.totalInstalledPVPower_kW + pf_windProduction_fr.getForecast() * v_liveAssetsMetaData.totalInstalledWindPower_kW) / (v_liveAssetsMetaData.totalInstalledPVPower_kW + v_liveAssetsMetaData.totalInstalledWindPower_kW);
}

// And price forecast!
//v_epexForecast_eurpkWh = 0.001*pf_dayAheadElectricityPricing_eurpMWh.getForecast();

for (GridNode GN : c_gridNodeExecutionList) {
GN.f_updateForecasts();
}
Expand Down Expand Up @@ -219,6 +216,9 @@
pf_dayAheadElectricityPricing_eurpMWh = new J_ProfileForecaster(null, pp_dayAheadElectricityPricing_eurpMWh, p_epexForecastTime_h, p_timeVariables.getT_h(), p_timeParameters.getTimeStep_h());
c_forecasts.add(pf_dayAheadElectricityPricing_eurpMWh);

pf_CO2EmissionFactorElectricityImport_kgpkWh = new J_ProfileForecaster(null, pp_CO2EmissionFactorElectricityImport_kgpkWh, p_CO2EmissionFactorForecastTime_h, p_timeVariables.getT_h(), p_timeParameters.getTimeStep_h());
c_forecasts.add(pf_CO2EmissionFactorElectricityImport_kgpkWh);

/*ALCODEEND*/}

double f_runRapidSimulation()
Expand Down Expand Up @@ -246,6 +246,7 @@
// TODO: Fix Boolean store assets here?
GC.v_rapidRunData = new J_RapidRunData(p_timeParameters, true);
GC.v_rapidRunData.assetsMetaData = GC.v_liveAssetsMetaData.getClone();
GC.v_rapidRunData.assetsMetaData.saveActiveAssetAndCapacities(new ArrayList<>(List.of(GC)));
GC.v_rapidRunData.connectionMetaData = GC.v_liveConnectionMetaData.getClone();
GC.v_rapidRunData.initializeAccumulators(GC.v_liveData.activeEnergyCarriers, GC.v_liveData.activeConsumptionEnergyCarriers, GC.v_liveData.activeProductionEnergyCarriers, GC.v_liveAssetsMetaData.activeAssetFlows); //f_initializeAccumulators();

Expand Down Expand Up @@ -273,6 +274,7 @@
}
EC.v_rapidRunData = new J_RapidRunData(p_timeParameters, true);
EC.v_rapidRunData.assetsMetaData = EC.v_liveAssetsMetaData.getClone();
EC.v_rapidRunData.assetsMetaData.saveActiveAssetAndCapacities(EC.f_getAllChildMemberGridConnections());
EC.v_rapidRunData.connectionMetaData = EC.v_liveConnectionMetaData.getClone();
EC.v_rapidRunData.setStoreTotalAssetFlows(true);
EC.v_rapidRunData.initializeAccumulators(EC.v_liveData.activeEnergyCarriers, EC.v_liveData.activeConsumptionEnergyCarriers, EC.v_liveData.activeProductionEnergyCarriers, EC.v_liveAssetsMetaData.activeAssetFlows);
Expand All @@ -287,7 +289,8 @@
v_previousRunData = v_rapidRunData;
}
v_rapidRunData = new J_RapidRunData(p_timeParameters, true);
v_rapidRunData.assetsMetaData = v_liveAssetsMetaData.getClone();
v_rapidRunData.assetsMetaData = v_liveAssetsMetaData.getClone();
v_rapidRunData.assetsMetaData.saveActiveAssetAndCapacities(c_gridConnections);
v_rapidRunData.connectionMetaData = v_liveConnectionMetaData.getClone();
v_rapidRunData.initializeAccumulators(v_liveData.activeEnergyCarriers, v_liveData.activeConsumptionEnergyCarriers, v_liveData.activeProductionEnergyCarriers, v_liveAssetsMetaData.activeAssetFlows); //f_initializeAccumulators();
f_resetAnnualValues();
Expand Down Expand Up @@ -492,12 +495,8 @@


//Set cumulative toplevel grid values as energyModel values
v_liveConnectionMetaData.physicalCapacity_kW = topLevelElectricGridCapacity_kW;
v_liveConnectionMetaData.contractedDeliveryCapacity_kW = topLevelElectricGridCapacity_kW;
v_liveConnectionMetaData.contractedFeedinCapacity_kW = topLevelElectricGridCapacity_kW;
v_liveConnectionMetaData.physicalCapacityKnown = topLevelGridCapacitiesKnown;
v_liveConnectionMetaData.contractedDeliveryCapacityKnown = topLevelGridCapacitiesKnown;
v_liveConnectionMetaData.contractedFeedinCapacityKnown = topLevelGridCapacitiesKnown;
v_liveConnectionMetaData.setCapacities_kW(topLevelElectricGridCapacity_kW, topLevelElectricGridCapacity_kW, topLevelElectricGridCapacity_kW);
v_liveConnectionMetaData.setCapacitiesKnown(topLevelGridCapacitiesKnown, topLevelGridCapacitiesKnown, topLevelGridCapacitiesKnown);

//traceln("Grid Node execution list: %s", c_gridNodeExecutionList );
/*ALCODEEND*/}
Expand Down Expand Up @@ -587,9 +586,9 @@ ArrayList<GridConnection> f_getActiveGridConnections()
GN.f_initializeGridnode();
}

v_liveData.connectionMetaData.contractedDeliveryCapacityKnown = false;
v_liveData.connectionMetaData.contractedFeedinCapacityKnown = false;
v_liveData.connectionMetaData.physicalCapacityKnown = false;
v_liveData.connectionMetaData.setContractedDeliveryCapacityKnown(false);
v_liveData.connectionMetaData.setContractedFeedinCapacityKnown(false);
v_liveData.connectionMetaData.setPhysicalCapacityKnown(false);

f_initializeForecasts();

Expand All @@ -615,7 +614,7 @@ ArrayList<ConnectionOwner> f_getConnectionOwners()

double f_getTopLevelGridCapacity_kW()
{/*ALCODESTART::1716899946694*/
return v_liveConnectionMetaData.physicalCapacity_kW;
return v_liveConnectionMetaData.getPhysicalCapacity_kW();
/*ALCODEEND*/}

ArrayList<J_EA> f_getEnergyAssets()
Expand Down
4 changes: 2 additions & 2 deletions _alp/Agents/EnergyModel/Code/Functions.xml
Original file line number Diff line number Diff line change
Expand Up @@ -386,8 +386,8 @@
<ReturnType>J_ProfilePointer</ReturnType>
<Id>1727193246625</Id>
<Name><![CDATA[f_findProfile]]></Name>
<X>-600</X>
<Y>472</Y>
<X>-590</X>
<Y>470</Y>
<Label>
<X>10</X>
<Y>0</Y>
Expand Down
26 changes: 13 additions & 13 deletions _alp/Agents/EnergyModel/Levels/Level.level.xml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
<LineMaterial>null</LineMaterial>
<LineStyle>SOLID</LineStyle>
<Width>780</Width>
<Height>380</Height>
<Height>610</Height>
<Rotation>0.0</Rotation>
<FillColor>-1</FillColor>
<FillMaterial>null</FillMaterial>
Expand Down Expand Up @@ -397,8 +397,8 @@
<Line>
<Id>1668602513058</Id>
<Name><![CDATA[line_variables]]></Name>
<X>-620</X>
<Y>506</Y>
<X>-850</X>
<Y>900</Y>
<Label>
<X>10</X>
<Y>0</Y>
Expand All @@ -425,8 +425,8 @@
<Text>
<Id>1668602513060</Id>
<Name><![CDATA[txt_variables]]></Name>
<X>-559</X>
<Y>487</Y>
<X>-789</X>
<Y>881</Y>
<Label>
<X>0</X>
<Y>-10</Y>
Expand All @@ -449,9 +449,9 @@
</Text>
<Text>
<Id>1671703651141</Id>
<Name><![CDATA[text10]]></Name>
<X>-533</X>
<Y>617</Y>
<Name><![CDATA[txt_forecastLengths]]></Name>
<X>-343</X>
<Y>647</Y>
<Label>
<X>0</X>
<Y>-10</Y>
Expand All @@ -464,7 +464,7 @@
<Z>0</Z>
<Rotation>0.0</Rotation>
<Color>-16777216</Color>
<Text><![CDATA[Derived Forecasts]]></Text>
<Text><![CDATA[Forecasts lengths]]></Text>
<Font>
<Name><![CDATA[SansSerif]]></Name>
<Size>11</Size>
Expand Down Expand Up @@ -658,9 +658,9 @@
</Text>
<Line>
<Id>1729238050157</Id>
<Name><![CDATA[line_selectedEnergyCarriers]]></Name>
<X>-620</X>
<Y>635</Y>
<Name><![CDATA[line_forecastLengths]]></Name>
<X>-430</X>
<Y>665</Y>
<Label>
<X>10</X>
<Y>0</Y>
Expand Down Expand Up @@ -767,7 +767,7 @@ energyDataViewer.viewArea.navigateTo();</ActionCode>
<Id>1749205921716</Id>
<Name><![CDATA[txt_Forecasters]]></Name>
<X>-860</X>
<Y>617</Y>
<Y>642</Y>
<Label>
<X>0</X>
<Y>-10</Y>
Expand Down
Loading
Loading