butools.map.MarginalMomentsFromMAP

butools.map.MarginalMomentsFromMAP()
Matlab: moms = MarginalMomentsFromMAP(D0, D1, K, precision)
Mathematica: moms = MarginalMomentsFromMAP[D0, D1, K, precision]
Python/Numpy: moms = MarginalMomentsFromMAP(D0, D1, K, precision)

Returns the moments of the marginal distribution of a Markovian arrival process.

Parameters:

D0 : matrix, shape (M,M)

The D0 matrix of the Markovian arrival process

D1 : matrix, shape (M,M)

The D1 matrix of the Markovian arrival process

K : int, optional

Number of moments to compute. If K=0, 2*M-1 moments are computed. The default value is K=0.

precision : double, optional

Numerical precision for checking if the input is valid. The default value is 1e-14

Returns:

moms : row vector of doubles, length K

The vector of moments.

Examples

For Matlab:

>>> D0 = [-0.17, 0, 0, 0.07; 0.01, -0.78, 0.03, 0.08; 0.22, 0.17, -1.1, 0.02; 0.04, 0.12, 0, -0.42];
>>> D1 = [0, 0.06, 0, 0.04; 0.04, 0.19, 0.21, 0.22; 0.22, 0.13, 0.15, 0.19; 0.05, 0, 0.17, 0.04];
>>> moms = MarginalMomentsFromMAP(D0, D1);
>>> disp(moms);
  Columns 1 through 6
       3.4433        34.03       592.08        14548    4.559e+05    1.727e+07
  Column 7
   7.6526e+08

For Mathematica:

>>> D0 = {{-0.17, 0, 0, 0.07},{0.01, -0.78, 0.03, 0.08},{0.22, 0.17, -1.1, 0.02},{0.04, 0.12, 0, -0.42}};
>>> D1 = {{0, 0.06, 0, 0.04},{0.04, 0.19, 0.21, 0.22},{0.22, 0.13, 0.15, 0.19},{0.05, 0, 0.17, 0.04}};
>>> moms = MarginalMomentsFromMAP[D0, D1];
>>> Print[moms];
{3.44334737542053, 34.03035343496073, 592.0769859317294, 14547.729458258553, 455900.2769738976, 1.7269527005202413*^7, 7.652597172788765*^8}

For Python/Numpy:

>>> D0 = ml.matrix([[-0.17, 0, 0, 0.07],[0.01, -0.78, 0.03, 0.08],[0.22, 0.17, -1.1, 0.02],[0.04, 0.12, 0, -0.42]])
>>> D1 = ml.matrix([[0, 0.06, 0, 0.04],[0.04, 0.19, 0.21, 0.22],[0.22, 0.13, 0.15, 0.19],[0.05, 0, 0.17, 0.04]])
>>> moms = MarginalMomentsFromMAP(D0, D1)
>>> print(moms)
[3.4433473754205295, 34.030353434960716, 592.07698593172893, 14547.729458258538, 455900.27697389701, 17269527.005202383, 765259717.27887475]