Package jline.solvers.fluid
Class FluidResult
java.lang.Object
jline.solvers.SolverResult
jline.solvers.fluid.FluidResult
Result container for Fluid solver analysis of queueing networks.
FluidResult extends the base SolverResult to include fluid-specific performance metrics and analysis results. Fluid solvers use continuous approximations and differential equations to analyze queueing networks with general service and arrival processes.
Fluid analysis results include:
- ODE-based steady-state and transient solutions
- Phase-type distribution approximations
- Response time and passage time distributions
- Aggregated state probabilities
- Age of Information (AoI) metrics and distributions
- Since:
- 1.0
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionAge of Information results from MFQ analysis (null if not an AoI model)doubleTotal blocked mass; station queues sum to N minus this.int[]Which capacity constraints bound at the reported point.Right-hand side of each capacity constraint.String[]Human-readable origin of each finite capacity constraint.int[]Which region each cap came from, -1 for a station buffer.boolean[]True where a cap stages the blocked job rather than holding or losing it.int[]Which station each cap came from, -1 for a region cap.List<double[]>Every time the trajectory made a cap start or stop binding, as {t, row, kind} with kind 0 = release, 1 = activate, 2 = a crossing the cap could not hold.Value each constrained quantity actually took at the fixed point.doubleLargest violation of the population-conservation rows at the reported point.booleanWhether that residual reachedoptions.tol.Rate each waiting queue drains at, one per binding cap.doubleMass held OUTSIDE a capped region, per staging coordinate.int[]Class each staging coordinate carries.int[]Region each staging coordinate belongs to.Matrix[][]Distribution matrices for response time and passage time CDFs [stations][classes]doubleRuntime required for distribution computationCache hit probabilities [nodes x classes] from cacheqn analysisdoubleLogarithm of aggregate state probabilityCache miss probabilities [nodes x classes] from cacheqn analysisPer-cache, per-class variance of the miss probability that class sees.int[]Node index of each entry inmomentCacheSigma.Matrix[]Per-cache per-item miss probability, aligned withmomentCacheSigma.Matrix[]Per-cache stationary covariance of the item occupancy under the linear noise approximation, one entry per cache that has a drift-based fluid model.int[][]State coordinates of each (station,class) inmomentSigma, flattened asi*nclasses+k.intOuter (mean, covariance) iterations performed by the moment-closure methods.Per-(station,class) queue-length variance of the moment-closure methods.State-level stationary covariance of the moment-closure methods, i.e.Per-station population variance of the moment-closure methods.The same variance as it entered the DRIFT, i.e.int[][]State coordinates of each station inmomentSigma: every class and service phase it serves.ODE state vector solution from fluid approximationWhat the Petri route computes that the station table has no column for: the marking and its variance, the per-mode firing flows, the invariants and which capacities bound.doubleAggregate state probabilityMatrix[][]Transient queue-length VARIANCE per station and class, [stations][classes], each a column over the time grid int.Matrix[]Full state covariance Sigma(t) of the "kp" method, one dim-by-dim matrix per time point, so cross-station and cross-class covariances survive rather than only the per-block totals inQVart.Modified network structure after phase-type expansion (if applied) -
Constructor Summary
Constructors -
Method Summary
Methods inherited from class jline.solvers.SolverResult
deepCopy, reset
-
Field Details
-
odeStateVec
ODE state vector solution from fluid approximation -
snFinal
Modified network structure after phase-type expansion (if applied) -
distribC
Distribution matrices for response time and passage time CDFs [stations][classes] -
distribRuntime
public double distribRuntimeRuntime required for distribution computation -
Pnir
public double PnirAggregate state probability -
logPnir
public double logPnirLogarithm of aggregate state probability -
aoiResults
Age of Information results from MFQ analysis (null if not an AoI model) -
QVart
Transient queue-length VARIANCE per station and class, [stations][classes], each a column over the time grid int. Only the "kp" method fills this: it integrates the covariance of the Ko-Pender diffusion limit alongside the fluid mean, and every other fluid method carries a first moment only, leaving this null. -
Sigmat
Full state covariance Sigma(t) of the "kp" method, one dim-by-dim matrix per time point, so cross-station and cross-class covariances survive rather than only the per-block totals inQVart. Null for every other method. -
hitProb
Cache hit probabilities [nodes x classes] from cacheqn analysis -
missProb
Cache miss probabilities [nodes x classes] from cacheqn analysis -
momentSigma
State-level stationary covariance of the moment-closure methods, i.e. the solution of the linear noise Lyapunov equation at the fixed point. Null for every first-order method, which computes no second moment at all. Mirrors the MATLABSolverFLD.getMomentsreport. -
momentQVar
Per-(station,class) queue-length variance of the moment-closure methods. -
momentSigma2
Per-station population variance of the moment-closure methods. -
momentSigma2Drift
The same variance as it entered the DRIFT, i.e. zero at the delay stations. The passage-time ODE closes its capacity term at this one so that the response-time distribution is measured on the drift that produced the mean. -
momentOuterIters
public int momentOuterItersOuter (mean, covariance) iterations performed by the moment-closure methods. -
momentClassBlock
public int[][] momentClassBlockState coordinates of each (station,class) inmomentSigma, flattened asi*nclasses+k. Null for every first-order method. Needed to read a per-class population off the covariance, whose coordinates are service phases rather than classes. -
momentStationBlock
public int[][] momentStationBlockState coordinates of each station inmomentSigma: every class and service phase it serves. Null for every first-order method. -
momentCacheSigma
Per-cache stationary covariance of the item occupancy under the linear noise approximation, one entry per cache that has a drift-based fluid model. Null unless the moment closure ran on a cache model. -
momentCachePi0
Per-cache per-item miss probability, aligned withmomentCacheSigma. -
momentCacheMissProbVar
Per-cache, per-class variance of the miss probability that class sees. -
momentCacheNode
public int[] momentCacheNodeNode index of each entry inmomentCacheSigma. -
petri
What the Petri route computes that the station table has no column for: the marking and its variance, the per-mode firing flows, the invariants and which capacities bound. Null on every model that is not a stochastic Petri net. -
daeResidual
public double daeResidual -
daeConverged
public boolean daeConvergedWhether that residual reachedoptions.tol. -
daeConservation
public double daeConservationLargest violation of the population-conservation rows at the reported point. On this route conservation is an EQUATION, so this is a solver tolerance rather than the accumulated integrator drift every other fluid method leaves behind. -
daeCapacityLabel
Human-readable origin of each finite capacity constraint. -
daeCapacityB
Right-hand side of each capacity constraint. -
daeCapacityValue
Value each constrained quantity actually took at the fixed point. -
daeCapacityActive
public int[] daeCapacityActiveWhich capacity constraints bound at the reported point. -
daeStaging
Mass held OUTSIDE a capped region, per staging coordinate. REPORTED HERE AND NOT FOLDED INTO QN, because a blocked job is at no station -- the same choice LDES makes, whose station queues likewise sum to less than N. -
daeStagingRegion
public int[] daeStagingRegionRegion each staging coordinate belongs to. -
daeStagingClass
public int[] daeStagingClassClass each staging coordinate carries. -
daeBlocked
public double daeBlockedTotal blocked mass; station queues sum to N minus this. -
daeDrain
Rate each waiting queue drains at, one per binding cap. -
daeCapacityStaged
public boolean[] daeCapacityStagedTrue where a cap stages the blocked job rather than holding or losing it. -
daeCapacityRegion
public int[] daeCapacityRegionWhich region each cap came from, -1 for a station buffer. -
daeCapacityStation
public int[] daeCapacityStationWhich station each cap came from, -1 for a region cap. -
daeCapacitySwitches
Every time the trajectory made a cap start or stop binding, as {t, row, kind} with kind 0 = release, 1 = activate, 2 = a crossing the cap could not hold. Empty for a steady-state solve.
-
-
Constructor Details
-
FluidResult
public FluidResult()
-