LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
solver_nc_dps.h File Reference

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"
Include dependency graph for solver_nc_dps.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.

Detailed Description

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.