diff --git a/_alp/Agents/ChartNetbelasting/Code/Functions.java b/_alp/Agents/ChartNetbelasting/Code/Functions.java index fcbdeb3..2de3aa8 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,82 @@ 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 KPIs +* These KPIs are based on the day with the highest average delivery +* We only show these KPIs if the (delivery) connection capacity is known +* If there is room to grow, i.e. the highest average delivery is still below the capacity we also show what flex (a battery) could add +* We do not show exact percentages above 1000%, i.e. 10x growth. +*/ +if (dataObject.getRapidRunData().connectionMetaData.contractedDeliveryCapacityKnown && dataObject.getRapidRunData().connectionMetaData.contractedDeliveryCapacity_kW > 0) { + Pair pair = dataObject.getRapidRunData().getFlexPotential(); + double deliveryPeak_fr = maxDelivery_kW / dataObject.getRapidRunData().connectionMetaData.contractedDeliveryCapacity_kW; + int growthWithoutFlex_pct = roundToInt((100 / deliveryPeak_fr) - 100); + if (pair.getFirst() < 1) { + // The current usage is already above the capacity already, do not show flex option + gr_flexGrowthPotential.setVisible(false); + gr_growthPotential.setVisible(true); + if (growthWithoutFlex_pct < 1000) { + t_growthPercentage.setText( growthWithoutFlex_pct + " %" ); + } + else { + t_growthPercentage.setText( " >1000%" ); + } + } + else { + // Also show flex option + gr_growthPotential.setVisible(false); + gr_flexGrowthPotential.setVisible(true); + if (growthWithoutFlex_pct < 1000) { + t_flexGrowthWithoutBatteryPercentage.setText( growthWithoutFlex_pct + " %" ); + } + else { + t_flexGrowthWithoutBatteryPercentage.setText( " >1000%" ); + } + 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" ); + } + int growthWithFlex_pct = roundToInt((pair.getFirst() - 1 ) * 100); + if (growthWithFlex_pct < 1000) { + t_flexGrowthWithBatteryPercentage.setText( growthWithFlex_pct + " %" ); + } + else { + t_flexGrowthWithBatteryPercentage.setText( " >1000%" ); + } + } +} +else { + // Delivery Connection Capacity Unkown, do not show these KPIs + gr_flexGrowthPotential.setVisible(false); + gr_growthPotential.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 +472,54 @@ 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_flexGrowthPotential.setVisible(false); +gr_growthPotential.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..8ef2be2 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 + + + 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 + + + 1746692569641 + + 83 + 0 + + true + true + false + SHAPE_DRAW_2D3D + uI_Results.f_setInfoText(i_negativeGrowth, uI_Results.v_infoText.negativeGrowthPotential, i_negativeGrowth.getX() + gr_growthPotential.getX() + gr_year.getX(), i_negativeGrowth.getY() + gr_growthPotential.getY() + gr_year.getY()); + false + 0 + 20 + 20 + 0.0 + + + digital_twin_results + icon_i.png + + + false + + + + + 1746446837781 + + 15 + 290 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 - + + + 1746446837785 + + 47.171 + 155 + + true + true + false + SHAPE_DRAW_2D + false + 0 + 0.0 + -16777216 + + + + 14 + + + CENTER + + + 1746446837787 + + 70 + 185 + + true + true + false + SHAPE_DRAW_2D3D + false + 0 + 35 + 40 + 90.0 + + + digital_twin_results + arrow.png + + + false + + + 1746446837789 + + 50 + 285 + + true + true + false + SHAPE_DRAW_2D3D + false + 0 + 10 + 1 + + null + SOLID + 35 + 40 + 0.0 + -10185235 + null + + + 1746446837791 + + 50 + 215 + + true + true + false + SHAPE_DRAW_2D + false + 0 + 0.0 + -16777216 + + + + 14 + + + CENTER + + + 1746446837793 + + 50 + 275 + + true + true + false + SHAPE_DRAW_2D + false + 0 + 0.0 + -1 + + + + 18 + + + CENTER + + + 1746449726604 + + 105 + 155 + + true + true + false + SHAPE_DRAW_2D3D + uI_Results.f_setInfoText(i_battery, uI_Results.v_infoText.batterySize, i_battery.getX() + gr_flexGrowthPotential.getX() + gr_year.getX(), i_battery.getY() + gr_flexGrowthPotential.getY() + gr_year.getY()); + false + 0 + 16.062 + 16.214 + 0.0 + + + digital_twin_results + icon_i.png + + + false + + + 1746449727530 + + 95 + 220 + + true + true + false + SHAPE_DRAW_2D3D + uI_Results.f_setInfoText(i_flexGrowthWithBattery, uI_Results.v_infoText.flexGrowthPotential, i_flexGrowthWithBattery.getX() + gr_flexGrowthPotential.getX() + gr_year.getX(), i_flexGrowthWithBattery.getY() + gr_flexGrowthPotential.getY() + gr_year.getY()); + false + 0 + 16.062 + 16.214 + 0.0 + + + digital_twin_results + icon_i.png + + + false + + + 1746627313204 + + 70 + 105 + + true + true + false + SHAPE_DRAW_2D3D + false + 0 + 35 + 40 + 90.0 + + + digital_twin_results + arrow.png + + + false + + + 1746628073471 + + 50 + 70 + + true + true + false + SHAPE_DRAW_2D3D + false + 0 + 10 + 1 + + null + SOLID + 35 + 40 + 0.0 + -10185235 + null + + + 1746628073474 + + 50 + 0 + + true + true + false + SHAPE_DRAW_2D + false + 0 + 0.0 + -16777216 + + + + 14 + + + CENTER + + + 1746628073477 + + 50 + 60 + + true + true + false + SHAPE_DRAW_2D + false + 0 + 0.0 + -1 + + + + 18 + + + CENTER + + + 1746628073480 + + 95 + 0 + + true + true + false + SHAPE_DRAW_2D3D + uI_Results.f_setInfoText(i_flexGrowthWithoutBattery, uI_Results.v_infoText.positiveGrowthPotential, i_flexGrowthWithoutBattery.getX() + gr_flexGrowthPotential.getX() + gr_year.getX(), i_flexGrowthWithoutBattery.getY() + gr_flexGrowthPotential.getY() + gr_year.getY()); + false + 0 + 15.906 + 16.12 + 0.0 + + + digital_twin_results + icon_i.png + + + false + + + 1746692565901 + + -15 + 100 + + true + true + false + SHAPE_DRAW_2D3D + false + 0 + 132.813 + 125 + 0.0 + + + digital_twin_results + emptyBattery.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..32bcfdb 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,20 +243,20 @@ 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_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(); @@ -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) { @@ -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*/} @@ -500,7 +506,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 +532,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 +558,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 +591,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 +649,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 +708,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 +755,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 +790,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 +844,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 +911,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/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 false 1714855497484 60 - 34 + 35 + + false + 1739803302604 + + 180 + 65 + + 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 - - - - false - 1715175655981 - - 40 - 6 - - true - true - false - SHAPE_DRAW_2D3D - - false - - true - f_setCharts(); - - - - 0 - HORIZONTAL - - - - - false - - + + 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 + + + - 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 + + true + 2010 + 190 1739803870474 - - 4240 - 300 + + 4010 + 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 + - 1739805426147 - - 750 - 440 + 1721118028730 + + 3020 + 190 + + 1721120959534 + + true + 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