1
Compact Fourier Analysis for Multigrid Methods
Cortona 2008
Thomas Huckle joint work with Christos Kravvaritis
Compact Fourier Analysis for Multigrid Methods Cortona 2008 Thomas - - PowerPoint PPT Presentation
Compact Fourier Analysis for Multigrid Methods Cortona 2008 Thomas Huckle joint work with Christos Kravvaritis 1 Overview 1. Multigrid Method 2. Structured Matrices and Generating Functions 3. Compact Fourier Analysis for Multigrid methods
1
Thomas Huckle joint work with Christos Kravvaritis
2
3
Problem: Solve linear system A x = b Apply iterative solver like Gauss-Seidel via splitting A = M+N = (L+D)+LT:
k k k k
x A M I b M Ax b M x x x ) ( ) ( ,
1 1 1 1 − − − +
− + = − + =
Convergence depending on
4
Problem: Solve linear system A x = b Apply iterative solver like Gauss-Seidel via splitting A = M+N = (L+D)+LT:
k k k k
x A M I b M Ax b M x x x ) ( ) ( ,
1 1 1 1 − − − +
− + = − + =
Observation: Fast convergence in eigenspace to small eigenvalues of R,
Slow convergence in eigenspace to large eigenvalues of R,
Idea: Multi-iterative method with different iterations that remove the error in different subspaces. Convergence depending on
5
Consider elliptic PDE in 1D with discretization:
h h h xi-1 xi xi+1 xi+2 2 1 1 1 2 2
2 h u u u h u u dx u dx d dx d dx u d
i i i i i − + +
− + − ≈ ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ − Δ ≈ = h u u x u dx du
i i
− = Δ Δ ≈
+1
n n n
+1 2 2 2 1 2 2 1
2 2
xx
1
n
+
6
] , [ ), sin( 1 sin ; 1 cos 1 2
1
π π π λ ∈ → ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ + = ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ + − =
=
x kx n j k s n k
n j k k
Eigenvectors sk of matrix A are closely related to sine function: Low frequency: k=1, eigenmode: sin(x), eigenvalue: 2(1-cos(π/(n+1)))≈π2/(2n2)≈0; High frequency: k=n, eigenmode: sin(nx), eigenvalue: 2(1-cos(n π/(n+1)))≈4; Plot: sin(kx), k=1,2,3:
7
Error reduction for k=1 (low frequency component): cos(π/(n+1)) ≈ 1 Error reduction for k=n/2 (medium frequency component): cos(nπ/(2(n+1))) ≈ 0 Error reduction for k=n (high frequency component): cos(nπ/(n+1)) ≈ -1
k k m m
Error reduction of m Jacobi iteration steps, considered for different eigenmodes: Very good error reduction for medium frequency; Poor error reduction for low/high frequency. λ(k)=cos(kπ/(n+1))
8
) ( 1 1 ) ( 1 ) ( 1 ) ( ) 1 (
− − − − +
k k k k k k
Error reduction for eigenmode: Is is possible to modify Jacobi iteration such that it removes high frequency error in the same way as Gauss-Seidel? Solution: damped Jacobi:
; 1 cos 1 1 cos 1 1 1 cos 1 2 2 1 2
k k k k
s n k s n k s n k s A I ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ + + − = ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ + − − = = ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ + − − = ⎟ ⎠ ⎞ ⎜ ⎝ ⎛ − π ω ω π ω π ω ω
9
ω π ω − = − − 1 )) 2 / cos( 1 ( 1
ω π ω ω 2 1 ) cos( 1 − = + − ; 3 2 1 2 1 = ⇒ − = −
ω ω ω
To minimize this function, we have to choose ω such that these two values have the same absolute value but different sign: Error reduction for these high frequency modes: 1 – ωopt = 1/3 . High frequency modes are related to π/2 <= x <= π, resp. n/2 <= k <= n. k=n/2, x=π/2: k=n, x=π : Error reduction depending on k and omega
10
6 4 2 3 2 1
Similarly, the high frequency error components are reduced by Gauss-Seidel and Red Black – Gauss-Seidel. After reducing the high frequency error by some smoothing iterations with damped Jacobi or GS, the residual b – Ax(k) is smooth and can be represented on a coarser grid. Projection or Restriction, e.g. trivial injection
Smooth function in fine and coarse discretization
Mapping from fine to coarse representation?
11
,... 6 , 4 , 2 , 4 2
1 1
= + + →
+ −
i x x x x
i i i i
Ru u u u u u u u u u
n coarse n coarse coarse n
= ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ = ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ → ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ M O M M
2 1 , 2 / , 2 , 1 2 1
1 2 1 1 2 1 1 2 1 4 1
; 1 2 1 1 2 1 2 1
, 2 / , 2 , 1 2 1 coarse T coarse coarse n coarse coarse n
u R Pu u u u u u u = = ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ = ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ M O M Better coarsening by mean value: Fine to coarse via restriction R Coarse to fine via prolongation P, e.g.
( )
⎪ ⎩ ⎪ ⎨ ⎧ + =
+
even i for u u
i for u u
i i i i
2 /
1
12
); , ( : ) , ( y x f u u y x u
yy xx
− = +
b y a y b x a x for y x g y x u
n n
= = = = =
+ + 1 1
, , , ) , ( ) , (
j i j i j i j i j i j i j i
f h u u u h u u u
, 2 1 , , 1 , 2 , 1 , , 1
2 2 − = − + − + − + −
− + − + yj xi
⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ − − − − − − − − = ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎝ ⎛ − − + ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎝ ⎛ = ⊗ + ⊗ = O O O O O O O O O O O O O O O O O 4 1 1 1 4 1 1 4 1 1 1 4 2 2
1 1 1 1
I I I I A A A I I A A
13
(1) Apply a few steps smoothing iterations (damped Jacobi, GS, RB-GS) (2) Coarse grid correction:
A(x(k)+xcorrection)=b, that is related to the best approximate solution x(k): Axcorrection = b-Ax(k) = rk
Repeat until convergence. Multigrid: Presmoothing Postsmoothing Coarsening Prolongation Presmoothing Postsmoothing Coarsening Prolongation Presmoothing Postsmoothing Coarsening Prolongation Solve coarse system V - Cycle If coarse system is „similar“ to
14
A M I
1 −
−
( )
T coarse
new
Ax b P PA x x − + =
−1
T coarse
T coarse
T coarse
T coarse
new new
e A P PA I Ae P PA e x A b P PA x Ax b P PA x x x e
1 1 1 1
) ( ) (
− − − −
− = − = = − + − − + = − =
Smoothing with M leads to error reduction by Error reduction by Coarse Grid Correction: Coarse matrix Acoarse is given as Galerkin projection
T T coarse
RAR AP P A = =
15
A M I
1 −
−
( )
T coarse
new
Ax b P PA x x − + =
−1
T coarse
T coarse
T coarse
T coarse
new new
e A P PA I Ae P PA e x A b P PA x Ax b P PA x x x e
1 1 1 1
) ( ) (
− − − −
− = − = = − + − − + = − =
Smoothing with M leads to error reduction by Error reduction by Coarse Grid Correction: Overall error reduction by pre/post-smoothing by mpre, resp. mpost iterations steps with Mpre, resp. Mpost, and Coarse Grid Correction:
pre post
m pre T T m post
1 1 1 − − −
Coarse matrix Acoarse is given as Galerkin projection
T T coarse
RAR AP P A = =
16
) ( ,
1 1 1 1 1 1 k k H n n n
p F F c c c c c c c c c C ω = Λ Λ = ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ =
− − −
L O M M L
; 2 exp ; ; ) (
1 1 1
⎟ ⎠ ⎞ ⎜ ⎝ ⎛ = = + + + =
− −
n i e x x c x c c x p
i n n
π ω
ϕ
L
Connection [ matrix function ] for the class of circulant matrices:
17
Toeplitz matrix Generating function
); ( ) ,..., , , ,..., (
1 1 1 1 1 1 1 1 1 1
f T t t t t t T t t t t t t t t t T
n n n n n n n
= = ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ =
+ − − − − − + − −
L O O M M O L
∞ −∞ = −
j ijx je
n n
Example: Tn=tridiag(-1,2,-1) with function f(x) = -exp(ix) + 2 - exp(-ix) = 2(1-cos(x))
18
continuous f g for rank low f g T g T f T rank low f T g T rank low g f T g T f T
n n n n n n n n
_ ) ( ) ( _ ) ( ) ( _ ) ( ) ( ) (
1
+ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ = ⋅ + ⋅ = + ⋅ = ⋅
−
Tn(f) and Tn(g) banded matrices, resp. f(x) and g(x) trigonometric polynomials:
⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ ⊆ ⊆
− −
f g range g T f T range g T f T spectrum
n n n n
) ( ) ( ) ( ) (
1 1
For general spd Toeplitz matrices: Proof:
) ( ) ( ) ( ) ( ) (
1
g T f T spectrum f T g T spectrum f g T x f g x
f g f g range
n n n n n −
∉ ⇔ ⇔ = ∉ ⇒ < > − ⇔ ⇔ ∀ < > − ⇔ ∀ < > ⇔ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ ∉ λ λ λ λ λ λ λ λ
19
Toeplitz T T T T T T T T T
j n n
,
1 1 1 1
⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛
− − −
L O O M M O O L
− −
=
j k ijy ikx kj
e e t y x f
,
) , (
Symbol for multilevel Toeplitz: Symbol as scalar function in variables
matrices Toeplitz T T T T T T T T T
k j n n n n n n n n , , 1 , 1 , , 1 1 , 2 , 1 2 , 1 1 , 1
, ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛
− −
L O O M M O O L
Symbol for Block Toeplitz: Symbol as block function
11 x
Multilevel Block Toelitz: symbol as matrix functions in more variables F(x,y,..)
20
11 x
matrices general T with T T T T T T T T
j n n
,
1 1 1 1 1 1
⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛
− − − −
L O O M M O O L matrices Toeplitz T with T T T T T T T T
k j n n n n n n n n , , 1 , 1 , , 1 1 , 2 , 1 2 , 1 1 , 1
, ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛
− −
L O O M M O O L
Symbol as block function
21
Replace in each step of Multigrid the matrices by their block symbols:
Use block symbols for
Earlier work on Multigrid for structured matrices: R. Chan, S. Serra,…
22
In Multigrid we have to deal with two classes of grid point:
To model these two classes of entries in our vector f, resp. Matrix A, we have to introduce Block Symbols or Block generating functions.
⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − − − = ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − + ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − + ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − → ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ − − − − − − − + − → ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ − − −
− − −
2 1 1 2 1 2 1 1 2 1 2 1 1 2 1 1 2 1 1 2 ; 2 1 2 1 1 2
ix ix ix ix ix ix
e e e e e e O O O O
Scalar case Block case Goal: Write Twogrid step in symbol Fourier Analysis
23
Coarse/noncoarse odd/even Therefore, the projection from fine to coarse is given by picking every second row/column in the full matrix,
Trivial injection:
( )
1 1 1 1 ↔ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ = O E ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ − − − − − − O 2 1 1 2 1 1 2 1 1 2
⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − = ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − − −
−
2 2 2 1 1 2 α α
ix ix
e e
coarse noncoarse coarse nonc. … coarse noncoarse coarse noncoarse coarse noncoarse coarse noncoarse . . .
24
( )
2 1 2 2 1 = ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − α α Galerkin reduction via trivial injection: Better projection by (1 2 1) stencil taking the mean value of neighbouring points. The related projection matrix R can be seen as combination of full (1 2 1) stencil matrix, restricted by trivial injection in the form
B E R ⋅ = ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎝ ⎛ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎝ ⎛ = ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎝ ⎛ = O O O O O 2 1 1 2 1 1 1 2 1 1 2 1
with n x n – Toeplitz matrix B = tridiag(1,2,1) = Tn(2,1,0,…,0)
25
( )
2 1 2 2 1 = ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − α α Galerkin reduction via trivial injection: Better projection by (1 2 1) stencil taking the mean value of neighbouring points. The related projection matrix R can be seen as combination of full (1 2 1) stencil matrix, restricted by trivial injection in the form
B E R ⋅ = ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎝ ⎛ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎝ ⎛ = ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎝ ⎛ = O O O O O 2 1 1 2 1 1 1 2 1 1 2 1
with n x n – Toeplitz matrix B = tridiag(1,2,1) = Tn(2,1,0,…,0) ; 2 2 ) ( )); cos( 1 ( 2 ) ( ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ = + = α α x B x x b Symbol for B:
); ( 2 ) cos( 2 2 ) cos( 2 2 4 2 4 2 1 2 2 2 2 2 2 1 ) ( ;
2
x f x x x f BE A EB RAR A
coarse T T coarse
= − = + − = − = = ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ = = = α α α α α α α
26
⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ = = → = = 2 2 ) ( 2 ) ( 2 ) ( x M and x m I A diag M
Jacobi: GS: ; 2 1 2 ) ( 2 ) ( 2 1 2 1 2 ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − = − = → ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ − − =
ix ix
e x M and e x m M O O Now all components can be written as block symbols: The matrix A itself (scalar and block function) The smoother M (scalar and block function) The restriction R (block function and trivial injection) The coarse system (scalar function) Hence we can analyse the smoother and the overall error in terms of block functions
27
⎥ ⎦ ⎤ ⎢ ⎣ ⎡ ∈ + − = = − − = → − = −
− −
π π ω ω ω ω , 2 ), cos( 1 )) cos( 1 ( 2 2 1 1 ) (
1 1
x x x x e A D I A M I Jacobi: e(x) monotonic function, 1-ω and 1-2ω optimal for ωopt=2/3, e(ω)<=1/3 .
) exp( 2 )) cos( 1 ( 2 1 ) (
1 1
ix x x e A L I A M I − − − = → − = −
− −
ω ω 3 1 3 1 3 4 3 3 4 1 : 5 1 5 4 8 5 2 2 1 : 2
1 1 2
= − → − = − = → + − = − − =
= = ω ω
ω ω π ω ω ω π x i x
GS:
Symmetric GS:
1
T − −
ω=1 e <= 1/5
28
; , 2 1 2 2 ; 2 1 2 2
2 2 1
= = ≤ + − = − = ≥ + + = + = x for e e
ix ix
λ α λ α λ
Eigenvalues of F: Smoothing is related to eigenvalues >= 2, hence to λ1 with eigenvector
1
High frequency components are related to u1 for x in full [0,π]. Therefore, determining the behaviour on high frequency components can be achieved by the projection u1
H F u1 .
Advantage of blockwise analysis: Take into account different character
block symbol of matrix A
29
2 1 ) 1 ( 2 2 1 1 2 / 2 / 1 2 1 1 2 / 2 / 1
3 2 2 2 1 1
α ω ω α ω α ω α α α ω α ω ωα ω α α α ω α ω ωα ω − − = − − = = ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − − = ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − u u H
Projection on high frequency components:
3 2 2 1 : 2 1 : ; 2 , 1 = → − = − = ∈ + =
ix
e ω ω α ω α π α
The same result as in the scalar smoothing analysis!
30
ix ix H
e u e u + = ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎣ ⎡ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − − ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛
−
1 , 2 2 2 1 2 1 1
1 1 1
α α α ω
1 1 1 1 1
2 2 2 / 1 4 / 2 / 1 1 1 2 2 2 2 1 1 u u u u
H H
⎥ ⎦ ⎤ ⎢ ⎣ ⎡ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ = = ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎣ ⎡ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛
−
α α α ω α α α ω
GS: RB-GS:
⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − ⇒ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ − − − = ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ − − − − − − → 2 2 2 1 2 1 1 2 2 ; 2 1 2 1 1 1 2 1 1 2 α O O O O O O O O O O L A
31
2 2
Block symbol of the Coarse Grid Correction CGC:
32
⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ = ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − − − ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ − → − = −
− − − −
2 2 2 2 ) (
1 1 1 1
α α α α M M A M M A M I
Red-Black postsmoothing: Postsmoothing and CGC:
− − −
1 1 1
T c
Hence, standard projection with RB-GS gives MG as a direct solver = Twogrid leads to error 0 after one step and the coarse system is the original A. Therefore in the V-cycle only one step of smoothing is necessary and
33
Block Matrix A block matrix function F(x,y), e.g. of size k x k Projection part B block matrix function B(x,y) Trivial injection
Pojection P P(x,y) = B(x,y) pT Coarse Grid matrix
f(x,y) = p B(x,y)F(x,y)B(x,y) pT = PFPT Smoother M block matrix function M(x,y)
pre post
m pre T T m post
1 1 1 − − −
34
⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ − − − − − − − − = 4 1 1 4 1 4 1 4
ix iy iy ix GS
e e e e M
iy ix
1 1
Matrix: Symbol: GS-Smoother: with
35
T T
− − 1 1
− − 1 1
− − 1 1 1 1 k k
CGC-symbol is singular of rank k-1 by construction: Find smoother M such that: (
! 1 1
− k
M – F of rank k-1, if possible.
36
⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ = * * * * L M O M L L CGC
⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ =
11 1 1 11
F f f f F
T
⎟ ⎟ ⎠ ⎞ ⎜ ⎜ ⎝ ⎛ =
11 1 11
F f f M
T
1
1 1 1 1
− − −
37