Académique Documents
Professionnel Documents
Culture Documents
INTRODUCTION
1 Introduction
La plupart des problèmes issus de l’ingénierie et des sciences appliquées nécessitent la résolution de systèmes
d’équations algébriques linéaires et le calcul des valeurs propres et des vecteurs propres d’une matrice. Nous
supposons que les lecteurs sont familiarisés avec la théorie des déterminants et des éléments de l’algèbre
matricielle puisque ceux-ci fournissent un moyen pratique de représenter les équations algébriques linéaires.
Par exemple, le système d’équations suivant:
a11 x1 + a12 x2 + a13 x3 = b1
a21 x1 + a22 x2 + a23 x3 = b2
a31 x1 + a32 x2 + a33 x3 = b3
Résoudre le système linéaire AX = B à condition que A soit une matrice régulière appelé aussi non singulière
(det A ̸= 0) d’ordre n, consiste à trouver des vecteurs X, vérifiant le système.
Les méthodes classiques comme la méthode de Cramer ou la méthode de la matrice inverse deviennent
lentes en temps d’exécution (de calcul) des que n dépasse 4. Pour cela nous faisons appel à des méthodes
numériques ayant des temps de calcul acceptables pour la résolution du système linéaire AX = B. La solution
d’un système linéaire d’équations peut être accomplie par une méthode numérique classée dans l’une des deux
catégories suivantes: méthodes directes ou itératives. Dans ce chapitre, nous allons nous concentrer sur les
méthodes directes. Parmi les méthodes directes, nous décrirons la méthode d’élimination de Gauss ainsi
que sa modification (méthode de Gauss-Jordan), la méthode de factorisation LU et la méthode de Cholesky.
Concernant les types itératifs, nous les décrirons dans le prochain chapitre.
bi
La solution de ce type de systèmes est donnée par xi = .
aii
1
La solution de ce type de systèmes est donnée par
bn
xn =
a nn
Xn
bi − aij xj
j=i+1
xi =
, i = n − 1, n − 2, n − 3, .., 2, 1
aii
Soit A ∈ Mn (K). La matrice A est dite inversible (ou régulière) et son inverse est noté par A−1 si on
a pour det A ̸= 0, AA−1 = In (avec In représente la matrice identité d’ordre n). En d’autre terme:
A inversible ⇐⇒ det A ̸= 0.
Cas n = 1 :
Cas n = 2
:
a b
Soit A =
c d
+ −
det A = a b = ad − bc
c d
Cas n = 3
:
a b c
Soit A = d e f
g h i
✬ Méthode 1: consiste à calculer le déterminant suivant une ligne ou une colonne tout en prenant en
considération les signes + et −.
+ − +
a b c e f d f d e
det A = d e f = +a −b +c
h i g i g h
g h i
2
Cas général:
✬ Méthode 1:
Soit n ≥ 2, n ∈ N et A ∈ Mn (K).
Pour i, j = 1, n, notons Aij la matrice carrée d’ordre (n − 1) obtenue en supprimant la ligne i et
la colonne j de la matrice A. Avec
a11 a12 ··· a1,j−1 a1,j a1,j+1 · · · a1n
a21
a22 ··· a2,j−1 a2,j a2,j+1 · · · a2n
.. .. .. .. .. .. .. ..
. . . . . . . .
ai−1,1 ai−1,2 · · · ai−1,j−1 ai−1,j ai−1,j+1 · · · ai,n
A=
ai,1 a i,2 · · · ai,j−1 a i,j a i,j+1 · · · ai,n
ai+1,1 ai+1,2 · · · ai+1,j−1 ai+1,j ai+1,j+1 · · · ai+1,n
.. .. .. .. .. .. .. ..
. . . . . . . .
an1 an2 · · · an,j−1 an,j an,j+1 · · · ann
Dans le calcul des déterminants il faut respecter les signes, comme définie ci-dessous
j↓
+ − + ··· (−1)1+n
− + − ··· (−1)2+n
.. .. .. .. ..
. . . . .
i −→ .. .. .. ..
. . (−1)i+j . .
.. .. .. .. ..
. . . . .
(−1)n+1 (−1)n+2 ··· ··· (−1)n+n
✬ Méthode 2:
Pour calculer le déterminant d’une matrice A d’ordre n très grand, il suffit de faire apparaitre
′
beaucoup de 0 dans une ligne ou une colonne pour avoir le déterminant de lanouvelle matrice A
′ ′
d’une manière facile. Où, le déterminant de A est égale au déterminant de A det(A) = det(A ) .
Pour ce faire, on pourra effectuer un:
1. Changement sur les colonnes: selon la formule ci ←− ci + λcj avec i ̸= j et λ ∈ R.
2. Changement sur les lignes: selon la formule ℓi ←− ℓi + λℓj avec i ̸= j et λ ∈ R.
sont des matrices triangulaires où A est appelée une matrice triangulaire supérieure et B est une matrice
triangulaire inférieure. Il est clair que dans la matrice A, aij = 0 pour i > j, et bij = 0 pour j > i dans B.
Il est également facile de voir qu’une matrice triangulaire n’est pas singulière que lorsque tous ses éléments
diagonaux sont non nuls. Les propriétés suivantes sont valables pour les matrices triangulaires:
3
1. Si A1 et A2 sont deux matrices triangulaires supérieures du même ordre, alors A1 + A2 et A1 A2 sont
aussi des matrices triangulaires supérieures du même ordre. Des résultats similaires sont également
valables pour les matrices triangulaires inférieures.
2. L’inverse d’une matrice triangulaire inférieure non singulière est aussi une matrice triangulaire inférieure.
Un résultat similaire est également valable pour une matrice triangulaire supérieure. Cette propriété
nous permet d’inverser facilement une matrice triangulaire.
2 Méthodes directes
Définition 2.1: Méthode directe
On appelle méthode directe de résolution des systèmes linéaires une méthode qui donne exactement
la solution X de ce système après un nombre fini d’opérations élémentaires (+, −, x, /).
b′1
b1
b2
′
b′2
B= se transforme en B =
.. −−−−−−−−−−−−→ ..
. .
bn b′n
b′1
b1
b2 b′2
B= −→ B′ =
.. ..
. .
bn b′n
C’est à dire on cherche à trigonaliser le système (S).
4
Soit le système de n équations linéaires à n inconnues donné par
(1) (1) (1) (1) (1)
a11 x1 + a12 x2 + ... + a1n xn = b1 −→ L1
a(1) (1) (1) (1) (1)
21 x1 + a22 x2 + ... + a2n xn
= b2 −→ L2
(1) (1) (1) (1) (1)
(S) ⇐⇒ AX = B ⇐⇒ a31 x1 + a32 x2 + ... + a3n xn = b3 −→ L3 (1)
.. .. .. .. ..
. . . . .
(1)
(1) (1) (1) (1)
an1 x1 + an2 x2 + ... + ann xn = bn −→ Ln
(1)
où Li désigne les lignes du système (S), i = 1, n.
On pose A = A(1) et B = B (1) , puis on construit la matrice augmentée [A|B]
(1) (1) (1) (1)
a a12 · · · a1n b1
11
a(1) (1) (1)
a22 · · · a2n b2
(1)
21
[A|B] ⇐⇒ [A(1) |B (1) ] =
.. .. .. .. ..
. . . . .
(1) (1) (1) (1)
an1 an2 ··· ann bn
Puis, on trigonalise le système en le transformant d’une matrice augmentée [A|B] en une autre matrice
augmentée [A′ |B ′ ], où A′ est une matrice triangulaire supérieure.
(1) (1)
Si a11 = 0, alors on cherche l’élément non nul se trouvant sur la même colonne ak1 ̸= 0, k = 2, . . . , n.
(1) (1)
Puis on permute les lignes L1 et Lk .
(2)
Étape 2: Si a22 ̸= 0, les lignes 1 et 2 seront maintenues mais les (n − 2) autres lignes vont être changées
selon la formule
(2)
(3) (2) a (2)
Li ←− Li − i1 L
(2) 2
a22
5
On obtient pour i = 3, ..., n et j = 1, ...n
(3) (2)
a1j = a1j
(3) (2)
a2j = a2j
(2)
(3) (2) aij (2)
−
a
ij
= a ij a .
(2) ij
a22
et
(3) (2) (1)
b1 = b1 = b1
(3) (2)
b2 = b2
(2)
(3) (2) ai2 (1)
b = b − b
i
i (2) 1
a22
Le résultat après les opérations sera:
(1) (1) (1) (1) (1) (1) (1) (1) (1)
a11 a12 · · · a1n b1 a11 a12 a13 ··· a1n b1
(2) (2)
0 a22 · · · a2n b2 (2) (2) (2) (2) (2)
0 a22 a23 ··· a2n b2
(2) (2) (2) (3) (3) (3)
[A(2) |B (2) ] = 0 a32 · · · a3n b3 −→ [A(3) |B (3) ] = 0 0 a33 ··· a3n b3
. .. .. ..
.. . . .
(2) (2) (2) (3) (3) (3)
0 an2 · · · ann bn 0 0 a3n ··· ann bn
(2) (2) (2) (2)
Si a22 = 0, alors on cherche ak2 ̸= 0, k = 3, . . . , n. Puis on permute les lignes L2 et Lk .
(k)
Étape k: Si akk ̸= 0, on effectue les affectation suivante:
(k+1) (k)
Lk
← Lk , (la ligne Lk est maintenue).
(k)
(k+1) (k) aik (k)
Li
← Li − (k) Lk , pour i = k + 1, . . . , n
akk
Le système final sera de la forme
(1) (1) (1) (1) (1)
a11 a12 a13 ··· a1n b1
0 a(2) (2) (2) (2)
22 a23 ··· a2n b2
(n) (n) (3) (3) (3)
[A |B ] = 0
0 a33 ··· a3n b3
. ..
.. .
(n) (n)
0 0 0 ··· ann bn
Ainsi la solution du système (S) est
n
1 (1)
X (1)
x1 = (1) b1 −
a1j xj
a11 j=2
.
.
.
n
1 (i) X (i)
xi = (i) bi − aij xj
aii j=i+1
.
.
.
(n)
bnn
xn = (n)
ann
6
On commence tout d’abord par déterminer la valeur de xn puis xn−1 ainsi de suite jusqu’à obtention de x1 .
(1) (2) (n)
Les coefficients a11 , a22 , . . . , ann sont appelés respectivement le 1er pivot, 2ème pivot, . . . nième pivot.
Exemple 2.1
Si, d’autre part, nous recherchons à la fois l’élément le plus grand dans les colonnes et les lignes, la
procédure est appelée pivotage total. Il est évident qu’un pivotage total implique plus de complexité
dans les calculs car l’échange de colonnes signifie un changement d’ordre des inconnues qui nécessite
invariablement plus d’efforts en terme de programmation. En comparaison, le pivotage partiel, c’est-
à-dire les échanges de lignes, est facilement adopté en programmation. Pour cette raison, le pivotage
total est rarement utilisé. n o
(k) (k)
ai0 j0 = max |aij |, i, j = k, n
7
b′1
b1
b2
′
b′2
B= se transforme en B =
.. −−−−−−−−−−−−→ ..
. .
bn b′n
(1)
Etape 2: Si a11 ̸= 0, calcul de [A(2) |B (2) ] en suivant les opérations suivantes
(2) (1)
1
L1 ← a(1) L1
11
(2)
(1) (1) (2)
Li ← Li − ai1 L1 pour i = 2, . . . , n
1 (2)
(3)
L2 ← (2) L2
a22
(3)
(2) (2) (3)
Li ← Li − ai2 L2 i = 1, . . . , n avec i ̸= 2
Ainsi
(2) (2) (2) (3) (3) (3)
1 a12 · · · a1n b1 1 0 a13 · · · a1n b1
(2) (2) (2) (3) (3) (3)
0 a22 · · · 0 1 a23 · · ·
(2) (2)
a2n b2 (3) (3)
a2n b2
[A |B ]= .. .. −→ [A |B ]= .. ..
. . . .
(2) (2) (2) (3) (3) (3)
0 an2 ··· ann bn 0 0 an3 ··· ann bn
(k)
Etape k : Si akk ̸= 0, calcul de [A(k+1) |B (k+1) ] en suivant les opérations suivantes
1 (k)
(k+1)
Lk ← (k) Lk
akk
(k+1)
(k) (k) (k+1)
Li ← Li − aik Lk i = 1, . . . , n − 1 avec i ̸= k
8
Donc, le système final sera
a11 0 ··· 0
x1 (n)
0 a22 0 ··· 0 b1
x2
(n)
′ .. .. b2
(n) (n) x3
(S ) = [A , B ] ⇐⇒ 0 . . =
..
.. .. ..
.. .
.
. . . 0
(n)
xn bn
0 0 ··· 0 ann
(n)
bi
D’où la solution du système (S ′ ) est: xi = , i = 1, . . . , n.
aii
Remarque:
Une matrice et son inverse doivent avoir nécessairement les mêmes dimensions.
Exemple 2.2.4:
si
a11 a12 a13
a11 a12
a11 ̸= 0, ̸= 0, a21 a22 a23 ̸= 0, et ainsi de suite.
a21 a22
a31 a32 a33
9
Théorème 2.3.1: Condition d’application de la factorisation LU
Soit A ∈ Mn (R). La factorisation LU de A existe et est unique si et seulement si les sous matrices
principales Ai de A d’ordre 1, 2, ..., n sont inversible (det Ai ̸= 0, i = 1, n).
En multipliant les matrices du côté droit de l’équation (2) et en égalant les éléments correspondants
des deux côtés, on obtient
u11 = a11 , u12 = a12 , u13 = a13 ,
ℓ21 u11 = a21 , ℓ21 u12 + u22 = a22 , ℓ21 u13 + u23 = a23 ,
ℓ31 u11 = a31 , ℓ31 u12 + l32 u22 = a32 , ℓ31 u13 + ℓ32 u23 + u33 = a33
La procédure donnée est systématique pour trouver les éléments de L et U . Tout d’abord, nous
déterminons la première ligne de U et la première colonne de L, puis nous déterminons la deuxième
ligne de U et la deuxième colonne de L, et enfin, nous calculons la troisième ligne de L. Il est évident
que cette procédure peut être généralisée.
1. On pose L = In et U = A;
2. On applique la méthode d’élimination de Gauss sur la matrice U ;
uij
3. Pour chaque élément éliminé de U , on met le facteur dans la même position dans la matrice
uii
L.
Exemple 2.3.1:
10
2. Calcul du déterminant de la matrice
On sait que det(AB) = det A. det B, alors
n
Y n
Y
det A = det L. det U = ℓii . uii .
i=1 i=1
Exemple 2.3.2
Exemple 2.3.3:
Théorème 2.4.1
Supposons que A est une matrice réelle symétrique n × n. Alors l’algorithme de Cholesky détermine
la factorisation A = C .t C avec les quantités
i−1
!
1 X
cij = aij − cki ckj , i = 1, . . . , j − 1
cij
k=1
j−1
!1/2
X
cjj = ajj − c2kj .
k=1
Exemple 2.4.1:
11
Définition 2.4.2: Matrice définie positive
Soit A une matrice carrée A ∈ Mn (K). On dit que A est définie positive si l’une des conditions
suivantes est vérifiée:
1. Les déterminants des sous matrices principales sont strictement positifs (i.e. det(Ai ) > 0, i =
1, ..., n). ”critère de Sylvester”.
Exemple 2.4.2:
La première instance (j = 1) de ceci n’implique que la deuxième équation: c11 = (a11 )1/2 . Une utilisation de
cet algorithme est de déterminer si une matrice symétrique est définie positive ou non.
c211
c21 c11 c31 c11
c21 c11
= c221 + c222 c21 c31 + c22 c32
c31 c11 c31 c21 + c32 c22 c231 + c232 + c233
Par identification, on commence par trouver c11 , c22 , c33 vérifiant cii > 0 puis cij , i ̸= j, i, j = 1, 3.
Exemple 2.4.3:
12
2.4.4 Utilité de la méthode de Cholesky
1. Calcul du déterminant d’une matrice
On sait que det(AB) = det A. det B alors
n
!2
Y
det A = det C. t C =
cii .
i=1
Exemple 2.4.4:
13