-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathNobelCentrality.m
63 lines (55 loc) · 2.09 KB
/
NobelCentrality.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
%This script computes the centrality measures.
%
%21 February 2018, Richard S.J. Tol
nyear = size(F,2);
nnode = zeros(1,nyear);
nnode(nyear) = size(G53.Nodes,1);
nnetwork = zeros(1,nyear);
closeness = zeros(nnode(nyear),nyear);
nobelness = zeros(nnode(nyear),nyear);
closeharm = zeros(nnode(nyear),nyear) + inf;
nobelharm = zeros(nnode(nyear),nyear) + inf;
nobool = zeros(nnode(nyear),nyear);
for i=1:nyear,
nnode(i) = eval(strcat('size(G',num2str(i),'.Nodes,1)'));
end
for i=1:nyear,
if i>1,
nobool(:,i) = nobool(:,i-1);
end
for j=1:nnode(i),
test = eval(strcat('length(cell2mat(strfind(table2cell(G',num2str(i),'.Nodes(',num2str(j),',1)),"',num2str(i+1968),'")))'));
if test == 1,
nobool(j,i)=1;
end
end
end
for i=1:nyear,
closeness(1:nnode(i),i)= eval(strcat('centrality(G',num2str(i),",'outcloseness')"));
nobelness(1:nnode(i),i)= eval(strcat('nobelity(G',num2str(i),',nobool(1:',num2str(nnode(i)),',',num2str(i),'))'));
closeharm(1:nnode(i),i)= eval(strcat('harmoniccentrality(G',num2str(i),')'));
nobelharm(1:nnode(i),i)= eval(strcat('harmonicnobelity(G',num2str(i),',nobool(1:',num2str(nnode(i)),',',num2str(i),'))'));
end
%%
altnb = zeros(size(G53alt.Nodes,1),53);
for i=1:nyear,
if i>1,
altnb(:,i) = altnb(:,i-1);
end
for j=1:nnode(i),
test = eval(strcat('length(cell2mat(strfind(table2cell(G',num2str(i),'.Nodes(',num2str(j),',1)),"',num2str(i+1968),'")))'));
if test == 1,
altnb(j,i)=1;
end
end
end
altcn = centrality(G53alt,'outcloseness');
altnn = nobelity(G53alt,altnb(:,53));
altch = harmoniccentrality(G53alt);
altnh = harmonicnobelity(G53alt,altnb(:,53));
%%
nnetwork(1) = 2; %Frisch and Tinbergen are not connected
for i=2:nyear,
GED(i) = GED(i) + eval(strcat('size(G',num2str(i),'.Edges,1)')) - eval(strcat('size(G',num2str(i-1),'.Edges,1)'));
nnetwork(i) = eval(strcat('max(conncomp(G',num2str(i),',"Type","weak"))')) - eval(strcat('max(conncomp(G',num2str(i-1),',"Type","weak"))'));
end