LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
LagkJointMomentsFromMRAP.m
1% Nm = LagkJointMomentsFromMRAP(H, K, L, prec)
2%
3% Returns the lag-L joint moments of a marked rational
4% arrival process.
5%
6% Parameters
7% ----------
8% H : list/cell of matrices of shape(M,M), length(N)
9% The H0...HN matrices of the MRAP to check
10% K : int, optional
11% The dimension of the matrix of joint moments to
12% compute. If K=0, the MxM joint moments will be
13% computed. The default value is 0
14% L : int, optional
15% The lag at which the joint moments are computed.
16% The default value is 1
17% prec : double, optional
18% Numerical precision to check if the input is valid.
19% The default value is 1e-14
20%
21% Returns
22% -------
23% Nm : list/cell of matrices of shape(K+1,K+1), length(N)
24% The matrices containing the lag-L joint moments,
25% starting from moment 0.
26
27function Nm = LagkJointMomentsFromMRAP (H, K, L)
28
29 global BuToolsCheckInput;
30 if isempty(BuToolsCheckInput)
31 BuToolsCheckInput = true;
32 end
33
34 if BuToolsCheckInput && ~CheckMRAPRepresentation(H)
35 error('LagkJointMomentsFromMRAP: Input isn''t a valid MRAP representation!');
36 end
37
38 M=size(H,2)-1;
39
40 if ~exist('K','var')
41 K=size(H{1},1)-1;
42 end
43
44 if ~exist('L','var')
45 L=1;
46 end
47
48 sumH = SumMatrixList(H(2:end));
49 iH0= inv(-H{1});
50
51 pi = DRPSolve(iH0*sumH);
52 Pw = eye(size(H{1},1));
53 H0p=cell(K+1);
54 H0p{1} = Pw;
55 for i=1:K
56 Pw = Pw*i*iH0;
57 H0p{i+1} = Pw;
58 end
59
60 Pl = (iH0*sumH)^(L-1);
61 Nm=cell(1,M);
62
63 for m=1:M
64 Nmm = zeros(K+1,K+1);
65 for i=1:K+1
66 for j=1:K+1
67 Nmm(i,j)=sum(pi*H0p{i}*iH0*H{m+1}*Pl*H0p{j});
68 end
69 end
70 Nm{m}=Nmm;
71 end
72end