Package jline.lib.smc

Class MG1_ETAQA

java.lang.Object
jline.lib.smc.MG1_ETAQA

public final class MG1_ETAQA extends Object
  • Method Details

    • mg1_pi_etaqa

      public static Matrix mg1_pi_etaqa(Matrix B, Matrix A, Matrix G, Matrix C0)
      Computes the aggregated stationary probability vector for an M/G/1-type Markov chain using the ETAQA method.
    • mg1_pi_etaqa

      public static Matrix mg1_pi_etaqa(Matrix B, Matrix A)
    • mg1_pi_etaqa

      public static Matrix mg1_pi_etaqa(Matrix B, Matrix A, Matrix G)
    • mg1_g_etaqa

      public static Matrix mg1_g_etaqa(Matrix A)
      Computes the G matrix for M/G/1-type Markov chains. Port of MG1_G_ETAQA.m: the generator is uniformized by dividing through by -min(diag(A1)) and adding the identity back onto A1, then handed to cyclic reduction. The uniformization is UNCONDITIONAL because the reference's own discrete-time test is write-only: MG1_G_ETAQA.m assigns a flag named isdicrete and reads one named isdiscrete, so the branch never changes. For the generators LINE passes it that is the correct branch anyway.
    • mg1_qlen_etaqa

      public static double mg1_qlen_etaqa(Matrix B, Matrix A, Matrix pi, int n)
      Computes the n-th moment of the level (the queue length) of an M/G/1-type chain from the ETAQA aggregates. Port of MG1_qlen_ETAQA.m. The moment is NOT read off the aggregates directly: the vectors r^(k) = sum_{j>=2} j^k pi_j are propagated through a recurrence whose left-hand side is one fixed m x m system, so the n-th moment costs n solves of that size however heavy the tail is. REPRODUCED REFERENCE DEFECT: F0j is built from block dega down to block 2 but indexed from 1, so F0j(j) is the tail sum starting at j+1 rather than at j.