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.
2020/10/16
2020/10/16 1 / 59
Chapitre IV
Résolution de systèmes linéaires
2020/10/16 2 / 59
Plan
1 Conditionnement
2 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
La tranformation de Householder
2020/10/16 3 / 59
Soient A P M n pKq une matrice inversible et b b b P K n . Résoudre
Axxx “ b b b
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
Axxx “ b b b ðñ MAxxx “ Mb b b.
‚ Méthodes itératives : On cherche B et ccc,
xxx rk`1s “ Bxxx rk s ` ccc, k ě 0, xxx r0s donné en espérant lim kÑ`8 xxx rks “ xxx .
2020/10/16 4 / 59
Conditionnement
Soient A P M n pKq inversible et b b b P K n . Axxx “ b b b
De petites erreurs sur les données engendrent-elles de petites erreurs sur la solution?
Conditionnement 2020/10/16 5 / 59
Exemple de R.S. Wilson
Soient
A “
¨
˚
˚
˝
10 7 8 7
7 5 6 5
8 6 10 9
7 5 9 10
˛
‹
‹
‚
, ∆A “
¨
˚
˚
˝
0 0 10 1 1 5
2 25
1
25 0 0
0 ´ 50 1 ´ 100 11 0
´ 100 1 ´ 100 1 0 ´ 50 1
˛
‹
‹
‚
et b b b t “ p 32, 23, 33, 31 q , p∆bq p∆bq p∆bq t “ ` 1
100 , ´ 100 1 , 100 1 , ´ 100 1 ˘
. Des calculs exacts donnent
Axxx “ b b b ðñ xxx
t“ p1, 1, 1, 1q Au u u “ pb b b ` ∆b ∆b ∆bq ðñ u u u
t“
ˆ 91 50 , ´ 9
25 , 27 20 , 79
100
˙
« p1.8, ´0.36, 1.3, 0.79q pA ` ∆Aqvvv “ b b b ðñ vvv
t“ p´81, 137, ´34, 22q pA ` ∆Aqyyy “ pb b b ` ∆b ∆b ∆bq ðñ yyy
t“
ˆ
´ 18283543
461600 , 31504261
461600 , ´ 3741501
230800 , 5235241 461600
˙
« p´39.61, 68.25, ´16.21, 11.34q
Conditionnement 2020/10/16 6 / 59
Soient A P M n pKq inversible et b b b P K n . Axxx “ b b b
De petites erreurs sur les données engendrent-elles de petites erreurs sur la solution?
Non, pas forcément!
Le système linéaire prédédent est mal conditionné.
On dit qu’un système linéaire est bien conditionné ou qu’il a un bon conditionnement si de petites perturbations des données n’entrainent qu’une variation raisonnable de la solution.
Est-il possible de "mesurer" le conditionnement d’une matrice?
Conditionnement 2020/10/16 7 / 59
Definition 1.1
Soit }.} une norme matricielle subordonnée, le conditionnement d’une matrice régulière A, associé à cette norme, est le nombre
cond pAq “ }A} ›
› A -1 ›
› . Nous noterons cond p pAq “ }A} p ›
› A -1 ›
› p .
Conditionnement 2020/10/16 8 / 59
Proposition:
Soit A une matrice régulière. On a les propriétés suivantes
1
@α P K ˚ , condpαAq “ condpAq.
2
cond p pAq ě 1, @p P v1, `8w.
3
cond 2 pAq “ 1 si et seulement si A “ αQ avec α P K ˚ et Q matrice unitaire
Conditionnement 2020/10/16 9 / 59
Théorème 2:
Soit A une matrice inversible. Soient xxx et x x x ` ` ` ∆x ∆x ∆x les solutions respec- tives de
Axxx “ b b b et A px x x ` ` ` ∆x ∆x ∆x q “ b b b ` ` ` ∆b ∆b ∆b.
Supposons b b b ‰ 0 0 0, alors l’inégalité }∆x ∆x ∆x}
}xxx } ď cond pAq }∆b ∆b ∆b}
}b b b}
est satisfaite, et c’est la meilleure possible : pour une matrice A donnée, on peut trouver des vecteurs b b b ‰ 0 0 0 et ∆b ∆b ∆b ‰ 0 0 0 tels qu’elle devienne une égalité.
Conditionnement 2020/10/16 10 / 59
Théorème:
Soient A et A ` ∆A deux matrices inversibles. Soient xxx et x x x ` ` ` ∆x ∆x ∆x les solutions respectives de
Axxx “ b b b et pA ` ∆Aq px x x ` ` ` ∆x ∆x ∆xq “ b b b.
Supposons b b b ‰ 0 0 0, alors on a }∆x ∆x ∆x}
}x x x ` ` ` ∆x ∆x ∆x} ď cond pAq }∆A}
}A} .
Remarque 2.1
Une matrice est donc bien conditionnée si son conditionnement est proche de 1.
Conditionnement 2020/10/16 11 / 59
Plan
1 Conditionnement
2 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
La tranformation de Householder
Méthodes directes Matrices particulières 2020/10/16 12 / 59
Système diagonal
Soit A P M n pKq diagonale inversible et b b b P K n .
x i “ b i {A i,i , @i P v 1, nw. (1)
Algorithme 1 Fonction RSLMatDiag permettant de résoudre le système linéaire à matrice diagonale inversible
Axxx “ b b b.
Données : A : matrice diagonale de M
npRq inversible.
b b b : vecteur de R
n. Résultat : xxx : vecteur de R
n.
1: Fonction xxx Ð RSLMatDiag ( A,b b b ) 2: Pour i Ð 1 à n faire
3: x pi q Ð bpiq{Api , iq 4: Fin Pour
5: Fin Fonction
Méthodes directes Matrices particulières 2020/10/16 13 / 59
Système triangulaire inférieur
Soit A P M n pKq triangulaire inférieure inversible (A i,j “ 0 si i ă j )
Axxx “ b b b ðñ
¨
˚
˚
˚
˚
˝
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 v 1, nw Soit i P v 1, nw, pAxxx 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 v 1, nw. (2)
Méthodes directes Matrices particulières 2020/10/16 14 / 59
Système triangulaire inférieur
Soit A P M n pKq triangulaire inférieure inversible (A i,j “ 0 si i ă j )
Axxx “ b b b ðñ
¨
˚
˚
˚
˚
˝
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 v 1, nw, pAxxx 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 v 1, nw. (2)
Méthodes directes Matrices particulières 2020/10/16 14 / 59
Système triangulaire inférieur
Soit A P M n pKq triangulaire inférieure inversible (A i,j “ 0 si i ă j )
Axxx “ b b b ðñ
¨
˚
˚
˚
˚
˝
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 v 1, nw, pAxxx 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 v 1, nw. (2)
Méthodes directes Matrices particulières 2020/10/16 14 / 59
x i “ 1 A i,i
˜ b i ´
i´1
ÿ
j“1
A i,j x j
¸
, @i P v 1, nw.
Algorithme 2 R
01:
Résoudre A xxx “ b b b en calculant successivement x
1, x
2, . . . , x
n.
Algorithme 2 R
11:
Pour i Ð 1 à n faire
2:
x
iÐ 1
A
i,i˜ b
i´
i´1
ÿ
j“1
A
i,jx
j¸
3:
Fin Pour
Méthodes directes Matrices particulières 2020/10/16 15 / 59
x i “ 1 A i,i
˜ b i ´
i´1
ÿ
j“1
A i,j x j
¸
, @i P v 1, nw.
Algorithme 2 R 1 1: Pour i Ð 1 à n faire
2: x i Ð 1
A i,i
˜ b i ´
i´ 1
ÿ
j“ 1
A i,j x j
¸
3: Fin Pour
Algorithme 2 R 2 1: Pour i Ð 1 à n faire
2: S Ð
i´ 1
ÿ
j“ 1
A i,j x j 3: x i Ð pb i ´ Sq{A i,i
4: Fin Pour
Méthodes directes Matrices particulières 2020/10/16 15 / 59
x i “ 1 A i,i
˜ b i ´
i´1
ÿ
j“1
A i,j x j
¸
, @i P v1, nw.
Algorithme 2 R 3 1: Pour i Ð 1 à n faire
2: S Ð
i´ 1
ÿ
j“ 1
A i,j x j
3: x i Ð pb i ´ Sq{A i,i 4: Fin Pour
Algorithme 2 R 4 1: Pour i Ð 1 à n faire
2: S Ð 0
3: Pour j Ð 1 à i ´ 1 faire 4: S Ð S ` Api , jq ˚ x pjq 5: Fin Pour
6: x i Ð pb i ´ Sq{A i,i 7: Fin Pour
Méthodes directes Matrices particulières 2020/10/16 15 / 59
x i “ 1 A i,i
˜ b i ´
i´1
ÿ
j“1
A i,j x j
¸
, @i P v 1, nw.
Algorithme 2 Fonction RSLTriInf permettant de résoudre le système linéaire triangulaire inférieur inversible
Axxx “ b b b.
Données : A : matrice triangulaire de M
np K q inférieure inversible.
b b
b : vecteur de K
n. Résultat : xxx : vecteur de K
n.
1:
Fonction xxx Ð RSLTriInf ( A, b b b )
2:
Pour i Ð 1 à n faire
3:
S Ð 0
4:
Pour j Ð 1 à i ´ 1 faire
5:
S Ð S ` Api, j q ˚ xpjq
6:
Fin Pour
7:
xpiq Ð pbpiq ´ Sq{Api, iq
8:
Fin Pour
9:
Fin Fonction
Méthodes directes Matrices particulières 2020/10/16 15 / 59
Système triangulaire supérieur
Soit A P M n pKq triangulaire supérieure inversible (A i,j “ 0 si i ą j )
Axxx “ b b b ðñ
¨
˚
˚
˚
˚
˝
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 Axxx “ b b b.
Méthodes directes Matrices particulières 2020/10/16 16 / 59
Plan
1 Conditionnement
2 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
La tranformation de Householder
Méthodes directes Exercices et résultats préliminaires 2020/10/16 17 / 59
Lemme 3.1:
Soit pi , jq P v1, nw 2 . On note P ri,js n P M n pRq la matrice identitée dont on a permuté les lignes i et j. Alors la matrice P ri,js n est symétrique et orthogonale.
Pour toute matrice A P M n pKq,
1
la matrice P ri,js n A est matrice A dont on a permuté les lignes i et j,
2
la matrice AP ri,js n est matrice A dont on a permuté les colonnes i et j,
Lemme 3.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
EAeee 1 “ A 1,1 eee 1 (3) où eee 1 est le premier vecteur de la base canonique de C n .
Méthodes directes Exercices et résultats préliminaires 2020/10/16 18 / 59
Théorème 4: Décomposition de Schur
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)
Méthodes directes Exercices et résultats préliminaires 2020/10/16 19 / 59
Plan
1 Conditionnement
2 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
La tranformation de Householder
Méthodes directes Méthode de Gauss-Jordan 2020/10/16 20 / 59
Algorithme de Gauss-Jordan
Axxx “ b b b ðñ Uxxx “ 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 modifier les j ´ 1 premières colonnes.
Méthodes directes Méthode de Gauss-Jordan 2020/10/16 21 / 59
¨
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ ‚ ¨ ¨ ¨ ‚ ‚ ¨ ¨ ¨ ‚ 0 . .. ... ... ... .. . .. . . .. ... ‚ .. . .. .
0 . . . 0 ‚ ‚ ¨ ¨ ¨ ‚
0 ¨ ¨ ¨ ¨ ¨ ¨ 0 ‚ ¨ ¨ ¨ ‚ .. . .. . .. . .. .
0 . . . . . . 0 ‚ ¨ ¨ ¨ ‚
˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚ xxx “
¨
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ .. .
‚
‚ .. .
‚
˛
‹
‹
‹
‹
‹
‹
‹
‹
‚
j ´ 1
Etape j ðñ
¨
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ ‚ ¨ ¨ ¨ ‚ ‚ ¨ ¨ ¨ ‚ 0 . .. ... ... ... .. . .. . . .. ... ‚ .. . .. .
0 . . . 0 ‚ ‚ ¨ ¨ ¨ ‚
0 ¨ ¨ ¨ ¨ ¨ ¨ 0 ‚ ¨ ¨ ¨ ‚ .. . .. . .. . .. .
0 . . . . . . 0 ‚ ¨ ¨ ¨ ‚
˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚ xxx “
¨
˚
˚
˚
˚
˚
˚
˚
˚
˝
‚ .. .
‚
‚ .. .
‚
˛
‹
‹
‹
‹
‹
‹
‹
‹
‚ j
Méthodes directes Méthode de Gauss-Jordan 2020/10/16 22 / 59
Algorithme 3 Algorithme de Gauss-Jordan formel pour la résolution de Axxx “ b b b
1: Pour j Ð 1 à n ´ 1 faire
2: Rechercher l’indice k de la ligne du pivot (sur la colonne j , k P vj , nw)
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 effectuant 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.
Méthodes directes Méthode de Gauss-Jordan 2020/10/16 23 / 59
Algorithme 4 Algorithme de Gauss-Jordan avec fonctions pour la résolution de Axxx “ b b b
Données : A : matrice de M
np K q inversible.
b b
b : vecteur de K
n. Résultat : xxx : vecteur de R
n.
1: Fonction xxx Ð RSLGauss ( A,b b b )
2: Pour j Ð 1 à n ´ 1 faire
3: k Ð ChercheIndPivot pA, jq Ź à écrire
4: rA,b b bs Ð PermLignesSys pA,b b b, j, k q Ź à écrire
5: Pour i Ð j ` 1 à n faire
6: rA,b b bs Ð CombLignesSys pA,b b b, j,i , ´Api, jq{Apj, jqq Ź à écrire
7: Fin Pour
8: Fin Pour
9: xxx Ð RSLTriSup pA,b b bq Ź déjà écrite
10: Fin Fonction
Méthodes directes Méthode de Gauss-Jordan 2020/10/16 24 / 59
Algorithme 5Recherche 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:FonctionkÐ ChercheIndPivot (A,j) 2: kÐj,pivotÐ |Apj,jq|
3: PouriÐj`1ànfaire 4: Si|Api,jq| ąpivotalors
5: kÐi
6: pivotÐ |Api,jq|
7: Fin Si 8: Fin Pour 9:Fin Fonction
Algorithme 6Permutte 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 : Aetbbbmodifiés.
1:FonctionrA,bbbs Ð PermLignesSys(A,bbb,j,k )
2: PourlÐ1ànfaire 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 7Combinaison 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 : Aetbbbmodifiés.
1:FonctionrA,bbbs Ð CombLignesSys (A,bbb,j,i, α) 2: PourkÐ1ànfaire
3: Api,kq ÐApi,kq `α˚Apj,kq 4: Fin Pour
5: bbbpiq Ðbbbpiq `αbbbpjq 6:Fin Fonction
Méthodes directes Méthode de Gauss-Jordan 2020/10/16 25 / 59
Exercice 4.1: Méthode de Gauss, écriture algébrique
Soit A P M
npCq inversible.
Q. 1
Montrer qu’il existe une matrice G P M
npCq telle que | detpGq| “ 1 et GAeee
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
np C q inversible, il existe une matrice S
nP M
np C q telle que |det S
n| “ 1 et S
nA
n“ U
navec U
nmatrice triangulaire supérieure inversible.
2
Soit b b b 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 “ b b b.
Q. 3
Que peut-on dire si A est non inversible?
Indication : utiliser les Lemmes 3.1 et 3.2.
Méthodes directes Méthode de Gauss-Jordan 2020/10/16 26 / 59
On a donc démontré le théorème suivant Théorème 5
Soit A une matrice carrée, inversible ou non. Il existe (au moins) une matrice inversible G telle que GA soit triangulaire supérieure.
Méthodes directes Méthode de Gauss-Jordan 2020/10/16 27 / 59
Plan
1 Conditionnement
2 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
La tranformation de Householder
Méthodes directes FactorisationLU 2020/10/16 28 / 59
Exercice: Factorisation LU
Soit A P M n pCq une matrice dont les sous-matrices principales d’ordre i , notées ∆ i , i P v1, nw (voir Definition B.48, page 188) sont inversibles.
Montrer qu’il existe des matrices E rks P M n p C q, k P v1, n ´ 1w, trian- gulaires inférieures à diagonale unité telles que la matrice U définie 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 v 1, nw.
Méthodes directes FactorisationLU 2020/10/16 29 / 59
Théorème 6: Factorisation LU
Soit A P M n pCq 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 pCq triangulaire supérieure (upper triangular en anglais) inversible telles ques
A “ LU.
preuve :
‚ Existence : exercice précédant U “ E rn´1s ¨ ¨ ¨ E r1s A L “
´
E rn´1s ¨ ¨ ¨ E r1s
¯ -1
‚ Unicité : A “ L 1 U 1 “ L 2 U 2 ...
Méthodes directes FactorisationLU 2020/10/16 30 / 59
Corollaire 6.1:
Si A P M n pCq est une matrice hermitienne définie positive alors elle admet une unique factorisation LU.
preuve : A hermitienne définie positive alors toutes ses sous-matrices principales sont définies positives et donc inversibles.
Méthodes directes FactorisationLU 2020/10/16 31 / 59
Remarque 6.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 7: 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 pCq triangulaire supérieure telles ques
PA “ LU. (5)
Méthodes directes FactorisationLU 2020/10/16 32 / 59
Utilisation pratique de la factorisation LU
Soit A P M n pKq admettant une factorisation LU Trouver xxx P K n tel que
Axxx “ b b b ðñ LUxxx “ b b b (6) est équivalent à
Trouver xxx P K n solution de
Uxxx “ yyy (7)
avec yyy P K n solution de
Lyyy “ b b b. (8)
Méthodes directes FactorisationLU 2020/10/16 33 / 59
Utilisation pratique de la factorisation LU
Soit A P M n pKq admettant une factorisation LU Trouver xxx P K n tel que
Axxx “ b b b ðñ LUxxx “ b b b (6)
est équivalent à
Trouver xxx P K n solution de
Uxxx “ yyy (7)
avec yyy P K n solution de
Lyyy “ b b b. (8)
Méthodes directes FactorisationLU 2020/10/16 33 / 59
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
Axxx “ b b b
où A une matrice de M n p R q définie positive et b b b P R n . Données : A : matrice de M n p R q dont les sous-matrices
principales sont inversibles définie positive, b b b : vecteur de R n .
Résultat : xxx : vecteur de R n .
1: Fonction xxx Ð RSLFactLU ( A, b b b )
2: rL, Us Ð FactLU pAq Ź Factorisation LU
3: yyy Ð RSLTriInf pL, b b bq Ź Résolution du système Lyyy “ b b b
4: xxx Ð RSLTriSup pU, yyy q Ź Résolution du système Uxxx “ yyy
5: Fin Fonction
Il nous faut donc écrire la fonction FactLU
Méthodes directes FactorisationLU 2020/10/16 34 / 59
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
‚ ...
Méthodes directes FactorisationLU 2020/10/16 35 / 59
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
˛
‹
‹
‹
‹
‹
‹
‚
‚ 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
‚ ...
Méthodes directes FactorisationLU 2020/10/16 35 / 59
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
˛
‹
‹
‹
‹
‹
‹
‚
‚ 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
‚ ...
Méthodes directes FactorisationLU 2020/10/16 35 / 59
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
˛
‹
‹
‹
‹
‹
‹
‚
‚ 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
‚ ...
Méthodes directes FactorisationLU 2020/10/16 35 / 59
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
˛
‹
‹
‹
‹
‹
‹
‚
‚ 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
‚ ...
Méthodes directes FactorisationLU 2020/10/16 35 / 59
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
˛
‹
‹
‹
‹
‹
‹
‚
‚ 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
‚ ...
Méthodes directes FactorisationLU 2020/10/16 35 / 59
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
˛
‹
‹
‹
‹
‹
‹
‚
‚ 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?
Méthodes directes FactorisationLU 2020/10/16 35 / 59
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˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
Méthodes directes FactorisationLU 2020/10/16 36 / 59
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˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
Méthodes directes FactorisationLU 2020/10/16 36 / 59
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?
Méthodes directes FactorisationLU 2020/10/16 37 / 59
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˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
Méthodes directes FactorisationLU 2020/10/16 37 / 59
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.
Méthodes directes FactorisationLU 2020/10/16 37 / 59
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˛
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‹
‚
Méthodes directes FactorisationLU 2020/10/16 37 / 59
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.
Méthodes directes FactorisationLU 2020/10/16 37 / 59
Algorithme 9 R 0
1: Calculer les matrices L et U
Algorithme 9 R 1
1: Pour i Ð 1 à n faire 2: Calculer la ligne i de U . 3: Calculer la colonne i de L . 4: Fin Pour
Méthodes directes FactorisationLU 2020/10/16 38 / 59
Algorithme 9 R
11:
Pour i Ð 1 à n faire
2:Calculer la ligne i de U .
3:Calculer la colonne i de L.
4:
Fin Pour
Algorithme 9 R
2 1:Pour i Ð 1 à n faire
2:
Pour j Ð 1 à i ´ 1 faire
3:
Upi, jq Ð 0
4:
Fin Pour
5:
Pour j Ð i à n faire
6:U
i,jÐ A
i,j´
i´1
ÿ
k“1
L
i,kU
k,j 7:Fin Pour
8:
Pour j Ð 1 à i ´ 1 faire
9:L
j,iÐ 0
10:
Fin Pour
11:L
i,iÐ 1
12:
Pour j Ð i ` 1 à n faire
13:L
j,iÐ
U1i,i˜ A
j,i´
i´1
ÿ
k“1
L
j,kU
k,i¸
14:
Fin Pour
15:Fin Pour
Méthodes directes FactorisationLU 2020/10/16 38 / 59
Algorithme 9 R
21:
Pour i Ð 1 à n faire
2:Pour j Ð 1 à i ´ 1 faire
3:
Upi, jq Ð 0
4:
Fin Pour
5:
Pour j Ð i à n faire
6:
U
i,jÐ A
i,j´
i´1
ÿ
k“1
L
i,kU
k,j7:
Fin Pour
8:
Pour j Ð 1 à i ´ 1 faire
9:L
j,iÐ 0
10:
Fin Pour
11:L
i,iÐ 1
12:
Pour j Ð i ` 1 à n faire
13:
L
j,iÐ
U1i,i˜ A
j,i´
i´1
ÿ
k“1
L
j,kU
k,i¸
14:
Fin Pour
15:Fin Pour
Algorithme 9 R
31:
Pour i Ð 1 à n faire
2:Pour j Ð 1 à i ´ 1 faire
3:
Upi, jq Ð 0
4:
Fin Pour
5:
Pour j Ð i à n faire
6:
S
1Ð
i´1
ÿ
k“1
L
i,kU
k,j 7:U
i,jÐ A
i,j´ S
18:
Fin Pour
9:
Pour j Ð 1 à i ´ 1 faire
10:L
j,iÐ 0
11:
Fin Pour
12:L
i,iÐ 1
13:
Pour j Ð i ` 1 à n faire
14:
S
2Ð
i´1
ÿ
k“1
L
j,kU
k,i15:
L
j,iÐ 1
U
i,ipA
j,i´ S
2q .
16:
Fin Pour
17:Fin Pour
Méthodes directes FactorisationLU 2020/10/16 38 / 59
Algorithme 9 R3
1:PouriÐ1ànfaire 2: PourjÐ1ài´1faire 3: Upi,jq Ð0 4: Fin Pour 5: PourjÐiànfaire
6: S1Ð
i´1 ÿ
k“1 Li,kUk,j
7: Ui,jÐAi,j´S1 8: Fin Pour
9: PourjÐ1ài´1faire 10: Lj,iÐ0
11: Fin Pour 12: Li,iÐ1
13: PourjÐi`1ànfaire
14: S2Ð
i´1 ÿ
k“1 Lj,kUk,i
15: Lj,iÐ 1
Ui,i pAj,i´S2q.
16: Fin Pour 17: Fin Pour
Algorithme 9 R4
1:PouriÐ1ànfaire 2: PourjÐ1ài´1faire 3: Upi,jq Ð0 4: Fin Pour 5: PourjÐiànfaire
6: S1Ð0
7: PourkÐ1ài´1faire 8: S1ÐS1`Li,k˚Uk,j 9: Fin Pour
10: Ui,jÐAi,j´S1 11: Fin Pour
12: PourjÐ1ài´1faire 13: Lj,iÐ0
14: Fin Pour 15: Li,iÐ1
16: PourjÐi`1ànfaire
17: S2Ð0
18: PourkÐ1ài´1faire 19: S2ÐS2`Lj,k˚Uk,i 20: Fin Pour
21: Lj,iÐ 1
Ui,ipAj,i´S2q.
22: Fin Pour 23:Fin Pour
Méthodes directes FactorisationLU 2020/10/16 38 / 59
Algorithme 9 Fonction
FactLUpermet de calculer les matrices L et U dites matrice de factorisation LU associée à la matrice A, telle que
A “ LU
Données : A : matrice de M
npKq dont les sous-matrices principales sont inversibles.
Résultat : L : matrice de M
npKq triangulaire inférieure avec L
i,i“ 1, @i P v1, nw
U : matrice de M
npKq triangulaire supérieure.
1:
Fonction rL,Us Ð
FactLU( A )
2:
U Ð O
nŹ O
nmatrice nulle n ˆ n
3:
L Ð I
nŹ I
nmatrice identitée n ˆ n
4:
Pour i Ð 1 à n faire
5:
Pour j Ð i à n faire Ź Calcul de la ligne i de U
6:
S
1Ð 0
7:
Pour k Ð 1 à i ´ 1 faire
8:S
1Ð S
1` Lpi, kq ˚ Upk,jq
9:Fin Pour
10:
Upi, jq Ð Api ,jq ´ S
111:
Fin Pour
12:
Pour j Ð i ` 1 à n faire Ź Calcul de la colonne i de L
13:
S
2Ð 0
14:
Pour k Ð 1 à i ´ 1 faire
15:S
2Ð S
2` Lpj, kq ˚ Upk, iq
16:Fin Pour
17:
Lpj, iq Ð pA
j,i´ S
2q {U pi, iq.
18:
Fin Pour
19:Fin Pour
20:Fin Fonction
Méthodes directes FactorisationLU 2020/10/16 39 / 59