I have created a newton raphson algorithm based load flow programming for 30 bus system.After run it shows unexpected matlab expression but it does not show the line no where the fault has occurred. How can I solve it?
古いコメントを表示
zdata = [1 30 0.0192 0.0575 0.02640 1 1 3 0.0452 0.1852 0.02040 1 30 4 0.0570 0.1737 0.01840 1 3 4 0.0132 0.0379 0.00420 1 30 29 0.0472 0.1983 0.02090 1 30 6 0.0581 0.1763 0.01870 1 4 6 0.0119 0.0414 0.00450 1 29 7 0.0460 0.1160 0.01020 1 6 7 0.0267 0.0820 0.00850 1 6 28 0.0120 0.0420 0.00450 1 6 9 0.0 0.2080 0.0 0.978 6 10 0 0.5560 0 0.969 9 27 0 0.2080 0 1 9 10 0 0.1100 0 1 4 12 0 0.2560 0 0.932 12 26 0 0.1400 0 1 12 14 0.1231 0.2559 0 1 12 15 0.0662 0.1304 0 1 12 16 0.0945 0.1987 0 1 14 15 0.2210 0.1997 0 1 16 17 0.0824 0.1923 0 1 15 18 0.1073 0.2185 0 1 18 19 0.0639 0.1292 0 1 19 20 0.0340 0.0680 0 1 10 20 0.0936 0.2090 0 1 10 17 0.0324 0.0845 0 1 10 21 0.0348 0.0749 0 1 10 22 0.0727 0.1499 0 1 21 22 0.0116 0.0236 0 1 15 23 0.1000 0.2020 0 1 22 24 0.1150 0.1790 0 1 23 24 0.1320 0.2700 0 1 24 25 0.1885 0.3292 0 1 25 13 0.2544 0.3800 0 1 25 11 0.1093 0.2087 0 1 8 11 0 0.3960 0 0.968 11 5 0.2198 0.4153 0 1 11 2 0.3202 0.6027 0 1 5 2 0.2399 0.4533 0 1 28 8 0.0636 0.2000 0.0214 1 6 8 0.0169 0.0599 0.065 1]; Y=fybus(zdata); V=[1.06;1;1;1.06;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1.071;1.082;1.01;1.01;1.043]; d=[0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0]; Ps=[-10.6;-2.4;-7.6;-2.4;-0.0;-22.8;-0.0;-0.0;-5.8;-0.0;-11.2;-3.5;-6.2;-8.2;-3.5;-9.0;-3.2;-9.5;-2.2;-17.5;-0.0;-3.2;-8.7;-0.0;-0.0;-0.0;-30.0;-94.2;18.3]; Qs=[-1.9;-1.2;-1.6;-0.9;-0.0;-10.9;-0.0;-0.0;-2.0;-0.0;-7.5;-2.3;-1.6;-2.5;-1.8;-5.8;-0.9;-3.4;-0.7;-11.2;-0.0;-1.6;-6.7;-0.0;-0.0;-0.0;-30.0;-19.0;-12.7]; y = abs(Y); t = angle(Y); iter=0; pwracur = 0.00025; DC=10; N=30; M=3; while max(abs(DC)) > pwracur; iter = iter + 1; P=zeros(N-1,1); k=0; for i=2:N; k=k+1; P(k)=0;
for j=1:N;
Pv=V(i)*V(j)*y(i,j)*cos(t(i,j)-d(i)+d(j));
P(k)=P(k)+Pv;
end
end
P;
Q=zeros(N-M-1,1);
k=0;
for i=[2:N-M];
k=k+1;
Q(k)=0;
for j=[1:N];
Qv=-V(i)*V(j)*y(i,j)*sin(t(i,j)-d(i)+d(j));
Q(k) = Q(k)+Qv;
end
end
Q;
J1=zeros(N-1,N-1);
for i=2;
for k=1:N-1;
J1(k,k)=0;
for j=1:N;
if i~=j;
J1(k,k)=J1(k,k)+V(i)*V(j)*y(i,j)*sin(t(i,j)-d(i)+d(j));
else
end
end
a=a+1;
end
end
for i=2;
for k=1:N-1;
for j=2:N;
for n=1:N-1;
if i~=j && j==n+1;
if k~=n;
J1(k,n)=-V(i)*V(j)*y(i,j)*sin(t(i,j)-d(i)+d(j));
else,end
else,end
end
end
i=i+1;
end
end
J2=zeros(N-1,N-1-M);
for i=2;
for k=1:N-1-M;
J2(k,k)=2*V(i)*y(i,i)*cos(t(i,i));
for j=1:N;
if i~=j;
J2(k,k)=J2(k,k)+V(j)*y(i,j)*cos(t(i,j)-d(i)+d(j));
else,end
end
i=i+1;
end
end
for i=2;
for k=1:N-1;
for j=2:N;
for n=1:N-1-M;
if i~=j;
if k~=n;
J2(k,n)=V(i)*y(i,j)*cos(t(i,j)-d(i)+d(j));
else,end
else,end
end
end
i=i+1;
end
end
J3=zeros(N-1-M,N-1);
for i=2;
for k=1:N-1-M;
J3(k,k)=0;
for j=1:N;
if i~=j;
J3(k,k)=J3(k,k)+V(i)*V(j)*y(i,j)*cos(t(i,j)-d(i)+d(j));
else,end
end
i=i+1;
end
end
for i=2;
for k=1:N-1-M;
for j=2:N;
for n=1:N-1;
if i~=j & j==n+1;
if k~=n;
J3(k,n)=-V(i)*V(j)*y(i,j)*cos(t(i,j)-d(i)+d(j));
else,end
else,end
end
end
i=i+1;
end
end
J4=zeros((N-1-M),(N-1-M));
for i=2;
for k=1:N-1-M;
J4(k,k)=-2*V(i)*y(i,i)*sin(t(i,i));
for j=1:N;
if i~=j;
J4(k,k)=J4(k,k)-V(j)*y(i,j)*sin(t(i,j)-d(i)+d(j));
else,end
end
i=i+1;
end
end
for i=2;
for k=1:N-1-M;
for j=2:N;
for n=1:N-1-M;
if i~=j;
if k~=n;
J4(k,n)=-V(i)*y(i,j)*sin(t(i,j)-d(i)+d(j));
else,end
else,end
end
end
i=i+1;
end
end
J =[J1 J2;J3 J4];
DP = Ps - P;
DQ = Qs - Q;
DC = [DP ; DQ];
DX = J\DC;
for i=2:N;
d(i)= d(i)+DX(i-1);
end
L=length(d);
for i=2:N-M;
V(i)=V(i)+DX(i+L-2);
end
delta =180/pi*d;
Result=[V, d, delta];
end
for i=1:N;Q(i)=0;
for j=1:N
Q(i)= Q(i)-V(i)*V(j)*y(i,j)*sin(t(i,j)-d(i)+d(j));
end
end
for j=1:N
P(j)=0;
Q(j)=0;
for i=1:N;
P(j)= P(j)+V(j)*V(i)*y(j,i)*cos(t(j,i)-d(j)+d(i));
Q(j)=Q(j)-V(j)*V(i)*y(j,i)*sin(t(j,i)-d(j)+d(i));
end
end
P;
Q;
disp(' Voltage angle P Q');
fprintf('%g'),disp([ V d P Q])
回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で Programming についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!