From 54810a822d0e434f2c453a1c11b796a570ddbbca Mon Sep 17 00:00:00 2001 From: GillisHommen <98752265+GillisHommen@users.noreply.github.com> Date: Thu, 10 Apr 2025 10:11:46 +0200 Subject: [PATCH 1/2] Alligned summer and winterweek with weekday/weekend --- .../EnergyDataViewer/Code/Functions.java | 4 +- _alp/Agents/EnergyModel/Code/Functions.java | 7 ++- _alp/Agents/EnergyModel/Variables.xml | 52 ++++++++++++++++--- _alp/Classes/Class.J_LoadDurationCurves.java | 4 +- 4 files changed, 54 insertions(+), 13 deletions(-) diff --git a/_alp/Agents/EnergyDataViewer/Code/Functions.java b/_alp/Agents/EnergyDataViewer/Code/Functions.java index bd232171..a8d21707 100644 --- a/_alp/Agents/EnergyDataViewer/Code/Functions.java +++ b/_alp/Agents/EnergyDataViewer/Code/Functions.java @@ -308,7 +308,7 @@ {/*ALCODESTART::1741792546539*/ //========== SUMMER WEEK ==========// // Consumption -double summerWeekStartTime_h = energyModel.p_startHourSummerWeek - energyModel.p_runStartTime_h; +double summerWeekStartTime_h = energyModel.p_startOfSummerWeek_h - energyModel.p_runStartTime_h; dsm_summerWeekConsumptionDataSets_kW = data.getRapidRunData().am_summerWeekConsumptionAccumulators_kW.getDataSetMap(summerWeekStartTime_h); v_dataElectricityBaseloadConsumptionSummerWeek_kW = data.getRapidRunData().acc_summerWeekBaseloadElectricityConsumption_kW.getDataSet(summerWeekStartTime_h); v_dataElectricityForHeatConsumptionSummerWeek_kW = data.getRapidRunData().acc_summerWeekHeatPumpElectricityConsumption_kW.getDataSet(summerWeekStartTime_h); @@ -345,7 +345,7 @@ //========== WINTER WEEK ==========// // Consumption -double winterWeekStartTime_h = energyModel.p_startHourWinterWeek - energyModel.p_runStartTime_h; +double winterWeekStartTime_h = energyModel.p_startOfWinterWeek_h - energyModel.p_runStartTime_h; dsm_winterWeekConsumptionDataSets_kW = data.getRapidRunData().am_winterWeekConsumptionAccumulators_kW.getDataSetMap(winterWeekStartTime_h); v_dataElectricityBaseloadConsumptionWinterWeek_kW = data.getRapidRunData().acc_winterWeekBaseloadElectricityConsumption_kW.getDataSet(winterWeekStartTime_h); v_dataElectricityForHeatConsumptionWinterWeek_kW = data.getRapidRunData().acc_winterWeekHeatPumpElectricityConsumption_kW.getDataSet(winterWeekStartTime_h); diff --git a/_alp/Agents/EnergyModel/Code/Functions.java b/_alp/Agents/EnergyModel/Code/Functions.java index 26af484d..0b724ecb 100644 --- a/_alp/Agents/EnergyModel/Code/Functions.java +++ b/_alp/Agents/EnergyModel/Code/Functions.java @@ -401,8 +401,8 @@ null, roundToDecimal( a.v_electricityImported_kWh-a.v_electricityExported_kWh, 2 {/*ALCODESTART::1664952601107*/ b_isDaytime = t_h % 24 > 6 && t_h % 24 < 18; b_isWeekday = (t_h+(v_dayOfWeek1jan-1)*24) % (24*7) < (24*5); -b_isSummerWeek = (t_h % 8760) >= p_startHourSummerWeek && (t_h % 8760) < p_startHourSummerWeek + 24*7; -b_isWinterWeek = (t_h % 8760) >= p_startHourWinterWeek && (t_h % 8760) < p_startHourWinterWeek + 24*7; +b_isSummerWeek = (t_h % 8760) >= p_startOfSummerWeek_h && (t_h % 8760) < p_startOfSummerWeek_h + 24*7; +b_isWinterWeek = (t_h % 8760) >= p_startOfWinterWeek_h && (t_h % 8760) < p_startOfWinterWeek_h + 24*7; b_isLastTimeStepOfDay = t_h % 24 == (24-p_timeStep_h); t_hourOfDay = t_h % 24; // Assumes modelrun starts at midnight. @@ -1464,6 +1464,9 @@ ArrayList f_getGridConnections() LocalDate localDate = LocalDate.of(p_year, 1, 1); v_dayOfWeek1jan = DayOfWeek.from(localDate).getValue(); +p_startOfWinterWeek_h = roundToInt(24 * (p_winterWeekNumber * 7 + (8-v_dayOfWeek1jan)%7)); // Week 49 is winterweek. +p_startOfSummerWeek_h = roundToInt(24 * (p_summerWeekNumber * 7 + (8-v_dayOfWeek1jan)%7)); // Week 18 is summerweek. + Date startDate = date(); diff --git a/_alp/Agents/EnergyModel/Variables.xml b/_alp/Agents/EnergyModel/Variables.xml index 4cda7bfe..c2db14f9 100644 --- a/_alp/Agents/EnergyModel/Variables.xml +++ b/_alp/Agents/EnergyModel/Variables.xml @@ -1464,7 +1464,7 @@ 1731422704613 680 - 758 + 800