LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
line::mam::reneging_detail Namespace Reference

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.

Function Documentation

◆ add_block()

void line::mam::reneging_detail::add_block ( Matrix< double > & A,
std::size_t r0,
std::size_t c0,
const Matrix< double > & B,
double scale )
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().

◆ declares()

template<class T>
bool line::mam::reneging_detail::declares ( const qn::NetworkStruct< T > & L,
std::size_t ist,
std::size_t r )

◆ markovian_patience()

template<class T>
const lang::Distrib< T > * line::mam::reneging_detail::markovian_patience ( const qn::NetworkStruct< T > & L,
std::size_t ist,
std::size_t r )

◆ solve()

RenegingMetrics line::mam::reneging_detail::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 )
inline

solveReneging + convertPatienceToRegimes of solver_mam_retrial.m, as fixed in 2c0848d76f (stationary arrival rate, the regime grid, the QLen formula), in double.

Parameters
C,Dthe arrival MAP
muthe exponential service rate
sthe server count
P0,P1the patience as a (D0, D1) pair
Qzthe 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().

◆ to_double()

template<class T>
Matrix< double > line::mam::reneging_detail::to_double ( const Matrix< T > & A)