Anda di halaman 1dari 4

Power flow solution by Gauss Seidel method:

Given the two bus network below:

Zline = 0 + 0.1j per unit

Vs = 1.0 @ zero degrees

VR

P+jQ =
2.5 + 0.5j

You are to solve for the voltage magnitude and phase angle at VR using the Gauss Seidel method. The
expression for the current in terms of the P,Q and bus voltage are:

P jQ
--------------- = Iline
V R*
The current in terms of the bus voltages and the line impedance is:

( V R VS )
Iline = -------------------------Z line

Using the Gauss Seidel algorithm we use the following equation to update the voltage at VR. Note
(i+1) signifies the second or corrected value of VR and (i) signifies the value for VR found on the
pervious iteration (or the initial value if this is the first time this equation is applied.)

VS
P jQ
V R ( i + 1 ) = Z line --------------- + ------------
* i
V
R ( ) Zline
The following page give a matlab program that executes the Gauss Seidel algorithm. The third page
shows the output from the program. Note that the first correction results in a value for VR that is correct
with respect to P but not correct with respect to Q and that it takes several iterations to find the final
value of VR which results in the correct P and Q for the bus.
Note that P and Q are specified as negative indicating that they represent P and Q absorbed by the
device connected to the bus. (See notes on passive sign convention.)

% Power flow solution by Gauss Seidel method


zline = 0+i*0.1;

% line impedance in per unit

p = -2.5; % bus load in per unit (250 MW)


q = -0.5; % bus load in per unit ( 50 MVAR)
% Set both voltages to initial value of 1.0 per unit at zero degrees
vs = 1.0;
vr = 1.0;
% calculate initial values, then print
vrmag = abs(vr);
vrang = (180./pi)*atan2(imag(vr),real(vr));
iline = (vr - vs)/zline;
load = vr*conj(iline);
k = 0;
fprintf('%s %d \t %s %5.3f %s %5.2f \t %s %6.3f %6.3f\n','Iteration', k,'
',vrmag,' VRangle ',vrang, 'Calcualted P+jQ load ',real(load), imag(load)

VRmag
);

% start iterations
for k = 1 : 10
% Calculate new value for vr
vr = zline*( ((p-i*q)/conj(vr))

+ vs/zline );

%Calculate polar form of vr, line current and bus load, then print
vrmag = abs(vr);
vrang = (180./pi)*atan2(imag(vr),real(vr));
iline = (vr - vs)/zline;
load = vr*conj(iline);
fprintf('%s %d \t %s %5.3f %s %5.2f %s %6.3f %6.3f\n','Iteration', k,'
VRangle ',vrang, 'Calcualted P+jQ load ',real(load), imag(load) );
end;

VRmag ',vrmag,'

Results:

Iteration
Iteration
Iteration
Iteration
Iteration
Iteration
Iteration
Iteration
Iteration
Iteration
Iteration

0
1
2
3
4
5
6
7
8
9
10

VRmag
VRmag
VRmag
VRmag
VRmag
VRmag
VRmag
VRmag
VRmag
VRmag
VRmag

1.000
0.982
0.916
0.913
0.907
0.907
0.906
0.906
0.906
0.906
0.906

VRangle
VRangle
VRangle
VRangle
VRangle
VRangle
VRangle
VRangle
VRangle
VRangle
VRangle

0.00
-14.74
-14.74
-15.90
-15.90
-16.01
-16.01
-16.02
-16.02
-16.02
-16.02

Calcualted
Calcualted
Calcualted
Calcualted
Calcualted
Calcualted
Calcualted
Calcualted
Calcualted
Calcualted
Calcualted

P+jQ
P+jQ
P+jQ
P+jQ
P+jQ
P+jQ
P+jQ
P+jQ
P+jQ
P+jQ
P+jQ

load
load
load
load
load
load
load
load
load
load
load

0.000
-2.500
-2.332
-2.500
-2.484
-2.500
-2.498
-2.500
-2.500
-2.500
-2.500

0.000
0.150
-0.466
-0.448
-0.497
-0.495
-0.500
-0.500
-0.500
-0.500
-0.500

Anda mungkin juga menyukai