From dfdecc039878ac112a2c845502cfddfbfa1e2a95 Mon Sep 17 00:00:00 2001 From: Luc-Sol Date: Mon, 5 May 2025 16:30:58 +0200 Subject: [PATCH 1/6] Replaced Benuttingsgraad with new KPI + added infobubbles - New KPI to replace old benuttingsgraad. It gives insight into the room to expand by analysing the day with the most delivery and seeing what is possible with flex / a battery. - Added Infobubbles - Changed some positions, mainly of centres of groups to the top left corner. - Also some refactoring of names in de LoadCurve and Profile plot agents. --- .../ChartNetbelasting/Code/Functions.java | 157 ++- .../ChartNetbelasting/Code/Functions.xml | 128 +- .../ChartNetbelasting/Levels/Level.level.xml | 1054 +++++++++------ .../Code/AdditionalClassCode.java | 4 +- .../Agents/ChartProfielen/Code/Functions.java | 46 +- .../ChartProfielen/Levels/Level.level.xml | 1201 +++++++++-------- _alp/Agents/UI_Results/Code/Functions.java | 4 +- _alp/Classes/Class.J_InfoTextResultsUI.java | 10 +- _alp/ModelResources.xml | 10 + arrow.png | Bin 0 -> 11518 bytes battery.png | Bin 0 -> 9549 bytes 11 files changed, 1504 insertions(+), 1110 deletions(-) create mode 100644 arrow.png create mode 100644 battery.png diff --git a/_alp/Agents/ChartNetbelasting/Code/Functions.java b/_alp/Agents/ChartNetbelasting/Code/Functions.java index fcbdeb3..1edac0a 100644 --- a/_alp/Agents/ChartNetbelasting/Code/Functions.java +++ b/_alp/Agents/ChartNetbelasting/Code/Functions.java @@ -1,47 +1,3 @@ -double f_setBelastingPlots() -{/*ALCODESTART::1714746143909*/ -f_resetPlots(); - -//Set selected object display -uI_Results.f_setSelectedObjectDisplay(230, 50, true); - -if(uI_Results.v_selectedObjectScope == OL_ResultScope.GRIDNODE){ - f_setBelastingPlotsGN(); - return; -} - -I_EnergyData data = uI_Results.f_getSelectedObjectData(); -J_LoadDurationCurves loadDurationCurves = data.getRapidRunData().getLoadDurationCurves(uI_Results.energyModel); - -f_addDataToPlots(data, loadDurationCurves); -f_setMaxPeakValues(data, loadDurationCurves); - - -f_setNetAverageLoad(data, loadDurationCurves); -/*ALCODEEND*/} - -double f_setNetAverageLoad(I_EnergyData dataObject,J_LoadDurationCurves loadDurationCurves) -{/*ALCODESTART::1714746143911*/ -double simulationDuration = uI_Results.energyModel.p_runEndTime_h - uI_Results.energyModel.p_runStartTime_h; -double benuttingsgraad_pct = 0; -double connectionCapacity_delivery_MW = dataObject.getRapidRunData().connectionMetaData.contractedDeliveryCapacity_kW/1000; -double connectionCapacity_feedin_MW = dataObject.getRapidRunData().connectionMetaData.contractedFeedinCapacity_kW/1000; -double totalImportElectricity_MWh = dataObject.getRapidRunData().getTotalImport_MWh(OL_EnergyCarriers.ELECTRICITY); -double totalExportElectricity_MWh = dataObject.getRapidRunData().getTotalExport_MWh(OL_EnergyCarriers.ELECTRICITY); - -if( connectionCapacity_delivery_MW > 0 && connectionCapacity_feedin_MW > 0){ - benuttingsgraad_pct = ((totalImportElectricity_MWh / connectionCapacity_delivery_MW) + (totalExportElectricity_MWh / connectionCapacity_feedin_MW)) / (simulationDuration) * 100; -} -else if( connectionCapacity_delivery_MW > 0){ - benuttingsgraad_pct = (totalImportElectricity_MWh / connectionCapacity_delivery_MW)/ (simulationDuration) * 100; -} -else if(connectionCapacity_feedin_MW > 0){ - benuttingsgraad_pct = (totalExportElectricity_MWh / connectionCapacity_feedin_MW)/ (simulationDuration) * 100; -} - -t_KPIBenuttingsgraad.setText(roundToDecimal(benuttingsgraad_pct, 0) + "%"); -/*ALCODEEND*/} - double f_resetPlots() {/*ALCODESTART::1714922345475*/ plot_jaar.removeAll(); @@ -78,7 +34,7 @@ else if(maxDeliveryAndFeedin_kW < 1 * pow(10,6)){ } //Adjust y label to selected unit type -f_setYlabels_loadDurationCurve(power_unit); +f_setYlabels(power_unit); DataSet loadDurationCurveTotal = uI_Results.f_createNewDataSetDividedByValue(loadDurationCurves.ds_loadDurationCurveTotal_kW, divisionAmountForCorrectUnit); double minValue = loadDurationCurveTotal.getYMin(); @@ -201,26 +157,14 @@ else if(uI_Results.v_selectedObjectScope == OL_ResultScope.ENERGYMODEL){ /*ALCODEEND*/} -double f_setBelastingPlotsGN() +double f_setLoadPlotsGN() {/*ALCODESTART::1741699130819*/ GridNode GN = uI_Results.v_gridNode; f_addDataToPlotsGN(GN); -f_setMaxPeakValuesGN(GN); -f_setNetAverageLoadGN(GN); -/*ALCODEEND*/} +f_setKPIValuesGN(GN); -double f_setNetAverageLoadGN(GridNode GN) -{/*ALCODESTART::1741699130821*/ -double simulationDuration = uI_Results.energyModel.p_runEndTime_h - uI_Results.energyModel.p_runStartTime_h; -double benuttingsgraad = 0; -double totalAbsoluteLoad_kW = 0; -for(int i=0; i< GN.data_netbelastingDuurkromme_kW.size(); i++){ - totalAbsoluteLoad_kW += abs(GN.data_netbelastingDuurkromme_kW.getY(i))* uI_Results.energyModel.p_timeStep_h; -} -benuttingsgraad = (totalAbsoluteLoad_kW / (GN.p_capacity_kW * simulationDuration )) * 100; -t_KPIBenuttingsgraad.setText(roundToDecimal(benuttingsgraad, 0) + "%"); /*ALCODEEND*/} double f_addDataToPlotsGN(GridNode GN) @@ -251,7 +195,7 @@ else if(maxDeliveryAndFeedin_kW < 1 * pow(10,6)){ } //Adjust y label to selected unit type -f_setYlabels_loadDurationCurve(power_unit); +f_setYlabels(power_unit); DataSet loadDurationCurveTotal = uI_Results.f_createNewDataSetDividedByValue(GN.data_netbelastingDuurkromme_kW, divisionAmountForCorrectUnit); double minValue = loadDurationCurveTotal.getYMin(); @@ -350,7 +294,7 @@ else if(maxDeliveryAndFeedin_kW < 1 * pow(10,6)){ /*ALCODEEND*/} -String f_setMaxPeakValues(I_EnergyData dataObject,J_LoadDurationCurves loadDurationCurves) +String f_setKPIValues(I_EnergyData dataObject,J_LoadDurationCurves loadDurationCurves) {/*ALCODESTART::1743519606875*/ ////Get the peaks double maxDelivery_kW = max(0, loadDurationCurves.ds_loadDurationCurveTotal_kW.getYMax()); @@ -401,23 +345,48 @@ else if(maxFeedin_unit > 10){ } ////Max peaks in percentages -double deliveryCapacity_kW = dataObject.getRapidRunData().connectionMetaData.contractedDeliveryCapacity_kW; -double feedinCapacity_kW = dataObject.getRapidRunData().connectionMetaData.contractedFeedinCapacity_kW; -if(deliveryCapacity_kW > 0){ +if (dataObject.getRapidRunData().connectionMetaData.contractedDeliveryCapacityKnown && dataObject.getRapidRunData().connectionMetaData.contractedDeliveryCapacity_kW > 0) { + double deliveryCapacity_kW = dataObject.getRapidRunData().connectionMetaData.contractedDeliveryCapacity_kW; t_maxDelivery_pct.setText(roundToInt(maxDelivery_kW/dataObject.getRapidRunData().connectionMetaData.contractedDeliveryCapacity_kW * 100) + " %"); + gr_relativeDeliveryInfo.setVisible(true); } else{ - t_maxDelivery_pct.setText("-"); + gr_relativeDeliveryInfo.setVisible(false); } -if(feedinCapacity_kW > 0){ +if (dataObject.getRapidRunData().connectionMetaData.contractedFeedinCapacityKnown && dataObject.getRapidRunData().connectionMetaData.contractedFeedinCapacity_kW > 0) { + double feedinCapacity_kW = dataObject.getRapidRunData().connectionMetaData.contractedFeedinCapacity_kW; t_maxFeedin_pct.setText(roundToInt(maxFeedin_kW/dataObject.getRapidRunData().connectionMetaData.contractedFeedinCapacity_kW * 100) + " %"); + gr_relativeFeedinInfo.setVisible(true); } else{ - t_maxFeedin_pct.setText("-"); + gr_relativeFeedinInfo.setVisible(false); +} + + +// Growth +if (dataObject.getRapidRunData().connectionMetaData.contractedDeliveryCapacityKnown && dataObject.getRapidRunData().connectionMetaData.contractedDeliveryCapacity_kW > 0) { + Pair pair = dataObject.getRapidRunData().getFlexPotential(); + if (pair.getFirst() < 1) { + traceln("current highest avg daily use already above connection limit"); + } + t_growthPercentage.setText(round((pair.getFirst() - 1 ) * 100) + " %") ; + if (pair.getSecond() < 1000) { + t_batterySize.setText( roundToDecimal(pair.getSecond(), 1) + " kWh" ); + } + else if (pair.getSecond() < 1_000_000) { + t_batterySize.setText( roundToDecimal(pair.getSecond() / 1000, 1) + " MWh" ); + } + else { + t_batterySize.setText( roundToDecimal(pair.getSecond() / 1_000_000, 1) + " GWh" ); + } + gr_flexPotential.setVisible(true); +} +else { + gr_flexPotential.setVisible(false); } /*ALCODEEND*/} -double f_setMaxPeakValuesGN(GridNode GN) +double f_setKPIValuesGN(GridNode GN) {/*ALCODESTART::1743519634438*/ ////Get the peaks double maxDelivery_kW = max(0, GN.data_netbelastingDuurkromme_kW.getYMax()); @@ -469,15 +438,53 @@ else if(maxFeedin_unit > 10){ ////Max peaks in percentages -t_maxDelivery_pct.setText(roundToInt(maxDelivery_kW/GN.p_capacity_kW * 100) + " %"); -t_maxFeedin_pct.setText(roundToInt(maxFeedin_kW/GN.p_capacity_kW * 100) + " %"); +if (GN.p_realCapacityAvailable) { + t_maxDelivery_pct.setText(roundToInt(maxDelivery_kW/GN.p_capacity_kW * 100) + " %"); + t_maxFeedin_pct.setText(roundToInt(maxFeedin_kW/GN.p_capacity_kW * 100) + " %"); + + gr_relativeDeliveryInfo.setVisible(true); + gr_relativeFeedinInfo.setVisible(true); +} +else { + gr_relativeDeliveryInfo.setVisible(false); + gr_relativeFeedinInfo.setVisible(false); +} + +gr_flexPotential.setVisible(false); /*ALCODEEND*/} -double f_setYlabels_loadDurationCurve(String power_unit) +double f_setYlabels(String power_unit) {/*ALCODESTART::1743761224093*/ -t_duurkromme_ylabel.setText("Vermogen [" + power_unit + "]"); -t_duurkromme_ylabel1.setText("Vermogen [" + power_unit + "]"); -t_duurkromme_ylabel2.setText("Vermogen [" + power_unit + "]"); -t_duurkromme_ylabel3.setText("Vermogen [" + power_unit + "]"); +t_netLoadDurationCurve_ylabel.setText("Vermogen [" + power_unit + "]"); +t_netLoadDurationCurveSummerWinter_ylabel.setText("Vermogen [" + power_unit + "]"); +t_netLoadDurationCurveDayNight_ylabel.setText("Vermogen [" + power_unit + "]"); +t_netLoadDurationCurveWeekWeekend_ylabel.setText("Vermogen [" + power_unit + "]"); +/*ALCODEEND*/} + +double f_setCharts() +{/*ALCODESTART::1746451303236*/ +f_resetPlots(); + +//Set selected object display +uI_Results.f_setSelectedObjectDisplay(230, 50, true); + +if(uI_Results.v_selectedObjectScope == OL_ResultScope.GRIDNODE){ + f_setLoadPlotsGN(); + return; +} +else { + f_setLoadPlots(); +} + + +/*ALCODEEND*/} + +double f_setLoadPlots() +{/*ALCODESTART::1746451351928*/ +I_EnergyData data = uI_Results.f_getSelectedObjectData(); +J_LoadDurationCurves loadDurationCurves = data.getRapidRunData().getLoadDurationCurves(uI_Results.energyModel); +f_addDataToPlots(data, loadDurationCurves); +f_setKPIValues(data, loadDurationCurves); + /*ALCODEEND*/} diff --git a/_alp/Agents/ChartNetbelasting/Code/Functions.xml b/_alp/Agents/ChartNetbelasting/Code/Functions.xml index 515a83c..e333ff8 100644 --- a/_alp/Agents/ChartNetbelasting/Code/Functions.xml +++ b/_alp/Agents/ChartNetbelasting/Code/Functions.xml @@ -1,45 +1,5 @@ - - VOID - double - 1714746143909 - - 50 - 770 - - false - true - true - - - - VOID - double - 1714746143911 - - 60 - 890 - - false - true - true - - - - - - - - - - VOID double @@ -61,8 +21,8 @@ double 1714923776978 - 60 - 810 + 80 + 830 - - VOID - double - 1741699130821 - - 370 - 890 + + 280 + 810 @@ -145,8 +85,8 @@ double 1741699130825 - 370 - 810 + 300 + 830 + + VOID + double + 1746451303236 + + 30 + 770 + + false + true + true + + + + VOID + double + 1746451351928 + + 60 + 810 + + false + true + true + + diff --git a/_alp/Agents/ChartNetbelasting/Levels/Level.level.xml b/_alp/Agents/ChartNetbelasting/Levels/Level.level.xml index 380a37f..348f12c 100644 --- a/_alp/Agents/ChartNetbelasting/Levels/Level.level.xml +++ b/_alp/Agents/ChartNetbelasting/Levels/Level.level.xml @@ -301,7 +301,7 @@ 1716385492892 - + -200 -245 1716385492894 - + -200 -35 1716385492896 - + -200 165 - - 1746102751753 - - 330 - 10 - true true false SHAPE_DRAW_2D3D - uI_Results.f_setInfoText(i_netLoadDurationCurve, uI_Results.v_infoText.netLoadDurationCurve, i_netLoadDurationCurve.getX() + gr_year.getX(), i_netLoadDurationCurve.getY() + gr_year.getY()); false 0 - 20 - 20 0.0 - - - digital_twin_results - icon_i.png - - - false - + + + 1746446837783 + + 0 + 0 + + true + true + false + SHAPE_DRAW_2D3D + false + 0 + 116.666 + 100 + 0.0 + + + digital_twin_results + battery.png + + + false + + + 1746446837785 + + 55 + 0 + + true + true + false + SHAPE_DRAW_2D + false + 0 + 0.0 + -16777216 + + + + 14 + + + CENTER + + + 1746446837787 + + 90 + 70 + + true + true + false + SHAPE_DRAW_2D3D + false + 0 + 65.465 + 68.658 + 90.0 + + + digital_twin_results + arrow.png + + + false + + + 1746446837789 + + 55 + 200 + + true + true + false + SHAPE_DRAW_2D3D + false + 0 + 10 + 1 + + null + SOLID + 41.25 + 40 + 0.0 + -10185235 + null + + + 1746446837791 + + 55 + 140 + + true + true + false + SHAPE_DRAW_2D + false + 0 + 0.0 + -16777216 + + + + 14 + + + CENTER + + + 1746446837793 + + 55 + 190 + + true + true + false + SHAPE_DRAW_2D + false + 0 + 0.0 + -1 + + + + 18 + + + CENTER + + + 1746449726604 + + 95 + 0 + + true + true + false + SHAPE_DRAW_2D3D + uI_Results.f_setInfoText(i_battery, uI_Results.v_infoText.batterySize, i_battery.getX() + gr_flexPotential.getX() + gr_year.getX(), i_battery.getY() + gr_flexPotential.getY() + gr_year.getY()); + false + 0 + 20 + 20 + 0.0 + + + digital_twin_results + icon_i.png + + + false + + + 1746449727530 + + 100 + 140 + + true + true + false + SHAPE_DRAW_2D3D + uI_Results.f_setInfoText(i_growth, uI_Results.v_infoText.growthPotential, i_growth.getX() + gr_flexPotential.getX() + gr_year.getX(), i_growth.getY() + gr_flexPotential.getY() + gr_year.getY()); + false + 0 + 20 + 20 + 0.0 + + + digital_twin_results + icon_i.png + + + false + + + diff --git a/_alp/Agents/ChartProfielen/Code/AdditionalClassCode.java b/_alp/Agents/ChartProfielen/Code/AdditionalClassCode.java index 94c8789..82a2eff 100644 --- a/_alp/Agents/ChartProfielen/Code/AdditionalClassCode.java +++ b/_alp/Agents/ChartProfielen/Code/AdditionalClassCode.java @@ -7,9 +7,9 @@ public ShapeRadioButtonGroup getEnergyTypeRadioButton() { } public ShapeGroup getChartGroupWeek() { - return this.group_week; + return this.gr_week; } public ShapeGroup getChartGroupYear() { - return this.group_year; + return this.gr_year; } \ No newline at end of file diff --git a/_alp/Agents/ChartProfielen/Code/Functions.java b/_alp/Agents/ChartProfielen/Code/Functions.java index c4fdc0a..dd3a2a6 100644 --- a/_alp/Agents/ChartProfielen/Code/Functions.java +++ b/_alp/Agents/ChartProfielen/Code/Functions.java @@ -27,7 +27,7 @@ else if(dataObject.getRapidRunData().assetsMetaData.hasHeatGridConnection){//Onl double f_addElectricityFlows_Year(I_EnergyData dataObject) {/*ALCODESTART::1714746057324*/ -group_year.setVisible(true); +gr_year.setVisible(true); double startTime_h = 0; @@ -107,7 +107,7 @@ else if(dataObject.getLiveData().assetsMetaData.hasHeatGridConnection){//Only he double f_addElectricityFlows_Live(I_EnergyData dataObject) {/*ALCODESTART::1714746057328*/ -group_week.setVisible(true); +gr_week.setVisible(true); if (uI_Results.v_selectedObjectScope == OL_ResultScope.ENERGYCOOP && b_subdivideEnergyCoopFlows) { List colorSpectrum = new ArrayList<>(); @@ -186,7 +186,7 @@ else if(dataObject.getRapidRunData().assetsMetaData.hasHeatGridConnection){//Onl double f_addElectricityFlows_SummerWeek(I_EnergyData dataObject) {/*ALCODESTART::1714897296536*/ -group_week.setVisible(true); +gr_week.setVisible(true); double startTime_h = uI_Results.energyModel.p_startOfSummerWeek_h - uI_Results.energyModel.p_runStartTime_h; if (startTime_h<0) { @@ -243,15 +243,15 @@ else if(dataObject.getRapidRunData().assetsMetaData.hasHeatGridConnection){//Onl AreaCollection f_resetCharts() {/*ALCODESTART::1714897512553*/ -group_week.setVisible(false); -group_year.setVisible(false); -group_day.setVisible(false); -group_trafo_week.setVisible(false); -group_trafo_year.setVisible(false); -group_trafo_day.setVisible(false); -group_netload_week.setVisible(false); -group_netload_year.setVisible(false); -group_netload_day.setVisible(false); +gr_week.setVisible(false); +gr_year.setVisible(false); +gr_day.setVisible(false); +gr_trafoWeek.setVisible(false); +gr_trafoYear.setVisible(false); +gr_trafoDay.setVisible(false); +gr_netLoadWeek.setVisible(false); +gr_netLoadYear.setVisible(false); +gr_netLoadDay.setVisible(false); plot_trafo_week.removeAll(); plot_trafo_year.removeAll(); plot_trafo_day.removeAll(); @@ -298,7 +298,7 @@ else if(dataObject.getRapidRunData().assetsMetaData.hasHeatGridConnection){//Onl double f_addElectricityFlows_WinterWeek(I_EnergyData dataObject) {/*ALCODESTART::1714897923570*/ -group_week.setVisible(true); +gr_week.setVisible(true); double startTime_h = uI_Results.energyModel.p_startOfWinterWeek_h - uI_Results.energyModel.p_runStartTime_h; if (startTime_h<0) { @@ -500,7 +500,7 @@ else if(dataObject.getRapidRunData().assetsMetaData.hasHeatGridConnection){//Onl feedinCapacityColor = uI_Results.v_electricityCapacityColor_known; } -group_trafo_week.setVisible(true); +gr_trafoWeek.setVisible(true); plot_trafo_week.addDataSet(GN.data_liveCapacityDemand_kW, deliveryCapacityLabel, deliveryCapacityColor, true, false, Chart.InterpolationType.INTERPOLATION_LINEAR, 1, Chart.PointStyle.POINT_NONE); plot_trafo_week.addDataSet(GN.data_liveCapacitySupply_kW, feedinCapacityLabel, feedinCapacityColor,true, false, Chart.InterpolationType.INTERPOLATION_LINEAR, 1, Chart.PointStyle.POINT_NONE); plot_trafo_week.addDataSet(GN.data_liveLoad_kW, "Netto vermogen afname", uI_Results.v_electricityDemandColor,true, false, Chart.InterpolationType.INTERPOLATION_LINEAR, 1.5, Chart.PointStyle.POINT_NONE); @@ -526,7 +526,7 @@ else if(dataObject.getRapidRunData().assetsMetaData.hasHeatGridConnection){//Onl feedinCapacityColor = uI_Results.v_electricityCapacityColor_known; } -group_trafo_year.setVisible(true); +gr_trafoYear.setVisible(true); plot_trafo_year.addDataSet(uI_Results.f_createFlatDataset(0, 8760, GN.p_capacity_kW), deliveryCapacityLabel, deliveryCapacityColor, true, false, Chart.InterpolationType.INTERPOLATION_LINEAR, 1, Chart.PointStyle.POINT_NONE); plot_trafo_year.addDataSet(uI_Results.f_createFlatDataset(0, 8760, -GN.p_capacity_kW), feedinCapacityLabel, feedinCapacityColor,true, false, Chart.InterpolationType.INTERPOLATION_LINEAR, 1, Chart.PointStyle.POINT_NONE); plot_trafo_year.addDataSet(GN.data_totalLoad_kW, "Netto vermogen afname", uI_Results.v_electricityDemandColor,true, false, Chart.InterpolationType.INTERPOLATION_LINEAR, 0.25, Chart.PointStyle.POINT_NONE); @@ -552,7 +552,7 @@ else if(dataObject.getRapidRunData().assetsMetaData.hasHeatGridConnection){//Onl feedinCapacityColor = uI_Results.v_electricityCapacityColor_known; } -group_trafo_week.setVisible(true); +gr_trafoWeek.setVisible(true); double startTime_h = uI_Results.energyModel.p_startOfSummerWeek_h - uI_Results.energyModel.p_runStartTime_h; if (startTime_h<0) { @@ -585,7 +585,7 @@ else if(dataObject.getRapidRunData().assetsMetaData.hasHeatGridConnection){//Onl feedinCapacityColor = uI_Results.v_electricityCapacityColor_known; } -group_trafo_week.setVisible(true); +gr_trafoWeek.setVisible(true); double startTime_h = uI_Results.energyModel.p_startOfWinterWeek_h - uI_Results.energyModel.p_runStartTime_h; if (startTime_h<0) { @@ -643,7 +643,7 @@ else if(dataObject.getRapidRunData().assetsMetaData.hasHeatGridConnection){//Onl int minValue = roundToInt(min(dataObject.v_dataNetLoadLiveWeek_kW.getYMin(), dataObject.v_dataElectricityFeedInCapacityLiveWeek_kW.getYMin())); plot_netload_week.setFixedVerticalScale(minValue + minValue * 0.3, maxValue + maxValue * 0.3); */ -group_netload_week.setVisible(true); +gr_netLoadWeek.setVisible(true); /*ALCODEEND*/} double f_addElectricityNetLoad_Year(I_EnergyData dataObject) @@ -702,7 +702,7 @@ else if(dataObject.getRapidRunData().assetsMetaData.hasHeatGridConnection){//Onl int minValue = roundToInt(min(dataObject.v_dataNetLoadSummerWeek_kW.getYMin(), -dataObject.v_gridCapacityFeedIn_kW)); plot_netload_week.setFixedVerticalScale(minValue + minValue * 0.15, maxValue + maxValue * 0.15); */ -group_netload_week.setVisible(true); +gr_netLoadWeek.setVisible(true); /*ALCODEEND*/} @@ -749,7 +749,7 @@ else if(dataObject.getRapidRunData().assetsMetaData.hasHeatGridConnection){//Onl int minValue = roundToInt(min(dataObject.v_dataNetLoadWinterWeek_kW.getYMin(), -dataObject.v_gridCapacityFeedIn_kW)); plot_netload_week.setFixedVerticalScale(minValue + minValue * 0.15, maxValue + maxValue * 0.15); */ -group_netload_week.setVisible(true); +gr_netLoadWeek.setVisible(true); /*ALCODEEND*/} @@ -784,7 +784,7 @@ else if(dataObject.getLiveData().assetsMetaData.hasHeatGridConnection){//Only he //Set speed to slower. getExperimentHost().setSpeed(5); -group_day.setVisible(true); +gr_day.setVisible(true); if (uI_Results.v_selectedObjectScope == OL_ResultScope.ENERGYCOOP && b_subdivideEnergyCoopFlows) { @@ -838,7 +838,7 @@ else if(dataObject.getLiveData().assetsMetaData.hasHeatGridConnection){//Only he double f_addElectricityFlowsTrafo_LiveDay(GridNode GN) {/*ALCODESTART::1739804290051*/ -group_trafo_day.setVisible(true); +gr_trafoDay.setVisible(true); String deliveryCapacityLabel = "Geschatte piek leveringscapaciteit"; String feedinCapacityLabel = "Geschatte piek terugleveringscapaciteit"; @@ -905,6 +905,6 @@ else if(dataObject.getLiveData().assetsMetaData.hasHeatGridConnection){//Only he int minValue = roundToInt(min(dataObject.v_dataNetLoadLiveWeek_kW.getYMin(), dataObject.v_dataElectricityFeedInCapacityLiveWeek_kW.getYMin())); plot_netload_day.setFixedVerticalScale(minValue + minValue * 0.3, maxValue + maxValue * 0.3); */ -group_netload_day.setVisible(true); +gr_netLoadDay.setVisible(true); /*ALCODEEND*/} diff --git a/_alp/Agents/ChartProfielen/Levels/Level.level.xml b/_alp/Agents/ChartProfielen/Levels/Level.level.xml index 52a6a2b..e833a79 100644 --- a/_alp/Agents/ChartProfielen/Levels/Level.level.xml +++ b/_alp/Agents/ChartProfielen/Levels/Level.level.xml @@ -2,7 +2,7 @@ 1714856115495 - + 0 0 - - 1725355105369 - - 1360 - 200 + + false + 1715175655981 + + 40 + 6 true true false SHAPE_DRAW_2D3D - false - 0 - 0.0 - + + false + + true + f_setCharts(); + + + + 0 + HORIZONTAL + + + + + false + + false 1714855497484 @@ -75,11 +89,40 @@ false + + false + 1739803302604 + + 180 + 62 + + true + true + false + SHAPE_DRAW_2D3D + + false + + true + f_setCharts(); + + + + 0 + HORIZONTAL + + + false + + - 1714856822338 - - 230 - 440 + 1739803112530 + + 1010 + 190 LEFT + + 1746454877937 + + 280 + 0 + + true + true + false + SHAPE_DRAW_2D3D + uI_Results.f_setInfoText(i_consumptionDay, uI_Results.v_infoText.consumption, i_consumptionDay.getX() + gr_day.getX(), i_consumptionDay.getY() + gr_day.getY()); + false + 0 + 20 + 20 + 0.0 + + + digital_twin_results + icon_i.png + + + false + + + 1746454919985 + + 270 + 280 + + true + true + false + SHAPE_DRAW_2D3D + uI_Results.f_setInfoText(i_productionDay, uI_Results.v_infoText.production, i_productionDay.getX() + gr_day.getX(), i_productionDay.getY() + gr_day.getY()); + false + 0 + 20 + 20 + 0.0 + + + digital_twin_results + icon_i.png + + + false + - 1714907241713 - - 1750 - 300 + 1714856822338 + + 0 + 190 - - 1715170000511 - - 2250 - 300 - - true - true - false - SHAPE_DRAW_2D3D - 230 - false - 0 - 0.0 - - - 1715170000514 - - -230 - -110 + 280 + - 1715170000516 - - 0 - -110 + 1714909332393 + + 230 + 280 - 1716386258013 - - -220 - -35 + 1714909332395 + + 230 + 0 + + 1716385961785 + + 15 + 50 + + true + true + false + SHAPE_DRAW_2D + false + 0 + 90.0 + -16777216 + + + + 12 + + + LEFT + + + 1716385972057 + + 15 + 330 + + true + true + false + SHAPE_DRAW_2D + false + 0 + 90.0 + -16777216 + + + + 12 + + + LEFT + + + 1746453383841 + + 280 + 0 + + true + true + false + SHAPE_DRAW_2D3D + uI_Results.f_setInfoText(i_consumptionWeek, uI_Results.v_infoText.consumption, i_consumptionWeek.getX() + gr_week.getX(), i_consumptionWeek.getY() + gr_week.getY()); + false + 0 + 20 + 20 + 0.0 + + + digital_twin_results + icon_i.png + + + false + + + 1746454163297 + + 270 + 280 + + true + true + false + SHAPE_DRAW_2D3D + uI_Results.f_setInfoText(i_productionWeek, uI_Results.v_infoText.production, i_productionWeek.getX() + gr_week.getX(), i_productionWeek.getY() + gr_week.getY()); + false + 0 + 20 + 20 + 0.0 + + + digital_twin_results + icon_i.png + + + false + - - false - 1715175655981 - - 40 - 6 - - true - true - false - SHAPE_DRAW_2D3D - - false - - true - f_setCharts(); - - - - 0 - HORIZONTAL - - - - - false - - - 1721118028730 - - 3250 - 300 + 1739805426147 + + 520 + 190 - 1721120959534 - - 3750 - 300 + 1739803854144 + + 2490 + 190 - 1739803112530 - - 1250 - 440 + 1714907241713 + + 1520 + 190 - - false - 1739803302604 - - 180 - 62 - - true - true - false - SHAPE_DRAW_2D3D - - false - - true - f_setCharts(); - - - - 0 - HORIZONTAL - - - false - - - 1739803854144 - - 2750 - 300 + 1715170000511 + + 2010 + 190 1739803870474 - - 4240 - 300 + + 4010 + 190 - 1739805426147 - - 750 - 440 + 1721118028730 + + 3020 + 190 + + 1721120959534 + + 3510 + 190 + + true + true + false + SHAPE_DRAW_2D3D + 0 + false + 0 + 0.0 + + + 1721120959537 + + 0 + 0 - 1739805426157 - - 0 - -250 + 1721120959539 + + 230 + 0 - 1739805426159 - - -215 - -200 - - true - true - false - SHAPE_DRAW_2D - false - 0 - 90.0 - -16777216 - - - - 12 - - - LEFT - - - 1739805426161 - - -215 - 80 + 1721120959541 + + 10 + 75 - 1746446837781 - - 8 - 361 + 1746692569633 + + 40 + 360 true @@ -1082,10 +1082,86 @@ teruglever capaciteit]]> 0 0.0 + + 1746692569635 + + 38 + 71 + + true + true + false + SHAPE_DRAW_2D3D + false + 0 + 10 + 1 + + null + SOLID + 40 + 40 + 0.0 + -10185235 + null + + + 1746692569637 + + 37.835 + 0.683 + + true + true + false + SHAPE_DRAW_2D + false + 0 + 0.0 + -16777216 + + + + 14 + + + CENTER + + + 1746692569639 + + 40 + 60.638 + + true + true + false + SHAPE_DRAW_2D + false + 0 + 0.0 + -1 + + + + 18 + + + CENTER + - 1746446837783 - - 0 + 1746692569641 + + 83 0 + + + 1746446837781 + + 15 + 290 + + true + true + false + SHAPE_DRAW_2D3D + false + 0 + 0.0 + 1746446837785 - 55 - 0 + 47.171 + 165 1746446837787 - - 90 - 70 + + 77.28 + 191.749 diff --git a/_alp/Agents/ChartProfielen/Code/Functions.java b/_alp/Agents/ChartProfielen/Code/Functions.java index dd3a2a6..32bcfdb 100644 --- a/_alp/Agents/ChartProfielen/Code/Functions.java +++ b/_alp/Agents/ChartProfielen/Code/Functions.java @@ -247,16 +247,16 @@ AreaCollection f_resetCharts() gr_year.setVisible(false); gr_day.setVisible(false); gr_trafoWeek.setVisible(false); -gr_trafoYear.setVisible(false); +//gr_trafoYear.setVisible(false); gr_trafoDay.setVisible(false); gr_netLoadWeek.setVisible(false); -gr_netLoadYear.setVisible(false); +//gr_netLoadYear.setVisible(false); gr_netLoadDay.setVisible(false); plot_trafo_week.removeAll(); -plot_trafo_year.removeAll(); +//plot_trafo_year.removeAll(); plot_trafo_day.removeAll(); plot_netload_week.removeAll(); -plot_netload_year.removeAll(); +//plot_netload_year.removeAll(); plot_netload_day.removeAll(); energyDemandChart.removeAll(); energySupplyChart.removeAll(); @@ -406,15 +406,18 @@ else if(dataObject.getRapidRunData().assetsMetaData.hasHeatGridConnection){//Onl case 3: // Year if (uI_Results.v_selectedObjectScope == OL_ResultScope.GRIDNODE) { - f_addElectricityFlowsTrafo_Year(uI_Results.v_gridNode); + //f_addElectricityFlowsTrafo_Year(uI_Results.v_gridNode); + throw new RuntimeException("The Year Graph does not exist for GridNodes."); } else { //f_addElectricityNetLoad_Year(dataObject); + throw new RuntimeException("The Net Balance Year Graph does not exist."); } - break; + //break; default: - break; + throw new RuntimeException("Unrecognized option selected in Period Radio Button for Line Plots (Net Load)."); + //break; } } else { // Stack Chart @@ -471,7 +474,9 @@ else if(dataObject.getRapidRunData().assetsMetaData.hasHeatGridConnection){//Onl case 3: // Year if (uI_Results.v_selectedObjectScope == OL_ResultScope.GRIDNODE) { - f_addElectricityFlowsTrafo_Year(uI_Results.v_gridNode); + // This graph does not exist, defaulting back to the live plot + radio_period.setValue(0); + f_setCharts(); } else { f_addElectricityFlows_Year(dataObject); if( radio_energyType.getValue() == 1){ @@ -481,7 +486,8 @@ else if(dataObject.getRapidRunData().assetsMetaData.hasHeatGridConnection){//Onl break; default: - break; + throw new RuntimeException("Unrecognized option selected in Period Radio Button for Stack Charts."); + //break; } } /*ALCODEEND*/} diff --git a/_alp/Agents/ChartProfielen/Code/Functions.xml b/_alp/Agents/ChartProfielen/Code/Functions.xml index 09c094f..55586bb 100644 --- a/_alp/Agents/ChartProfielen/Code/Functions.xml +++ b/_alp/Agents/ChartProfielen/Code/Functions.xml @@ -217,6 +217,7 @@ double 1715169641896 + true 480 1220 LEFT + + 1746696018221 + + 340 + 0 + + true + true + false + SHAPE_DRAW_2D3D + uI_Results.f_setInfoText(i_trafoDay, uI_Results.v_infoText.trafoBalance, i_trafoDay.getX() + gr_trafoDay.getX(), i_trafoDay.getY() + gr_trafoDay.getY()); + false + 0 + 20 + 20 + 0.0 + + + digital_twin_results + icon_i.png + + + false + @@ -1241,11 +1269,39 @@ LEFT + + 1746695969788 + + 340 + 0 + + true + true + false + SHAPE_DRAW_2D3D + uI_Results.f_setInfoText(i_trafoWeek, uI_Results.v_infoText.trafoBalance, i_trafoWeek.getX() + gr_trafoWeek.getX(), i_trafoWeek.getY() + gr_trafoWeek.getY()); + false + 0 + 20 + 20 + 0.0 + + + digital_twin_results + icon_i.png + + + false + 1715170000511 + true 2010 190 LEFT + + 1746695534246 + + 290 + 0 + + true + true + false + SHAPE_DRAW_2D3D + uI_Results.f_setInfoText(i_netLoadDay, uI_Results.v_infoText.netBalance, i_netLoadDay.getX() + gr_netLoadDay.getX(), i_netLoadDay.getY() + gr_netLoadDay.getY()); + false + 0 + 20 + 20 + 0.0 + + + digital_twin_results + icon_i.png + + + false + @@ -1634,11 +1717,39 @@ LEFT + + 1746695610108 + + 290 + 0 + + true + true + false + SHAPE_DRAW_2D3D + uI_Results.f_setInfoText(i_netLoadWeek, uI_Results.v_infoText.netBalance, i_netLoadWeek.getX() + gr_netLoadWeek.getX(), i_netLoadWeek.getY() + gr_netLoadWeek.getY()); + false + 0 + 20 + 20 + 0.0 + + + digital_twin_results + icon_i.png + + + false + 1721120959534 + true 3510 190