Analyse Numérique I
Sup'Galilée, Ingénieurs MACS 1ère année & L3 MIM
François Cuvelier
Laboratoire d'Analyse Géométrie et Applications Institut Galilée
Université Paris XIII.
2017/09/21
Chapitre IV
Résolution de systèmes linéaires
Plan
1 Méthodes directes Matrices particulières
Matrices diagonales
Matrices triangulaires inférieures Matrices triangulaires supérieures
Exercices et résultats préliminaires
Méthode de Gauss-Jordan
Ecriture algébrique
Factorisation LU
Résultats théoriques Utilisation pratique
Factorisation LDL ˚ Factorisation de Cholesky
Résultats théoriques
Résolution d'un système linéaire Algorithme : Factorisation positive de Cholesky
Factorisation QR
2 Normes vectorielles et normes matricielles
Normes vectorielles Normes matricielles Suites de vecteurs et de matrices
3 Conditionnement d'un système linéaire
4 Méthodes itératives Principe
Notations
Méthode de Jacobi Méthode de Gauss-Seidel Méthode de relaxation Etude de la convergence Algorithmes
Principe de base Méthode de Jacobi Méthode de Gauss-Seidel Jeux algorithmiques
2017/09/21 3 / 103
Soient A P M n pKq une matrice inversible et bbb P K n . Résoudre
A xxx “ bbb
Le calcul de la matrice inverse A -1 revient à résoudre n systèmes linéaires.
Pour résoudre un système linéaire, on ne calcule pas la matrice inverse associée.
‚ Méthodes directes : On cherche M inversible tel que MA facilement inversible
A xxx “ bbb ðñ MA xxx “ M bbb .
‚ Méthodes itératives : On cherche B et ccc ,
xxx r k ` 1 s “ Bxxx r k s ` ccc, k ě 0, xxx r 0 s donné
Plan
1 Méthodes directes Matrices particulières
Matrices diagonales
Matrices triangulaires inférieures Matrices triangulaires supérieures
Exercices et résultats préliminaires
Méthode de Gauss-Jordan
Ecriture algébrique
Factorisation LU
Résultats théoriques Utilisation pratique
Factorisation LDL ˚ Factorisation de Cholesky
Résultats théoriques
Résolution d'un système linéaire Algorithme : Factorisation positive de Cholesky
Factorisation QR
2 Normes vectorielles et normes matricielles
Normes vectorielles Normes matricielles Suites de vecteurs et de matrices
3 Conditionnement d'un système linéaire
4 Méthodes itératives Principe
Notations
Méthode de Jacobi Méthode de Gauss-Seidel Méthode de relaxation Etude de la convergence Algorithmes
Principe de base Méthode de Jacobi Méthode de Gauss-Seidel Jeux algorithmiques
Méthodes directes Matrices particulières 2017/09/21 5 / 103
Système diagonal
Soit A P M n pKq diagonale inversible et bbb P K n .
x i “ b i {A i , i , @i P v1, nw. (1)
Algorithme 1 Fonction RSLMatDiag permettant de résoudre le système linéaire à matrice diagonale inversible
A xxx “ bbb .
Données : A : matrice diagonale de M
npRq inversible.
bbb : vecteur de R
n. Résultat : xxx : vecteur de R
n.
1: Fonction xxx Ð RSLMatDiag ( A, bbb ) 2: Pour i Ð 1 à n faire
3: x p i q Ð b p i q{ A p i , i q 4: Fin Pour
5: Fin Fonction
Système triangulaire inférieur
Soit A P M n p K q triangulaire inférieure inversible (A i , j “ 0 si i ă j)
A xxx “ bbb ðñ
¨
˚
˚
˚
˚
˝
A 1 , 1 0 . . . 0 ... ... ... ...
... ... 0
A n , 1 . . . . . . A n , n
˛
‹
‹
‹
‹
‚
¨
˚
˚
˚
˚
˝ x 1
... ...
x n
˛
‹
‹
‹
‹
‚
“
¨
˚
˚
˚
˚
˝ b 1
... ...
b n
˛
‹
‹
‹
‹
‚
A inversible ðñ
A i , i ‰ 0 , @i P v1 , nw Soit i P v1 , nw, pA xxx q i “ b i , ðñ
ÿ n
j “ 1
A i , j x j “ b i .
b i “
i ´ 1
ÿ
j “ 1
A i , j x j ` A i , i x i ` ÿ n
j “ i ` 1
A i , j
lo omo on
“ 0
x j “
i ´ 1
ÿ
j “ 1
A i , j x j ` A i , i x i
x i “ 1 A i , i
˜ b i ´
i ´ 1
ÿ
j “ 1
A i , j x j
¸
, @i P v1 , nw. (2)
Système triangulaire inférieur
Soit A P M n p K q triangulaire inférieure inversible (A i , j “ 0 si i ă j)
A xxx “ bbb ðñ
¨
˚
˚
˚
˚
˝
A 1 , 1 0 . . . 0 ... ... ... ...
... ... 0
A n , 1 . . . . . . A n , n
˛
‹
‹
‹
‹
‚
¨
˚
˚
˚
˚
˝ x 1
... ...
x n
˛
‹
‹
‹
‹
‚
“
¨
˚
˚
˚
˚
˝ b 1
... ...
b n
˛
‹
‹
‹
‹
‚
A inversible ðñ A i , i ‰ 0 , @i P v1 , nw
Soit i P v1 , nw, pA xxx q i “ b i , ðñ ÿ n
j “ 1
A i , j x j “ b i .
b i “
i ´ 1
ÿ
j “ 1
A i , j x j ` A i , i x i ` ÿ n
j “ i ` 1
A i , j
lo omo on
“ 0
x j “
i ´ 1
ÿ
j “ 1
A i , j x j ` A i , i x i
x i “ 1 A i , i
˜ b i ´
i ´ 1
ÿ
j “ 1
A i , j x j
¸
, @i P v1 , nw. (2)
Système triangulaire inférieur
Soit A P M n p K q triangulaire inférieure inversible (A i , j “ 0 si i ă j )
A xxx “ bbb ðñ
¨
˚
˚
˚
˚
˝
A 1 , 1 0 . . . 0 ... ... ... ...
... ... 0
A n , 1 . . . . . . A n , n
˛
‹
‹
‹
‹
‚
¨
˚
˚
˚
˚
˝ x 1
... ...
x n
˛
‹
‹
‹
‹
‚
“
¨
˚
˚
˚
˚
˝ b 1
... ...
b n
˛
‹
‹
‹
‹
‚
A inversible ðñ A i , i ‰ 0 , @i P v1 , nw Soit i P v1 , nw, pA xxx q i “ b i , ðñ
ÿ n
j “ 1
A i , j x j “ b i .
b i “
i ´ 1
ÿ
j “ 1
A i , j x j ` A i , i x i ` ÿ n
j “ i ` 1
A i , j
lo omo on
“0
x j “
i ´ 1
ÿ
j “ 1
A i , j x j ` A i , i x i
x i “ 1 A i , i
˜ b i ´
i ´ 1
ÿ
j “ 1
A i , j x j
¸
, @i P v1 , nw. (2)
x i “ 1 A i , i
˜ b i ´
i ´ 1
ÿ
j “ 1
A i , j x j
¸
, @i P v1 , nw.
Algorithme2
R
0
1:
Résoudre
A
xxx“
bbbenalulantsuessivementx
1
,
x2, . . . ,
xn.
Algorithme2
R
1
1: Pouri
Ð
1ànfaire2: xi
Ð
1Ai
,i
˜
bi
´
i´1
ÿ
j“1
Ai
,j
xj
¸
3: FinPour
x i “ 1 A i ,i
˜ b i ´
i ´ 1
ÿ
j “ 1
A i , j x j
¸
, @i P v1 , nw.
Algorithme2
R
1
1: Pouri
Ð
1ànfaire2: x
i
Ð
1A
i,i
˜
b
i
´
i´1
ÿ
j“1
A
i,j
x
j
¸
3: FinPour
Algorithme2
R
2
1: Pouri
Ð
1ànfaire2: S
Ð
i´1
ÿ
j“1
A
i,j
x
j
3: x
i
Ð p
bi´
Sq{
Ai,i 4: FinPourx i “ 1 A i , i
˜ b i ´
i ´ 1
ÿ
j “ 1
A i , j x j
¸
, @i P v1, nw.
Algorithme2
R
3
1: Pouri
Ð
1ànfaire2: S
Ð
i´1
ÿ
j“1
A
i,j
x
j
3: x
i
Ð p
bi´
Sq{
Ai,i4: FinPour
Algorithme2
R
4
1: Pouri
Ð
1ànfaire2: S
Ð
03: Pourj
Ð
1ài´
1faire4: S
Ð
S`
Ap
i,
jq ˚
xp
jq
5: FinPour
6: x
i
Ð p
bi´
Sq{
Ai,i7: FinPour
x i “ 1 A i , i
˜ b i ´
i ´ 1
ÿ
j“1
A i , j x j
¸
, @i P v1 , nw.
Algorithme 2 Fonction
RSLTriInfpermettant de résoudre le système linéaire triangulaire inférieur inversible
A xxx “ bbb .
Données : A : matrice triangulaire de M
np K q inférieure inversible.
bbb : vecteur de K
n. Résultat : xxx : vecteur de K
n.
1:
Fonction xxx Ð
RSLTriInf( A, bbb )
2:
Pour i Ð 1 à n faire
3:
S Ð 0
4:
Pour j Ð 1 à i ´ 1 faire
5:
S Ð S ` A p i , j q ˚ x p j q
6:
Fin Pour
7:
x p i q Ð p b p i q ´ S q{ A p i , i q
8:
Fin Pour
9:
Fin Fonction
Système triangulaire supérieur
Soit A P M n pKq triangulaire supérieure inversible (A i , j “ 0 si i ą j)
A xxx “ bbb ðñ
¨
˚
˚
˚
˚
˝
A 1 , 1 . . . . . . A 1 , n
0 ... ...
... ... ... ...
0 . . . 0 A n , n
˛
‹
‹
‹
‹
‚
¨
˚
˚
˚
˚
˝ x 1
... ...
x n
˛
‹
‹
‹
‹
‚
“
¨
˚
˚
˚
˚
˝ b 1
... ...
b n
˛
‹
‹
‹
‹
‚
Exercice
Ecrire la fonction RSLTriSup permettant de résoudre le système
triangulaire supérieure A xxx “ bbb .
Plan
1 Méthodes directes Matrices particulières
Matrices diagonales
Matrices triangulaires inférieures Matrices triangulaires supérieures
Exercices et résultats préliminaires
Méthode de Gauss-Jordan
Ecriture algébrique
Factorisation LU
Résultats théoriques Utilisation pratique
Factorisation LDL ˚ Factorisation de Cholesky
Résultats théoriques
Résolution d'un système linéaire Algorithme : Factorisation positive de Cholesky
Factorisation QR
2 Normes vectorielles et normes matricielles
Normes vectorielles Normes matricielles Suites de vecteurs et de matrices
3 Conditionnement d'un système linéaire
4 Méthodes itératives Principe
Notations
Méthode de Jacobi Méthode de Gauss-Seidel Méthode de relaxation Etude de la convergence Algorithmes
Principe de base Méthode de Jacobi Méthode de Gauss-Seidel Jeux algorithmiques
Méthodes directes Exercices et résultats préliminaires 2017/09/21 10 / 103
Lemme 1.1:
Soit p i , j q P v 1 , n w 2 . On note P
rn i
,j
sP M n pRq la matrice identitée dont on a permuté les lignes i et j . Alors la matrice P
rin
,js est symétrique et orthogonale.
Pour toute matrice A P M n pKq,
1
la matrice P
rin
,js A est matrice A dont on a permuté les lignes i et j ,
2
la matrice AP
rin
,js est matrice A dont on a permuté les colonnes i et j ,
Lemme 1.2:
Soit A P M n pCq avec A 1
,1 ‰ 0 . Il existe une matrice E P M n pCq triangulaire inférieure à diagonale unité telle que
EA eee 1 “ A 1
,1 eee 1 (3)
où eee 1 est le premier vecteur de la base canonique de C n .
Théorème 2:
Soit A P M n pCq. Il existe une matrice unitaire U et une matrice trian- gulaire supérieure T telles que
A “ UTU ˚ (4)
Plan
1 Méthodes directes Matrices particulières
Matrices diagonales
Matrices triangulaires inférieures Matrices triangulaires supérieures
Exercices et résultats préliminaires
Méthode de Gauss-Jordan
Ecriture algébrique
Factorisation LU
Résultats théoriques Utilisation pratique
Factorisation LDL ˚ Factorisation de Cholesky
Résultats théoriques
Résolution d'un système linéaire Algorithme : Factorisation positive de Cholesky
2 Normes vectorielles et normes matricielles
Normes vectorielles Normes matricielles Suites de vecteurs et de matrices
3 Conditionnement d'un système linéaire
4 Méthodes itératives Principe
Notations
Méthode de Jacobi Méthode de Gauss-Seidel Méthode de relaxation Etude de la convergence Algorithmes
Principe de base Méthode de Jacobi Méthode de Gauss-Seidel
Méthodes directes Méthode de Gauss-Jordan 2017/09/21 13 / 103
Algorithme de Gauss-Jordan
A xxx “ bbb ðñ U xxx “ fff où U matrice triangulaire supérieure.
Opérations élémentaires sur les matrices :
‚ L i Ø L j permutation lignes i et j
‚ L i Ð L i ` αL j combinaison linéaire
A l'aide d'opérations élémentaires, on va transformer successivement en
n ´ 1 étapes le système. A l'étape j , on va s'arranger pour annuler les
termes sous-diagonaux de la colonne j de la matrice sans modier les j ´ 1
premières colonnes.
¨
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ ‚ ¨ ¨ ¨ ‚ ‚ ¨ ¨ ¨ ‚
0 .
.
. .
.
. .
.
. .
.
. .
.
.
.
.
. .
.
. .
.
.
‚
... ...0
. . .
0‚ ‚ ¨ ¨ ¨ ‚
0
¨ ¨ ¨ ¨ ¨ ¨
0‚ ¨ ¨ ¨ ‚
.
.
.
.
.
. .
.
. .
.
.
0
. . . . . .
0‚ ¨ ¨ ¨ ‚
˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
x x
x=
¨
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚
.
.
.
‚
‚
.
.
.
‚
˛
‹
‹
‹
‹
‹
‹
‹
‹
‚
j
´
1Etape j ðñ
¨
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ ‚ ¨ ¨ ¨ ‚ ‚ ¨ ¨ ¨ ‚
0 .
.
. .
.
. .
.
. .
.
. .
.
.
.
.
. .
.
. .
.
.
‚
... ...0
. . .
0‚ ‚ ¨ ¨ ¨ ‚
0
¨ ¨ ¨ ¨ ¨ ¨
0‚ ¨ ¨ ¨ ‚
.
.
.
.
.
. .
.
. .
.
.
˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
x x x=
¨
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚
.
.
.
‚
‚
.
.
.
‚
˛
‹
‹
‹
‹
‹
‹
‹
‹
‚
j
Algorithme 3 Algorithme de Gauss-Jordan formel pour la résolution de A xxx “ bbb
1: Pour j Ð 1 à n ´ 1 faire
2: Rechercher l'indice k de la ligne du pivot (sur la colonne j , k P v j , n w )
3: Permuter les lignes j ( L j ) et k ( L k ) du système si besoin.
4: Pour i Ð j ` 1 à n faire
5: Eliminer en eectuant L i Ð L i ´ A A
i,jj,j
L j
6: Fin Pour
7: Fin Pour
8: Résoudre le système triangulaire supérieur par la méthode de la remon-
tée.
Algorithme 4 Algorithme de Gauss-Jordan avec fonctions pour la résolution de Axxx “ bbb
Données : A : matrice de M
np K q inversible.
bbb : vecteur de K
n. Résultat : xxx : vecteur de R
n.
1: Fonction xxx Ð RSLGauss ( A,bbb )
2: Pour j Ð 1 à n ´ 1 faire
3: k Ð ChercheIndPivot pA, j q Ź à écrire
4: rA,bbbs Ð PermLignesSys pA,bbb,j , kq Ź à écrire
5: Pour i Ð j ` 1 à n faire
6: rA, bbbs Ð CombLignesSys pA, bbb , j , i ,´Api , jq{Apj , j qq Ź à écrire
7: Fin Pour
8: Fin Pour
9: xxx Ð RSLTriSup pA, bbbq Ź déjà écrite
10: Fin Fonction
Algorithme 5 Recherche d'un pivot pour l'algorithme de Gauss-Jordan.
Données : A : matrice deMnpKq.
j : entier, 1ďjďn.
Résultat : k : entier, indice ligne pivot 1:Fonction kÐ ChercheIndPivot (A,j ) 2: kÐj,pivotÐ |Apj,jq|
3: Pour iÐj`1 à n faire 4: Si|Api,jq| ąpivot alors
5: kÐi
6: pivotÐ |Api,jq|
7: Fin Si 8: Fin Pour 9:Fin Fonction
Algorithme 6 Permutte deux lignes d'une matrice et d'un vecteur.
Données : A : matrice deMnpKq.
bbb : vecteur deKn. j,k : entiers, 1ďj,kďn. Résultat : Aet bbb modiés.
1:FonctionrA,bbbs Ð PermLignesSys (A,bbb,j,k )
2: Pour lÐ1 à n faire 3: tÐApj,lq 4: Apj,lq ÐApk,lq 5: Apk,lq Ðt 6: Fin Pour
7: tÐbbbpjq,bbbpjq Ðbbbpkq,bbbpkq Ðt 8:Fin Fonction
Algorithme 7 Combinaison linéaireLiÐLi`αLjappliqué à une matrice et à un vecteur.
Données : A : matrice deMnpKq.
bbb : vecteur deKn. j,i : entiers, 1ďj,iďn. alpha : scalaire deK Résultat : Aet bbb modiés.
1:FonctionrA,bbbs Ð CombLignesSys (A,bbb,j,i, α) 2: Pour kÐ1 à n faire
3: Api,kq ÐApi,kq `α˚Apj,kq 4: Fin Pour
5: bbbpiq Ðbbbpiq `αbbbpjq 6:Fin Fonction
Exercice: Méthode de Gauss, écriture algébrique Soit A P M
npCq inversible.
Q. 1
Montrer qu'il existe une matrice G P M
np C q telle que | det pGq| “ 1 et GA eee
1“ α eee
1avec α ‰ 0 et eee
1premier vecteur de la base canonique de C
n. Q. 2
1
Montrer par récurrence sur l'ordre des matrices que pour toute matrice
A
nP M
npCq inversible, il existe une matrice S
nP M
npCq telle que |det S
n| “ 1 et S
nA
n“ U
navec U
nmatrice triangulaire supérieure inversible.
2
Soit bbb P C
n. En supposant connue la décompostion précédente S
nA
n“ U
n, expliquer comment résoudre le système A
nxxx “ bbb .
Q. 3
Que peut-on dire si A est non inversible?
Indication : utiliser les Lemmes 1.1 et 1.2.
On a donc démontré le théorème suivant Théorème 3
Soit A une matrice carrée, inversible ou non. Il existe (au moins) une
matrice inversible G telle que GA soit triangulaire supérieure.
Plan
1 Méthodes directes Matrices particulières
Matrices diagonales
Matrices triangulaires inférieures Matrices triangulaires supérieures
Exercices et résultats préliminaires
Méthode de Gauss-Jordan
Ecriture algébrique
Factorisation LU
Résultats théoriques Utilisation pratique
Factorisation LDL ˚ Factorisation de Cholesky
Résultats théoriques
Résolution d'un système linéaire Algorithme : Factorisation positive de Cholesky
2 Normes vectorielles et normes matricielles
Normes vectorielles Normes matricielles Suites de vecteurs et de matrices
3 Conditionnement d'un système linéaire
4 Méthodes itératives Principe
Notations
Méthode de Jacobi Méthode de Gauss-Seidel Méthode de relaxation Etude de la convergence Algorithmes
Principe de base Méthode de Jacobi Méthode de Gauss-Seidel
Méthodes directes Factorisation LU 2017/09/21 21 / 103
Exercice: Factorisation LU
Soit A P M n p C q une matrice dont les sous-matrices principales d'ordre i , notées ∆ i , i P v1 , nw (voir Denition B.46, page 176) sont inversibles.
Montrer qu'il existe des matrices E rks P M n pCq, k P v1 , n ´ 1w, trian- gulaires inférieures à diagonale unité telles que la matrice U dénie par
U “ E rn´1s ¨ ¨ ¨ E r1s A
soit triangulaire supérieure avec U i , i “ det ∆ i {pU 1 , 1 ˆ ¨ ¨ ¨ ˆ U i ´ 1 , i ´ 1 q,
@i P v1, nw.
Théorème 4: Factorisation LU
Soit A P M n p C q une matrice dont les sous-matrices principales sont inversibles alors il existe une unique matrice L P M n pCq triangu- laire inférieure (lower triangular en anglais) à diagonale unité et une unique matrice U P M n p C q triangulaire supérieure (upper triangular en anglais) inversible telles ques
A “ LU.
preuve :
‚ Existence : exercice précédant U “ E r n ´ 1 s ¨ ¨ ¨ E r 1 s A L “
´
E r n ´ 1 s ¨ ¨ ¨ E r 1 s
¯ -1
Corollaire 4.1:
Si A P M n pCq est une matrice hermitienne dénie positive alors elle admet une unique factorisation LU.
preuve : A hermitienne dénie positive alors toutes ses sous-matrices
principales sont dénies positives et donc inversibles.
Remarque 4.2
Si la matrice A P M n pCq est inversible mais que ses sous-matrices principales ne sont pas toutes inversibles, il est possible par des permutations préalables de lignes de la matrice de se ramener à une matrice telle que ses sous-matrices principales soient inversibles.
Théorème 5: Factorisation LU avec permutations
Soit A P M n pCq une matrice inversible. Il existe une matrice P, pro- duit de matrices de permutation, une matrice L P M n pCq triangulaire inférieure à diagonale unité et une matrice U P M n p C q triangulaire supérieure telles ques
PA “ LU. (5)
Utilisation pratique de la factorisation LU
Soit A P M n pKq admettant une factorisation LU Trouver xxx P K n tel que
A xxx “ bbb ðñ LU xxx “ bbb (6) est équivalent à
Trouver xxx P K n solution de
U xxx “ yyy (7) avec yyy P K n solution de
Lyyy “ bbb. (8)
Utilisation pratique de la factorisation LU
Soit A P M n pKq admettant une factorisation LU Trouver xxx P K n tel que
A xxx “ bbb ðñ LU xxx “ bbb (6) est équivalent à
Trouver xxx P K n solution de
U xxx “ yyy (7) avec yyy P K n solution de
L yyy “ bbb . (8)
Algorithme de résolution de systèmes linéaire par LU
Algorithme 8 Fonction RSLFactLU permettant de résoudre, par une fac- torisation LU, le système linéaire
A xxx “ bbb
où A une matrice de M n p R q dénie positive et bbb P R n . Données : A : matrice de M n p R q dont les sous-matrices
principales sont inversibles dénie positive, bbb : vecteur de R n .
Résultat : xxx : vecteur de R n .
1: Fonction xxx Ð RSLFactLU ( A, bbb )
2: rL, Us Ð FactLU pAq Ź Factorisation LU
3: yyy Ð RSLTriInf pL, bbb q Ź Résolution du système L yyy “ bbb
4: xxx Ð RSLTriSup pU, yyy q Ź Résolution du système U xxx “ yyy
5: Fin Fonction
Il nous faut donc écrire la fonction FactLU
Soit A P M n pKq admettant une factorisation LU.
¨
˚
˚
˚
˝
A1,1 A1,2 . . . A1,n A2,1 A2,2 . . . A2,n ... ... ... ...
An,1 An,2 . . . An,n
˛
‹
‹
‹
‚
“
¨
˚
˚
˚
˚
˚
˚
˝
1 0 . . . 0
L2,1 1 0 . . . 0
L3,1 L3,2 ... ... ...
... ... ... ... 0 Ln,1 Ln,2 . . . Ln,n´1 1
˛
‹
‹
‹
‹
‹
‹
‚
¨
˚
˚
˚
˚
˚
˚
˝
U1,1 U1,2 . . . U1,n
0 U2,2 . . . U2,n
0 0 U3,3 ...
... ... ... ... ...
0 0 . . . 0 Un,n
˛
‹
‹
‹
‹
‹
‹
‚
On connait A , on cherche L et U
‚ Etape 1 :
§ On connait la première ligne de L ùñ on peut calculer la première ligne de U
§ On connait la première colonne de U ùñ on peut calculer la première colonne de U
‚ Etape 2 :
§ On connait la deuxième ligne de L ùñ on peut calculer la deuxième ligne de U car on connait la première ligne de U
§ On connait la deuxième colonne de U ùñ on peut calculer la deuxième colonne de L car on connait la première colonne de L
‚ ...
Soit A P M n p K q admettant une factorisation LU.
¨
˚
˚
˚
˝
A1,1 A1,2 . . . A1,n
A2,1 A2,2 . . . A2,n
... ... ... ...
An,1 An,2 . . . An,n
˛
‹
‹
‹
‚
“
¨
˚
˚
˚
˚
˚
˚
˝
1 0 . . . 0
L2,1 1 0 . . . 0
L3,1 L3,2 ... ... ...
... ... ... ... 0
Ln,1 Ln,2 . . . Ln,n´1 1
˛
‹
‹
‹
‹
‹
‹
‚
¨
˚
˚
˚
˚
˚
˚
˝
U1,1 U1,2 . . . U1,n
0 U2,2 . . . U2,n
0 0 U3,3 ...
... ... ... ... ...
0 0 . . . 0 Un,n
˛
‹
‹
‹
‹
‹
‹
‚
‚ Etape 1 :
§ On connait la première ligne de L ùñ on peut calculer la première ligne de U
§ On connait la première colonne de U ùñ on peut calculer la première colonne de U
‚ Etape 2 :
§ On connait la deuxième ligne de L ùñ on peut calculer la deuxième ligne de U car on connait la première ligne de U
§ On connait la deuxième colonne de U ùñ on peut calculer la deuxième colonne de L car on connait la première colonne de L
‚ ...
Soit A P M n p K q admettant une factorisation LU.
¨
˚
˚
˚
˝
A1,1 A1,2 . . . A1,n
A2,1 A2,2 . . . A2,n
... ... ... ...
An,1 An,2 . . . An,n
˛
‹
‹
‹
‚
“
¨
˚
˚
˚
˚
˚
˚
˝
1 0 . . . 0
L2,1 1 0 . . . 0
L3,1 L3,2 ... ... ...
... ... ... ... 0
Ln,1 Ln,2 . . . Ln,n´1 1
˛
‹
‹
‹
‹
‹
‹
‚
¨
˚
˚
˚
˚
˚
˚
˝
U1,1 U1,2 . . . U1,n
0 U2,2 . . . U2,n
0 0 U3,3 ...
... ... ... ... ...
0 0 . . . 0 Un,n
˛
‹
‹
‹
‹
‹
‹
‚
‚ Etape 1 :
§ On connait la première ligne de L ùñ on peut calculer la première ligne de U
§ On connait la première colonne de U ùñ on peut calculer la première colonne de U
‚ Etape 2 :
§ On connait la deuxième ligne de L ùñ on peut calculer la deuxième ligne de U car on connait la première ligne de U
§ On connait la deuxième colonne de U ùñ on peut calculer la deuxième colonne de L car on connait la première colonne de L
‚ ...
Soit A P M n p K q admettant une factorisation LU.
¨
˚
˚
˚
˝
A1,1 A1,2 . . . A1,n
A2,1 A2,2 . . . A2,n
... ... ... ...
An,1 An,2 . . . An,n
˛
‹
‹
‹
‚
“
¨
˚
˚
˚
˚
˚
˚
˝
1 0 . . . 0
L2,1 1 0 . . . 0
L3,1 L3,2 ... ... ...
... ... ... ... 0
Ln,1 Ln,2 . . . Ln,n´1 1
˛
‹
‹
‹
‹
‹
‹
‚
¨
˚
˚
˚
˚
˚
˚
˝
U1,1 U1,2 . . . U1,n
0 U2,2 . . . U2,n
0 0 U3,3 ...
... ... ... ... ...
0 0 . . . 0 Un,n
˛
‹
‹
‹
‹
‹
‹
‚
‚ Etape 1 :
§ On connait la première ligne de L ùñ on peut calculer la première ligne de U
§ On connait la première colonne de U ùñ on peut calculer la première colonne de U
‚ Etape 2 :
§ On connait la deuxième ligne de L ùñ on peut calculer la deuxième ligne de U car on connait la première ligne de U
§ On connait la deuxième colonne de U ùñ on peut calculer la deuxième colonne de L car on connait la première colonne de L
‚ ...
Soit A P M n p K q admettant une factorisation LU.
¨
˚
˚
˚
˝
A1,1 A1,2 . . . A1,n
A2,1 A2,2 . . . A2,n
... ... ... ...
An,1 An,2 . . . An,n
˛
‹
‹
‹
‚
“
¨
˚
˚
˚
˚
˚
˚
˝
1 0 . . . 0
L2,1 1 0 . . . 0
L3,1 L3,2 ... ... ...
... ... ... ... 0
Ln,1 Ln,2 . . . Ln,n´1 1
˛
‹
‹
‹
‹
‹
‹
‚
¨
˚
˚
˚
˚
˚
˚
˝
U1,1 U1,2 . . . U1,n
0 U2,2 . . . U2,n
0 0 U3,3 ...
... ... ... ... ...
0 0 . . . 0 Un,n
˛
‹
‹
‹
‹
‹
‹
‚
‚ Etape 1 :
§ On connait la première ligne de L ùñ on peut calculer la première ligne de U
§ On connait la première colonne de U ùñ on peut calculer la première colonne de U
‚ Etape 2 :
§ On connait la deuxième ligne de L ùñ on peut calculer la deuxième ligne de U car on connait la première ligne de U
§ On connait la deuxième colonne de U ùñ on peut calculer la deuxième colonne de L car on connait la première colonne de L
‚ ...
Soit A P M n p K q admettant une factorisation LU.
¨
˚
˚
˚
˝
A1,1 A1,2 . . . A1,n
A2,1 A2,2 . . . A2,n
... ... ... ...
An,1 An,2 . . . An,n
˛
‹
‹
‹
‚
“
¨
˚
˚
˚
˚
˚
˚
˝
1 0 . . . 0
L2,1 1 0 . . . 0
L3,1 L3,2 ... ... ...
... ... ... ... 0
Ln,1 Ln,2 . . . Ln,n´1 1
˛
‹
‹
‹
‹
‹
‹
‚
¨
˚
˚
˚
˚
˚
˚
˝
U1,1 U1,2 . . . U1,n
0 U2,2 . . . U2,n
0 0 U3,3 ...
... ... ... ... ...
0 0 . . . 0 Un,n
˛
‹
‹
‹
‹
‹
‹
‚
‚ Etape 1 :
§ On connait la première ligne de L ùñ on peut calculer la première ligne de U
§ On connait la première colonne de U ùñ on peut calculer la première colonne de U
‚ Etape 2 :
§ On connait la deuxième ligne de L ùñ on peut calculer la deuxième ligne de U car on connait la première ligne de U
§ On connait la deuxième colonne de U ùñ on peut calculer la deuxième colonne de L car on connait la première colonne de L
‚ ...
Soit A P M n p K q admettant une factorisation LU.
¨
˚
˚
˚
˝
A1,1 A1,2 . . . A1,n
A2,1 A2,2 . . . A2,n
... ... ... ...
An,1 An,2 . . . An,n
˛
‹
‹
‹
‚
“
¨
˚
˚
˚
˚
˚
˚
˝
1 0 . . . 0
L2,1 1 0 . . . 0
L3,1 L3,2 ... ... ...
... ... ... ... 0
Ln,1 Ln,2 . . . Ln,n´1 1
˛
‹
‹
‹
‹
‹
‹
‚
¨
˚
˚
˚
˚
˚
˚
˝
U1,1 U1,2 . . . U1,n
0 U2,2 . . . U2,n
0 0 U3,3 ...
... ... ... ... ...
0 0 . . . 0 Un,n
˛
‹
‹
‹
‹
‹
‹
‚
‚ Etape i :
On connait les i ´ 1 premières colonnes de L et les i ´ 1 premières lignes de U.
Peut-on calculer la colonne i de L et la ligne i de U ?
Par récurrence, en supposant les i ´ 1 premières colonnes de L et les i ´ 1 premières lignes de U.
A “
¨
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ 0 ¨ ¨ ¨ 0 0 ¨ ¨ ¨ ¨ ¨ ¨ 0
‚ ... ... ... ... ...
... ... ... ... ... ...
‚ ¨ ¨ ¨ ‚ ‚ 0 ¨ ¨ ¨ ¨ ¨ ¨ 0
‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚ L
i,i0 ¨ ¨ ¨ 0
... ... ‚ ... ... ...
... ... ... ... ... 0
‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚ ‚ ¨ ¨ ¨ ‚ L
n,n˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
¨
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ ‚ ¨ ¨ ¨ ‚ ‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚
0 ... ... ... ... ...
... ... ... ... ... ...
0 ¨ ¨ ¨ 0 ‚ ‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚
0 ¨ ¨ ¨ ¨ ¨ ¨ 0 U
i,i‚ ¨ ¨ ¨ ‚
... ... 0 ... ... ...
... ... ... ... ... ‚
0 ¨ ¨ ¨ ¨ ¨ ¨ 0 0 ¨ ¨ ¨ 0 U
n,n˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
Par récurrence, en supposant les i ´ 1 premières colonnes de L et les i ´ 1 premières lignes de U.
A “
¨
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ 0 ¨ ¨ ¨ 0 0 ¨ ¨ ¨ ¨ ¨ ¨ 0
‚ ... ... ... ... ...
... ... ... ... ... ...
‚ ¨ ¨ ¨ ‚ ‚ 0 ¨ ¨ ¨ ¨ ¨ ¨ 0
‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚ L
i,i0 ¨ ¨ ¨ 0
... ... ‚ ... ... ...
... ... ... ... ... 0
‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚ ‚ ¨ ¨ ¨ ‚ L
n,n˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
¨
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ ‚ ¨ ¨ ¨ ‚ ‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚
0 ... ... ... ... ...
... ... ... ... ... ...
0 ¨ ¨ ¨ 0 ‚ ‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚
0 ¨ ¨ ¨ ¨ ¨ ¨ 0 U
i,i‚ ¨ ¨ ¨ ‚
... ... 0 ... ... ...
... ... ... ... ... ‚
0 ¨ ¨ ¨ ¨ ¨ ¨ 0 0 ¨ ¨ ¨ 0 U
n,n˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
A “
¨
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ 0 ¨ ¨ ¨ 0 0 ¨ ¨ ¨ ¨ ¨ ¨ 0
‚ ... ... ... ... ...
... ... ... ... ... ...
‚ ¨ ¨ ¨ ‚ ‚ 0 ¨ ¨ ¨ ¨ ¨ ¨ 0
‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚ L
i,i0 ¨ ¨ ¨ 0
... ... ‚ ... ... ...
... ... ... ... ... 0
‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚ ‚ ¨ ¨ ¨ ‚ L
n,n˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
¨
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ ‚ ¨ ¨ ¨ ‚ ‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚
0 ... ... ... ... ...
... ... ... ... ... ...
0 ¨ ¨ ¨ 0 ‚ ‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚
0 ¨ ¨ ¨ ¨ ¨ ¨ 0 U
i,i‚ ¨ ¨ ¨ ‚
... ... 0 ... ... ...
... ... ... ... ... ‚
0 ¨ ¨ ¨ ¨ ¨ ¨ 0 0 ¨ ¨ ¨ 0 U
n,n˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
Par récurrence, on suppose connues les i ´ 1 premières colonnes de L et les i ´ 1 premières lignes de U.
Peut-on calculer la colonne i de L et la ligne i de U ?
A “
¨
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ 0 ¨ ¨ ¨ 0 0 ¨ ¨ ¨ ¨ ¨ ¨ 0
‚ ... ... ... ... ...
... ... ... ... ... ...
‚ ¨ ¨ ¨ ‚ ‚ 0 ¨ ¨ ¨ ¨ ¨ ¨ 0
‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚ L
i,i0 ¨ ¨ ¨ 0
... ... ‚ ... ... ...
... ... ... ... ... 0
‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚ ‚ ¨ ¨ ¨ ‚ L
n,n˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
¨
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ ‚ ¨ ¨ ¨ ‚ ‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚
0 ... ... ... ... ...
... ... ... ... ... ...
0 ¨ ¨ ¨ 0 ‚ ‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚
0 ¨ ¨ ¨ ¨ ¨ ¨ 0 U
i,i‚ ¨ ¨ ¨ ‚
... ... 0 ... ... ...
... ... ... ... ... ‚
0 ¨ ¨ ¨ ¨ ¨ ¨ 0 0 ¨ ¨ ¨ 0 U
n,n˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
A “
¨
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ 0 ¨ ¨ ¨ 0 0 ¨ ¨ ¨ ¨ ¨ ¨ 0
‚ ... ... ... ... ...
... ... ... ... ... ...
‚ ¨ ¨ ¨ ‚ ‚ 0 ¨ ¨ ¨ ¨ ¨ ¨ 0
‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚ L
i,i0 ¨ ¨ ¨ 0
... ... ‚ ... ... ...
... ... ... ... ... 0
‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚ ‚ ¨ ¨ ¨ ‚ L
n,n˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
¨
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ ‚ ¨ ¨ ¨ ‚ ‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚
0 ... ... ... ... ...
... ... ... ... ... ...
0 ¨ ¨ ¨ 0 ‚ ‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚
0 ¨ ¨ ¨ ¨ ¨ ¨ 0 U
i,i‚ ¨ ¨ ¨ ‚
... ... 0 ... ... ...
... ... ... ... ... ‚
0 ¨ ¨ ¨ ¨ ¨ ¨ 0 0 ¨ ¨ ¨ 0 U
n,n˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
On cherche U i , j @j P vi , nw.
A i , j
def“ ÿ n
k“1
L i , k U k , j “
i´1 ÿ
k“1
connus hkkikkj L i , k U k , j `
“ 1
hk kik kj L i , i U i , j `
i`1 ÿ
k“1
“ 0
hk kik kj L i , k U k , j
U i , j “ A i , j ´
i ´ 1
ÿ
k “ 1
L i , k U k , j , @j P vi , nw.
A “
¨
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ 0 ¨ ¨ ¨ 0 0 ¨ ¨ ¨ ¨ ¨ ¨ 0
‚ ... ... ... ... ...
... ... ... ... ... ...
‚ ¨ ¨ ¨ ‚ ‚ 0 ¨ ¨ ¨ ¨ ¨ ¨ 0
‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚ L
i,i0 ¨ ¨ ¨ 0
... ... ‚ ... ... ...
... ... ... ... ... 0
‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚ ‚ ¨ ¨ ¨ ‚ L
n,n˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
¨
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ ‚ ¨ ¨ ¨ ‚ ‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚
0 ... ... ... ... ...
... ... ... ... ... ...
0 ¨ ¨ ¨ 0 ‚ ‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚
0 ¨ ¨ ¨ ¨ ¨ ¨ 0 U
i,i‚ ¨ ¨ ¨ ‚
... ... 0 ... ... ...
... ... ... ... ... ‚
0 ¨ ¨ ¨ ¨ ¨ ¨ 0 0 ¨ ¨ ¨ 0 U
n,n˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
A “
¨
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ 0 ¨ ¨ ¨ 0 0 ¨ ¨ ¨ ¨ ¨ ¨ 0
‚ ... ... ... ... ...
... ... ... ... ... ...
‚ ¨ ¨ ¨ ‚ ‚ 0 ¨ ¨ ¨ ¨ ¨ ¨ 0
‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚ L
i,i0 ¨ ¨ ¨ 0
... ... ‚ ... ... ...
... ... ... ... ... 0
‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚ ‚ ¨ ¨ ¨ ‚ L
n,n˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
¨
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ ‚ ¨ ¨ ¨ ‚ ‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚
0 ... ... ... ... ...
... ... ... ... ... ...
0 ¨ ¨ ¨ 0 ‚ ‚ ¨ ¨ ¨ ¨ ¨ ¨ ‚
0 ¨ ¨ ¨ ¨ ¨ ¨ 0 U
i,i‚ ¨ ¨ ¨ ‚
... ... 0 ... ... ...
... ... ... ... ... ‚
0 ¨ ¨ ¨ ¨ ¨ ¨ 0 0 ¨ ¨ ¨ 0 U
n,n˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
On cherche L j , i @j P vi ` 1 , nw, (L i , i “ 1) A j,i
def“
ÿ n
k“1
L j , k U k , i “
i´1 ÿ
k“1
connus hkkikkj L j , k U k , i `L j ,i
connu hk kik kj
U i,i `
i`1 ÿ
k“1
L j , k
“ 0
hk kik kj U k , i
L j , i “
˜ A j , i ´
i ´ 1
ÿ
k “ 1
L j , k U k , i
¸
{U i , i , @j P vi ` 1 , nw.
Algorithme9
R
0
1: Calulerlesmatries
L
etU
Algorithme9
R
1
1: Pouri
Ð
1ànfaire2: Calulerlalignei de
U .
3: Calulerlaolonnei de
L .
4: FinPour
Algorithme9
R
1
1: Pouri
Ð
1ànfaire2: Calulerlaligneide
U .
3: Calulerlaolonneide
L .
4: FinPour
Algorithme9
R
2
1: Pouri
Ð
1ànfaire2: Pourj
Ð
1ài´
1faire3: U
p
i,
jq Ð
04: FinPour
5: Pourj
Ð
iànfaire6: Ui
,j
Ð
Ai,j´
i´1
ÿ
k“1
L
i,k U
k,j
7: FinPour
8: Pourj
Ð
1ài´
1faire9: Lj
,i
Ð
010: FinPour
11: L
i,i
Ð
112: Pourj
Ð
i`
1ànfaire13: L
j,i
Ð
1U
i,i
˜
A
j,i
´
i´1
ÿ
k“1
L
j,k U
k,i
¸
14: FinPour
15: FinPour