3, July 1999
RATIONAL APPROXIMATION OF FREQUENCY DOMAIN RESPONSES BY VECTOR FITTING
Bj0rn Gustavsen (M) Adam Semlyen (LF)
EFI, Trondheim, Norway University of Toronto, Toronto, Canada
Email: bjom.gustavsen@efi.sintef.no Email: semlyen@ecf.toronto.edu
M

Abstract The paper describes a general methodology for the The difficulty in formulating a general fitting methodology has
fitting of measured or calculated frequency domain responses with resulted in many methods which are tailored for particular
rational function approximations. This is achieved by replacing a set problems. For instance, Bode type fitting restricted to real poles
of starting poles with an improved set of poles via a scaling and zeros has been successfully applied to transmission line
procedure. A previous paper [5] has described the application of the
modeling based on modal characteristics [3], Transformer models
method to smooth functions using real starting poles. This paper
extends the method to functions with a high number of resonance and network equivalents need complex poles to represent
peaks by allowing complex starting poles. Fundamental properties of resonance peaks. Such responses have been approximated by fitting
the method are discussed and details of its practical implementation partial fractions to the data in an optimization procedure, with
are described. The method is demonstrated to be very suitable for precalculated poles [4],
fitting network equivalents and transformer responses. The An attempt at formulating a general fitting methodology was
computer code is in the public domain, available from the first
author. — —
introduced in [5]. This method vector fitting was based on
doing the approximation in two stages, both with known poles. The
1 INTRODUCTION first stage was carried out with real poles distributed over the
frequency range of interest. In addition, an unknown frequency
One of the problems encountered in power system transients dependent scaling parameter was introduced which permitted the
modeling is the accurate inclusion of frequency dependent effects scaled function to be accurately fitted with the prescribed poles.
in a time domain simulation. Such effects arise from eddy currents From the fitted function a new set of poles were obtained and then
in conducting materials and sometimes from relaxation phenomena used in the second stage in the fitting of the unsealed function. This
in dielectrics. These effects materialize as a frequency domain procedure was very successful in fitting the smooth functions
variation in the resistance, inductance and capacitance matrices occurring in transmission line modeling [56]. However, later
used in the formulation of the model. In practice, the frequency investigations by the authors have shown that the method fails
dependent responses are obtained via calculations or measurements when there are many resonance peaks in the response to be fitted.
as discrete functions of frequency.
A linear model of a power system component can in general be This paper shows that the above mentioned limitations can
included in a time domain simulation via convolutions between easily be overcome by using complex starting poles. This result is
terminal quantities (e.g. node voltages) and impulse responses demonstrated by numerical examples involving artificially created
characterizing the dynamics of the model. A full numerical frequency responses, a measured transformer response, and a
convolution is always possible, but this becomes computationally network equivalent. The paper also provides details on the practical
inefficient because of the many time steps in a simulation. A much implementation of vector fitting.
more efficient implementation is achieved if the frequency domain 2 VECTOR FITTING BY POLE RELOCATION
responses are replaced with low order rational function
approximations, as the convolutions can then be given a recursive Consider the rational function approximation
formulation [1], The ability of finding a good rational function N
Cn + d + sh
approximation is therefore important in power system modeling.
In principle, an approximation of a given order can be found by
/«£
£ts~a*
(2)
fitting a ratio of two polynomials to the data [2]: The residues c„ and poles an are either real quantities or come in
_
m a0+als + a2s2+...+aNsN d)
complex conjugate pairs, while d and h are real. The problem at
hand is to estimate all coefficients in (2) so that a least squares
bQ + byS + b2s2 +.. approximation of f(s) is obtained over a given frequency interval.
Equation (1) is nonlinear in terms of the unknown coefficients but We note that (2) is a nonlinear problem in terms of the unknowns,
can be rewritten as a linear problem of the type Ax = b by because the unknowns an appear in the denominator.
multiplying both sides with the denominator. However, the Vector fitting solves the problem (2) sequentially as a linear
resulting problem is badly scaled and conditioned as the columns in problem in two stages, both times with known poles.
A are multiplied with different powers of s. This limits the method Stage #1 : pole identification
to approximations of very low order, particularly if the fitting is
Specify a set of starting poles a„ in (2), and multiply f(s) with an
over a wide frequency range.
unknown function a(s). In addition we introduce a rational
approximation for a(s) . This gives the augmented problem :
PE1 94PWRD01 11 997 A paper recommended and approved by N
the IEEE Transmission and Distribution Committee of the IEEE Power
Engineering Society for publication in the IEEE Transactions on Power
Delivery. Manuscript submitted July 2, 1997; made available for printing
a(*)/(*)'
a(s)
tas
It■Za—
n==l
N ~
+d+sh
(3)
December 3, 1997. yV+i
£ts~a*
Note that in (3) the rational approximation for a(s) has the
same poles as the approximation for a(s)f(s) . Also, note that the
o>
(0
2 1010
o 80
0 20 40 60 100
Frequency [kHz] 1S
10
Fig. 1 1 8th order frequency response f(s) 0 20 40 60 80 100
Frequency [kHz]
4.2 Fitting with complex poles
Fig. 2 Rational approximations ofll(s) and (o f )fn(s)
— ......
10 pairs of complex starting poles were linearly distributed over the
frequency range, as explained in section 3.2. The starting poles are
listed below : —A«
10°
Table 2 Starting poles fitted
accurate
1.00E02 ± jl.00E+00 5 . 55E+02 ± j 5 . 55E+04
1.11E+02 ± jl.HE+04 6.66E+02 ± j 6 . 66E+04
á
2.22E+02 ± j 2 . 22E+04
3 . 33E+02 ± j3 . 33E+04
7.77E+02
8.88E+02
±
±
j7 .77E+04
.
j 8 88E+04
12 10 s
4.44E+02 ± j4 . 44E+04
O)
1.00E+03 ± jl.00E+05 CO
2
Using the starting poles in table 2, the first stage in vector io10 deviation
fitting was carried out. This produced rational approximations
CSfit(s) and (0/)/„(i). The magnitude of the responses is shown in
figure 2. Also is shown the magnitude of the difference between 0 20 40 60 80 100
Gfj,(s)f(s) and (a/)ftr(i) which corresponds to the error in (4). The Frequency [kHz]
difference is seen to be smaller than IE10. Fig. 3 Fitted function f(s) (20th order approximation)
In the second stage in vector fitting, the zeros of oy,t(j) were
calculated and used as new poles for the fitting of the original A very attractive feature of the fitting methodology is that it
function f(s) . Figure 3 shows that the resulting approximation for will not fail if one attempts to use a very high order approximation.
f(s) is extremely accurate! The rootmeansquare (RMS) error For instance, if one increased the number of linearly spaced
was found to be 3.8E12. Table 3 lists the errors of the values complex starting poles in table 2 from 20 to 40, the RMSerror
obtained for the individual coefficients in table 1. They are all very became 1.6E12.
small.
4.3 Fitting with real starting poles
Table 3 Error in estimate of coefficients in table 1. As was pointed out in section 3.2, frequency responses with
Poles Residues resonance peaks should be fitted using complex starting poles.
IE07 IE07 However, we now attempt at fitting f(s) with 20 real poles,
3E08 IE07 linearly spaced over the given frequency interval.
IE11 ± j 3E11 2E09 ± j5E10 The error of (4) became large, indicating that Of;,(s) is
4E11 ± j4Ell 2E10 ± j 5E09 inaccurate. This resulted in the new poles to be incorrect and so the
IE11 ± jlE10 IE08 ± jlE09 fitting of f(s) became poor, with an RMSerror of 7.1. However,
4E11 ± j3EU 5E09 ± j3E09 several of the new poles were complex. After a few iterations with
4E10 ± j2E10 IE08 ± jlE08
the new poles as starting poles, a very accurate approximation was
4E11 ± j IE 10 IE08 ± jlE08
achieved! Table 4 shows how the error in the fitting of f(s)
2E11 ± j5Ell 5E09 ± jlE08
7E12 ± j IE10 9E09 ± jlE09 decreased during the iterations.
Table 4 Reduction in error by iteration
d: 2E12 h. 5E18
Iteration RMSerror
In this case we fitted an 18th Order function with a 20th order 1 7.1
approximation. The two "surplus” poles came out with very small 2 1.0E11
residues : 3 4.2E13
1055
4.4 Reduced order fitting For starting poles we used 10 linearly spaced complex pairs.
In practical applications one often wants to find a low order
Sjjiire 6 shows the resulting fitting forf(s) after 4 iterations. It is
seen that a fair approximation has been achieved.
approximation to a high order function. 7 peaks can readily be
200
observed in figure 1, so at least 14 poles should be used. Figure 4
......
shows the resulting approximation after 3 iterations when using 7
pairs of complex starting poles. The deviation is seen to have its
maximum around 45kHz, where / (s) has two complex pairs (see
table 1).
103
g 150
&
■O
.i100

 accurate
fitted
deviation
g 102
......
 accurate
fitted
o>
cfl
5 50
I£ 101
o>
OJ
0
0 40
■ffi A
20
'•S'
60
Frequency [kHz]
~ < V
80 100 
5 10° Fig. 6 Adding random noise to f(s) (20th order approximation)
deviation The resulting RMSerror between the fitting function and f(s)
(including noise) was 5.0. For comparison, the RMSvalue of the
10’1 noise alone was 5.3. Table 5 lists how the deviation decreased
0 20 40 60 80 100 during the iterations.
Frequency [kHz]
Table 5 Reduction in error by iteration
Fig. 4 14th order approximation of f(s) after 3 iterations Iteration RMSerror
1 18.2
4.5 Effect of poles outside considered frequency Interval 2 9.5
3 5.3
In some applications f(s) will contain poles outside the frequency
4 5.0
interval considered in the fitting process. To investigate the effect
of this we attempt at fitting the response f(s) in the range 1Hz 4.7 Significance of starting pole location
60kHz, so that several poles lie at higher frequencies than the
In general, the starting poles should be distributed so that the
frequency interval considered in the fitting.
considered frequency range is covered. If, for instance, the starting
Starting poles were obtained by linearly distributing 8 complex
poles are confined to a small part of the frequency interval, the
pairs between 1Hz and 60kHz. Figure 5 shows the resulting fitting
poles will have to be shifted over a large distance during the fitting
for f(s ) in the range lHz100kHz, after 3 iterations. The RMS
process.
error for this interval was 3.3E6, which is still very small.
Figure 7 shows the resulting approximations 0ÿ,(1) and
when using complex starting poles, linearly distributed
between 1Hz and 20kHz. The functions are seen to have a very
large variation, and (4) is not well satisfied at high frequencies.
¥10°
Á
©
£
......
 accurate
fitted 1010 W)fi
o>
2 Á
105 deviation
I 105
£
°fU
rsKr\h/ÿ\rAf>l\N §i
(0
0 20 40 60 80 100 2
Frequency [kHz] 10°
Fig. 5 Fitting /(s) between 1Hz and 60kHz (16th order approx.)
The error further decreased to 3.2E13 when increasing the
0
t' t A/

20 40 60 80 100
Frequency [kHz]
number of poles to 20.
Fig. 7 Approximation of Ofi,(s) and (<3f)jit(s) using starting 20
4.6 Effect of noise
complex starting poles in frequency interval 1Hz 20kHz 
We have found that the ability of shifting the starting poles is
The resulting fitting for f(s ) was poor at high frequencies.
reduced if a significant amount of noise is added to the response. However, one more iteration with the new poles as starting poles
Thus, convergence is slow and several iterations may be needed. In
reduced the RMSerror from 9.2 to 3.48E10. (The variation in
the following we add to f(s) noise which varies randomly
Ofi,(s) and (of)fi,{s) was greatly reduced by each iteration as more
between 10 and +10.
poles were shifted towards higher frequencies.)
1056
On the other hand, the iteration was much less successful if Table 7 New poles produced by stage #1 in vector fitting.
noise was added to /(s). When adding the same noise as In 2000 36843 58405 91297
figure 6, no poles were produced for the fitting of the highest 4000 38736 63158 94737
frequency resonance peak, even after 50 iterations. 9001 47369 68421 99146
15128 49859 73684 24393 ± j 10589
4.8 Optimality of method 30341 52632 84211
In general, the method of vector fitting will not lead to an optimal Smooth functions can often be fitted quite accurately with a
fitting, as the resulting approximation may depend on the selection very low order approximation. Table 8 shows the accuracy,
of starting poles. To explain this, we attempt at fitting f(s) in dependent on how many real starting poles have been used (single
figure 1 with only one complex pair. This resulted in one of the iteration).
resonance peaks being fitted. As to which of the peaks was fitted Table 8 Rootmeansquare error in approximation of f(s)
depended on the location of the two starting poles.
However, in the case of smooth functions, we have found Order Error
experimentally that the fitting will (by iteration) converge to a 2 5.1E2
4 7.1E4
result which is independent of the starting pole locations.
6 3.1E5
8 6.2E6
5 FITTING SMOOTH FUNCTIONS 20 5.9E11
In some applications the frequency responses are very smooth It should be noted that complex poles may also be used as
functions, without resonance peaks. Examples of this are the modal starting poles for smooth functions. The function f(s) was fitted
responses for characteristic admittance and propagation using 10 pairs of complex starting poles linearly distributed
encountered in transmission line modeling. between 1Hz and 100kHz. This gave an approximation having an
In the following we consider an artificially created 18th order RMSerror of 1.1E7, which is somewhat less accurate than the
function, defined by (2) with parameters as shown below : result obtained with real starting poles (5.9E11). Also, several of
Table 6 Coefficients of frequency response the new poles (5 pairs) were complex.
Pole Residue Pole Residue 6 ANALYSIS BY SINGULAR VALUE DECOMPOSITION
 2000 1000 34000 12000
 4000 1000 44000 20000 In the first stage of vector fitting we have to solve the linear
 9000 7000 48000 41000 problem
15000 12000 56000 8000 Ax = b (11)
18000 5000 64000 15600
21000 12000 72000 10000 where each row I: in A is built from the starting poles a as follows:
23000 2000 79000 12000
29500 1500 88000 50000 1 1 ~f(h)
33000 31000 93000 2000
4t = i
** (12)
Jka1 Sk aN
h~a\ sk aN
d=0, h= 0 The accuracy to which (11) can be solved is best analyzed using
Figure 8 shows the resulting fitting for f(s) , when using 20 singular value decomposition. This allows A to be factorized :
real starting poles, linearly distributed between 1Hz and 100kHz. A = USVT (13)
The rootmeansquare error was 5.9E11, which is very small.
S is a diagonal matrix containing the singular values of A, and U is
4 a matrix with orthogonal columns. Thus, the columns of U may be
considered as basis functions in the representation of A. There are
73
_g
......
 accurate
fitted
as many singular values as there are columns in A.
Figure 9 shows the singular values for some of the previous
examples :
1) Fitting a response with resonance peaks using 20 complex
l2 poles (section 4.2).
C>
03 2) Fitting a response with resonance peaks using 20 real poles
2 1 (section 4.3).
3) Fitting a smooth response using 20 complex poles (section 5).
o 4) Fitting a smooth response using 20 real poles (section 5).
0 20 40 60 80 100 From numerical mathematics it is known that the contribution
Frequency [kHz] to A associated with a small singular value is inaccurately handled
Fig. 8 Fitted function f(s) in the solution process of (11), if its ratio to the largest singular
value approaches the machine precision, e.g. below IE12.
However, the parameters in table 6 were not accurately The pattern of the singular values in figure 9 implies that
reproduced. Table 7 lists the calculated poles. It is seen that the accurate results would be obtained for problem 1). This is exactly
poles differ from those in table 6. The reason why an accurate what we found in section 4.2 : all poles were estimated with very
fitting was achieved despite an inaccurate solution is related to the high accuracy.
solution not being welldefined, as will be explained in section 6. In problem 2) several of the singular values are very small. This
implies inaccurate solution of (11). This is detrimental because the
1057
new poles (which are calculated from the solution) must be a resistive network connected to the high voltage terminals. Three
accurately identified for a function with resonance peaks. This is in complex pairs of starting poles were linearly distributed ovei tbe
accordance with the results obtained in section 4.3. frequency range in figure 11. The resulting fitting is seen to be
In both problems 3) and 4) there are many small singular quite good (5 iterations were used).
values which implies inaccurate solution to (12). It was found in
section 5 that the poles were inaccurately estimated in both cases.
However, a very accurate fitting was still obtained because smooth
functions can be approximated quite accurately using slightly
incorrect poles. :
10°
J1
10
fitted......
 measured
á
*ÿ%
iã io'2
o
10° *•?*
•*
••
.....
•*•••••
••••#*# •V.
*.2}
•••••••
C
2 10*
deviation
> .
\3)
â io'10
o>
»»
io 2 4
.£ 0 1 3
co it Frequency [MHz]
20
Fig. 1 1 Zero sequence transformer admittance (6th order approx.)
10
However, the phase angle was not fitted very accurately at low
0 10 20 30 40 frequencies. Therefore, the number of complex starting poles was
Count increased from 6 to 30, and 15 iterations were carried out. Figure
12 shows that a significant improvement has been achieved for the
Fig. 9 Singular values of A
phase angle at low frequencies. (The RMSerror for the entire
7 APPLICATIONS frequency interval decreased from 1.0E3 to 5.4E5.)
In the following we demonstrate vector fitting for a few 90
applications involving frequency responses with resonance peaks.
7, 1 Network equivalent tor a complex network Õ) 80
■§
We first consider the positive sequence admittance for a highly
......
complex distribution network. In this case, all lines were modeled
as distributed parameter lines evaluated at 50Hz. Thus, the
frequency dependent effects are not fully represented.
Figure 10 shows the resulting fitting after 20 iterations, when
using 60 pairs of complex starting poles, linearly spaced over the
given frequency interval. It is seen that a very good approximation
I 70
O)
</>
j5
£ 60

 measured
6th order approx.
30th order approx.
has been achieved. The RMSerror was 3.8E3. The error was 50
further reduced to 6.0E4 when increasing the order to 240. 0 0.2 0.4 0.6 0.8
Frequency [MHz]
7.2 Transformer response
Fig. 12 Fitted phase angle at low frequencies
Figure 11 shows the fitted zero sequence admittance of a
llkV/230V transformer, seen from the low voltage terminals with
101
10° r
......
 accurate
fitted
1
fã 10
«J
1
s
2
10* r
10*
0
UL 50 100 150 200 250 300 350
A iMi 400 450 500
Frequency [kHz]
Fig. 10 Positive sequence admittance (120th order approximation)
1058
7,3 Network equivalent for a transmission line / is a given rational function with unknown poles a„, while
d=11mm
(af)fi, and ofi, are unknown rational functions with given poles
ã„. The poles a„ are specified (starting poles). In order to satisfy
1.5m
o (14), afi, must have zeros which equal the poles of / , and poles
20km
which equal the zeros of / . Thus, in the product the original
overhead line poles a„ of / become replaced by the starting poles ã„ .
7m
VCoQf /(to) Consequently, both (a/)/,, and afilf get the same poles a„, and
an accurate solution of (14) exists! After solving (14), the original
polés a„ of / are calculated as the zeros of o/i( .
WTJTJW ~?77777777777773rZ77777?7777777tt Of course, accurate solution of (14) requires that the number of
p = 10000 ilm starting poles a„ equals or exceeds the number of poles an
. If a
Fig. 13 Transmission line system too low order is used, the replacement of poles in / will be
incomplete, and the solution of (14) will be only an approximation.
The open circuit line admittance T(io) = /(to) / V(u>) was
Accuracy
calculated for the overhead line in figure 13, taking frequency
dependent effects in conductors and earth into account. In principle, a perfectly accurate approximation should be
Figures 14 and 15 show the fitted positive and zero sequence obtained for the response of a rational function when a sufficiently
admittances, using 36 and 44 complex starting poles, respectively. high order is used in the fitting process. The results in section 4 for
(Two iterations were carried out). The resulting fitting is seen to be an artificially created response showed that extremely accurate
very accurate. The deviation was further reduced when increasing results were achieved, provided that the starting poles were
the order. sensibly selected.
Starting poles should in general be complex with weak
attenuation, and should cover the frequency range of interest. It
10
2 was shown that even if starting poles were poorly selected, a very
accurate result was still achieved by reusing the new poles as
starting poles in an iterative procedure. However, the speed of
convergence was reduced if the order of the approximation was
IO4
■o reduced, or noise was added to the response.
3 accurate
fitted If the considered response /($) is rational, then vector fitting
O)
will (with a sufficiently high order) give a rational approximation
I IO* whose frequency response almost perfectly matches the original
one. If in addition the poles of the considered frequency response
deviation are complex with fairly weak attenuation, then vector fitting is
8
10 capable of recovering the unknown poles and residues with a very
0 20 40 60 80 100 high accuracy (section 4.2). This in not possible if f(s) has dense
Frequency [kHz] real poles (section 5) as the solution is illdefined. Nevertheless, the
Fig. 14 Positive sequence admittance (36th order approximation) poles and residues produced by vector fitting will still give a very
accurate approximation for the given frequency response.
It was further shown that the accuracy will not be reduced if
10
3 one tries to use an excessive number of poles.
In section 7 it was shown that vector fitting gave a good
approximation for a measured transformer response. Increasing the
order of the fitting gave a substantial increase in the accuracy for
accurate
_g fitted the phase angle. This accuracy property may be very useful because
3 the passive circuit behavior of an admittance representation could
§> be lost in some frequency interval if the admittance is not well
1Q6 fitted. Vector fitting was also shown to give very good results for
the admittance of a highly complex distribution network, and for
deviation the open circuit admittance of an overhead line.
8
10 Efficiency
0 20 40 60 80 100
Consider the fitting of a scalar f(s) using Na frequency points
Frequency [kHz]
and N poles. This leads to the following operations :
Fig. 1 5 Zero sequence admittance (44th order approximation) 1) Calculation of new poles : Solving linear system Axb ,
8 DISCUSSION where A has dimension 2 Na x (2 N + 2) .
2) Calculation of zeros : Calculate eigenvalues of matrix of
Methodology dimension NxN .
Although the method of vector fitting is very easy to implement in 3) Calculation of residues : Solving linear system Ax = b , where
a computer program, it may at first glance be difficult to see how A has dimension 2 Na x (N + 2) .
and why it works so well. To see this we go back to equation (5),
which is repeated below for convenience : For the example in section 4 we had Nm = 100 , N 20. Using
Matlab running on Windows NT on a Pentium PC, the above
fitf ~0 (14) problems were solved in 0.04, 0.01 and 0.01 seconds, respectively.
1059
9 CONCLUSIONS 12 APPENDICES
The paper has extended the method of vector fitting to
applications involving frequency domain responses with resonance
peaks. This has been achieved by introduction of complex starting
—
A Pole Identification
To simplify notation we will in the following use a instead of a
for starting poles. Equation (4) can be rewritten as
poles. Important features of the improved vector fitting are :
f N ) /n
1) The method is very accurate. In the case of an artificially
created response with known poles and residues, these
L —— + d + sh  1ÿ /M
tiS~an
(A.1)
parameters were estimated with extreme accuracy. The method For a given frequency point sk we get
was demonstrated to give very accurate results for a measured
transformer response and a network equivalent with a large Akx = bk (A.2)
number of resonance peaks.
where
2) Sensible selection of starting poles will in many cases obviate
the need for iteration. Starting poles should be complex with 1 1 ~fUk) f(st)
weak attenuation, distributed over the considered frequency
Ak = 1 h
sk “«I
(A.3)
.*k~al sk ~aN sk ~aN
interval. A recommended procedure for the selection of starting
poles is given in section 3.2. x = [c, ... cN d h c, ... CNY , bk =/(rt) (A.4)
3) The method is very robust. It will not fail if attempting to use a Note that At and x are row and column vectors, respectively.
fitting of very high order, or poorly selected starting poles. In the case of complex poles, a modification is introduced to
4) The method is very easy to implement in a computer program. ensure that the residues come in perfect conjugate pairs. Assume
It essentially consists of building matrices from simple that the partial fractions i and i+1 constitute a complex pair, i.e.,
fractions. The resulting matrix problems are solved using
standard software packages. a, =a'+ja',aM =a';a',c, =c+jc’,cM =c'jc'( A.5)
5) The method is very efficient. Application involves the solving The two corresponding elements Ak i and At (+1 are modified as
of two overdetermined linear matrix equations Ax = b of follows :
moderate size.
6) The method permits matrix elements to be fitted simultaneously
1
 . 1 j
Au = sk ai + ~ r Akj+i = sk~ai sk~ai
sk ai
Í— (A.6)
with identical poles. This permits increased efficiency of the This has the effect that the corresponding residues in the solution
time domain convolutions [5]. vector x become equal to c and c , respectively.
Writing (A.2) for several frequency points gives an
10 ACKNOWLEDGMENTS
overdetermined linear matrix equation :
The authors would in particular thank Dr. T. Henriksen (EFI) Ax = b (A.7)
for suggesting to use the compact formulation (4) instead of using
(3) directly. Financial support by EFI and the Natural Sciences and In the fitting process we use only positive frequencies. In order to
Engineering Research Council of Canada is gratefully preserve the conjugacy property we have to formulate (A.7) in
terms of real quantities :
acknowledged. The authors thank Mr. H.K. Hpidalen (NTH) and
Dr. T. Henriksen (EFI) for providing the frequency responses for ’A'' v
A' = b’
,x , (A.8)
the transformer and the complex network equivalent, respectively.
11 REFERENCES
[1] A. Semiyen and A. Dabuleanu, "Fast and Accurate Switching Transient
B
— Calculation of zeros
After solving (A.8), the zeros are calculated as the eigenvalues of
Calculations on Transmission Lines With Ground Return Using the matrix
Recursive Convolutions", IEEE Trans. PAS, vol. 94, March/April
1975, pp. 561571.
H  AbcT (B.l)
[2] A.O. Soysal and A. Semiyen, "Practical Transfer Function Estimation where A is a diagonal matrix containing the starting poles and b is
and its Application to Transformers", IEEE Trans. PWRD, vol. 8, no. a column vector of ones. cT is a rowvector containing the
3, July 1993, pp. 16271637. residues for a . In the case of a complex pair of poles, the
[3] J.R. Marti, "Accurate Modelling of FrequencyDependent corresponding submatrices in (B.l) are modified (via a similarity
Transmission Lines in Electromagnetic Transient Simulations", IEEE transformation) as follows :
Trans. PAS, vol. 101, no. 1, January 1982, pp. 147157. r a a*~\
/
July 1993, pp. 16151626. This modification has the effect that H becomes a real matrix and
so its complex eigenvalues come out as perfect complex conjugate
[5] B. Gustavsen and A. Semiyen, "Simulation of Transmission Line
Transients Using Vector Fitting and Modal Decomposition", paper PE pairs.
347PWRD0011997, presented at the 1997 IEEE/PES Winter 13 BIOGRAPHIES
Meeting, New York.
For authors’ biographies, see [5].
[6] B. Gustavsen and A. Semiyen, "Combined Phase and Modal Domain
Calculation of Transmission Line Transients Based on Vector Fitting",
paper PE346PWRD0011997, presented at the 1997 IEEE/PES
Winter Meeting, New York.
1060
Discussion approximation, the higher is the accuracy. It would be useful
if the authors can give any guideline concerning the
N. R. Watson (Department of Electrical & Electronic maximum number of poles to consider in the fitting and the
Engineering, University of Canterbury, Private Bag 4800, best choice of the number of the exact function samples to use
Christchurch, New Zealand): The Authors have made a very in the iterative procedure.
valuable contribution to rational approximation of frequency
responses. Stability of the rational approximation is an Finally, the authors are asked to provide more specific
important issue. Our experience has been that unstable rational information about the formulation of the method for vectors.
approximation results when a higher order than necessary is Manuscript received April 9, 1998.
used. Would the authors comment on their method of ensuring
stability by inverting the sign of the real part of unstable poles,
and the effect this has on the accuracy of the fit. How does Bj0rn Gustavsen and Adam Semlyen: We wish to thank Drs.
this compare to simply removing the unstable poles? Watson and Sarto for their valuable comments and useful
contributions. We offer the following clarifications.
In reply to Dr. Watson :
Maria Sabrina Sarto (Univ. of Rome "La Sapienza", Rome,
Vector Fitting, unstable poles may occur incidentally during the
.. .
Italy). The authors should be commended for their interesting
paper, which gives an important contribution to the long „ first iteration(s) because the new set of poles is generally very
different from the previous one. The unstable poles vanish as the
lasting issue concerning the rational approximation of method converges. Thus, if unstable poles were to be deleted in each
transcendent functions. The vector fitting method proposed by iteration, the order of the fitting could become lower than intended.
the authors is particularly useful not only in the modeling of This problem can be overcome in at least two different ways :
power system transients, but in general in the timedomain 1) In each iteration, flip unstable poles into the left half plane (used
analysis of electromagnetic problems. It can be also in this paper) .
» m
For these reasons, some extrainformation concerning the ln reply to Dr Sarto:
practical use of the vector fitting procedure and a few Choice of starting poles
theoretical aspects is requested. It is correct that the computed approximation may depend on the
selected starting poles. However, this is of concern only for functions
when we use a'00 ‘°w order. For instance, if
A key point in the iterative procedure seems to be the choice
. . i .. vTith resonanf P.eaks
there are n dominant resonance peaks in the considered frequency
of the Starting poles. TIn particular, it IS said that the interval, then at least 2n poles should be used for the approximation.
computed approximation may depend on the selection of the If we use a lower order, it will not be possible to fit all of the peaks.
starting poles”. In other words, this means that the iterative In such situations we have found that the choice of starting poles may
procedure described in the paper can stop in local minima. have an influence on which of the resonance peaks will be fitted. In
practice this will not be a problem as one will require a reasonably
Have the author investigated about this point? Have they good approximation and thus a sufficiently high order.
experienced the efficiency of a different approach to solve this The main reason why we talk about the selection of starting poles
problem? is that a good choice reduces the number of iterations that are needed
for the method to converge. At some time we tried to scan the
A„ «her point concerns the approximation of smooth
functions having very broad frequency Spectra. It is observed, over the considered frequency range. This procedure gave a very fast
as it is said in the paper, that such functions, without convergence. However, we found that by simply distributing the poles
resonance peaks can be fitted rather accurately with low order 88 described in this paper, we achieved an acceptable speed of
approximations, by using real poles preferably. However, if convergence. We chose the latter method for its simplicity.
the approximation is required in a wide frequency range and Smooth functions with broad frequency spectrum
the order of the rational fitting function is increased, high Even though real poles are eminently suited for the fitting of smooth
frequency complex poles appear. Comments of the authors functions, they are sometimes complemented with complex poles
having strong attenuation. We often encounter such poles when fitting
above this point would be greatly appreciated. modal propagation functions for transmission lines. The complex
poles then occur at high frequencies near the "toe portion” of the
The last point that is addressed to the authors is the response. It appears that the complex poles are more suited than real
following. It seems that often the order of the rational fitting P°les in producing the strong attenuation required at high frequencies.
is merely related to the desired accuracy of the Application to vectors
approximation: the higher is the order of the rational The paper shows the formulation of Vector Fitting for scalar
1061
functions. However, Vector Fitting can also be applied directly to Selection of approximation order and frequency samnles
vector functions, with the assumption that all elements in the vector The samples should be chosen so densely that the frequency response
have identical poles. The vector formulation is shown below for the is fully resolved. In addition, one should always use at least as many
case that the vector consists of two elements. (The generalization to frequency samples as there are poles, in order to get an
vectors with more elements is straightforward.) overdetermined problem. Otherwise, spurious poles may arise which
leads to highly inaccurate behaviour between frequency samples.
/= (15) Sometimes one may want to achieve high accuracy at certain
h. frequency points or frequency intervals. This can easily be achieved
Using the same starting poles for both vector elements, and a by weighting the rows of the least squares problem (A and bk in (18)
anÿ (19)). For instance, in figure 17 one may consider*to increase the
common scaling function o , equation (A.1) now becomes :
accuracy at low frequencies at the expense of the accuracy at high
frequencies. Figure 18 shows the same result as in figure 17, when the
ttS~an /.Í*
I— — m rows have been muliplied with the inverse of the magnitudeÿ&ftne of
s~a* ,.i
(16) the offdiagonal elements. mr
C2n UJ N X
hS~an /.I*
TT'
40
where superscripts 1 and 2 for the residues refer to element 1 and 2,
respectively. (The d and h terms in (A.l) have been neglected for Ir 30
simplicity.)
%
For a given frequency point st we get : B 20
73
1 2 3 4 5 6 7 8
At* = h (17)
? 10
where X
0
1 1 ~f\(sk ) ~/l(J>) 0 20 40 60 80 100 !0
0 Horizontal distance [m]
Ak ~ sk~a1 sk~aN sk~a1 sk~aN (18)
1 1 h(*k) fiUk) Fig. 16 500 kV DC line in parallel with two 300 kV lines.
0 sk~al sk~aN S* _«1 sk~aN,
......
7i(**)'
(19) 10°
Msk\
original
fitted
X = [c*l ■ C'A/ C21 
■
c, • ••cw] (20)
After solving the resulting system of equations, the new poles are
lio2
&
calculated as the zeros of
N X
B
<7 =1ÿ +! (21) 81 10*
nj
Finally, the elements of the original function (15) are fitted
independently using the new poles as known quantities.
Thus, application of Vector Fitting to a vector function results in
that all elements in the vector get identical poles. For matrix 10*
problems, where the elements in each matrix column are multiplied 10° 10z 104 106
with the same input, usage of identical poles will for a given order Frequency [Hz]
lead to a twofold increase in efficiency of the time domain Fig. 17 First column of H fitted using 10 poles. ( psoil = 100£2m )
convolutions (see closure to [5]).
As an example we consider the 8 conductor overhead line system
shown in figure 16. The line length is 35 km. Figure 17 shows a 10a1
order approximation of the elements of the first column of the
propagation matrix H, and the magnitude of the complex deviation.
An alternative approach is to fit the elements in the column
independently (elementbyelement). In order to achieve the same
efficiency of the time domain convolutions it would then be necessary
to use only half the order as in columnwise fitting. Table 9 compares
the rootmeansquare (RMS) error of the two approaches. It is seen
IV
À
■S
10°
......

 original
fitted