4 % @brief AMVA-QD load and queue-dependent scaling function.
10 % @brief AMVA-QD load and queue-dependent scaling function.
11 % @fn pfqn_lldfun(n, lldscaling, nservers)
12 % @param n Queue population vector.
13 % @param lldscaling Load-dependent scaling matrix.
14 % @param nservers Number of servers per station.
15 % @
return r Scaling factor vector.
18function r = pfqn_lldfun(n,lldscaling, nservers)
19% R = PFQN_LLDFUN(N,MU,C)
21% AMVA-QD queue-dependence function
23% Copyright (c) 2012-2026, Imperial College London
28smax = size(lldscaling,2);
29alpha = 20; % softmin parameter
33 if isinf(nservers(i)) % delay server
34 r(i) = 1; %1 / n(i); % handled in the main code differently so not needed
36 r(i) = r(i) / softmin(n(i),nservers(i),alpha);
37 if isnan(r(i)) %
if numerical problems in soft-min
38 r(i) = 1 / min(n(i),nservers(i));
43 if ~isempty(lldscaling) && range(lldscaling(i,:))>0
44 r(i) = r(i) / interp1(1:smax, lldscaling(i,1:smax), n(i),
'spline');