![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
CoMoM for the repairman model with an arbitrary LOAD-DEPENDENT rate lattice at the single queueing station. More...
#include <cstddef>#include <vector>#include "line/api/pfqn/pfqn_ca.h"#include "line/api/pfqn/pfqn_comomrm_ms.h"#include "line/api/pfqn/pfqn_nc_sanitize.h"#include "line/num/number.h"#include "line/util/error.h"#include "line/util/matrix.h"Go to the source code of this file.
Namespaces | |
| namespace | line |
| namespace | line::pfqn |
Functions | |
| template<class T> | |
| ComomRmResult< T > | line::pfqn::pfqn_comomrm_ld (const Matrix< T > &L, const std::vector< int > &N, const Matrix< T > &Z, const Matrix< T > &mu) |
| CoMoM for the repairman model with an arbitrary LOAD-DEPENDENT rate lattice at the single queueing station. | |
CoMoM for the repairman model with an arbitrary LOAD-DEPENDENT rate lattice at the single queueing station.
Templated port of matlab/src/api/pfqn/pfqn_comomrm_ld.m. The recursion is the bidiagonal transfer-matrix sweep of pfqn_comomrm_ms, from which this routine differs only in where the rate lattice comes from and in the preprocessing that folds pure delay rows out of the demand matrix.
Delay detection. When no think time is supplied, a station whose rate row is exactly the identity lattice mu(i,k) = k is an infinite server, and the reference moves its demand row into Z and drops it from L and mu. MATLAB tests this with a 2-norm against a tolerance; this port tests exact equality, for the same reason pfqn_unique merges on exact equality: a tolerant test silently reclassifies a station and changes the model, which has no meaning in the rational field. A caller wanting the tolerant behaviour should round its rate lattice before calling, where the rounding is visible.
Arithmetic: EXACT-CAPABLE, unconditionally. See pfqn_comomrm_ms for why the reference's per-step renormalization is dropped rather than reproduced.
Definition in file pfqn_comomrm_ld.h.