Class GeoXGeo1Result

java.lang.Object
jline.api.qsys.GeoXGeo1Result

public final class GeoXGeo1Result extends Object
Result of a discrete-time Geo^X/Geo/1 queue analysis.

All time quantities are in slots. Unlike the single-arrival Geo/Geo/1, the stationary queue length has no elementary closed form for a general batch law, so the distribution is exposed through its probability generating function

invalid reference
#pgf(double)
rather than a pmf. The mean measures are exact.
  • Constructor Summary

    Constructors
    Constructor
    Description
    GeoXGeo1Result(GeoGeo1Convention convention, double batchArrivalProb, double batchMean, double batchSecondFactorialMoment, double serviceProb, double arrivalRate, double utilization, double emptyProb, double meanQueueLength, double meanWaitingQueue, double meanSojournTime, double meanWaitingTime, double meanServiceTime)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    double
    Jobs arriving per slot, a*E[X].
    double
    Per-slot probability that a batch arrives.
    double
    Mean batch size E[X], conditional on a batch arriving.
    double
    Second factorial moment E[X(X-1)] of the batch size.
    double
    Probability that the system is empty AT THE SLOT BOUNDARY, 1 - lambda/s.
    Observation epoch the metrics refer to.
    double
    Mean number of jobs in the system.
    double
    Mean service time in slots, 1/s under LAS_DA and (1-s)/s under EAS.
    double
    Mean sojourn time in slots, per job (not per batch).
    double
    Mean number of jobs waiting, i.e.
    double
    Mean waiting time in slots, per job.
    double
    Per-slot service completion probability s.
    double
    Departures per slot, equal to the arrival rate in steady state.
    double
    Fraction of slots in which the server is serving, lambda/s.
    double
    pgf(double z, double batchPgfAtZ)
    Probability generating function of the stationary queue length at the observation epoch, evaluated by the caller-supplied batch pgf.
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • GeoXGeo1Result

      public GeoXGeo1Result(GeoGeo1Convention convention, double batchArrivalProb, double batchMean, double batchSecondFactorialMoment, double serviceProb, double arrivalRate, double utilization, double emptyProb, double meanQueueLength, double meanWaitingQueue, double meanSojournTime, double meanWaitingTime, double meanServiceTime)
  • Method Details

    • getConvention

      public GeoGeo1Convention getConvention()
      Observation epoch the metrics refer to.
    • getBatchArrivalProb

      public double getBatchArrivalProb()
      Per-slot probability that a batch arrives.
    • getBatchMean

      public double getBatchMean()
      Mean batch size E[X], conditional on a batch arriving.
    • getBatchSecondFactorialMoment

      public double getBatchSecondFactorialMoment()
      Second factorial moment E[X(X-1)] of the batch size.
    • getServiceProb

      public double getServiceProb()
      Per-slot service completion probability s.
    • getArrivalRate

      public double getArrivalRate()
      Jobs arriving per slot, a*E[X].
    • getThroughput

      public double getThroughput()
      Departures per slot, equal to the arrival rate in steady state.
    • getUtilization

      public double getUtilization()
      Fraction of slots in which the server is serving, lambda/s.
    • getBoundaryEmptyProb

      public double getBoundaryEmptyProb()
      Probability that the system is empty AT THE SLOT BOUNDARY, 1 - lambda/s.

      This is deliberately not epoch-dependent. It is the constant that appears in the generating function under both conventions. The empty probability at the EAS epoch is p0 + s*pi_1, which has no elementary form for a general batch law; obtain it from pgf(double, double) in the limit if it is needed.

    • getMeanQueueLength

      public double getMeanQueueLength()
      Mean number of jobs in the system.
    • getMeanWaitingQueue

      public double getMeanWaitingQueue()
      Mean number of jobs waiting, i.e. not in service.
    • getMeanSojournTime

      public double getMeanSojournTime()
      Mean sojourn time in slots, per job (not per batch).
    • getMeanWaitingTime

      public double getMeanWaitingTime()
      Mean waiting time in slots, per job.
    • getMeanServiceTime

      public double getMeanServiceTime()
      Mean service time in slots, 1/s under LAS_DA and (1-s)/s under EAS.
    • pgf

      public double pgf(double z, double batchPgfAtZ)
      Probability generating function of the stationary queue length at the observation epoch, evaluated by the caller-supplied batch pgf.

      Under LAS_DA, with A(z) the pgf of the number of jobs arriving in one slot and p0 = 1 - lambda/s,

         P(z) = p0 s (z-1) A(z) / ( z - A(z)(s + (1-s)z) )
       
      Under EAS the epoch is one departure earlier, which divides out the departure step: P_EAS(z) = P(z) (s/z + 1 - s) + p0 s (1 - 1/z).
      Parameters:
      z - evaluation point, 0 < z <= 1
      batchPgfAtZ - the slot-arrival pgf A(z) at the same z
      Returns:
      P(z)
    • toString

      public String toString()
      Overrides:
      toString in class Object