Vous êtes sur la page 1sur 38

Model order reduction

via
poles
NXPdominant
PowerPoint
template (Title)
Template for presentations (Subtitle)
Joost Rommes [joost.rommes@nxp.com]
NXP Semiconductors/Corp. I&T/DTF/Mathematics
Name
Joint
Subjectwork with Nelson Martins (CEPEL), Gerard Sleijpen (UU)
Project
MMMM dd, yyyyon
Symposium

recent advances in MOR


November 23, 2007

Introduction
Eigenvalue problems and applications
Dynamical systems and transfer functions
Dominant poles
Dominant Pole Algorithm
Applications
Conclusions
2/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Introduction
I

Large-scale dynamical systems arise in


I
I
I
I

Transfer function and properties are used for


I
I
I
I

I
I

electrical circuit simulation


structural engineering
power system engineering
...
simulation
behavioral modeling
stability analysis
controller design

Relatively few transfer function poles of practical importance


Three key questions:
I
I
I

Which poles are important (dominant)?


How to compute these poles efficiently?
How to use these poles in model order reduction?
3/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Motivating example I: Pole-zero analysis


Frequency response of regulator IC (1000 unknowns). Which pole
causes peak around 6MHz?
Oct 17, 2007
11:35:07

DB(VN(VREG))

Bode Plot

20.0

(LIN)

10.0
0.0
-10.0
-20.0
-30.0
-40.0
-50.0
-60.0
1.0
Analysis: AC
User: nlv18077

10.0

100.0

1.0k

10.0k

Simulation date: 17-10-2007, 10:21:28

100.0k

1.0M

10.0M

100.0M

(LOG)

1.0G

10.0G
F

File: /home/nlv18077/test/pstar/stability_ne.sdif

Note dB(x)= 20 10 log(x), e.g. -60 dB = 103


4/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Motivating example II: Model order reduction


Transfer function of power system (66 unknowns). How to
compute reduced order model?
30

40

50

Gain (dB)

60

70

80

90

100

Exact
Reduced (series) (k=11)
Error (orig reduced)

110

120

10

15

20

25

30

35

Frequency (rad/s)

5/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

The generalized eigenvalue problem


Given A, E Rnn , find (, x, y) that satisfy
Ax = E x,

x 6= 0

y A = y E ,

y 6= 0

An eigentriplet (, x, y) consists of
C

eigenvalue

xC

right eigenvector

yC

left eigenvector

(A, E ) has n eigenvalues (real / complex conjugated pairs)

Corresponding eigenspaces need not be n-dimensional

Bi-orthogonality: i 6= j yj E xi = 0
6/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Eigenvalue decompositions
Complete eigenvalue decomposition (, X , Y ):
AX = EX , Y A = Y E

with Y EX = I , Y AX =

diag(1 , 2 , . . . , n ) Cnn

[x1 , x2 , . . . , xn ] Cnn

[y1 , y2 , . . . , yn ] Cnn

In practice only interest in k  n eigentriplets: partial ED


AXk = EXk k , Yk A = k Yk E

with Yk EXk = I , Yk AXk = k

diag(1 , 2 , . . . , k ) Ckk

Xk

[x1 , x2 , . . . , xk ] Cnk

Yk

[y1 , y2 , . . . , yk ] Cnk
7/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Eigenvalue computations
Methods for complete eigendompositions:
I

QR method for AX = X

QZ method for AX = EX

Complexity O(n3 ), practical use up to n 2000

Methods for partial eigendecompositions:


I

Krylov methods (Lanczos, Arnoldi)

Newton based methods (Jacobi-Davidson [Sleijpen, Van der


Vorst (1995)])

No dense matrix computations needed

Careful selection strategies needed

8/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

First-order dynamical systems

First-order SISO dynamical system




E x(t)
= Ax(t) + bu(t)
y (t)
= c x(t) + du(t)
where
u(t), y (t), d

R, input, output, direct i/o

x(t), b, c Rn , state, input-to-, -to-output


E

Rnn , system (descriptor) matrix

A Rnn , system matrix

9/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Transfer function
First-order SISO dynamical system (d = 0):


E x(t)
= Ax(t) + bu(t)
y (t)
= c x(t)
with transfer function
H(s) = c (sE A)1 b
Poles are C for which
lim H(s) = ,

or, equivalently,
det(E A) = 0,
i.e. the eigenvalues of (A, E )
10/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Transfer function H(s) = c (sE A)1 b


Can be expressed as
H(s) =

n
X
i=1

Ri
,
s i

where residues Ri are


Ri = (c xi )(yi b),
and (i , xi , yi ) are eigentriplets (i = 1, . . . , n)
Axi

= i E xi ,

yi A
yi E xi
yj E xi

i yi E ,

right eigenpairs
left eigenpairs

= 1,

normalization

= 0 (i 6= j),

E -orthogonality

11/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Dominant poles cause peaks in Bode-plot

H(s) = c (sE A)

b=

n
X
i=1

Ri
s i

with

Ri = (c xi )(yi b)

Bode-plot is graph of (, |H(i)|)


I

frequency R

magnitude |H(i)| usually in dB (note dB(x)= 20 10 log(x))

Consider pole = + i with residue R, then


n1

lim H(i) =

lim

X Rj
R
+
i ( + i)
i j
j=1

R
+ Hn1 (i)
=





Hence pole with large R causes peak
Re()
12/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

0
Response
Dominant poles

10
20

Gain (dB)

30
40
50
60
70
80
90
100

10

12

Frequency (rad/s)

14

16

Figure: Bode plot (, |H(i)|). Pole j dominant if

18

20

|Rj |
|Re(j )|

large.

13/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Dominant poles of transfer functions


H(s) =

n
X
i=1

Ri
s i

with

|Ri |
|Re(i )|

Ri = (c xi )(yi b)

Pole i dominant if

large

Dominant poles cause peaks in Bode-plot (, |H(i)|)

Effective transfer function behavior:


Hk (s) =

k
X
i=1

Ri
,
s i

where k  n and (i , Ri ) ordered by decreasing dominance


I

Early work modal approximation [Davison, Marschall (1966)]


14/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Dominant Pole Algorithm (DPA) and extensions

DPA [Martins (1996)] computes dominant poles of


H(s) = c (sE A)1 b

1. Newton scheme
2. Nice convergence behavior [R., Sleijpen (2006)]
3. Subspace acceleration, selection, deflation: SADPA [R.,
Martins (2006)]
4. Efficient deflation, extensions, applications [R., Martins,
Pellanda (2006)]

15/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Dominant Pole Algorithm [Martins (1996)]


H(s) = c (sE A)1 b

Pole : lims H(s) = , or lims

1
H(s)

=0

Apply Newtons Method to 1/H(s):


1 H 2 (sk )
H(sk ) H 0 (sk )
c (sk E A)1 b
= sk
c (sk E A)1 E (sk E A)1 b

sk+1 = sk +

Note

dH
ds

= c (sk E A)1 E (sk E A)1 b

16/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Dominant Pole Algorithm


Initial pole estimate s1 , tolerance   1
for k = 1, 2, . . . do
3:
Solve vk Cn from (sk E A)vk = b
4:
Solve wk Cn from (sk E A) wk = c
5:
Compute the new pole estimate
1:

2:

sk+1 = sk
6:

c vk
wk E vk

The pole = sk+1 with x = vk /kvk k2 and y = wk /kwk k


has converged if
k(sk+1 E A)xk2 < 

7:

end for
17/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Twosided Rayleigh quotient iteration


Note that with v vk and w wk
c (sk E A)1 b
w E v

w E v c (sk E A)1 (sk E A)(sk E A)1 b


= sk

w Ev
w E v

w Av
=
w E v

sk+1 = sk

Step
3
4

DPA
solve (sk E A)vk = b
solve (sk E A) wk = c

Twosided RQI
solve (sk E A)vk = E vk1
solve (sk E A) wk = E wk1

Original work on twosided RQI [Ostrowski (1958), Parlett (1974)]


18/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Convergence behavior: DPA vs. RQI

Figure: = 0.47 + 8.9i: DPA: red + yellow, RQI: red + light blue.
19/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Convergence behavior: DPA vs. RQI


Typically, with initial pole guess s0 ,
I DPA converges to dominant pole closest to s0
I
I

with (c, x) and (b, y) small


i.e., large |R| with R = (c x)(y b)

Quadratic rate of convergence

See also [R., Sleijpen (2006)]

while
I

RQI converges to pole closest to s0

Originally intended for refinement of eigenpairs

Cubic rate of convergence

See also [Ostrowski (1958), Parlett (1974)]

20/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Extensions of DPA

DPA is a single pole algorithm

May have very local behavior

In practice more than one pole needed


Subspace Accelerated DPA [R., Martins (2006)]

I
I
I

Subspace Acceleration
Several pole selection strategies
Deflation techniques

21/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Subspace acceleration and selection


I

Keep approximations vk and wk in search spaces V and W

Petrov-Galerkin leads to projected eigenproblem


e x = E
e x,
A
e =
e
y E
y A
e = W EV Ckk
where E

and

e = W AV Ckk
A

Gives k approximations (i , xi = V xi , yi = W yi ) in iter k

Select approximation with largest residue as next shift:




(c xi )(
yi b)

sk+1 = argmaxi
Re(i )

Similarities with twosided Jacobi-Davidson ([Hochstenbach


(2003), Stathopoulos (2002)])
22/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Deflation for H(s) = c (sE A)1 b


I

Triplet (, x, y): Ax = E x and y A = y E

New search spaces: V E y and W E x

Usual deflation (every iteration):

vk

(I xy E )vk

wk

(I yx E )wk

More efficient: deflate only once


bd (I E xy )b vk = (sk E A)1 bd E y
cd (I E yx )c wk = (sk E A) cd E x

Note that y bd = cd x = 0
23/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Deflation of dominant poles removes peaks


Bodeplot
30
Exact
Modal Equiv.
40

Gain (dB)

50

60

70

80

90

8
10
12
Frequency (rad/sec)

14

16

18

20

Figure: Exact transfer function (solid) with removal of dominant poles:


0.467 8.96i (square), 0.297 6.96i (asterisk), 0.0649 (diamond),
and 0.249 3.69i (circle).
24/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Applications of DPA

I
I

Pole-zero analysis in circuit simulation


Applications in model order reduction
I
I
I

Modal approximation
Dominant poles may lie anywhere in complex plane
Combinations with rational Krylov methods

25/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Pole-zero analysis
I

Large nonlinear Regulator IC (n = 1000)

Designed to deliver constant output voltage

Turns unstable for certain loads

Interested in positive poles and dominant poles

Linearization around DC solution

Results:
Method
QR
DPA

Time (s)
450
41

Poles
all
994 103 i5.6 106
8.0 106 i4 106
337 103

26/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Pole-zero analysis
Frequency response of circuit (1000 unknowns). Pole
994 103 i5.6 106 causes peak around 6MHz.
Oct 17, 2007
16:38:18
- y1-axis -

names: A_* --> 3 stability_ne.qr.sdif (AC)Bode Plot


+
B_* --> 1 stability_ne_dpa_3.cgap (AC)Bode Plot
20.0

(LIN)

A_DB(VN(VREG))
B_DB

10.0
0.0
-10.0
-20.0
-30.0
-40.0
-50.0
-60.0
1.0
Analysis: AC
User: nlv18077

10.0

100.0

10.0k

1.0k

Simulation date: 17-10-2007, 10:21:28

100.0k

1.0M

10.0M

100.0M

(LOG)

1.0G

10.0G
F

File: /home/nlv18077/test/pstar/stability_ne.qr.sdif

27/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Model order reduction


Given large-scale dynamical system


E x(t)
= Ax(t) + bu(t)
y (t)
= c x(t) + du(t)
where x(t), b, c Rn and E , A Rnn , find

Ek x k (t) = Ak xk (t) + bk u(t)
yk (t)
= ck xk (t) + du(t)
where xk (t), bk , ck Rk , Ek , Ak Rkk and
I

kn

approximation error ky yk k small

28/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Model order reduction


Model order reduction via projection:
1. Construct matrices V , W Rnk whose columns form a basis
for the dominant dynamics
2. Project using V and W :
Ek = W EV ,

Ak = W AV ,

bk = W b,

ck = V c

Various projection based methods:


I

Modal truncation: columns V , W are eigenvectors of (A, E )

Moment matching: columns V , W are bases for Krylov spaces

Balanced truncation: V , W part of balancing transformation

29/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Modal approximation and moment matching


20
SADPA (k=12)
Dual Arnoldi (k=30)
Orig (n=66)

30

Gain (dB)

40

50

60

70

80

90

10

12

Frequency (rad/s)

14

16

18

20

Figure: Frequency response of complete system (n = 66), modal


approximation (k = 12), and dual Arnoldi model (k = 30).
30/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Dominant poles: location in complex plane


0.8
0.6

exact poles
SADPA (k=12)
Dual Arnoldi (k=30)

0.4
0.2
imag

region of interest
0
0.2
0.4
0.6
0.8
16

14

12

10

real

Figure: Pole spectrum of complete system (n = 66), modal


approximation (k = 12), and dual Arnoldi model (k = 30).
31/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Dominant poles: location in complex plane (zoom)


Dominant poles not necessarily at outside of spectrum
exact poles
SADPA (k=12)
Dual Arnoldi (k=30)

0.5
0.4
0.3
0.2

imag

0.1
0
0.1
0.2
0.3
0.4
0.5
1

0.9

0.8

0.7

0.6

0.5

0.4
real

0.3

0.2

0.1

0.1

Figure: Pole spectrum (zoom) of complete system (n = 66), modal


approximation (k = 12), and dual Arnoldi model (k = 30).
32/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Rational Krylov methods [Ruhe (1998)]


General approach:
1. Choose m interpolation points si
2. Construct Vi , Wi Cnki such that
colspan(Vi ) = Kki ((si E A)1 E , (si E A)1 E b)
colspan(Wi ) = Kki ((si E A) E , (si E A) E c)
3. Project with V = [V1 , . . . , Vm ] and W = [W1 , . . . , Wm ]
Open question:
I

How to choose interpolation points si ?

See also PhD thesis Grimme (1997)

33/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

60

k=40 (RKA)
k=10 (QDPA)
k=50 (RKA+QDPA10)
Exact

40

Gain (dB)

20

20

40

60
1
10

10

10

Frequency (rad/sec)

Figure: Breathing sphere (n = 17611). Exact transfer function (solid),


40th order SOAR RKA model (dot), 10th (dash-dot) order modal
equivalent, and 50th order hybrid RKA+QDPA (dash).
34/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Breathing sphere ([Lampe, Voss (2006)]) (n = 17611)


I

Two-sided rational SOAR [Bai and Su (2005)] model (k = 40,


shifts 0.1, 0.5, 1, 5) misses peaks

Small QDPA model (k = 10) matches some peaks, misses


global response

500 s (SOAR, k = 2 40) vs. 2800 s (QDPA, 108 iters)

Hybrid: Y = [YQDPA , YSOAR ] and X = [XQDPA , XSOAR ]

Larger SOAR models: no improvement

More poles with QDPA: expensive

Use imaginary parts of poles as shifts for SOAR!

Shifts 1 = 0.65i, 2 = 0.78i, 3 = 0.93i, and 4 = 0.1

Two-sided rational SOAR, 10-dimensional bases

35/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

50

Gain (dB)

50

100

150

200

250
1
10

k=70 (RKA)
Exact
Rel Error
0

10

10

Frequency (rad/sec)

Figure: Breathing sphere (n = 17611). Exact transfer function (solid),


70th order SOAR RKA model (dash) using interpolation points based on
dominant poles, and relative error (dash-dot).
36/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Concluding remarks
I

DPA for computation of dominant poles

Subspace acceleration, selection, and efficient deflation

Straightforward implementation
Applications:

I
I

Various specialized eigenvalue problems


Model order reduction:
I
I
I

Construction of modal approximations


Interpolation points for rational Krylov
Behavioral modeling

Generalizations:
I

Second and higher-order systems

MIMO systems

Computation of dominant zeros z: H(z) = 0


37/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Thank you!

joost.rommes@nxp.com
www.nxp.com
rommes.googlepages.com

MOORE

N I C E!

38/38
CONFIDENTIAL
NXP Semiconductors Corp. I&T/DTF, Joost Rommes,
November 23, 32007
Subject/Department, Author, MMMM dd, yyyy

Vous aimerez peut-être aussi