![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Blocking probability of the M/M/1/K queue. More...
Go to the source code of this file.
Classes | |
| struct | line::qsys::Mm1kLossResult< T > |
Namespaces | |
| namespace | line |
| namespace | line::qsys |
Functions | |
| template<class T> | |
| Mm1kLossResult< T > | line::qsys::qsys_mm1k_loss (const T &lambda, const T &mu, unsigned K) |
| Blocking probability of the M/M/1/K queue. | |
Blocking probability of the M/M/1/K queue.
Templated port of matlab/src/api/qsys/qsys_mm1k_loss.m, cross-checked against jar/src/main/java/jline/api/qsys/Qsys_mm1k_loss.java (identical).
rho = lambda/mu Ploss = (1-rho)/(1-rho^(K+1)) * rho^K
Only integer powers appear, so this is exact for T = Rational. It is the closed form the Niu-Cooper transform-free M/G/1/K analysis collapses onto when the service is exponential, and qsys_mg1k_loss must reproduce it.
The formula has a removable singularity at rho = 1, where the true value is 1/(K+1). MATLAB divides by zero and returns NaN there; the port raises instead, since in an exact field the quotient has no value at all.
Definition in file qsys_mm1k_loss.h.