You are on page 1of 23

Fast Power Flow Methods

1.0 Introduction
What we have learned so far is the so-called
full-Newton power flow algorithm. The
full-Newton is perhaps the most robust
algorithm in the sense that it is most likely
to obtain a solution for tough problems.
For eample! solving a large power flow
case from a flat start is usually considered
to be a tough problem! and as a result! it is
best to do that with a full Newton.
"ut many times! the problem is not so
tough! and in that case! the so-called fast
decoupled algorithm is also effective in
getting the solution! there is no loss of
accuracy! and it is much faster. # common
situation where fast-decoupled algorithm is
attractive is when you have solved the case!
and then you want to re-solve the case
$using a hot start% to analy&e the effect of
some not-so-dramatic change.
'
There are still other situations where speed
is paramount! but accuracy is not. For
eample! in on-line analysis of ()!)))
contingencies! we may want to only filter
the contingencies that have potential to
result in problems! and then perform full
analysis on those set.
2.0 The fast decoupled power flow
We observed in the eample of the previous
set of notes $*ample ').+% that the ,acobian
matri
1
]
1

22 21
12 11
J J
J J
J
$'%
has a special characteristic in that the
elements of the off-diagonal submatrices J
12
and J
21
are usually very small relative to the
elements of the diagonal submatrices J
11
and
J
22
. $-n fact! in the first iteration of a flat
start! when we assume all angles are )! the
elements of the off-diagonal matrices are )%.
The reason for this can be seen in the
epressions for the ,acobian elements.
/
( ) ) sin( ) cos(
) (
21
q p pq q p pq q p
q
p
pq
B G V V
x Q
J

$/%
( )
2
1
2
21
) sin( ) cos(
) (
) (
p pp
n
k
k p pk k p pk k p
p pp p
p
p
pp
V G B G V V
V G x P
x Q
J

'

$0%
( ) ) sin( ) cos(
) (
12
q p pq q p pq p
q
p
pq
B G V
V
x P
J +

$1%
( )
p pp
n
k
k p pk k p pk k p
p
p pp
p
p
p
p
pp
V G B G V V
V
V G
V
x P
V
x P
J
+

'

+
+

1
12
) sin( ) cos(
1
) ( ) (

$(%
Notice that every term in all of the above
epressions are either $a% multiplied by a
2 or $b% multiplied by a sin. The overall
terms are small because! for transmission.
conductance 2 tends to be small and
angular differences across circuits tend to
be small! resulting in small sin terms.
These observations are consistent with our
understanding that 3 is not very sensitive to
voltage magnitude $i.e.! small
q
p
V
x P

) (
and
p
p
V
x P

) (
%! and 4 is not very sensitive to angle
$i.e.! small
q
p
x Q

) (
and
p
p
x Q

) (
%.
0
We can take advantage of these observations
in the following way. -nstead of using the
eact ,acobin! lets assume that all elements
of the off-diagonal submatrices are in fact 0
and remain 0 throughout the entire Newton-
Raphson algorithm. -n other words! let5s 6ust
use the following ,acobian.
1
]
1

22
11
0
0
J
J
J
T
$+%
Note what this does to our update e7uation.
1
1
1
]
1


Q
P
x J
j j ) ( ) (
$8%
9ubstituting $+% into $8%! we have.
) ( ) (
) (
22
11
0
0
j j
Q
P
V
J
J
j
T
1
1
1
]
1


1
1
1
]
1

1
]
1


$:%
3erforming the indicated matri
multiplication! we obtain.
) ( ) ( ) ( 11 j j j
P J
$;%
) ( ) ( ) ( 22 j j j
Q V J
$')%
These e7uations are the same as e7s.
$').('a% and $').('b% in the tet! ecept that
here! there are negatives signs out front of
the real and reactive mismatch vectors on
the right-hand-side.
1
The reason for the difference is that - have
defined the mismatch as calculated-
specified $e!g!
k k
P x P ) (
and
k k
Q x Q ) (
% instead of
specified-calculated $e.g.!
) ( x P P
k k

and
) ( x Q Q
k k

%. The tet does the opposite $see e7.
$').08% at top of page 01(%.
*7uations $;% and $')% have the following
remarkable feature. real power equations
are decoupled from the voltage magnitudes,
and reactive power equations are decoupled
from the angles The implication is that
either one of e7uations $;% and $')% may be
solved independent of the other one<
=ur power flow algorithm remains eactly
as it was before! with the only eception
being in 9tep 1.
'. 9pecify.
#ll admittance data $series >! charging
capacitance! transformer taps! ? shunts%
(
3
d
and 4
d
for all buses $whether 3@! 34!
or swing%
3
g
and A@A for all 3@ buses
A@A for swing bus! with B)
/. 9et the iteration counter 6B). Cse one of
the following to guess the initial solution.
Flat 9tart. @
k
B'.) ) for all buses.
Dot 9tart. Cse the solution to a
previously solved case for this network.
3. Eompute the mismatch vector for
$6%
!
denoted as f$%. -n what follows! we
denote elements of the mismatch vector as
3
k
and 4
k
corresponding to the real and
reactive power mismatch! respectively! for
the k
th
bus $which would not be the k
th
element of the mismatch vector for two
reasons. one reason pertains to the swing
bus and the other reason to the fact that for
type 34 buses! there are two e7uations per
bus and not one%. This computation will
also result in all necessary calculated real
+
and reactive power in6ections. 3erform the
following stopping criterion tests.
-f A3
k
AF
3
for all type 34 ? 3@ buses
and
-f AA4
k
AF
4
for all type 34 buses!
Then go to step (
*lse
2o to step 1.
1. Find an improved solution as follows.
*valuate the ,acobian , at
$6%
. Genote
this ,acobian as ,
$6%
9olve for
$6%
by applying HC
decomposition to.
) ( ) ( ) ( 11 j j j
P J ) ( ) ( ) ( 22 j j j
Q V J
Eompute the updated solution vector as

$6I'%
B
$6%
I
$6%
.
Jeturn to step 0 with 6B6I'.
(. 9top.
8
This is only
change in
algorithm<<
Dow to see that the fast-decoupled $FGE%
algorithm is faster than the full NewtonK
-n full Newton! step 1 computes
1
1
1
]
1


Q
P
x J
j j ) ( ) (
The ,acobian has dimension $/N-'-N
2
%.
-n the above algorithm! ,
''
has dimension
$N-'%! and ,
//
has dimension $N-N
2
%.
For eample! if we have /)))) buses and
/))) generators! then the ,acobian in the full
Newton has dimension of 08!;;;! but the
FGE algorithm ,acobians will have
dimension of ';!;;; and ':!)))!
respectively.
-t is known that the speed of HC
decomposition is a function! approimately
linear! of the number of elements. The
number of elements in the full Newton is
$08!;;;%
/
B'.11*;! whereas in the FGE
algorithm it is $';!;;;%
/
I$':!)))%
/
B8./1*:.
Therefore the above version of the FGE
:
algorithm will be about twice as fast per
iteration as the full Newton.
Dowever! because the ,acobian gives the
direction to move the solution in each
iteration! we do suffer a loss in accuracy per
iteration! and therefore we may need more
iterations to obtain the final solution.
2iven these two opposing forces $less time
per iteration and more iterations%! it is
usuall! the case that the FGE algorithm is
between '.( and / times faster than the full
Newton.
"ut what about accuracyK We have said that
the FGE algorithm will be less accurate per
iteration. Goes that imply that it will provide
a less accurate solution once it stops
iteratingK
The answer to this 7uestion depends on the
stopping criterion. Note that in the above
;
FGE algorithm! the stopping criterion is
given in 9tep 0! and it is e"actl! the same as
the stopping criterion used in the full
Newton algorithm. That is! both algorithms
are computing the mismatch as
k k
P x P ) (
and
k k
Q x Q ) (
! and
) ( x P
k
and
) ( x Q
k
are computed with
the full real and reactive power flow
e7uations! respectively! in both algorithms.
-t is very important to recogni&e that the
appro"imation in #$% algorithm is applied
to the Jacobian matri" but N&' the power
flow equations used to compute the elements
of the mismatch vector.
The conclusion that we can make here is that
# 3=W*J FH=W 9=HCT-=N
="T#-N*G "> FGE #H2=J-TDL -9
,C9T #9 #EECJ#T* #9 # 3=W*J
FH=W 9=HCT-=N ="T#-N*G "> #
FCHH N*WT=N.
3.0 FDC alorith!" enhance!ents
')
We may simplify the FGE algorithm still
further! making it still faster $but less
accurate% per iteration by working with the
epressions of the ,acobian elements for J
11
and J
22
.
-n what follows! we provide more in-depth
development to tet pg. 0(0.
Eonsider the terms
11
pq
J
. -f we neglect 2 and
under small angle approimation $so that
sin$M
p
-M
7
%N) and cos$M
p
-M
7
%N'%.
( )
pq q p
q p pq q p pq q p
q
p
pq
B V V
B G V V
x P
J

) cos( ) sin(
) (
11

$''%
Now consider the terms
11
pp
J
.
( )
2
1
2
11
) cos( ) sin(
) (
) (
p pp k p pk k p pk
n
k
k p
p pp p
p
p
pp
V B B G V V
V B x Q
x P
J

'

$'/%
#gain! using small 2
pk
and small angle
approimation! the above is
2
1
11
) (
p pp pk
n
k
k p
p
p
pp
V B B V V
x P
J

'

$'0%
''
We will now make use of an assumption that
the voltage profile is flat! i.e.! A@
k
ABA@
p
A.
Then.
1
]
1

'

'

'

pp
n
k
pk p pp p pk
n
k
p
p pp pk
n
k
p p
p
p
pp
B B V B V B V
V B B V V
x P
J
1
2 2
1
2
2
1
11
) (

$'1%
Now consider the summation in the curly
brackets.
pn p p pp p p p p
n
k
pk
B B B B B B B + + + + + + +
+

... ...
1 # 1 # 2 1
1
$'(%
Jecall that from definition of >-bus
elements.
kOp. "
pk
B-b
pk
b
pk
B-"
pk
kBp.
"
pp
Bb
p'
Ib
p/
IPIb
p!p-'
Ib
p
Ib
p!pI'
IPIb
pn
and using the relation from the first bullet.
B-"
p'
-"
p/
-P-"
p!p-'
Ib
p
-"
p!pI'
-P-"
pn
$'+%
where b
p
is sum of all shunt susceptance
at bus p.
9ubstituting this last epression $'+% for "
pp
into $'(%! we obtain.
'/
( )
p
pn p p
pn p p p p p p p
p p p p
n
k
pk
b
B B
B B b B B B
B B B B

+ + +
+ +
+ + +
+
+

...
... ...
...
1 #
1 # 1 # 2 1
1 # 2 1
1
$'8%
9ubstituting $'8% into $'1%! we obtain.
[ ]
pp p p
p
p
pp
B b V
x P
J

2
11
) (

$/8%
We could perform the subtraction in $/8%
using $'+% to see that the term is 6ust the
negative of the sum of all non-shunt
branches connected to bus p.
Dowever! b
p
is typically very small
compared to "
pp
so that neglecting b
p
is 7uite
accurate! resulting in.
pp p
p
p
pp
B V
x P
J
2
11
) (

$/:%
Hikewise! under assumptions of flat voltage
profile and small angle! we can show that.
( )
pq p
q p pq q p pq p
q
p
pq
B V
B G V
V
x Q
J

) cos( ) sin(
) (
22

$/;%
pp p
p pp
p
p
p
p
pp
B V
V B
V
x Q
V
x Q
J

) ( ) (
22
$0)%
'0
9ummari&ing e7s. $''%! $/:%! $/;%! and $0)%!
we have.
pq q p
q
p
pq
B V V
x P
J

) (
11
$''%
pp p
p
p
pp
B V
x P
J
2
11
) (

$/:%
pq p
q
p
pq
B V
V
x Q
J

) (
22
$/;%
pp p
p
p
pp
B V
V
x Q
J

) (
22
$0)%
Noting that the ,acobian matri has no
e7uations or variables for bus ' $the swing
bus%! and assuming we will have ,
''
and ,
//
terms for all buses in the network $not
eactly true! since we will not have reactive
power flow e7uations for type 3@ buses Q so
this is e7uivalent to assuming no type 3@
buses%! we define the "5 matri as.
1
1
1
1
]
1

nn n n
n
n
( ( (
( ( (
( ( (
(
...
...
...
...
R
0 /
0 00 0/
/ /0 //

$0'%
where this matri may be obtained from the
>-bus by simply stripping off the first row
and first column $assuming the swing bus is
'1
S'% and taking the imaginary part of all
elements.
Csing the "5-matri of e7. $0'%! then! e7s.
$''%! $/:%! $/;%! and $0)% may be written
more compactly as.
[ ] [ ] ) ( ) J
''
$0/%
[ ]( ) J
//
$00%
where
[ ]
1
1
1
1
1
]
1

n
V
V
V
V




0 0
0 0
3
2
$01%
Jecalling e7s. $;% and $')%.
) ( ) ( ) ( 11 j j j
P J
$;%
) ( ) ( ) ( 22 j j j
Q V J
$')%
and substituting $0/-00% into $;-')%! we
obtain.
[ ] [ ]
% $ % $ * *
+ ) ( )
$0(%
[ ]
% $ % $ * *
, ) ( )
$0+%
Lultiplying both sides by -' results in.
[ ] [ ]
% $ % $ * *
+ ) ( )
$08%
[ ]
% $ % $ * *
, ) ( )
$0:%
'(
*7uations $08% and $0:% differ from e7s.
$').(8a% and $').(8b% in the tet because the
mismatch vectors are defined differently
here.
Whereas - have defined the mismatch as
calculated-specified $e!g!
k k
P x P ) (
and
k k
Q x Q ) (
% instead of specified-calculated
$e.g.!
) ( x P P
k k

and
) ( x Q Q
k k

%. The tet does the
opposite $see e7. $').08% at top of page 01(%.
There are two more changes which prove
useful in terms of capturing additional
computational efficiency $more speed%.
The first change is an approimation. let the
second T@U in e7. $08% be the identity matri.
The book indicates that the basis for this
change is that we are assuming a flat
voltage profile. This does not tell the whole
story. The basis for this change is that
voltages are flat and typically close to '.).
'+
Laking this change in e7s. $08% and $0:%
results in
[ ]
% $ % $ * *
+ ( )
$0;%
[ ]
% $ % $ * *
, ) ( )
$1)%
The second change is to pre-multiply both
e7uations by T@U
-'
. This change results in
[ ]
% $ ' % $ * *
+ ) (

$1'%
[ ]
% $ ' % $ * *
, ) ) (

$1/%
9ince T@U is diagonal! T@U
-'
is
[ ]
1
1
1
1
1
1
1
1
]
1

n
V
V
V
V
1
0 0
1
0 0
1
3
2
1

$10%
Lultiplication of $10% by the mismatch
vectors is.
'8
1
1
1
1
1
1
1
1
]
1

1
1
1
1
]
1

1
1
1
1
1
1
1
1
]
1

n
n
n
n
V
P
V
P
V
P
P
P
P
V
V
V

3
3
2
2
3
2
3
2
1
0 0
1
0 0
1
$11%
1
1
1
1
1
1
1
1
]
1

1
1
1
1
]
1

1
1
1
1
1
1
1
1
]
1

n
n
n
n
V
Q
V
Q
V
Q
Q
Q
Q
V
V
V

3
3
2
2
3
2
3
2
1
0 0
1
0 0
1
$1(%
"ased on $11% and $1(%! e7s. $1'% and $1/%
become.
+
)
+
)
+
)
+
(
*
n
n
*
V
% $
0
0
/
/
% $

1
1
1
1
1
1
1
1
]
1

$1+%
,
)
,
)
,
)
,
) (
*
n
n
* V
% $
0
0
/
/
% $

1
1
1
1
1
1
1
1
]
1

$18%
':
where the notation of the far right-hand-side
in $1+% and $18% is from the tet.
Three comments remain.
'. *ffect of voltage controlled buses . We
previously assumed $page '(% that we
would have no type 3@ buses. 9ince this
assumption will almost never hold! we
must determine how to handle 3@ buses.
-f a bus is 3@! then we do not represent the
reactive power flow e7uation! and we do
not use the bus5s voltage as an unknown.
This change will have no affect on e7.
$1+%! but it will affect e7. $18%. To account
for 3@ buses in e7. $18%! we need to
Jemove the row and column
corresponding to this bus in "5.
Jemove the element corresponding to
this bus in
Q
$

.
We will call the resulting matri "55.
/. Where5s the speed-upK We still retain
the speed up of the previous FGE
';
algorithm! which is due to the fact that the
HC-decomposition is faster per iteration as
a result of the decoupling $and
corresponding reduction in total matri
elements%. The method described here
provides additional speed-up from two
sources.
The "5-matri need not be reevaluated
in each iteration! and so we save the
time of evaluating ,acobian matri
elements.
"ecause the left-hand-side of e7s. $1+%
and $18% are constants! we need perform
HC-decomposition only once. 2iven the
H and C factors! we need to only
perform forward and backward
substitution for each different right-
hand-side.
0. #lgorithm . - indicated the power flow
algorithm is eactly the same as in the
full-Newton! but there is a minor
difference in that 9tep 0 $page 8% and 9tep
1 $page :% can be alternated! as follows.
/)
a. 9tep 0a. Eompute mismatch of
P
$


using
) 1 (

and
) 1 (

j
V
.
b. 9tep 1a. 9olve e7. $1+% for
) ( j

.
c. 9tep 0b. Eompute mismatch of
Q
$


using
) ( j

and
) 1 (

j
V
.
d. 9tep 1b. 9olve e7. $18% for
) ( j
V
.
e.9tep 0c. 3erform stopping criterion
tests.
-f A3
k
AF
3
for all type 34 ? 3@ buses
and
-f A4
k
AF
4
for all type 34 buses!
Then go to step (
*lse
) ( ) ( ) 1 ( j j j
+
+
) ( ) ( ) 1 ( j j j
V V V +
+
Jeturn to step 0 with 6B6I'.
The reason why this improves speed is
because the update on voltages are done
with using a step-si&e based on the most
recent update on angles.
%.0 DC Power Flow
/'
Jeturn to e7uation $1+%! repeated here for
convenience.
+
)
+
)
+
)
+
(
*
n
n
*
V
R
% $
0
0
/
/
% $

1
1
1
1
1
1
1
1
]
1

$1+%
Now assume all voltages are '.). Then e7.
$1+% becomes.
P
P
P
P
P
P
P
B
j
n
j
n
j

1
1
1
1
]
1

1
1
1
1
1
1
1
]
1


) (
3
2
) (
3
2
) (
0 . 1
0 . 1
0 . 1

$1:%
9o! e7uation $1:% becomes.
P B
j

) (

$1;%
This e7uation! when solved 6ust once $6B'%
for WM
$'%
! and with a flat-start solution!
implies that MB)IWM
$'%
BWM
$'%
! and! if we
assume that this solution is the correct one!
then in other words!
P P P P B ) 0 (
$()%
where 3$)% are the real power flow
e7uations for buses / to N evaluated at M
$)%
B)
//
$i.e.! the flat start%! and 3 are the real power
flow in6ections into each bus / to N.
Therefore!
P B
$('%
This gives all of the angles for the network
with a single solution to a set of linear
e7uations. Then! the real power flows can be
computed with
% $
* - -* -*
( +
$(/%
which is the power flowing across a circuit
connected between buses k and 6 under
conditions of $a% neglecting resistance! $b%
small angle approimation! and $c% all
voltage magnitudes are '.).
/0