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

Nearest APH(2)-feasible values of the second and third moments (matlab/lib/m3a/m3a/aph2/aph2_adjust.m, method 'simple'). More...

Include dependency graph for aph2_adjust.h:

Go to the source code of this file.

Classes

struct  line::mam::Aph2AdjustResult< T >
 Result of aph2_adjust. More...

Namespaces

namespace  line
namespace  line::mam

Functions

template<class T>
Aph2AdjustResult< T > line::mam::aph2_adjust (const T &M1, const T &M2, const T &M3, const T &tol)
 Feasible (M2, M3) closest to the input, holding M1 fixed.
template<class T>
Aph2AdjustResult< T > line::mam::aph2_adjust (const T &M1, const T &M2, const T &M3)
 aph2_adjust with the MATLAB default slack tol = 1e-4.

Detailed Description

Nearest APH(2)-feasible values of the second and third moments (matlab/lib/m3a/m3a/aph2/aph2_adjust.m, method 'simple').

Applies the closed-form bounds of Telek and Heindl (2002): the SCV is lifted to 1/2 when it falls below it, and the third moment is clamped into [lb, ub] for SCV <= 1 and above lb (times 1 + tol) for SCV > 1.

Only the 'simple' method is ported. The other four methods of the reference ('opt_param', 'opt_param_gads', 'opt_char', 'opt_char_gads') minimize a distance with fmincon or GlobalSearch and are therefore out of scope; they are documented as skipped rather than approximated.

Gated on transcendental arithmetic: the lower bound for SCV <= 1 contains sqrt(2) and (1 - scv)^(3/2).

Definition in file aph2_adjust.h.