Class Pfqn_conv

java.lang.Object
jline.api.pfqn.ld.Pfqn_conv

public final class Pfqn_conv extends Object
  • Method Details

    • pfqn_conv

      public static double[] pfqn_conv(Matrix L, int[] N, double[] Z, List<SerializableFunction<Matrix,Matrix>> cdscaling)
      Multichain convolution for networks with class-dependent service rates.

      Implements the convolution algorithm of Sauer (1983), Section 5.2, "Computational Algorithms for State-Dependent Queueing Networks", ACM TOCS, Vol. 1, No. 1, pp. 67-92.

      For class-dependent stations, X_m(n) is computed recursively via Sauer eq. (40): X_m(n) = (u_km / mu_km(n)) * X_m(n - e_k), where the class-dependence function supplies mu_km(n) = (n_k/|n|) * beta_{m,k}(n), beta being the DIMENSIONLESS scaling of the service demand (L/beta). cdscaling.get(m) is a function of the per-class population vector n at station m, returning either a 1x1 matrix (chain-independent) or a length-R row vector of per-class rates. Any saturation/cutoff is applied inside the function.

      Parameters:
      L - Service demand matrix (M x R)
      N - Population vector, must be finite (closed network)
      Z - Think time vector
      cdscaling - class-dependence functions beta_m(n) indexed by station; null entries denote load-independent stations
      Returns:
      {G, log(G)}