Skip to main content

SimulateEnergyMeasurementsNodeConfiguration

Namespace: Meshmakers.Octo.MeshAdapter.Nodes.Transform

SimulateEnergyMeasurements node configuration. Generates per-15-min-slot EnergyMeasurement Insert candidates (and their parent ParentChild association candidates) for a configured set of MeteringPoints over a configured time window. Uses BDEW H0/G0/L0 load-profile or PV-curve math (deterministic, no calendar / season effects beyond the PV day-length cosine) so the produced amount values are realistic enough to validate chained rollups and time-range archive idempotency.

public record SimulateEnergyMeasurementsNodeConfiguration : NodeConfiguration, INodeConfiguration, IEquatable<NodeConfiguration>, IEquatable<SimulateEnergyMeasurementsNodeConfiguration>

Inheritance Object → NodeConfiguration → SimulateEnergyMeasurementsNodeConfiguration
Implements INodeConfiguration, IEquatable<NodeConfiguration>, IEquatable<SimulateEnergyMeasurementsNodeConfiguration>

Remarks:

Output is meant to flow into UpdateRtEntityIfNewer@1 for Lesart-D dedup, then ApplyChanges@2 for the RT-write, and SaveTimeRangeStreamDataInArchive@1 for the archive write. The natural key for the dedup is RtWellKnownName = "EM-{mpRtId}-{obisCode}".

Properties

StartDate

Inclusive UTC start of the simulation window. The first slot is [StartDate, StartDate + PT15M).

public DateTime StartDate { get; set; }

Property Value

DateTime

NumDays

Number of full UTC days to simulate. Each day produces 96 slots per MeteringPoint × ObisCode pair.

public int NumDays { get; set; }

Property Value

Int32

EnergyMeasurementCkTypeId

CkTypeId of the EnergyMeasurement type the simulator emits (e.g. Basic.Energy/EnergyMeasurement).

public string EnergyMeasurementCkTypeId { get; set; }

Property Value

String

TimeRangeCkRecordId

CkRecordId of the TimeRange record on the EnergyMeasurement (e.g. Basic/TimeRange).

public string TimeRangeCkRecordId { get; set; }

Property Value

String

AmountCkRecordId

CkRecordId of the Amount record on the EnergyMeasurement (e.g. Basic/Amount). Carries Value: Double + Unit: Enum.

public string AmountCkRecordId { get; set; }

Property Value

String

AmountUnit

UnitOfMeasure enum value to stamp on each Amount record. Default 1 (KWh in Basic.UnitOfMeasure).

public int AmountUnit { get; set; }

Property Value

Int32

ParentAssociationRoleId

Association role used to wire each new EnergyMeasurement to its parent MeteringPoint (e.g. System/ParentChild).

public string ParentAssociationRoleId { get; set; }

Property Value

String

EntityUpdatesOutputPath

JSONPath where the list of EntityUpdateInfo<RtEntity> candidates is written.

public string EntityUpdatesOutputPath { get; set; }

Property Value

String

AssociationUpdatesOutputPath

JSONPath where the list of AssociationUpdateInfo candidates is written.

public string AssociationUpdatesOutputPath { get; set; }

Property Value

String

MeteringPoints

The MeteringPoints to simulate against. At least one entry required.

public ICollection<MeteringPointSimDefinition> MeteringPoints { get; set; }

Property Value

ICollection<MeteringPointSimDefinition>

DataQuality

DataQuality enum value to stamp on every generated slot. Default 1 (BasicEnergy/DataQuality.L1 — 15-min meter readings).

public int DataQuality { get; set; }

Property Value

Int32

Description

public string Description { get; set; }

Property Value

String

Constructors

SimulateEnergyMeasurementsNodeConfiguration()

Caution

Constructors of types with required members are not supported in this version of your compiler.


public SimulateEnergyMeasurementsNodeConfiguration()