### Matrix Exponential Operators

```Circuit Simulation via Matrix
Exponential Operators
CK Cheng
UC San Diego
1
Outline
• General Matrix Exponential
• Krylov Space and Arnoldi Orthogonalization
• Matrix Exponential Method
– Krylov Subspace Approximation
– Invert Krylov Subspace Approximation
– Rational Krylov Subspace Approximation
2
General Matrix Exponential
• 0(At)= eAt
• 1(At)=
• 2(At)=
A(t−ᆔ)
-1(eAt-I)
e
dᆔ=A
0
A(t−ᆔ)
-2(eAt-A-I)
e
ᆔdᆔ=A
0
• k(At)
=
(−) k
−k(eAt−Ak−1/(k−1)!− ⋯ A−I)

/k!dᆔ=
A
0
Exercise: Expand the right hand side expression to
remove the inverse operation.
3
Krylov Space and Arnoldi
Orthonormalization
Input A and v1=x0/|x0|
Output AV=VH+hm+1vm+1emT
For i=1, …, m
• Ti+1=Avi
• For j=1, …, I
– hji=<Ti+1,vj>
– Ti+1=Ti+1-hjivj
• End For
• hi+1,i=|Ti+1|
• vi+1=1/hi+1 Ti+1
End For
In other words,
Avi-

=1 hjivj =hi+1,ivi+1
4
Standard Krylov Space
Generate: AV=VH+hm+1vm+1emT
Thus, we have eAhv1≈VeHhe1
Residual r=Cdx/dt-Gx=-hm+1Cvm+1emTeHhe1
Derivation:
Cdx/dt-Gx=CVHeHhe1-GVeHhe1
=(CVH-GV)eHhe1 = C(VH-C-1GV)eHhe1
=C(VH-VH-hm+1vm+1emT)eHhe1
=-hm+1Cvm+1emTeHhe1
5
Standard Mexp
E rro r  e
Ah
v v
2
Vm e
hH m
Error trend
sweep m and h
6
e1
Invert Krylov Space
Generate: A-1V=VH+hm+1vm+1emT
Let H=H-1, we have eAhv1≈VeHhe1
Residual r=Cdx/dt-Gx=hm+1Gvm+1emTHeHhe1
Derivation:
Cdx/dt-Gx=CVHeHhe1-GVeHhe1
=(CVH-GV)eHhe1 = G(G-1CVH-V)eHhe1
=G(A-1VH-V)eHhe1
=hm+1Gvm+1emTHeHhe1
7
Invert Matrix Exponential
• large step size with less dimension
h
sweep m and h
erro r  e
Ah
v v
2
Vm e

8
1
Hm
e1
Rational Krylov Space
Generate: (1-rA)-1V=VH+hm+1vm+1emT
Let H=1/r (I-H-1) we have eAhv1≈VeHhe1
Residual r=Cdx/dt-Gx=-hm+1(C/r-G)vm+1emTH-1eHhe1
Derivation:
Cdx/dt-Gx=CVHeHhe1-GVeHhe1
=(CVH-GV)eHhe1 = (1/r CV(I-H-1)-GV)eHhe1
=(1/rCV(H-1)-GVH)H-1eHhe1
=((1/rC-G)VH-1/rCV)H-1eHhe1
=-hm+1(C/r-G)vm+1emTH-1eHhe1
9
Rational Matrix Exponential
• large step size with less dimension
fix  , sweep m and h
Error  e
Ah
v v
h ~
Hm
2
Vm e

10
e1
Different 
needs large m
11
Different 
12
Spectral Transformation –  = 10f
•
•
•
Small RC mesh, 100 by 100
Different h for Krylov subspace
Different  for rational Krylov subspace
13
Spectral Transformation–  = 1p
•
•
•
Small RC mesh, 100 by 100
Different h for Krylov subspace
Different  for rational Krylov subspace
14
Spectral Transformation–  = 100p
•
•
•
Small RC mesh, 100 by 100
Different h for Krylov subspace
Different  for rational Krylov subspace
15
Sweep  for Large Range
16
Sweep  for Large Range
17
Difference Between Inverted and
Rational
18
Fixed  = 1p, sweep time step h
19
Fixed  = 1n, sweep time step h
20
Fixed  = 1u, sweep time step h
21
Fixed  = 1m, sweep time step h
22
Fixed  = 1, sweep time step h
23
Fixed  = 1k, sweep time step h
24
Fixed  = 1M, sweep time step h
25
Krylov Space Residual
Generate: AV=VH+hm+1vm+1emT
Thus, we have eAhv1≈VeHhe1
Residual r=Cdx/dt-Gx=-hm+1Cvm+1emTeHhe1
Derivation:
0
1. Set Y=[e1 He1 H2e1 … Hm-1e1] 1 0
1
0
2. We have YC=HY where C=
…
…
1
zm+cm-1zm-1+…+c1z+c0=0
has roots 1, 2,… m
-c0
-c1
-c2
…
0
-cm-2
1
-cm-1
26
Krylov Space Residual
Residual r=Cdx/dt-Gx=-hm+1Cvm+1emTeHhe1
1
.

3. C=V-1DV (VC=DV), V=
1
.

D=Diag(1, 2,… m)
.
.
.
.
.
.
4. H=YCY-1=YV-1DVY-1
.
.
5. eH=YV-1eDVY-1
1
.

6. emTeHhe1
=emTYV-1eDhVY-1e1
=emTYV-1eDh1, 1=[1,1,…1]T
=emTYV-1[e1h, e2h,…,emh]T
1
1m-1
2
2m-1
m
≈
−1
m-1/(m-1)!
h
h
=1
i+1,i
.
.
.
mm-1
27
Invert Krylov Space Residual
Generate: A-1V=VH+hm+1vm+1emT
Thus, we have eAhv1≈VeHhe1
Residual r=Cdx/dt-Gx=-hm+1Cvm+1emTeHhe1
Derivation:
6. Exercise to derive:
emTH-1eHhe1
≈?
28
```