clc
clear
close('all')
W=extraM1(case14_3);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%应该只是单纯的算最短路径,和潮流介数没有任何关系
nn=length(W);
DD=zeros(nn,nn);
PP=zeros(nn*(nn-1),nn);
w=0;
for k=1:nn
for i=1:nn
w=w+1;
[ distance path] = Dijkstra( W,k,i);%算最短路径
DD(k,i)=distance;
np=length(path);
for j=1:np
PP(w,j)=path(j);%路径,节点i到节点j
end
end
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
k = 0;
U = [];
for i = 1:length(PP)
if (PP(i,1) == 1 || PP(i,1) == 2 || PP(i,1) == 3 || PP(i,1) == 6 || PP(i,1) == 8) %确定是否发电机节点
k = k + 1;
U = [U i];
PP2(k,:) = PP(U(k),:);
end
end
a = 0;
G = [];
F = [];
for i = 1:size(PP2,1)
for j = 1:size(PP2,2)
if PP2(i,j) > 0 && PP2(i,j + 1) == 0
a = a + 1;
G = [G i];
F = [F j];
PP2l(a,:) = PP2(G(a),F(a));
end
end
end
dataCase = case14_3;
baseMVA = dataCase.baseMVA;
busData = dataCase.bus;
genData = dataCase.gen;
branchData = dataCase.branch;
Pgen = [40.7182;7.0083;75.2076;0;0;75.2076;0;75.2076;0;0;0;0;0;0;];
%Pgen = [232.4;40;0;0;0;0;0;0;0;0;0;0;0;0;];
Pload=busData(:,[1 3]);
busType = busData(:,2);
l_oad = [];
for i = 1:size(busType,1)%寻找负荷节点所在编号索引 %第4-2-2第3步
if busType(i,1) == 1
l_oad = [l_oad i];
end
end
N = [];
r = 0;