Class LdqbdCensor
Port of matlab/src/api/mam/ldqbd_censor.m, implementing the algorithm of N. Baer, A. Al Hanbali, R. J. Boucherie, J. C. W. van Ommeren, "A successive censoring algorithm for a system of connected LDQBD-processes", Annals of Operations Research 310:389-410, 2022.
The state space is split into S sets, each a level-dependent QBD on its
own; set s has levels 1..L_s and level l of set s has phases.get(s)[l]
phases. States are ordered by (set, level, phase). Transitions between sets
are arbitrary. Sets 1..S-1 are censored out in turn, the last LDQBD is solved
by level reduction, and the vector is expanded back. Each transient LDQBD is
factored once by block-tridiagonal LU. If a censored diagonal block is no
longer block tridiagonal by level, LINE:unsupported:Structure is
thrown (another order of the sets may succeed).
-
Method Summary
Modifier and TypeMethodDescriptionstatic LdqbdCensorResultldqbdCensor(Matrix Q, List<int[]> phases) static LdqbdCensorResultldqbdCensor(Matrix Q, List<int[]> phases, double tol)
-
Method Details
-
ldqbdCensor
-
ldqbdCensor
- Parameters:
Q- infinitesimal generator ordered by (set, level, phase)phases- phases.get(s)[l] is the number of phases of level l of set stol- relative tolerance on the generator row sums
-