MAX PLANCK INSTITUTE FOR DYNAMICS OF COMPLEX TECHNICAL SYSTEMS MAGDEBURG 20 February 2012 Eigenvalue Algorithms for Symmetric Hierarchical Matrices Thomas Mach Max Planck Institute for Dynamics of Complex Technical Systems Computational Methods in Systems and Control Theory Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
MAX PLANCK INSTITUTE
FOR DYNAMICS OF COMPLEX
TECHNICAL SYSTEMS
MAGDEBURG
20 February 2012
Eigenvalue Algorithms for SymmetricHierarchical Matrices
Thomas Mach
Max Planck Institute for Dynamics of Complex Technical SystemsComputational Methods in Systems and Control Theory
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Eigenvalue Problem
Definition
The pair (λ, v) ∈ R× Rn is called an eigenpair of the symmetricmatrix M = MT ∈ Rn×n, if
Mv = vλ.
The set Λ(M) = {λ|∃v : (λ, v) eigenpair of M} is the spectrumof M.
Similarity Transformation
Λ(M) = Λ(P−1MP) ∀P invertible
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Classification of Eigenvalue Problems[Golub, Van der Vorst ’00]
Is M real or complex?
M ∈ Rn×n
Special properties (symmetric, Hermitian, skew-symmetric orunitary)?symmetric: M = MT
Further structure? Yeah.M ∈ H(TI× I, k) ⇒ see next slide
Which eigenvalues required?some (inner) or all eigenvalues
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Classification of Eigenvalue Problems[Golub, Van der Vorst ’00]
Is M real or complex?M ∈ Rn×n
Special properties (symmetric, Hermitian, skew-symmetric orunitary)?symmetric: M = MT
Further structure? Yeah.M ∈ H(TI× I, k) ⇒ see next slide
Which eigenvalues required?some (inner) or all eigenvalues
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Classification of Eigenvalue Problems[Golub, Van der Vorst ’00]
Is M real or complex?M ∈ Rn×n
Special properties (symmetric, Hermitian, skew-symmetric orunitary)?
symmetric: M = MT
Further structure? Yeah.M ∈ H(TI× I, k) ⇒ see next slide
Which eigenvalues required?some (inner) or all eigenvalues
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Classification of Eigenvalue Problems[Golub, Van der Vorst ’00]
Is M real or complex?M ∈ Rn×n
Special properties (symmetric, Hermitian, skew-symmetric orunitary)?symmetric: M = MT
Further structure? Yeah.M ∈ H(TI× I, k) ⇒ see next slide
Which eigenvalues required?some (inner) or all eigenvalues
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Classification of Eigenvalue Problems[Golub, Van der Vorst ’00]
Is M real or complex?M ∈ Rn×n
Special properties (symmetric, Hermitian, skew-symmetric orunitary)?symmetric: M = MT
Further structure?
Yeah.M ∈ H(TI× I, k) ⇒ see next slide
Which eigenvalues required?some (inner) or all eigenvalues
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Classification of Eigenvalue Problems[Golub, Van der Vorst ’00]
Is M real or complex?M ∈ Rn×n
Special properties (symmetric, Hermitian, skew-symmetric orunitary)?symmetric: M = MT
Further structure? Yeah.
M ∈ H(TI× I, k) ⇒ see next slide
Which eigenvalues required?some (inner) or all eigenvalues
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Classification of Eigenvalue Problems[Golub, Van der Vorst ’00]
Is M real or complex?M ∈ Rn×n
Special properties (symmetric, Hermitian, skew-symmetric orunitary)?symmetric: M = MT
Further structure? Yeah.M ∈ H(TI× I, k) ⇒ see next slide
Which eigenvalues required?some (inner) or all eigenvalues
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Classification of Eigenvalue Problems[Golub, Van der Vorst ’00]
Is M real or complex?M ∈ Rn×n
Special properties (symmetric, Hermitian, skew-symmetric orunitary)?symmetric: M = MT
Further structure? Yeah.M ∈ H(TI× I, k) ⇒ see next slide
Which eigenvalues required?
some (inner) or all eigenvalues
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Classification of Eigenvalue Problems[Golub, Van der Vorst ’00]
Is M real or complex?M ∈ Rn×n
Special properties (symmetric, Hermitian, skew-symmetric orunitary)?symmetric: M = MT
Further structure? Yeah.M ∈ H(TI× I, k) ⇒ see next slide
Which eigenvalues required?some (inner) or all eigenvalues
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
H-Matrices [Hackbusch 1998]
Some dense matrices, e.g. BEM or FEM, can be approximated byH-matrices in a data-sparse manner.
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
TheoremAdaption of [Fasino ’05/Plestenjak, Van Barel, Van Camp ’08]
M = diag (d) +∑r
i=1
(tril(uiv
Ti
)+ triu
(viu
Ti
))
Structure Preservation of dpss Matrices
Let M be a symmetric positive definite diagonal plus semiseparablematrix, with a decomposition as in the definition. The Choleskyfactor L of M = LLT can be written in the form
L = diag(d)
+∑r
i=1 tril(ui v
Ti
).
Multiplying the Cholesky factors in reverse order gives the nextiterate N = LTL of the LR Cholesky algorithm. The matrix N hasthe same form as M,
N = diag(d)
+∑r
i=1
(tril(ui v
Ti
)+ triu
(vi u
Ti
)).
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
TheoremAdaption of [Fasino ’05/Plestenjak, Van Barel, Van Camp ’08]
M = diag (d) +∑r
i=1
(tril(uiv
Ti
)+ triu
(viu
Ti
))Structure Preservation of dpss Matrices
Let M be a symmetric positive definite diagonal plus semiseparablematrix, with a decomposition as in the definition. The Choleskyfactor L of M = LLT can be written in the form
L = diag(d)
+∑r
i=1 tril(ui v
Ti
).
Multiplying the Cholesky factors in reverse order gives the nextiterate N = LTL of the LR Cholesky algorithm. The matrix N hasthe same form as M,
N = diag(d)
+∑r
i=1
(tril(ui v
Ti
)+ triu
(vi u
Ti
)).
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Proof Idea
=
L1:p−1,1:p−1LTp,1:p−1 = M1:p−1,p =
∑i
viuTi
⇒ L1:p−1,1:p−1 vi |1:p−1 = vi |1:p−1 and Lp,1:p−1 =∑i
ui |p vTi
∣∣∣1:p−1
dp +∑i
ui |p vi |p =Lpp =√Mpp − Lp,1:p−1LTp,1:p−1
L is a dpss matrix.
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Proof Idea
N = LTL =
(diag
(d)
+∑i
tril(ui v
Ti
))T
(diag
(d)
+∑i
tril(ui v
Ti
))
ui =(Z + diag
(d))
ui , with
Zp,: =∑j
vj |p[0 · · · 0 uj |p uj |p+1 · · · uj |n
]tril (N,−1) =
∑i
tril((
diag(d)ui + Zui)vTi ,−1
)=∑i
tril(ui v
Ti ,−1
)N is a dpss matrix.
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Structure of u and v
M = diag (d) +r∑
i=1
tril(uiv
Ti
)+ . . .
N = diag (d) +r∑
i=1
tril(ui v
Ti
)+ . . .
vi =
0...0∗...∗0...0
vi =
0...0∗...∗*...*
ui =
0...0∗...∗0...0
ui =
*...*∗...∗0...0
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Hierarchical Matrices
rank (Ma:b,c:d) = k Ma:b,c:d = ABT
uTir =[0 · · · 0 AT
j ,r 0 · · · 0]
vTir =[0 · · · 0 BT
j ,r 0 · · · 0], r = 1, . . . , k
uTir =[∗ · · · ∗ ∗ 0 · · · 0
]vTir =
[0 · · · 0 ∗ ∗ · · · ∗
]
tril(ui v
Ti
)=
00 00 0 00 0 0 00 ∗ ∗ 0 00 ∗ ∗ 0 0 00 0 0 0 0 0 0
tril
(ui v
Ti
)=
00 ∗0 ∗ ∗0 ∗ ∗ ∗0 ∗ ∗ ∗ ∗0 ∗ ∗ ∗ ∗ ∗0 0 0 0 0 0 0
The structure of hierarchical matrices is not preserved under LRCholesky transformations.
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Hierarchical Matrices
rank (Ma:b,c:d) = k Ma:b,c:d = ABT
uTir =[0 · · · 0 AT
j ,r 0 · · · 0]
vTir =[0 · · · 0 BT
j ,r 0 · · · 0], r = 1, . . . , k
uTir =[∗ · · · ∗ ∗ 0 · · · 0
]vTir =
[0 · · · 0 ∗ ∗ · · · ∗
]
tril(ui v
Ti
)=
00 00 0 00 0 0 00 ∗ ∗ 0 00 ∗ ∗ 0 0 00 0 0 0 0 0 0
tril
(ui v
Ti
)=
00 ∗0 ∗ ∗0 ∗ ∗ ∗0 ∗ ∗ ∗ ∗0 ∗ ∗ ∗ ∗ ∗0 0 0 0 0 0 0
The structure of hierarchical matrices is not preserved under LRCholesky transformations.
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Example - H-Fill-In
32 8
8 32
4
4
4
4
32 8
8 32
8
8
8
8
32 8
8 32
4
4
4
4
32 8
8 32
4
4
4
4
4
4
4
4
32 8
8 32
4
4
4
4
32 8
8 32
8
8
8
8
32 8
8 32
4
4
4
4
32 8
8 32
8
8
8
8
8
8
8
8
32 8
8 32
4
4
4
4
32 8
8 32
8
8
8
8
32 8
8 32
4
4
4
4
32 8
8 32
4
4
4
4
4
4
4
4
32 8
8 32
4
4
4
4
32 8
8 32
8
8
8
8
32 8
8 32
4
4
4
4
32 8
8 32
32 11
11 32
4
10 11
4 10
11
32 14
14 32
8
184 4
15 8
8
18
4 15
4 8
32 14
14 32
11 5
17 14
11 17
5 14
32 20
20 32
4
8 4
188 7
9 5
15 13 10
4 8
4
18
89 15
5 13
7 10
32 14
14 32
7 4
10 12
7 10
4 12
32 11
11 32
4 4
14 7 5
143 3
11 4
4 14
4 7 14
53 11
3 4
32 20
20 32
14 6
18 13
14 18
6 13
32 15
15 32
8
16 8
26 8
16 8
8
16
8
268
16
8
32 15
15 32
11 4
18 14
11 18
4 14
32 20
20 32
4 3
11 3 4
188 7
17 9
4 11
3 3 18
48 17
7 9
32 15
15 32
11 6
11 9
11 11
6 9
32 20
20 32
7 5
12 4
14 8 7
22 4
8 4
712 14
4 8
5 7 224 8
4
32 19
19 32
14 4
20 13
14 20
4 13
32 15
15 32
6 4
15 4
21 8
6 15
4 4 21
8
32 18
18 32
11
14 4
11 14
4
32 11
11 32
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
H`-Matrices
A8BT8
A4BT4
A12BT12
A2BT2
A6BT6
A10BT10
A14BT14
B8AT8
B4AT4
B12AT12
B2AT2
B6AT6
B10AT10
B14AT14
F1
F3
F5
F7
F9
F11
F13
F15
⇒ rank bounded by `k instead of k⇒ total storage required by the low-rank parts of M is increasedonly from 2nk` to 2nk `(`−1)2
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
H`-Matrices
I
F1
F3
F5
F7
F9
F11
F13
F15
⇒ rank bounded by `k instead of k⇒ total storage required by the low-rank parts of M is increasedonly from 2nk` to 2nk `(`−1)2
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
H`-Matrices
I
I
I
I
I
I
I
F1
F3
F5
F7
F9
F11
F13
F15
⇒ rank bounded by `k instead of k⇒ total storage required by the low-rank parts of M is increasedonly from 2nk` to 2nk `(`−1)2
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
H`-Matrices
I
II
II
I
I
I
I
F1
F3
F5
F7
F9
F11
F13
F15
⇒ rank bounded by `k instead of k⇒ total storage required by the low-rank parts of M is increasedonly from 2nk` to 2nk `(`−1)2
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
H`-Matrices
I
II
II
II
II
II
II
F1
F3
F5
F7
F9
F11
F13
F15
⇒ rank bounded by `k instead of k⇒ total storage required by the low-rank parts of M is increasedonly from 2nk` to 2nk `(`−1)2
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
H`-Matrices
I
II
II
III
III
III
III
F1
F3
F5
F7
F9
F11
F13
F15
⇒ rank bounded by `k instead of k⇒ total storage required by the low-rank parts of M is increasedonly from 2nk` to 2nk `(`−1)2
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
H`-Matrices
I
II
II
III
III
III
III
F1
F3
F5
F7
F9
F11
F13
F15
⇒ rank bounded by `k instead of k⇒ total storage required by the low-rank parts of M is increasedonly from 2nk` to 2nk `(`−1)2
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Computation Time H`-Matrices
10−1
101
103
105
107
CP
Uti
me
ins
H-LR H`(1)
H-LR H`(2)dsyev
O(n2 log2 n)
O(n3)
O(n2)
102 103 104102103104105
#It
erat
ion
s
# It. H`(1)
# It. H`(2)
O(n)
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Slicing the Spectrum
Slicing the Spectrum
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Bisectioning [Parlett ’80]
-6 -4 -2 -1 0 1 2 4 6
b0 − a0 ≈ 2 ‖M‖2∣∣∣λi − λi ∣∣∣ < ε ⇔ bn − an < 2ε
bi+1 − ai+1 = 12 (bi − ai )
⇒ O (log2(‖M‖2 /ε))
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Bisectioning [Parlett ’80]
λ3 = ?
-6 -4 -2 -1 0 1 2 4 6
-6 -4 -2 -1 0 1 2 4 6
b0 − a0 ≈ 2 ‖M‖2∣∣∣λi − λi ∣∣∣ < ε ⇔ bn − an < 2ε
bi+1 − ai+1 = 12 (bi − ai )
⇒ O (log2(‖M‖2 /ε))
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Bisectioning [Parlett ’80]
λ3 = ?
-6 -4 -2 -1 0 1 2 4 6
-6 -4 -2 -1 0 1 2 4 6
a0 = −6.5 b0 = 5.5
b0 − a0 ≈ 2 ‖M‖2∣∣∣λi − λi ∣∣∣ < ε ⇔ bn − an < 2ε
bi+1 − ai+1 = 12 (bi − ai )
⇒ O (log2(‖M‖2 /ε))
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Bisectioning [Parlett ’80]
λ3 = ?
-6 -4 -2 -1 0 1 2 4 6
a0 = −6.5 b0 = 5.5
-6 -4 -2 -1 0 1 2 4 6
a0 = −6.5 b0 = 5.5µ1 = −0.5
b0 − a0 ≈ 2 ‖M‖2∣∣∣λi − λi ∣∣∣ < ε ⇔ bn − an < 2ε
bi+1 − ai+1 = 12 (bi − ai )
⇒ O (log2(‖M‖2 /ε))
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Bisectioning [Parlett ’80]
λ3 = ?
-6 -4 -2 -1 0 1 2 4 6
a0 = −6.5 b0 = 5.5µ1 = −0.5
-6 -4 -2 -1 0 1 2 4 6
a0 = −6.5 b0 = 5.5µ1 = −0.5
ν(−0.5) = 4
b0 − a0 ≈ 2 ‖M‖2∣∣∣λi − λi ∣∣∣ < ε ⇔ bn − an < 2ε
bi+1 − ai+1 = 12 (bi − ai )
⇒ O (log2(‖M‖2 /ε))
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Bisectioning [Parlett ’80]
λ3 = ?
-6 -4 -2 -1 0 1 2 4 6
a0 = −6.5 b0 = 5.5µ1 = −0.5
ν(−0.5) = 4
-6 -4 -2 -1 0 1 2 4 6
a1 = −6.5 b1 = −0.5µ2 = −3.5
ν(−3.5) = 2
b0 − a0 ≈ 2 ‖M‖2∣∣∣λi − λi ∣∣∣ < ε ⇔ bn − an < 2ε
bi+1 − ai+1 = 12 (bi − ai )
⇒ O (log2(‖M‖2 /ε))
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Bisectioning [Parlett ’80]
λ3 = ?
-6 -4 -2 -1 0 1 2 4 6
a1 = −6.5 b1 = −0.5µ2 = −3.5
ν(−3.5) = 2
-6 -4 -2 -1 0 1 2 4 6
a2 = −3.5 b2 = −0.5µ3 = −2
ν(−2) = 4
b0 − a0 ≈ 2 ‖M‖2∣∣∣λi − λi ∣∣∣ < ε ⇔ bn − an < 2ε
bi+1 − ai+1 = 12 (bi − ai )
⇒ O (log2(‖M‖2 /ε))
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Bisectioning [Parlett ’80]
λ3 ∈ [−3.5,−2.75], λ3 = −3.125
-6 -4 -2 -1 0 1 2 4 6
a2 = −3.5 b2 = −0.5µ3 = −2
ν(−2) = 4
-6 -4 -2 -1 0 1 2 4 6
a3 = −3.5 b3 = −2µ4 = −2.75
ν(−2.75) = 3
b0 − a0 ≈ 2 ‖M‖2∣∣∣λi − λi ∣∣∣ < ε ⇔ bn − an < 2ε
bi+1 − ai+1 = 12 (bi − ai )
⇒ O (log2(‖M‖2 /ε))
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Evaluation of ν(µ)
Sylvester’s Law of Inertia
Each matrix M is congruent to a matrix
diag(−Iν , Irank(M)−ν , 0n−rank(M)
),
where ν is the number of negative eigenvalues. The triple
(ν, rank (M)− ν, n − rank (M))
is called the inertia of M.
M = LDLT ⇒ ν(M) = ν(D)
M − µI = LµDµLTµ ⇒ ν(µ) = ν(M − µI ) = ν(Dµ)
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Complexity
Flops per factorization (for H`-matrices):
O(nk2 (log n)4
).
Factorization per eigenvalue:
O (log(‖M‖2 /ε)) .
Flops per eigenvalue:
O(nk2 (log n)4 log ‖M‖2 /ε
).
Slicing the whole spectrum:
O(n2k2 (log n)4 log(‖M‖2 /ε)
).
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Absolute Error for H5(1)-Matrix
0 100 200 300 400 500 600 700 800 900 1 000
10−11
10−10
10−9
10−8
10−7
Eigenvalue
Ab
solu
teer
ror
abs. error12εev
Absolute error |λi − λi | for the 1 024× 1 024 H5(1)-matrix, εev = 10−8.
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
CPU Time for 10 Eigenvalues
104 105 106100
101
102
103
Dimension
Tim
ein
sO(n (log n)4) O(n (log n)2) O(n log n)
O(n) Computation Time
Computation times for 10 eigenvalues of H`(1)-matrices (` = 8, . . . , 15).
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Parallelization
-6 -4 -2 -1 0 1 2 4 6
a0 = −6.5 b0 = 5.5µ1 = −0.5
ν(−0.5) = 4
-6 -4 -2 -1 0 1 2 4 6
a11 = −6.5 b11 = −0.5 = a21µ12 = −3.5
b21 = 5.5
µ22 = 2.5
ν(−3.5) = 2 ν(2.5) = 9
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Parallelization Speedup
OpenMP:
Name n t1 core in s t1c/t2c t1c/t4c t8 core t1c/t8c
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
H-Matrices
Shifting affects the structure.
The LDLT factorization is of almost linear complexity only forthe original H-matrix and not necessarily for the shifted ones.
For H`-matrices we use the exact LDLT factorization.For general H-matrices: The truncation introduces errors inthe LDLT factorization — the computed D may have anotherinertia⇒ some eigenvalues may lie outside the computed interval⇒ larger errors
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Preconditioned Inverse Iteration
Preconditioned InverseIteration for Hierarchical
Matrices
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Preconditioned Inverse Iteration[Knyazev, Neymeyr, et al.]
Definition
The function
µ(x) = µ(x ,M) =xTMx
xT x
is called the Rayleigh quotient.
Minimize the Rayleigh quotient by a gradient method:
xi+1 := xi − α∇µ(xi ), ∇µ(x) =2
xT x(Mx − xµ(x)) ,
+ preconditioning ⇒ update equation:
xi+1 := xi − B−1 (Mxi − xiµ(xi )) .
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Preconditioned Inverse Iteration[Knyazev, Neymeyr, et al.]
Definition
The function
µ(x) = µ(x ,M) =xTMx
xT x
is called the Rayleigh quotient.
Minimize the Rayleigh quotient by a gradient method:
xi+1 := xi − α∇µ(xi ), ∇µ(x) =2
xT x(Mx − xµ(x)) ,
+ preconditioning ⇒ update equation:
xi+1 := xi − B−1 (Mxi − xiµ(xi )) .
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions
Preconditioned Inverse Iteration[Knyazev, Neymeyr, et al.]
Definition
The function
µ(x) = µ(x ,M) =xTMx
xT x
is called the Rayleigh quotient.
Minimize the Rayleigh quotient by a gradient method:
xi+1 := xi − α∇µ(xi ), ∇µ(x) =2
xT x(Mx − xµ(x)) ,
+ preconditioning ⇒ update equation:
xi+1 := xi − B−1 (Mxi − xiµ(xi )) .
Max Planck Institute Magdeburg Thomas Mach, Eigenvalue Algorithms for Symmetric H-Matrices
Hierarchical (H-)Matrices LR Algorithm Slicing Algorithm PINVIT Conclusions