Class Pfqn_ncoi

java.lang.Object
jline.api.pfqn.nc.Pfqn_ncoi

public final class Pfqn_ncoi extends Object
  • Method Details

    • pfqn_ncoi

      public static Ret.pfqnOiNc pfqn_ncoi(double[] Z, int[] N, List<ToDoubleFunction<int[]>> mu)
      Normalizing constant of a closed OI + single-delay product-form network.

      The balance function of each OI station is the balanced-fairness recursion Phi(0) = 1, Phi(n) = (1/mu(n)) sum_{r: n_r>0} Phi(n - e_r), and G(N) is the convolution of those balance functions with the multinomial delay factor F_Z(n) = prod_r Z_r^{n_r}/n_r!.

      This is a MACROSTATE routine: everything is tabulated over the count lattice 0 <= n <= N, never over orderings, which is legitimate because an OI rate is permutation-invariant so Phi closes on the count vector. With a non-empty swap graph that closure fails and Pfqn_pas_nc must be used instead. Cost: O(M R L) for the balance functions and O(M prod_r (N_r+1)(N_r+2)/2) for the convolutions, with L = prod_r (N_r+1).

      Parameters:
      Z - (R) think-time demand of the aggregated delay node.
      N - (R) closed population, finite.
      mu - list of OI station rate handles; each maps a per-class count vector n (length R) to the total service rate at that station. A state with non-positive rate is unreachable and gets a zero balance value. May be empty/null to model a pure delay network.
      Returns:
      G(N) and log G(N).
    • pfqn_ncoi

      public static Ret.pfqnOiNc pfqn_ncoi(double[] Z, int[] N, List<ToDoubleFunction<int[]>> mu, double[][] visits)