![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Harrison-Zertal approximation of the maximum of general variables. More...
#include <cstddef>#include <functional>#include <vector>#include "line/api/fj/fj_types.h"#include "line/num/number.h"#include "line/util/error.h"Go to the source code of this file.
Namespaces | |
| namespace | line |
| namespace | line::fj |
Functions | |
| template<class T> | |
| T | line::fj::fj_xmax_hz_het (const std::vector< T > &m1, const std::vector< T > &m2, const std::vector< std::function< T(const T &)> > &cdf, const T &tol=num_traits< T >::from_double(1e-10), unsigned npanels=2000) |
| Harrison-Zertal approximation of the maximum of general variables. | |
Harrison-Zertal approximation of the maximum of general variables.
Templated port of matlab/src/api/fj/fj_xmax_hz_het.m.
I(S) = (1/|S|) sum_{i in S} [ I(S \ i) + (m2_i/(2 m1_i)) L*_{S\i}(alpha_i) ]
anchored at I({i}) = m1_i, with alpha_i = 1/m1_i. The transform of the maximum over a sub-collection is recovered from the distribution functions,
L*_T(s) = s integral_0^inf exp(-s t) prod_{j in T} F_j(t) dt,
by composite Simpson quadrature on a horizon widened until the product of the distribution functions is within TOL of one. For identical branches the recurrence collapses onto fj_xmax_hz, and for identical exponential branches it is exact at H_K/lambda.
Definition in file fj_xmax_hz_het.h.