Professional Documents
Culture Documents
1 Introduction
La factorisation LU d’une matrice An×n est une astuce très importante dans
le domaine de l’analyse numérique. Sa base est très simple, mais ses applica-
tions sont très nombreuses et très utiles. Avant de montrer ces applications,
regardons ce qu’est la factorisation LU et comment l’obtenir.
2 L’obtention de la factorisation
2.1 La théorie
La factorisation LU consiste à écrire une matrice non-singulière A comme le
produit de deux autres matrices L et U . L est une matrice triangulaire in-
férieure ayant des 1 sur la diagonale et U une matrice triangulaire supérieure.
On notera les éléments de ces deux matrices de la manière suivante:
1 0 0 ... 0 u1,1 u1,2 . . . u1,n−1 u1,n
l2,1 1 0 ... 0 0 u2,2 . . . u2,n−1 u2,n
l3,1 l3,2 1 . . . 0
L= U = 0 0 . . . u3,n−1 u3,n
.. .. . . .. .. .. .. .. ..
. .
. . . . . . . . . .
ln,1 ln,2 ln,3 . . . 1 0 0 0 . . . un,n
1
où mi1 = ai1 /a11 et ce pour tous les i = 2..n et Li est la iime ligne de la matrice
A. On peut alors écrire cette transformations sous une forme matricielle.
1 0 0 ... 0
.. .. . . .
. ..
..
. . .
E −1 = mi,1 . . . 1 . . . 0
. .. . . . ..
.. . . .. .
0 0 0 ... 1
−mij Lj + Li → Li
où mij = aij /ajj pour les i = j + 1..n. Ainsi, la forme matricielle de cette
élimination est:
Ek Ek−1 ...E2 E1 A = U
Alors,
Puisque tous les Ei−1 sont des matrices triangulaires inférieures, alors le pro-
duit de ces dernières l’est aussi et, dans le cas ici, possède des 1 sur la
diagonale. Ainsi, cette matrice résultant de ce produit est notre matrice L
et, U est ce qui reste après l’application de l’élimination de Gauss. Nous
pouvons alors mettre sur pied un algorithme pour trouver L et U à l’aide
d’un ordinateur. Cela nous permettra d’expliquer certains avantages de la
factorisation LU par la suite.
2
2.2 Algorithme de factorisation LU
u1,1 = a1,1
Pour j = 2..n
− u1,j = a1,j
− lj,1 = aj,1 /a1,1
fin
Pour i = 2..n − 1 P
− ui,i = ai,i − i−1 k=1 li,k uk,i
− Pour j = i + 1..nP
− ui,j = ai,jh− i−1 k=1 li,k uk,j i
lj,i = ui,i aj,i − i−1
1
P
− l u
k=1 j,k k,i
− f in
f in
Pn−1
un,n = an,n − k=1 ln,k uk,n
Exemple 1.
4 −9 2
A = 2 −4 4
−1 2 2
Nous avons que m21 = 2/4 = 0.5 et m31 = −1/4 = −0.25. Ce nous donne
4 −9 2
A ∼ 0 0.5 3
0 −0.25 2.5
3
3 Utilité
Voyons maintenant en quoi cela peut être utile. Pour ce faire, nous allons
comparer le nombre d’opérations nécessaire pour résoudre un système linéaire
Ax = b avec la méthode d’élimination de Gauss et par la méthode de sub-
stitution avant-arrière qui demande de connaître la factorisation LU de A.
Commençons par l’élimination de Gauss-Jordan.
4
Nous obtenons ainsi la solution x = −1/2, y = −4 et z = 5. Regardons main-
tenant l’algorithme afin de programmer la méthode. Nous compterons par
la suite le nombre d’opérations nécessaires.
Pour i = 1, .., n − 1
− Pour j = i + 1, .., n
− mj,i = bj,i /bi,i
− Pour k = i, .., n + 1
− bj,k = bj,k − mi,j bi,k
− fin
− fin
fin
Après cette étape, la matrice B est triangulaire inférieure. Il reste à la sub-
stitution arrière.
xn = bn,n+1 /bn,n
Pour i = n −h 1, .., 1 i
xi = bi,n+1 − nj=i+1 bi,j xj /bi,i
P
−
fin
5
Supposons maintenant que nous connaissons la factorisation LU de la
matrice A. Ainsi, le système Ax = b peut se réécrire LU x = b. Posons
z = U x. Nous avons donc que Lz = b. Ce système est rapide à résoudre,
car la matrice L est triangulaire inférieure. Voici l’algorithme pour trouver
z, dit la substitution avant.