请用matlab语言给我基于重力中心性的拉普拉斯重力中心性方法的代码,并且将节点间平均拓扑距离的一半作为重力公式的截断半径
时间: 2024-05-27 09:12:02 浏览: 10
function [Cg, G] = laplacian_gravity_center(A)
% A: adjacency matrix of the graph
% Cg: gravity center of the graph
% G: gravity matrix of the graph
n = size(A,1);
D = diag(sum(A));
L = D-A;
G = zeros(n);
r = mean(mean(distance_matrix(A)))/2;
for i=1:n
for j=1:n
if A(i,j) == 1
dist = norm(i-j);
G(i,j) = -L(i,j)/(dist^2);
if dist > r
G(i,j) = 0;
end
end
end
end
Cg = sum(G)/sum(sum(G));
end
function D = distance_matrix(A)
% A: adjacency matrix of the graph
% D: distance matrix of the graph
n = size(A,1);
D = zeros(n);
for i=1:n
for j=1:n
if i == j
D(i,j) = 0;
elseif A(i,j) == 1
D(i,j) = 1;
else
D(i,j) = inf;
end
end
end
for k=1:n
for i=1:n
for j=1:n
D(i,j) = min(D(i,j), D(i,k)+D(k,j));
end
end
end
end
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)