UNIVERSITATISACTA UPSALIENSIS
UPPSALA 2018
Digital Comprehensive Summaries of Uppsala Dissertations from the Faculty of Science and Technology 1652
Matrix-Less Methods for
Computing Eigenvalues of Large Structured Matrices
SVEN-ERIK EKSTRÖM
ISSN 1651-6214 ISBN 978-91-513-0288-1 urn:nbn:se:uu:diva-346735
Dissertation presented at Uppsala University to be publicly examined in 2446 ITC, Lägerhyddsvägen 2, hus 2, Uppsala, Friday, 18 May 2018 at 10:15 for the degree of Doctor of Philosophy. The examination will be conducted in English. Faculty examiner: Professor Lothar Reichel (Department of Mathematical Sciences, Kent State University).
Abstract
Ekström, S.-E. 2018. Matrix-Less Methods for Computing Eigenvalues of Large Structured Matrices. Digital Comprehensive Summaries of Uppsala Dissertations from the Faculty of Science and Technology 1652. 81 pp. Uppsala: Acta Universitatis Upsaliensis.
ISBN 978-91-513-0288-1.
When modeling natural phenomena with linear partial differential equations, the discretized system of equations is in general represented by a matrix. To solve or analyze these systems, we are often interested in the spectral behavior of these matrices. Whenever the matrices of interest are Toeplitz, or Toeplitz-like, we can use the theory of Generalized Locally Toeplitz (GLT) sequences to study the spectrum (eigenvalues). A central concept in the theory of GLT sequences is the so-called symbol, that is, a function associated with a sequence of matrices of increasing size. When sampling the symbol and when the related matrix sequence is Hermitian (or quasi-Hermitian), we obtain an approximation of the spectrum of a matrix of a fixed size and we can therefore see its general behavior. However, the so-computed approximations of the eigenvalues are often affected by errors having magnitude of the reciprocal of the matrix size.
In this thesis we develop novel methods, which we call "matrix-less" since they neither store the matrices of interest nor depend on matrix-vector products, to estimate these errors.
Moreover, we exploit the structures of the considered matrices to efficiently and accurately compute the spectrum.
We begin by considering the errors of the approximate eigenvalues computed by sampling the symbol on a uniform grid, and we conjecture the existence of an asymptotic expansion for these errors. We devise an algorithm to approximate the expansion by using a small number of moderately sized matrices, and we show through numerical experiments the effectiveness of the algorithm. We also show that the same algorithm works for preconditioned matrices, a result which is important in practical applications. Then, we explain how to use the approximated expansion on the whole spectrum for large matrices, whereas in earlier works its applicability was restricted only to certain matrix sizes and to a subset of the spectrum. Next, we demonstrate how to use the so-developed techniques to investigate, solve, and improve the accuracy in the eigenvalue computations for various differential problems discretized by the isogeometric analysis (IgA) method. Lastly, we discuss a class of non-monotone symbols for which we construct the sampling grid yielding exact eigenvalues and eigenvectors.
To summarize, we show, both theoretically and numerically, the applicability of the presented matrix-less methods for a wide variety of problems.
Keywords: Toeplitz matrices, eigenvalues, eigenvalue asymptotics, polynomial interpolation, extrapolation, generating function and spectral symbol
Sven-Erik Ekström, Department of Information Technology, Division of Scientific Computing, Box 337, Uppsala University, SE-751 05 Uppsala, Sweden.
© Sven-Erik Ekström 2018 ISSN 1651-6214
ISBN 978-91-513-0288-1
urn:nbn:se:uu:diva-346735 (http://urn.kb.se/resolve?urn=urn:nbn:se:uu:diva-346735)
https://doi.org/10.1080/10586458.2017.1320241
https://doi.org/10.1007/s11075-017-0404-z
https://doi.org/10.1007/s11075-018-0508-0
−∆u = λu
http://www.it.uu.se/research/publications/reports/2017-016
https://doi.org/10.1002/nla.2137
http://www.it.uu.se/research/publications/reports/2018-005
A u = b,
A u b
u
Anun= bn,
An ∈ Cn×n A un ∈ Cn
bn ∈ Cn
n An
An
Anun = bn
An
An An An
An
An
An Ak
k n
n× n
[ai−j]ni,j=1=
⎡
⎢⎢
⎢⎢
⎢⎢
⎢⎢
⎣
a0 a−1 a−2 . . . a1−n a1
a2
a−2 a−1 an−1 . . . a2 a1 a0
⎤
⎥⎥
⎥⎥
⎥⎥
⎥⎥
⎦ .
f ∈ L1(−π, π)
{Tn(f)}n Tn(f) = [ ˆfi−j]ni,j=1 fˆω f
fˆω= 1 2π
' π
−πf(θ)e−iωθdθ, i2 = −1, ω ∈ Z.
f
{Tn(f)}n {Tn(f)}n
f
Tn(f) T(f) = [ ˆfi−j]∞i,j=1= [ ˆfi−j]∞i,j=−∞
f Tn(f)
An = A∗n n f f(θ) = f(−θ) ∈ R
Tn(f) n
Tn(f) 2p + 1
(Tn(f))i=(0, . . . , 0, ˆfp, . . . , ˆf1, ˆf0, ˆf−1, . . . , ˆf−p,0, . . . , 0),
f(θ) = *p
ω=−p
fˆωeiωθ.
fˆω = ˆf−ω ω = 1, . . . , p fˆω(eiωθ+ e−iωθ) = 2 ˆfωcos(ωθ)
f(θ) = ˆf0+ 2*p
ω=1
fˆωcos(ωθ).
fˆω ∈ R ω = 0, . . . p
n
fˆ−p fˆ0 fˆp p
f(θ) = 2 − 2 cos(θ).
f(θ) fˆ0 = 2 ˆf1 = ˆf−1 = −1 fˆω = 0 ω ̸= {−1, 0, 1} 2p + 1 = 3 f(θ)
p= 1
n= 5 f
T5(f) =
⎡
⎢⎢
⎢⎢
⎢⎢
⎣
fˆ0 fˆ−1 0 0 0 fˆ1 fˆ0 fˆ−1 0 0 0 ˆf1 fˆ0 fˆ−1 0 0 0 fˆ1 fˆ0 fˆ−1 0 0 0 fˆ1 fˆ0
⎤
⎥⎥
⎥⎥
⎥⎥
⎦
=
⎡
⎢⎢
⎢⎢
⎣
2 −1 0 0 0
−1 2 −1 0 0 0 −1 2 −1 0 0 0 −1 2 −1 0 0 0 −1 2
⎤
⎥⎥
⎥⎥
⎦.
Tn(f)
−∆u = −∂2u
∂x2 ≈ 1
h2Tn(f)un = 1 h2
⎡
⎢⎢
⎢⎢
⎢⎢
⎢⎢
⎢⎢
⎢⎣
2u1− u2
−u1+ 2u2− u3
−uj−1+ 2uj− uj+1
−un−2+ 2un−1− un
−un−1+ 2un
⎤
⎥⎥
⎥⎥
⎥⎥
⎥⎥
⎥⎥
⎥⎦ ,
h= 1/(n + 1) un = [u1, . . . , un]T
A5=
⎡
⎢⎢
⎢⎢
⎣
−1 2 −1 0 0
0 −1 2 −1 0
0 0 −1 2 −1
0 0 0 −1 2
0 0 0 0 −1
⎤
⎥⎥
⎥⎥
⎦=
⎡
⎢⎢
⎢⎢
⎢⎢
⎣
fˆ0 fˆ−1 fˆ−2 0 0 0 fˆ0 fˆ−1 fˆ−2 0 0 0 fˆ0 fˆ−1 fˆ−2 0 0 0 fˆ0 fˆ−1 0 0 0 0 fˆ0
⎤
⎥⎥
⎥⎥
⎥⎥
⎦ .
A5 = T5(f)
f(θ) = *p
ω=−p
fˆωeiωθ= −1 + 2e−iθ− e−i2θ,
p= 2 ˆf1 = ˆf2 = 0 ˆf0 = ˆf−2 = −1 fˆ−1 = 2
−∆u = −∂2u
∂x2 ≈ 1
h2Tn(f)un = 1 h2
⎡
⎢⎢
⎢⎢
⎢⎢
⎢⎢
⎢⎢
⎢⎣
−u1+ 2u2− u3
−u2+ 2u3− u4
−uj+ 2uj+1− uj+2
−un−1+ 2un
−un
⎤
⎥⎥
⎥⎥
⎥⎥
⎥⎥
⎥⎥
⎥⎦ ,
h = 1/(n + 1) un = [u1, . . . , un]T
f ∈ L∞(−π, π) Tn(f) λj(Tn(f)) j = 1, . . . , n
nlim→∞
1 n
*n j=1
F(λj(Tn(f))) = 1 2π
' π
−π
F(f(θ))dθ,
F : R → C
f ∈ L∞(−π, π) σj(Tn(f)), j = 1, . . . , n
n→∞lim 1 n
*n j=1
F(σj(Tn(f))) = 1 2π
' π
−π
F (|f(θ)|) dθ, F : R → C
f Tn(f)
f ∈ L1(−π, π) f ∈ L1(−π, π)
f f : [−π, π] → C
A B U0
C\E R(f) E R(f )
f (−π) f (θd) f (π)
A B
U0
f : [−π, π] → C f ∈ L∞(−π, π)
f θd Z = C\U0
Tn(f) Tn(f) n= 500
E R(f )
f Z= C\U0 = E R(f)∪A∪B
Tn(f)
ε > 0 Tn(f)
ε Z o(n) n → ∞
Tn(f) f
n= 500 Z
f E R(f )
f Tn(f)
(mf, Mf) mf Mf
f Mf > 0 f
Tn(f)
p ∈ [1, ∞]
∥ · ∥p p
p ∥ · ∥∞ = ∥ · ∥
A A†
A
{An}n
An ∈ Cn×n n {An}n
An
{An}n ∼σ f {An}n
f : D ⊂ Rk → C D 0 < µk(D) < ∞
nlim→∞
1 n
*n j=1
F(σj(An)) = 1 µk(D)
'
D
F (|f(y1, . . . , yk)|) dy1. . .dyk,
F ∈ C0(C) µk Rk C0(C)
{An}n ∼λf
{An}n f
nlim→∞
1 n
*n j=1
F(λj(An)) = 1 µk(D)
'
D
F(f(y1, . . . , yk)) dy1. . .dyk,
F ∈ C0(C)
{Zn}n
{Zn} ∼σ 0 ∥Zn∥ → 0 {Zn}n ∼σ 0
n ∈ N a : [0, 1] → C
Dn(a) a n× n
(Dn(a))i,i= a (i/n) , i= 1, . . . , n.
{An}n
{{Bn,m}n}m {{Bn,m}n}m
{An}n m {Bn,m}n
{An}n An Bn,m
{Bn,m}n −→ {An}n {{Bn,m}n}m {An}n
{An}n
f : [0, 1] × [0, π] → C {An}n∼ f {An}n
f
f : [0, π] → C
{Tn(f)}n∼λ f λj(Tn(f)) Tn(f) f(θ) θj,n j= 1, . . . , n n
λj(Tn(f)) = f(θj,n) + Ej,n,
Ej,n O(h)
h n θj,n [0, π] Ej,n
n→ ∞ O(h)
n θj,n
n j j ∈ {1, . . . , n}
jS ⊆ {1, . . . , n} θjS,n θj,n
j ∈ jS h
τ τ
{An}n ∼ f {An}n ∼σ f An {An}n ∼λf
{An}n ∼ f {An}n
An= Xn+ Yn
∥Xn∥, ∥Yn∥ ≤ C C n
Xn
n→∞lim
∥Yn∥1
n = 0 {An}n ∼λ f
{Tn(f)}n ∼ f(x, θ) = f(θ) f ∈ L1(−π, π) {Dn(a)}n ∼ f(x, θ) = a(x) a : [0, 1] → C {Zn}n∼ f(x, θ) = 0 {Zn}n ∼σ 0 {An}n ∼ f {A∗n}n ∼ f¯ A∗n
An
{An}n ∼ f {Bn}n ∼ g An Bn {αAn+ βBn}n ∼ αf+ βg α, β∈ C {AnBn}n ∼ f g
{An}n ∼ f f ̸= 0 {A†n}n∼ f−1 {An}n ∼ f An
{F (An)}n ∼ F(f) F : C → C
{An}n ∼ f
{Bn,m}n ∼ fm {Bn,m}n −→ {An}n fm → f [0, 1] × [−π, π]
τn
j h
τn jπ/(n + 1) 1, . . . , n 1/(n + 1) τn(0, 0) τn−1 jπ/n 1, . . . , n − 1 1/n τn−1(0, 0) τn−2 jπ/(n − 1) 1, . . . , n − 2 1/(n − 1) τn−2(0, 0)
τn−10 (j − 1)π/n 1, . . . , n 1/n τn(1, 1) = 0 ∪ τn−1(0, 0) τnπ−1 jπ/n 1, . . . , n 1/n τn(−1, −1) = τn−1(0, 0) ∪ π τn0,π−2 (j − 1)π/(n − 1) 1, . . . , n 1/(n − 1) 0 ∪ τn−2(0, 0) ∪ π
τn−10,π (j − 1)π/n 1, . . . , n + 1 1/n 0 ∪ τn−1(0, 0) ∪ π
An τ A−1n
τ τ
τn
fˆ0, ˆf1, ˆf−1∈ C τ
f(θ) = ˆf0+ ˆf1eiθ+ ˆf−1e−iθ. Tn(f) g Tn(f) ∼ Tn(g)
λj(Tn(f)) = g(θj,n) = ˆf0+ 2+fˆ1fˆ−1cos(θj,n), θj,n τn
λj(Tn(f))
xj,n=(x(j,n)1 , . . . , x(j,n)k , . . . , x(j,n)n )T,
x(j,n)k =,+fˆ1/ ˆf−1 -k
sin (kθj,n) .
+fˆ1fˆ−1 +fˆ1/ ˆf−1
fˆ1 =...fˆ1...eiφ1 fˆ−1=...fˆ−1...eiφ−1 φ1, φ−1∈ [0, 2π]
+fˆ1fˆ−1=+fˆ1
+fˆ−1=/...fˆ1
..
....fˆ−1...ei(φ1+φ−1)/2, +fˆ1/ ˆf−1=+fˆ1/
+fˆ−1=/...fˆ1.../...fˆ−1...ei(φ1−φ−1)/2.
fˆ1 = ˆf−1= −1 = eiπ +(−1)(−1) =√
−1√
−1 = i · i = −1, +(−1)/(−1) =√
−1/√
−1 = i/i = 1.
Tn(f) n = 5 f(θ) = 2 − 2 cos(θ) g(θ) = f(θ) τn θj,5 = jπ/6 j= 1, . . . , 5
T5(f) T5(f)xj,5= λj(T5(f))xj,5 j= 1, . . . , 5
T5(f) f(θ) = 2 − 2 cos(θ) j λj(T5(f)) xj,5
1 2 − 2 cos (πh) [sin (πh) , sin (2πh) , sin (3πh) , sin (4πh) , sin (5πh) ]T 2 2 − 2 cos (2πh) [sin (2πh) , sin (4πh) , sin (6πh) , sin (8πh) , sin (10πh)]T 3 2 − 2 cos (3πh) [sin (3πh) , sin (6πh) , sin (9πh) , sin (12πh) , sin (15πh)]T 4 2 − 2 cos (4πh) [sin (4πh) , sin (8πh) , sin (12πh) , sin (16πh) , sin (20πh)]T 5 2 − 2 cos (5πh) [sin (5πh) , sin (10πh) , sin (15πh) , sin (20πh) , sin (25πh)]T
f(θ) = 2 − 2 cos(θ) θ ∈ [0, π]
λj(T5(f)) f(θ)
τ5
Tn(f)
{Tn(f)}n ∼ f
{Tn(f)}n ∼σ,λf Tn(f)
τ
T˜n(f) τn(1, 1)
τn(1, 1) = τn0−1 f
T˜n(f) = Tn(f) + Rn Tn(f)
f Rn Rn
(Rn)1,1 = ˆf1 = −1 (Rn)n,n = ˆf1 = −1 T˜n(f) τn(−1, −1)
τn(−1, −1) = τnπ−1 f
T˜n(f) = Tn(f) − Rn Rn
Tn(f)
{Tn(f)}n ∼ f, {Tn(f)}n ∼σ f, {Tn(f)}n ̸∼λ f.
{Tn(f)}n f
n→ ∞ Ej,n= λj(Tn(f)) − f(θj,n)
f {Tn(f)}n
f(θ) = 2 − eiθ+ 2ie−iθ, n= 5
T5(f) =
⎡
⎢⎢
⎢⎢
⎣
2 2i 0 0 0
−1 2 2i 0 0 0 −1 2 2i 0 0 0 −1 2 2i 0 0 0 −1 2
⎤
⎥⎥
⎥⎥
⎦.
g(θ) Tn(f) ∼ Tn(g) n
f n
g
g(θ) = 2 + 2√
2ei3π/4cos(θ), n= 5
T5(g) =
⎡
⎢⎢
⎢⎢
⎢⎣
2 √2ei3π/4 0 0 0
√2ei3π/4 2 √2ei3π/4 0 0
0 √2ei3π/4 2 √2ei3π/4 0
0 0 √2ei3π/4 2 √2ei3π/4
0 0 0 √2ei3π/4 2
⎤
⎥⎥
⎥⎥
⎥⎦ .
Tn(g) Tn(f)
Dn Tn(g) = DnTn(f)Dn−1 fˆ1fˆ−1̸= 0
n= 5 D5
D5 =
⎡
⎢⎢
⎢⎢
⎣
1 0 0 0 0 0 γ 0 0 0 0 0 γ2 0 0 0 0 0 γ3 0 0 0 0 0 γ4
⎤
⎥⎥
⎥⎥
⎦,
γ = +fˆ−1/ ˆf1 = √2i/√−1 = 1 − i
{Tn(f)}n ∼ ,σ f {Tn(f)}n ̸∼λf {Tn(f)}n ∼λg {Tn(g)}n ∼ ,σ,λg
f
g g τ5
T5(f) ∼ T5(g)
|f(θ)| |g(θ)| θ∈ [−π, π]
Tn(f) f : [−π, π] → C
g : [−π, π] → C n Tn(f)
Tn(g) f τ5
g τ5
T5(f) T5(g)
Tn(f)
Tn(g) |f(θ)| |g(θ)|
θ ∈ [−π, π] |f| |g|
θ∈ [−π, π]
τ5 [−π, 0] ¯θj,5
|f(¯θj,5)| σj(T5(f))
T5(g) (A∗A = AA∗) σj(T5(g))
|λj(T5(g))| ¯θj,n τ5
T5(g) |g(θ)| |g(¯θj,n)|
0−(a(x)u′(x))′= b(x), x ∈ (0, 1), u(x) = 0, x∈ {0, 1},
a(x) b(x) a(x) = 1 −u′′(x)
−(a(x)u′(x))′ = −a′(x)u′(x) − a(x)u′′(x) ≈ Anun = bn,
An =
⎡
⎢⎢
⎢⎢
⎢⎢
⎣
a1/2+ a3/2 −a3/2
−a3/2 a3/2+ a5/2 −a5/2
−a5/2
−an−1/2
−an−1/2 an−1/2+ an+1/2
⎤
⎥⎥
⎥⎥
⎥⎥
⎦ ,
(An)i=(0, . . . , 0, −ai−1/2, ai−1/2+ ai+1/2,−ai+1/2,0, . . . , 0), ai = a(xi) xi = ih i = 0, . . . , n + 1 h = 1/(n + 1) bi = b(xi) un = [u1, . . . , un]T bn= [b1, . . . , bn]T
{An}n
Dn(a) a(x)
Tn(f) f(θ) = 2 − 2 cos(θ)
Dn(a) =
⎡
⎢⎢
⎢⎣ a1
a2
an
⎤
⎥⎥
⎥⎦, Tn(f) =
⎡
⎢⎢
⎢⎢
⎣
2 −1
−1
−1
−1 2
⎤
⎥⎥
⎥⎥
⎦,
Dn(a)Tn(f) =
⎡
⎢⎢
⎢⎢
⎢⎢
⎣
2a1 −a1
−a2 2a2 −a2
−a3
−an−1
−an 2an
⎤
⎥⎥
⎥⎥
⎥⎥
⎦ .
An= Dn(a)Tn(2 − 2 cos(θ)) + En
(En)i,j=
⎧⎪
⎪⎪
⎪⎨
⎪⎪
⎪⎪
⎩
a(2i−1)/2− 2a2i/2+ a(2i+1)/2, i= j, i = 1, . . . , n, a2i/2− a(2i−1)/2, i= j + 1, i = 2, . . . , n, a2i/2− a(2i+1)/2, i= j − 1, i = 1, . . . , n − 1,
0, .
a(x)
En ∥En∥ → 0 n → ∞
{En}n ∼σ0 {En}n {En}n∼ 0 {Dn(a)}n ∼ a(x), {Tn(f)}n ∼ f(θ), {En}n ∼ 0
{An}n ∼ a(x)(2 − 2 cos(θ)) An
{An}n ∼σ,λa(x)(2 − 2 cos(θ))
a(x)
a(x) =
⎧⎪
⎪⎨
⎪⎪
⎩
2 + x/2, x∈ [0, 1/3), eπx/2, x∈ [1/3, 2/3), 2 + cos(3x), x ∈ [2/3, 1].
a(x)
An Dn(a)Tn(f) n = {5, 1000}
ξr r= 100 ξr(θj,5)
a(x) A5
D5(a)T5(f)
ξ100
1002 = 10000 τ5 ξr
r
Gr= {(i/n, j/(n + 1)); i, j = 1, . . . , r} ,
a(x)f(θ) (x, θ) ∈ Gr r2 ξr
ξr ξ(θ) r→ ∞
ξr Dn(a)Tn(f) ξ(θ)
ξ(θ) θj,n
ξr θj,n
n= 1000 An Dn(a)Tn(f)
ξ100