You are on page 1of 36

Vector tting

Gerhard Heinzel
1

Max-Planck-Institut fr Gravitationsphysik Hannover (Albert-Einstein-Institut) u

2007/06/26 LTP data analysis meeting Barcelona


-10 -20 dB -30 -40 dB -50 deg -60 -70 -80 103 104 105 106 Frequency [Hz] 107 -45 -90 -135 -180 180 135 90 45 0 Phase [Degree]

Gerhard Heinzel

Vector tting

Problem
complex functions of frequency

Gerhard Heinzel

Vector tting

Problem
complex functions of frequency transfer functions

Gerhard Heinzel

Vector tting

Problem
complex functions of frequency transfer functions loop gains

Gerhard Heinzel

Vector tting

Problem
complex functions of frequency transfer functions loop gains electrical impedance, admittance, S parameters

Gerhard Heinzel

Vector tting

Problem
complex functions of frequency transfer functions loop gains electrical impedance, admittance, S parameters origin These functions typically come from measurements and are usually shown as Bode diagrams.

Gerhard Heinzel

Vector tting

Problem
complex functions of frequency transfer functions loop gains electrical impedance, admittance, S parameters origin These functions typically come from measurements and are usually shown as Bode diagrams.
30 20 10 0 -10 dB -20 -30 -40 -50 -60 -70 0.1 1 10 Frequency [Hz] -90 100 0 -45 90 45 deg dB 180 135 Phase [Degree]

Gerhard Heinzel

Vector tting

Problem
complex functions of frequency transfer functions loop gains electrical impedance, admittance, S parameters origin These functions typically come from measurements and are usually shown as Bode diagrams.
30 20 10 0 -10 dB -20 -30 -40 -50 -60 -70 0.1 1 10 Frequency [Hz] -90 100 0 -45 90 45 deg dB -10 180 -20 135 Phase [Degree] -30 -40 dB 0 -50 deg -60 -70 -80 103 104 105 106 Frequency [Hz] 107 -45 -90 -135 -180 dB 135 90 45 Phase [Degree] 180

Gerhard Heinzel

Vector tting

Modelling

An analytical model of a measured transfer function is often desirable:

Gerhard Heinzel

Vector tting

Modelling

An analytical model of a measured transfer function is often desirable: simple, smooth, description for simulations

Gerhard Heinzel

Vector tting

Modelling

An analytical model of a measured transfer function is often desirable: simple, smooth, description for simulations parameters may have physical meanings, e.g. gain factors, resonance frequencies, quality factors, delay times. general rational model H(s) = A0 a0 + a1 s + a2 s 2 + + an s n s e b0 + b1 s + b2 s 2 + + s m

H(s) is a real function in s, but s is a complex variable: s = i = 2 i f

Gerhard Heinzel

Vector tting

Input data

The measured data is given as a set of pairs or triples fk , Hk [, wk ], k = 1, . . . , Ndata

with fk the frequency of the data point, used as sk = 2 i fk , Hk the value of the complex function, wk the weight of this data point, given as one of wk = 1/ 2 (Hk ) measured, best if available, wk = 1 absolute, wk = 1/|Hk |2 relative, wk = 1/|Hk | semi relative

Gerhard Heinzel

Vector tting

Three equivalent forms


polynomial H0 (s) = pole-zero (preferred) H0 (s) = (s z0 )(s z1 ) . . . [(s zj )(s zj )] . . . (s p0 )(s p1 ) . . . [(s pj )(s pj )] . . . a0 + a1 s + a2 s 2 + + an s n b0 + b1 s + b2 s 2 + + s m

partial fractions with residuals (used by vector tting) rj r1 rj r0 + + + + + ... (s p0 ) (s p1 ) (s pj ) (s pj )

H0 (s) =

Gerhard Heinzel

Vector tting

Linear t of residuals

Partial fractions with residuals: rj r0 r1 rj + ... + + + + (s p0 ) (s p1 ) (s pj ) (s pj )

H0 (s) =

If the poles pj are known, the residuals can be found from a linear least-squares t to the data using the base functions 1 1 , ,.... (s p0 ) (s p1 ) But: The poles are in general not known.

Gerhard Heinzel

Vector tting

pole tting
Enter vector tting (Bjrn Gustavsen 1999), which could also be called pole tting: The aim is to nd all rm , pm , d and e in the model H(s) = rm + d + se s pm m=1
N

(1)

such as to minimize the (weighted) least-square deviation from the set of measured data. Starting with a set of initial poles {qm }, write (s)H(s) = x(s), where (s), and x(s) share the initial poles {qm }: m r rm + 1 H(s) = + d + se s qm s qm m=1 m=1
N N

(2)

Gerhard Heinzel

Vector tting

pole tting 2
m r rm + 1 H(s) = + d + se s qm s qm m=1 m=1 This augmented equation is tted to the given data, yielding m (and rm , r d, e). Rewriting (2) (s)H(s) = x(s) = H(s) = x(s) (s)
N N

shows that the poles of H(s) are the zeroes of (s), and the latter can be found by explicit algebraic operations on (s) = m r + 1. s qm m=1
N

This yields a new set of poles {qm }, and the procedure is iterated towards (s) 1 and {qm } = {pm }.
Gerhard Heinzel Vector tting

realization

One step of the VF iteration (to yield a new set of poles {qm }) needs to:

Gerhard Heinzel

Vector tting

realization

One step of the VF iteration (to yield a new set of poles {qm }) needs to: Solve the overdetermined linear real system rm m r + 1 Hk = + d + sk e sk qm sk qm m=1 m=1 of size (2Ndata + 1) (2N + 3) in the least-squares sense. A successful method is DGELSY from NETLIB, which uses QR factorization with column pivoting and is also used by MATLAB.
N N

Gerhard Heinzel

Vector tting

realization

One step of the VF iteration (to yield a new set of poles {qm }) needs to: Solve the overdetermined linear real system rm m r + 1 Hk = + d + sk e sk qm sk qm m=1 m=1 of size (2Ndata + 1) (2N + 3) in the least-squares sense. A successful method is DGELSY from NETLIB, which uses QR factorization with column pivoting and is also used by MATLAB. Solve a real asymmetric N N Eigenvalue problem. A good subroutine is DGEES from NETLIB.
N N

Gerhard Heinzel

Vector tting

realization

One step of the VF iteration (to yield a new set of poles {qm }) needs to: Solve the overdetermined linear real system rm m r + 1 Hk = + d + sk e sk qm sk qm m=1 m=1 of size (2Ndata + 1) (2N + 3) in the least-squares sense. A successful method is DGELSY from NETLIB, which uses QR factorization with column pivoting and is also used by MATLAB. Solve a real asymmetric N N Eigenvalue problem. A good subroutine is DGEES from NETLIB. Solve another overdetermined linear real system (1) of size (2Ndata ) (N + 2) in the least-squares sense.
N N

Gerhard Heinzel

Vector tting

Is it worth the eort?


transfer function of a commercial line lter:
-10 -20 dB -30 -40 dB 0 -50 deg -60 -70 -80 103 104 105 106 Frequency [Hz] 107 -45 -90 -135 -180 180 135 90 45 Phase [Degree]

14 poles to describe 660 data points are found in 0.3 seconds, fully automatically except choosing the number of poles and the weighting option.
Gerhard Heinzel Vector tting

Is it worth the eort?


transfer function of a commercial line lter:
-10 -20 dB -30 -40 dB 0 -50 deg -60 -70 -80 103 104 105 106 Frequency [Hz] 107 -45 -90 -135 -180 180 135 90 45 Phase [Degree]

14 poles to describe 660 data points are found in 0.3 seconds, fully automatically except choosing the number of poles and the weighting option.
Gerhard Heinzel Vector tting

Is it worth the eort?


a GEO600 interferometric response function:
70 60 135 50 40 dB 30 45 20 10 0 -45 -10 -20 1 10 100 Frequency [Hz] 1000 -90 10000 deg 0 dB Phase [Degree] 90 180

16 poles to describe 16384 data points from 1 to 8192 Hz are found in 2.5 seconds, fully automatically except choosing the number of poles and the weighting option.
Gerhard Heinzel Vector tting

Is it worth the eort?


a GEO600 interferometric response function:
70 60 135 50 40 dB 30 45 20 10 0 -45 -10 -20 1 10 100 Frequency [Hz] 1000 -90 10000 deg 0 dB Phase [Degree] 90 180

16 poles to describe 16384 data points from 1 to 8192 Hz are found in 2.5 seconds, fully automatically except choosing the number of poles and the weighting option.
Gerhard Heinzel Vector tting

Software status

MATLAB

Gerhard Heinzel

Vector tting

Software status

MATLAB Vector tting was developed in MATLAB by its inventor Bjrn Gustavsen.

Gerhard Heinzel

Vector tting

Software status

MATLAB Vector tting was developed in MATLAB by its inventor Bjrn Gustavsen. His code is freely available: http://www.energy.sintef.no/produkt/VECTFIT/index.asp

Gerhard Heinzel

Vector tting

Software status

MATLAB Vector tting was developed in MATLAB by its inventor Bjrn Gustavsen. His code is freely available: http://www.energy.sintef.no/produkt/VECTFIT/index.asp Another version is available as function rationalfit in the RF toolbox.

Gerhard Heinzel

Vector tting

Software status

MATLAB Vector tting was developed in MATLAB by its inventor Bjrn Gustavsen. His code is freely available: http://www.energy.sintef.no/produkt/VECTFIT/index.asp Another version is available as function rationalfit in the RF toolbox. LISO I have implemented the algorithm in LISO.

Gerhard Heinzel

Vector tting

Software status
Select initial poles vectfit2.m (Gustavsen) Pole relocation: 2ND * 2n overdet. linear fit

Future work:

Pole relocation: n*n Eigenvalue problem

residuals: 2ND * n overdet. linear fit No

convergence ? Yes residuals: 2ND * n overdet. linear fit

increase n

No

Fit satisfactory ? Yes Postprocessing

working well working but needs refinement missing

Gerhard Heinzel

Vector tting

Software status
Select initial poles vectfit2.m (Gustavsen) Pole relocation: 2ND * 2n overdet. linear fit

Future work: for xed number of poles N, nd the best criterion to stop the iteration

Pole relocation: n*n Eigenvalue problem

residuals: 2ND * n overdet. linear fit No

convergence ? Yes residuals: 2ND * n overdet. linear fit

increase n

No

Fit satisfactory ? Yes Postprocessing

working well working but needs refinement missing

Gerhard Heinzel

Vector tting

Software status
Select initial poles vectfit2.m (Gustavsen) Pole relocation: 2ND * 2n overdet. linear fit

Future work: for xed number of poles N, nd the best criterion to stop the iteration nd an automatic method to choose a suitable number of poles N

Pole relocation: n*n Eigenvalue problem

residuals: 2ND * n overdet. linear fit No

convergence ? Yes residuals: 2ND * n overdet. linear fit

increase n

No

Fit satisfactory ? Yes Postprocessing

working well working but needs refinement missing

Gerhard Heinzel

Vector tting

Software status
Select initial poles vectfit2.m (Gustavsen) Pole relocation: 2ND * 2n overdet. linear fit

Future work: for xed number of poles N, nd the best criterion to stop the iteration nd an automatic method to choose a suitable number of poles N handle delays

Pole relocation: n*n Eigenvalue problem

residuals: 2ND * n overdet. linear fit No

convergence ? Yes residuals: 2ND * n overdet. linear fit

increase n

No

Fit satisfactory ? Yes Postprocessing

working well working but needs refinement missing

Gerhard Heinzel

Vector tting

Software status
Select initial poles vectfit2.m (Gustavsen) Pole relocation: 2ND * 2n overdet. linear fit

Future work: for xed number of poles N, nd the best criterion to stop the iteration nd an automatic method to choose a suitable number of poles N handle delays handle data without phase (if possible)
working well working but needs refinement missing

Pole relocation: n*n Eigenvalue problem

residuals: 2ND * n overdet. linear fit No

convergence ? Yes residuals: 2ND * n overdet. linear fit

increase n

No

Fit satisfactory ? Yes Postprocessing

Gerhard Heinzel

Vector tting

Postprocessing

The VF result rj r1 rj r0 + ++ + + + d + se (s p0 ) (s p1 ) (s pj ) (s pj ) (3)

H0 (s) =

is converted into its pole-zero representation H0 (s) = A0 (s z0 )(s z1 ) . . . [(s zj )(s zj )] . . . (s p0 )(s p1 ) . . . [(s pj )(s pj )] . . .

and written as LISO input le for further processing.

Gerhard Heinzel

Vector tting

Literature
Gustavsen, B; Semlyen, A: Rational approximation of frequency domain responses by vector tting IEEE TRANSACTIONS ON POWER
DELIVERY, Volume 14, Issue 3, page 10521061, 1999

Grivet-Talocia, S; Bandinu, M: Improving the convergence of vector tting for equivalent circuit extraction from noisy frequency responses IEEE TRANSACTIONS ON ELECTROMAGNETIC
COMPATIBILITY, Volume 48, Issue 1, page 104120, 2006

Gustavsen, B: Improving the pole relocating properties of vector tting IEEE TRANSACTIONS ON POWER DELIVERY, Volume 21, Issue 3,
page 15871592, 2006

Hendrickx, W; Dhaene, T: A discussion of rational approximation of frequency domain responses by vector tting IEEE TRANSACTIONS ON POWER SYSTEMS, Volume 21, Issue 1, page
441443, 2006

http://www.energy.sintef.no/produkt/VECTFIT/index.asp

Gerhard Heinzel

Vector tting

You might also like