![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Port of solver_mam_mapmap1_exact.m: the exact fast path SolverMAM tries BEFORE anything else, for a single-class open Source -> FCFS Queue -> Sink model whose arrival or service is a genuinely CORRELATED MAP. More...
#include <cmath>#include <vector>#include "line/api/mam/map_moment.h"#include "line/api/mam/qbd_mapmap1.h"#include "line/lang/distribution.h"#include "line/lang/qn/network_struct.h"#include "line/solvers/mam/solver_mam_basic.h"#include "line/solvers/mva/mva_types.h"Go to the source code of this file.
Classes | |
| struct | line::mam::MapMap1Exact< T > |
| Result of the fast path; ok false means the model is not in its regime. More... | |
Namespaces | |
| namespace | line |
| namespace | line::mam |
Functions | |
| template<class T> | |
| MapMap1Exact< T > | line::mam::solver_mam_mapmap1_exact (const qn::NetworkStruct< T > &L) |
Port of solver_mam_mapmap1_exact.m: the exact fast path SolverMAM tries BEFORE anything else, for a single-class open Source -> FCFS Queue -> Sink model whose arrival or service is a genuinely CORRELATED MAP.
Why it comes first. The decomposition methods approximate exactly this case: dec.source hands the service to MMAPPH1FCFS as a renewal phase type, which keeps the service-time marginal and discards the correlation between consecutive services. When the process is renewal the two agree and the fast path stands down (the is_renewal_map test below); when it is not, the fast path returns the exact matrix-geometric answer instead.
The reference reaches Q_CT_MAP_MAP_1; this port reaches qbd_mapmap1, which solves the same level-independent QBD from the port's own machinery (see api/mam/qbd_mapmap1.h for the measured agreement).
ok = false means "not an exactly-solvable single MAP/MAP/1 queue", and the caller falls through to the decomposition. Every early return in the reference is reproduced, including the stability test lambda < mu: an unstable or degenerate model is left to the fallback rather than answered with a divergent geometric series.
Definition in file solver_mam_mapmap1_exact.h.