LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
fj_quantile.h File Reference

Quantile of the maximum of K i.i.d. More...

#include <functional>
#include "line/api/fj/fj_types.h"
#include "line/num/number.h"
#include "line/util/error.h"
Include dependency graph for fj_quantile.h:

Go to the source code of this file.

Namespaces

namespace  line
namespace  line::fj

Functions

template<class T>
line::fj::fj_quantile (unsigned K, const T &q)
 Gumbel approximation.
template<class T>
line::fj::fj_quantile (unsigned K, const T &q, const std::function< T(const T &)> &Finv)
 Exact quantile through the supplied inverse CDF.

Detailed Description

Quantile of the maximum of K i.i.d.

samples.

Templated port of matlab/src/api/fj/fj_quantile.m, cross-checked against jar/src/main/java/jline/api/fj/FJ_quantile.java (identical).

Gumbel approximation: x(K,q) = ln K - ln ln(1/q) exact, given F^-1: x(K,q) = F^{-1}(q^{1/K})

static_assert(num_traits<T>::has_transcendental) – a log in the first form and a real root in the second. The Gumbel form is documented as inaccurate at small K and is not a bound in either direction, so it should not be used to certify a service-level target.

Definition in file fj_quantile.h.