![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Controls, results and the random source of SolverSSA. More...
#include <cstddef>#include <cstdint>#include <limits>#include <random>#include <string>#include <vector>#include "line/util/matrix.h"Go to the source code of this file.
Classes | |
| struct | line::ssa::SsaOptions |
| Controls, defaulting to SolverOptions('SSA') in the reference. More... | |
| struct | line::ssa::SsaSolution |
| What the analyzer returns, in the same shape as the MVA and fluid results. More... | |
| class | line::ssa::SsaRng |
| The uniform source, MATLAB's rand. More... | |
Namespaces | |
| namespace | line |
| namespace | line::ssa |
Controls, results and the random source of SolverSSA.
WHICH RANDOM STREAM, AND WHAT THAT COSTS. An SSA answer is a function of the random stream, so a seed-fixed golden belongs to one implementation only. MATLAB draws from rand (its own Mersenne Twister wrapper); the JAR and native Python share an MT19937. This port uses MT19937 too, but it does NOT claim stream compatibility with any of them: the ORDER in which the sample path consumes draws is part of the algorithm, and no two of the four implementations consume in the same order (the JAR, for instance, spends a draw on a single-phase entry-phase pick where this port does not). So a cross-codebase check against this engine is STATISTICAL, never exact – which is what _kb/14-cpp-multiprecision.md records and what the tests assert.
Definition in file ssa_types.h.