![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Expected maximum and characteristic maximum of K i.i.d. More...
Go to the source code of this file.
Namespaces | |
| namespace | line |
| namespace | line::fj |
Functions | |
| template<class T> | |
| FJXmaxParetoResult< T > | line::fj::fj_xmax_pareto (unsigned K, const T &beta, const T &k) |
| Expected maximum and characteristic maximum of K i.i.d. | |
| template<class T> | |
| FJXmaxParetoResult< T > | line::fj::fj_xmax_pareto (unsigned K, const T &beta) |
| MATLAB's default scale k = beta - 1, which normalizes the branch mean to 1. | |
Expected maximum and characteristic maximum of K i.i.d.
shifted-Pareto samples with survival S(x) = (k/(k+x))^beta.
Templated port of matlab/src/api/fj/fj_xmax_pareto.m, cross-checked against FJ_xmax.fj_xmax_pareto and fj_xmax_pareto_char_max in jar/src/main/java/jline/api/fj/FJ_xmax.java (identical formulas; the JAR replaces MATLAB's adaptive integral with a 10001-point composite Simpson rule on the same truncated range, which this port also does).
Xmax = int_0^inf [1 - F(x)^K] dx, truncated at k K^{2/beta} * 10 m_K = k (K^{1/beta} - 1) M_K = m_K + K k^beta (k + m_K)^{1-beta} / (beta - 1)
static_assert(num_traits<T>::has_transcendental) – real powers throughout plus the quadrature. Worth flagging: the truncation point is a heuristic and the Pareto tail is heavy, so Xmax is systematically underestimated; the shortfall grows as beta approaches 2 and the function rejects beta <= 2 outright because the mean of the maximum is then the only finite moment left. M_K, by contrast, is a closed form and is exact.
Definition in file fj_xmax_pareto.h.