Gauss-Siedel for Load Flow Analysis

1 view (last 30 days)
Killian Flynn
Killian Flynn on 22 Oct 2022
Answered: Sayan on 1 Sep 2023
Hello. I am trying to find an answer for what V2 but it doesn't seem to really be converging. Not too sure where I'm going wrong. Any help wold be greatly appreciated.
%at 1
V1 = 1
PG1 = 1 %guess
QG1 = 0.5 %guess
PL1 = 0
QL1 = 0
%at 2
PG2 = 0.9
QG2 = 0.1 %guess
PL2 = 0
QL2 = 0
%at 3
PG3 = 0
PL3 = 0
PL3 = 1
QL3 = 0.1
Z12 = j*0.06
Z23 = j*0.06
Z31 = j*0.06
% Admittances (Y = 1/Z):
Y12 = 1/Z12;
Y23 = 1/Z23;
Y31 = 1/Z31;
% Admittance matrix Y - fill in blanks
y = [Y12+Y31 -Y12 -Y31;
-Y12 Y12+Y23 -Y23;
-Y31 -Y23 Y23+Y31]
%S1 = complex(PG1 - PL1, QG1 - QL1);
S2 = complex(PG2 - PL2, QG2 - QL2);
S3 = complex(PG3 - PL3, QG3 - QL3);
y(2,1)
%guesses
V2 = 1
V3 = 1
Output = [abs(V2) 180*angle(V2)/pi abs(V3) 180*angle(V3)/pi]
N = 100
%guess
for i=1:N
S2 = V2*(y(2,1)+y(2,2)*V2+y(2,3)*V3)
S2 = conj(PG2 + S2*j)
V2 = ((S2/V2) - y(2,1)-y(2,3)*V3)/y(2,2) % fill in expression for V2 here*
end
abs(V2)
angle(V2)
V2 = 1
V3 = 1
N = 3
%guess
for i=1:N
S3 = conj(V3)*(y(3,1)+y(3,2)*V2+y(3,3)*V3);
V3 = ((S3/V3)-y(3,1)-y(3,2)*V2)/y(3,3)
end
V3
abs(V3)
angle(V3)

Answers (1)

Sayan
Sayan on 1 Sep 2023
I understand that your issue is that the bus voltage "V2" is diverging when you run the code. The possible ways this can be resolved are:
  • Compute the voltage of both buses, i.e., "V2" and "V3", in the same loop so that the updated value of voltage is used for computation in each iteration. To do so, you can save the voltage ("V") and apparent power ("S") in a vector. This can be done as follows:
for i=1:N %iterate through the total number of desired iterations
for j=2:totalNumberofBuses %calculate voltage for each bus except for the slack bus
YV=0;
for k = 1:totalbuses
if j~=k
YV = YV + ybus(j,k)* V(k); % multiply admittance & voltage
end
end
V(j)=(1/ybus(j,j))*(S(j))/conj(V(j)) - YV); % Compute the Bus Voltages
end
end
  • Additionally, you can use the accelerating factor with its industry- standard value to multiply the voltage of each bus in each iteration to accelerate convergence. Be careful while choosing the value of the acceleration factor as it may cause divergence of the voltages if wrongly chosen.
Hope this helps to resolve the issue.

Categories

Find more on MATLAB in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!