![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Structural properties of a stochastic Petri net, from its incidence matrix C alone (Murata 1989, sec. More...
#include <cmath>#include <cstddef>#include <string>#include <vector>#include "line/api/spn/spn_net.h"#include "line/util/lp_highs.h"#include "line/util/simplex.h"Go to the source code of this file.
Classes | |
| struct | line::spn::SpnStructProps |
Namespaces | |
| namespace | line |
| Conservation laws of a layered queueing network, enumerated from its structure. | |
| namespace | line::spn |
Functions | |
| template<class T> | |
| SpnStructProps | line::spn::spn_structprops (const qn::NetworkStruct< T > &sn) |
Structural properties of a stochastic Petri net, from its incidence matrix C alone (Murata 1989, sec.
VI-B; Silva, Teruel and Colom 1998; Haverkort 1998, sec. 14.2). Each LP property is decided by one covering linear program over [z; t] with 0 <= t <= 1, t <= z, maximising sum(t): t_j = 1 exactly when some solution has z_j > 0, so the program both decides the property and names the levels or events that satisfy it. bounded: exists y > 0 with y' C <= 0 (structurally bounded) conservative: exists y > 0 with y' C = 0 consistent: exists x > 0 with C x = 0 repetitive: exists x > 0 with C x >= 0 The net classes (ordinary, state machine, marked graph, free choice, extended free choice, asymmetric choice) follow Murata's definitions on the arc supports. All of these ignore inhibitor arcs, priorities and the timed/immediate split; ignored lists those of the three the net uses. MATLAB twin: matlab/src/api/spn/spn_structprops.m.
Definition in file spn_structprops.h.