![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Classes | |
| struct | Bernoulli1Result |
| Steady-state quantities of a finite-buffer Bernoulli server. More... | |
| struct | GeoGeo1Result |
| struct | GeoXGeo1Result |
Enumerations | |
| enum class | GeoConvention { LAS_DA , EAS } |
Functions | |
| template<class T> | |
| Bernoulli1Result< T > | dqsys_bernoulli1 (const std::vector< T > &b, const std::vector< T > &p, std::size_t L) |
| Finite buffer of L jobs. | |
| template<class T> | |
| T | dqsys_geogeo1_pmf (const GeoGeo1Result< T > &r, int n) |
| Stationary queue-length pmf under the convention of the result. | |
| template<class T> | |
| GeoGeo1Result< T > | dqsys_geogeo1 (const T &a, const T &s, GeoConvention convention=GeoConvention::LAS_DA) |
| Geo/Geo/1: the discrete-time single-server queue with geometric interarrival and service times. | |
| template<class T> | |
| GeoXGeo1Result< T > | dqsys_geoxgeo1_moments (const T &a, const T &batchMean, const T &batchSecondFactorial, const T &s, GeoConvention convention=GeoConvention::LAS_DA) |
| Geo^X/Geo/1 for an arbitrary batch law given by its first two factorial moments. | |
| template<class T> | |
| GeoXGeo1Result< T > | dqsys_geoxgeo1 (const T &a, const T &beta, const T &s, GeoConvention convention=GeoConvention::LAS_DA) |
| Geo^X/Geo/1: the discrete-time single-server queue with batch arrivals. | |
| template<class T> | |
| T | dqsys_geoxgeo1_pgf (const GeoXGeo1Result< T > &r, const T &z, const T &Az) |
| Probability generating function of the stationary queue length. | |
|
strong |
| Enumerator | |
|---|---|
| LAS_DA | |
| EAS | |
Definition at line 45 of file dqsys_geogeo1.h.
| Bernoulli1Result< T > line::dqsys::dqsys_bernoulli1 | ( | const std::vector< T > & | b, |
| const std::vector< T > & | p, | ||
| std::size_t | L ) |
Finite buffer of L jobs.
An arrival in a slot that finds L jobs present is lost, which is the loss system of corollary 2.8.
| b | offered arrival probabilities b(n) for n = 0..L, or one entry for a state independent stream |
| p | service probabilities p(n) for n = 1..L, or one entry for a state independent server |
| L | buffer capacity in jobs |
Definition at line 78 of file dqsys_bernoulli1.h.
References line::dqsys::Bernoulli1Result< T >::arrivalPmf, line::dqsys::Bernoulli1Result< T >::arrivalProb, line::dqsys::Bernoulli1Result< T >::capacity, dqsys_bernoulli1(), line::dqsys::Bernoulli1Result< T >::emptyProb, line::InputError::InputError(), line::dqsys::Bernoulli1Result< T >::lossProb, line::dqsys::Bernoulli1Result< T >::meanQueueLength, line::dqsys::Bernoulli1Result< T >::meanSojournTime, line::dqsys::Bernoulli1Result< T >::meanWaitingQueue, line::dqsys::Bernoulli1Result< T >::meanWaitingTime, line::dqsys::Bernoulli1Result< T >::normConst, line::dqsys::Bernoulli1Result< T >::pmf, line::dqsys::Bernoulli1Result< T >::serviceProb, line::dqsys::Bernoulli1Result< T >::throughput, and line::dqsys::Bernoulli1Result< T >::utilization.
Referenced by dqsys_bernoulli1(), and line::nc::solver_nc_dt().
| GeoGeo1Result< T > line::dqsys::dqsys_geogeo1 | ( | const T & | a, |
| const T & | s, | ||
| GeoConvention | convention = GeoConvention::LAS_DA ) |
Geo/Geo/1: the discrete-time single-server queue with geometric interarrival and service times.
| a | arrival probability per slot, in (0,1] |
| s | service completion probability per slot, in (0,1] |
| convention | slot-boundary convention (late arrival, early arrival) |
Definition at line 84 of file dqsys_geogeo1.h.
References line::dqsys::GeoGeo1Result< T >::arrivalProb, line::dqsys::GeoGeo1Result< T >::convention, dqsys_geogeo1(), line::dqsys::GeoGeo1Result< T >::emptyProb, line::InputError::InputError(), LAS_DA, line::dqsys::GeoGeo1Result< T >::meanQueueLength, line::dqsys::GeoGeo1Result< T >::meanServiceTime, line::dqsys::GeoGeo1Result< T >::meanSojournTime, line::dqsys::GeoGeo1Result< T >::meanWaitingQueue, line::dqsys::GeoGeo1Result< T >::meanWaitingTime, line::dqsys::GeoGeo1Result< T >::ratio, line::dqsys::GeoGeo1Result< T >::serviceProb, line::dqsys::GeoGeo1Result< T >::throughput, and line::dqsys::GeoGeo1Result< T >::utilization.
Referenced by dqsys_geogeo1().
| T line::dqsys::dqsys_geogeo1_pmf | ( | const GeoGeo1Result< T > & | r, |
| int | n ) |
Stationary queue-length pmf under the convention of the result.
Definition at line 65 of file dqsys_geogeo1.h.
References line::dqsys::GeoGeo1Result< T >::arrivalProb, line::dqsys::GeoGeo1Result< T >::convention, dqsys_geogeo1_pmf(), EAS, line::dqsys::GeoGeo1Result< T >::emptyProb, line::InputError::InputError(), line::num_pow_int(), line::dqsys::GeoGeo1Result< T >::ratio, and line::dqsys::GeoGeo1Result< T >::utilization.
Referenced by dqsys_geogeo1_pmf().
| GeoXGeo1Result< T > line::dqsys::dqsys_geoxgeo1 | ( | const T & | a, |
| const T & | beta, | ||
| const T & | s, | ||
| GeoConvention | convention = GeoConvention::LAS_DA ) |
Geo^X/Geo/1: the discrete-time single-server queue with batch arrivals.
| a | per-slot probability that a batch arrives, in (0,1] |
| beta | geometric batch-size parameter, in (0,1]; E[X] = 1/beta |
| s | per-slot service completion probability, in (0,1] |
| convention | slot-boundary convention (late arrival, early arrival) |
Definition at line 148 of file dqsys_geoxgeo1.h.
References dqsys_geoxgeo1(), dqsys_geoxgeo1_moments(), line::InputError::InputError(), and LAS_DA.
Referenced by dqsys_geoxgeo1().
| GeoXGeo1Result< T > line::dqsys::dqsys_geoxgeo1_moments | ( | const T & | a, |
| const T & | batchMean, | ||
| const T & | batchSecondFactorial, | ||
| const T & | s, | ||
| GeoConvention | convention = GeoConvention::LAS_DA ) |
Geo^X/Geo/1 for an arbitrary batch law given by its first two factorial moments.
This is MATLAB's local dqsys_geoxgeo1_moments, exposed here because a C++ caller has no other way to reach it.
Definition at line 74 of file dqsys_geoxgeo1.h.
References line::dqsys::GeoXGeo1Result< T >::arrivalRate, line::dqsys::GeoXGeo1Result< T >::batchArrivalProb, line::dqsys::GeoXGeo1Result< T >::batchMean, line::dqsys::GeoXGeo1Result< T >::batchSecondFactorialMoment, line::dqsys::GeoXGeo1Result< T >::boundaryEmptyProb, line::dqsys::GeoXGeo1Result< T >::convention, dqsys_geoxgeo1_moments(), line::InputError::InputError(), LAS_DA, line::dqsys::GeoXGeo1Result< T >::meanQueueLength, line::dqsys::GeoXGeo1Result< T >::meanServiceTime, line::dqsys::GeoXGeo1Result< T >::meanSojournTime, line::dqsys::GeoXGeo1Result< T >::meanWaitingQueue, line::dqsys::GeoXGeo1Result< T >::meanWaitingTime, line::dqsys::GeoXGeo1Result< T >::serviceProb, line::dqsys::GeoXGeo1Result< T >::throughput, and line::dqsys::GeoXGeo1Result< T >::utilization.
Referenced by dqsys_geoxgeo1(), and dqsys_geoxgeo1_moments().
| T line::dqsys::dqsys_geoxgeo1_pgf | ( | const GeoXGeo1Result< T > & | r, |
| const T & | z, | ||
| const T & | Az ) |
Probability generating function of the stationary queue length.
| r | a result of dqsys_geoxgeo1 |
| z | argument in (0,1] |
| Az | the value A(z) of the slot-arrival pgf at the same z |
No pmf is offered: for a general batch law the stationary distribution has no elementary closed form, so only the generating function is exact.
Definition at line 170 of file dqsys_geoxgeo1.h.
References line::dqsys::GeoXGeo1Result< T >::boundaryEmptyProb, line::dqsys::GeoXGeo1Result< T >::convention, dqsys_geoxgeo1_pgf(), line::InputError::InputError(), LAS_DA, line::NumericError::NumericError(), and line::dqsys::GeoXGeo1Result< T >::serviceProb.
Referenced by dqsys_geoxgeo1_pgf().