iliash rossi jari anen oiv t - jyväskylän yliopistousers.jyu.fi/~tene/papers/report93-2.pdf ·...
TRANSCRIPT
Two Iterative Methods
for Solving the Stokes Problem
Yuri Iliash Tuomo Rossi Jari Toivanen
Iterative Methods
for Solving the Stokes Problem
Yuri Iliash
Tuomo Rossi
Jari Toivanen
Institute of Numerical Mathematics, Academy of Sciences of Russia,
Leninskij Prospekt 32-a, Moscow Russia.
Email [email protected].
University of Jyvaskyla, Laboratory of Scientic Computing,
P.O. Box 35, FIN-40351, Jyvaskyla Finland
Email [email protected]. (T. Rossi), [email protected]. (J.Toivanen)
Abstract
Two approaches to the numerical solution of the Stokes problem are consid-
ered. One of them uses the preconditioned Lanczos method of minimized itera-
tions which is based upon the principles of the multigrid domain decomposition
method (MGDD). The other approach is the classical Uzawa's algorithm, where
the Laplace equations are solved by using the ctitious domain method. Results
of computational experiments are given.
Key words: saddle point problem, Stokes problem, multigrid domain decomposi-
tion method, Uzawa's algorithm, ctitious domain method.
2
Contents
1 Introduction 4
2 Dierential and variational formulation of the Stokes problem 5
3 Grids and approximation 5
3.1 FD approximation on staggered rectangular grids : : : : : : : : : : : : : : : 5
3.2 FE approximation on triangular grids : : : : : : : : : : : : : : : : : : : : : : 7
4 CG method via Uzawa's algorithm 9
4.1 Uzawa's algorithm : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 9
4.2 Preconditioner for the Laplace operator based on the ctitious domain method 11
4.2.1 Fast direct Poisson solver in rectangle : : : : : : : : : : : : : : : : : : 11
4.2.2 Partial solution : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 13
4.2.3 The ctitious domain method for the Dirichlet boundary value problem 13
5 The Lanczos method of minimized iterations with a block-diagonal pre-
conditioner 17
5.1 Block-diagonal preconditioner : : : : : : : : : : : : : : : : : : : : : : : : : : 18
5.2 Multigrid domain decomposition method : : : : : : : : : : : : : : : : : : : : 21
5.3 The Lanczos method of minimized iterations : : : : : : : : : : : : : : : : : : 28
6 Numerical experiments 28
7 Acknowledgements 32
3
1 Introduction
In the present paper we shall consider two iterative methods for solving the Stokes system
of partial dierential equations with Dirichlet boundary conditions for the velocity. Finite
dierence or nite element approximation of this system of equations leads the so-called
algebraic saddle point problem:
G
"
w
p
#
"
A B
B
T
0
# "
w
p
#
=
"
f
g
#
: (1:1)
Here A is a symmetric and positive denite 2N
v
2N
v
matrix, and G is an indenite singular
(2N
v
+N
p
) (2N
v
+N
p
) matrix.
There are some dierent approaches to the construction of iterative methods for solving
problem (1.1).
One of the approaches is to directly apply classical multigrid methods to the problem with
the matrix G [17, 33]. Bramble and Pasciak [9] suggested to reformulate the problem (1.1)
to obtain a problem with symmetric and positive denite matrix and apply the conjugate
gradient method to it. In [4] it is suggested to solve problem (1.1) using the following iterative
process
"
w
i+1
p
i+1
#
=
"
w
i
p
i
#
+
"
^
A B
B
T
^
C
#
1
"
f
g
#
"
A B
B
T
0
# "
w
i
p
i
#!
with
^
C = B
T
^
A
1
B
^
S, where operators
^
A and
^
S are in some sense close to the operators A
and B
T
^
A
1
B, respectively.
Two approaches to problem (1.1) are investigated in the present paper. One of them
is based on the generalized Lanczos method of minimized iterations with a block-diagonal
preconditioner of the form
~
G =
"
~
A 0
0
~
S
#
; (1:2)
where the matrix
~
A is spectrally equivalent to the matrix A, and the matrix
~
S to matrix
S B
T
A
1
B. The matrix
~
A is constructed by using a certain modication of the multigrid
domain decomposition (MGDD) method described in [22, 23, 24]. The use of the precondi-
tioner of the form (1.2) is theoretically justied in Section 5.1, the modication of the MGDD
method is described in Section 5.2, and the generalized Lanczos method of minimized itera-
tions is described in Section 5.3.
The other approach uses the Uzawa's algorithm (see, e.g., [10, 15, 16, 31]). We reformulate
the problem (1.1) to
(B
T
A
1
B)p = B
T
A
1
f g; w = A
1
f A
1
Bp; p ? kerB; (1:3)
which is solved with conjugate gradient method. In this approach we solve the systems with
the matrix A by using the ctitious domain method [1, 2, 13, 30, 32]. The asymptotic arith-
metical complexity estimates for this approach are worse than those for the block diagonal
preconditioner, but the numerical experimentations show that the Uzawa's algorithm works
faster in problems of practical size.
The results of computational experiments are given in Section 6. The computations were
made for the problem of \inverse stair".
4
2 Dierential and variational formulation of the Stokes problem
Let be a simply-connected domain in R
2
with a piecewise-smooth boundary @. We
consider the Stokes system of equations in
(
k w +rp = 0
div w = 0
(2:1)
where w = [u; v] is the velocity of viscous incompressible uid, u is its x-component, v is its
y-component, p is the pressure and k is the kinematic viscosity of the uid. Without loss of
generality, hereafter we assume that k = 1.
On the boundary @ we pose the nonhomogeneous Dirichlet conditions for the velocity:
wj
@
=
0
: (2:2)
The function
0
should be chosen such that incoming and outgoing ows are equal, i. e.:
I
@
n
0
= 0: (2:3)
In this problem formulation no conditions are stated for the pressure p.
Along with the dierential formulation of the Stokes problem we consider the variational
(weak) formulation: nd ( w; p) 2
W
1
2
P :
D( w; z) (p; r z) = 0; 8z [z
1
; z
2
] 2
W
1
2
()
W
1
2
();
(r w; q) = 0; 8q 2 P; (2.4)
wj
@
=
0
:
Here (; ) denotes the inner product in L
2
(),
D(; ) is bilinear form dened by
D( w; z)
Z
ru rz
1
d +
Z
rv rz
2
d;
and
W
1
2
=W
1
2
()W
1
2
(); P =
n
q : q 2 L
2
(); (q; 1)
L
2
()
= 0
o
.
It is known [26] that if
0
2 W
1=2
2
(@) W
1=2
2
(@) and condition (2.3) holds then the
solution to problem (2.4) exists and is unique.
3 Grids and approximation
3.1 FD approximation on staggered rectangular grids
We approximate problem (2.1), (2.2) using nite dierences on uniform staggered grids.
These grids are constructed as follows [14]. In the domain we dene a basic square grid
with a step size h. Further, using this grid, we construct three other rectangular grids. Nodes
of the rst grid,
u
, are located at the midpoints of vertical (i. e., parallel to the y-axis) edges
of the basic grid (they are shown by in Fig. 3.1); the second grid,
v
, has its nodes at the
midpoints of horizontal (i. e., parallel to the x-axis) edges of the basic grid (they are shown
by in Fig. 3.1); nodes of the third grid,
p
, are at the centers of the cells of the basic grid
(they are shown by in Fig. 3.1).
5
v
j;k1=2
v
j+1;k1=2
v
j+1;k+1=2
v
j;k+1=2
p
jk
p
j+1;k
u
j+3=2;k
u
j+1=2;k
u
j1=2;k
p
j+1;k1
p
j;k1
u
j+1=2;k1
Fig. 3.1. Staggered grids.
The rst equation of system (2.1) is discretized on the grid
u
. In order to approximate
the Laplace operator we use the standard ve-point scheme with
"
@
2
u
@x
2
#
j+1=2;k
u
j+3=2;k
+ 2u
j+1=2;k
u
j1=2;k
h
2
;
"
@
2
u
@y
2
#
j+1=2;k
u
j+1=2;k1
+ 2u
j+1=2;k
u
j+1=2;k+1
h
2
:
The pressure derivative is approximated using central dierences:
"
@p
@x
#
j+1=2;k
p
j+1;k
p
j;k
h
:
A similar discretization of the second equation of (2.1) uses the grid
v
. The discretization
of the equation for velocity divergence is performed using the grid
p
:
[div u]
j;k
u
j+1=2;k
u
j1=2;k
h
+
v
j;k+1=2
v
j;k1=2
h
:
For the approximation of the rst and the second equations at the nodes adjacent to the
boundary we employ the so-called re ection trick. It is based on constructing auxiliary
nodes outside the domain . For example, in order to obtain the discretization of the rst
equation at the node (3=2; 1) we introduce an auxiliary node (3=2; 0) which is symmetric
to the node (3=2; 1) regarding the boundary (see Fig. 3.2). Then we assume that u
3=2;1=2
=
1
2
u
3=2;0
+ u
3=2;1
, where the value of u
3=2;1=2
is taken from the boundary conditions. Thus,
we have u
3=2;0
= 2u
3=2;1=2
u
3=2;1
, and we may use the ve-point scheme to approximate
the Laplace operator at the node (3=2; 1). The second equation is approximated near the
boundary in a similar way.
6
v
1;3=2
v
0;3=2
u
3=2;1
u
3=2;0
u
3=2;1=2
Fig. 3.2. Approximation at the nodes adjacent to the boundary.
As a result, we obtain a system of linear equations (1.1). Note that the matrix G in (1.1)
is singular: the dimension of kerG is equal to one, and kerG consists of vectors
"
0
c
#
, where
c = const
2
6
6
4
1
.
.
.
1
3
7
7
5
is m-dimensional vector.
The following important result can be proved (see, e. g., [21] ).
Lemma 3.1 The approximation of problem (2.1), (2.2) on the uniform staggered grids sat-
ises the Babuska-Brezzi-Ladyzhenskaya condition:
sup
w2R
2N
v
nf0g
(p; B
T
w)
kwk
A
c
0
kpk; 8p 2 R
N
p
x; p ? kerB;
here c
0
is a positive constant independent of h.
Using this lemma we can obtain the following result (see, e. g., [20]).
Theorem 3.1 For problem (1.1) arising from the approximation of the Stokes problem on
uniform staggered grids the matrix S B
T
A
1
B = S
T
is positive denite on the subspace
(kerB)
?
and
c
1
I S I; (3:1)
where a positive constant c
1
is independent of h; I is the identity matrix.
3.2 FE approximation on triangular grids
The nite element approximation is based on triangulated rectangular mesh. We wish to
use fast direct methods coupled with the ctitious domain approach, which requires that the
preconditioner is separable. This can be established by using so called P
1
isoP
2
=P
1
elements
[8]. (See Fig. 3.3.)
7
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
x h x
x
h h
x
velocity and pressure
h
velocity
Fig. 3.3. P
1
isoP
2
=P
1
element.
The approximation of both of the velocity components and pressure is piece-wise linear.
We dene the nite element spaces
W
h
and P
h
by
W
h
= f w = [u; v] 2
W
1
2
W
1
2
j u and v are linear on each velocity triangleg: (3:2)
and
P
h
= fq 2 P j q is linear on each pressure triangleg: (3:3)
As a basis of
W
h
we use the basis f w
i
h
g
2N
v
i=1
dened by
w
i
h
2
W
h
; w
i
h
=
(
[
i
h
; 0] ; 1 i N
v
;
h
0;
iN
v
h
i
; N
v
+ 1 i 2N
v
:
(3:4)
Here
i
h
2
h
f 2
W
1
2
j is linear on each velocity triangleg; (3:5)
and
i
h
(x
j
) =
ij
; for each
i
h
; i = 1; :::; N
v
; and for each vertex x(j); j = 1; :::; N
v
of the
velocity mesh. For the pressure space P
h
we dene the Courant basis fq
i
h
g
N
p
i=1
by setting
q
i
h
2 P
h
; q
i
h
(y
j
) =
ij
; (3:6)
for each vertex y
j
; j = 1; :::; N
p
of the pressure triangulation and for each basis function q
i
h
;
i = 1; :::; N
p
: A sample triangulation for the \inverse stair" domain is illustrated in the gure
3.4.
It should be noted that the mesh must be generated in such a way that all the pressure
nodes of one element do not lie in the boundary of the domain. If this is taken into account
then it can be shown, that the Babuska-Brezzi-Ladyzhenskaya condition holds true for this
kind of discretization [8]. As a result we get the following linear system
"
A B
B
T
0
# "
w
p
#
=
"
f
g
#
; (3:7)
8
Velocity triangle
Pressure triangle
Fig. 3.4. A sample triangulation of the inverse stair
domain with P
1
isoP
2
=P
1
elements
where w is the velocity components in the vertices of the velocity triangulation and p is the
pressure in the vertices of the pressure triangulation. The matrices A and B have the block
representation
A =
"
^
A 0
0
^
A
#
2 R
2N
v
2N
v
;
^
A 2 R
N
v
N
v
; B =
"
B
1
B
2
#
2 R
2N
v
N
p
; B
l
2 R
N
v
N
p
; l = 1; 2:
Analogously the vector block f has the form f = [f
t
1
f
t
2
]
t
: The block
^
A is computed by
^
A(i; j) =
Z
r
i
h
r
j
h
dx; i; j = 1; :::; N
v
: (3:8)
The matrix block B
l
is computed by
B
l
(i; j) =
Z
@
i
h
@x
l
q
j
h
dx; i = 1; :::; N
v
; j = 1; :::; N
p
; l = 1; 2: (3:9)
The force vector block f is computed by
f
l
(i) =
Z
r~u
l
r
i
h
; i = 1; :::; N
v
; l = 1; 2: (3:10)
The remaining vector block g is computed by
g(j) =
Z
r ~u
q
j
h
; j = 1; :::; N
p
: (3:11)
Here ~u
l
denotes the l:th component function of the nite element extension ~u
of
0
to the
domain : This extension ~u
is chosen in such a way that it equals to zero in the interior
nodes.
4 CG method via Uzawa's algorithm
4.1 Uzawa's algorithm
In this chapter we will construct so called Uzawa's algorithm for solving the linear system
(3.7).
9
Lemma 4.1 The linear system (3.7) is equivalent to
(B
T
A
1
B)p = B
T
A
1
f g; w = A
1
f A
1
Bp; p ? kerB: (4:1)
Furthermore, Condj
kerB
?B
T
A
1
B c; where c is a positive constant independent of h:
Proof: Let us rst eliminate the velocity block w from the rst equation. This can be done
because the matrix block A is invertible, since it corresponds to the vector Laplace operator
with Dirichlet boundary conditions. The rst equation reads
Aw +Bp = f () w = A
1
(f Bp): (4:2)
Substituting this to the second equation we obtain
B
T
w = g () B
T
A
1
(f Bp) = g () (B
T
A
1
B)p = g +B
T
A
1
f: (4:3)
The second assertion follows from the Theorem (3.1) because this discretization also satises
the Babuska-Brezzi-Ladyzhenskaya condition.
To solve the system (4.1) we propose the following conjugate gradient algorithm:
1. Initial guess p
h
= 0
Solve Aw = f ()
Set r = B
T
w
Set = (r; r)
Set q = r
2. Solve Av = Bq ()
Set z = B
T
v
Set = =(q; z)
Set p
h
= p
h
q
Set w = w + v
Set r = r z
Set
old
= and = (r; r)
3. If > acc
2
then
Set = =
old
Set q = r + q
Goto 2.
endif
In steps marked with () we must solve systems with the matrix block A: The matrix
block A is a discrete counterpart of the vector Laplace operator with Dirichlet boundary
conditions
A =
"
^
A 0
0
^
A
#
"
0
0
#
: (4:4)
The disadvantage of this approach is that we must solve these systems with very high
accuracy in order to reach convergence. To solve the systems we can apply ctitious domain
method. In the next chapter we will consider the ctitious domain method for solving the
Poisson equation with Dirichlet boundary conditions.
10
4.2 Preconditioner for the Laplace operator based on the ctitious domain
method
In the Uzawa's algorithm we need to solve linear systems, where the coecient matrix A
corresponds to the vector Laplace operator. Since the matrix A is a block diagonal matrix,
the solution can be obtained by solving two separate systems. These systems are a discrete
counterpart of Poisson equations for the two velocity components. In this chapter we intro-
duce a fast algorithm which is based on the ctitious domain approach [1, 2, 13, 30, 32] for
solving the Poisson equations with Dirichlet boundary conditions.
Fictitious domain method is a preconditioned iterative method which utilizes so called
fast direct methods [5, 6, 7, 18, 19, 34, 35, 36]. The restriction of these methods is that the
mesh should be a rectangular one and the domain should be a rectangle.
4.2.1 Fast direct Poisson solver in rectangle
In this chapter we present a brief overview on one fast direct Poisson solver in a rectan-
gle. This method is based on the Fast Fourier Transform (FFT) [11, 18]. More detailed
descriptions on this method and some others can be found from [32].
The domain R
2
is supposed to be the rectangle [a
1
; b
1
] [a
2
; b
2
]: For the fast direct
Poisson solver presented we need a rectangular mesh for the domain : First we dene a
division for the intervals [a
1
; b
1
] and [a
2
; b
2
] such that
a
k
= x
k
0
; x
k
1
; : : : ; x
k
N
k
+1
= b
k
; k = 1; 2:
In order to get a triangulation we must divide every rectangular cell [x
1
i
; x
2
j
] [x
1
i+1
; x
2
j+1
];
i = 0; : : : ; N
1
; j = 0; : : : ; N
2
; in to two triangles. The inner nodes are numbered from one to
N
1
N
2
from left to right and from bottom to up.
Remark 4.1 The velocity mesh of a given rectangular domain is rectangular one, if we use
P
1
isoP
2
=P
1
elements to discretize the Stokes equation in a rectangle. This holds true, if we
construct the pressure triangulation on a rectangular mesh.
With the mesh presented previously the nite element discretization with the linear trian-
gle elements and the nite dierence discretization with the ve point scheme gives the same
stiness matrix A. The matrix A is a symmetric block tridiagonal matrix whose codiagonal
blocks are diagonal matrices and diagonal blocks are tridiagonal matrices. The diagonal and
codiagonal blocks are commutative.
The matrix A can be expressed in the tensor product form
A = K
2
A
1
+ A
2
K
1
: (4:5)
Here the tensor product for the matrices B 2 R
NN
and C 2 R
MM
is dened by
B C = (B
ij
C)
N
i;j=1
2 R
NMNM
:
In the tensor product (4.5) the matrices A
i
2 R
N
k
N
k
are tridiagonal matrices and the
matrices K
i
2 R
N
k
N
k
are diagonal matrices. The matrices A
i
and K
i
are depending only
on the mesh division in the x
i
-direction.
11
Remark 4.2 The blocks
^
A of the matrix A have the structure (4.5) if we use rectangular
mesh on a rectangular domain.
The method which we consider is so called method of separation of variables which is
based on an observation that the matrix A in (4.5) can be expressed in a matrix product
form. First we dene the generalized eigenvalue problem
A
2
w
i
=
i
K
2
w
i
; kw
i
k = 1; i = 1; : : : ; N
2
(4:6)
and then we can dene the matrices
W = [w
1
; w
2
; : : : ; w
N
2
] and = diagf
1
;
2
; : : : ;
N
2
g:
Now the matrix product form for the matrix A is
A = (K
1
2
2
W I
1
)(I
2
A
1
+ K
1
)(W
T
K
1
2
2
I
1
);
where the matrices I
i
2 R
N
i
N
i
; i = 1; 2; are the identity matrices. By inverting the matrix
A we obtain
A
1
= (K
1
2
2
W I
1
)(I
2
A
1
+ K
1
)
1
(W
T
K
1
2
2
I
1
): (4:7)
Now we consider the arithmethic complexity of computing matrix A
1
times vector f:
We divide the multiplication to four steps in the following way.
1. Solve the generalized eigenvalue problem (4.6).
2. Compute g = (W
T
K
1
2
2
I
1
)f:
3. Solve (I
2
A
1
+ K
1
)v = g:
4. Compute u = (K
1
2
2
W I
1
)v:
The complexity for solving the generalized eigenvalue problem (4.6) is O(N
1
N
2
) opera-
tions, because the matrix A
2
is a tridiagonal matrix and the matrix K
2
is a diagonal matrix.
If the mesh is uniform in x
2
-direction then the analytical solution is known.
The steps 2. and 4. are similar regarding the complexity. Both matrices contains N
1
N
2
2
non zero matrix entries and therefore O(N
1
N
2
2
) operations are required. The multiplications
can be considered as a Fourier transformation and an inverse Fourier transformation. In
the case that the mesh is uniform in x
2
-direction the multiplications can be carried out in
the FFT manner and then the complexity is only O(N
1
N
2
logN
2
): The most ecient FFT
algorithms require that N
2
= 2
i
1 for some integer i.
The matrix in the step 3. is a symmetric block diagonal matrix and all N
2
diagonal blocks
areN
1
N
1
tridiagonal matrices. It requires O(N
1
) operations to solve one tridiagonal system.
Therefore the total complexity for this step is O(N
1
N
2
) operations.
As the previous analysis shows the total complexity is O(N
1
N
2
2
) for a nonuniform mesh in
x
2
-direction and O(N
1
N
2
logN
2
) for an uniform mesh in x
2
-direction. The Fourier transfor-
mation direction can be changed to be x
1
-direction and if the mesh is uniform in x
1
-direction
then the total complexity is O(N
1
N
2
logN
1
): The method of separation of variables is usually
used only when mesh is uniform at least in one direction.
12
4.2.2 Partial solution
The partial solution is a method for solving a part of unknowns in linear systems where the
coecient matrix is of the form (4.5) with sparse right hand side vector. The methodology
was introduced independently in [25] and [3]. It is useful in the ctitious domain method,
because the solution is needed only near the boundary in the ctitious domain iteration and
the right hand side vector is also sparse.
We suppose that the force vector is sparse and the wanted solution is sparse. In here by
sparse we mean O(
p
N), where N is the total number of unknowns. Also we suppose that
p
N N
1
N
2
: Now we apply the method of separation of variables to this problem. The
complexity of step 2. and 4. of multiplication is reduced in this case. Each row and column
in the multiplying matrix contains N
2
non zero entries which have to be multiplied O(
p
N)
times. Therefore the complexity of partial solution is only O(N):
4.2.3 The ctitious domain method for the Dirichlet boundary value problem
Let us consider the following partial dierential equation
(
u = f; x 2
1
u = 0; x 2 @ =: :
(4:8)
where
1
2 R
2
is, for the sake of simplicity, a bounded polygonal domain and f 2 L
2
():
Furthermore, also for the sake of simplicity, we assume that the boundary is compatible
to triangulated rectangular (not necessary uniform) mesh.
Remark 4.3 The ctitious domain method can be applied to problems with more general
kind of domains. See, for example [32].
Instead of considering only the equation (4.8), we do the following: rst, we embed the
domain
1
into a suciently large rectangle : After that we solve together two equations,
namely
(
u
1
= f; x 2
1
;
u
1
= u
2
; x 2 ;
(4:9)
and
8
>
<
>
:
u
2
= 0; x 2 n
1
=:
2
;
u
2
= 0; x 2 @;
@u
2
@n
= 0; x 2 :
(4:10)
It follows, that u
2
= 0 is the unique solution of (4.10). Thus, the equation (4.9) is
equivalent to the original equation (4.8).
The discretization is carried out as follows. First we dene a rectangular mesh T
h
on
rectangle ; which after suitable triangulation coincides the boundary : As an example, the
gure 4.2. illustrates one such mesh for the domain of the gure 4.1. This approach gives us
the triangulations of
1
(denoted further on by T
1
h
) and
2
:= n (denoted by T
2
h
). Next
we dene the weak formulations for the problems (4.9) and (4.10). The weak formulation for
the problem (4.10) reads: Find u
2
2 H
1
(
2
) V
2
such that
Z
2
ru
2
rv dx = 0; 8v 2 V
2
; (4:11)
13
Π
Ω
∂∂u
n=0
u1=u2
2
u2=0
−∆u1=f
−∆u2=0
Fig. 4.1. A polygonal domain embedded to a rectangle
and the equivalent extended problem.
Fig. 4.2. A compatible triangulated rectangular mesh.
14
and for the problem (4.9): Find u
1
2
~
V
1;u
2
; where V
1;u
2
= fv 2 H
1
(
1
); vj
= u
2
j
; vj
@
= 0g
such that:
Z
1
ru
1
rv dx =
Z
1
fv dx; 8v 2 V
1
H
1
0
(
1
): (4:12)
We dene the corresponding spaces of nite element functions by setting
V
h
2
= fv 2 V
2
j v is linear in each triangle of T
2
h
g;
V
h
1
= fv 2 V
1
j v is linear in each triangle of T
1
h
g;
~
V
h
1;u
2
= fv 2
~
V
1;u
2
j v is linear in each triangle of T
1
h
g;
and
V
h
= fv 2 H
1
() j vj
1
2
~
V
h
1;u
2
; vj
2
2 V
h
2
g:
By using these triangulations and nite element spaces we obtain an algebraic system for
problems (4.9) and (4.10). This system is
Au =
2
6
6
6
6
6
4
A
11
A
1
0 0 0
A
1
A
A
0 0
0 0 A
(2)
A
+
0
0 0 A
+
A
+ +
A
+2
0 0 0 A
2 +
A
22
3
7
7
7
7
7
5
2
6
6
6
6
6
4
u
1
u
u
u
+
u
2
3
7
7
7
7
7
5
=
2
6
6
6
6
6
4
f
1
f
0
0
0
3
7
7
7
7
7
5
: (4:13)
The block
"
A
11
A
1
0
A
1
A
A
#
corresponds to the Dirichlet boundary value problem (4.9) and the block
2
6
4
A
(2)
A
+
0
A
+
A
+ +
A
+2
0 A
2 +
A
22
3
7
5
to the extended Neumann boundary value problem (4.10). The system (4.13) is called non-
symmetric ctitious domain algebraic system. Here denotes the grid boundary between
1
and
2
; denotes the grid line next to in
1
; and + the grid line next to in
2
: For
example, the block A
is computed by
A
(i; j) =
Z
1
r
i
r
j
dx;
where
i
is the basis function corresponding to the node i in and
j
is the basis function
corresponding to the node j in :
We wish to solve (4.13) by using preconditioned conjugate gradiend method. As a pre-
conditioner we use the matrix B arising from the nite element discretization of the Poisson
equation with Dirichlet boundary conditions on the rectangle by using the triangulated
rectangular mesh T
h
: It follows that the preconditioner B is of the form
B =
2
6
6
6
6
6
4
A
11
A
1
0 0 0
A
1
A
A
0 0
0 A
A
A
+
0
0 0 A
+
A
+ +
A
+2
0 0 0 A
2 +
A
22
3
7
7
7
7
7
5
:
15
It should be noted that the system to be solved is a nonsymmetric one and thus, the use of
the preconditioned conjugate gradient method must be justied. It appears that if we solve
for the initial guess the system
Bu
0
= f; (4:14)
where
f =
h
f
t
1
f
t
0
t
0
t
0
t
i
t
;
the residual
0
= Au
0
f will have a special form. Since the matrices A and B have the
same rst two and last two block rows, it follows that blocks
0
1
;
0
;
+
and
0
2
will be zero
blocks. So, the rst residual
0
2 im(C) U
A
; where C = B A and U
A
is a subspace of
R
N
consisting of vectors x 2 R
N
; which have zero blocks x
1
; x
; x
+
and x
2
:
U
A
R
N
; U
A
= fx 2 R
N
j x = [0
t
0
t
x
t
0
t
0
t
]
t
g: (4:15)
The error vector z
0
= u
0
u
; where u
= A
1
f belongs to the subspace U = A
1
U
A
R
N
:
This subspace has the representation
U = f 2 R
N
jA
11
1
+ A
1
= 0; A
1
1
+ A
+ A
= 0g (4:16)
Now it is easy to show that the matrix A is symmetric and positive denite with respect to
the subspace U i. e., (Ax; y) = (x;Ay); x; y 2 U
A
and x
t
Ax > 0; x 2 U n f0g: Also, the
matrix A
1
is s.p.d. in the subspace U
A
: Then, it follows that B
1
A is A s.p.d. in U and
AB
1
is A
1
s.p.d. in U
A
:
It is easy to see, that the subspaces U
A
and U are invariant i. e., AB
1
U
A
U
A
and
B
1
AU U: Thus, it follows that all the residuals
k
= Au
k
f belong to the subspace U
A
and the error vectors z
k
= u
k
u
belong to the subspace U during the conjugate gradient
iteration, if the rst residual belongs to U
A
: Therefore, we can apply the preconditioned
conjugate gradient method to system (4.13) if the initial guess is chosen by (4.14).
The following Theorem can be proved:
Theorem 4.1 The condition number Condj
U
A
;A
(B
1
A) is bounded from above with a positive
constant which is independend of the mesh step size h:
This Theorem states that the number of iterations needed to reach a prescribed accuracy is
bounded.
The next preconditioned conjugate gradient algorithm solves the Dirichlet boundary value
problem with the nonsymmetric ctitious domain method. In the following algorithm the
subscript [ means both the and blocks of a vector.
1. Entrance to the subspace. Solve Bu = f:
2. Preconditioned conjugate gradient iteration.
(a) First iteration.
= (Au f)
[
= (B
1
[0 0
T
0 0]
T
)
[
w
[
=
[
=
T
v
=
^
A
+ (A
(2)
^
A
)
16
(b) Next iteration step.
=
w
T
v
u
= u
w
=
v
If j
j > " then
[
= (B
1
[0 0
T
0 0]
T
)
[
old
=
=
T
=
old
w
[
=
[
+ w
[
v
=
^
A
+ (A
(2)
^
A
)
+ v
Goto 2.(b)
Endif
3. Exit from the subspace. Solve Bu = g; where
g =
0
B
B
B
B
B
B
@
f
1
f
+
^
A
u
0
0
1
C
C
C
C
C
C
A
:
Theorem 4.2 It takes O(N logN) arithmetical operations to solve the system (4.13) by using
the previous algorithm.
Proof: In steps 1 and 3 we have to solve a linear system with coecient matrix B: Since
the mesh T
h
is a rectangular mesh it follows that the matrix B has a separable structure
and we can apply the method of separation of variables. Thus, the arithmetical complexity
of the steps 1 and 3 is of order O(N logN): Since the condition number of the matrix B
1
A
is bounded from above with a constant independent of the mesh size h (and simultaniously
of N , h
1
p
N
), the number of preconditioned conjugate gradient iterations needed to reach
a prescribed accuracy " is bounded (it depends only on the domain
1
). In each iteration
we need to solve systems of the form B = : However, the residual vector is sparse (it is
nonzero only on ) and we need the solution only on the grid curves and : Thus, we
can apply the partial solution technique to solve these systems. Therefore, the arithmetical
complexity of each iteration step and the whole iteration 2 is of order O(N log
2
"
): So, the
asympthotical complexity is O(N logN):
5 The Lanczos method of minimized iterations with a block-
diagonal preconditioner
As is known, the preconditioned Lanczos method of minimized iterations with a symmetric
positive denite preconditioner can be used for solving algebraic systems with symmetric
indenite matrices. In this section we propose a method of constructing such a preconditioner
for solving problem (1.1).
17
5.1 Block-diagonal preconditioner
The idea of a block-diagonal preconditioner for the Lanczos method is based on the following
simple statement which can be easily veried. The eigenvalue problem
"
A B
B
T
0
# "
w
p
#
=
"
A 0
0 B
T
A
1
B
# "
w
p
#
; p ? kerB; p 6= 0
has only two dierent eigenvalues:
1
p
5
2
and
1+
p
5
2
; besides, if p 2 kerB, there will be an
eigenvalue = 1. This means that if we apply the generalized Lanczos method of minimized
iterations with the preconditioner
"
A 0
0 B
T
A
1
B
#
to problem (1.1) the method will converge
to the exact solution in three iterations. However, the solution of system with the matrix
"
A 0
0 B
T
A
1
B
#
presents considerable diculties. Therefore, instead of this matrix, we
suggest to choose, as a preconditioner, a certain \perturbed" matrix
~
G =
"
~
A 0
0
~
S
#
, where
~
A =
~
A
T
> 0;
~
S =
~
S
T
> 0. Thus the matrix
~
G is symmetric and positive denite.
The fact that the matrix
~
G is an ecient preconditioner for the matrixG in the generalized
Lanczos method of minimized iterations is justied in the following theorem:
Theorem 5.1 Suppose that A = A
T
> 0;
~
A =
~
A
T
> 0;
~
S =
~
S
T
> 0 and there exist
such positive constants
1
;
2
;
1
;
2
independent of the grid step h that the following two
conditions are satised:
1
(Aw; w)
(
~
Aw; w)
2
; 8w 2 R
2N
v
; w 6= 0; (5.1)
1
(Sp; p)
(
~
Sp; p)
2
; 8p 2 R
N
p
; p ? kerB; (5.2)
where S = B
T
A
1
B.
Then the spectrum of the generalized eigenvalue problem
G
"
w
p
#
=
~
G
"
w
p
#
; p ? kerB (5:3)
belongs to the set
2
4
1
+
q
2
1
+ 4
1
1
2
;
2
+
q
2
2
+ 4
2
2
2
3
5
S
2
4
2
q
2
2
+ 4
2
2
2
;
1
q
2
1
+ 4
1
1
2
3
5
S
[
1
;
2
] ;
where the bounds of each of these segments do not depend on h.
Proof. Let us rewrite problem (5.3) as
(
Aw + Bp =
~
Aw
B
T
p =
~
Sp
18
From the rst equation we obtain (
~
A A)w = Bp.
(I) First let us examine the case >
2
.
Here the matrix
~
A A is positive denite, and consequently we may write w = (
~
A
A)
1
Bp. Therefore, from the second equation we have
B
T
(
~
A A)
1
Bp =
~
Sp: (5:4)
Taking the scalar product of (5.4) by p, we obtain
(
~
A A)
1
Bp; Bp
=
~
Sp; p
:
From condition (5.2) we nd
2
A
1
Bp; Bp
(
~
A A)
1
Bp; Bp
1
A
1
Bp; Bp
:
Let us denote Bp by w
1
. Then we have
2
(
~
A A)
1
w
1
; w
1
(A
1
w
1
; w
1
)
1
:
Designating
(
(
~
AA)
1
w
1
; w
1)
(A
1
w
1
; w
1
)
= we get
2
1
: (5:5)
On the other hand, considering the generalized eigenvalue problem
(
~
A A)
1
w
1
= A
1
w
1
and using condition (5.1) it is easy to obtain inequalities:
min
max
; (5:6)
where
min
=
1
1
;
max
=
2
2
.
From (5.5) and (5.6) it follows that should satisfy the following system of inequalities:
8
>
>
<
>
>
:
1
1
2
2
2
1
:
(5:7)
But system (5.7) has a solution if and only if
1
1
2
2
2
; (5:8)
or
1
1
1
2
2
: (5:9)
19
Taking into account that >
2
, from inequalities (5.8) we obtain
2
2
4
max
0
@
1
+
q
2
1
+ 4
1
2
2
;
2
1
A
;
2
+
q
2
2
+ 4
2
2
2
3
5
:
Similarly, inequalities (5.9) lead to
2
2
4
max
0
@
1
+
q
2
1
+ 4
1
1
2
;
2
1
A
;
2
+
q
2
2
+ 4
2
1
2
3
5
:
Finally we have:
2
2
4
max
0
@
1
+
q
2
1
+ 4
1
1
2
;
2
1
A
;
2
+
q
2
2
+ 4
2
2
2
3
5
:
(II) Now consider the case <
1
.
Here the matrix
~
A A is negative denite, and similar to case (I) we have
B
T
(
~
A A)
1
Bp =
~
Sp:
Further,
(
~
A A)
1
Bp; Bp
=
~
Sp; p
:
Thus, it is easy to see that < 0. From condition (5.2) we obtain
2
(A
~
A)
1
w
1
; w
1
(A
1
w
1
; w
1
)
1
:
Using the same considerations as in the case >
2
, we nally obtain:
2
2
4
2
q
2
2
+ 4
2
2
2
;
1
q
2
1
+ 4
1
1
2
3
5
:
Adding the segment [
1
;
2
] to the set of possible values of we arrive at the required
conclusion.
Now a question arises: how to choose matrices
~
S and
~
A satisfying conditions (5.1), (5.2)?
The choice of
~
S is obvious:
~
S = I; (5:10)
then it follows from Theorem 3.1 that condition (5.2) is satised with the constants
1
= c
1
,
2
= 1, where c
1
is that of (3.1). Here we suggest to choose a matrix
~
A as follows:
~
A = A
2
4
I
r
Y
j=1
I
j
~
K
1
A
3
5
1
; (5:11)
20
where
j
are the Chebyshev iterative parameters, and
~
K is some matrix. It can be easily
shown that if
~
K satises the inequality
cond (
~
K
1
A) (5:12)
with independent of h then condition (5.1) will be satised with
1
= 1 ;
2
= 1 + ;
where
=
2q
r
1 + q
2r
; q =
p
1
p
+ 1
:
In the next section we shall consider the construction of matrix
~
K based on the MGDD
method.
5.2 Multigrid domain decomposition method
In this section the domain is supposed to be a union of M
0
> 1 squares, whose sides are
parallel to the coordinate axes, i. e.,
=
M
0
S
i=1
!
(i)
; here !
(i)
are open squares which do not
intersect, and @!
(i)
denotes their boundaries, i = 1; : : : ; M
0
. We dene the basic grid at the
0-th level as
0
=
M
0
S
i=1
@!
(i)
. The grid
0
is rectangular and uniform; its step h
0
= 1. We
shall choose a positive integer t 1 and, for l = 1; : : : ; t, construct a hierarchical sequence
of rectangular uniform basic grids
1
; : : : ;
t
such that a step of the grid
l1
contains three
steps of
l
: h
l
=
1
3
h
l1
= 3
l
; l = 1; : : : ; t. For each basic grid
l
we construct three
staggered grids
u
l
;
v
l
;
p
l
, as in Section 3.1. Thus, we obtain a hierarchical sequence of
staggered grids in the domain (see Fig. 5.1).
We shall assume that problem (1.1) is a discretization of problem (2.1), (2.2) on the grids
u
t
;
v
t
;
p
t
. The matrix A in (1.1) can be represented as
A =
1
h
2
t
"
A
u
0
0 A
v
#
; (5:13)
where
1
h
2
t
A
u
is the dierence analogue of the operator on the grid
u
t
, and
1
h
2
t
A
v
is the
dierence analogue of on the grid
v
t
. Accordingly, the matrix
~
K will be constructed in
the form
~
K =
1
h
2
t
"
~
K
u
0
0
~
K
v
#
: (5:14)
Further we shall consider construction of the matrix
~
K
u
. The matrix
~
K
v
can be constructed
similarly.
Let us now consider the grid
u
l
; 1 l t, in more detail. We partition the nodes of
the grid
u
l
into three groups (Fig. 5.2). Those nodes of the grid
u
l
which are also nodes of
u
l1
will form the rst group. The second group will consist of the nodes of
u
l
which belong
to the edges of
u
l1
and do not belong to the rst group. The third group will contain the
nodes of
u
l
which are inside the cells of
u
l1
.
21
g g
g g
g g
w w
w w
s
c
s
c
s
c
s
c
s
c
s
c
c
s
c
s
c
s
c
s
c
s
c
s
c
c
s
c
s
c
s
c
s
c
s
c
s
c
c
s
c
s
c
s
c
s
c
s
c
s
c
c
c
c
c
c
c
c
c
c
s
s
s
s
s
s
s
s
Fig. 5.1. The hierarchical sequence of staggered grids.
nodes of the grid
u
l
nodes of the grid
v
l
nodes of the grid
p
l
nodes of the grids
u
l1
;
v
l1
;
p
l1
We also dene a sequence of grids
u
l1=2
; l = 1; : : : ; t, which are obtained by eliminating
the nodes of the third group (with the corresponding edges) from grids
u
l
; l = 1; : : : ; t.
For the grids
u
t
and
u
t1=2
we also dene the superelements
Z
(j)
t
= !
(j)
u;t1
\
u
t
; Z
(j)
t1=2
= !
(j)
u;t1
\
u
t1=2
;
here !
(j)
u;t1
is a cell of the grid
u
t1
.
We dene a space V
(l)
h
as a set of functions which are dened on
u
l
, linear on each edge
of
u
l
and vanishing on @. Similarly, V
(l1=2)
h
is dened as a set of functions on
u
l1=2
which
are linear on each edge of
u
l1=2
and vanish on @.
According to the above node groups for
u
t
, we represent the matrix A
u
in the block-
tridiagonal form:
A
u
=
2
6
4
A
u;11
A
u;12
0
A
u;21
A
u;22
A
u;23
0 A
u;32
A
u;33
3
7
5
: (5:15)
The following statement can be directly checked.
Lemma 5.1 The matrix A
u
in (5.15) can be dened by the relation
(A
u
u; w) =
h
t
2
X
i
Z
@!
(i)
u;t
du
h
ds
dw
h
ds
ds; (5:16)
which is supposed to be true for all vectors u; v.
22
Fig. 5.2. Grid
u
1
.
nodes of the 1st group
nodes of the 2nd group
nodes of the 3rd group
The sum in (5.16) is taken for all cells !
(i)
u;t
of the grid
u
t
; u
h
and w
h
denote the extensions
of vectors u and w onto the space V
(t)
h
.
Now we dene a matrix
^
K
u;11
by the equality
(
^
K
u;11
u; w) =
h
t
2
X
i
Z
@!
(i)
u;t1
du
h
ds
dw
h
ds
ds; (5:17)
which is supposed to be true for all u, v. Here the sum is taken for all cells of the grid
u
t1
;
u
h
and w
h
are the extensions of vectors u and w onto the space V
(t1=2)
h
. It can be shown
that the matrix
^
K
u;11
admits the following block representation:
^
K
u;11
=
"
A
u;11
A
u;12
A
u;21
K
u;22
#
: (5:18)
We also introduce a symmetric matrix
K
u
=
2
6
4
A
u;11
A
u;12
0
A
u;21
K
u;22
+ A
u;23
A
1
u;33
A
u;32
A
u;23
0 A
u;32
A
u;33
3
7
5
: (5:19)
It can be readily veried that the following statement is valid.
Lemma 5.2
(K
u;22
w; w)
(A
u;22
A
u;32
A
1
u;33
A
u;32
)w; w
; 8w:
Let us now examine the generalized eigenvalue problem
K
u
u = A
u
u: (5:20)
Using Lemma 5.2, we can easily prove the following fact.
23
Lemma 5.3 The eigenvalues of problem (5.20) belong to the segment [1; c], where c =
(K
1
u
A
u
).
It was shown in [23] that the constant c in Lemma 5.3 is not greater than the largest
eigenvalue of the spectral problem
(j)
K
(j)
u
= A
(j)
u
u
(j)
: (5:21)
Here the matrix A
(j)
u
is a restriction of A
u
on an arbitrary internal superelement Z
(j)
t
; it is
dened by the following relation:
(A
(j)
u
u
j
; w
j
) =
h
t
2
Z
Z
(j)
t
du
h
j
ds
dw
h
j
ds
ds; 8u
h
; w
h
2 V
(t)
h
; (5:22)
where u
h
j
and w
h
j
are the restrictions of functions u
h
and w
h
, on Z
(j)
t
, u
j
and w
j
are vectors
corresponding to the functions u
h
j
and w
h
j
, and
K
(j)
u
=
"
^
K
(j)
u;11
0
0 0
#
;
^
K
(j)
u;11
is dened by the relation
(
^
K
(j)
u
u
j
; w
j
) =
h
t
2
Z
Z
(j)
t1=2
du
h
j
ds
dw
h
j
ds
ds; 8u
h
; w
h
2 V
(t1=2)
h
; (5:23)
where u
h
j
and w
h
j
are the restrictions of functions u
h
and w
h
, on a superelement Z
(j)
t1=2
, u
j
and w
j
are vectors corresponding to the functions u
h
j
and w
h
j
.
For an internal superelement Z
(j)
t
we write down 1616 matrices A
(j)
u
and K
(j)
u
using the
enumeration of the nodes given in Fig. 5.3.
2 7 8 3
1 9 10 4
12
11
6
5
15
13
16
14
Fig. 5.3. The enumeration of grid nodes for the superelement Z
(j)
t
.
24
A
(j)
u
=
1
2
2
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
4
2 0 0 0 0 -1 0 0 -1 0 0 0 0 0 0 0
0 2 0 0 -1 0 -1 0 0 0 0 0 0 0 0 0
0 0 2 0 0 0 0 -1 0 0 -1 0 0 0 0 0
0 0 0 2 0 0 0 0 0 -1 0 -1 0 0 0 0
0 -1 0 0 4 -1 0 0 0 0 0 0 -2 0 0 0
-1 0 0 0 -1 4 0 0 0 0 0 0 0 0 -2 0
0 -1 0 0 0 0 4 -1 0 0 0 0 -2 0 0 0
0 0 -1 0 0 0 -1 4 0 0 0 0 0 -2 0 0
-1 0 0 0 0 0 0 0 4 -1 0 0 0 0 -2 0
0 0 0 -1 0 0 0 0 -1 4 0 0 0 0 0 -2
0 0 -1 0 0 0 0 0 0 0 4 -1 0 -2 0 0
0 0 0 -1 0 0 0 0 0 0 -1 4 0 0 0 -2
0 0 0 0 -2 0 -2 0 0 0 0 0 8 -2 -2 0
0 0 0 0 0 0 0 -2 0 0 -2 0 -2 8 0 -2
0 0 0 0 0 -2 0 0 -2 0 0 0 -2 0 8 -2
0 0 0 0 0 0 0 0 0 -2 0 -2 0 -2 -2 8
3
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
5
(5.24)
K
(j)
u
=
1
2
2
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
4
2 0 0 0 0 -1 0 0 -1 0 0 0 0 0 0 0
0 2 0 0 -1 0 -1 0 0 0 0 0 0 0 0 0
0 0 2 0 0 0 0 -1 0 0 -1 0 0 0 0 0
0 0 0 2 0 0 0 0 0 -1 0 -1 0 0 0 0
0 -1 0 0 2 -1 0 0 0 0 0 0 0 0 0 0
-1 0 0 0 -1 2 0 0 0 0 0 0 0 0 0 0
0 -1 0 0 0 0 2 -1 0 0 0 0 0 0 0 0
0 0 -1 0 0 0 -1 2 0 0 0 0 0 0 0 0
-1 0 0 0 0 0 0 0 2 -1 0 0 0 0 0 0
0 0 0 -1 0 0 0 0 -1 2 0 0 0 0 0 0
0 0 -1 0 0 0 0 0 0 0 2 -1 0 0 0 0
0 0 0 -1 0 0 0 0 0 0 -1 2 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
3
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
5
(5.25)
Direct calculation of all the eigenvalues in problem (5.21) with the matrices (5.24) and
(5.25) gives the following result.
Lemma 5.4 In problem (5.21)
(j)
max
= 3 +
p
2, and, consequently, the eigenvalues of the
matrix K
1
u
A
u
belong to the segment [1; 3 +
p
2].
Introduce the matrix
K
u;11
= A
u;11
A
u;12
K
1
u;22
A
u;21
(5:26)
and denote K
u;33
= A
u;33
. Then the matrix K
u
in (5.19) may be rewritten as
K
u
=
2
6
6
4
K
u;11
+ A
u;12
K
1
u;22
A
u;21
A
u;12
0
A
u;21
K
u;22
+ A
u;23
K
1
u;33
A
u;32
A
u;23
0 A
u;32
K
u;33
3
7
7
5
=
F
T
u
2
6
6
4
K
u;11
0 0
0 K
u;22
0
0 0 K
u;33
3
7
7
5
F
u
; (5.27)
where
F
u
=
2
6
6
4
I
11
0 0
K
1
u;22
A
u;21
I
22
0
0 K
1
u;33
A
u;32
I
33
3
7
7
5
: (5:28)
25
Note that K
u;22
is a block-diagonal matrix with blocks 2 2, and K
u;33
is a block-diagonal
matrix with blocks 4 4.
The following fundamental result is of major importance for further considerations. It
may be checked directly.
Lemma 5.5
K
u;11
=
1
3
A
u;t1
:
Here the matrix
1
h
2
t1
A
u;t1
is the dierence analogue of the operator on the grid
u
t1
.
In view of this, the matrix K
u
may be called the two-grid preconditioner for the matrix A
u
.
Then, similar to [23], we shall construct a multigrid preconditioner for the matrix A
u
.
For l = 1; : : : ; t we introduce the matrices
A
u;l
=
2
6
6
4
A
(l)
u;11
A
(l)
u;12
0
A
(l)
u;21
A
(l)
u;22
A
(l)
u;23
0 A
(l)
u;32
A
(l)
u;33
3
7
7
5
; (5:29)
so that matrices
1
h
2
l
A
u;l
are the dierence analogues of the operator on the grids
u
l
.
Using (5.17), (5.18), (5.26), (5.27) and (5.28) we construct the corresponding two-grid pre-
conditioners
K
u;l
= F
T
u;l
2
6
6
4
K
(l)
u;11
0 0
0 K
(l)
u;22
0
0 0 K
(l)
u;33
3
7
7
5
F
u;l
; (5:30)
where K
(l)
u;11
=
1
3
A
u;l1
and K
(l)
u;33
= A
(l)
u;33
. Thus A
u;t
A
u
and K
u;t
K
u
. Then we choose
a positive integer s 1 and let H
(2)
u;11
=
~
K
1
u;1
K
1
u;1
. For l = 2; : : : ; t we construct the
sequence of matrices
R
(l)
u;11
=
2
4
I
(l)
11
s
Y
j=1
I
(l)
11
(l)
j
H
(l)
u;11
A
u;l1
3
5
A
1
u;l1
; (5.31)
~
K
(l)
u;11
=
1
3
h
R
(l)
u;11
i
1
; (5.32)
~
K
u;l
= F
T
u;l
2
6
6
4
~
K
(l)
u;11
0 0
0 K
(l)
u;22
0
0 0 K
(l)
u;33
3
7
7
5
F
u;l
; H
(l+1)
u;11
=
~
K
1
u;l
: (5.33)
From Lemma 5.4 it follows that eigenvalues of the matrices K
1
u;l
A
u;l
belong to the segment
[1; 3 +
p
2]. In particular, the eigenvalues of the matrix H
(2)
u;11
A
u;1
K
1
u;1
A
u;1
belong to this
segment. Let us take an integer l 2 and assume that eigenvalues of the matrix H
(l)
u;11
A
u;l1
belong to the segment [
l1
;
l1
]; 0 <
l1
<
l1
, where
1
= 1 and
1
= 3 +
p
2. Then,
if we take the parameters
(l)
j
; j = 1; : : : ; s in (5.31) to be reciprocal to the roots of the
Chebyshev polynomial
C
(l)
s
(z) = C
s
l1
+
l1
2z
l1
l1
!
;
26
we shall nd that the eigenvalues of spectral problem
~
K
(l)
u;11
w = K
(l)
u;11
w
belong to the segment [1
l
; 1 +
l
], where
l
=
2q
s
1 + q
2s
; q
l
=
p
l1
1
p
l1
+ 1
;
l1
=
l1
l1
:
Consequently, the eigenvalues of the matrix
~
K
1
u;l
A
u;l
belong to the segment [
l
;
l
], where
l
= 1
l
and
l
= (3 +
p
2)(1 +
l
). The matrix
~
K
u
~
K
u;t
is the MGDD-preconditioner
for the matrix A
u
. The above facts lead to the following conclusion.
Lemma 5.6
cond
~
K
1
u
A
u
t
; (5:34)
where
1
= 3 +
p
2 and
l
= (3 +
p
2)
"
(
p
l1
+ 1)
s
+ (
p
l1
1)
s
(
p
l1
+ 1)
s
(
p
l1
1)
s
#
2
; l = 2; : : : ; t: (5:35)
We shall consider the case s = 3. From (5.35) we obtain
l
= (3 +
p
2)
l1
"
l1
+ 3
3
l1
+ 1
#
2
; l = 2; : : : ; t: (5:36)
Analysis of the function '(x) = (3+
p
2)x
x + 3
3x+ 1
2
shows that f
l
g in (5.36) is a monotone
non-decreasing sequence for all
1
> 1. Besides, for all
1
2 (1;
max
], the quantities
l
in
(5.36) also belong to the interval (1;
max
]. Here
max
=
1
17
4(3 +
p
2)
1=2
(6 +
p
2) + 12
p
2 + 21
5:9
is the largest root of the equation
(3 +
p
2)
"
+ 3
3 + 1
#
2
= 1:
Thus we have proved the following statement.
Lemma 5.7 The estimate
cond
~
K
1
u
A
u
< 5:9
is valid for s = 3.
Other values of s may be considered similarly.
Absolutely the same considerations can be applied to the construction of the matrix
~
K
v
.
Therefore, we arrive at the following result.
Theorem 5.2
cond
~
K
1
A
t
;
where
t
is taken as in Lemma 5.6. The value of
t
is independent of the shape of the domain
.
Remark 5.1 For s 3 the condition number of the matrix
~
K
1
A has an upper bound which
is independent of the grid step h (number of levels t) and the shape of the domain . Thus,
the above matrix
~
K
1
can be used for constructing the matrix
~
A in (5.11).
27
5.3 The Lanczos method of minimized iterations
As noted above, in problem (1.1) the matrix G is symmetric and the matrix
~
G is symmetric
and positive denite. This fact allows us to use the Lanczos method of minimized iterations
[12, 27, 28, 29]:
q
i
=
8
>
>
<
>
>
:
~
G
1
0
; i = 1
~
G
1
Gq
1
2
q
1
; i = 2
~
G
1
Gq
i1
i
q
i1
i
q
i2
; i 2
i
=
kGq
i1
k
2
~
G
1
G
~
G
1
kGq
i1
k
2
~
G
1
;
i
=
kGq
i1
k
2
~
G
1
kGq
i2
k
2
~
G
1
; (5.37)
i
=
(
i1
; Gq
i
)
~
G
1
kGq
i
k
2
~
G
1
;
"
w
i
p
i
#
=
"
w
i1
p
i1
#
i
q
i
;
i
= G
"
w
i
p
i
#
"
f
g
#
:
The convergence rate of this method is estimated in the following lemma [37].
Lemma 5.8 The estimate
k
k
k
~
G
1
C
[k=2]
~
M
2
+ ~m
2
~
M
2
~m
2
!!
1
k
0
k
~
G
1
"k
0
k
~
G
1
; (5:38)
is valid for method (5.37). Here C
[k=2]
is the Chebyshev polynomial of degree [k=2],
~
M =
(
~
G
1
G), and 1= ~m = (
~
GG
+
).
Note that according to Theorem 5.1 the numbers
~
M and ~m are independent of h. There-
fore, we arrive at the following important result.
Theorem 5.3 Iterative method (5.37) with block-diagonal preconditioner (1.2) constructed
by using the MGDD technique and (5.10) is optimal in the sense that the computational
cost of solving problem (1.1) by this method with the accuracy " according to (5.38) can be
estimated from above by cN
un
ln "
1
, where c is a constant independent of N
un
(the number
of unknowns).
6 Numerical experiments
The aim of the numerical experiments was to investigate the rate of convergence of Lanczos
method of minimized iterations with block-diagonal preconditioner and Uzawa's method as
a function of grid step and the domain shape. Besides, it was interesting to compare the
CPU times used by these two methods in identical domains on grids with equal number of
nodes. All the computations were made in double precision using computer HP 9000/720
with performance of 17 MFlops.
We have considered a model problem in \inverse stair" domain. It is shown on Fig. 6.1.
28
-
6
- -
6
?
6
?
u = 1
d
D
U < 1
y
x
0
L
2
L
1
h
Fig. 6.1. Model region.
In all these experiments the boundary conditions were taken as
x = L
1
:
u = 1
y (h+ d=2)
d=2
!
2
;
v = 0;
x = L
2
;
u =
0
@
1
y (D=2)
D=2
!
2
1
A
U; U = d=D;
v = 0:
(the Poiseuille ow). On solid borders we take boundary condition of zero velocity:
u = 0; v = 0:
In order to describe the domain shape, hereafter in this section we use the designations of
Fig. 6.1.
The rst group of experiments was carried out using Lanczos method of minimized it-
erations with block-diagonal preconditioner. As a model domains, we used the L-shaped
domains with dierent parameters:
1
= [4; 12] [0; 4] n [4; 0] [0; 2] (d = 2; D = 4; L
1
= 4; L
2
= 12)
2
= [6; 4] [0; 3] n [6; 0] [0; 1] (d = 2; D = 3; L
1
= 6; L
2
= 4)
First, we experimentally determined the optimal parameters s (number of Chebyshev
iterations in MGDD, see (5.31)) and r (number of Chebyshev iterations for constructing the
matrix
~
A in (5.11). Tables 1 and 2 shows the results of these experiments.
s = 3 s = 4
r N
it
T ime N
it
T ime
1 81 1620 81 1800
2 52 1695 51 1886
3 43 1988 42 2219
s = 3 s = 4
r N
it
T ime N
it
T ime
1 103 574 103 638
2 68 608 67 664
3 58 734 55 766
Table 1:
1
; n
x
= 1296; n
y
= 324 Table 2:
2
; n
x
= 810; n
y
= 243
29
Hereafter n
x
denotes the maximal number of steps of basic grid in the x-direction, and n
y
in the y-direction; N
it
is the number of outer iterations of generalized Lanczos method of
minimized iterations (the stopping criterion was a reduction in the residual by a factor of
10
6
: k
N
it
k 10
6
k
0
k), T ime is the total CPU time (in seconds). As is seen from Tables 1
and 2 s = 3 and r = 1 are optimal parameters.
Second, we made the computations for various dimensions of the algebraic problem (num-
ber of levels in MGDD method). The results are given in Tables 3, 4.
l n
x
n
y
N
it
T ime
2 48 12 90 1.5
3 144 36 87 15.6
4 432 108 83 157.0
5 1296 324 81 1619.7
l n
x
n
y
N
it
T ime
2 30 9 98 0.5
3 90 27 106 3.6
4 270 81 105 46.3
5 810 243 103 573.8
Table 3:
1
; s = 3; r = 1 Table 4:
2
; s = 3; r = 1
Here l denotes the number of levels. We used optimal iterative parameters. Tables 3, 4
shows that the number of outer iterations is practically independent of the dimension of the
problem.
The second group of experiments was carried out using Usawa's method. The experimen-
tations with the Uzawa's algorithm were done on the model region
1
: The stopping criterion
for the Uzawa's iteration was kresidualk
1
10
6
: The stopping criteria for the ctitious do-
main iteration was kresidualk
1
10
12
: The results of the numerical experiments are listed
in the table 5. The rst column gives the number of velocity nodes in x and ydirection.
The number of Uzawa iterations is listed in the second column. The CPU-time for solving
the equation is given in the third column.
n
x
n
y
N
it
T ime
33 9 36 0.7
65 17 36 2.1
129 33 35 7.4
257 65 34 28.0
513 129 32 110.7
1025 257 30 464.9
2049 513 24 1397.0
Table 5. Uzawa's algorithm
with ctitious domain
Notice, that the iteration count is bounded as could be expected by Lemma 4.1. The
CPU-time usage is plotted in gure 6.2 versus the number of velocity nodes. It appears, that
the Uzawa's algorithm is about two times faster that the Lanczos method in this example.
30
Uzawa
Lanczos
CPU seconds
nodes0.5
1
2
5
10
20
50
100
200
500
1000
2000
300 1000 3000 10000 30000 100000 300000 1000000
Fig. 6.2. The CPU-time usage versus the number of velocity nodes
31
7 Acknowledgements
The authors want to acknowledge Prof. Yuri Kuznetsov, Prof. Pekka Neittaanmaki and
Prof. Jacques Periaux for their many valuable advice and comments concerning this work.
Yuri Iliash is also grateful to Alexei Kourbatov for his help in translating his part of the
report from Russian.
This work has been nancially supported by the Council of Technology of the Academy
of Finland and Dassault Aviation, France.
References
[1] G. Astrakhantsev,
Iterative methods for solving variational dierence schemes for two-dimensional second
order elliptic equations.
Doctoral thesis. LOMI Akad. Nauk SSSR, Leningrad (in Russian) (1972).
[2] G. Astrakhantsev,
Methods of ctitious domains for a second order elliptic equation with natural boundary
conditions.
In: USSR Computational Math. and Math. Phys. 18 (1978) pp. 114121.
[3] A. Banegas,
Fast Poisson solvers for problems with sparsity.
In: Math. Comp. 32 (1978), pp 441446.
[4] R.E. Bank, B.D. Welfert, H. Yserentant,
A class of iterative methods for solving saddle point problems.
In: Numer. Math. 56 (1990) pp. 645666.
[5] R. E. Bank D. J. Rose,
An O(n
2
) Method for Solving Constant Coecient Boundary Value Problems in Two
Dimensions.
In: SIAM J. Numer. Anal. 12 (1975) pp. 529540.
[6] R. E. Bank, D. J. Rose,
Marching Algorithms for Elliptic Boundary Value Problems. I: The Constant Coecient
Case.
In: SIAM J. Numer. Anal. 14 (1977) pp. 792829.
[7] R. E. Bank,
Marching Algorithms for Elliptic Boundary Value Problems. II: The Variable Coecient
Case.
In: SIAM J. Numer. Anal. 14 (1977) pp. 950970.
[8] M. Becovier, O. Pironneau,
Error estimates for nite element solution of the Stokes problem in the primitive vari-
ables.
In: Numer. Math. 33 (1979) pp. 211224.
32
[9] J.H. Bramble, J.E. Pasciak,
A preconditioning technique for indenite systems resulting from mixed approximations
of elliptic problems.
Math. Comput. 181 (1988) pp. 117.
[10] J. Cahouet, J.-P. Chabart,
Some fast 3d nite element solvers for the generalized Stokes problem.
In: Int. J. for Numer. Meth. in Fluids 8 (1988) pp. 869895.
[11] J.W. Cooley and J.W. Tukey,
An algorithm for the machine calculation of complex Fourier series equation using Fouri-
er analysis.
In: Math. Comp. 19 (1965) pp. 297301.
[12] D.K. Faddeev, V.N. Faddeeva,
Computational Methods of Linear Algebra. San Francisco: Freeman 1963.
[13] S. Finogenov Yu. Kuznetsov,
Two-stage ctitious components method for solving the Dirichlet boundary value problem.
In: Sov. J. Numer. Anal. Math. Modelling Vol. 3, No.4 (1988) pp. 301323.
[14] C.A.J. Fletcher,
Computational Techniques for Fluid Dynamics 2. Berlin Heidelberg New York Tokyo:
Springer-Verlag 1988.
[15] M. Fortin, R. Glowinski,
Augmented Lagrangian Methods: Application to the Numerical Solution of Boundary-
Value Problems. Vol. 15 of Studies in Mathematics and its Applications, North-Holland,
1976.
[16] R. Glowinski, J.-L. Lions, R. Tremolieres,
Analyse numerique des inequations variationnelles. Dunod, Paris (1976).
[17] W. Hackbusch,
Multigrid methods and Applications. Berlin Heidelberg New York: Springer-Verlag 1985.
[18] R.W. Hockney,
A fast direct solution of Poisson's equation using Fourier analysis.
In: J. Assoc. Comput. Math. 12 (1965) pp. 95113.
[19] R.W. Hockney,
The potential calculation and some applications.
In: Methods in Computational Physics 9 (1970) pp. 135211.
[20] G.M. Kobel'kov,
On numerical method for solving Navier-Stokes equation in the variables \velocity-
pressure".
In: Vychislitel'nye Protsessy i Sistemy (Computational Processes and Systems), vol. 8,
Nauka, Moscow, 1991, pp. 204236 (in Russian).
33
[21] G.M. Kobel'kov, V.D. Valedinskiy,
On the inequality kpk
L
2
ckrpk
W
1
2
and its nite dimensional image.
In: Sov. J. Numer. Anal. Math. Modelling 1 (1986) pp. 189201.
[22] Yu.A. Kuznetsov,
Multigrid domain decomposition methods.
In: Preprints Eight International Conference on Computer Methods in Applied Science
and Engineering, Versailles, France (1987) pp. 605616.
[23] Yu.A. Kuznetsov,
Algebraic multigrid domain decomposition methods.
In: Sov. J. Numer. Anal. Math. Modelling 4 (1989) pp. 351379.
[24] Yu.A. Kuznetsov,
Multi-level domain decomposition methods.
In: Applied Numerical Mathematics 6 (1989/90) pp. 303314.
[25] Yu. Kuznetsov, A. Matsokin,
On partial solution of systems of linear algebraic equations.
In: Vychislitel'nye Metody Lineinoy Algebry (Computational Methods of Linear Alge-
bra) (Ed. G.I. Marchuk). Vychisl. Tsentr Sib. Otdel. Akad. Nauk SSSR, Novosibirsk
(1978), pp. 6289 (in Russian). English translation in Sov. J. Numer. Anal. and Math.
Modelling 4 (1989) pp. 453468.
[26] O.A. Ladyzhenskaya,
Mathematical problems of viscous incompressible uid dynamics. Nauka, Moscow, 1970
(in Russian).
[27] C. Lanczos,
Solution of the systems of linear equations by minimized iterations.
In: J. Res. Nat. Bur. Stand. 49 (1952) pp. 3353.
[28] G.I. Marchuk, Yu.A. Kuznetsov,
On optimal iteration processes.
In: Soviet Math. Dokl. 10 (1969) pp. 5961 (in Russian).
[29] G.I. Marchuk, Yu.A. Kuznetsov,
Methodes iteratives et fonctionnelles quadratiques.
In: Methodes Mathematiques de l'Informatique4: Sur les methodes numeriques en
sciences physiques et economiques (Eds. J.-L. Lions, G.I. Marchouk). Dunod, Paris
(1978) pp. 3132.
[30] A. Matsokin,
On development of the ctitious domains method.
In: Vychislitel'nye Metody Lineinoy Algebry (Computational Methods of Linear Alge-
bra) (Ed. G.I. Marchuk). Vychisl. Tsentr Sib. Otdel. Akad. Nauk SSSR, Novosibirsk (in
Russian) (1973) pp. 4856.
[31] O. Pironneau,
Finite Element Methods for Fluids. John Wiley & Sons New York, Masson Paris (1989)
34
[32] T. Rossi,
On Fast Solvers for Elliptic Problems.
In: Reports on Applied Mathematics and Computing 4 (1992), University of Jyvaskyla,
Finland.
[33] V.V. Shaidurov,
Multigrid iterative algorithms for solving mesh stationary Stokes problem.
In: Vychislitel'nye Protsessy i Sistemy (Computational Processes and Systems) vol. 6,
Nauka, Moscow (1988) pp. 264270 (in Russian).
[34] P. Swarztrauber,
The methods of cyclic reduction, Fourier analysis and the FACR algorithm for the dis-
crete solution of Poisson's equation on a rectangle.
In: SIAM Review Vol 19, No. 3 (1977) pp. 490501.
[35] R. Sweet,
A Cyclic Reduction Algorithm for Solving Block Tridiagonal Systems of Arbitrary Di-
mension.
In: SIAM J. Numer. Anal. Vol 14, No. 4 (1977) pp. 706719.
[36] R. Sweet,
A Generalized Cyclic Reduction Algorithm.
In: SIAM J. Numer. Anal. Vol. 11, No. 3 pp. 506520.
[37] V.V. Voevodin, Yu.A. Kuznetsov,
Matrices and Computations. Nauka, Moscow (1984) (in Russian).
35