Class Solver_ctmc_mapc

java.lang.Object
jline.solvers.ctmc.handlers.Solver_ctmc_mapc

public final class Solver_ctmc_mapc extends Object
Pair form of a multiserver MAP (and MMPP2) service for the CTMC state space; port of MATLAB solver_ctmc_mapc.m.

JMT and both LDES engines sample a MAP service through ONE sampler per (station, class): every draw starts in the phase the previous draw ENDED in, draws chained in service-start order, idle periods included. With c > 1 servers the next start can happen while earlier draws are still in progress, so the landing phase of a draw must be known when it starts. With V = (-D0)^-1 D1 a draw started in h ends in j w.p. V(h,j); a busy server is a PAIR (i,j) that moves i->k at D0(i,k)V(k,j)/V(i,j) and completes at D1(i,j)/V(i,j). The class memory variable is the landing of the most recently STARTED draw: a start from h enters (h,j) w.p. V(h,j) and sets h := j, while moves and completions keep it. For a renewal MAP the chain reduces in law to PH/c; single-server stations are left untouched.

The pair law is stored as the lifted MAP D0p (conditioned moves) and D1p((i,j),(j,j')) = D1(i,j)/V(i,j)*V(j,j'), equivalent in law to the original; the bookkeeping read by the state handlers is sn.ctmcmapc. The rewrite works on a shallow copy whose mutated containers are replaced by copies.

  • Method Details

    • apply

      public static NetworkStruct apply(NetworkStruct sn)
      The struct with every multiserver MAP service in pair form, or sn itself when there is none.