LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
cdf_respt_populations.m
1clear node jobclass;
2
3figure;
4label = {};
5nJobs = [1,4,8];
6plotColors = {'k';'b--';'r-.'};
7for ni = 1:length(nJobs)
8 N = nJobs(ni);
9 model = Network('model');
10
11 node{1} = Delay(model, 'Delay');
12 node{2} = Queue(model, 'Queue1', SchedStrategy.PS);
13 node{3} = Queue(model, 'Queue2', SchedStrategy.PS);
14
15 jobclass{1} = ClosedClass(model, 'Class1', N, node{1}, 0);
16
17 jobclass{1}.completes = false;
18
19 node{1}.setService(jobclass{1}, Exp(1/1));
20 node{2}.setService(jobclass{1}, Exp(1/2));
21 node{3}.setService(jobclass{1}, Exp(1/2));
22
23 M = model.getNumberOfStations();
24 K = model.getNumberOfClasses();
25
26 P = circul(M);
27 model.link(P);
28 %%
29 options = FLD.defaultOptions;
30 options.iter_max = 100;
31 solver = FLD(model, options);
32 AvgRespT{ni} = solver.getAvgRespT
33 RDfluid = solver.getCdfRespT();
34 %%
35 for c=1:model.getNumberOfClasses
36 for i=1:model.getNumberOfStations
37 AvgRespTfromCDF{ni}(i,c) = diff(RDfluid{i,c}(:,1))'*RDfluid{i,c}(2:end,2); %mean
38 PowerMoment2_R{ni}(i,c) = diff(RDfluid{i,c}(:,1))'*(RDfluid{i,c}(2:end,2).^2);
39 Variance_R{ni}(i,c) = PowerMoment2_R{ni}(i,c)-AvgRespTfromCDF{ni}(i,c)^2; %variance
40 SqCoeffOfVariationRespTfromCDF{ni}(i,c) = (Variance_R{ni}(i,c))/AvgRespTfromCDF{ni}(i,c)^2; %scv
41 end
42 end
43 for i=2
44 for c=1:model.getNumberOfClasses
45 semilogx(RDfluid{i,c}(:,2),RDfluid{i,c}(:,1),plotColors{find(N==nJobs)}); hold on;
46 end
47 end
48 AvgRespTfromCDF{ni}
49 SqCoeffOfVariationRespTfromCDF{ni}
50 label{end+1} = ['N=', num2str(N),' jobs'];
51end
52legend(label,'Location','SouthEast');
53xlim([0,200])
54title('Response time CDF at station 3 under increasing populations')
55ylabel('Pr[RespT < t]')
56xlabel('Response time t')