LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
lqn_twotasks.m
1clear solver AvgTable
2
3model = LayeredNetwork('myLayeredModel');
4
5% definition of processors, tasks and entries
6P1 = Processor(model, 'P1', 1, SchedStrategy.PS);
7T1 = Task(model, 'T1', 100, SchedStrategy.REF).on(P1);
8E1 = Entry(model, 'E1').on(T1);
9
10P2 = Processor(model, 'P2', 1, SchedStrategy.PS);
11T2 = Task(model, 'T2', 1, SchedStrategy.INF).on(P2);
12E2 = Entry(model, 'E2').on(T2);
13
14E3 = Entry(model, 'E3').on(T2);
15
16% definition of activities
17T1.setThinkTime(Erlang.fitMeanAndOrder(10,1));
18
19A1 = Activity(model, 'A1', Exp(1)).on(T1).boundTo(E1).synchCall(E2).synchCall(E3,1);
20
21A20 = Activity(model, 'A20', Exp(1)).on(T2).boundTo(E2);
22A21 = Activity(model, 'A21', Exp(1)).on(T2);
23A22 = Activity(model, 'A22', Exp(1)).on(T2).repliesTo(E2);
24T2.addPrecedence(ActivityPrecedence.Serial(A20, A21, A22));
25
26A3 = Activity(model, 'A3', Exp(1)).on(T2).boundTo(E3).repliesTo(E3);
27
28% instantiate solvers
29options = LQNS.defaultOptions;
30options.keep = true;
31options.verbose = 0;
32%options.method = 'exact';
33%options.method = 'lqsim';
34%options.samples = 1e4;
35solver{1} = LQNS(model, options);
36AvgTable{1} = solver{1}.getAvgTable; AvgTable{1}
37
38lnoptions = LN.defaultOptions;
39lnoptions.verbose = 0;
40solveroptions = Solver.defaultOptions;
41%options.method = 'comom';
42solveroptions.verbose = 0;
43solver{2} = LN(model, @(l)NC(l,solveroptions), lnoptions);
44AvgTable{2} = solver{2}.getAvgTable; AvgTable{2}