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

Exact analysis of the M/H2/1 queue: hyperexponential service with branch probabilities (p1, 1-p1) and rates (mu1, mu2). More...

#include <algorithm>
#include <cmath>
#include <functional>
#include <vector>
#include "line/api/qsys/qsys_mg1.h"
#include "line/api/qsys/qsys_res.h"
#include "line/util/error.h"
Include dependency graph for qsys_mh21.h:

Go to the source code of this file.

Namespaces

namespace  line
 Conservation laws of a layered queueing network, enumerated from its structure.
namespace  line::qsys

Functions

QsysRes line::qsys::qsys_mh21 (double lambda, double p1, double mu1, double mu2, const QsysResOptions &o=QsysResOptions())
 Exact M/H2/1 queue.

Detailed Description

Exact analysis of the M/H2/1 queue: hyperexponential service with branch probabilities (p1, 1-p1) and rates (mu1, mu2).

Port of matlab/src/api/qsys/qsys_mh21.m. The probability generating function of the number in system is rational with two poles z1 < z2 outside the unit disk, the roots of a1 a2 z^2 - (a1 + a2 + a1 a2) z + 1 + a1 + a2 - rho (a_i = lambda/mu_i), so P_n = C1 z1^-n + C2 z2^-n, and the sojourn and waiting times are mixtures of two exponentials of rates lambda (z_i - 1).

ARITHMETIC: double, as the reference.

Definition in file qsys_mh21.h.