LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
aoi_lst_exp.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_AOI_LST_EXP_H
6#define LINE_API_AOI_LST_EXP_H
7
8/**
9 * @file
10 * @ingroup api_aoi
11 * Laplace-Stieltjes transform of an exponential distribution.
12 *
13 * Templated port of matlab/src/api/aoi/aoi_lst_exp.m, cross-checked against
14 * Aoi_lst.exp in jar/src/main/java/jline/api/aoi/Aoi_lst.java (identical).
15 *
16 * H*(s) = mu / (mu + s)
17 *
18 * A rational function of s, so it is exact in the field: an exact-arithmetic
19 * caller gets the true transform value at any rational s, which is what makes
20 * the AoI closed forms checkable term by term.
21 */
22
24#include "line/num/number.h"
25
26namespace line {
27namespace aoi {
28
29/**
30 * @brief Laplace-Stieltjes transform of an exponential distribution.
31 *
32 * @param mu rate, > 0 (mean 1/mu)
33 * @return s -> mu/(mu+s)
34 */
35template <class T>
36Lst<T> aoi_lst_exp(const T& mu) {
37 detail::require_positive(mu, "aoi_lst_exp", "the rate mu");
38 return [mu](const T& s) { return T(mu / (mu + s)); };
39}
40
41} // namespace aoi
42} // namespace line
43
44#endif // LINE_API_AOI_LST_EXP_H
Shared return types and arithmetic helpers for the templated Age of Information port.
std::function< T(const T &)> Lst
A Laplace-Stieltjes transform evaluated at real arguments.
Definition aoi_types.h:41
Lst< T > aoi_lst_exp(const T &mu)
Laplace-Stieltjes transform of an exponential distribution.
Definition aoi_lst_exp.h:36
Number-type abstraction for the templated API port.