LINE Solver
MATLAB API documentation
Loading...
Searching...
No Matches
map_geo_mul_sum.m
1function d = map_geo_mul_sum(MAPA,MAPB,alA,alB)
2% d=map_geo_mul_sum(MAPA,MAPB,alA,alB) - Geometric sum for
3% autocorrelation distance computation.
4%
5% Reference:
6% G. Horvath, "Measuring the distance between MAPs and some
7% applications," in Proc. ASMTA 2015, LNCS 9081, pp. 95-109.
8% https://link.springer.com/chapter/10.1007/978-3-319-18579-8_8
9%
10% Input:
11% MAPA: first MAP in the form of {D0,D1}
12% MAPB: second MAP in the form of {D0,D1}
13% alA,alB: (optional) stationary vectors at arrival epochs
14%
15% Output:
16% d: geometric sum value
17
18A0=MAPA{1}; A1=MAPA{2};
19B0=MAPB{1}; B1=MAPB{2};
20if nargin<4, alB=map_pie(MAPB); end
21if nargin<3, alA=map_pie(MAPA); end
22
23A0i = inv(-A0);
24B0i = inv(-B0);
25NA = size(A0,1);
26NB = size(B0,1);
27
28PAh = A0i*A1 - ones(NA,1)*alA;
29PBh = B0i*B1 - ones(NB,1)*alB;
30
31M = eye(NA*NB) - kron(PBh', PAh);
32if rcond(M)<1e-10
33 d = 1/rcond(M);
34else
35 X = dlyap(PAh, PBh, sum(A0i,2)*(alB*B0i));
36 d = sum(alA*A0i*X*B0i);
37end
38end