LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
qsys_gig1_lbnd.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2012-2026, QORE Lab, Imperial College London
3 * All rights reserved.
4 */
5#ifndef LINE_API_QSYS_GIG1_LBND_H
6#define LINE_API_QSYS_GIG1_LBND_H
7
8/**
9 * @file
10 * @ingroup api_qsys
11 * Fundamental lower bound on the mean response time of a G/G/1 queue.
12 *
13 * Templated port of matlab/src/api/qsys/qsys_gig1_lbnd.m.
14 *
15 * W = 1/mu (the response time is at least the mean service time)
16 *
17 * DIVERGENCE: jar/src/main/java/jline/api/qsys/Qsys_gig1_lbnd.java returns a
18 * map {L=rho, Lq=0, W=1/mu, Wq=0, p0=1-rho} and no rhohat, while MATLAB
19 * returns [W,rhohat]. The value of W agrees; the port follows the MATLAB
20 * signature. Neither implementation reads ca or cs, which are accepted only
21 * for signature uniformity with the rest of the G/I/G/1 family.
22 *
23 * Pure field arithmetic, exact for T = Rational.
24 */
25
27#include "line/num/number.h"
28
29namespace line {
30namespace qsys {
31
32/**
33 * @brief Fundamental lower bound on the mean response time of a G/G/1 queue.
34 *
35 * @param lambda arrival rate
36 * @param mu service rate
37 * @param ca coefficient of variation of the interarrival time, unused
38 * @param cs coefficient of variation of the service time, unused
39 */
40template <class T>
41QsysResult<T> qsys_gig1_lbnd(const T& lambda, const T& mu, const T& ca, const T& cs) {
42 (void)ca;
43 (void)cs;
44 const T W = num_traits<T>::from_int(1) / mu;
45 return {W, detail::rhohat_from_W(W, lambda)};
46}
47
48} // namespace qsys
49} // namespace line
50
51#endif // LINE_API_QSYS_GIG1_LBND_H
QsysResult< T > qsys_gig1_lbnd(const T &lambda, const T &mu, const T &ca, const T &cs)
Fundamental lower bound on the mean response time of a G/G/1 queue.
Number-type abstraction for the templated API port.
Shared return type and arithmetic helpers for the templated qsys port.
Return value of the qsys family, mirroring MATLAB's [W,rhohat] and the JAR's Ret.qsys.
Definition qsys_types.h:37