butools.dph.PmfFromMG¶
-
butools.dph.
PmfFromMG
()¶ Matlab: pmf = PmfFromMG(alpha, A, x, prec)
Mathematica: pmf = PmfFromMG[alpha, A, x, prec]
Python/Numpy: pmf = PmfFromMG(alpha, A, x, prec)
Returns the probability mass function of a matrix- geometric distribution.
Parameters: alpha : vector, shape (1,M)
The initial vector of the matrix-geometric distribution. The sum of the entries of pi0 is less or equal to 1.
A : matrix, shape (M,M)
The matrix parameter of the matrix-geometric distribution.
x : vector of non-negative integers
The density function will be computed at these points
prec : double, optional
Numerical precision to check if the input MG distribution is valid. The default value is 1e-14.
Returns: pmf : column vector of doubles
The probabilities that the matrix-geometrically distributed random variable takes the corresponding “x” values
Examples
For Matlab:
>>> a = [-0.6,0.3,1.3]; >>> A = [0.25, 0.2, -0.15; 0.3, 0.1, 0.25; 0, 0.2, 0.47]; >>> x = (0.0:1.0:100.0); >>> pmf = PmfFromMG(a, A, x); >>> plot(x, pmf)
For Mathematica:
>>> a = {-0.6,0.3,1.3}; >>> A = {{0.25, 0.2, -0.15},{0.3, 0.1, 0.25},{0, 0.2, 0.47}}; >>> x = Range[0.0,100.0,1.0]; >>> pmf = PmfFromMG[a, A, x]; >>> ListLinePlot[{Transpose[{x, pmf}]}]
For Python/Numpy:
>>> a = ml.matrix([[-0.6,0.3,1.3]]) >>> A = ml.matrix([[0.25, 0.2, -0.15],[0.3, 0.1, 0.25],[0, 0.2, 0.47]]) >>> x = np.arange(0.0,101.0,1.0) >>> pmf = PmfFromMG(a, A, x) >>> plt.plot(x, pmf)