3%
this is a difficult sparse LDMX model
4model = Network(
'model');
7node{1} = Queue(model,
'Queue1', SchedStrategy.FCFS);
8node{2} = Queue(model,
'Queue2', SchedStrategy.FCFS);
9node{3} = Queue(model,
'Queue3', SchedStrategy.FCFS);
10node{4} = Queue(model,
'Queue4', SchedStrategy.FCFS); % only closed
classes
11source = Source(model,
'Source');
12sink = Sink(model,
'Sink');
14jobclass{1} = ClosedClass(model,
'ClosedClass', 100, node{1}, 0);
15jobclass{2} = OpenClass(model,
'OpenClass', 0);
18 node{i}.setService(
jobclass{1}, Exp(i));
19 node{i}.setService(
jobclass{2}, Exp(sqrt(i)));
22source.setArrival(
jobclass{2}, APH.fitMeanAndSCV(3,64));
24M = model.getNumberOfStations();
25K = model.getNumberOfClasses();
27P = model.initRoutingMatrix;
29P{1,1} = Network.serialRouting(node{1},node{2},node{3},node{4});
32P{2,2} = Network.serialRouting(source,node{1},node{2},node{3},sink);
36options = Solver.defaultOptions;
42optionssa = options; optionssa.cutoff = Inf;
44disp(
'This example shows the execution of the solver on a 2-class mixed model with 4 single server nodes.')
45% This part illustrates the execution of different solvers
47%solver{end+1} = CTMC(model,options); % CTMC
is infinite on
this model
48solver{end+1} = JMT(model,options);
49solver{end+1} = FLD(model,options);
50solver{end+1} = MVA(model,
'lin');
51solver{end+1} = NC(model,options);
52solver{end+1} = DES(model,options);
53%solver{end+1} = MAM(model,options);
55 fprintf(1,
'SOLVER: %s\n',solver{s}.getName());
56 AvgTable{s} = solver{s}.getAvgTable();