![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Heavy-usage asymptotic analysis of the closed two-station network with one think (infinite-server) station and one discriminatory processor-sharing station, by the generating-function expansion of J.A. More...
#include <cmath>#include <limits>#include <string>#include <vector>#include "line/api/npfqn/npfqn_dps_morrison.h"#include "line/lang/qn/network_struct.h"#include "line/num/number.h"#include "line/solvers/nc/nc_types.h"#include "line/solvers/nc/solver_nc_oi.h"#include "line/util/error.h"#include "line/util/matrix.h"Go to the source code of this file.
Namespaces | |
| namespace | line |
| namespace | line::nc |
Functions | |
| template<class T> | |
| bool | line::nc::sn_has_dps (const qn::NetworkStruct< T > &sn) |
| True when any station of the network is scheduled DPS. | |
| template<class T> | |
| bool | line::nc::nc_is_dps_model (const qn::NetworkStruct< T > &sn) |
| True when the model is the closed two-station network Morrison's expansion is derived for: one infinite-server (think) station and one single-server DPS station, exponential service, every class alternating between the two. | |
| template<class T> | |
| NcSolution< T > | line::nc::solver_nc_dps_analyzer (const qn::NetworkStruct< T > &sn, const NcSolverOptions &opt) |
| Analyzes the closed think+DPS network. | |
Heavy-usage asymptotic analysis of the closed two-station network with one think (infinite-server) station and one discriminatory processor-sharing station, by the generating-function expansion of J.A.
Morrison, "Asymptotic analysis of a large closed queueing network with discriminatory processor sharing", Queueing Systems 9 (1991) 191-214.
Port of matlab/src/solvers/NC/nc_is_dps_model.m and solver_nc_dps_analyzer.m, matching jar/src/main/java/jline/solvers/nc/analyzers/Solver_nc_dps_analyzer.java and python/line_solver/solvers/solver_nc/solver_nc_dps_analyzer.py. The kernel is line/api/npfqn/npfqn_dps_morrison.h.
THERE IS NO NORMALIZING CONSTANT HERE. A DPS station is not product-form – that is the premise of the paper – so lG is NaN, as on the maximum-entropy route. NC hosts this method because NC is where LINE keeps the asymptotic expansions of generating functions and normalizing-constant integrals (pana, mmint2, le, ble, gleint, rayint), which is the family Morrison's expansion belongs to, not because a constant is being computed.
Response times come from Little's law on the queue-length result rather than from the expanded RESULT 2 (eq. 4.17), so that Q = R*T holds exactly in the returned table; the two agree to the order of the approximation, since Morrison derives (4.17) as the ratio (4.11)/(4.15).
Definition in file solver_nc_dps.h.