Class Pfqn_busyp

java.lang.Object
jline.api.pfqn.Pfqn_busyp

public final class Pfqn_busyp extends Object
Mean busy period of order n for a subnetwork, after H. Daduna, "Busy Periods for Subnetworks in Stochastic Networks: Mean Value Analysis", J. ACM 35(3), 1988: Theorem 1 for a closed Gordon-Newell network and Theorem 3 for an open Jackson network. Both are evaluated in the log domain, which serves the same purpose as the ratio recursions of Corollaries 2 and 4, namely avoiding the overflow of the individual normalizing constants. The paper is single-chain: alpha is the stochastic solution of x*P = x for a closed network and the solution of x = gamma + x*P for an open one, and every node is a state-dependent single-server FCFS station. By the insensitivity noted in Section 5 of the paper the result depends on the service processes only through the rates mu.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static interface 
    The load-dependent rate of one node, as a FUNCTION of the jobs it holds.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final double
    Default relative tolerance of the open-network tail truncation.
  • Method Summary

    Modifier and Type
    Method
    Description
    static double[]
    pfqn_busyp(Matrix alpha, Pfqn_busyp.RateFunction mu, Matrix P, double N, int[] subnet, int[] n, Matrix gamma)
    Rate-function form with the default tolerance.
    static double[]
    pfqn_busyp(Matrix alpha, Pfqn_busyp.RateFunction mu, Matrix P, double N, int[] subnet, int[] n, Matrix gamma, double tol)
    Rate-function form, the one the MATLAB and C++ ports take.
    static double[]
    pfqn_busyp(Matrix alpha, Matrix mu, Matrix P, double N, int[] subnet, int[] n)
    Closed-network form with the default tolerance.
    static double[]
    pfqn_busyp(Matrix alpha, Matrix mu, Matrix P, double N, int[] subnet, int[] n, Matrix gamma, double tol)
    Mean busy period of order n for the subnetwork, that is the time from the instant a job entering the subnetwork finds n-1 jobs in it up to the next instant when fewer than n jobs remain in it.
    static double
    pfqn_busyp(Matrix alpha, Matrix mu, Matrix P, double N, int[] subnet, int n, Matrix gamma)
    Single-order form.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • DEFAULT_TOL

      public static final double DEFAULT_TOL
      Default relative tolerance of the open-network tail truncation.
      See Also:
  • Method Details

    • pfqn_busyp

      public static double[] pfqn_busyp(Matrix alpha, Matrix mu, Matrix P, double N, int[] subnet, int[] n, Matrix gamma, double tol)
      Mean busy period of order n for the subnetwork, that is the time from the instant a job entering the subnetwork finds n-1 jobs in it up to the next instant when fewer than n jobs remain in it.
      Parameters:
      alpha - relative arrival rates (1xJ)
      mu - load-dependent service rates (JxK), mu(j,k-1) with k jobs at node j; a table shorter than the population keeps its last rate
      P - routing matrix (JxJ)
      N - population, Double.POSITIVE_INFINITY for an open network
      subnet - zero-based indexes of the nodes forming the subnetwork
      n - busy period orders, 1 <= n <= N
      gamma - external arrival rates (1xJ), null for a closed network
      tol - relative tolerance of the open-network tail truncation
      Returns:
      mean busy period duration for each requested order
    • pfqn_busyp

      public static double[] pfqn_busyp(Matrix alpha, Pfqn_busyp.RateFunction mu, Matrix P, double N, int[] subnet, int[] n, Matrix gamma, double tol)
      Rate-function form, the one the MATLAB and C++ ports take. Identical to the Matrix form above except that mu is queried at the occupancy the algorithm actually reaches, so a delay station in the subnetwork is exact rather than clamped to the last column of a table.
      Parameters:
      alpha - relative arrival rates (1xJ)
      mu - load-dependent service rate of each node at each occupancy
      P - routing matrix (JxJ)
      N - population, Double.POSITIVE_INFINITY for an open network
      subnet - zero-based indexes of the nodes forming the subnetwork
      n - busy period orders, 1 <= n <= N
      gamma - external arrival rates (1xJ), null for a closed network
      tol - relative tolerance of the open-network tail truncation
      Returns:
      mean busy period duration for each requested order
    • pfqn_busyp

      public static double[] pfqn_busyp(Matrix alpha, Matrix mu, Matrix P, double N, int[] subnet, int[] n)
      Closed-network form with the default tolerance.
    • pfqn_busyp

      public static double pfqn_busyp(Matrix alpha, Matrix mu, Matrix P, double N, int[] subnet, int n, Matrix gamma)
      Single-order form.
    • pfqn_busyp

      public static double[] pfqn_busyp(Matrix alpha, Pfqn_busyp.RateFunction mu, Matrix P, double N, int[] subnet, int[] n, Matrix gamma)
      Rate-function form with the default tolerance.