5fprintf(1,
'<strong>This script runs all LINE examples.</strong>\n');
6fprintf(1,
'The current workspace will be cleared and figures will be closed. \n');
7fprintf(1,
'Please press a key to continue or CTRL-C to terminate.\n');
12%% LINE examples - Basic
13fprintf(1,
'\n<strong>RUNNING: basic/cacheModel examples</strong>');
14fprintf(1,
'\n\nExample: <strong>cache_replc_rr</strong>\n');
15fprintf(
'This example shows a small cache model with an open arrival process.\n')
16clear; cache_replc_rr; fprintf(1,'Pausing...'); pause(3.0);
17fprintf(1,'\n\nExample: <strong>cache_replc_fifo</strong>\n');
18fprintf('This example shows a small cache model with a closed arrival process.\n')
19clear; cache_replc_fifo; fprintf(1,'Pausing...'); pause(3.0);
20fprintf(1,'\n\nExample: <strong>lcq_singlehost</strong>\n');
21fprintf('This example shows a small cache model within a layered queueing network.\n')
22clear; lcq_singlehost; fprintf(1,'Pausing...'); pause(3.0);
25fprintf(1,'\n<strong>RUNNING: basic/closedQN examples</strong>');
26fprintf(1,'\n\nExample: <strong>cqn_repairmen</strong>\n');
27fprintf(1,'This example shows all
solvers on a basic single-class closed model.\n')
28clear; cqn_repairmen; fprintf(1,'Pausing...'); pause(3.0);
29fprintf(1,'\n\nExample: <strong>cqn_twoclass_hyperl</strong>\n');
30fprintf('This example shows a model with a multiclass FCFS station.\n')
31clear; cqn_twoclass_hyperl; fprintf(1,'Pausing...'); pause(3.0);
32fprintf(1,'\n\nExample: <strong>cqn_threeclass_hyperl</strong>\n');
33fprintf('This example shows
the exact solution of a product-form queueing network.\n')
34fprintf(1,'In this example we also calculate performance indexes by chain.\n')
35clear; cqn_threeclass_hyperl; fprintf(1,'Pausing...'); pause(3.0);
36fprintf(1,'\n\nExample: <strong>cqn_multiserver</strong>\n');
37fprintf(1,'This example shows state space generation for a station.')
38clear; cqn_multiserver; fprintf(1,'Pausing...'); pause(3.0);
39fprintf(1,'\n\nExample: <strong>cqn_oneline</strong>\n');
40fprintf(1,'This example shows a 1-line solution of a cyclic queueing network.\n');
41clear; cqn_oneline; fprintf(1,'Pausing...'); pause(3.0);
42fprintf(1,'\n\nExample: <strong>cqn_twoclass_erl</strong>\n');
43fprintf(1,'This example shows a model with round-robin scheduling.\n');
44clear; cqn_twoclass_erl; fprintf(1,'Pausing...'); pause(3.0);
45fprintf(1,'\n\nExample: <strong>cqn_bcmp_theorem</strong>\n');
46fprintf(1,'This example shows equivalnce of models due to product-form solution (BCMP theorem).\n');
47clear; cqn_bcmp_theorem; fprintf(1,'Pausing...'); pause(3.0);
48fprintf(1,'\n\nExample: <strong>cqn_repairmen_multi</strong>\n');
49fprintf(1,'This example shows a multiclass variant of
the repairmen model.\n');
50clear; cqn_repairmen_multi; fprintf(1,'Pausing...'); pause(3.0);
51fprintf(1,'\n\nExample: <strong>cqn_twoqueues_multi</strong>\n');
52fprintf(1,'This example shows a multiclass closed queueing network with two queues.\n');
53clear; cqn_twoqueues_multi; fprintf(1,'Pausing...'); pause(3.0);
56fprintf(1,'\n<strong>RUNNING: basic/openQN examples</strong>');
57fprintf(1,'\n\nExample: <strong>oqn_basic</strong>\n');
58clear; oqn_basic; fprintf(1,'Pausing...'); pause(3.0);
59fprintf(1,'\n\nExample: <strong>oqn_oneline</strong>\n');
60clear; oqn_oneline; fprintf(1,'Pausing...'); pause(3.0);
61fprintf(1,'\n\nExample: <strong>oqn_cs_routing</strong>\n');
62clear; oqn_cs_routing; fprintf(1,'Pausing...'); pause(3.0);
63fprintf(1,'\n\nExample: <strong>oqn_trace_driven</strong>\n');
64clear; oqn_trace_driven; fprintf(1,'Pausing...'); pause(3.0);
65fprintf(1,'\n\nExample: <strong>oqn_vsinks</strong>\n');
66fprintf(1,' This model examplifies how to specify models with multiple sinks (virtual sinks).\n');
67clear; oqn_vsinks; fprintf(1,'Pausing...'); pause(3.0);
68fprintf(1,'\n\nExample: <strong>oqn_fourqueues</strong>\n');
69fprintf(1,' This model examplifies a large multiclass open model.\n');
70clear; oqn_fourqueues; fprintf(1,'Pausing...'); pause(3.0);
73fprintf(1,'\n<strong>RUNNING: basic/mixedQN examples</strong>');
74fprintf(1,'\n\nExample: <strong>mqn_basic</strong>\n');
75clear; mqn_basic; fprintf(1,'Pausing...'); pause(3.0);
76fprintf(1,'\n\nExample: <strong>mqn_multiserver_ps</strong>\n');
77clear; mqn_multiserver_ps; fprintf(1,'Pausing...'); pause(3.0);
78fprintf(1,'\n\nExample: <strong>mqn_multiserver_fcfs</strong>\n');
79clear; mqn_multiserver_fcfs; fprintf(1,'Pausing...'); pause(3.0);
80fprintf(1,'\n\nExample: <strong>mqn_singleserver_fcfs</strong>\n');
81clear; mqn_singleserver_fcfs; fprintf(1,'Pausing...'); pause(3.0);
82fprintf(1,'\n\nExample: <strong>mqn_singleserver_ps</strong>\n');
83clear; mqn_singleserver_ps; fprintf(1,'Pausing...'); pause(3.0);
86try % LQNS must be available on
the system path
87fprintf(1,'\n<strong>RUNNING: basic/layeredModel examples</strong>');
88fprintf(1,'\n\nExample: <strong>lqn_serial</strong>\n');
89 clear; lqn_serial; fprintf(1,'Pausing...'); pause(3.0);
90fprintf(1,'\n\nExample: <strong>lqn_multi_solvers</strong>\n');
91 clear; lqn_multi_solvers; fprintf(1,'Pausing...'); pause(3.0);
93 warning('LQNS
is not available on this computer. Skipping LQN tests.');
97fprintf(1,'\n<strong>RUNNING: basic/prioModel examples</strong>');
98fprintf(1,' This model examplifies how to specify priorities.\n');
99clear; prio_hol_open; fprintf(1,'Pausing...'); pause(3.0);
100fprintf(1,' Another model that examplifies how to specify priorities.\n');
101clear; prio_hol_closed; fprintf(1,'Pausing...'); pause(3.0);
102fprintf(1,'\n\nExample: <strong>prio_identical</strong>\n');
103fprintf(1,' This model examplifies identical priority classes.\n');
104clear; prio_identical; fprintf(1,'Pausing...'); pause(3.0);
107fprintf(1,'\n<strong>RUNNING: basic/forkJoin examples</strong>');
108fprintf(1,'\n\nExample: <strong>fj_basic_open</strong>\n');
109fprintf(1,'This example shows
the simulation of a fork-join open queueing network.\n');
110clear; fj_basic_open; fprintf(1,'Pausing...'); pause(3.0);
111fprintf(1,'\n\nExample: <strong>fj_twoclasses_forked</strong>\n');
112fprintf(1,'This example shows
the simulation of a multiclass fork-join open queueing network.\n');
113clear; fj_twoclasses_forked; fprintf(1,'Pausing...'); pause(3.0);
114fprintf(1,'\n\nExample: <strong>fj_basic_nesting</strong>\n');
115fprintf(1,'This example shows
the simulation of nested forks and joins.\n');
116clear; fj_basic_nesting; fprintf(1,'Pausing...'); pause(3.0);
117fprintf(1,'\n\nExample: <strong>fj_nojoin</strong>\n');
118fprintf(1,'This example shows a model with a fork but without a join.\n');
119clear; fj_nojoin; fprintf(1,'Pausing...'); pause(3.0);
123fprintf(1,'\n<strong>RUNNING: advanced/loadDependent examples</strong>');
124fprintf(1,'\n\nExample: <strong>ld_multiserver_fcfs</strong>\n');
125fprintf(1,'This example shows all
solvers on a basic single-class closed model.\n')
126clear; ld_multiserver_fcfs; fprintf(1,'Pausing...'); pause(3.0);
127fprintf(1,'\n\nExample: <strong>ld_fes_singleclass</strong>\n');
128fprintf(1,'This example shows single-class FES aggregation with Norton''s theorem.\n')
129clear; ld_fes_singleclass; fprintf(1,'Pausing...'); pause(3.0);
130fprintf(1,'\n\nExample: <strong>ld_fes_multiclass</strong>\n');
131fprintf(1,'This example shows multiclass FES aggregation with Norton''s theorem.\n')
132clear; ld_fes_multiclass; fprintf(1,'Pausing...'); pause(3.0);
135fprintf(1,'\n<strong>RUNNING: advanced/initState examples</strong>');
136fprintf(1,'\n\nExample: <strong>init_state_fcfs_exp</strong>\n');
137fprintf(1,'This example shows
the execution of
the transient solver on a 2-class 2-node class-switching model.')
138clear; init_state_fcfs_exp; fprintf(1,'Pausing...'); pause(3.0); try close(handleFig); end
139fprintf(1,'\n\nExample: <strong>init_state_fcfs_nonexp</strong>\n');
140fprintf(1,'This example shows
the execution of
the transient solver on a 2-class 2-node class-switching model.')
141clear; init_state_fcfs_nonexp; fprintf(1,'Pausing...'); pause(3.0); try close(handleFig); end
142fprintf(1,'\n\nExample: <strong>init_state_ps</strong>\n');
143fprintf(1,'This example shows
the execution with PS scheduling.')
144clear; init_state_ps; fprintf(1,'Pausing...'); pause(3.0); try close(handleFig); end
147fprintf(1,'\n<strong>RUNNING: advanced/stateDepRouting examples</strong>');
148fprintf(1,'This example analyzes round-robin scheduling.\n');
149fprintf(1,'\n\nExample: <strong>sdroute_closed</strong>\n');
150clear; sdroute_closed; fprintf(1,'Pausing...'); pause(3.0);
151fprintf(1,'\n\nExample: <strong>sdroute_open</strong>\n');
152fprintf(1,'This example shows state-dependent routing in an open model.\n');
153clear; sdroute_open; fprintf(1,'Pausing...'); pause(3.0);
156fprintf(1,'\n<strong>RUNNING: advanced/stateProbabilities examples</strong>');
157fprintf(1,'\n\nExample: <strong>statepr_aggr</strong>\n');
158clear; statepr_aggr; fprintf(1,'Pausing...'); pause(3.0);
159fprintf(1,'\n\nExample: <strong>statepr_aggr_large</strong>\n');
160clear; statepr_aggr_large; fprintf(1,'Pausing...'); pause(3.0);
161fprintf(1,'\n\nExample: <strong>statepr_sys_aggr</strong>\n');
162clear; statepr_sys_aggr; fprintf(1,'Pausing...'); pause(3.0);
163fprintf(1,'\n\nExample: <strong>statepr_sys_aggr_large</strong>\n');
164clear; statepr_sys_aggr_large; fprintf(1,'Pausing...'); pause(3.0);
165fprintf(1,'\n\nExample: <strong>statepr_allprobs_ps</strong>\n');
166clear; statepr_allprobs_ps; fprintf(1,'Pausing...'); pause(3.0);
167fprintf(1,'\n\nExample: <strong>statepr_allprobs_fcfs</strong>\n');
168clear; statepr_allprobs_fcfs; fprintf(1,'Pausing...'); pause(3.0);
171fprintf(1,'\n<strong>RUNNING: advanced/cdfRespT examples</strong>');
172fprintf(1,'\n\nExample: <strong>cdf_respt_closed</strong>\n');
173clear; cdf_respt_closed; fprintf(1,'Pausing...'); pause(3.0); try close(handleFig); end
174fprintf(1,'\n\nExample: <strong>cdf_respt_closed_threeclasses</strong>\n');
175clear; cdf_respt_closed_threeclasses; fprintf(1,'Pausing...'); pause(3.0); try close(handleFig); end
176fprintf(1,'\n\nExample: <strong>cdf_respt_open_twoclasses</strong>\n');
177clear; cdf_respt_open_twoclasses; fprintf(1,'Pausing...'); pause(3.0); try close(handleFig); end
178fprintf(1,'\n\nExample: <strong>cdf_respt_distrib</strong>\n');
179clear; cdf_respt_distrib; fprintf(1,'Pausing...'); pause(3.0); try close(handleFig); end
180fprintf(1,'\n\nExample: <strong>cdf_respt_populations</strong>\n');
181clear; cdf_respt_populations; fprintf(1,'Pausing...'); pause(3.0); try close(handleFig); end
184fprintf(1,'\n<strong>RUNNING: advanced/randomEnv examples</strong>');
185fprintf(1,'\n\nExample: <strong>renv_twostages_repairmen</strong>\n');
186clear; renv_twostages_repairmen; fprintf(1,'Pausing...'); pause(3.0);
187fprintf(1,'\n\nExample: <strong>renv_fourstages_repairmen</strong>\n');
188clear; renv_fourstages_repairmen; fprintf(1,'Pausing...'); pause(3.0);
189fprintf(1,'\n\nExample: <strong>renv_threestages_repairmen</strong>\n');
190clear; renv_threestages_repairmen; fprintf(1,'Pausing...'); pause(3.0);
193fprintf(1,'\n<strong>RUNNING: advanced/misc examples</strong>');
194fprintf(1,'\n\nExample: <strong>cqn_scheduling_dps</strong>\n');
195fprintf(1,'This example illustrates
the solution of DPS models.\n')
196clear; cqn_scheduling_dps; fprintf(1,'Pausing...'); pause(3.0);
197fprintf(1,'\n\nExample: <strong>cqn_mmpp2_service</strong>\n');
198fprintf(1,'This example shows that LINE automatically checks if a solver
is feasible for a given model.\n');
199fprintf(1,'If not, an empty result set
is returned.\n');
200clear; cqn_mmpp2_service; fprintf(1,'Pausing...'); pause(3.0);
203%fprintf(1,'\n<strong>RUNNING: example_svcEstimation_*</strong>');
204%fprintf(1,'\n\nExample: <strong>example_svcEstimation_1</strong>\n');
205%fprintf('This example shows service demand estimation in a single class model using
the utilization-based regression (UBR) method.\n')
206%clear; example_svcEstimation_1; fprintf(1,'Pausing...'); pause(3.0);
207%fprintf('This example shows service demand estimation in a multiclass model using
the ERPS method.\n')
208%clear; example_svcEstimation_2; fprintf(1,'Pausing...'); pause(3.0);
209%fprintf('This example shows service demand estimation in a multiclass model using
the utilization-based regression (UBR) method.\n')
210%clear; example_svcEstimation_3; fprintf(1,'Pausing...'); pause(3.0);
211%fprintf('This example shows service demand estimation in a multiclass model using
the utilization-based optimization (UBO) method.\n')
212%clear; example_svcEstimation_4; fprintf(1,'Pausing...'); pause(3.0);
215fprintf(1,'\nExamples completed.\n')