Vous êtes sur la page 1sur 21

Cours danalyse numrique

SMI-S4
Introduction
Lobjet de lanalyse numrique est de concevoir et dtudier des mthodes de
rsolution de certains problmes mathmatiques, en gnral issus de problmes
rels, et dont on cherche calculer la solution laide dun ordinateur.
Exemples de problmes rsoudre:
- Systmes linaires ou non linaires.
- Optimisation.
- Equations direntielles ou aux drives partielles.
etc. . .
Rfrences pour le cours:
(1) P. G. Ciarlet
Introduction lanalyse numrique matricielle et loptimisation.
(2) A. Quarteroni
Mthodes numriques pour le calcul scientique.
(3) M. Sibony & J. Cl. Mardon
Analyse numrique 1: Systmes linaires et non linaires.
Analyse numrique 2: Approximations et quations direntielles.
1
1 Rsolution de systmes linaires
Objectifs:
On note par /

(R) lensemble des matrices carres dordre .


Soit /

(R) une matrice inversible et / R

.
On cherche rsoudre le systme linaire:
trouver r R

, tel que r = /.
Nous allons voir deux types de mthodes:
- Mthodes directes,
- Mthodes itratives.
Selon le type et la taille dune matrice, on utilise une mthode directe ou
une mthode itrative.
1.1 Quelques rappels dalgbre linaire
1.1.1 Matrices
- La tra::jo: cc, dune matrice = (a
I,
)
1I,
,est une matrice

T
= (a
0
I,
)
1I,
, avec a
0
I,
= a
,I
pour 1 _ i, , _ .
On a evidemment les proprits suivantes:
(
T
)
T
= ;
( + 1)
T
=
T
+ 1
T
;
(1)
T
= 1
T

T
;
(c)
T
= c
T
, \c R;
det(
T
) = det().
Si est inversible (
T
)
1
= (
1
)
T
.
- La matrice ad,oi:tc de est

=
T
.on a alors les proprits:
(

= ;
( + 1)

+ 1

;
(1)

= 1

;
(c)

= c

, \c C;
det(

) = det();
Si est inversible (

)
1
= (
1
)

.
- Une matrice /

(R) est :j: ctrinc si


T
= .
- Une matrice /

(C) est /cr:itic::c si

= .
- Une matrice /

(R) est ort/oqo:a|c si


T
=
T
= 1

.
(cest dire
T
=
1
)
- Une matrice /

(C) est n:itairc si

= 1

.
(cest dire

=
1
).
On dit que est :or:a|c si

.
- Si = (a
I,
)
1I,
la trace de est dnie par tr() =

I=1
a
I,I
.
2
1.1.2 Normes matricielles
Soit 1 un espace vectoriel sur R.
On dnit [[.[[ une norme vectorielle sur 1, cest--dire une application:
1 R
+
qui vrie les proprits suivantes:
(i) \r 1, [[r[[ = 0 == r = 0.
(ii) \` R, \r 1, [[`r[[ = [`[.[[r[[.
(iii) \r, j 1, [[r + j[[ _ [[r[[ +[[j[[.
Exemples de normes vectorielles sur R

:
Soit r = (r
1
, r
2
, . . . , r

) R

1) r [[r[[
1
= [r
1
[ +[r
2
[ + . . . +[r

[
2) r [[r[[
2
=
_
[r
1
[
2
+[r
2
[
2
+ . . . +[r

[
2
3) r [[r[[
1
= :ar([r
1
[, [r
2
[, . . . , [r

[)
sont trois normes vectorielles sur R

.
Dnition 2:
Soit [[.[[ une norme vectorielle sur 1 = R

.
On appelle une norme matricielle induite, par cette norme vectorielle, sur
/

(R), quon note encore par [[.[[:


[[[[ = :nj[[r[[, r R

, [[r[[ = 1.
Remarque:
on dit aussi que cest une norme matricielle :n/ordo:: cc ou associe la
norme vectorielle.
Proposition 1 Si [[.[[ est une norme matricielle induite (par une norme vec-
torielle [[.[[ sur 1 = R

) sur /

(R), alors on a les proprits suivantes:


(1) \r R

et \ /

(R),
[[r[[ _ [[[[.[[r[[.
(2) [[[[ = :ar[[r[[, r R

, [[r[[ = 1.
(3) [[[[ = :ar
jj.rjj
jjrjj
, r R

, r ,= 0.
Dmonstration
(1)Soit r R

non nul,
j =
1
jjrjj
r == [[j[[ = 1
== [[j[[ _ [[[[ (par dnition)
== [[
1
jjrjj
r[[ _ [[[[
==
jj.rjj
jjrjj
_ [[[[
== [[r[[ _ [[[[.[[r[[.
Si r = 0 alors r = 0 et lingalit
[[r[[ _ [[[[.[[r[[ est encore vrie.
(2) [[[[ = :nj[[r[[, r R

, [[r[[ = 1
Comme lapplication r [[r[[ est continue sur r R

, [[r[[ = 1
qui est un compact de R

,
r
0
r R

, [[r[[ = 1 tel que:


[[[[ = [[r
0
[[ = :ar[[r[[, r R

, [[r[[ = 1.
(3) Si r est non nul,
jj.rjj
jjrjj
= [[(
r
jjrjj
)[[
3
et
r
jjrjj
r R

, [[r[[ = 1.
Proposition
Pour toute matrice = (a
I,
)
1I,
, on a
1) [[[[
1
= sup
jjrjj1=1
jj.rjj1
jjrjj1
= max
1

I=1
[a
I,
[.
2) [[[[
1
= sup
jjrjj1=1
jj.rjj1
jjrjj1
= max
1I

=1
[a
I,
[.
Exemple
Si =
_
1 2
3 0
_
;
[[[[
1
= max(4, 2) = 4 et [[[[
1
= 3.
1.1.3 Rayon spectral
Dnition:
Soit /

(R) ct ` C.
On dit que ` est une a|cnr jrojrc de , sil existe un vecteur n R

, n ,= 0
et tel que: n = `n.
On dit alors que n est un vecteur propre de associ `.
Proposition 2 On a lquivalence suivante:
` est une valeur propre de == dct(`1) = 0.
Les valeurs propres de sont donc les racines du polynme
1
.
(r) = det(r1), appel le jo|j:^ o:c caract cri:tinc de .
Cest un polynme de degr , il a donc racines dans C
(non ncessairement distinctes).
La matrice a donc valeurs propres dans C (non ncessairement dis-
tinctes): `
1
, `
2
,,...,`

.
On montre quon a :
det() =

I=1
`
I
et tr() =

I=1
`
I
Proprit:
Si /

(R) est une matrice :j: ctrinc


alors toutes ses a|cnr: jrojrc: sont r cc||c:
et il existe une matrice ort/oqo:a|c 1 (1
1
= 1
T
) telle que:
1
1
1 =
_
_
_
_
_
`
1
0.. 0
0
.
.
.
.
.
.
.
.
.
0 0 `

_
_
_
_
_
= 1
o les `
I
sont les valeurs propres de .
est donc semblable la matrice diagonale 1.
Dnition: On dit que deux matrices et 1 sont semblables sil
existe une matrice inversible 1 telle que = 1
1
11.
Exemple:
4
=
_
_
0 1 1
1 0 1
1 1 0
_
_
r
3
3r 2 = (r 2)(r + 1)
2
,
Les valeurs propres de sont: 2, 1, 1.
Les vecteurs propres sont:
Pour `
1
= 1 : c
_
_
1
0
1
_
_
+ ,
_
_
1
2
1
_
_
,
avec c, , R, (c, ,) ,= (0, 0).
Pour `
2
= 2 : c
_
_
1
1
1
_
_
,avec c R

.
Si 1 =
_
_
1 1 1
0 2 1
1 1 1
_
_
,on a 1
1
=
_
_

1
2
0
1
2
1
6

1
3
1
6
1
3
1
3
1
3
_
_
1
1
1 =
_
_

1
2
0
1
2
1
6

1
3
1
6
1
3
1
3
1
3
_
_
_
_
0 1 1
1 0 1
1 1 0
_
_
_
_
1 1 1
0 2 1
1 1 1
_
_
=
_
_
1 0 0
0 1 0
0 0 2
_
_
Remarque: Si on prend 1
0
=
_
_
_

1
p
2
1
p
6
1
p
3
0
2
p
6
1
p
3
1
p
2
1
p
6
1
p
3
_
_
_,
son inverse: 1
1
= 1
T
et on a:
1
0T
1
0
=
_
_
_

1
p
2
0
1
p
2
1
p
6

2
p
6
1
p
6
1
p
3
1
p
3
1
p
3
_
_
_
_
_
0 1 1
1 0 1
1 1 0
_
_
_
_
_

1
p
2
1
p
6
1
p
3
0
2
p
6
1
p
3
1
p
2
1
p
6
1
p
3
_
_
_
=
_
_
1 0 0
0 1 0
0 0 2
_
_
.
Dnition
Le rayon spectral de A est
j() = :ar[`[, ` C, ` a|cnr jrojrc dc .
Proposition 3 Soit /

(R), alors pour toute norme matricielle, (induite


ou non) on a:
j() _ [[[[
Dmonstration
Soit ` une valeur propre de A telle que : j() = [`[.
j R

non nul, tel que j = `j.


5
j vecteur non nul == R

tel que j
T
,= 0.
== j()[[j
T
[[ = [`[.[[j
T
[[ = [[(`j)
T
[[
= [[(j)
T
[[ = [[(j
T
)[[
_ [[[[.[[j
T
[[
== j() _ [[[[.
On montre aussi le rsultat suivant:
Proposition 4 \c 0 et /

(R), il existe au moins une norme ma-


tricielle subordonne telle que:
[[[[ _ j() + c.
On montre aussi la proposition suivante:
Proposition 5 Soit = (a
I,
)
1I,
/

(R), alors on a
[[[[
2
= sup
jjrjj2=1
jj.rjj2
jjrjj2
=
_
j(
T
) =
_
j(
T
).
Thorme
On dsigne par 1

la matrice identit de /

(R).
1) Soit [[.[[ une norme matricielle induite sur /

(R).
Si /

(R) est telle que [[[[ < 1, alors


la matrice 1

+ est inversible et
[[(1

+ ) 1[[ _
1
1jj.jj
.
2) Si 1

+ est singulire, alors [[[[ _ 1, pour toute norme matricielle sur


/

(R).
Dmonstration:
1)(1

+ )r = 0
== [[r[[ = [[r[[ _ [[[[.[[r[[
Comme [[[[ < 1, on a r = 0.
== 1

+ est inversible et on a
Comme (1

+ )
1
= 1

(1

+ )
1
o: a [[(1

+ )
1
[[ _ 1 +[[[[.[[(1

+ ) 1[[
== (1 [[[[).[[(1

+ )
1
[[ _ 1
== [[(1

+ )
1
[[ _
1
1jj.jj
.
2) 1

+ singulire== det(1

+ ) = 0
== ` = 1 est une valeur propre de
== 1 _ j() _ [[[[.
1.1.4 Produit scalaire et matrices dnies positives
Dnition Si 1 est un espace vectoriel sur K = R ou C, un produit scalaire
sur 1 est une application de
1 1 K
(r, j) < r, j
qui vrie les proprits suivantes:
(i) < r, r _ 0, , \r 1 et < r, r = 0 == r = 0.
(ii)< c(r + j), . = c < r, . +c < j, . , \c K, \r, j, . 1
6
(iii)< j, r = < r, j , \r, j 1.
Exemple: K = R, 1 = R

,pour r, j 1,
r
T
= (r
1
, ..., r

) et j
T
= (j
1
, ..., j

),
Lapplication (r, j) < r, j = j
T
r =

I=1
r
I
j
I
dnit un produit scalaire sur R

.
Dnition
Une matrice /

(R) est dnie positive si


(r, r) 0, \r R

.
Si lingalit stricte est remplace par une ingalit au sens large (_ 0), on
dit que la matrice est semi-dnie positive.
Dnition: les mineurs principaux dominants de = (a
I
)
1I,
sont les dterminants des sous-matrices de A:
(a
I
)
1I,|
, (1 _ / _ ).
Proposition 6 Soit /

(R) une matrice symtrique.


est d c)i:ic jo:itic si et seulement si lune des proprits suivantes est
satifaite:
(1) (r, r) 0, \r R

, r ,= 0.
(2) Les valeurs propres de sont 0.
(3) Les mineurs principaux dominants de sont tous 0.
1.2 Mthodes directes
Une mthode directe de rsolution dun systme linaire est une mthode qui
calcule r, la solution exacte du systme, aprs un nombre ni doprations
lmentaires (+, , r, ,).
1.2.1 Mthode de Gauss et factorisation LU
Mthode de Gauss Soit /

(R) une matrice inversible et / R

.
pb: trouver r R

, r = /.
Mthode de Gauss:
On pose
(1)
= et /
(1)
= /.
On construit une suite de matrices et de vecteurs:

(1)

(2)
..
(|)
...
()
.
/
(1)
/
(2)
.... /
(|)
.. /
()
.
Les systmes linaires obtenus sont quivalents:
r = / ==
(|)
r = /
(|)
==
()
r = /
()
,
La matrice
()
est triangulaire suprieure.
Si aucun pivot nest nul:
Passage de
(|)

(|+1)
, :i a
(|)
|,|
,= 0 :
- Pour i _ / et pour , = 1, 2, ...,
a
(|+1)
I,
= a
(|)
I,
et /
(|+1)
I
= /
(|)
I
.
7
- Pour i /:
a
(|+1)
I,
= a
(|)
I,

o
(k)
i;k
o
(k)
k;k
a
(|)
|,
,
/
(|+1)
I
= /
(|)
I

o
(k)
i;k
o
(k)
k;k
/
(|)
|
,
pour i = ,, ..., .

(|)
=
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
a
(1)
1;1
a
(1)
1;2
a
(1)
1;N
0 a
(2)
2;2
a
(2)
2;3
a
(2)
2;N
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 0 a
(|)
k;k
a
(|)
k;N
.
.
.
.
.
. a
(|)
k+1;k
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 a
(|)
N;k
a
(|)
N;N
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
, 1 _ / _ .
La matrice
()
est alors sous la forme:

()
=
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
a
(1)
1;1
a
(1)
1;2
a
(1)
1;N
0 a
(2)
2;2
a
(2)
2;3
a
(2)
2;N
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. .
.
.
. a
(|)
k;k
a
(|)
k;N
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 a
()
N;N
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
La rsolution du systme linaire
()
r = /
()
se fait en remontant et on
calcule successivement: r

, r
1
, . . . . . . .et r
1
:
_

_
r

=
b
(N)
N
o
(N)
N;N
,
r
I
=
1
o
(N)
i;i
(/
()
I

=I+1
a
()
I,
r

), i = 1, ..., 1.
Remarques: dct() = dct(
(|)
) = det(
()
).
Cas dun pivot nul:
Si ltape /, le pivot a
|,|
= 0, on peut permuter la ligne / avec une ligne
i
0
, telle que i
0
/ et a
I0,|
,= 0 et on continue la mthode de Gauss.
Cot de la mthode de Gauss pour rsoudre le systme linaire r = /
1) Pour llimination:
()
Nombre dadditions:
( 1)
2
+ ( 2)
2
+ .... + 1
2
=
(1)(21)
6
;
Nombre de multiplications:
(1)(21)
6
;
Nombre de divisions: ( 1) + ( 2) + .... + 1 =
(1)
2
.
2) Pour passer de / /
()
:
8
( 1) + ( 2) + .... + 1 =
(1)
2
additio::
et
(1)
2
:n|tij|icatio::.
3) Pour la remonte:
(1)
2
additio:: et
(1)
2
:n|tij|icatio:: et divisions.
Au total, lordre du nombre doprations lmentaires ncessaires la mth-
ode de Gauss est:

3
3
additions,

3
3
multiplications et

2
2
divisions.
Comme le calcul direct dun dterminant ncessite:
! 1 additions et ( 1)! multplications,
la mthode de cramer va ncessiter
( + 1)! additions, ( + 2)! multiplications et divisions
Par exemple pour = 10 :
La mthode de Gauss ncessite : 700 oprations,
et la mthode de Cramer: 500 000 000 oprations!
(11! + 12! = 39 916 800 + 479 001 600 = 5.1892 10
8
).
Stratgies de pivot Plusieurs stratgies de choix de i
0
sont possibles:
- Stratgie du pivot partiel:
On peut choisir i
0
tel que:
[a
I0,|
[ = :ar[a
I,|
[, i = /, . . . .
- Stratgie du pivot total:
On choisit i
0
, ,
0
tels que:
[a
I0
,
0
[ = :ar[a
I,
[, i, , = /, . . . ,
et on permute
_
_
_
la ligne / avec la ligne i
0
ct
la colonne / avec la colonne ,
0
Factorisation LU Supposons que dans llimination de Gauss on nutilise
aucune stratgie de pivotage et que tous les pivots a
(|)
|,|
,= 0.
Dans ce cas le passage de
(|)

(|+1)
(1 _ / _ 1) revient multiplier
gauche la matrice
(|)
par la matrice :
1
(|)
=
_
_
_
_
_
_
_
_
_
_
_
_
_
_
1 0 0
0 1 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 0 1 0
.
.
.
.
.
. |
|+1,|
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 0
.
.
.
.
.
.
0 0 |
N;k
0 1
_
_
_
_
_
_
_
_
_
_
_
_
_
_
avec |
I,|
=
o
(k)
i;k
o
(k)
k;k
, pour / + 1 _ i _ .
La matrice
()
, qui est triangulaire suprieure, est alors gale
9

()
= '
avec ' = 1
(1)
1
(2)
...1
(1)
' est le produit de matrices triangulaires infrieures, donc ' est aussi
triangulaire infrieure, on a det(') =
1

I=1
det(1
(I)
) = 1 et linverse de ' est
aussi triangulaire infrieure.
En posant l =
()
et 1 = '
1
, on a = 1l.
(1
(|)
)
1
=
_
_
_
_
_
_
_
_
_
_
_
_
_
_
1 0 0
0 1 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 0 1
.
.
. 0
.
.
.
.
.
. |
|+1,|
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 0
.
.
. 0
0 0 |
N;k
0 ..0 1
_
_
_
_
_
_
_
_
_
_
_
_
_
_
1 = '
1
= (1
(1)
)
1
(1
(2)
)
1
.....(1
(1)
)
1
1 =
_
_
_
_
_
_
_
_
_
_
_
_
_
_
1 0 0
|
2,1
1 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 1 0
.
.
.
.
.
. |
|+1,|
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
|
N;1
|
N;k
|
N;N1
1
_
_
_
_
_
_
_
_
_
_
_
_
_
_
Exemple:
=
_
_
5 2 1
5 6 2
4 2 1
_
_
=
(1)
1
(1)
=
_
_
1 0 0
1 1 0
4
5
0 1
_
_
;
(2)
=
_
_
5 2 1
0 8 1
0
18
5
9
5
_
_
1
(2)
=
_
_
1 0 0
0 1 0
0
9
20
1
_
_
;
(3)
=
_
_
5 2 1
0 8 1
0 0
9
4
_
_
= l
1 =
_
_
1 0 0
1 1 0
4
5
9
20
1
_
_
ct = 1l
Thorme
Soit = (a
I,
)
1I,
une matrice carre dordre telle que les sous-
matrices de :
10
_
_
_
_
_
_
a
11
a
1|
.
.
.
.
.
.
.
.
.
.
.
.
a
|1
a
||
_
_
_
_
_
_
, 1 _ / _
soient inversibles,
alors il existe une matrice triangulaire infrieure 1 = (|
II
)
1I
, avec
|
II
= 1 (1 _ i _ ), et une matrice triangulaire suprieure l telles que =
1l.
De plus cette factorisation est unique.
Dmonstration
Il sut de montrer quaucun pivot nest nul.
1.2.2 Matrice symtrique dnie positive: Mthode de Cholesky
Dans le cas o la matrice est symtrique dnie positive, la condition du
thorme prcdent est satisfaite et elle admet une factorisation = 1l, avec
1 =
_
_
_
_
_
1 0 0
|
2,1
.
.
.
.
.
.
.
.
.
0
|
,1
|
,1
1
_
_
_
_
_
et l =
_
_
_
_
_
_
n
1;1
n
1;N
0
.
.
.
.
.
.
.
.
.
.
.
.
0 0 n
N;N
_
_
_
_
_
_
Comme la matrice est dnie positive, on a
|

I=1
n
I,I
=
|
0, / = 1, 2, ..., ,
(les
|
sont les mineurs principaux dominants de )
et n
I,I
0, pour i = 1, 2, ..., .
Si on pose 1 =
_
_
_
_
_
_
n
1,1
0 0
0
.
.
.
.
.
.
.
.
.
0
0 0
_
n
,
_
_
_
_
_
Cette matrice est inversible et son inverse est
1
1
=
_
_
_
_
_
_
1
p
u1;1
0 0
0
.
.
.
.
.
.
.
.
.
0
0 0
1
p
u
N;N
_
_
_
_
_
_
= 1l = (11)(1
1
l) = 11
T
La matrice 1 = 11 est triangulaire infrieure et 1
T
= 1
1
l est triangu-
laire suprieure et elles sont toutes les deux inversibles.
Comme est symtrique, on a
T
= .
== 11
T
= 11
T
== 1
1
1 = 1
T
(1
T
)
1
De plus 1
1
1 est une matrice triangulaire infrieure et 1
T
(1
T
)
1
est une
matrice triangulaire suprieure, ce qui implique que
11
1
1
1 = 1
T
(1
T
)
1
= :atricc diaqo:a|c
Or les lments diagonaux: (1
1
1)
I,I
= 1
== 1
1
1 = 1
T
(1
T
)
1
= 1

== 1 = 1 et = 11
T
.
Comme 1 = 11 = (r
I,
) == r
I,I
=
_
n
I,I
0, pour 1 _ i _ .
Unicit de 1:
Supposons que = 11
T
= 11
T
, avec 1 = (r
I,
) et 1 = (/
I,
) des matrices
triangulaires infrieures avec des lments diagonaux r
II
0 et /
I,I
0, pour
1 _ i _ .
11
T
= 11
T
== 1
T
(1
T
)
1
= 1
1
1
== 1
T
(1
T
)
1
= 1
1
1 = 1 matrice diagonale,
et
:i;i
bi;i
=
bi;i
:i;i
== r
2
I,I
= /
2
I,I
, 1 _ i _ == r
I,I
= /
I,I
, 1 _ i _ .
et alors d
II
=
bi;i
:i;i
= 1, 1 _ i _ et 1 = 1.
On a donc montr le thorme suivant:
Thorme
Une matrice est symtrique dnie positive :i ct :cn|c:c:t :i il existe
une matrice triangulaire infrieure inversible 1 telle que: = 11
T
.
Si on impose que les lments diagonaux de 1, r
II
0, 1 _ i _ , cette
dcomposition est unique.
Calcul eectif de la matrice 1:
= 11
T
, 1 = (r
I,
) == a
I,
=
I

|=1
r
I,|
r
,|
pour 1 _ i, , _
i=1 on dtermine la 1
t:t
colonne de 1:
, = 1 : a
1,1
= r
2
1,1
== r
1,1
=
_
a
1,1
;
, = 2 : a
1,2
= r
1,1
r
2,1
== r
2,1
=
o1;2
:1;1
;
.
.
.
, = : a
1,
= r
1,1
r
,1
== r
,1
=
o
1;N
:1;1
;
De proche en proche, on dtermine la i
tnt
colonne de 1 (i=2,..,N):
i
, = i : a
I,I
= r
2
I,1
+ ... + r
2
I,I
== r
I,I
=
_
a
I,I
(r
2
I,1
+ ... + r
2
I,I1
);
, = i + 1 : a
I,I+1
= r
I,1
r
I+1,1
+ .. + r
I,I
r
I+1,I
== r
I+1,I
=
oi;i+1(:i;1:i+1;1+..+:i;i1:i+1;i1)
:i;i
;
.
.
.
, = : a
I,
= r
I,1
r
I,
+ .. + r
I,I
r
,I
== r
,I
=
o
i;N
(:i;1:
N;1
+..+:i;i1:
N;i1
)
:i;i
.
Applications de la factorisation de Cholesky:
1) Rsoudre le systme linaire r = / se ramne rsoudre successivement
les 2 systmes linaires matrices triangulaires:
r = / ==
_
1j = /
1
T
r = j
12
2) Calcul du dterminant de : dct() = (

I=1
r
I,I
)
2
.
Lordre du nombre doprations pour rsoudre un systme linaire, par la
mthode de Cholesky:

3
6
additions;

3
6
multiplications;

2
6
divisions;
extractions de racines carres.
Exemple:
=
_
_
1
1
2
1
3
1
2
1
3
1
4
1
3
1
4
1
5
_
_
; la factorisation de Cholesky de A:
=
_
_
_
1 0 0
1
2
p
3
6
0
1
3
p
3
6
p
5
30
_
_
_
_
_
_
1
1
2
1
3
0
p
3
6
p
3
6
0 0
p
5
30
_
_
_ = 11
T
.
1) d ct() = (
p
3
6
p
5
30
)
2
=
1
2160
.
2) Pour rsoudre r = /; avec / =
_
_
1
1
1
_
_
,
1j = / == j
1
= 1, j
2
=
_
3 et j
3
=
_
5
1
T
r = j == r =
_
_
3
24
30
_
_
.
1.3 Conditionnement dun systme linaire
Soit ||une norme matricielle subordonne une norme vectorielle.
Dnition Soit /
n
(K) une matrice inversible.
On dnit le nombre
co:d() = ||
_
_

1
_
_
appel le conditionnement de la matrice , relativement la norme ma-
tricielle considre.
Thorme:
Soit /
n
(K) une matrice inversible et r un vecteur tel que:
r = /,
1) Soit r + cr la solution de
(r + cr) = / + c/
On suppose / ,= 0,alors on a :
kork
krk
_ co:d()
kobk
kbk
(1)
et cest la meilleure possible (cest dire: / ,= 0 et c/ ,= 0
tels que (1) devienne galit).
2) Soit r + r solution de
13
( + )(r + r) = /
On suppose / ,= 0,alors on a :
krk
kr+rk
_ co:d()
k.k
k.k
(2)
et cest la meilleure possible
(cest dire: / ,= 0 et c/ ,= 0 tels que (2) devienne galit).
Dmonstration:
1) r = / == |/| = |r| _ || . |r| == |r| _
kbk
k.k
et (r + cr) = / + c/ == (cr) = c/
Donc
kork
krk
=
|.
1
ob|
krk
_
|.
1
|.kobk
krk
_
_
_

1
_
_
. |c/| .
k.k
kbk
==
kork
krk
_ co:d()
kobk
kbk
.
Si on choisit
un vecteur j tel que: |j| = || . |j|
et
c/ tel que:
_
_

1
c/
_
_
=
_
_

1
_
_
. |c/| ,
on a lgalit dans (1).
2) ( + )(r + r) = /
== r =
1
(r + r)
== |r| _
_
_

1
_
_
. || . |r + r|
==
krk
kr+rk
=
|.
1
.(r+r)|
kr+rk
_
_
_

1
_
_
. || = co:d()
k.k
k.k
.
Si on choisit;
un vecteur j ,= 0, tel que:
_
_

1
j
_
_
=
_
_

1
_
_
. |j|
et
un scalaire , ,= 0,
et on prend alors:
/ = ( + ,1)j, = ,1 et r = ,
1
j,
== r + r = j, r = / et ( + )(r + r) = ( + ,1)j = /.
== |r| _ [,[.
_
_

1
j
_
_
= [,[.
_
_

1
_
_
. |j| = || .
_
_

1
_
_
. |r + r| .
De plus si , nest pas une valeur propre de , alors / ,= 0.
Proprits Soit /

(R)
1) Si /

(R), alors || <


1
k.
1
k
==
krk
krk
_ co:d().
k.k
k.k
.
1
1k.
1
k.k.k
.
2) (i) co:d() _ 1,
(ii) co:d() = co:d(
1
),
(iii) co:d(c) = co:d(), \c scalaire ,= 0.
3) On dsigne par co:d
2
()
le conditionnement de la matrice ,relatif la norme euclidienne.
(i) co:d
2
() =
_

N
(.)

1
(.)
,
o n j
1
() et j

() sont respectivement la plus petite et la plus grande des


valeurs propres de la matrice
T
.
(on rappelle que inversible==
T
symtrique dnie positive)
(ii) Si est une matrice normale (
T
=
T
),
14
co:d
2
() =
max
i
jXi(.)j
min
i
jXi(.)j
,
o les `
I
() sont les valeurs propres de la matrice .
(iii) Si est unitaire ou orthogonale, co:d
2
() = 1.
(iv) l orthogonale (l
T
l = ll
T
= 1

)
== co:d
2
() = co:d
2
(l) = co:d
2
(l) = co:d
2
(l
T
l).
1.4 Mthodes itratives
On va voir un type de mthodes itratives de rsolution du systme linaire
r = / sous la forme:
(3)
_
r
(0)
vecteur arbitraire,
r
(|+1)
= 1r
(|)
+ c, / _ 0
lorsque
r = / == r = 1r + c,
la matrice 1 et le vecteur c sont en fonction de et /.
Dnition
La mthode itrative (3) est convergente si
lim
|!+1
r
(|)
= r, \r
(0)
.
Remarque:
Si on Pose c
(|)
= r
(|)
r , pour / = 0, 1, ...
Comme r = 1r + c et r
(|+1)
= 1r
(|)
+ c,on a
c
(|)
= 1r
(|1)
1r = 1c
(|1)
= ... = 1
|
c
(0)
lim
|!+1
r
(|)
= r == lim
|!+1
c
(|)
= 0 == lim
|!+1
1
|
c
(0)
= 0
Donc
La mthode itrative (3) est convergente si
lim
|!+1
1
|
= 0, \
ce qui quivaut
lim
|!+1
[[1
|
[[ = 0, \
pour toute norme vectorielle [[.[[.
1.4.1 Convergence des mthodes itratives
Thorme
Les propositions suivantes sont quivalentes:
(1)la mthode itrative (3) est convergente;
(2)j(1) < 1;
(3)[[1[[ < 1 pour au moins une norme matricielle subordonne [[.[[.
Dmonstration
(1) == (2)
Supposons j(1) _ 1, j(1) = [`[, donc un vecteur j :
j ,= 0, 1j = `j et [`[ _ 1
== \/ _ 0, [[1
|
j[[ = [[`
|
j[[ = [`
|
[.[[j[[ = [`[
|
.[[j[[ _ [[j[[
15
ce qui contredit lim
|!+1
1
|
j = 0.
(2) == (3)
On utilise la proposition 4:\c 0 , il existe au moins une norme matricielle
subordonne telle que:
[[1[[ _ j(1) + c.
(3) == (1)
Soit [[.[[ une norme matricielle subordonne.
On utilise alors la proprit:
\/ _ 0, \, [[1
|
[[ _ [[1
|
[[.[[[[ _ [[1[[
|
.[[[[
[[1[[ < 1 == lim
|!+1
[[1[[
|
= 0 == lim
|!+1
[[1
|
[[ = 0.
1.4.2 Mthode de Jacobi, de Gauss-Seidel et de relaxation
Ces mthodes sont des cas particuliers de la mthode suivante:
= ' avec ' i:cr:i/|c et a::c. :i:j|c. On aurait alors:
r = / == 'r = r + /
== r = '
1
r + '
1
/
== r = 1r + c,
avec 1 = '
1
et c = '
1
/.
Mthode de Jacobi: En posant = 1 (1 + 1),
' = 1 est la diagonale de et = 1 + 1.
r = / == 1r = (1 + 1)r + /.
On suppose que 1 est inversible, cest dire a
II
,= 0, 1 _ i _ .
La matrice
J = 1
1
(1 + 1) = 1

1
1

est appele la matrice de Jacobi.


_
r
(0)
donn,
1r
(|+1)
= (1 + 1)r
(|)
+ /, / _ 0
A chaque tape, on calcule les composantes r
(|+1)
1
, .., r
(|+1)

du vecteur r
(|+1)
:
_

_
a
1,1
r
(|+1)
1
= a
1,2
r
(|)
2
... a
1,
r
(|)

+ /
1
a
2,2
r
(|+1)
2
= a
21
r
(|)
1
a
2,3
r
(|)
3
... a
2,
r
(|)

+ /
2
.
.
.
a
,
r
(|+1)

= a
(|)
,1
r
(|)
1
... a
(|)
,1
r
(|)
1
+ /

Mthode de Gauss-Seidel ' est la partie triangulaire infrieure de : ' =


1 1 et = 1.
On pourrait amliorer la mthode prcdente en utilisant les quantits dj
calcules, on calcule successivent les composantes
r
(|+1)
1
, .., r
(|+1)

du vecteur r
(|+1)
:
16
_

_
a
1,1
r
(|+1)
1
= a
1,2
r
(|)
2
... a
1,
r
(|)

+ /
1
a
2,2
r
(|+1)
2
= a
21
r
(|+1)
1
a
2,3
r
(|)
3
... a
2,
r
(|)

+ /
2
.
.
.
a
,
r
(|+1)

= a
,1
r
(|+1)
1
. .. a
,1
r
(|+1)
1
+ /

ce qui revient crire:


1r
(|+1)
= 1r
(|+1)
+ 1r
(|)
+ /
ou encore
(1 1)r
(|+1)
= 1r
(|)
+ /

r
(|+1)
= (1 1)
1
1r
(|)
+ (1 1)
1
/
/
1
= (1 1)
1
1 est la matrice de Gauss-Seidel.
Elle est inversible si a
II
,= 0, 1 _ i _ .
Mthode de relaxation Pour . ,= 0, en posant ' =
1
.
1 1, =
(
1.
.
)1 + 1, on a
= ' =
1
.
1 1 (
1.
.
)1 + 1
_

_
a
1,1
.r
(|+1)
1
= a
1,1
r
(|)
1
.a
1,1
r
(|)
1
+ a
1,2
r
(|)
2
+ ... + a
1,
r
(|)

+ /
1

a
2,2
.r
(|+1)
2
= a
22
r
(|)
2
.a
2,1
r
(|+1)
1
+ a
2,2
r
(|)
2
... + a
2,
r
(|)

+ /
2

.
.
.
a
,
.r
(|+1)

= a
,
r
(|)

.a
,1
r
(|+1)
1
+ .. + a
,1
r
(|+1)
1
+ a
,
r
(|)

+ /

ce qui revient crire:

1
.
1 1r
(|+1)
= (
1.
.
)1 + 1r
(|)
+ /
La matrice de relaxation est
/
.
=
1
.
1 1
1
(
1.
.
)1 + 1 = (1 .1)
1
(1 .)1 + .1
Exemples: Etude de la convergence des mthodes de Jacobi et de Gauss-
Seidel dans le cas o la matrice du systme linaire est:
1)
1
=
_
_
4 1 0
1 4 1
0 1 4
_
_
;
Les deux mthodes convergent.
2)
2
=
_
_
2 1 1
1 2 1
1 1 2
_
_
;
la mthode de Jacobi diverge et La mthode de Gauss-Seidel converge.
3) =
_
_
1 2 2
1 1 1
2 2 1
_
_
.
la mthode de Jacobi converge et la mthode de Gauss-Seidel diverge.
1.4.3 Convergence des mthodes de Jacobi, de Gauss-Seidel et re-
laxation
Thorme
Soit une matrice symtrique dnie positve.
17
On suppose que
= ' , avec ' inversible.
Si la matrice symtrique
'
T
+
est dnie positive,
alors
j('
1
) < 1.
Dmonstration
1) '
T
+ est symtrique:
= ' == '
T
+ =
T
+
T
+ = +
T
+ = ' +
T
.
2) Comme A est symtrique dnie positive, lapplication
R

[[[[ = (
T
)
1
2
dnit une norme sur R

.
On considre alors la norme matricielle [[.[[ induite par cette norme vecto-
rielle.
[['
1
[[ = [[1

'
1
[[ = sup
jjujj=1
[[ '
1
[[
Soit un vecteur tel que [[[[ = 1.On pose n = '
1
,
[[ n[[
2
= ( n)
T
( n) = 1
T
n n
T
+ n
T
n
= 1 n
T
'
T
n n
T
'n + n
T
n
= 1 n
T
('
T
+ )n.
,= 0 == n = '
1
,= 0 == n
T
('
T
+ )n 0
Donc si la matrice symtrique '
T
+ est dnie positive, on a
[[ n[[
2
= 1 n
T
('
T
+ )n < 1
Exemple:
=
_
_
_
_
_
_
2 1 0 0
1
.
.
.
.
.
. 0
0
.
.
.
.
.
. 1
0 0 1 2
_
_
_
_
_
_
1) Pour tout n R

,
n
T
n = n
2
1
+ n
2

I=2
(n
I
n
I1
)
2
== la matrice symtrique est d c)i:ic positive .
2) Pour la mthode de Jacobi:
' = 1 et = 1 + 1:
= ' est symtrique dnie positive, car
n
T
('
T
+ )n = n
2
1
+ n
2

I=2
(n
I
+ n
I1
)
2
0, si n ,= 0.
'
T
+ est dnie positive== j('
1
) < 1.
Proposition 7 (CS) Soit une matrice symtrique dnie positive.
18
0 < . < 2 ==la mthode de relaxation converge.
Dmonstration
On applique le rsultat prcdent.
On a = '
avec ' =
1
.
1 1 ct = (
1.
.
)1 + 1
'
T
+ =
1
.
1 1
T
+ (
1.
.
)1 + 1
=
1
.
1 + (
1.
.
)1
= (
2.
.
)1
0 < . < 2 ==
2.
.
0
== (
2.
.
)1 est dnie positive.
Proposition 8 Soit une matrice, alors
pour tout . ,= 0, j(/
.
) _ [. 1[.
Dmonstration

I=1
`
I
(/
.
) = d ct(/
.
) =
J t|(
1!
!
1+J)
J t|(
1
!
1J)
= (1 .)

== j(/
.
) _ [

I=1
`
I
(/
.
)[
1
N
= [1 .[.
Corollaire
Si est une matrice symtrique dnie positive,
alors
0 < . < 2 ==la mthode de relaxation converge.
1.4.4 Autres mthodes itratives:
Mthode du gradient
_
r
(0)
arbitraire
r
(|+1)
= r
(|)
c(r
(|)
/), / _ 0
o c est une constante xe.
Si on pose r
(|)
= r
(|)
/, / _ 0 on a
r
(|+1)
= r
(|)
c(r
(|)
/)
= r
(|)
cr
(|)
== r
(|+1)
= r
(|)
cr
(|)
= (1 c)r
(|)
.
Une condition ncessaire et susante
de convergence est:
j(1 c) < 1.
Proposition 9 Si la matrice A est symtrique dnie positive alors la mthode
du gradient pas xe converge si et seulement si
0 < c <
2
Xn
Avec `
n
la plus grande valeur propre de .
De plus c =
2
X1+Xn
est une valeur optimale (1 c a le plus petit rayon
spectral)
19
Mthode du gradient pas optimal
_
r
(0)
arbitraire
r
(|+1)
= r
(|)
c
|
(r
(|)
/), / _ 0
o c
|
est choisi tel que:
r
(|+1)
l r
(|)
avec r
(|)
= r
(|)
/, / _ 0.
Donc r
(|+1)
= r
(|)
c
|
.r
(|)
.
r
(|+1)
l r
(|)
==< r
(|)
, r
(|)
c
|
.r
(|)
= 0
== c
|
=
jj:
(k)
jj
2
2
<:
(k)
,.:
(k)
,
.
Lalgorithme est:
(0) / = 0
r
(0)
arbitraire
(1) calcul de r
(|)
= r
(|)
/
(2) Si r
(|)
= 0, cest termin.
(3) Si r
(|)
,= 0,on calcule:
c
|
=
jj:
(k)
jj
2
2
<:
(k)
,.:
(k)
,
et
r
(|+1)
= r
(|)
c
|
.r
(|)
.
(3) / := / + 1 et aller (1).
On montre le rsultat suivant:
Proposition
Si est une matrice symtrique dnie positive, alors la mthode du gradient
pas optimal converge.
Exemples:
=
_
2 1
1 3
_
et / =
_
1
0
_
La solution de r = / est r =
_
3
5
1
5
_
Les valeurs propres de
=
_
2 1
1 3
_
sont
`
1
=
5
2

1
2
_
5 = 1. 382 0
et
`
2
=
1
2
_
5 +
5
2
= 3.618
Donc est symtrique dnie positive.
On choisit r
(0)
=
_
1
1
2
_
et on calcule le premier itr pour:
1) la mthode de Jacobi:
r
(1)
=
_
1
4
1
3
_
2) la mthode de Gauss-Seidel:
r
(1)
=
_
1
4
1
12
_
3) la mthode du gradient pas xe
20
r
(0)
=
_
2 1
1 3
__
1
1
2
_

_
1
0
_
=
_
3
2
5
2
_
Si on choisit c tel que
0 < c <
2
X2
=
2
3.618
= 0.552 79,
c =
2
X2+X1
=
2
5
la mthode converge.
Si on prend c =
1
2
:
r
(1)
=
_
1
1
2
_

1
2
_
3
2
5
2
_
=
_
1
4

3
4
_
Si on prend c =
2
5
r
(1)
=
_
1
1
2
_

2
5
_
3
2
5
2
_
=
_
2
5

1
2
_
4) la mthode du gradient pas optimal:
r
(0)
=
_
3
2
5
2
_
[[r
(0)
[[
2
2
=
_
3
2
5
2
_
_
3
2
5
2
_
=
17
2
_
3
2
5
2
_
_
2 1
1 3
__
3
2
5
2
_
=
123
4
`
0
=
17
2
4
124
=
17
62
r
(1)
=
_
1
1
2
_

17
62
_
3
2
5
2
_
=
_
73
124

23
124
_
21