Package jline.io
Class Ret.SampleResult
java.lang.Object
jline.io.Ret.SampleResult
- Enclosing class:
Ret
Unified result type for sampling and simulation in queueing network solvers.
This class provides a standardized interface for returning sampled trajectories from various sampling methods including:
- Discrete-event simulation
- Perfect sampling
- Time-averaged sampling
- Single-node or system-wide sampling
The state trajectory can be either a single matrix (for node-specific sampling) or a list of matrices (for system-wide sampling), allowing flexible representation of different sampling scenarios.
-
Field Summary
FieldsModifier and TypeFieldDescriptionEvent sequence corresponding to the state trajectory.Handle or identifier for the sampling method used.booleanIndicates whether the result uses aggregated states.The node index for single-node sampling (null for system-wide sampling).intNumber of samples generated.State trajectory.Time points for the sampled trajectory. -
Constructor Summary
ConstructorsConstructorDescriptionDefault constructor.SampleResult(String handle, Matrix t, List<Matrix> systemState, Matrix event, boolean isAggregate, int numEvents) Constructor for system-wide sampling results.SampleResult(String handle, Matrix t, Matrix state, Matrix event, boolean isAggregate, Integer nodeIndex, int numEvents) Constructor for single-node sampling results. -
Method Summary
Modifier and TypeMethodDescriptionboolean[]filterEvents(int nodeIndex, EventType type) Returns a boolean mask selecting the events of the given type that occur at the given node.getEvent(int i) Returns the i-th sampled event (0-based) as anEvent.double[]getFilteredEventTimes(boolean[] mask) Returns the timestamps of the events selected by the given mask.intNumber of columns in the event matrix (>1 when event data is available).intNumber of sampled events (rows in the event matrix).Gets the state trajectory as a matrix (for single-node sampling).Gets the system state trajectories as a list of matrices (for system-wide sampling).booleanChecks if this result contains valid sample data.booleanChecks if this is a system-wide sampling result.
-
Field Details
-
handle
Handle or identifier for the sampling method used. -
t
Time points for the sampled trajectory. -
state
State trajectory. For single node sampling, this is a matrix. For system sampling, this is a list of matrices (one per node). -
event
Event sequence corresponding to the state trajectory. -
isAggregate
public boolean isAggregateIndicates whether the result uses aggregated states. -
nodeIndex
The node index for single-node sampling (null for system-wide sampling). -
numEvents
public int numEventsNumber of samples generated.
-
-
Constructor Details
-
SampleResult
public SampleResult()Default constructor. -
SampleResult
public SampleResult(String handle, Matrix t, Matrix state, Matrix event, boolean isAggregate, Integer nodeIndex, int numEvents) Constructor for single-node sampling results.- Parameters:
handle- the sampling method handlet- time pointsstate- state trajectory matrixevent- event sequenceisAggregate- whether states are aggregatednodeIndex- the node indexnumEvents- number of samples
-
SampleResult
public SampleResult(String handle, Matrix t, List<Matrix> systemState, Matrix event, boolean isAggregate, int numEvents) Constructor for system-wide sampling results.- Parameters:
handle- the sampling method handlet- time pointssystemState- list of state trajectories (one per node)event- event sequenceisAggregate- whether states are aggregatednumEvents- number of samples
-
-
Method Details
-
getNumRows
public int getNumRows()Number of sampled events (rows in the event matrix). -
getNumCols
public int getNumCols()Number of columns in the event matrix (>1 when event data is available). -
getEvent
Returns the i-th sampled event (0-based) as anEvent. The event matrix stores one row per event with columns[time, node, eventType]. -
filterEvents
Returns a boolean mask selecting the events of the given type that occur at the given node. -
getFilteredEventTimes
public double[] getFilteredEventTimes(boolean[] mask) Returns the timestamps of the events selected by the given mask. -
getStateMatrix
Gets the state trajectory as a matrix (for single-node sampling).- Returns:
- the state trajectory matrix
- Throws:
IllegalStateException- if this is a system-wide sampling result
-
getSystemStateList
Gets the system state trajectories as a list of matrices (for system-wide sampling).- Returns:
- the list of state trajectory matrices
- Throws:
IllegalStateException- if this is a single-node sampling result
-
isSystemWide
public boolean isSystemWide()Checks if this is a system-wide sampling result.- Returns:
- true if this is a system-wide sampling result
-
hasValidSamples
public boolean hasValidSamples()Checks if this result contains valid sample data.- Returns:
- true if the result contains valid samples
-