9.5 Chapitre 5
331
n
i=1
λi
=
n
i=1
(1 − ω) + ωλi(D
−1 F )
1 − ωλi(D −1 E)
= |1 − ω|
n .
Donc, au moins une valeur propre doit satisfaire l’inégalité |λi| ≥ |1 − ω|.
Ainsi, une condition nécessaire pour assurer la convergence est |1 − ω| < 1,
c’est-à-dire, 0 < ω < 2.
Solution 5.14 La matrice A =
3 2
2 6
est à diagonale strictement dominante
par lignes, ce qui est une condition suffisante pour la convergence de la méthode
de Gauss-Seidel. En revanche, la matrice A =
1 1
1 2
n’est pas à diagonale
strictement dominante par lignes, mais elle est symétrique. Pour vérifier si elle
est aussi définie positive, c’est-à-dire, z
T Az > 0 pour tout z = 0 de R
2 , on
utilise les instructions MATLAB suivantes (naturellement, dans ce cas simple,
on pourrait effectuer le calcul à la main) :
syms z1 z2 real
z =[ z1 ; z2 ]; A =[1 1; 1 2];
pos =z ’* A* z; simple ( pos )
ans =
z1 ^2+2* z1* z2 +2* z2 ^2
ans =
z1^2+2*z1*z2+2*z2^2
La commande syms z1 z2 real est nécessaire pour convertir les variables
symboliques z1 et z2 en nombres réels. La commande simple(pos) essaie plusieurs simplifications de pos et retourne la plus courte. Il est facile de voir que
la quantité calculée est positive car elle peut s’écrire (z1+z2)ˆ2 +z2ˆ2. Ainsi,
la matrice est symétrique définie positive, et la méthode de Gauss-Seidel est
convergente.
Solution 5.15 On trouve :
pour la méthode de Jacobi
x
(1)
1
=
1
2
(1 − x
(0)
2 ),
x
(1)
2
= −
1
3
(x
(0)
1 );
⇒
x
(1)
1
=
1
4
,
x
(1)
2
= −
1
3
;
pour la méthode de Gauss-Seidel
x
(1)
1
=
1
2
(1 − x
(0)
2 ),
x
(1)
2
= −
1
3 x
(1)
1 ,
⇒
x
(1)
1
=
1
4
,
x
(1)
2
= −
1
12 .
Pour la méthode du gradient, on commence par calculer le résidu initial
r
(0) = b − Ax
(0) =
1
0
−
2 1
1 3
x
(0) =
−3/2
−5/2
.
Puis, comme
P
−1 =
1/2 0
0 1/3
,
331
n
i=1
λi
=
n
i=1
(1 − ω) + ωλi(D
−1 F )
1 − ωλi(D −1 E)
= |1 − ω|
n .
Donc, au moins une valeur propre doit satisfaire l’inégalité |λi| ≥ |1 − ω|.
Ainsi, une condition nécessaire pour assurer la convergence est |1 − ω| < 1,
c’est-à-dire, 0 < ω < 2.
Solution 5.14 La matrice A =
3 2
2 6
est à diagonale strictement dominante
par lignes, ce qui est une condition suffisante pour la convergence de la méthode
de Gauss-Seidel. En revanche, la matrice A =
1 1
1 2
n’est pas à diagonale
strictement dominante par lignes, mais elle est symétrique. Pour vérifier si elle
est aussi définie positive, c’est-à-dire, z
T Az > 0 pour tout z = 0 de R
2 , on
utilise les instructions MATLAB suivantes (naturellement, dans ce cas simple,
on pourrait effectuer le calcul à la main) :
syms z1 z2 real
z =[ z1 ; z2 ]; A =[1 1; 1 2];
pos =z ’* A* z; simple ( pos )
ans =
z1 ^2+2* z1* z2 +2* z2 ^2
ans =
z1^2+2*z1*z2+2*z2^2
La commande syms z1 z2 real est nécessaire pour convertir les variables
symboliques z1 et z2 en nombres réels. La commande simple(pos) essaie plusieurs simplifications de pos et retourne la plus courte. Il est facile de voir que
la quantité calculée est positive car elle peut s’écrire (z1+z2)ˆ2 +z2ˆ2. Ainsi,
la matrice est symétrique définie positive, et la méthode de Gauss-Seidel est
convergente.
Solution 5.15 On trouve :
pour la méthode de Jacobi
x
(1)
1
=
1
2
(1 − x
(0)
2 ),
x
(1)
2
= −
1
3
(x
(0)
1 );
⇒
x
(1)
1
=
1
4
,
x
(1)
2
= −
1
3
;
pour la méthode de Gauss-Seidel
x
(1)
1
=
1
2
(1 − x
(0)
2 ),
x
(1)
2
= −
1
3 x
(1)
1 ,
⇒
x
(1)
1
=
1
4
,
x
(1)
2
= −
1
12 .
Pour la méthode du gradient, on commence par calculer le résidu initial
r
(0) = b − Ax
(0) =
1
0
−
2 1
1 3
x
(0) =
−3/2
−5/2
.
Puis, comme
P
−1 =
1/2 0
0 1/3
,
