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

Per-level processes of a load-dependent flow-equivalent server. More...

#include <cstddef>
#include <vector>
#include "line/api/mam/map_moment.h"
#include "line/num/number.h"
#include "line/util/error.h"
#include "line/util/matrix.h"
Include dependency graph for fes_map_levels.h:

Go to the source code of this file.

Namespaces

namespace  line
namespace  line::fes

Functions

template<class T>
std::vector< mam::Map< T > > line::fes::fes_map_levels (const mam::Map< T > &map, std::size_t n, double mi=1.0)
 Replicate a load independent MAP over n levels, scaling level k by min(k, mi).
template<class T>
std::vector< mam::Map< T > > line::fes::fes_map_levels (const std::vector< mam::Map< T > > &levels, std::size_t n)
 Validate a load dependent descriptor and return its first n levels.

Detailed Description

Per-level processes of a load-dependent flow-equivalent server.

Templated port of matlab/src/api/fes/fes_map_levels.m, mirrored by the JAR and native Python.

A flow-equivalent server is described by one MAP (F0^k, F1^k) per population level k = 1..n. A single MAP is replicated over the levels and scaled by min(k, mi), which reproduces a queue with mi servers and, for mi infinite, a delay station serving at rate k mu. The scaling is exact for exponential service and is the load-dependent rate approximation otherwise.

ARITHMETIC: field operations only, exact at T = Rational.

Definition in file fes_map_levels.h.