Académique Documents
Professionnel Documents
Culture Documents
Méthodes numériques
pour l’ingénieur
Résolution de systèmes linéaires
par des méthodes directes :
LDL’ et Choleski
Résoudre un système linéaire
2 x1 + 4 x2 − 2 x3 = −6
x + 3x + x4 = 0
1
Ax = b ⇔ 2
3 x1 − x2 + x3 + 2 x4 = 8
− x2 + 2 x3 + x4 = 6
7 2 0 6 4 − 3
3 5 −1 , 4 − 2 0
0 5 − 6 −3 0
1
⇔ Ax = 0
éléments de démonstration :
2
n m nm m
∑ ∑ bij x j = ∑ ∑ bij x j ∑ bij x j
i =1 j =1 i =1 j =1 j =1 Rappelez vous
m n m des moindres carrés
= ∑ ∑ ∑ bik bkj x j xi
i =1 j =1k =1
Exemple
2 -1 0
la matrice - 1 2 - 1 est elle définie positive ?
0 - 1 2
2 - 1 0 x1
x' Ax = [x1 x2 x3 ] - 1 2 - 1 x2
0 - 1 2 x3
2 x1 - x2
= [x1 x2 x3 ] - x1 + 2 x2 - x3
- x2 + 2 x3
= 2 x12 − 2 x1 x2 + 2 x22 − 2 x2 x3 + 2 x32
= x12 + ( x1 − x2 ) + ( x2 − x3 ) + x32 ≥ 0
2 2
Exemple
2 -1 0
la matrice - 1 2 - 1 est elle définie positive ?
0 - 1 2
2 - 1 0 x1
x' Ax = [x1 x2 x3 ] - 1 2 - 1 x2
0 - 1 2 x3
2 x1 - x2
= [x1 x2 x3 ] - x1 + 2 x2 - x3
- x2 + 2 x3
= 2 x12 − 2 x1 x2 + 2 x22 − 2 x2 x3 + 2 x32
= x12 + ( x1 − x2 ) + ( x2 − x3 ) + x32 ≥ 0
2 2
Propriétés des matrices définies positives
Théorème :
Si
A est une matrice n x n strictement définie positive
Alors :
– A est non singulière
– aii > 0 pour i=1,n
− (aij ) < aii a jj ∀i ≠ j
2
0 si i ≠ j et i ≠ j
( jk )
∀x, x' Ax = 0, en particulier pour x = 1 si i = j
- 1 si i = k
or x ( jk ) Ax ( jk ) = a jj + akk − a jk − akj > 0
(1) A symétrique ⇒ 2a jk < a jj + akk
( jk ) ( jk )
et x Ax = aii + akk + a jk + akj > 0
( 2) A symétrique ⇒ −2a jk < a jj + akk
a jj + akk
(1)et (2) ⇒ a jk < ≤ max aii et donc : max a jk < max aii
2 i j ,k i
Propriétés des matrices définies positives
Théorème :
Si
A est une matrice n x n symétrique strictement définie positive
Alors : − (a )2 < a a
ij ∀i ≠ j
ii jj
0 si i ≠ j et i ≠ j
( jk )
∀x, x' Ax > 0, en particulier pour x = 1 si i = j
α si i = k
( jk ) ( jk )
or x Ax = a jj + α akk + 2αa jk > 0
2
2 -1 0
A = - 1 2 - 1 det A1 = 2 > 0;
0 - 1 2
2 − 1
det A2 = det = 4 −1 = 3 > 0
− 1 2
detA2 = det A = 2 det A2 − 1 det .... = 4
Autres propriétés
Définition : une sous matrice principale d’une matrice A
est une matrice carrée de la forme A(1:i,1:i) quelque soit i
2 -1 0
A = - 1 2 - 1 det A1 = 2 > 0;
0 - 1 2
2 − 1
det A2 = det = 4 −1 = 3 > 0
− 1 2
detA2 = det A = 2 det A2 − 1 det .... = 4
Autres propriétés
Théorème :
Une matrice est symétrique définie positive si la méthode de Gauss
être appliquée sans permutations n’admet que des pivots positifs
Corollaire
si A est une matrice symétrique non singulière,
Alors il existe une matrice diagonale D
et une matrice triangulaire avec des 1 sur la diagonale L
telles que :
A = LDL’
Exemple :
4 −1 1 1 0 0 4 0 0 1 − 0.25 0.25
− 1 4,25 2,75 = − 0.25 1 0 0 4 0 0 1 0.75
1
1 2,75 3,5 0.25 0.75 1 0 0 1 0 0
La factorisation LDL’
Fonction L,D = décomposeLDL(A)
pour i = 1 jusqu' à n
somme ← 0
pour j = 1 jusqu' à i − 1
v j ← ij d j
somme ← somme + ij v j
fait
d i ← aii − somme
pour j = i + 1 jusqu' à n
somme ← 0
pour k = 1 jusqu' à i − 1
somme ← somme + jk vk
fait a
ji − somme
l ji ←
di
fait
fait
Choleski : LL’
~~
A = LDL' et A = LL'
~
L=L D
Théorème :
toute matrice A symétrique définie positive
admet une décomposition unique sous la forme
A=LL’
ou L est une matrice triangulaire inférieure dont tous les éléments
diagonaux sont positifs
Choleski : 11 ← a11
pour j = 2 jusqu' à n
l’algorithme j1 ←
a j1
l11
Fonction L = Choleski(A) fait
pour i = 2 jusqu' à n − 1
somme ← 0
pour k = 1 jusqu' à i − 1
somme ← somme + ( ik )
2
fait
ii ← aii − somme
pour j = i + 1 jusqu' à n
somme ← 0
pour k = 1 jusqu' à i − 1
somme ← somme + jk ik
fait a − somme
ji ←
ji
lii
fait
nn ← ann − somme
Comparaison : temps de calcul
Gauss Choleski
racines n
Matlab : x =A\b ;
si A triangulaire : x=trisup(A,b)
sinon si A symétrique définie positive ; L=chol(A)
sinon : (* cas général*)
[L,U,P]=lu(A); z=L\(P*b); x=U\z;