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
3 changes: 2 additions & 1 deletion _alp/Agents/EnergyCoop/AOC.EnergyCoop.xml
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,8 @@ fm_currentConsumptionFlows_kW = new J_FlowsMap();
fm_currentBalanceFlows_kW = new J_FlowsMap();
fm_heatFromEnergyCarrier_kW = new J_FlowsMap();
fm_consumptionForHeating_kW = new J_FlowsMap();
fm_currentAssetFlows_kW = new J_ValueMap(OL_AssetFlowCategories.class);]]></StartupCode>
fm_currentAssetFlows_kW = new J_ValueMap(OL_AssetFlowCategories.class);
]]></StartupCode>
<Generic>false</Generic>
<GenericParameter>
<Id>1660731375014</Id>
Expand Down
13 changes: 11 additions & 2 deletions _alp/Agents/EnergyCoop/Code/Functions.java
Original file line number Diff line number Diff line change
Expand Up @@ -595,6 +595,7 @@
}
}


acc_totalOwnElectricityProduction_kW = new ZeroAccumulator(true, timeParameters.getTimeStep_h(), 8760);
acc_totalCustomerDelivery_kW = new ZeroAccumulator(true, timeParameters.getTimeStep_h(), 8760);
acc_totalCustomerFeedIn_kW = new ZeroAccumulator(true, timeParameters.getTimeStep_h(), 8760);
Expand Down Expand Up @@ -1425,8 +1426,14 @@ HashSet<GridConnection> f_getAllChildCustomerGridConnections_recursion(HashSet<G
}
/*ALCODEEND*/}

double f_startAfterDeserialisation()
double f_startAfterDeserialisation(J_TimeParameters timeParameters)
{/*ALCODESTART::1753348770752*/
acc_totalOwnElectricityProduction_kW = new ZeroAccumulator(true, timeParameters.getTimeStep_h(), 8760);
acc_totalCustomerDelivery_kW = new ZeroAccumulator(true, timeParameters.getTimeStep_h(), 8760);
acc_totalCustomerFeedIn_kW = new ZeroAccumulator(true, timeParameters.getTimeStep_h(), 8760);

v_liveData.resetLiveDatasets(timeParameters);
/*
v_liveData = new J_LiveData(this);
v_liveData.activeEnergyCarriers = EnumSet.of(OL_EnergyCarriers.ELECTRICITY);
v_liveData.activeProductionEnergyCarriers = EnumSet.of(OL_EnergyCarriers.ELECTRICITY);
Expand All @@ -1435,7 +1442,7 @@ HashSet<GridConnection> f_getAllChildCustomerGridConnections_recursion(HashSet<G
v_liveData.connectionMetaData = v_liveConnectionMetaData;
v_liveData.assetsMetaData = v_liveAssetsMetaData;

v_liveData.resetLiveDatasets(energyModel.p_runStartTime_h, energyModel.p_runStartTime_h + 24 * 7, energyModel.p_timeStep_h);


for (GridConnection gc : c_memberGridConnections) {
for (OL_EnergyCarriers EC : gc.v_liveData.activeProductionEnergyCarriers) {
Expand All @@ -1450,6 +1457,8 @@ HashSet<GridConnection> f_getAllChildCustomerGridConnections_recursion(HashSet<G
fm_currentConsumptionFlows_kW = new J_FlowsMap();
fm_currentBalanceFlows_kW = new J_FlowsMap();
fm_currentAssetFlows_kW = new J_ValueMap(OL_AssetFlowCategories.class);
*/


/*ALCODEEND*/}

Expand Down
5 changes: 4 additions & 1 deletion _alp/Agents/EnergyCoop/Code/Functions.xml
Original file line number Diff line number Diff line change
Expand Up @@ -626,7 +626,6 @@
<ReturnType>double</ReturnType>
<Id>1753348770752</Id>
<Name><![CDATA[f_startAfterDeserialisation]]></Name>
<ExcludeFromBuild>true</ExcludeFromBuild>
<X>980</X>
<Y>70</Y>
<Label>
Expand All @@ -636,6 +635,10 @@
<PublicFlag>false</PublicFlag>
<PresentationFlag>true</PresentationFlag>
<ShowLabel>true</ShowLabel>
<Parameter>
<Name><![CDATA[timeParameters]]></Name>
<Type><![CDATA[J_TimeParameters]]></Type>
</Parameter>
<Body xmlns:al="http://anylogic.com"/>
</Function>
<Function AccessType="public" StaticFunction="false">
Expand Down
2 changes: 1 addition & 1 deletion _alp/Agents/EnergyDataViewer/Code/Functions.java
Original file line number Diff line number Diff line change
Expand Up @@ -382,7 +382,7 @@
*/
// Other
v_dataNetLoadWinterWeek_kW = data.getRapidRunData().am_winterWeekBalanceAccumulators_kW.get(OL_EnergyCarriers.ELECTRICITY).getDataSet(winterWeekStartTime_h);
v_dataBatterySOCSummerWeek_fr = new DataSet((int) (168 / timeParameters.getTimeStep_h()));
v_dataBatterySOCWinterWeek_fr = new DataSet((int) (168 / timeParameters.getTimeStep_h()));
DataSet winterWeekBatteryStorage = data.getRapidRunData().ts_winterWeekBatteriesStoredEnergy_MWh.getDataSet(winterWeekStartTime_h);
for (int i = 0; i < winterWeekBatteryStorage.size(); i++) {
// Get the x and y values from the source dataset
Expand Down
24 changes: 0 additions & 24 deletions _alp/Agents/EnergyModel/AOC.EnergyModel.xml
Original file line number Diff line number Diff line change
Expand Up @@ -185,30 +185,6 @@ fm_currentAssetFlows_kW = new J_ValueMap(OL_AssetFlowCategories.class);]]></Star
<LineArrow>NONE</LineArrow>
<LineArrowPosition>END</LineArrowPosition>
</AgentLink>
<AgentLink>
<Id>1696520909218</Id>
<Name><![CDATA[connections1]]></Name>
<ExcludeFromBuild>true</ExcludeFromBuild>
<X>40</X>
<Y>-180</Y>
<Label>
<X>15</X>
<Y>0</Y>
</Label>
<PublicFlag>false</PublicFlag>
<PresentationFlag>true</PresentationFlag>
<ShowLabel>true</ShowLabel>
<HandleReceiveInConnections>false</HandleReceiveInConnections>
<AgentLinkType>COLLECTION_OF_LINKS</AgentLinkType>
<AgentLinkBidirectional>false</AgentLinkBidirectional>
<MessageType>Object</MessageType>
<LineStyle>SOLID</LineStyle>
<LineWidth>1</LineWidth>
<LineColor>-16777216</LineColor>
<LineZOrder>UNDER_AGENTS</LineZOrder>
<LineArrow>NONE</LineArrow>
<LineArrowPosition>END</LineArrowPosition>
</AgentLink>
</AgentLinks>
<EmbeddedObjects xmlns:al="http://anylogic.com"/>
<Presentation>
Expand Down
8 changes: 7 additions & 1 deletion _alp/Agents/EnergyModel/Code/Functions.java
Original file line number Diff line number Diff line change
Expand Up @@ -1059,6 +1059,8 @@ EnergyCoop f_addProductionEnergyCarrier(OL_EnergyCarriers EC)
fm_currentConsumptionFlows_kW = new J_FlowsMap();
fm_currentBalanceFlows_kW = new J_FlowsMap();
fm_currentAssetFlows_kW = new J_ValueMap(OL_AssetFlowCategories.class);
fm_heatFromEnergyCarrier_kW = new J_FlowsMap();
fm_consumptionForHeating_kW = new J_FlowsMap();

// Reconstruct the LiveData class in the EnergyCoops
for (EnergyCoop ec : pop_energyCoops) {
Expand All @@ -1076,6 +1078,9 @@ EnergyCoop f_addProductionEnergyCarrier(OL_EnergyCarriers EC)
ec.fm_currentConsumptionFlows_kW = new J_FlowsMap();
ec.fm_currentBalanceFlows_kW = new J_FlowsMap();
ec.fm_currentAssetFlows_kW = new J_ValueMap(OL_AssetFlowCategories.class);
ec.fm_heatFromEnergyCarrier_kW = new J_FlowsMap();
ec.fm_consumptionForHeating_kW = new J_FlowsMap();
ec.f_startAfterDeserialisation(p_timeParameters);
}

// Reconstruct the LiveData class in the GridConnections and add EnergyCarriers
Expand All @@ -1096,7 +1101,8 @@ EnergyCoop f_addProductionEnergyCarrier(OL_EnergyCarriers EC)
gc.fm_currentConsumptionFlows_kW = new J_FlowsMap();
gc.fm_currentBalanceFlows_kW = new J_FlowsMap();
gc.fm_currentAssetFlows_kW = new J_ValueMap(OL_AssetFlowCategories.class);

gc.fm_heatFromEnergyCarrier_kW = new J_FlowsMap();
gc.fm_consumptionForHeating_kW = new J_FlowsMap();
/*for (J_EA j_ea : gc.c_energyAssets) {
gc.f_addEnergyCarriersAndAssetCategoriesFromEA(j_ea);
}*/
Expand Down
12 changes: 12 additions & 0 deletions _alp/Classes/Class.I_AssetOwner.java
Original file line number Diff line number Diff line change
@@ -1,3 +1,15 @@
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.fasterxml.jackson.annotation.JsonSubTypes;
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
import com.fasterxml.jackson.annotation.ObjectIdGenerators;
@JsonIdentityInfo(generator = ObjectIdGenerators.UUIDGenerator.class, property = "@id")

@JsonTypeInfo(
use = JsonTypeInfo.Id.CLASS,
include = JsonTypeInfo.As.PROPERTY,
property = "type" // 👈 this will be the field name in your JSON
)

public interface I_AssetOwner
{
void f_connectToJ_EA(J_EA ea, J_TimeParameters timeParameters);
Expand Down
13 changes: 13 additions & 0 deletions _alp/Classes/Class.I_ChargePointRegistration.java
Original file line number Diff line number Diff line change
@@ -1,3 +1,16 @@
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.fasterxml.jackson.annotation.JsonSubTypes;
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
import com.fasterxml.jackson.annotation.ObjectIdGenerators;
@JsonIdentityInfo(generator = ObjectIdGenerators.UUIDGenerator.class, property = "@id")

@JsonTypeInfo(
use = JsonTypeInfo.Id.CLASS,
include = JsonTypeInfo.As.PROPERTY,
property = "type" // 👈 this will be the field name in your JSON
)


public interface I_ChargePointRegistration
{
public void registerChargingRequest(I_ChargingRequest chargingRequest);
Expand Down
13 changes: 13 additions & 0 deletions _alp/Classes/Class.I_ChargingRequest.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,19 @@
/**
* I_ChargingRequest
*/
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.fasterxml.jackson.annotation.JsonSubTypes;
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
import com.fasterxml.jackson.annotation.ObjectIdGenerators;
@JsonIdentityInfo(generator = ObjectIdGenerators.UUIDGenerator.class, property = "@id")

@JsonTypeInfo(
use = JsonTypeInfo.Id.CLASS,
include = JsonTypeInfo.As.PROPERTY,
property = "type" // 👈 this will be the field name in your JSON
)


public interface I_ChargingRequest {

// The maximal capacity for the vehicle
Expand Down
13 changes: 13 additions & 0 deletions _alp/Classes/Class.I_HeatingAsset.java
Original file line number Diff line number Diff line change
@@ -1,3 +1,16 @@
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.fasterxml.jackson.annotation.JsonSubTypes;
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
import com.fasterxml.jackson.annotation.ObjectIdGenerators;
@JsonIdentityInfo(generator = ObjectIdGenerators.UUIDGenerator.class, property = "@id")

@JsonTypeInfo(
use = JsonTypeInfo.Id.CLASS,
include = JsonTypeInfo.As.PROPERTY,
property = "type" // 👈 this will be the field name in your JSON
)


public interface I_HeatingAsset
{
public J_FlowsMap get_heatFromEnergyCarrier_kW(); // Map with a single entry for the energycarrier that is 'burned'
Expand Down
13 changes: 13 additions & 0 deletions _alp/Classes/Class.I_Vehicle.java
Original file line number Diff line number Diff line change
@@ -1,3 +1,16 @@
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.fasterxml.jackson.annotation.JsonSubTypes;
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
import com.fasterxml.jackson.annotation.ObjectIdGenerators;
@JsonIdentityInfo(generator = ObjectIdGenerators.UUIDGenerator.class, property = "@id")

@JsonTypeInfo(
use = JsonTypeInfo.Id.CLASS,
include = JsonTypeInfo.As.PROPERTY,
property = "type" // 👈 this will be the field name in your JSON
)


public interface I_Vehicle
{
// These methods can't have default implementations because they use the Object States.
Expand Down
20 changes: 20 additions & 0 deletions _alp/Classes/Class.J_ChargePoint.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,20 @@
/**
* J_ChargePoint
*/
import com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility;
import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
import com.fasterxml.jackson.annotation.ObjectIdGenerators;

@JsonAutoDetect(
fieldVisibility = Visibility.ANY, //
getterVisibility = Visibility.NONE,
isGetterVisibility = Visibility.NONE,
setterVisibility = Visibility.NONE,
creatorVisibility = Visibility.NONE
)
@JsonIdentityInfo(generator = ObjectIdGenerators.UUIDGenerator.class, property = "@id")

public class J_ChargePoint implements I_ChargePointRegistration{

private boolean hasSocketRestrictions;
Expand All @@ -15,6 +29,12 @@ public class J_ChargePoint implements I_ChargePointRegistration{

private List<I_ChargingRequest> storedActiveChargingRequests = null;

/**
* Constructor for (de-)serialisation
*/
public J_ChargePoint() {
};

/**
* Default constructor
* No restrictions on sockets
Expand Down
3 changes: 3 additions & 0 deletions _alp/Classes/Class.J_ChargingManagementGridBalancing.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@ public class J_ChargingManagementGridBalancing implements I_ChargingManagement {
/**
* Default constructor
*/
public J_ChargingManagementGridBalancing( ) {
}

public J_ChargingManagementGridBalancing( GridConnection gc, J_TimeParameters timeParameters) {
this.gc = gc;
this.timeParameters = timeParameters;
Expand Down
5 changes: 4 additions & 1 deletion _alp/Classes/Class.J_ChargingManagementLocalBalancing.java
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,10 @@ public class J_ChargingManagementLocalBalancing implements I_ChargingManagement
/**
* Default constructor
*/
public J_ChargingManagementLocalBalancing( GridConnection gc, J_TimeParameters timeParameters ) {
public J_ChargingManagementLocalBalancing( ) {
}

public J_ChargingManagementLocalBalancing( GridConnection gc, J_TimeParameters timeParameters) {
this.gc = gc;
this.timeParameters = timeParameters;
this.filterDiffGain_r = 1/(filterTimeScale_h/timeParameters.getTimeStep_h());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,11 @@ public class J_ChargingManagementMaxAvailablePower implements I_ChargingManageme
/**
* Default constructor
*/
public J_ChargingManagementMaxAvailablePower( GridConnection gc, J_TimeParameters timeParameters ) {
public J_ChargingManagementMaxAvailablePower( ) {

}

public J_ChargingManagementMaxAvailablePower( GridConnection g, J_TimeParameters timeParametersc) {
this.gc = gc;
this.timeParameters = timeParameters;
}
Expand Down
5 changes: 4 additions & 1 deletion _alp/Classes/Class.J_ChargingManagementOffPeak.java
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,10 @@ public class J_ChargingManagementOffPeak implements I_ChargingManagement {
/**
* Default constructor
*/
public J_ChargingManagementOffPeak( GridConnection gc, J_TimeParameters timeParameters ) {
public J_ChargingManagementOffPeak( ) {
}

public J_ChargingManagementOffPeak( GridConnection gc, J_TimeParameters timeParameters) {
this.gc = gc;
this.timeParameters = timeParameters;
this.filterDiffGain_r = 1/(filterTimeScale_h/timeParameters.getTimeStep_h());
Expand Down
3 changes: 3 additions & 0 deletions _alp/Classes/Class.J_ChargingManagementPrice.java
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,9 @@ public class J_ChargingManagementPrice implements I_ChargingManagement {
/**
* Default constructor
*/
public J_ChargingManagementPrice( ) {
}

public J_ChargingManagementPrice( GridConnection gc, J_TimeParameters timeParameters) {
this.gc = gc;
this.timeParameters = timeParameters;
Expand Down
4 changes: 4 additions & 0 deletions _alp/Classes/Class.J_ChargingManagementSimple.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,10 @@ public class J_ChargingManagementSimple implements I_ChargingManagement {
/**
* Default constructor
*/
public J_ChargingManagementSimple( ) {

}

public J_ChargingManagementSimple( GridConnection gc, J_TimeParameters timeParameters) {
this.gc = gc;
this.timeParameters = timeParameters;
Expand Down
23 changes: 22 additions & 1 deletion _alp/Classes/Class.J_ChargingSessionData.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,21 @@
/**
* J_ChargingSessionData
*/

import com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility;
import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
import com.fasterxml.jackson.annotation.ObjectIdGenerators;

@JsonAutoDetect(
fieldVisibility = Visibility.ANY, //
getterVisibility = Visibility.NONE,
isGetterVisibility = Visibility.NONE,
setterVisibility = Visibility.NONE,
creatorVisibility = Visibility.NONE
)
@JsonIdentityInfo(generator = ObjectIdGenerators.UUIDGenerator.class, property = "@id")

public class J_ChargingSessionData {
private double startTime_h;
private double endTime_h;
Expand All @@ -18,7 +33,13 @@ public class J_ChargingSessionData {
private boolean V2GCapableOverride = true;

/**
* Default constructor
* Constructor for (de-)serialisation
*/
public J_ChargingSessionData() {
}

/**
* Default constructor initializing the fields
*/
public J_ChargingSessionData(double startTime_quarterhours, double endTime_quarterhours, double chargingDemand_kWh, double batterySize_kWh, double chargingPower_kW, int socketNb, boolean V2GCapable, double timeStep_h) {

Expand Down
8 changes: 7 additions & 1 deletion _alp/Classes/Class.J_EAChargingSession.java
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,14 @@ public class J_EAChargingSession extends zero_engine.J_EAFlex implements I_Charg
private int storedNextSessionIndex;

/**
* Default constructor
* Constructor for (de-)serialisation
*/
public J_EAChargingSession() {
}

/**
* Default constructor initializing the fields
*/
public J_EAChargingSession(I_AssetOwner owner, List<J_ChargingSessionData> chargingSessionDataList, int socketNb, J_TimeParameters timeParameters) {
this.setOwner(owner);
this.timeParameters = timeParameters;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
*/
import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility;
import com.fasterxml.jackson.annotation.JsonIdentityInfo;
import com.fasterxml.jackson.annotation.ObjectIdGenerators;

@JsonAutoDetect(
fieldVisibility = Visibility.ANY, //
Expand All @@ -12,6 +14,7 @@
creatorVisibility = Visibility.NONE
)

@JsonIdentityInfo(generator = ObjectIdGenerators.UUIDGenerator.class, property = "@id")
public class J_HeatingManagementPIcontrolHybridHeatpump implements I_HeatingManagement{
private boolean isInitialized = false;
private GridConnection gc;
Expand Down
Loading