![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Convolution algorithm for the two-station multiclass LCFS queueing network of Casale, "A family of multiclass LCFS queueing networks with order-dependent product-form solutions", QUESTA 2026. More...
#include <cstddef>#include <vector>#include "line/num/number.h"#include "line/util/error.h"#include "line/util/matrix.h"#include "line/util/population.h"Go to the source code of this file.
Classes | |
| struct | line::pfqn::LcfsQnResult< T > |
Namespaces | |
| namespace | line |
| namespace | line::pfqn |
Functions | |
| template<class T> | |
| LcfsQnResult< T > | line::pfqn::pfqn_lcfsqn_ca (const std::vector< T > &alpha, const std::vector< T > &beta, const std::vector< int > &N) |
| Convolution algorithm for the two-station multiclass LCFS queueing network of Casale, "A family of multiclass LCFS queueing networks
with order-dependent product-form solutions", QUESTA 2026. | |
Convolution algorithm for the two-station multiclass LCFS queueing network of Casale, "A family of multiclass LCFS queueing networks with order-dependent product-form solutions", QUESTA 2026.
Templated port of matlab/src/api/pfqn/pfqn_lcfsqn_ca.m.
Station 1 is LCFS (non-preemptive) and station 2 is LCFS-PR (preemptive-resume); alpha_r and beta_r are the class-r mean service times at the two stations. The network is NOT product form in the classical sense – the balance function depends on the ORDER of the jobs in the LCFS queue, not only on their counts – so the constant obeys a coupled pair of recursions over the population lattice rather than a single Buzen update:
V(0) = 1, V(n) = prod_r alpha_r^{n_r} * sum_{r: n_r > 0} V(n - e_r) G(0) = 1, G(n) = sum_{r: n_r > 0} alpha_r^{|n|-1} beta_r G(n - e_r) + V(n)
V is the order-dependent auxiliary term contributed by the non-preemptive station; it is returned alongside G because the mean-value routine pfqn_lcfsqn_mva needs it.
Arithmetic: EXACT-CAPABLE. Only integer powers, additions and multiplications in the field of the inputs.
Definition in file pfqn_lcfsqn_ca.h.