You are on page 1of 11

MOR Outline

Introduction to Simulation - Lecture 24

• Need For Model Reduction


Model-Order Reduction
– Circuits, MEMS, Jet Engines
Jacob White • Steady-State Case (linear and nonlinear)
• Dynamic Linear Case
– Eigenmodes and Rational Functions
– Projection Framework, Krylov, TBR
Thanks to Luca Daniel, Guillaum Lassauxx, Jing Li,
Mark Reichelt, Deepak Ramaswamy, Michal
• Nonlinear Case
Rewienski, Mary Tolikas, Karen Veroy and Karen – Projection Framework
Willcox
SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

Signal Wire in an
Application Integrated Circuit
Today’s Outline Example
Signal Wire
• Need For Model Reduction Wire has resistance
– Circuits, MEMS, Optics, Jet Engines Wire and ground plane form a capacitor
• Simple Example Problem Logic Logic
Ground Plane
– Heat Conducting bar example Gate Gate
• Steady-State Case (linear and nonlinear)
• Dynamic Linear Case
– Truncating Eigenmodes Reduced-Order Model
– Rational Function Fitting
• Assess wiring impact on IC performance
• Wire Model must preserve terminal behavior
SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

1
Micromechanical Resonators
Jet Engine Design Application in a Wireless transceiver
Application Examples
Example

• Generate Low-
order models
directly from
Navier-Stokes
Equation based Operating
Condition
physical s
Sensing
simulators.
Reduced-
• Reduced model Order Inlet
Actuator RF Front end with micromachined resonators for the oscillator
Flow
must preserve Model Model
Disturbances
Actuation
• What is system performance (noise, distortion, etc).
instabilities.
Flow
• Will poly-substrate separation (changes Q) matter?
features of
Interest • How tight must manufacturing tolerances be?
SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

Micromechanical Resonators in
Application a Wireless transceiver (cont) Application Common features
Examples Examples

• Devices have Well-defined Inputs and Outputs


– Signal Transmission on a Wire
• Left and right end Voltages and Currents
– Jet Engine Nozzle Design
• Nozzle in and out flow, Nozzle size
– Microresonator
• Comb finger voltages and currents

Need to simulate ENTIRE system with dynamically • Dynamics is important


accurate macromodels for all the components – Internal state must be somehow represented

SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

2
Traditional Approach to The Numerical
Application Macromodeling or Model
Examples Generating Models Reduction Paradigm

Generate a Reduced-Order Model Directly from


3-D Geometry and Physics
6 months…
Interconnect Expert dxr (t )
= F ( xr (t )) + br u (t )
dxr (t) dt
= F( xr (t)) + bru(t)
y (t ) = cr xr (t )
T
dt
6 months…
y (t ) = cr xr (t )
T

Lucent MEMS Expert

Cheap to evaluate model


Model for the Complicated Geometry, which captures
6 months… System Simulator Coupled Electrostatics, input (u)/output(y)
Resonator Expert
Fluids, Elastics behavior
SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

The Numerical What’s Needed Heat Conducting Bar


Macromodeling or Model Demonstration
Reduction Paradigm Example

lamp power = u ( t )
dx r ( t )
= F ( x r ( t )) + br u ( t )
dt
y ( t ) = cr x r ( t )
T
Lamp Input of
Interest
• Fast Solvers for complicated 3-D geometries
– (Fast enough to solve ENTIRE devices)
T0 = 0
Tend
– for fluids, electrostatics, mechanics, …
• Approaches for coupled domain analysis
– Multilevel-Newton methods Output of
• Automatic extraction of reduced order models Interest
SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

3
Heat Conducting Bar Heat Conducting Bar
Demonstration Demonstration
Example Basic Equations Example Input-Output Discrete
Equations
Heat In Heat In
T0 = 0 T0 = 0
Tend Tend
∆x ∆x
• Temperature Differential Equation
∂T ( x , t ) ∂ 2T ( x , t ) κ
γ
∂t
− κ
∂x 2
= h ( x ) u (t ) γ
dTˆi
dt

( ∆x )
2 ( )
Tˆi +1 − 2Tˆi + Tˆi −1 = h ( xi ) u ( t ) i ∈ [1, … , N − 1]
specific thermal
scalar
κ
conductivity
dTˆ
( )
heat input
• Spatial Discretization (except at end) γ i − TˆN − TˆN −1 = h ( x N ) u ( t )
( ∆x )
2
dt
κ
dTˆ
γ i −
dt ( ∆x )
2 ( )
Tˆi +1 − 2Tˆi + Tˆi −1 = h ( xi ) u ( t )
Tend = TˆN
SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

Heat Conducting Bar Heat Conducting Bar


Demonstration Demonstration
Example State-Space Description Example Temperature Dependent
Thermal Conductivity
Heat In Heat In
T0 = 0 T0 = 0
Tend Tend
∆x ∆x
dx ( t )
= A x (t ) + b u (t ) y (t ) = c x ( t ) • Temperature Differential Equation
T

dt ∂T ( x , t ) ∂ 2T ( x , t )
NxN Nx1
scalar scalar Nx1 γ − κ (T ( x , t ) ) = h (x)
input output specific
∂t 2
∂x
heat thermal
conductivity

⎡ 2 −1 0 0⎤ ⎡ h ( x1 ) ⎤ ⎡0⎤ • Simple Spatial Discretization (not at ends)


⎢ −1 2 ⎥ ⎢ ⎥ ⎢ ⎥
Given the ⎢ ⎥ ⎢ h ( x2 ) ⎥
c
⎢ ⎥
κ Tˆi ( )
dTˆi
( )
A=⎢0 0⎥ b =⎢ ⎥ =⎢ ⎥
right scaling ⎢
2 − 1⎥
⎥ ⎢



⎢ ⎥
⎢0⎥ γ − Tˆi +1 − 2Tˆi + Tˆi −1 = 0

( )

2
⎣⎢ 0 0 − 1 1 ⎦⎥ ⎢ h ( xN )⎥
⎣ ⎦ ⎢⎣ 1 ⎥⎦ dt x
SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

4
Heat Conducting Bar Linear example
Demonstration No Dynamics (Steady-
Example Nonlinear State-Space State) Case
Description
Heat In
T0 = 0 • Original System - Single Input/Output
Tend
0= A x+ b u y = c x
T

∆x
dx ( t )
NxN Nx1 scalar scalar Nx1

= F ( x ( t ) ) + b u ( t ) y (t ) = c x ( t )
input output
T
• Reduced System
dt Nx1 scalar Nx1
scalar
input output y = − cT A−1b u
1 x1
⎡ 2κ ( x1 ) −κ ( x1 ) 0 0 ⎤ ⎡ x1 ⎤ ⎡1 ⎤ ⎡0 ⎤
⎢ ⎥⎢ ⎥ ⎢0 ⎥ ⎢ ⎥ • Satisfies Reduced Model Criteria
⎢ −κ ( x 2 ) 2κ ( x2 ) ⎥ ⎢ x2 ⎥ ⎢ ⎥ ⎢ ⎥
F (x) = ⎢ 0 0 ⎥⎢ ⎥ b =⎢ ⎥ c =⎢ ⎥

2κ ( x N −1 )
⎥⎢ ⎥
−κ ( x N −1 ) ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ – Cheap to evaluate
⎢ ⎢ ⎥ ⎢0 ⎥
⎢ 0 −κ ( x N ) κ ( x N ) ⎥⎦ ⎢⎣ x N ⎥⎦
⎣ 0 ⎣⎢ 0 ⎦⎥ ⎣⎢ 1 ⎦⎥ – Exactly reproduces I/O Behavior
SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

Nonlinear Example Nonlinear Example


No Dynamics Case No Dynamics Case Representation of Reduced
Model
• Original System - Single Input/Output • Could use an interpolated table of data
0 = F ( x) + b u y = c x g (u )
T
g ( ui ) = F −1 ( bui )
Nx1 scalar scalar Nx1
input output
• Reduced System u
y = g (u )
ui −1 ui

• Is “g(u)” a reduced-order model? • Table is a reduced order model


– Depends how we represent g! – Cheap to evaluate
– Accurate if enough points used
SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

5
Model Construction Time State-Space Description
No Dynamics Case Dynamic Linear case

• Linear Case, one solve, one inner product • Original Dynamical System - Single Input/Output
– Solve Ax = b ⇒ x = A−1b dx ( t )
= A x ( t ) + b u ( t ) y (t ) = c x ( t )
T

– FormcT x = cT A−1b dt NxN Nx1 scalar Nx1


scalar
input output
• Nonlinear Case (if an interpolated table is used)
– Solve • Reduced Dynamical System
F ( xi ) = bui ⇒ xi = F −1
( bui ) for i = 1,...# samples dxr ( t )
= Ar x ( t ) + br u ( t ) yr (t ) = cr xr ( t )
T

dt
– Form c xi = c F
T T −1
( bui )
for i = 1,...# samples qxq qx1 scalar
input
scalar
output
qx1

• Nonlinear Reduction adds a representation problem • q << N, but input/output behavior preserved
to model reduction
SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

Reminder about Eigenanalysis Reminder about Eigenanalysis Cont.


dx(t )
Consider an ODE: = Ax(t ) + bu ( t ) , x(0) = 0 Decoupled Equations
dt
0 ⎤ ⎡ w1 ⎤ ⎡ ( E b )1 ⎤
−1 −1
⎡ ⎤ ⎡λ1 0 0 ⎤⎡ ⎤
⎡ w1 ⎤ ⎡λ1 0
⎢ ⎥
Eigendecomposition: A = ⎢⎢ E1 EN ⎥⎥ ⎢⎢ 0 0 ⎥⎥ ⎢⎢ E1 EN ⎥⎥ d ⎢ ⎥ ⎢
0 ⎥⎥ ⎢⎢ ⎥⎥ + ⎢
E2 E2
⎢⎣ ⎥⎦ ⎢⎣ 0 λN ⎥⎦ ⎢⎣ ⎥⎦ = 0 ⎥ u (t )
dt ⎢ ⎥ ⎢
0
⎢ ⎥
E
⎢⎣ wN ⎥⎦ ⎢⎣ 0 0 λN ⎥⎦ ⎢⎣ wN ⎥⎦ ⎢( E −1b ) ⎥
Change of variables: Ew(t ) = x(t ) ⇔ w(t ) = E −1 x(t ) ⎣ N⎦

Substituting:
dEw(t )
= AEw(t ) + bu ( t ) , Ew(0) = 0 Output Equation b
dt
y ( t ) = cT x ( t ) = cT Ew ( t ) = ( E T c ) w ( t )
T
dw(t )
Multiply by E −1: = E −1 AEw(t ) + E −1bu ( t )
dt
SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT
c

6
Reduced models via mode
Reminder about Eigenanalysis Cont. Dynamic Linear Case truncation

Solving Decoupled Equations


⎡ w1 ⎤ ⎡λ1 0 ⎤ ⎡ w1 ⎤ ⎡ b1 ⎤
t
wi ( t ) = ∫ e bi u (τ ) dτ
λi ( t −τ ) Assuming Zero 0
Initial Conditions ⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥
0
⎢ ⎥ =⎢0 0 ⎥ ⎢ ⎥ + ⎢ ⎥ u (t )
⎢ wq ⎥ ⎢ 0
⎣ ⎦ ⎣ 0 λq ⎥⎦ ⎢⎣ wq ⎥⎦ ⎢bq ⎥
Output Equation ⎣ ⎦
N
y ( t ) = ∑ ci wi ( t ) Output Equation
i =1 q
y ( t ) = ∑ ci wi ( t )
i =1

SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

Reduced models via mode Reduced models via mode


Dynamic Linear Case Truncation Dynamic Linear Case truncation
Heat Conducting bar
Why?
Results
• Certain modes are not affected by the input N=100
q=1
bk +1 ,… , bN are all small q=3
• Certain modes do not affect the output
ck +1 ,… , cN are all small q=10

• Keep least negative evals (slowest modes) Exact


– Look at response to a constant input
t
wi ( t ) = ∫ e
λi ( t −τ )
bi udτ =
1
λ
( b u − b ue )
i i
λi t
Keep qth slowest modes
0 i

SMA-HPC ©2003 MIT


Small if λi large SMA-HPC ©2003 MIT

7
An Aside on Transfer An Aside on Transfer
Functions – Laplace Transform Functions – Meaning of H(s)
dx(t )
Consider an ODE: = Ax(t ) + bu ( t ) For Stable Systems, H(jw) is the frequency response
dt
∞ If u (t ) = e jω t ÅSinusoid
Bilateral Laplace Transform: X ( s ) = ∫ x (t)
−∞
e−st dt

dx ( t ) − st
then y (t ) = H ( jω ) e jω t Sinusoid with shifted
Key Transform Property: sX ( s ) = ∫ e dt phase and amplitude
H ( jω )
dt
−∞
Rewrite the ODE in transformed variables
sX ( s ) = AX ( s ) + bU ( s ) Y ( s ) = cT X ( s )
⇒ Y ( s ) = cT ( sI − A ) bU ( s )
−1

H(s) Å Transfer Function ω


SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

An Aside on Transfer Rational


An Aside on Transfer Function
Transfer
Functions – EigenAnalysis Functions
Dynamic Linear Case Representation
Continued
Transfer Function
H ( s ) = cT ( sI − A ) b
−1 Original System Transfer Function
c1b1 cN bN b0 + b1s + + bN −1s N −1
Apply Eigendecomposition H (s) = + + =
( s − λ1 ) ( s − λN ) 1 + a1s + + aN s N
H ( s ) = cT E ( sI − λ ) E −1b
−1

Rational Function
⎡ 1 ⎤ Reduced Model Transfer Function
⎢s −λ 0 0 ⎥ b0r + b1r s + + bqr−1s q −1
⎢ 1
⎥ N Hr ( s) =
ci bi
=c ⎢ 0
T
0 ⎥b ⇒ H (s) = ∑ 1 + a1r s + + aqr s q

1 ⎥
⎥ i =1 s − λi Lower Order Rational Function
⎢ 0 0
⎢⎣ s − λN ⎥⎦ Model Reduction = Find a low order rational
function matching H(s)
SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

8
Rational
An Aside on Transfer Function
Transfer Rational
An Aside on Transfer Function
Transfer
Functions
Dynamic Linear Case Representation
Continued Functions
Dynamic Linear Case Representation
Continued
Degrees of Freedom Variable Changes Do not
change transfer functions
Reduced Model Dynamical System Reduced Model Transfer Function
dxr ( t ) dxr ( t )
= Ar x ( t ) + br u ( t ) yr (t ) = cr xr ( t ) = Ar x ( t ) + br u ( t ) yr (t ) = crT xr ( t )
T

dt dt
⇒ H ( s ) = crT ( sI − Ar ) br
qxq qx1 scalar scalar qx1 −1
input output
2q + q 2 Similarity (x = Sw) Transformed Transfer Function
Reduced Model Transfer Function coefficients
dwr ( t )
b0r + b1r s + + bqr−1s q −1 = S −1 Ar Sw ( t ) + S −1br u ( t ) yr (t ) = crT Swr ( t )
Hr (s) = dt
1 + a1r s + + aqr s q ⇒ H ( s ) = crT S ( sI − S −1 Ar S ) S −1br = crT ( sI − Ar ) br
−1 −1

2q
coefficients Many Dynamical Systems have the same transfer function!!
SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

Rational
An Aside on Transfer Function
Transfer Rational
An Aside on Transfer Function
Transfer
Functions
Dynamic Linear Case Representation
Continued Functions
Dynamic Linear Case Representation
Continued
Rational Function Fitting by Point Matching Matrix can be
point matching ill-conditioned
H (s)
⎡ s1 H ( s1 ) s12 H ( s1 ) − s1q −1 ⎤ ⎡ a1 ⎤ ⎡ H ( s1 ) ⎤
⎢ ⎥ ⎢ ⎥
⎢ − s2q −1 ⎥ ⎢ a2 ⎥ ⎢ H ( s2 ) ⎥
Hr ( s) ⎢ ⎥
⎢ ⎥⎢ ⎥ = ⎢ ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
ω ⎢⎣ s2 q H ( s2 q ) s2 q H ( s2 q )
2
− s2qq−1 ⎥⎦ ⎣⎢bq −1 ⎦⎥ ⎢⎣ H ( s2 q ) ⎥⎦
• Can match 2q points
• cross multiplying generates a linear system • Columns contain progressively higher powers of
For i = 1 to 2q the test frequencies
( )
1 + a1r si + + aqr si H ( si ) − ( b0r + b1r s + + bqr−1s q −1 ) = 0
q • Must orthogonalize columns during construction
SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

9
Rational
An Aside on Transfer Function
Transfer Rational
An Aside on Transfer Function
Transfer
Functions
Dynamic Linear Case Representation
Continued Functions
Dynamic Linear Case Representation
Continued
Importance of Fitting at low Taylor Series Expansion and
frequency Moments
Original System Transfer Function Moments
H ( jω ) Correct Steady H ( s ) = cT ( sI − A) −1 b = −cT ( I − sA−1 ) −1 A−1b
State behavior Taylor Expand with
requires accurate respect to s

match at low
frequencies
H ( s ) = −cT ( I − sA−1 ) −1 A−1b = ∑c
k =0
T
A
− ( k +1)
bs k

H ( s ) = cT A−1b + cT A−2b s + cT A−3b s 2 + = ∑ mk s k
m0 m1 m2 k =0

Moments
SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

Rational
An Aside on Transfer Function
Transfer Rational
An Aside on Transfer Function
Transfer
Functions
Dynamic Linear Case Representation
Continued Functions
Dynamic Linear Case Representation
Continued
Moment Matching for accurate Explicit Moment Matching
low frequency behavior Problem
Reduced Model Matches Original Systems Moments
b0r + b1r s + + bqr−1s q −1
System of equations extremely ill-conditioned
Hr ( s) = = m0 + m1s + + m2 q −1s +
1 + a1r s + + aqr s q ⎡ m0 m1 mk −1 ⎤ ⎡ aq ⎤ ⎡ mq ⎤
⎢m ⎥⎢ ⎥ ⎢ ⎥
Cross-Multiplying and Matching Terms ⎢ 1 ⎥ ⎢ aq −1 ⎥ = ⎢ mq +1 ⎥
⎢ m2 q −3 ⎥ ⎢ ⎥ ⎢ ⎥
⎡ m0 m1 mk −1 ⎤ ⎡ aq ⎤ ⎡ mq ⎤ ⎢ ⎥⎢ ⎥ ⎢ ⎥
⎢m ⎥⎢ ⎥ ⎢ ⎥ ⎢⎣ mk −1 m2 q −3 m2 q − 2 ⎥⎦ ⎢⎣ a1 ⎥⎦ ⎢⎣ m2 q −1 ⎥⎦
⎢ 1 ⎥ ⎢ aq −1 ⎥ = ⎢ mq +1 ⎥
⎢ m2 q −3 ⎥ ⎢ ⎥ ⎢ ⎥ mi = cT A− i b ≈ λ Amax mi −1
⎢ ⎥⎢ ⎥ ⎢ ⎥
⎢⎣ mk −1 m2 q −3 m2 q − 2 ⎥⎦ ⎣⎢ a1 ⎦⎥ ⎢⎣ m2 q −1 ⎥⎦ Columns become linearly dependent for large q!
SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

10
Rational
An Aside on Transfer Function
Transfer
Functions
Dynamic Linear Case Representation
Continued
Problems with explicit fitting Summary
methods
• Need For Model Reduction
• Linear Systems for fitting ill-conditioned – Circuits, MEMS, Optics, Jet Engines
– Need specialized algorithms which avoid • Simple Example Problem
explicit fitting matrix construction – Heat Conducting bar example

• Rational function must be converted to • Steady-State Case (linear and nonlinear)


state-space • Dynamic Linear Case
– Truncating Eigenmodes
– Needed by most simulation tools
• Loss correct steady state values
– Requires root finding procedure, very sensitive • Select modes to delete
to parameter variation – Rational Function Fitting
• Generates ill-conditioned matrices
SMA-HPC ©2003 MIT SMA-HPC ©2003 MIT

11

You might also like