Class Pfqn_bk

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

public final class Pfqn_bk extends Object
  • Method Details

    • pfqn_bk

      public static Ret.pfqnNc pfqn_bk(Matrix L, Matrix N, Matrix Z)
      Birman-Kogan saddle point normalizing constant with bottleneck detection. Stations that serve a single chain and appear only once (the paper's dedicated single servers) stay outside the exponent as O(1) algebraic factors, so their poles may be crossed by the saddle point; Algorithm 1 detects those chains and pins their coordinate on the pole. The remaining stations are the paper's large groups of identical stations.
      Parameters:
      L - service demand matrix (stations x classes)
      N - population vector (1 x classes)
      Z - think time vector (1 x classes), may be empty
      Returns:
      G, lG, the saddle point coordinates in X and the utilizations in Q
    • pfqn_bkue

      public static Ret.pfqnNc pfqn_bkue(Matrix L, double N, double Z)
      Birman-Kogan uniform (van der Waerden) expansion for a single chain. The plain saddle point loses accuracy once the saddle approaches the dominant pole of the integrand, which is the regime where the station holding that pole saturates. The uniform expansion keeps the pole and the saddle in one formula through the complementary error function.
      Parameters:
      L - service demand vector, single class
      N - population
      Z - think time
      Returns:
      G and lG
    • pfqn_bklc

      public static Ret.pfqnBkLc pfqn_bklc(Matrix L, Matrix N, Matrix Z, String method, double tol, int maxiter)
      Birman-Kogan load concealment algorithm (Algorithm 2). Chain l is solved on its own with every station slowed by the residual capacity the other chains leave it, A_i = 1 - sum_{k != l} L(i,k)*X_k. Sweeping the chains in Gauss-Seidel order and iterating to a fixed point is the load concealment algorithm.
      Parameters:
      L - service demand matrix (stations x classes)
      N - population vector (1 x classes)
      Z - think time vector (1 x classes), may be empty
      method - single chain solver, "mva" (default) or "ue"
      tol - convergence tolerance on the throughputs
      maxiter - maximum number of sweeps
      Returns:
      throughputs, queue lengths, utilizations and the sweep count