Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
Original file line number Diff line number Diff line change
Expand Up @@ -87,31 +87,31 @@ private double[] getNettoBalanceForecast_kW() {

for(J_EAProfile elecConsumptionProfile : elecConsumptionProfiles) {
if(elecConsumptionProfile != null){
double[] tempNettoBalance_kW = ZeroMath.arrayMultiply(Arrays.copyOfRange(elecConsumptionProfile.a_energyProfile_kWh, startTimeDayIndex, endTimeDayIndex), 1/p_timestep_h);//, elecConsumptionProfile.getProfileScaling_fr());
double[] tempNettoBalance_kW = ZeroMath.arrayMultiply(Arrays.copyOfRange(elecConsumptionProfile.a_energyProfile_kWh, startTimeDayIndex, endTimeDayIndex), elecConsumptionProfile.getProfileScaling_fr()/p_timestep_h);
for (int i = 0; i < tempNettoBalance_kW.length; i++) {
nettoBalanceTotal_kW[i] += tempNettoBalance_kW[i];
}
}
}
for(J_EAProfile elecHeatPumpProfile : elecHeatPumpProfiles) {
if(elecHeatPumpProfile != null){
double[] tempNettoBalance_kW = ZeroMath.arrayMultiply(Arrays.copyOfRange(elecHeatPumpProfile.a_energyProfile_kWh, startTimeDayIndex, endTimeDayIndex), 1/p_timestep_h);//, elecHeatPumpProfile.getProfileScaling_fr());
double[] tempNettoBalance_kW = ZeroMath.arrayMultiply(Arrays.copyOfRange(elecHeatPumpProfile.a_energyProfile_kWh, startTimeDayIndex, endTimeDayIndex), elecHeatPumpProfile.getProfileScaling_fr()/p_timestep_h);
for (int i = 0; i < tempNettoBalance_kW.length; i++) {
nettoBalanceTotal_kW[i] += tempNettoBalance_kW[i];
}
}
}
for(J_EAProfile elecEVProfile : elecEVProfiles) {
if(elecEVProfile != null){
double[] tempNettoBalance_kW = ZeroMath.arrayMultiply(Arrays.copyOfRange(elecEVProfile.a_energyProfile_kWh, startTimeDayIndex, endTimeDayIndex), 1/p_timestep_h);//, elecEVProfile.getProfileScaling_fr());
double[] tempNettoBalance_kW = ZeroMath.arrayMultiply(Arrays.copyOfRange(elecEVProfile.a_energyProfile_kWh, startTimeDayIndex, endTimeDayIndex), elecEVProfile.getProfileScaling_fr()/p_timestep_h);
for (int i = 0; i < tempNettoBalance_kW.length; i++) {
nettoBalanceTotal_kW[i] += tempNettoBalance_kW[i];
}
}
}
for(J_EAProfile surveyHeatDemandProfile : surveyHeatDemandProfiles) {
if(surveyHeatDemandProfile != null){
double[] heatPower_kW = ZeroMath.arrayMultiply(Arrays.copyOfRange(surveyHeatDemandProfile.a_energyProfile_kWh, startTimeDayIndex, endTimeDayIndex), 1/p_timestep_h);//, surveyHeatDemandProfile.getProfileScaling_fr());
double[] heatPower_kW = ZeroMath.arrayMultiply(Arrays.copyOfRange(surveyHeatDemandProfile.a_energyProfile_kWh, startTimeDayIndex, endTimeDayIndex), surveyHeatDemandProfile.getProfileScaling_fr()/p_timestep_h);
//traceln(heatPower_kW);
double eta_r = parentGC.energyModel.avgc_data.p_avgEfficiencyHeatpump;
double outputTemperature_degC = parentGC.energyModel.avgc_data.p_avgOutputTemperatureHeatpump_degC;
Expand Down
38 changes: 5 additions & 33 deletions _alp/Classes/Class.J_EAProfile.java
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ public void operate(double time_h) {
throw new RuntimeException(String.format("Time out of lower bound for evaluating J_EAProfile power! Time is: %s", time_h));
}

double currentPower_kW = a_energyProfile_kWh[(int)floor(time_h/profileTimestep_h)]/profileTimestep_h;
double currentPower_kW = this.profileScaling_fr * this.a_energyProfile_kWh[(int)floor(time_h/profileTimestep_h)]/profileTimestep_h;
this.energyUse_kW = currentPower_kW;
this.energyUsed_kWh += timestep_h * energyUse_kW;
this.flowsMap.put(this.energyCarrier, currentPower_kW);
Expand All @@ -98,52 +98,24 @@ public void curtailElectricityConsumption(double curtailmentSetpoint_kW) {
assetFlows_kW.put(this.assetFlowCategory, curtailmentPower_kW);

this.energyUse_kW = -curtailmentPower_kW;
//flowsMap.put(OL_EnergyCarriers.ENERGY_USE, -curtailmentPower_kW);

//lastFlowsArray[4] -= curtailmentPower_kW;
this.lastFlowsMap.put(OL_EnergyCarriers.ELECTRICITY, this.lastFlowsMap.get(OL_EnergyCarriers.ELECTRICITY) - curtailmentPower_kW);
//lastFlowsArray[9] -= curtailmentPower_kW;
this.lastEnergyUse_kW -= curtailmentPower_kW;
//lastFlowsMap.put(OL_EnergyCarriers.ENERGY_USE, lastFlowsMap.get(OL_EnergyCarriers.ENERGY_USE) - curtailmentPower_kW);

//traceln("Electricity production of asset %s curtailed by %s kW!", this, curtailmentPower_kW);
if (parentAgent instanceof GridConnection) {
((GridConnection)parentAgent).f_removeFlows(flowsMap, this.energyUse_kW, assetFlows_kW, this);
}
//if (ui_energyAsset!= null) {
//ui_energyAsset.f_removeFlows(flowsMap);
//}
//return new Pair(flowsMap, this.energyUse_kW);
}


public void scaleEnergyProfile(double scaling_fr) {
if (scaling_fr == 0) {
traceln("Failed to scale J_EAProfile with factor of 0 to prevent loss of information.");
return;
}
this.profileScaling_fr *= scaling_fr;
for (int i = 0; i < a_energyProfile_kWh.length; i++) {
a_energyProfile_kWh[i] = a_energyProfile_kWh[i] * scaling_fr;
}
return;
}

public void resetEnergyProfile() {
if (this.profileScaling_fr == 1) {
return;
}
for (int i = 0; i < a_energyProfile_kWh.length; i++) {
a_energyProfile_kWh[i] = a_energyProfile_kWh[i] / this.profileScaling_fr;
}
this.profileScaling_fr = 1;
return;
}

public double getProfileScaling_fr() {
return profileScaling_fr;
}

public void setProfileScaling_fr( double scaling_fr ) {
this.profileScaling_fr = scaling_fr;
}

public OL_EnergyCarriers getEnergyCarrier() {
return this.energyCarrier;
}
Expand Down