Sunteți pe pagina 1din 20

Chapitre 3

Mthodes directes de rsolution


du systme linaire Ax = b
3.1 Introduction
Dans ce chapitre, on tudie quelques mthodes directes permettant de rsoudre
le systme
Ax = b (3.1)
o A M
n
(R), lensemble des matrices carres n n coefcients rels, et
b R
n
. Une mthode directe est une mthode qui permet de rsoudre le systme
3.1 en un nombre ni doprations et en arithmtique exacte. Dans ce chapitre, on
prsente les mthodes suivantes :
la mthode dlimination de Gauss,
la mthode de la dcomposition LU,
la mthode de Cholesky,
la mthode de la factorisation QR.
3.2 Mthode dlimination de Gauss
Lide de cette mthode est de se ramener un systme linaire dont la ma-
trice est triangulaire suprieure, on obtient ensuite la solution par simple remonte.
Exemple
57
58CHAPITRE 3. MTHODES DIRECTES DE RSOLUTIONDUSYSTME LINAIRE AX = B
On cherche rsoudre le systme suivant :
_

_
2x + 3y + 3z +t = 15
4x 6y + 3z + 2t = 3
x +y +z +t = 5
2x y +z +t = 1
(3.2)
La mthode de Gauss, consiste liminer x des lignes 2, 3, 4, puis y des lignes 3, 4,
puis z de la ligne 4. On obtient alors la valeur de t et on en dduit les autres valeurs
en remontant. Le systme (3.2) scrit sous forme matricielle Ax = b :
_
_
_
_
_
2 3 3 1
4 6 3 2
1 1 1 1
2 1 1 1
_
_
_
_
_
_
_
_
_
_
x
y
z
t
_
_
_
_
_
=
_
_
_
_
_
15
3
5
1
_
_
_
_
_
tape 1
On pose A
1
= A et on note a
1
i,j
, 1 i 4, 1 j 4 llment (i, j) de la
matrice A. Lorsquil est non nul, on nomme pivot (de la premire tape) llment
a
1
1,1
. Ici, a
1
1,1
= 2 . On effectue alors pour toute ligne L
i
, 2 i 4 :
L
i
L
i

a
1
i,1
a
1
1,1
L
1
On obtient :
_
_
_
_
_
2 3 3 1
0 0 9 4
0
5
2
5
2
3
2
0 2 4 2
_
_
_
_
_
_
_
_
_
_
x
y
z
t
_
_
_
_
_
=
_
_
_
_
_
15
33
25
2
16
_
_
_
_
_
.
tape 2
On note A
2
la matrice obtenue. Maintenant, le pivot a
2
2,2
de la nouvelle matrice est
nul. On change la deuxime et la troisime ligne. On obtient :
_
_
_
_
_
2 3 3 1
0
5
2
5
2
3
2
0 0 9 4
0 2 4 2
_
_
_
_
_
_
_
_
_
_
x
y
z
t
_
_
_
_
_
=
_
_
_
_
_
15
25
2
33
16
_
_
_
_
_
.
Le pivot est maintenant a
2
2,2
=
5
2
. On effectue :
L
4
L
4

a
4,2
a
2,2
L
2
= L
4

4
5
L
2
3.2. MTHODE DLIMINATION DE GAUSS 59
Ce qui donne :
_
_
_
_
_
2 3 3 1
0
5
2
5
2
3
2
0 0 9 4
0 0 2
4
5
_
_
_
_
_
_
_
_
_
_
x
y
z
t
_
_
_
_
_
=
_
_
_
_
_
15
25
2
33
6
_
_
_
_
_
.
tape 3
On obtient la matrice A
3
. Le pivot est maintenant llment a
3
3,3
= 9. On effectue :
L
4
L
4

a
4,3
a
3,3
L
3
= L
4

2
9
L
3
.
Ce qui donne :
_
_
_
_
_
2 3 3 1
0
5
2
5
2
3
2
0 0 9 4
0 0 2
4
45
_
_
_
_
_
_
_
_
_
_
x
y
z
t
_
_
_
_
_
=
_
_
_
_
_
15
25
2
33

4
3
_
_
_
_
_
.
tape 4
La matrice obtenue est maintenant triangulaire suprieure, et on peut rsoudre le
systme par remonte. On trouve :
_
_
_
_
_
x
y
z
t
_
_
_
_
_
=
_
_
_
_
_
6
1
3
15
_
_
_
_
_
.
Algorithme
De lexemple prcdent on peut tirer lalgorithme suivant :
Pour k allant de 1 n 1
Si tous les lments sous le pivot dans la colonne k est nulle, passer la colonne
suivante.
Si llment a
k,k
est nul, et si il existe un lement non nul, sous le pivot, dans la
colonne k, permuter la ligne i avec la ligne k o i est le plus petit entier suprieur
k tel que a
i,k
soit non nul.
Ensuite, pour tout i > k, effectuer lopration
L
i
L
i

a
i,k
a
k,k
L
k
.
Thorme 14. Soit A une matrice carre (inversible ou non). Il existe au moins
une matrice inversible M telle que la matrice MA soit triangulaire suprieure.
60CHAPITRE 3. MTHODES DIRECTES DE RSOLUTIONDUSYSTME LINAIRE AX = B
Dmonstration. La dmonstration consiste en lcriture de la mthode dcrite dans
lexemple prcdent. chaque tape la nouvelle matrice, est obtenue par une ven-
tuelle permutation de lignes et la mise 0 de tous les lments situs en dessous
du pivot. Une permutation de la ligne i et la ligne j sobtient par la multiplication
gauche de A par la matrice P obtenue en permutant les lignes i et j de la la
matrice identit. Quant lopration de mise 0 de tous les coefcients situs en
en dessous (sur la mme colonne) du pivot, elle se traduit, lorsque le pivot est le
coefcient (k, k) de la matrice, par la multiplication gauche, par une matrice E
dnie par :
_

_
E
i,i
= 1 pour tout i 1, .., N.
E
i,k
=
a
i,k
a
k,k
si i > k.
E
i,j
= 0 pour tous les autres indices.
Notant E
k
et P
k
les matrices intervenant ltape k on a :
M =
n1

k=1
(E
k
P
k
)
Donc,
det(M) =
n1

k=1
det(E
k
) det(P
k
) = (1)
d
,
o d est le nombre de permutations effectues au cours de lalgorithme. On en
dduit que M inversible.
3.3 Mthode de dcomposition LU
La mthode de dcomposition LU consiste factoriser la matrice A en un
produit de deux matrices triangulaires
A = LU
o L est triangulaire inferieure (lower) et U est triangulaire superieure (upper). La
rsolution du systme linaire Ax = b est alors ramene la rsolution de deux
systmes Ly = b et Ux = y. Cette mthode est intressante dans le cas o on a
rsoudre plusieurs quations Ax = b
i
car la dcomposition A = LU est effectue
une fois pour toute. Cest en fait lalgorithme de llimination de Gauss dans le
cas o on ne permute jamais. On appelle sous matrice diagonale dordre k de la
matrice A M
n
(R), la matrice dnie par :

k
=
_
_
_
a
1,1
a
1,k
.
.
.
.
.
.
.
.
.
a
1,k
a
k,k
_
_
_.
3.3. MTHODE DE DCOMPOSITION LU 61
Le rsultat suivant donne une condition sufsante sur la matrice A pour quil ny
ait pas de permutation au cours de la mthode dlimination de Gauss.
Thorme 15. (factorisation LU) Soit Aune matrice dont toutes les sous-matrices
diagonales sont inversibles. Il existe un unique couple de matrices (L, U), avec U
triangulaire suprieure, et L triangulaire infrieure diagonale unit tel que
A = LU
Dmonstration. Supposons qu au cours de llimination de Gauss, il ny ait pas
besoin de faire de permutations. Soit A
n
la matrice obtenue aprs la n1
me
tape,
et E
1
,E
2
,...,E
n1
les matrices permetttant de mettre 0 les lments sous le pivot
des matrices A
1
= A, A
2
, ..., A
n1
. Alors on a :
A
n
= E
n1
...E
1
A,
avec,
E
k
=
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
1
0
.
.
.
.
.
. 1
.
.
.
a
k
k+1,k
a
k
k,k
1
.
.
.
.
.
.
.
.
.
0
a
k
n,k
a
k
k,k
1
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
et o a
k
i,j
est llment (i, j) de la matrice A
k
. On pose U = A
n
et L = (E
1
)
1
...(E
n1
)
1
.
Alors A = LU.
Il faut maintenant montrer que L est triangulaire infrieure. On a :
(E
k
)
1
=
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
1
0
.
.
.
.
.
. 1
.
.
. +
a
k
k+1,k
a
k
k,k
1
.
.
.
.
.
.
.
.
.
0 +
a
k
n,k
a
k
k,k
1
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
et
62CHAPITRE 3. MTHODES DIRECTES DE RSOLUTIONDUSYSTME LINAIRE AX = B
(E
1
)
1
(E
2
)
1
...(E
1
)
1
=
_
_
_
_
_
_
_
_
_
1 0 0
a
1
2,1
a
1
1,1
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 0
a
1
n,1
a
1
1,1

a
n1
n,1
a
n1
n1,n1
1
_
_
_
_
_
_
_
_
_
.
On vrie maintenant que les pivots ne sannulent pas sous les hypothses faites
sur les
k
. On vrie cela par rcurrence. Le premier pivot a
1,1
est non nul car
gal
1
. On suppose que les pivots jusqu lodre k 1 sont non nuls. Montrons
que le pivot a
k
k,k
est non nul. Comme les k 1 premiers pivots sont non nuls, on a
pu calculer la matrice A
k
. On crit alors lgalit
(E
1
)
1
...(E
k1
)
1
A
k
= A
sous la forme dune galit entre matrices par blocs :

L
k
1,1
0
L
k
2,1
I

U
k
1,1
A
k
1,2
A
k
2,1
A
k
2,2

k
A
1,2
A
2,1
A
2,2

avec U
k
1,1
, L
k
1,1
, et
k
blocs carrs de taille k, les autres blocs tant de taille n k.
On a alors
L
k
1,1
U
k
1,1
=
k
o U
k
1,1
est une matrice triangulaire suprieure et L
k
1,1
une matrice triangulaire inf-
rieure avec des 1 sur la diagonale. On en dduit que la matrice U
k
1,1
=
k
(L
k
1,1
)
1
est inversible comme produit de matrices inversibles. Son dterminant est donc non
nul. Or
det U
k
1,1
=
k

i=1
a
i
i,i
= 0
donc le pivot a
k
k,k
ltape k est non nul.
Il reste vrier que la dcomposition LU est unique. Supposons que la matrice
A admette deux dcompositions :
A = L
1
U
1
= L
2
U
2
alors
(L
2
)
1
L
1
= U
2
(U
1
)
1
Mais (L
2
)
1
L
1
est une matrice triangulaire infrieure et U
2
(U
1
)
1
est une matrice
triangulaire suprieure. Ces deux matrices sont donc diagonales. Et L
1
2
L
1
= I
(car leur diagonale est compose de 1). On en dduit que U
2
(U
1
)
1
= I.
3.4. MTHODE DE CHOLESKY 63
Exercice
1. Montrer que linverse dune matrice triangulaire infrieure inversible est une
matrice triangulaire infrieure.
2. Montrer que le produit de deux matrices triangulaires infrieures est triangu-
laire infrieure.
Voici lalgorithme de factorisation LU pour une matrice A de taille n n.
Algorithme de dcomposition LU
Pour k allant de 1 n
Pour i allant de k + 1 n
a
ik
=
a
ik
a
kk
Pour j allant de k + 1 n
a
ij
= a
ij
a
ik
a
kj
Fin j
Fin i
Fin k
Dans la pratique, on peut galement calculer les coefcients des matrices L et
U en crivant lgalit matricielle A = LU (voir feuille de TD4).
3.4 Mthode de Cholesky
Dnition 6. Une matrice A M
n
(R) est dite dnie positive si pour tout x R
n
et x = 0, on a
< Ax, x >> 0
La mthode de Cholesky ne sapplique quaux matrices relles symtriques d-
nies positives. Elle consiste en une factorisation A = BB
t
, o B est une matrice
triangumaire infrieure, dans le but de ramener la rsolution de lquation linaire
Ax = b la rsolution de deux quations By = b et B
t
x = y. Ceci est intres-
sant lorsquon a rsoudre plusieurs systmes avec la mme matrice et diffrents
second membres car la dcomposition est effectue une fois pour toutes. Exercice
Montrer que si une matrice est dnie positive alors on peut lui appliquer la facto-
risation LU.
Correction Toute matrice dnie positive est inversible. En effet :
Ax = 0 < Ax, x >= 0 x = 0
Et on a que
k
est dnie positive en prenant x
i
= 0 pour i > k.
64CHAPITRE 3. MTHODES DIRECTES DE RSOLUTIONDUSYSTME LINAIRE AX = B
Thorme 16. Soit A une matrice relle symtrique dnie positive. Il existe une
unique matrice relle B triangulaire infrieure, telle que tous ses lments diago-
naux soient positifs et qui vrie :
A = BB
t
Dmonstration. Par application du thorme sur la dcomposition LU, il existe un
unique couple de matrices (L, U) tel que A = LU, o L est triangulaire infrieure
avec des 1 sur la diagonale et U est triangulaire suprieure. On note D la matrice
diagonale dnie par
D
i,i
= (

U
i,i
).
On peut dnir cette matrice car on a, (voir la dmonstration du thorme de la
factorisation LU, et aussi exercice 2, TD4) pour tout k {1, .., n} :
U
k,k
=
det(
k
)

k1
i=1
U
i,i
> 0.
On pose alors :
B = LD
et
C = D
1
U.
Comme A = A
t
, on en dduit que
A = BC = (BC)
t
= C
t
B
t
ou encore
C(B
t
)
1
= B
1
C
t
.
La matrice C(B
t
)
1
est triangulaire suprieure tandis que la matrice B
1
C
t
est
triangulaire infrieure. Elles sont donc toutes les deux diagonales. De plus, les
lments diagonaux de B et C sont les mmes, donc la diagonale de B
1
C
t
nest
constitue que de 1. On en dduit que
C(B
t
)
1
= B
1
C
t
= I.
Donc,
C = B
t
.
Il reste montrer lunicit de la dcomposition. Supposons quil existe deux facto-
risations
A = B
1
B
t
1
= B
2
B
t
2
,
3.4. MTHODE DE CHOLESKY 65
alors,
B
1
2
B
1
= B
t
2
(B
t
1
)
1
.
Il existe donc une matrice diagonale D telle que
B
1
2
B
1
= D,
et donc
B
1
= B
2
D.
On en dduit que
A = B
1
B
t
1
= B
2
D(B
2
D)
t
= B
2
(DD
t
)B
t
2
.
Mais,
A = B
2
B
t
2
Comme B
2
est inversible, il vient,
D
2
= I.
Les coefcients de D valent donc 1 ou 1. Or les coefcients diagonaux de B
1
et B
2
sont positifs, donc de lgalit B
1
= B
2
D on dduit que les coefcients
diagonaux de D sont gaux 1 et donc B
1
= B
2
.
Algorithme de Cholesky
Pour j allant de 1 n
Pour k allant de 1 j 1
a
jj
= a
jj
(a
jk
)
2
Fin k
a
jj
=

a
jj
Pour i allant de j + 1 n
Pour k allant de 1 j 1
a
ij
= a
ij
a
ik
a
jk
Fin k
a
ij
=
a
ij
a
jj
Fin i
Fin j
66CHAPITRE 3. MTHODES DIRECTES DE RSOLUTIONDUSYSTME LINAIRE AX = B
3.5 Mthode de dcomposition QR
Lide de la mthode de factorisation QR est encore de se ramener la rsolu-
tion dun systme linaire dont la matrice est triangulaire. Cependant, on ne va pas
crire une matrice A comme le produit de deux matrices triangulaires mais comme
le produit dune matrice triangulaire R et dune matrice orthogonale unitaire Q,
qui est aussi facile inverser puisque Q
1
= Q
t
. Pour rsoudre le systme linaire
Ax = b, on effectue :
y = Q
t
b
puis,
Rx = y
par remonte. Si A est inversible, lexistence dune telle matrice orthogonale Q est
donne par le rsultat suivant dont on va donner une dmonstration constructive
par le procd de Gram-Schmidt.
Thorme 17. Factorisation QR.
Soit A une matrice relle inversible. Il existe un unique couple (Q, R), o Q est
une matrice orthogonale, et R une matrice triangulaire suprieure dont tous les
lments diagonaux sont positifs tel que
A = QR.
Avant de donner la dmonstration rappelons le procd dorthogonalisation de
Gram-Schmidt.
Procd dorthogonalisation de Gram-Schmidt
Le procd dorthogonalisation de Gram-Schmidt construit une base orthonormale
de vecteurs partir dune base quelconque (a
1
, a
2
, ..., a
n
) de vecteurs de R
n
. On
procde comme suit, on pose :
q
1
=
a
1
||a
1
||.
Ensuite, on cherche,
q
2
= a
2
+q
1
tel que
< q
2
, q
1
>= 0.
Cela scrit :
< a
2
, q
1
> + < q
1
, q
1
>= 0.
On en dduit que :
= < a
2
, q
1
>
3.5. MTHODE DE DCOMPOSITION QR 67
On pose ensuite
q
2
=
q
2
|| q
2
||
=
a
2
< a
2
, q
1
> q
1
||a
2
< a
2
, q
1
> q
1
||
.
Puis, suppposant q
1
, q
2
, ..., q
i1
construits, on cherche :
q
i
= a
i
+
i1

k=1

k
q
k
tel que pour tout j 1, .., i 1
< q
i
, q
j
>= 0.
Cela donne pour tout j 1, ..i 1,
< a
i
+
i1

k=1

k
q
k
, qj >= 0
On en dduit que

j
= < a
i
, q
j
>
puis que
q
i
= a
i

i1

k=1
< a
i
, q
k
> q
k
.
Enn on pose :
q
i
=
q
i
|| q
i
||
=
a
i
+

i1
k=1
< a
i
, q
k
> q
k
||a
i
+

i1
k=1
< a
i
, q
k
> q
k
||
Dmonstration du thorme de factorisation QR. Soient a
1
, a
2
, ..., a
n
les n vec-
teurs colonnes de A. Comme ils forment une base de R
n
, on leur applique le
procd dorthonormalisation de Gram-Schmidt. On obtient une base orthonorme
q
1
, q
2
, ..., q
n
, o pour tout i {1, ..., n}, le vecteur q
i
est dni par :
q
i
=
a
i

i1
k=1
< a
i
, q
k
>
||a
i

i1
k=1
< a
i
, q
k
> ||
. (3.3)
En crivant lquation (3.3) sous forme matricielle, on obtient :

q
1
q
2
... q
n

_
_
_
_
_
|| q
1
|| 0 ... 0
< a
2
, q
1
> || q
2
|| ... 0
... ... 0
< a
n
, q
1
> < a
n
, q
2
> ... || q
n
||
_
_
_
_
_
= A,
68CHAPITRE 3. MTHODES DIRECTES DE RSOLUTIONDUSYSTME LINAIRE AX = B
cest dire
QR = A,
o Qest la matrice forme des vecteurs q
i
,1 i n et Rest la matrice triangulaire
suprieure dnie par :

r
k,i
= < q
k
, a
i
> si 1 k i 1,
r
i,i
= || q
i
|| = ||a
i

i1
k=1
< a
i
, q
k
> q
k
||.
Pour montrer lunicit de cette factorisation, on suppose quil existe deux fac-
torisations
A = Q
1
R
1
= Q
2
R
2
.
On en dduit que :
Q
t
2
Q
1
= R
2
R
1
1
qui est aussi triangulaire suprieure coefcients diagonaux positifs.
Soit T = R
2
R
1
1
. On a :
TT
t
= (Q
t
2
Q
1
)(Q
t
2
Q
1
)
t
= I.
Donc T est une factorisation de Cholesky de lidentit. Or cette factorisation est
unique donc T = I.
3.5. MTHODE DE DCOMPOSITION QR 69
L2. Mthodes numriques. Universit du Havre
Feuille de TD 4.
Exercice 1.
1. Montrer que linverse dune matrice triangulaire infrieure inversible est une
matrice triangulaire infrieure.
2. Montrer que le produit de deux matrices triangulaires infrieures est une
matrice triangulaire infrieure.
3. Soit A
k
une matrice triangulaire infrieure avec des 1 sur sa diagonale, et
telle que tous les lments sous la diagonale soient nuls sauf ceux situs sur
la colonne k. Cest dire que :
A
k
=
_
_
_
_
_
_
_
_
_
_
_
_
_
1
0
.
.
.
.
.
. 1
.
.
. a
k+1,k
1
.
.
.
.
.
.
.
.
.
0 a
n,k
1.
_
_
_
_
_
_
_
_
_
_
_
_
_
Dterminer linverse de A
k
. Justier votre rponse.
4. Calculer le produit :
n

k=1
A
k
.
Exercice 2.
Soit A une matrice symtrique dnie positive. Montrer que son dterminant est
strictement positif.
Exercice 3.
Soit A une matrice inversible. Montrer que sil existe L matrice triangulaire inf-
rieure diagonale unit, et U matrice triangulaire suprieure telles que A = LU
alors toutes les sous-diagonales de A sont inversibles.
Exercice 4.
En crivant le produit
A = LU
70CHAPITRE 3. MTHODES DIRECTES DE RSOLUTIONDUSYSTME LINAIRE AX = B
proposer une mthode pratique de calcul des coefcients L et U. Dterminer, par
cette mthode, la dcomposition LU de la matrice suivante :
_
_
_
1 3 5
1 4 2
2 2 7
_
_
_
Exercice 5.
On considre la matrice suivante :
_
_
_
2 1 0
1 2 1
0 1 2
_
_
_
Cette matrice est dnie positive. Dterminer sa factorisation de Cholesky.
Exercice 6.
Donner la dcomposition QR de la matrice suivante.
_
_
_
1 1 2
1 1 0
0 2 1
_
_
_
Exercice 7.
On dit quune matrice A = (a
i,j
)
1i,jn
est une matrice bande de demi largeur de
bande p N si a
i,j
= 0 pour |i j| > p. La largeur de la bande est alors 2p + 1.
Montrer que la factorisation LU conserve la strucure bande pour les matrices L et
U.
Exercice 8.
Dterminer le nombre doprations effectues lors des algorithmes de Gauss, LU,
Cholesky et QR. On ne comptera que les multiplications et divisions (pas les addi-
tions et soustractions) et on ne donnera que le coefcient polynomial en n (n tant
la taille de la matrice) de plus haut degr.
Exercice 9.
Soit Aune matrice de R
nn
constitue de n vecteurs colonnes A
1
, A
2
, ..., A
n
. Soit
x = (x
1
, ..., x
n
) la solution de lquation
Ax = b.
1. Montrer que
x
i
=
det(A
1
, ..., A
i1
, b, A
i+1
, ..., A
n
)
det(A)
. (3.4)
3.5. MTHODE DE DCOMPOSITION QR 71
2. Calculer le nombre doprations ncessaires pour calculer det(A).
3. La formule (3.4) vous semble-t-elle intressante dun point de vue num-
rique ?
Exercice 10.
On dit quune matrice A = (a
i,j
) R
nn
est diagonale dominante si elle vrie :
i {1, ..., n}, |a
i,i
| >
n

j=1,j=i
|a
i,j
|.
1. Montrer que toute matrice diagonale dominante est inversible.
2. En dduire que toute matrice diagonale dominante admet une factorisation
LU.
3. Soit A = (a
i,j
) R
nn
une matrice quelconque, montrer que pour toute
valeur propre C de A, il existe i {1, ..., n} tel que :
|a
i,i
|
n

j=1,j=i
|a
i,j
|.
Exercice 11.
1. On considre la matrice A de taille n n suivante :
_
_
_
_
_
_
_
_
_
_
2 1 0 0
1 2 1 0 0
0 1 2 1 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 1 2 1
0 0 1 2
_
_
_
_
_
_
_
_
_
_
Montrer que cette matrice est dnie positive.
2. Rappeller lalgorithme de Cholesky pour une matrice A symtrique dnie
positive de taille n n.
3. Dterminer le nombre de multiplications, divisions et calcul de racines car-
res effectues lors de cet algorithme.
72CHAPITRE 3. MTHODES DIRECTES DE RSOLUTIONDUSYSTME LINAIRE AX = B
4. En utilisant la proprit de structure bande de la matrice A, proposer une
nouvelle version de lalgorithme de Cholesky pour la matrice Aqui permette
de rduire le nombre doprations effectues.
5. Calculer le nombre doprations effectues pour ce nouvel algorithme.
3.5. MTHODE DE DCOMPOSITION QR 73
L2, Mthodes numriques Universit du Havre
Feuille de TP5
1. Implmenter, dans un chier TP5.sci, la mthode dlimination de Gauss
x = Gauss1(A, b), qui renvoie la solution x de lquation Ax = b. Dans
un premier temps, on ne cherchera pas implmenter les cas o les pivots
sannulent.
2. Donner la solution de lquation
Ax = b
pour
(a) A =
_
_
_
1 1 1
1 2 2
2 3 4
_
_
_ et b =
_
_
_
8
11
12
_
_
_.
(b) A =
_
_
_
_
_
_
_
1 3 4 5 7
2 3 7 10 11
3 4 66 5 7
4 1 2 6 3
56 78 1 1 1
_
_
_
_
_
_
_
et b =
_
_
_
_
_
_
_
8
11
12
12
12
_
_
_
_
_
_
_
.
Dans ce cas, vrier le rsultat avec la fonction de Scilab linsolve.
(c) A =
_
_
_
1 1 1
1 1 2
2 3 4
_
_
_ et b =
_
_
_
8
11
12
_
_
_.
3. crire une fonction x = Gauss2(A, b) de manire effectuer une permuta-
tion de lignes lorsque lun des pivots est nul. Donner la solution de lquation
1.c).
4. crire une fonction x = Gauss3(A, b) de manire ce que lon soit prvenu
si la matrice nest pas inversible. Tester la fonction avec A =
_
_
_
1 1 1
1 1 1
2 3 4
_
_
_et
b =
_
_
_
8
11
12
_
_
_.
74CHAPITRE 3. MTHODES DIRECTES DE RSOLUTIONDUSYSTME LINAIRE AX = B
L2, Mthodes numriques Universit du Havre
Feuille de TP6
Le but de ce TP est dimplmenter la mthode de factorisation A = LU ainsi que
de lappliquer pour diffrents calculs.
1. Proposer un algorithme permettant de calculer la factorisation LU dune ma-
trice.
2. Dans un chier "TP6.sci", implmenter une fonction FacLU(A) qui, partir
dune matrice donne A retourne une matrice, contenant L dans sa partie
triangulaire infrieure et U dans sa partie triangulaire suprieure.
3. Donner la dcomposition LU de la matrice suivante :
_
_
_
_
_
_
_
2 3 4 5 6
4 9 7 12 13
6 12 9 16 20
6 6 17 17 16
4 3 15 17 8
_
_
_
_
_
_
_
.
4. Comment peut-on calculer le dterminant de A lorsquon connait la dcom-
position LU ? Ajouter quelques lignes la fonction prcdente pour quelle
renvoie galement le dterminant de A.
5. Implmenter une fonction x = resoutLU(A, b) qui partir dune matrice
A et dun vecteur b renvoie la solution du systme Ax = b.
6. Rsoudre le systme Ax = b laide de la fonction resoutLU, pour
b =
_
_
_
_
_
_
_
5
15
33
10
28
_
_
_
_
_
_
_
.
7. Implmenter une fonction X = ResoutLU2(A, B) qui partir des donnes
dune matrice A R
n,n
et dune matrice B R
n,p
retourne la matrice X
telle que AX = B. Calculer X pour
B =
_
_
_
_
_
_
_
78 45 107
160 63 356
231 86 491
259 213 124
197 201 6
_
_
_
_
_
_
_
.
3.5. MTHODE DE DCOMPOSITION QR 75
8. En dduire une fonction C = Inverse(A) qui renvoie linverse de la matrice
A.
76CHAPITRE 3. MTHODES DIRECTES DE RSOLUTIONDUSYSTME LINAIRE AX = B
L2. Mthodes numriques. Universit du Havre
Feuille de TP7
Le but de ce TP est dimplmenter la mthode de factorisation de Cholesky, et de
comparer ses performances avec la mthode de factorisation LU.
1. On rappelle que la mthode de Cholesky, donne, lorsque A est symtrique
dnie positive, la dcomposition suivante :
A = BB
t
(3.5)
o B est une matrice triangulaire infrieure. En crivant le produit matriciel
de lquation (3.5) et en identiant les coefcients des matrices, proposer un
algorithme pour calculer la matrice B lorsque la matrice A est donne.
2. Implmenter une fonction CHOLESKY(A) dans Scilab qui partir dune ma-
trice dnie positive renvoie la matrice B vriant lgalit (3.5). Puis une
fonction RESOUTCH(A,b) qui rsout le systme linaire Ax = b.
3. On se propose maintenant de comparer les performances des deux dcom-
positions LU et Cholesky. crire une fonction qui gnre alatoirement une
matrice symtrique dnie positive de taille n. Puis une fonction qui com-
pare le temps utilis par Scilab pour effectuer les factorisations LU et Cho-
lesky, sur des matrices de taille n = 10, 20, ..., 100 (on utilisera les fonctions
de Scilab, tic() et toc()). Tracer sur un mme graphique les temps utiliss en
fonction de la taille de la matrice.

S-ar putea să vă placă și