![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Convolutional Bound Hierarchy (Dowdy, Eager, Gordon and Saxton 1984) on the throughput of a single-class closed product-form network. More...
#include <algorithm>#include <cstddef>#include <vector>#include "line/api/pfqn/pfqn_asympt_common.h"#include "line/num/number.h"#include "line/util/error.h"Go to the source code of this file.
Classes | |
| struct | line::pfqn::CbhBounds< T > |
| Return value of pfqn_cbh, mirroring [Xlo, Xhi]. More... | |
Namespaces | |
| namespace | line |
| namespace | line::pfqn |
Functions | |
| template<class T> | |
| CbhBounds< T > | line::pfqn::pfqn_cbh (const std::vector< T > &L, int N, const T &Z, int level) |
| Convolutional Bound Hierarchy (Dowdy, Eager, Gordon and Saxton 1984) on the throughput of a single-class closed product-form network. | |
| template<class T> | |
| CbhBounds< T > | line::pfqn::pfqn_cbh (const std::vector< T > &L, int N, const T &Z) |
Convolutional Bound Hierarchy (Dowdy, Eager, Gordon and Saxton 1984) on the throughput of a single-class closed product-form network.
Templated port of matlab/src/api/pfqn/pfqn_cbh.m. Column c = M - level of Buzen's g array is filled from a Balanced Job Bound estimate of the first c stations (e_0 = 1, e_i = e_{i-1}/B_i), the remaining level stations are convolved exactly, and the infinite-server delay is convolved exactly as well. The BJB upper fill yields the upper bound, the lower fill the lower bound, and both meet the exact solution at level = M.
ARITHMETIC. Every step is an addition, a multiplication or a division of field elements – the balanced fill uses the arithmetic mean and the maximum of the demands, not a root or a logarithm – so the bound is EXACT in rational arithmetic and is deliberately left ungated. The only non-rational ingredient, Z^j/j!, is a rational for rational Z.
Definition in file pfqn_cbh.h.