api.sum
- sum_closing(lambda0, scva, L, mi, scv, N, Z, Kclosed, tol, maxiter)
[XN,QN,UN,RN,TN,IT] = SUM_CLOSING(LAMBDA0,SCVA,L,MI,SCV,N,Z,KCLOSED,TOL,MAXITER)
Closing method for open and mixed non-product-form queueing networks (Bolch et al., Sec. 10.1.5), solved with the summation method.
The external world of each open class is replaced by an additional -/G/1 station with service rate mu_inf,r = Ropen*lambda0(r), where Ropen is the number of open classes, service SCV equal to the interarrival time SCV of the open class, and unit visit ratio. The resulting closed network is then solved by SUM_CLOSED with a large population KCLOSED for the open classes (default: 5000, as recommended for the summation method). Closed classes are passed through unchanged, which makes the method applicable to mixed networks.
Input: lambda0 - 1xR external arrival rates (0 for closed classes) scva - 1xR interarrival time SCVs of the open classes (1 if Poisson) L - MxR service demand matrix of the original network, with visit
ratios of open classes normalized per external arrival
mi - Mx1 number of servers (Inf for infinite-server stations) scv - MxR service time SCVs (pass 1 for insensitive stations) N - 1xR populations: Inf (or NaN) for open classes, finite
integers for closed classes
Z - 1xR think times Kclosed - closing population for the open classes (default: 5000) tol - convergence tolerance (default: 1e-6) maxiter - maximum number of iterations (default: 10000)
Output: XN - 1xR class throughputs (for open classes, XN approaches lambda0
from below as KCLOSED grows)
QN - MxR mean queue lengths at the original stations UN - MxR utilizations at the original stations RN - MxR residence times at the original stations TN - 1xR mean response time in the original network, TN=sum(QN)./XN it - number of iterations
Reference: G. Bolch, S. Greiner, H. de Meer, K.S. Trivedi, Queueing Networks and Markov Chains, 2nd ed., Wiley, 2006, Sec. 10.1.5.
- sum_closed(L, N, Z, mi, scv, tol, maxiter)
[XN,QN,UN,RN,IT] = SUM_CLOSED(L,N,Z,MI,SCV,TOL,MAXITER)
Summation method (SUM) for closed queueing networks, including the extended SUM (ESUM) node functions for non-product-form networks with generally distributed service times.
The method expresses the mean queue length of each station as a function of its throughput, Ki = fi(lambdai), and solves the population constraint sum_i Ki = K. Single-class models are solved by bisection on the system throughput (Bolch et al., Sec. 9.2.1); multiclass models by fixed-point iteration on the class throughputs (Sec. 9.2.2, Eqs. 9.24-9.26).
Node functions: - Product-form stations (scv=1, or insensitive disciplines PS/LCFS-PR,
for which the caller must pass scv=1): Eq. (9.15)/(9.19).
FCFS stations with general service (scv~=1): ESUM corrections, Eq. (10.88) for -/G/1 and Eq. (10.89) for -/G/m, with ai=(1+scv_i)/2 and Erlang-C waiting probability P_mi.
Infinite-server stations (mi=Inf) and think times Z: Ki = lambdai*Li.
Input: L - MxR service demand matrix, L(i,r) = e(i,r)/mu(i,r) N - 1xR population vector Z - 1xR think times (aggregated as a delay term) mi - Mx1 number of servers (Inf for infinite-server stations) scv - MxR squared coefficient of variation of service times tol - convergence tolerance (default: 1e-6) maxiter - maximum number of iterations (default: 10000)
Output: XN - 1xR class throughputs QN - MxR mean queue lengths UN - MxR utilizations (per-server for queueing stations, X.*L for IS) RN - MxR residence times, RN=QN./XN it - number of iterations
Reference: G. Bolch, S. Greiner, H. de Meer, K.S. Trivedi, Queueing Networks and Markov Chains, 2nd ed., Wiley, 2006, Secs. 9.2 and 10.1.4.4.