Академический Документы
Профессиональный Документы
Культура Документы
(1)
j k
N, N
j, k = 0, 1, ..., N
At mesh points (=grid points) inside of R, we approximate the equation u = g . To do so, we recall the
approximation
G(x + h) 2G(x) + G(x h) h2 (4)
G (x) =
G ( )
2
h
12
with some [x h, x + h]. This assumes G is four
times continuously dierentiable on [x h, x + h].
Since
2u(x, y ) 2u(x, y )
+
u(x, y ) =
x2
y 2
we obtain at each (xj , yk ) R that
u(xj+1, yk ) 2u(xj , yk ) + u(xj1, yk )
h2
u(xj , yk+1) 2u(xj , yk ) + u(xj , yk1)
+
h2
4
4
2
h u(j , yk ) u(xj , k )
+
12
x4
y 4
= g (xj , yk )
(2)
(xj , yk )
(3)
(xj , yk )
(4)
uh(xj , yk ) | 1 j, k N
JACOBI ITERATION
For m = 0, 1, 2, ..., dene
1
(m+1)
(m)
(m)
uh
(xj , yk ) =
uh (xj , yk1) + uh (xj1, yk )
4
(m)
(m)
uh
1
Q=
4
(m)
= Quh
+ Gh
T I 0 0 0
I T I
..
0 I T
I
..
...
0
I T I
0
I T
T =
0 1
0
1 0 1
..
..
...
1 0 1
0
1 0
(m)
uh =
(m)
uh (, y1)
(m)
uh (, y2)
..
(m)
uh (, yN 1)
(m)
uh (, yk ) =
(m)
uh (x1, yk )
(m)
uh (x2, yk )
..
(m)
uh (xN 1, yk )
Gh =
1 B(y ) h2 G (, y )
1
1
h
4
1 B(y ) h2 G (, y )
2
2
h
4
..
1 B(y
2
N 1) h Gh (, yN 1)
4
B(yk ) =
Gh(, yk ) =
f (x0, yk )
0
..
0
f (xN , yk )
g (x1, yk )
g (x2, yk )
..
g (xN 1, yk )
uh = Quh + Gh
with uh written in accordance with the above deni(m)
tion of uh .
uh = Quh + Gh
(m+1)
uh
(m)
= Quh
+ Gh
(7)
(8)
(m)
eh
(m)
= Qeh ,
m = 0, 1, ...
(9)
GAUSS-SEIDEL ITERATION
For m = 0, 1, 2, ..., dene
1
(m+1)
(m+1)
uh
(xj , yk ) =
uh
(xj , yk1)
4
(m+1)
+ uh
(m)
(xj1, yk ) + uh (xj+1, yk )
(m)
(xj , yk ) R
(10)
(m)
N uh
(m)
= Gh + P uh
RATES OF CONVERGENCE
Introduce
= 1 2 sin2
2N
1 + sqrt 1 2
(11)
Then for the rates of convergence of the various iteration methods we have studied when applied to solving
(7), uh = Quh + Gh, we have
Rate of Convergence
Method
r (M )
Jacobi
Gauss-Seidel
2
SOR
1
eh
(m)
= M ( ) eh ,
m = 0, 1, ...
(12)
2
+
sqrt
+ 4 (1 ) ,
2
2
r (M ( )) =
0
1,
COSTS
Recall the notation from 8.7 regarding costs:
Cost(c, , n) = m (n)
with c the factor by which the error was decreasing
per iterate, n the order of the system, the error
tolerance in
(m)
(0)
x x
x x
R(c) = log c
c = 1 ,
APPLICATION TO SOLVING
POISSONS EQUATION
Gauss-Jacobi :
c==
1
2
2
1 2 h + O h4
12 2h2
Gauss-Seidel :
c=
1 2h2
+ O h4
2h2
SOR :
c = 1 = 1 2h + O h2
2h
log
5n
2h2
5N 4 log
2
log
5n2h
2(N 1)1
5N 3 log
2
2
1
KJ
KGS
KSOR
N = 10
.9510565
.9045085
.5278640
46
23
4
N = 20
N = 40
.9876883 .9969173
.9755283 .9938442
.7294538 .8544978
186
746
93
373
8
15
N = 80
.99922904
.99845867
.92444658
2985
1493
31
AN INITIAL GUESS
(0)
(xj , yk )
LINE ITERATION
1 u (x
h j+1, yk ) + uh(xj , yk+1)
4
1 j, k N 1
MULTIGRID ITERATION
In our case with the Poisson equation, we would generally have Nj+1 = 4Nj , approximately. We want
to solve for the most accurate discretization, that for
N = Nq .
The general philosophy is to use information from
each of the systems AN uN = bN to solve all the
systems with a ner mesh. There are a number of
ways is which this may be carried out.
uNq v +
This converges extremely rapidly; and there are public domain packages available which implement it for
common classes of partial dierential equations. In
general these are the fastest means of solving discretizations of PDEs.
DIRECT METHODS
With the systems for some special PDEs, including the
Poisson equation on a rectangle, it is possible to give
an exact method of solution which is also extremely
ecient. It depends on knowing the eigenvalues and
eigenvectors for the matrix AN . Since the matrix is
symmetric and positive denite, there is a basis of
orthogonal eigenvectors; and it can be found explicitly.
Suppose it is written as
b=
N
j=1
b, v
(j)
v(j)
uN =
N
1
j=1 j
b, v
(j)
v(j)
0.95
0.9
0.85
0.2
0.4
0.6
0.8
1.2
1.4
1.6
1.8
0.99
0.98
0.97
0.96
0.95
0.94
0.93
0.92
0.2
0.4
0.6
0.8
1.2
1.4
1.6
1.8