LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
pfqn_mu_ms.m
1%{
2%{
3 % @file pfqn_mu_ms.m
4 % @brief Compute load-dependent rates for m identical c-server FCFS stations.
5%}
6%}
7
8%{
9%{
10 % @brief Compute load-dependent rates for m identical c-server FCFS stations.
11 % @fn pfqn_mu_ms(N, m, c)
12 % @param N Maximum population.
13 % @param m Number of identical stations.
14 % @param c Number of servers per station.
15 % @return mu Load-dependent service rate vector (1xN).
16%}
17%}
18function mu = pfqn_mu_ms(N,m,c)
19% calculates the load-dependent rate of m identical c-server FCFS stations
20mu = zeros(1,N);
21g = zeros(m,N+1); %table
22for n=0:N
23 for i=1:m
24 g(i,1+n) = gnaux(n,i,c,g);
25 end
26end
27for n=1:N
28 mu(n) = g(m,1+(n-1))/g(m,1+n); % 1+ is to handle indexing from 1 instead than 0
29end
30end
31
32function gn = gnaux(n,m,c,g)
33if n==0
34 gn = 1;
35else
36 if m==1
37 gn = 1/prod(min(1:n,c*ones(1,n)));
38 else
39 gn = 0;
40 for k=0:n
41 a = min(1:k,c*ones(1,k));
42 b = 1/g(m-1,1+n-k);
43 gn = gn + 1/(prod(a)*prod(b)); % prod([])=1
44 end
45 end
46end
47end