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?
Afficher commentaires plus anciens
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])
Réponses (0)
Catégories
En savoir plus sur Programming dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!