LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
me_gegec_mql.h File Reference

Mean queue length of a stable infinite-capacity GE/GE/c/FCFS queue. More...

#include <cstddef>
#include <vector>
#include "line/num/number.h"
#include "line/util/error.h"
Include dependency graph for me_gegec_mql.h:

Go to the source code of this file.

Namespaces

namespace  line
namespace  line::me

Functions

template<class T>
line::me::me_gegec_mql (const T &lambda, const T &Ca, const T &mu, const T &Cs, long c)
 Port of me_gegec_mql.

Detailed Description

Mean queue length of a stable infinite-capacity GE/GE/c/FCFS queue.

Templated port of matlab/src/api/me/me_gegec_mql.m, the exact Maximum Entropy solution of Kouvatsos (1994), equation (3.9).

WHY IT EXISTS SEPARATELY FROM me_oqn. me_oqn.h carries a numerically identical local copy of this formula; the reference does the same and says why – me_oqn.m is compiled to a MEX file by MEXIFY, which cannot call out. This file is the one me_oqn_blk uses for the stations whose buffer is INFINITE, so a blocking network with a mix of finite and unbounded queues solves both kinds with the same coefficients.

THE GEOMETRIC TAIL IS WHY x MATTERS. The state probabilities are a product of g(1..c) up to the server count and then a geometric ratio x thereafter, so Z and the two partial sums below are the closed forms of that split: S1 covers the states with an idle server, S2 the saturated tail, whose mean needs both 1/(1-x) and x/(1-x)^2.

ARITHMETIC. The tail sums assume |x| < 1, i.e. a STABLE queue; the caller is responsible for that, exactly as in the reference. Transcendental only.

Definition in file me_gegec_mql.h.