![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Classes | |
| struct | RenegingMetrics |
| The station metrics of the MAP/M/s+G queue. More... | |
Functions | |
| template<class T> | |
| bool | declares (const qn::NetworkStruct< T > &L, std::size_t ist, std::size_t r) |
| Does station ist (1-based) declare RENEGING for class r (1-based)? | |
| template<class T> | |
| const lang::Distrib< T > * | markovian_patience (const qn::NetworkStruct< T > &L, std::size_t ist, std::size_t r) |
| The patience law at (ist, r) when it is a usable (D0, D1) pair; null otherwise. | |
| template<class T> | |
| Matrix< double > | to_double (const Matrix< T > &A) |
| Matrix<T> to Matrix<double>. | |
| void | add_block (Matrix< double > &A, std::size_t r0, std::size_t c0, const Matrix< double > &B, double scale) |
| RenegingMetrics | solve (const Matrix< double > &C, const Matrix< double > &D, double mu, int s, const Matrix< double > &P0, const Matrix< double > &P1, std::size_t Qz) |
| solveReneging + convertPatienceToRegimes of solver_mam_retrial.m, as fixed in 2c0848d76f (stationary arrival rate, the regime grid, the QLen formula), in double. | |
|
inline |
Definition at line 111 of file solver_mam_reneging.h.
References add_block(), line::Matrix< T >::cols(), and line::Matrix< T >::rows().
Referenced by add_block(), and solve().
| bool line::mam::reneging_detail::declares | ( | const qn::NetworkStruct< T > & | L, |
| std::size_t | ist, | ||
| std::size_t | r ) |
Does station ist (1-based) declare RENEGING for class r (1-based)?
Definition at line 82 of file solver_mam_reneging.h.
References declares(), line::qn::Station< T >::impatience, line::lang::RENEGING, and line::qn::NetworkStruct< T >::stations.
Referenced by declares(), line::mam::mam_declares_reneging(), line::mam::mam_reneging_detect(), and markovian_patience().
| const lang::Distrib< T > * line::mam::reneging_detail::markovian_patience | ( | const qn::NetworkStruct< T > & | L, |
| std::size_t | ist, | ||
| std::size_t | r ) |
The patience law at (ist, r) when it is a usable (D0, D1) pair; null otherwise.
Definition at line 89 of file solver_mam_reneging.h.
References declares(), line::lang::DISABLED, line::lang::Distrib< T >::disabled, line::lang::Distrib< T >::has_map(), line::lang::IMMEDIATE, markovian_patience(), line::qn::Station< T >::patience, line::qn::NetworkStruct< T >::stations, and line::lang::Distrib< T >::type.
Referenced by line::mam::mam_has_reneging_patience(), line::mam::mam_reneging_detect(), markovian_patience(), and line::mam::solver_mam_reneging().
|
inline |
solveReneging + convertPatienceToRegimes of solver_mam_retrial.m, as fixed in 2c0848d76f (stationary arrival rate, the regime grid, the QLen formula), in double.
| C,D | the arrival MAP |
| mu | the exponential service rate |
| s | the server count |
| P0,P1 | the patience as a (D0, D1) pair |
| Qz | the regime count, at least 2 |
Definition at line 133 of file solver_mam_reneging.h.
References add_block(), line::mam::MultiRegimeResult::cdf, line::mam::MultiRegimeResult::cdfm, line::mam::Map< T >::D0, line::mam::Map< T >::D1, line::expm(), line::eye(), line::mam::map_cdf(), line::mam::map_lambda(), line::mam::map_mean(), line::mam::map_pie(), line::mam::mfq_multiregime(), line::mam::reneging_detail::RenegingMetrics::qlen, line::mam::reneging_detail::RenegingMetrics::respt, line::Matrix< T >::rows(), solve(), line::mam::reneging_detail::RenegingMetrics::tput, and line::mam::reneging_detail::RenegingMetrics::util.
Referenced by solve(), and line::mam::solver_mam_reneging().
Definition at line 104 of file solver_mam_reneging.h.
References line::Matrix< T >::cols(), line::Matrix< T >::rows(), and to_double().
Referenced by to_double().