inexact inverse iteration and tuned preconditioning
TRANSCRIPT
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Inexact inverse iteration and tuned preconditioning
Melina Freitag
Department of Mathematical SciencesUniversity of Bath
22nd GAMM-Seminar Leipzig onLarge Scale Eigenvalue Computations
19th January 2006
Joint work with: Alastair Spence, Eero Vainikko
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
1 Motivation
2 Inexact Inverse Iteration
3 Hermitian problems and preconditioning
4 Nonhermitian problems and preconditioning
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Problem and Inverse Iteration
Find an eigenvalue and eigenvector of s.p.d. A:
Ax = λx,
Inverse Iteration:(A − σI)y = x
A large, sparse.
λ λ λλ 4 λn
σ
1 23
Inverse iteration with preconditioned iterative solves
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Convergence ratesMINRES
Inexact Inverse Iteration
for i = 1 to . . . do
choose τ (i), σ(i)
solve‖(A − σ(i)I)y(i) − x(i)‖ ≤ τ (i),
Rescale x(i+1) =y(i)
‖y(i)‖,
Update λ(i+1) = x(i+1)T
Ax(i+1),possibly: update the shift σ(i)
Test: eigenvalue residual r(i+1) = (A − λ(i+1)I)x(i+1).end for
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Convergence ratesMINRES
Error indicator
Error indicator (orthogonal decomposition for symmetric A, Parlett)
x
xθ
1
(i) (i)
(i)
θ (i)
Q x = O (sin ) measure for the error
Eigenvalue residual
C| sin θ(i)| ≤ ‖r(i)‖ ≤ C ′| sin θ(i)|
Note: similar for nonsymmetric case if generalised sin θ is used.
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Convergence ratesMINRES
Error indicator
Error indicator (orthogonal decomposition for symmetric A, Parlett)
x
xθ
1
(i) (i)
(i)
θ (i)
Q x = O (sin ) measure for the error
Eigenvalue residual
C| sin θ(i)| ≤ ‖r(i)‖ ≤ C ′| sin θ(i)|
Note: similar for nonsymmetric case if generalised sin θ is used.
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Convergence ratesMINRES
Convergence rates of inexact inverse iteration
Error in θ (eigenvector)
tan θ(i+1) ≤|λ1 − σ(i)|
|λ2 − σ(i)|T (i)
Exact solves: T (i) = tan θ(i)
Inexact solves T (i) =| sin θ(i) + C1τ
(i)|
| cos θ(i) − C2τ(i)|
Choice of τ
Choice 1: τ (i) = C‖r(i)‖ = O(sin θ(i)) ⇒ T (i) = O(tan θ(i))
Choice 2: τ (i) = constant ⇒ T (i) = O(1)
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Convergence ratesMINRES
Convergence rates of inexact inverse iteration
Error in θ (eigenvector)
tan θ(i+1) ≤|λ1 − σ(i)|
|λ2 − σ(i)|T (i)
Exact solves: T (i) = tan θ(i)
Inexact solves T (i) =| sin θ(i) + C1τ
(i)|
| cos θ(i) − C2τ(i)|
Choice of τ
Choice 1: τ (i) = C‖r(i)‖ = O(sin θ(i)) ⇒ T (i) = O(tan θ(i))
Choice 2: τ (i) = constant ⇒ T (i) = O(1)
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Convergence ratesMINRES
Convergence rates of inexact inverse iteration
Decreasing tolerance τ (i) ≤ C‖r(i)‖ = O(sin θ(i))
1 For decreasing tolerance τ (i) ≤ C‖r(i)‖ = O(sin θ(i)) the inexactmethod recovers the rate of convergence achieved by exact solves.
2 Fixed shift σ: linear convergence. [see Golub/Ye 2000,Berns-Muller/Graham/Spence 2005]
3 Rayleigh quotient shift σ(i) = ρ(x(i)) = x(i)T
Ax(i)
x(i)Tx(i)
: cubic
convergence for A = A∗. [see Smit/Paardekooper 1999,Berns-Muller/Graham/Spence 2005]
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Convergence ratesMINRES
MINRES (A − σI)y = x when A is symmetric
Solving a linear system (A − σI)y = x
MINRES:
‖x − (A − σI)y‖ ≤ 2
(
√
κ − 1
κ + 1
)k−1
‖x‖.
If ‖x − (A − σI)y‖ ≤ τ then
k ≥ 1 + κ
{
log 2 + log‖x‖
τ
}
where κ is the condition number of A − σI .
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Convergence ratesMINRES
MINRES (A − σI)y = x when A is symmetric
Solving a linear system (A − σI)y = x
MINRES:
‖x − (A − σI)y‖ ≤ 2
(
√
κ − 1
κ + 1
)k−1
‖x‖.
If ‖x − (A − σI)y‖ ≤ τ then
k ≥ 1 + κ
{
log 2 + log‖x‖
τ
}
where κ is the condition number of A − σI .
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Convergence ratesMINRES
Unpreconditioned solves with MINRES
Convergence rates for solves with MINRES for simple eigenvalue
If A is positive definite and has a simple eigenvalue then
‖x(i) − (A − σI)y(i)k‖2 ≤ 2
|λ1 − λn|
|λ1 − σ|
(√
κ1 − 1
κ1 + 1
)k−1
‖Qx(i)‖2.
where Q is the orthogonal projection onto span{x2, . . . , xn} and κ1 is
the reduced condition number κ1 =maxi=2,...,n |λi−σ|mini=2,...,n |λi−σ| .
Number of inner solves for each i for ‖x(i) − (A − σ(i)I)y(i)‖ ≤ τ (i)
k(i) ≥ C1 + C2 log
(
‖Qx(i)‖2
|λ1 − σ|τ (i)
)
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Convergence ratesMINRES
Unpreconditioned solves with MINRES
Convergence rates for solves with MINRES for simple eigenvalue
If A is positive definite and has a simple eigenvalue then
‖x(i) − (A − σI)y(i)k‖2 ≤ 2
|λ1 − λn|
|λ1 − σ|
(√
κ1 − 1
κ1 + 1
)k−1
‖Qx(i)‖2.
where Q is the orthogonal projection onto span{x2, . . . , xn} and κ1 is
the reduced condition number κ1 =maxi=2,...,n |λi−σ|mini=2,...,n |λi−σ| .
Number of inner solves for each i for ‖x(i) − (A − σ(i)I)y(i)‖ ≤ τ (i)
k(i) ≥ C1 + C2 log
(
‖Qx(i)‖2
|λ1 − σ|τ (i)
)
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Convergence ratesMINRES
Unpreconditioned solves with MINRES
Convergence rates for solves with MINRES for simple eigenvalue
If A is positive definite and has a simple eigenvalue then
‖x(i) − (A − σI)y(i)k‖2 ≤ 2
|λ1 − λn|
|λ1 − σ|
(√
κ1 − 1
κ1 + 1
)k−1
| sin θ(i)|.
where Q is the orthogonal projection onto span{x2, . . . , xn} and κ1 is
the reduced condition number κ1 =maxi=2,...,n |λi−σ|mini=2,...,n |λi−σ| .
Number of inner solves for each i for ‖x(i) − (A − σ(i)I)y(i)‖ ≤ τ (i)
k(i) ≥ C1 + C2 log
(
| sin θ(i)|
|λ1 − σ|τ (i)
)
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Convergence ratesMINRES
Unpreconditioned solves with MINRES
Number of inner solves for each i
k(i) ≥ C1 + C2 log
(
| sin θ(i)|
|λ1 − σ|τ (i)
)
Example
For fixed shift σ, and τ (i) ≤ C‖r(i)‖ = O(sin θ(i)) the number of innersolves k(i) for each i does not increase with i
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
PreconditioningTuning the preconditionerNumerical ResultsPerturbation theory
Preconditioning
Incomplete Cholesky preconditioning
A = LLT + E
symmetric preconditioning of (A − σI)y(i) = x(i):
L−1(A − σI)L−T y(i) = L−1x(i), y(i) = L−T y(i)
Remarks
1 changes number of inner iterations
k(i) ≥ C1 + C2 log
(
‖L−1‖
|λ1 − σ|τ (i)
)
2 k(i) increases with i for τ (i) ≤ C‖r(i)‖.
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
PreconditioningTuning the preconditionerNumerical ResultsPerturbation theory
Preconditioning
Incomplete Cholesky preconditioning
A = LLT + E
symmetric preconditioning of (A − σI)y(i) = x(i):
L−1(A − σI)L−T y(i) = L−1x(i), y(i) = L−T y(i)
Remarks
1 changes number of inner iterations
k(i) ≥ C1 + C2 log
(
‖L−1‖
|λ1 − σ|τ (i)
)
2 k(i) increases with i for τ (i) ≤ C‖r(i)‖.
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
PreconditioningTuning the preconditionerNumerical ResultsPerturbation theory
Preconditioning
Incomplete Cholesky preconditioning
A = LLT + E
symmetric preconditioning of (A − σI)y(i) = x(i):
L−1(A − σI)L−T y(i) = L−1x(i), y(i) = L−T y(i)
Remarks
1 changes number of inner iterations
k(i) ≥ C1 + C2 log
(
‖L−1‖
|λ1 − σ|τ (i)
)
2 k(i) increases with i for τ (i) ≤ C‖r(i)‖.
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
PreconditioningTuning the preconditionerNumerical ResultsPerturbation theory
Derivation
Aims
1 modify L → L
L−1(A − σI)L−T y(i) = L
−1x(i), y(i) = L−T y(i)
2 minor extra computation cost for L
3 ”nice” RHS L−1x(i) (same behaviour as unpreconditioned solves,
e.g. for fixed shifts k(i) does not increase with i)
Condition
MINRES theory indicates that L−1x(i) should be close to
eigenvector of L−1(A − σI)L−T
Holds if LLT x(i) = Ax(i).
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
PreconditioningTuning the preconditionerNumerical ResultsPerturbation theory
Derivation
Aims
1 modify L → L
L−1(A − σI)L−T y(i) = L
−1x(i), y(i) = L−T y(i)
2 minor extra computation cost for L
3 ”nice” RHS L−1x(i) (same behaviour as unpreconditioned solves,
e.g. for fixed shifts k(i) does not increase with i)
Condition
MINRES theory indicates that L−1x(i) should be close to
eigenvector of L−1(A − σI)L−T
Holds if LLT x(i) = Ax(i).
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
PreconditioningTuning the preconditionerNumerical ResultsPerturbation theory
Derivation
Aims
1 modify L → L
L−1(A − σI)L−T y(i) = L
−1x(i), y(i) = L−T y(i)
2 minor extra computation cost for L
3 ”nice” RHS L−1x(i) (same behaviour as unpreconditioned solves,
e.g. for fixed shifts k(i) does not increase with i)
Condition
MINRES theory indicates that L−1x(i) should be close to
eigenvector of L−1(A − σI)L−T
Holds if LLT x(i) = Ax(i).
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
PreconditioningTuning the preconditionerNumerical ResultsPerturbation theory
Derivation
Aims
1 modify L → L
L−1(A − σI)L−T y(i) = L
−1x(i), y(i) = L−T y(i)
2 minor extra computation cost for L
3 ”nice” RHS L−1x(i) (same behaviour as unpreconditioned solves,
e.g. for fixed shifts k(i) does not increase with i)
Condition
MINRES theory indicates that L−1x(i) should be close to
eigenvector of L−1(A − σI)L−T
Holds if LLT x(i) = Ax(i).
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
PreconditioningTuning the preconditionerNumerical ResultsPerturbation theory
Derivation
Aims
1 modify L → L
L−1(A − σI)L−T y(i) = L
−1x(i), y(i) = L−T y(i)
2 minor extra computation cost for L
3 ”nice” RHS L−1x(i) (same behaviour as unpreconditioned solves,
e.g. for fixed shifts k(i) does not increase with i)
Condition
MINRES theory indicates that L−1x(i) should be close to
eigenvector of L−1(A − σI)L−T
Holds if LLT x(i) = Ax(i).
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
PreconditioningTuning the preconditionerNumerical ResultsPerturbation theory
Choice of L
Justification of LLT x(i) = Ax(i)
If x(i) = x1 then LLT x1 = λ1x1
L−1(A − σI)L−T
L−1x1 =
λ1 − σ
λ1L−1x1
Theorem
With e(i) = Ax(i) − LLT x(i) (known) and L chosen such that
L = L + α(i)e(i)e(i)T
L−T
with α(i) root of quadratic function we get LLT x(i) = Ax(i).
L is a rank-one update of L.
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
PreconditioningTuning the preconditionerNumerical ResultsPerturbation theory
Choice of L
Justification of LLT x(i) = Ax(i)
If x(i) = x1 then LLT x1 = λ1x1
L−1(A − σI)L−T
L−1x1 =
λ1 − σ
λ1L−1x1
Theorem
With e(i) = Ax(i) − LLT x(i) (known) and L chosen such that
L = L + α(i)e(i)e(i)T
L−T
with α(i) root of quadratic function we get LLT x(i) = Ax(i).
L is a rank-one update of L.
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
PreconditioningTuning the preconditionerNumerical ResultsPerturbation theory
Convergence rates
The tuned preconditioner
1 retains outer convergence rates
2 provides cheap inner solves
k(i) ≥ C1 + C2 log
(
γ| sin θ(i)|
|λ1 − σ|τ (i)
)
3 only a single extra back substitution with L per outer iterationneeded
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
PreconditioningTuning the preconditionerNumerical ResultsPerturbation theory
Example
SPD matrix from the Matrix Market library (nos5: 3 story buildingwith attached tower)
seek eigenvalue near fixed shift σ = 100
A ≈ LLT , incomplete Cholesky factorisation (drop tol. = 0.1)
compare standard and tuned preconditioner
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
PreconditioningTuning the preconditionerNumerical ResultsPerturbation theory
Fixed shift solves
Preconditioning with standard incomplete Cholesky
0 5 10 15 20 25 30 3510
20
30
40
50
60
70
80
outer iterations
inne
r ite
ratio
ns
Standard preconditioner
Tuned preconditioner
total number of inner iterations using standard preconditioner: 2026
total number of inner iterations using tuned preconditioner: 779
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
PreconditioningTuning the preconditionerNumerical ResultsPerturbation theory
Comparison of LLT with LLT
L−1(A − σI)L−T eigenvalues µi
L−1(A − σI)L−T eigenvalues ξi
−4 −3 −2 −1 0 1 2 3 4 5
−8
−6
−4
−2
0
2
4
6
8
10
f2(ξ)
f1(ξ)
µ1 µ
2µ
3 µ4
Clustering properties preserved
κ1L≤ κ1
L≤ κ1
L(1 + γvT v) [see F/Spence 2005]
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
PreconditioningTuning the preconditionerNumerical ResultsPerturbation theory
Comparison of LLT with LLT
L−1(A − σI)L−T eigenvalues µi
L−1(A − σI)L−T eigenvalues ξi
−4 −3 −2 −1 0 1 2 3 4 5
−8
−6
−4
−2
0
2
4
6
8
10
f2(ξ)
f1(ξ)
µ1 µ
2µ
3 µ4
Clustering properties preserved
κ1L≤ κ1
L≤ κ1
L(1 + γvT v) [see F/Spence 2005]
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Right preconditioningTuning the preconditionerNumerical Results
Nonhermitian generalised eigenproblems
Extention toAx = λMx
Application: Stability theory for linearised Navier-Stokes equations
Inverse iteration with preconditioned GMRES
Tuning for nonsymmetric problems
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Right preconditioningTuning the preconditionerNumerical Results
Standard right preconditioning for (A−σ(i)M)y(i) = Mx(i)
GMRES (see Berns-Muller/Spence 2005)
Let P be a preconditioner then
(A − σ(i)M)P−1y(i) = Mx(i), with y(i) = P−1y(i)
k(i) ≥ C1 + C2 log
(
‖QMx(i)‖
|λ1 − σ(i)|τ (i)
)
where ‖QMx(i)‖ = O(1) hence k(i) increases with i
How can we get ‖QMx(i)‖ = O(sin θ(i))?
To obtain ‖QMx(i)‖ = O(sin θ(i)) Mx(i) should be close to eigenvectorof (A − σ(i)M)P−1
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Right preconditioningTuning the preconditionerNumerical Results
Standard right preconditioning for (A−σ(i)M)y(i) = Mx(i)
GMRES (see Berns-Muller/Spence 2005)
Let P be a preconditioner then
(A − σ(i)M)P−1y(i) = Mx(i), with y(i) = P−1y(i)
k(i) ≥ C1 + C2 log
(
‖QMx(i)‖
|λ1 − σ(i)|τ (i)
)
where ‖QMx(i)‖ = O(1) hence k(i) increases with i
How can we get ‖QMx(i)‖ = O(sin θ(i))?
To obtain ‖QMx(i)‖ = O(sin θ(i)) Mx(i) should be close to eigenvectorof (A − σ(i)M)P−1
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Right preconditioningTuning the preconditionerNumerical Results
Tuning the preconditioner
Right preconditioned system (A − σ(i)M)P−1y(i) = Mx(i)
Preconditioned iterates should behave as in unpreconditioned case
In practice, choose
Px(i) = Ax(i)
Then‖QMx(i)‖ = O(| sin θ(i)|).
which recovers the same behaviour as for unpreconditioned standardeigenvalue problem
Implementation of Px(i) = Ax(i)
Evaluate u(i) = Ax(i) − Px(i)
Rank-one update: P = P + u(i)x(i)H
satisfies Px(i) = Ax(i)
Use Sherman-Morrison - one extra solve per outer iteration
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Right preconditioningTuning the preconditionerNumerical Results
Tuning the preconditioner
Right preconditioned system (A − σ(i)M)P−1y(i) = Mx(i)
Preconditioned iterates should behave as in unpreconditioned case
In practice, choose
Px(i) = Ax(i)
Then‖QMx(i)‖ = O(| sin θ(i)|).
which recovers the same behaviour as for unpreconditioned standardeigenvalue problem
Implementation of Px(i) = Ax(i)
Evaluate u(i) = Ax(i) − Px(i)
Rank-one update: P = P + u(i)x(i)H
satisfies Px(i) = Ax(i)
Use Sherman-Morrison - one extra solve per outer iteration
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Right preconditioningTuning the preconditionerNumerical Results
Tuning the preconditioner
Right preconditioned system (A − σ(i)M)P−1y(i) = Mx(i)
Preconditioned iterates should behave as in unpreconditioned case
In practice, choose
Px(i) = Ax(i)
Then‖QMx(i)‖ = O(| sin θ(i)|).
which recovers the same behaviour as for unpreconditioned standardeigenvalue problem
Implementation of Px(i) = Ax(i)
Evaluate u(i) = Ax(i) − Px(i)
Rank-one update: P = P + u(i)x(i)H
satisfies Px(i) = Ax(i)
Use Sherman-Morrison - one extra solve per outer iteration
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Right preconditioningTuning the preconditionerNumerical Results
Tuning the preconditioner
Right preconditioned system (A − σ(i)M)P−1y(i) = Mx(i)
Preconditioned iterates should behave as in unpreconditioned case
In practice, choose
Px(i) = Ax(i)
Then‖QMx(i)‖ = O(| sin θ(i)|).
which recovers the same behaviour as for unpreconditioned standardeigenvalue problem
Implementation of Px(i) = Ax(i)
Evaluate u(i) = Ax(i) − Px(i)
Rank-one update: P = P + u(i)x(i)H
satisfies Px(i) = Ax(i)
Use Sherman-Morrison - one extra solve per outer iteration
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Right preconditioningTuning the preconditionerNumerical Results
Tuning the preconditioner
Right preconditioned system (A − σ(i)M)P−1y(i) = Mx(i)
Preconditioned iterates should behave as in unpreconditioned case
In practice, choose
Px(i) = Ax(i)
Then‖QMx(i)‖ = O(| sin θ(i)|).
which recovers the same behaviour as for unpreconditioned standardeigenvalue problem
Implementation of Px(i) = Ax(i)
Evaluate u(i) = Ax(i) − Px(i)
Rank-one update: P = P + u(i)x(i)H
satisfies Px(i) = Ax(i)
Use Sherman-Morrison - one extra solve per outer iteration
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Right preconditioningTuning the preconditionerNumerical Results
Numerical Example
Flow past a circular cylinder (incompressible Navier-Stokes)
Re = 25, λ ≈ ±10i
Mixed FEM: Q2 − Q1 elements
Elman preconditioner: 2-level additive Schwarz
≈ 54000 degrees of freedom
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Right preconditioningTuning the preconditionerNumerical Results
Example
Figure: Fixed Shift
0 5 10 15 20 25100
200
300
400
500
600
700
Untuned preconditioner, 10975 iterations
Figure: Rayleigh Quotient Shift
1 2 3 4 5 6 7 8100
200
300
400
500
600
700
Untuned preconditioner, 3185 iterations
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Right preconditioningTuning the preconditionerNumerical Results
Example
Figure: Fixed Shift
0 5 10 15 20 25100
200
300
400
500
600
700
Untuned preconditioner, 10975 iterations
Tuned preconditioner, 5800 iterations
Figure: Rayleigh Quotient Shift
1 2 3 4 5 6 7 8100
200
300
400
500
600
700
Untuned preconditioner, 3185 iterations
Tuned preconditioner, 2667 iterations
Melina Freitag Inexact inverse iteration and tuned preconditioning
OutlineMotivation
Inexact Inverse IterationHermitian problems and preconditioning
Nonhermitian problems and preconditioning
Right preconditioningTuning the preconditionerNumerical Results
M. A. Freitag and A. Spence, Convergence rates for inexactinverse iteration with application to preconditioned iterative solves,2005.Submitted to BIT.
, A tuned preconditioner for inexact inverse iteration applied toHermitian eigenvalue problems, 2005.Submitted to IMA J. Numer. Anal.
Melina Freitag Inexact inverse iteration and tuned preconditioning