Vous êtes sur la page 1sur 52

Université Chouaïb Doukkali

Faculté des Sciences d'El Jadida


Département de Mathématiques

Analyse Numérique
SMI
Mohammed Benzakour Amine

Année universitaire: 2022-2023


Table des matières

1 Notions sur les erreurs 4


1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Sources d'erreurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Dénitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4 Notions de conditionnement et stabilité . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4.1 Conditionnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4.2 Stabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5 Arithmétique ottante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.5.1 Représentation en virgule ottante . . . . . . . . . . . . . . . . . . . . . . . . 8
1.5.2 Opérations élémentaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2 Résolution numérique d'équations non linéaires 11


2.1 Méthode de dichotomie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2 Méthode de la fausse position . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.3 Théorème du point xe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.4 Méthode de Newton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.5 Méthode de la sécante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

3 Résolution numérique des systèmes linéaires 18


3.1 Méthodes directes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.1.1 Cas des systèmes triangulaires . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.1.2 Méthode de Gauss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.1.3 Factorisation LU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.1.4 Méthode de Cholesky . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.2 Normes matricielles et conditionnement . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.2.1 Généralités sur les normes matricielles . . . . . . . . . . . . . . . . . . . . . . 27
3.2.2 Conditionnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.3 Méthodes itératives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.3.1 Convergence d'une méthode itérative . . . . . . . . . . . . . . . . . . . . . . . 30
2 TABLE DES MATIÈRES

3.3.2 Méthode de Jacobi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31


3.3.3 Méthode de Gauss-Seidel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.3.4 Méthode de relaxation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4 Interpolation polynomiale 35
4.1 Interpolation de Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.2 Interpolation de Newton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.3 Choix des points d'interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

5 Dérivation et intégration numérique 42


5.1 Dérivation numérique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.1.1 Dérivée d'ordre 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.1.2 Dérivées d'ordre supérieur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.2 Extrapolation de Richardson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.3 Intégration numérique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
5.3.1 Méthode des rectangles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
5.3.2 Méthode des trapèzes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.3.3 Méthode de Simpson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


Chapitre 1

Notions sur les erreurs

1.1 Introduction
Un modèle mathématique est une représentation d'un phénomène réel (physique, biologique,
économique, social, etc.) sous une forme abstraite mathématique. Le processus de modélisation
mathématique permet d'analyser et de prévoir le phénomène réel, cela bien sûr si on maîtrise les outils
d'analyse et de calculs relatives aux modèles mathématiques développés. Cependant, une grande
majorité de ces modèles admettent des solutions exactes très diciles voire impossible à calculer.
C'est le cas plus précisément des modèles sous formes d'équations diérentielles ordinaires (EDO)
ou d'équations aux dérivées partielles (EDP). Il est donc nécessaire de recourir au calcul numérique
sur ordinateur, et par suite aux méthodes numériques. Hormis les techniques de discrétisation des
EDO et des EDP, la résolution numérique de telles équations fait appel souvent à d'autres méthodes
numériques comme les méthodes de résolution de systèmes linéaires, les méthodes d'intégration
numérique, les méthodes de résolution des équations non linéaires, etc. En général, les étapes à
suivre pour étudier un phénomène par le biais du calcul numérique sont :
• Modélisation du problème : Il s'agit de décrire le phénomène qu'on veut étudier par le
biais d'équations mathématiques. Dans le cas des phénomènes physiques, ça sera souvent des EDO
ou des EDP.
• Analyse mathématique du modèle : Cette étape consiste à étudier les propriétés mathé-
matiques du modèle qui en font un "bon" modèle : existence et unicité de la solution, régularité de
la solution, positivité de la solution (si la solution représente une grandeur physique qui ne peut être
que positive), etc.
• Approximation et analyse numérique : Comme on l'a déjà mentionné, on ne sait pas com-
ment trouver les solutions de la plupart des équations utilisées dans la modélisation, c'est pourquoi
on a recours aux méthodes numériques pour approcher ces solutions. L'analyse numérique consiste
à étudier ces solutions numériques et voir si vraiment elles approchent, dans un sens convenable à
préciser, les solutions exactes. On pourra remarquer aussi que les méthodes numériques transforment
le caractère continue des problèmes mathématiques en un caractère discret, puisqu'un ordinateur ne
peut traiter qu'un nombre ni d'inconnues et de données.
• Implémentation de la méthode sur ordinateur et validation : Les méthodes numériques
engendrent généralement un très grand nombre de calculs qui ne peuvent s'eectuer à la main,
l'implémentation informatique de ces méthodes est donc nécessaire pour obtenir les résultats voulus.
Des tests numériques spéciques sont aussi très recommandés pour pouvoir valider ces méthodes.
• Simulation numérique et interprétation des résultats : La méthode numérique étant
implémentée, il ne reste plus que simuler le phénomène étudié à condition d'avoir au préalable des

4
1.2. Sources d'erreurs 5

paramètres réels. L'interprétation des résultats numériques se fait par des chercheurs ou ingénieurs
spécialistes du phénomène étudié.
Il est à noter enn qu'il existe des méthodes numériques fournissant des résultats exactes, c'est
par exemple le cas des méthodes directes de résolution des systèmes linéaires (voir chapitre 3). Les
méthodes développées pour obtenir des solutions approchées peuvent aussi, dans certains cas très
restreints, fournir des résultats exactes.

1.2 Sources d'erreurs


Lorsqu'on réalise une simulation numérique, les résultats obtenus représentent la réalité avec une
marge d'erreur, parfois négligeable, parfois importante. Ces erreurs proviennent de plusieurs sources,
à savoir premièrement les erreurs relatives à la modélisation mathématique du problème. Les autres
erreurs proviennent de trois sources principales :
• Les erreurs sur les données : incluent par exemple les erreurs dues à l'imprécision des me-
sures expérimentales, ou des calculs utilisés pour l'estimation des paramètres. Le rôle du numéricien
n'est pas de les éviter mais d'étudier la manière dont elles se propagent au cours des calculs.
• Les erreurs de représentation des nombres sur machine : pour un ordinateur, il est
impossible de représenter de manière exacte des nombres dont l'écriture à virgule a un nombre
inni de chires tels que 10 3 ou π . La norme IEEE-754 impose l'utilisation de l'arrondi dans la
représentation binaire des nombres réels.
• Les erreurs d'approximation numérique : Ces erreurs sont liées à la méthode numérique
utilisée pour résoudre un problème donné. Un des objectifs principaux de ce cours et de l'analyse
numérique en général est d'étudier ces erreurs.

1.3 Dénitions
Définition 1.1
Soit x un nombre réel et x∗ une valeur approchée de x.
• On appelle erreur absolue la quantité ∆x = |x − x∗ |.
|x − x∗ | ∆x
• On appelle erreur relative la quantité Er = = .
|x| |x|

Remarque
L'erreur absolue est une mesure quantitative. L'erreur relative est une mesure qualitative, elle est
souvent exprimée en pourcentage (il sut pour cela de multiplier Er par 100).

Définition 1.2
Soit x un nombre réel et x∗ une valeur approchée de x.
• On appelle incertitude absolue tout réel positif, noté ∆x, vériant |x − x∗ | ≤ ∆x. On peut écrire
alors x = x∗ ± ∆x.
∆x
• On appelle incertitude relative la quantité δx = ∗ .
|x |

Remarques
• En pratique, la valeur exacte de x est rarement connue d'où l'impossibilité de calculer l'erreur
absolue ou relative. Cependant, l'estimation d'une incertitude absolue est généralement à la por-
tée.

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


6 Notions sur les erreurs

• Par abus de langage, on confondra parfois les notions d'incertitude absolue et d'erreur absolue
(la même notation ∆x a été utilisée pour les deux notions dans les deux dénitions précédentes).

Définition 1.3
On appelle chire signicatif d'un nombre approché s'écrivant sous la forme x∗ = a × 10d , où a
est un nombre décimale et d ∈ Z, tout chire de a diérent de zéro, et un zéro s'il se trouve entre
deux chires signicatifs. Dans le cas où a est un nombre avec virgule, les zéros placés à la n de
a seront aussi considérés comme signicatifs.

Remarque
Le cas des zéros placés à la n d'un nombre sans virgule n'est pas bien déni. En eet, on ne peut
connaître le nombre de chires signicatifs de x∗ = 3400 donné sous cette forme. Par contre, on
sait que 3, 4 × 103 a 2 chires signicatifs et que 3, 400 × 103 a 4 chires signicatifs.

Exemples
• 0, 0045 a deux chires signicatifs et 0, 00450 a trois chires signicatifs.
• 4, 2050 × 10−4 a 5 chires signicatifs.
• 0, 01 × 102 a un seul chire signicatif.

Définition 1.4
Soit x un nombre réel et x∗ une valeur approchée de x. Le chire signicatif correspondant à la
m-ième puissance de 10 de x∗ est dit exact si l'erreur absolue vérie ∆x ≤ 0, 5 × 10m .

Remarques
• Si un chire signicatif est exact, alors les chires signicatifs à sa gauche le sont aussi.
• Si un chire signicatif n'est pas exact, alors les chires signicatifs à sa droite ne le sont pas.
• Un chire signicatif exacte de x∗ ne coïncide pas toujours avec le chire correspondant dans
x.

Exemples
• Soit x = 27 et soit x∗ = 27, 007 une valeur approchée de x. On a donc ∆x = |27 − 27, 007| =
0, 7 × 10−2 < 0, 5 × 10−1 . Donc le chire des dixièmes (à savoir le premier 0) est un chire
signicatif exacte et on a en tout 3 chires signicatifs exactes.
• Si on adopte 3, 1416 comme approximation de π , on a : ∆x = |π − 3, 1416| ≈ 0, 73 × 10−5 <
0, 5 × 10−4 . Donc 6 est chire signicatif exacte, de même que tous les chires situés à sa gauche.

1.4 Notions de conditionnement et stabilité


Ces deux notions ont une importance majeure en analyse numérique, et plus précisément dans
l'étude de la propagation des erreurs. On se contentera ici de les introduire dans le cas spécique
d'une fonction numérique d'une variable réelle.

1.4.1 Conditionnement
Un problème est dit bien conditionné, si une faible variation dans les données engendre à son tour
une faible variation dans la solution du problème. De même, si un problème est mal conditionné,
alors la moindre erreur dans les données provoquera une erreur très conséquente dans les résultats.

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


1.4. Notions de conditionnement et stabilité 7

Soit x un nombre réel et x∗ une valeur approchée de x. Dans le cas d'une fonction réelle, on mesure
f (x) − f (x∗ )
cette sensibilité en étudiant les variations de la quantité en fonction de l'erreur relative
f (x)
x − x∗
sur x, i.e. , et cela lorsque |x − x∗ | est petit. Pour une fonction susamment régulière, on
x
peut voir que :
f (x) − f (x∗ ) x − x∗ xf 0 (x)
/ ≈
f (x) x f (x)
Exemples

Soit la fonction f (x) = x. Le conditionnement de la fonction f en x est :
xf 0 (x) 1
= .
f (x) 2

f (x) − f (x∗ )
Ceci veut dire que la quantité est environ la moitié de l'erreur relative sur x,
f (x)
lorsque |x − x∗ | est assez petit. On a donc un bon conditionnement dans ce cas.
• Considérons maintenant la fonction f (x) = a − x. Le conditionnement de la fonction f en x
est : 0
xf (x) x
= .
f (x) a−x
Dans ce cas, on aura un mauvais conditionnement si x est proche a.

1.4.2 Stabilité
La stabilité décrit la sensibilité d'une méthode aux petites perturbations (ou variations). Une
méthode est numériquement stable si une erreur, une fois générée, ne croît pas trop durant le calcul.
Exemple

Soit la fonction f (x) = 1 − 1 − x. Le conditionnement de la fonction f en x est :
xf 0 (x) x
= √  .
f (x) 2 x+ 1−x−1

Un simple calcul de limite montre que l'expression ci-dessus est proche de 1 lorsque x est
proche de 0. Cela veut dire qu'on a un bon conditionnement de f lorsque x est proche de 0.
En voulant évaluer la valeur de f (0, 0001) en utilisant 6 chires signicatifs exactes, on peut
procéder comme suit :
p
f (0, 0001) = 1, 00000 − 1, 00000 − 0, 000100000
p
= 1, 00000 − 0, 999900
= 1, 00000 − 0, 999950
= 0, 0000500000.
Maintenant, en procédant avec 3 chires signicatifs exactes, on obtient :
p
f (0, 0001) = 1, 00 −1, 00 − 0, 000100
p
= 1, 00 − 1, 00
= 1, 00 − 1, 00
= 0, 00.

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


8 Notions sur les erreurs

Même si le premier résultat peut être présenté en utilisant 3 chires signicatifs, les erreurs
d'arrondi conduisent à un résultat insatisfaisant. Ça peut paraître contradictoire puisque le condi-
tionnement de f est bon, mais en fait c'est l'approche utilisée pour le calcul qui est instable. Cela
est dû au fait que la fonction x 7−→ 1 − x représentant la dernière étape de l'algorithme de calcul
est mal conditionnée quand x est proche de 1 (Voir l'exemple précédent).
On peut remédier à ce problème en utilisant l'approximation au voisinage de 0 :


 
1
1− 1−x≈1− 1− x
2
1
=1−1+ x
2
1
= x.
2
Dans ce cas, même avec 3 chirés signicatifs, on obtiendra un résultat précis.

Remarques
• Si un problème est bien conditionné, alors il existe une méthode stable pour le résoudre.
• Si un problème est par contre mal conditionné, aucune méthode numérique ne pourra y remédier.
Il faudra (dans la mesure du possible) reformuler mathématiquement le problème, de tel façon
qu'il soit bien conditionné.

1.5 Arithmétique ottante


1.5.1 Représentation en virgule ottante
La virgule ottante est une approche pour représenter les nombres réels. Elle consiste à repré-
senter un nombre réel dans une base donnée par le biais de son signe, une mantisse et un exposant.
An de simplier l'exposé, c'est la base décimale qui sera utilisée dans cette section et on adoptera
la dénition suivante :

Définition 1.5
Soit x ∈ R. On note f l(x) sa représentation en virgule ottante décimal à n chires :
f l(x) = ±0, d1 d2 ...dn × 10l ,

où d1 6= 0, le nombre 0, d1 d2 ...dn est la mantisse et l ∈ Z est l'exposant. Le chire dn dépend du


procédé choisi pour éliminer les derniers chires, on adopte l'arrondi dans cette dénition.

Remarques
• La représentation en virgule ottante dans n'importe quelle base b peut être dénit similaire-
ment, i.e. :
f l(x) = ±0, d1 d2 ...dn × bl .
• Une représentation en virgule ottante à n chires est équivalente à xer le nombre de chires
signicatifs exactes (un nombre correctement arrondi ne possède que des chires signicatifs
exactes). Les deux approches engendrent les mêmes pertes de précision, cependant les calculs en
virgule ottante sont plus pratiques.

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


1.5. Arithmétique ottante 9

Exemples
En adoptant une représentation en virgule ottante à 3 chires, on a :
• f l(10/3) = 0, 333 × 101 .
• f l(0.0067) = 0, 670 × 10−2 .
• f l(1.676767) = 0, 168 × 101 .

1.5.2 Opérations élémentaires


Soient x et y, deux nombres réels. En arithmétique ottante, les opérations élémentaires sont
eectuées comme suit :
x + y → fl(fl(x) + fl(y))
x − y → fl(fl(x) − fl(y))
x ÷ y → fl(fl(x) ÷ fl(y))
x × y → fl(fl(x) × fl(y))
Exemples
• En adoptant une représentation en virgule ottante à 3 chires, on a :

10/3 × 3 → fl(fl(10/3) × fl(3))


= fl 0, 333 × 101 × 0, 300 × 101
 

= fl 0, 099900 × 102


= 0, 999 × 101

• Pour l'addition et la soustraction de deux nombres, on unie toujours les exposants en choisissant
le plus grand exposant avant de convertir en virgule ottante. L'exemple suivant décrit la démarche
à suivre (calcul en virgule ottante à quatre chires) :
10/3 − 1/100 → fl(fl(10/3) − fl(1/100))
= fl 0, 3333 × 101 − 0, 1000 × 10−1
 

= fl 0, 3333 × 101 − 0, 001000 × 101


 

= fl 0, 3323000 × 101


= 0, 3323 × 101

À cause de l'arrondi, les lois d'associativité et de distributivité peuvent ne pas être respectées
pour les opérations élémentaires.
Exemples
• Associativité de l'addition :
a + (b + c) = (a + b) + c.
Soient a = 0, 456 × 10−2 , b = 0, 123 × 100 et c = −0, 128 × 100 , alors
(a + b) + c = 0, 128 × 100 − 0, 128 × 100 = 0
a + (b + c) = 0, 456 × 10−2 − 0, 500 × 10−2 = −0, 440 × 10−3

• Distributivité de la multiplication par rapport à l'addition :

a × (b + c) = a × b + a × c.

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


10 Notions sur les erreurs

Soient a = 0, 200 × 101 , b = −0, 600 × 100 et c = 0, 602 × 100 , alors


a × (b + c) = 0, 200 × 101 × 0, 200 × 10−2 = 0, 400 × 10−2
 

a × b + a × c = −0, 120 × 101 + 0, 120 × 101 = 0

Un nombre d'opérations peut s'avérer dangereux à cause de l'arrondi. Par exemple la sommation
ou la soustraction de deux nombres de grandeurs très diérentes peut engendrer la perte de l'in-
formation venant du petit chire. L'opération f l(1) − f l(0, 0001) = 0, 100 × 101 eectué en virgule
ottante à 3 chires en est un exemple. Le résultat nal d'un calcul peut être aecté grandement
par cette perte de précision (voir l'exemple de la section 1.4.2).
Ci-dessous, on présente un autre exemple où le calcul en suivant une démarche naïve peut s'avérer
couteux en terme de précision.
Exemple
Soit la somme de termes positifs suivante :
n
X 1
Sn = 1 +
i2 +i
i=1

Le calcul analytique de Sn donne :


n n  
X 1 X 1 1
Sn = 1 + = 1 + −
i2 + i i i+1
i=1 i=1
1
=2− .
n+1
Le test eectué dans cet exemple consiste à calculer Sn directement :
1 1 1
Sf,n = 1 + + + ··· + 2 ,
2 6 n +n
puis à rebours :
1 1 1
Sb,n = + · · · + + + 1,
n2 +n 6 2
ensuite comparer les deux résultats obtenues pour diérentes valeurs de n avec la valeur exacte
de Sn obtenue par le calcul analytique.
Les résultats ci-dessous ont été obtenus en utilisant un code MATLAB et en simple précision
(format 32-bits).

n Sf,n Sb,n Valeur exacte


99 1, 9899999 1, 9900000 1, 99
999 1, 9990010 1, 9990000 1, 999
9999 1, 9997920 1, 9999000 1, 9999

Comme on peut le voir, Sb,n est plus précise que Sf,n . La méthode de calcul adopté pour Sf,n
est exactement celle à éviter. À un certain stade i = j < n de la sommation, Sf,j deviendra très
grande par rapport au (i + 1)-ième terme à ajouter, puisque la sommation s'eectue du plus grand
au plus petit, et donc on additionnera un très grand et un très petit nombre. Ce cas de gure ne
se produit pas pour Sb,n , car les termes qui s'ajoutent croissent au fur et à mesure que la somme
augmente.

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


Chapitre 2

Résolution numérique d'équations non

linéaires

Ce chapitre est consacré au problème de recherche des racines d'une fonction (ou zéros d'une
fonction) en utilisant des méthodes numériques.
Plus précisément, on présentera les approches numériques standards pour la résolution de l'équa-
tion f (x) = 0, où f est une fonction numérique à variable réelle. Les méthodes présentées dans ce
chapitre sont dites itératives, c'est à dire des méthodes qui consistent à construire une suite qui
converge vers la solution cherchée. Une méthode itérative qui fournit une suite qui converge vers
la solution du problème sera dite aussi convergente. Si plusieurs méthodes convergent, un critère
important pour comparer la qualité de ces méthodes est l'ordre de convergence : plus l'ordre de
convergence est élevé, plus la méthode convergera en moins d'itérations.

Définition 2.1
Soit (un )n∈N une suite qui converge vers une limite l ∈ R. On dit que la convergence de (un )n∈N
vers l est d'ordre r ≥ 1 s'il existe une suite (en )n∈N qui converge vers 0, vériant :
en+1
∀n ∈ N, |l − un | ≤ en et lim = C > 0,
n→∞ ern

où r et C sont des réels strictement positifs. La convergence est dite linéaire si r = 1 et quadratique
si r = 2.

2.1 Méthode de dichotomie


Si f est une fonction continue sur l'intervalle [a, b] et si f (a)f (b) < 0, alors le théorème des
valeurs intermédiaires arme que f s'annule au moins une fois sur l'intervalle ]a, b[.
La méthode de dichotomie, aussi appelé méthode de bissection, exploite ce résultat de la manière
suivante. Si f est une fonction continue sur [a, b] et si f (a)f (b) < 0, on commence par calculer
a+b
c= , puis on vérie laquelle des deux relations suivantes est vériée :
2
   
a+b a+b
f (a)f <0 ou f f (b) < 0
2 2
 
a+b
Le premier cas assure l'existence d'un zéro de la fonction f dans l'intervalle a, , le second
2

11
12 Résolution numérique d'équations non linéaires
 
a+b
dans l'intervalle , b . Nous avons déterminé ainsi un intervalle de longueur deux fois moindre
2
contenant au moins l'une des racines de f . En itérant le test, nous obtenons une suite qui converge
vers un zéro de f . L'algorithme suivant décrit ce processus :
Algorithme (Algorithme de dichotomie)
On construit trois suites (an ) , (bn ) et (cn ) de la manière suivante :
a0 = a ; b0 = b.
Pour n ≥ 0,
an + bn
cn = .
2
Si f (cn ) = 0 alors cn est la racine de f et le processus est arrêté.
Sinon Si f (cn ) f (bn ) < 0 alors an+1 = cn et bn+1 = bn .
Sinon an+1 = an et bn+1 = cn .
Fin Si
Fin Pour
Remarques
• En pratique, un critère d'arrêt est adopté pour arrêter le processus décrit dans l'algorithme
ci-dessus. Par exemple, si on adopte un critère d'erreur absolue sur la valeur de la racine, le
b − an
processus s'arrêtera si n ≤ , où  est une tolérance xée. Un autre critère d'arrêt impose
2
la tolérance  sur l'image de la solution numérique pour arrêter l'algorithme, i.e. f (cn ) ≤ . Il est
important d'imposer aussi un nombre d'itérations maximal nmax au cas où le test portant sur
l'erreur ne serait pas vérié après nmax itérations.
• Comme il a été précisé, si la fonction f admet plusieurs racines, la méthode convergera vers
l'une de ces racines. Pour trouver toutes les racines, il est donc nécessaire de les isoler avant
d'appliquer la méthode, cela en trouvant des sous-intervalles contenant chacun une seule racine.

Théorème 2.1
Soit f une fonction continue sur [a, b] vériant f (a)f (b) < 0. On suppose que pour tout n ∈ N,
f (cn ) 6= 0. Alors les suites (an ) , (bn ) et (cn ) (dénies dans l'algorithme de dichotomie) convergent
vers une même limite r ∈ R vériant f (r) = 0. De plus la convergence de la méthode est linéaire
et on a :
|r − cn | ≤ 2−(n+1) (b − a) .

Démonstration. D'après l'algorithme de la méthode de dichotomie, on peut facilement voir que :


a0 ≤ a1 ≤ a2 ≤ · · · ≤ b0 = b,

b0 ≥ b1 ≥ b2 ≥ · · · ≥ a0 = a,
1
bn+1 − an+1 = (bn − an ) (∀n ∈ N).
2
Puisque la suite (an ) est croissante et majorée par b0 , alors elle converge. De même, (bn ) est décrois-
sante et minorée donc elle est convergente. La dernière égalité implique que, pour tout n ∈ N
bn − an = 2−n (b0 − a0 ) .

Par suite
lim bn − lim an = lim 2−n (b0 − a0 ) = 0.
n→∞ n→∞ n→∞

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


2.2. Méthode de la fausse position 13

En posant r = lim an = lim bn , et en passant à la limite dans l'inégalité 0 > f (an )f (bn ) (toujours
n→∞ n→∞
vériée par construction), on obtient 0 ≥ f (r)2 , et par conséquent f (r) = 0.
Maintenant puisque cn = (an + bn ) /2, alors lim cn = r, et l'erreur à la n-ième itération est
n→∞
majorée comme suit :
1
en = |r − cn | ≤ (bn − an ) = 2−(n+1) (b − a) ,
2
en+1 1
ce qui implique que lim = . Donc, la convergence de la méthode est linéaire.
n→∞ en 2

Exemple
Soit la fonction f (x) = exp(x) + cos(x). On peut facilement montrer que f admet un unique
zéro sur [−2, −1], f étant une fonction continue et strictement croissante sur [−2, −1] avec
f (−2)f (−1) < 0. On utilise la méthode de dichotomie pour approcher ce zéro, avec le critère
d'arrêt suivant : les itérations s'achèvent quand |f (cn )| ≤ 10−3 . On peut voire d'après les résul-
tats achés dans le tableau ci-dessous (achage de (an ) , (bn ) et (cn ) avec 7 chires signicatifs)
que la solution numérique nale obtenue est c7 = −1, 746094. L'erreur absolue associée à l'ap-
b − a7
proximation obtenue est au plus égale à : 7 = 3, 906 × 10−3 .
2

Remarque
La méthode de dichotomie a l'avantage de permettre de déterminer à l'avance le nombre nécessaire
d'itérations n pour l'obtention d'une précision . En eet pour que |r − cn | ≤ , il sut d'après
le théorème précédent que : 2−(n+1) (b − a) ≤ , et donc que
ln(b − a) − ln()
n≥ − 1.
ln(2)

2.2 Méthode de la fausse position


La méthode de fausse position, aussi appelée méthode de regula falsi, est une variante de la
méthode de dichotomie dans laquelle au lieu de prendre à chaque étape cn comme milieu de l'inter-
valle [an , bn ], on prend l'intersection de l'axe des abscisses avec la droite passant par (an , f (an )) et

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


14 Résolution numérique d'équations non linéaires

(bn , f (bn )) (voir gure 2.1). L'équation de cette droite est donnée par :
x − an y − f (an )
= .
bn − an f (bn ) − f (an )
an − bn
Elle coupe l'axe des abscisses au point (cn , 0) où cn = an + f (an ) .
f (an ) − f (bn )

Figure 2.1

Algorithme (Algorithme de la fausse position)


On construit trois suites (an ) , (bn ) et (cn ) de la manière suivante :
a0 = a ; b0 = b.
Pour n ≥ 0,
an − bn
cn = an + f (an ) .
f (an ) − f (bn )
Si f (cn ) = 0 alors cn est la racine de f et le processus est arrêté.
Sinon Si f (cn ) f (bn ) < 0 alors an+1 = cn et bn+1 = bn .
Sinon an+1 = an et bn+1 = cn .
Fin Si
Fin Pour
Contrairement à la méthode de dichotomie, la continuité de la fonction f n'est pas une condition
susante pour assurer la convergence de la méthode de la fausse position.
Théorème 2.2
Soit f une fonction de classe C 1 sur [a, b] vériant f (a)f (b) < 0 et strictement convexe ou
strictement concave. Alors la suite (cn ) construite par la méthode de la fausse position converge
vers l'unique racine de f . De plus, la convergence est linéaire.

2.3 Théorème du point xe


Définition 2.2
Soient k un réel strictement positif et f une fonction réelle dénie sur un intervalle I de R.
La fonction f est dite lipschitzienne (ou k-lipschitzienne) sur I si pour tous x et y de I on a
: |f (x) − f (y)| ≤ k|x − y|.

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


2.4. Méthode de Newton 15

Proposition 2.1
Soit f une fonction de classe C 1 sur un intervalle I . S'il existe un réel k ≥ 0 vériant : |f 0 (x)| ≤ k
pour tout x ∈ I , alors la fonction f est k-lipschitzienne sur I .
Définition 2.3
Soit f une fonction k-lipschitzienne sur un intervalle I . La fonction f est dite contractante (ou
k -contractante) sur I si k ∈ [0, 1[.

Définition 2.4
Soient x ∈ R et f une fonction réelle dénie sur un intervalle I de R. On dit que x est un point
xe de f si f (x) = x.
Théorème 2.3 (Théorème du point xe)
Soient f une fonction contractante sur un intervalle fermé I à valeurs dans I , et (xn )n∈N la suite
dénie par : xn+1 = f (xn ) avec x0 = a ∈ I . Alors, la suite (xn ) converge vers un réel s qui est
l'unique point xe de f sur I .

Le théorème énoncé ci-dessus nous permet de résoudre des équations de la forme f (x) = x. La
méthode issue de ce théorème est appelée méthode du point xe, c'est une méthode généralement
d'ordre 1. Nous verrons dans les sections à venir que des méthodes plus performantes se basent sur
cette méthode.
Exemple
Soit l'équation f (x) = 0, avec f (x) = x − cos(x) et x ∈ [0, 1]. Résoudre cette équation revient à
résoudre l'équation g(x) = x, avec g(x) = cos(x) et x ∈ [0, 1]. La fonction cosinus est une fonction
contractante (|g 0 (x)| = |− sin(x)| < 1 sur [0, 1]) et cos([0, 1]) ⊂ [0, 1]. Donc d'après le théorème
du point xe, la suite dénie par : xn+1 = g(xn ) avec x0 = a ∈ [0, 1] converge vers un réel qui est
l'unique point xe de g sur [0, 1], et par suite l'unique solution de l'équation f (x) = 0. On prend
x0 = 0, 5, les trois premières itérations de la méthode du point xe donnent :
x1 = g(x0 ) ≈ 0, 877583, x2 = g(x1 ) ≈ 0, 639012 et x3 = g(x2 ) ≈ 0, 802685.

Théorème 2.4
Soit f une fonction de classe C 1 sur un intervalle fermé I admettant un point xe s dans l'intérieur
de I . Si |f 0 (s)| < 1 alors il existe un intervalle J dans I tel que pour tout point y ∈ J, la suite
(xn ) dénie par x0 = y et xn+1 = f (xn ) soit bien dénie et converge vers s. De plus, si f est de
classe C d+1 (d ∈ N) sur J , 0 = f 0 (s) = · · · = f (d) (s) et f (d+1) (s) 6= 0, la convergence de (xn ) vers
s est d'ordre d + 1.

Le théorème ci-dessus est valable dans le cas où l'ordre de convergence de(xn ) est un entier. Le
cas général dépasse le cadre de ce cours.

2.4 Méthode de Newton


L'idée de la méthode de Newton est de remplacer l'équation f (x) = 0 par l'équation Tn (x) = 0,
où Tn est l'équation de la tangente de f en un point xn (voir gure 2.2), cette tangente a pour
équation : y = f (xn )+f 0 (xn ) (x − xn ). Ainsi, pour un x0 donné, nous construisons la suite décrivant
la méthode itérative de Newton :
f (xn )
xn+1 = xn − .
f 0 (xn )

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


16 Résolution numérique d'équations non linéaires

Figure 2.2

Théorème 2.5
Soit f une fonction de classe C 2 dénie sur un intervalle I contenant un point s pour lequel
f (s) = 0 et f 0 (s) 6= 0. Alors il existe un intervalle J dans I tel que pour tout x0 ∈ J, la suite (xn )
construite par la méthode de Newton soit bien dénie et converge vers s. De plus, la convergence
est quadratique.

Démonstration. La démonstration est donnée dans le cas spécique où f est assez régulière et
f 00 (s) 6= 0. On utilise le fait que la méthode de Newton peut être vue comme une méthode de point
f (x)
xe. En eet, en considérant la fonction F (x) = x − , on remarque que f (x) = 0 équivaut à
f 0 (x)
F (x) = x. Maintenant, on a :
f 0 (x)f 0 (x) − f (x)f 00 (x) f (x)f 00 (x)
F 0 (x) = 1 − =
[f 0 (x)]2 [f 0 (x)]2
puisqu'un point xe de F est un zéro de f, on a F 0 (s) = 0. De plus,
[f 0 (x)]2 [f (x)f 000 (x) + f 00 (x)f 0 (x)] − [f (x)f 00 (x)] [2f 0 (x)f 00 (x)]
F 00 (x) =
[f 0 (x)]4
et par suite, on a
f 00 (s)
F 00 (s) = 6= 0.
f 0 (s)
Donc, et puisque F est de classe C 2 au voisinage de s, l'utilisation du théorème 2.4 termine la
démonstration.
Remarque
Le théorème ci-dessus assure la convergence du schéma de Newton lorsque x0 est assez proche de
la solution recherchée. Si on ne dispose d'aucune approximation de cette solution, la convergence
de la méthode peut aussi être assurée si les conditions du théorème ci-dessous sont vériées.

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


2.5. Méthode de la sécante 17

Théorème 2.6
Soit f une fonction de classe C 1 sur un intervalle [a, b], strictement croissante et strictement
convexe, telle que f (a) < 0 < f (b). Alors si f (x0 ) > 0, la suite (xn ) construite par la méthode
de Newton est bien dénie et converge vers l'unique zéro de f sur ]a, b[. De plus, la convergence
est quadratique.

Exemple
On reprend l'exemple de la méthode de dichotomie pour tester la méthode de Newton : on
recherche le zéro de f (x) = exp(x) + cos(x) sur [−2, −1] et l'algorithme s'arrête quand |f (xn )| ≤
10−3 . En prenant x0 = −1, La précision requise est atteinte par la méthode de Newton après
seulement deux itérations. Plus précisément on obtient : x1 ≈ −1, 750967 et x2 ≈ −1, 746136,
cette dernière valeur vérie la condition d'arrêt avec |f (x2 )| ≈ 4.1 × 10−6 .

2.5 Méthode de la sécante


La méthode de la sécante consiste à remplacer le terme de la dérivée dans le schéma de Newton
par la pente de la corde reliant les points d'abscisses xn−1 et xn−2 . Autrement dit, le terme f 0 (xn )
f (x ) − f (x )
dans l'algorithme de Newton sera remplacé par n n−1
dans la méthode de la sécante.
xn − xn−1
Ainsi, pour deux valeurs initiales x0 et x1 , nous construisons la suite décrivant la méthode de la
sécante :
f (xn ) (xn − xn−1 )
xn+1 = xn − ,
(f (xn ) − f (xn−1 ))
ou dans une forme plus compacte :
xn−1 f (xn ) − xn f (xn−1 )
xn+1 = .
f (xn ) − f (xn−1 )
Théorème 2.7
Soit f une fonction de classe C 2 dénie sur un intervalle I contenant un point s pour lequel
f (s) = 0 et f 0 (s) 6= 0. Alors il existe un intervalle J dans I tel que pour tous x0 , x1 ∈ J vériant
x0 6= x1 , la suite (xn ) construite par la méthode
√ de la sécante soit bien dénie et converge vers s.
1+ 5
De plus, la convergence est d'ordre p = ≈ 1, 618.
2

Exemple
Toujours en considérant l'exemple précédent, on prend comme valeurs initiales pour la méthode
de la sécante x0 = −2 et x1 = −1. La précision requise est atteinte par la méthode de la
sécante après trois itérations. Plus précisément on obtient : x2 ≈ −1, 763824 et x3 ≈ −1, 747009,
x4 ≈ −1, 746137 avec |f (x4 )| ≈ 2, 7 × 10−6 .

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


Chapitre 3

Résolution numérique des systèmes

linéaires

Dans ce chapitre, nous présentons diérents algorithmes pour la résolution du système linéaire
Ax = b, où A ∈ Mn (R) (Mn (R) étant l'espace vectoriel des matrices carrées d'ordre n) est une
matrice inversible et b ∈ Rn . Le but est donc de résoudre le problème :
x ∈ Rn


Ax = b.
Le fait que A est une matrice inversible implique bien entendu l'existence et l'unicité du vecteur
solution x.
En fait, la résolution d'un tel problème est équivalent à résoudre le système de n équations et à
n inconnus suivant : 

 a11 x1 + a12 x2 + a13 x3 + · · · + a1n xn = b1

a21 x1 + a22 x2 + a23 x3 + · · · + a2n xn = b2





a31 x1 + a32 x2 + a33 x3 + · · · + a3n xn = b3
 ..
.






an1 x1 + an2 x2 + an3 x3 + · · · + ann xn = bn

où les éléments aij , xi et bi , i, j = 1, ..., n sont les coecients respectives de A, x et b. Ce système


peut s'écrire sous le forme suivante :
    
a11 a12 a13 · · · a1n x1 b1

 a21 a22 a23 · · · a2n 
 x2 
  b2 

 a31 a32 a33 · · · a3n  x3=
  b3 
.. .. .. ... ..   ..   .. 
  
. . . .  .   . 


an1 an2 an3 · · · ann xn bn
d'où l'équation matricielle Ax = b.
L'approche la plus naïve pour la résolution du système Ax = b est de chercher l'inverse de A
par la méthode de Cramer. Cependant, une telle approche est très coûteuse en termes de coût de
calcul, elle nécessitera par exemple environ 9, 4.10161 opérations à virgule ottante pour une matrice
de dimension n = 100. Avec ordinateur fonctionnant à 100 megaops (ops = opérations à virgule
ottante par secondes - oating point operations per second), il faudrait environ 3.10146 années
pour résoudre notre système ! La méthode de Gauss sans stratégie de pivot ne nécessite que 681550
opérations pour la résolution du même système. D'autres méthodes présentées dans ce chapitre
nécessitent encore moins de calculs que la méthode de Gauss.

18
3.1. Méthodes directes 19

3.1 Méthodes directes


Les méthodes numériques présentées dans cette section sont des méthodes directes. Une méthode
est dite directe si elle permet, en l'absence d'erreurs d'arrondi, de trouver la solution exacte du
problème à résoudre après un nombre ni et prédéterminé d'opérations.

3.1.1 Cas des systèmes triangulaires


Définition 3.1
Soit A ∈ Mn (R). On dit que A est triangulaire inférieure si ses éléments au-dessus de la diagonale
sont nuls, autrement dit :
i < j =⇒ aij = 0
Une matrice triangulaire inférieure a la forme suivante :
 
a11 0 ··· ··· 0
 a21 a22 . . . ..
.
 

 .. .
.. . .
. . . . ...
 
 .


 .. .. ...
 
 . .

0 
an1 an2 · · · · · · ann

On dit que A est triangulaire supérieure si ses éléments en-dessous de la diagonale sont nuls,
autrement dit :
i > j =⇒ aij = 0
Une matrice triangulaire supérieure a la forme suivante :
 
a11 a12 . . . . . . . . . a1n
 0 a22 . . . . . . . . . a2n 
 . ... ... ..
 
 .. .


 .. . . . . .
.
 
 . . . .


 .. . .
. . . . ...
 
 .


0 . . . . . . . . . 0 ann

Théorème 3.1
Soit A ∈ Mn (R) une matrice triangulaire. Alors A est inversible si et seulement si ses éléments
diagonaux sont tous non nuls.

Les systèmes triangulaires sont très simples à résoudre, c'est pourquoi un grand nombre de
méthodes directes consistent à ramener la résolution d'un système linéaire quelconque à celle d'un ou
plusieurs systèmes triangulaires. Ci-dessus les algorithmes de descente et de remontée qui permettent
respectivement de résoudre les systèmes triangulaires inférieures et triangulaires supérieures.
Algorithme (Descente)
Les solutions du système triangulaire inférieur
si i < j,

lij = 0
LX = C avec
lii 6= 0

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


20 Résolution numérique des systèmes linéaires

sont données par les relations


 c1
 x1 =
l

11

 
i−1
 xi = 1 ci −
X
 lij xj  , i = 2, 3, . . . , n

 lii
j=1

Algorithme (Remontée)
Les solutions du système triangulaire supérieur
si i > j

uij = 0
UX = C avec
uii 6= 0

sont données par les relations


 cn
 xn =
unn


 
n
1  X
 x = ci − uij xj  , i = n − 1, n − 2, . . . , 1
 i uii


j=i+1

Exemple
Considérons le système suivant de 4 équations à 4 inconnues :


 x1 + x2 + x3 + x4 = 1
13x2 + 5x3 + 4x4 = 0


 −2x3 + 5x4 = 8
7x4 = 14

qui peut aussi s'écrire sous forme matricielle :


   
1 1 1 1 x1 1
 0 13 5 4   x2   0 
  = 
 0 0 −2 5   x3   8 
0 0 0 7 x4 14

Le système se résout facilement par la méthode de remontée :


14
x4 = =2
7
(8 − 5 × 2)
x3 = =1
−2
(0 − 5 × 1 − 4 × 2)
x2 = = −1
13
(1 + 1 × 1 − 1 × 1 − 1 × 2)
x1 = = −1
1

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


3.1. Méthodes directes 21

3.1.2 Méthode de Gauss


La résolutions des systèmes linéaires par la méthode de Gauss a fait l'objet d'un chapitre dans
le module Algèbre 3. Nous commencerons cette section par un rappel sur cette méthode.
Soit A ∈ Mn (R) une matrice inversible, et b ∈ Rn . On cherche à calculer x ∈ Rn solution du
système Ax = b. Le principe de la méthode de Gauss est de se ramener, par des opérations simples
(combinaisons linéaires), à un système triangulaire équivalent, qui sera donc facile à résoudre.
Considérons par exemple le système Ax = b, avec
   
1 1 1 3
A =  0 6 −1  b= 1 
−1 1 −2 0

On construit la matrice élargie à = (A|b), en ajoutant le second membre b comme colonne à la


matrice A, c'est à dire :
1 1 1 3
 

à =  0 6 −1 1 
−1 1 −2 0
Pour appliquer la méthode de Gauss, il faut d'abord que le premier coecient de la première ligne
de à soit non nul. La première ligne a un 1 en première position, on dit que nous avons un pivot en
position (1, 1) (première ligne, première colonne). Ce pivot sert de base pour éliminer tous les autres
termes de la première colonne.
Dans la deuxième ligne, l'élément de la première colonne est déjà nul. Le premier coecient de la
troisième ligne sera annulée en eectuant l'opération élémentaire L3 ← L3 + L1 :

1 1
   
1 1 3 1 1 3
L3 ←L3 +L1
 0 6 −1 1  −→  0 6 −1 1 
−1 1 −2 0 0 2 −1 3
 
1 0 0
Ceci revient à multiplier à à gauche par la matrice E1 = 0 1 0 . On remarque que le travaille

1 0 1
sur la matrice élargie est plus pratique car il permet d'eectuer le produit matriciel simultanément
sur le système linéaire et sur le second membre.
La deuxième ligne a un terme non nul (6) en position (2, 2) : c'est un pivot. On ajoute donc (−1/3)
fois la ligne 2 à la ligne 3 pour annuler le deuxième terme de la troisième ligne :
 

1 1 1 3
 1 1 1 3
L3 ←L3 − 13 L2  0 6 −1
 0 6 −1 1  −→ 1 
2 8
 
0 2 −1 3 0 0 −
3 3
 
1 0 0
Ceci revient à multiplier la matrice précédente à gauche par la matrice E2 = 
 0 1
. Une
0 
1
0 − 1
3
matrice triangulaire supérieure à trois pivots est nalement obtenu : on peut donc utiliser la méthode
de remontée pour obtenir la solution du système, et on obtient (en notant xi les composantes de
x) : x1 = 15/2, x2 = −1/2 et x3 = −4. On a ainsi résolu le système linéaire. Finalement, au
moyen des opérations décrites ci-dessus, on a transformé le système linéaire Ax = b en U x =
E2 E1 b, où U = E2 E1 A. Remarquons que l'algorithme de Gauss permet aussi de décomposer la

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


22 Résolution numérique des systèmes linéaires

matrice A en un produit de deux matrices LU , avec L = (E2 E1 )−1 est une matrice triangulaire
inférieure (l'inverse d'une matrice triangulaire inférieure est une matrice triangulaire inférieure), et
U est une matrice triangulaire supérieure. C'est le principe de la factorisation LU (Voir la section
3.1.3).

Algorithme (Gauss sans permutation pour Ax = b)


Pour j = 1, . . . , n − 1
Pour i = j + 1, . . . , n
aij
mij = (ajj est supposé non nul)
ajj
Pour k = j + 1, . . . , n
aik = aik − mij ajk
Fin pour
bi = bi − mij bi
Fin pour
Fin pour
Résoudre le système triangulaire supérieur obtenu par la méthode de remontée.

Pour que l'algorithme de Gauss ci-dessus fonctionne, les pivots de la matrice doivent être non
nuls (lors de la division par ajj ). Si au cours de l'élimination le pivot ajj est nul, on doit permuter
la ligne j avec l'une des lignes suivantes vériant akj 6= 0. Le choix qui minimise le nombre de tests
à eectuer est de choisir la première ligne possible. Notons que si le pivot ajj est très petit, son
utilisation peut entraîner des erreurs d'arrondi importantes pouvant fausser les calculs. Il y a deux
raisons au moins pour cela : un pivot très proche de zéro peut entrainer une très grande valeur
du coecient mij qui peut avoir à son tour une mauvaise représentation sur machine à cause du
nombre ni de chires signicatifs en virgule ottante. La deuxième raison est que le terme aik va
tendre à être négligé dans la somme aik = aik − mij ajk à cause de la soustraction de deux nombres
de grandeurs très diérentes. Pour éviter de telles erreurs d'arrondi, la stratégie du pivot partiel
consiste à choisir lors de l'élimination la ligne pour laquelle on aura le plus grand pivot en valeur
absolue. Il existe d'autres stratégies pour diminuer la sensibilité aux erreurs d'arrondi. La stratégie
du pivot total consiste par exemple à chercher le pivot parmi tous les éléments de la matrice carrée
restante (ce qui conduira à une permutation de ligne et une permutation de colonne) mais cette
technique augmente considérablement le nombre de tests à eectuer.

Exemple
Résolvons le système suivant par la méthode de Gauss avec stratégie du pivot partiel : Ax = b,
où    
0.02 0.01 0 0 0.02
 1 2 1 0   1 
 et b = 
A= 
 0 1 2 1   4 
0 0 100 200 800
   
0.02 0.01 0 0 0.02 1 2 1 0 1
 1 2 1 0 1  L1 ↔L2  0.02 0.01 0 0 0.02 

 0
 −→  
1 2 1 4   0 1 2 1 4 
0 0 100 200 800 0 0 100 200 800

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


3.1. Méthodes directes 23

   
1 2 1 0 1 1 2 1 0 1
L2 ←L2 −0.02L1  0 −0.03 −0.02 0 0  L2 ↔L3  0 1 2 1 4 
−→ 
 0
 −→   0 −0.03 −0.02 0

1 2 1 4  0 
0 0 100 200 800 0 0 100 200 800

   
1 2 1 0 1 1 2 1 0 1
L3 ←L3 +0.03L2  0 1 2 1 4  L3 ↔L4  0
 1 2 1 4 
−→ 
 0
 −→  
0 0.04 0.03 0.12  0 0 100 200 800 
0 0 100 200 800 0 0 0.04 0.03 0.12

 
1 2 1 0 1
 0 1 2 1 4 
L4 ←L4 −L3 ∗4×10−4 
−→  0 0

100 200 800 
0 0 0 −0.05 −0.2
 
1
 0
Par la méthode de remontée, on obtient x =  .

 0 
4

3.1.3 Factorisation LU
Comme signalé dans la section précédente, La factorisation LU découle de l'algorithme de Gauss
dans le cas où on ne permute jamais. Elle consiste à factoriser la matrice A en un produit de deux
matrices triangulaires A = LU, où L est triangulaire inférieure (L pour "lower" en anglais) et U
est triangulaire supérieure (U pour "upper" en anglais). Une fois établie la factorisation LU de A,
la résolution du système linéaire Ax = b est équivalente à la simple résolution de deux systèmes
triangulaires Ly = b puis U x = y . Cette méthode est donc très pratique lorsqu'on a à résoudre
plusieurs systèmes où seul le second membre change : une fois la décomposition établie, la résolution
de chaque système pourra se faire en résolvant seulement deux systèmes triangulaires.

Théorème 3.2
Soit A une matrice donnée d'ordre n pour laquelle l'élimination de Gauss peut être eectuée
sans permutation de lignes, alors cette matrice admet une décomposition LU (L est triangulaire
inférieure et U est triangulaire supérieure).

Il faut souligner que la décomposition LU n'est pas unique. Cependant, le choix le plus populaire
pour cette factorisation garantissant l'unicité (si la décomposition existe) consiste à imposer que la
matrice U ait des 1 sur sa diagonale. C'est la décomposition de Crout et elle peut être obtenue grâce
à l'algorithme suivant :

Algorithme (Décomposition de Crout)

Première colonne de L :
li1 = ai1 pour i = 1, . . . , n

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


24 Résolution numérique des systèmes linéaires

Première ligne de U :
a1i
u1i = pour i = 2, . . . , n
l11
Pour i = 2, . . . , n − 1 :
i−1
X
lii = aii − lik uki
k=1

Pour j = i + 1, . . . , n : calcul de la i-ième colonne de L :


i−1
X
lji = aji − ljk uki
k=1

et calcul de la i-ième ligne de U :


Pi−1
aij − k=1 lik ukj
uij =
lii
Calcul de lnn :
n−1
X
lnn = ann − lnk ukn
k=1

Exemple
Soit le système :     
3 −1 2 x1 12
 1 2 3   x2  =  11 
2 −2 −1 x3 2
avec A est la matrice du système. On veut résoudre ce système en factorisant A en un produit
LU .

ˆ La première colonne de L est la première colonne de A.

ˆ Première ligne de U : l'élément de la première ligne de A est 3. Les éléments de la première ligne
de U sont donc les éléments de la première ligne de A divisés par 3.
ˆ Deuxième colonne de L :
l22 = a22 − l21 u12
= 2 − (1)(−1/3)
= 7/3
l32 = a32 − l31 u12
= −2 − (2)(−1/3)
= −4/3

ˆ Deuxième ligne de U :
a23 − l21 u13
u23 =
l22
3 − (1)(2/3)
=
7/3
=1

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


3.1. Méthodes directes 25

ˆ Calcul de l33 :
l33 = a33 − l31 u13 − l32 u23
= −1 − (2)(2/3) − (−4/3)(1)
= −1
On a donc la décomposition suivante de A :
  
3 0 0 1 −1/3 2/3
A =  1 7/3 0  0 1 1 
2 −4/3 −1 0 0 1

ˆ Résolution de Ly = b (b étant le second membre du système).


Par l'algorithme de descente, on obtient :
y1 = b1 /l11
= 12/3
=4
b2 − l21 y1
y2 =
l22
11 − (1)(4)
=
7/3
=3
b3 − l31 y1 − l32 y2
y3 =
l33
2 − (2)(4) − (−4/3)(3)
=
(−1)
=2

ˆ Résolution de U x = y :
Par l'algorithme de remontée, on obtient la solution nale :
x3 = y3
=2
x2 = y2 − u23 x3
= 3 − (1)(2)
=1
x1 = y1 − u12 x2 − u13 x3
= 4 − (−1/3)(1) − (2/3)(2)
=3

Théorème 3.3
Soit une matrice A = (aij )1≤i,j≤n d'ordre n telle que toutes les sous-matrices diagonales d'ordre
1 ≤ k ≤ n, dénies par  
a11 · · · a1k
k .. ... .. 
∆ = . . 

ak1 · · · akk

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


26 Résolution numérique des systèmes linéaires

soient inversibles (autrement dit det ∆k 6= 0). Il existe un unique couple de matrices (L, U ), avec
U triangulaire supérieure, et L triangulaire inférieure ayant une diagonale de 1, tel que

A = LU

Remarque
On ne peut pas toujours obtenir une décomposition LU pour une matrice carrée A. Cependant
dans certains cas, en permutant des lignes de A, la décomposition devient possible. On obtient
alors une décomposition de la forme A = P LU , où P est une matrice de permutation.

3.1.4 Méthode de Cholesky


C'est une méthode qui s'applique aux matrices symétriques dénies positives. Elle consiste à
factoriser une matrice A sous la forme A = LLT , où L est une matrice triangulaire inférieure.

Définition 3.2
Une matrice symétrique A ∈ Mn (R) est dénie positive si pour tout vecteur x ∈ Rn non nul on
a xT Ax > 0.

Théorème 3.4
Soit A une matrice symétrique dénie positive. Alors il existe une matrice triangulaire inférieure
L telle que A = LLT . De plus, si on impose aux coecients diagonaux de L d'être positifs, cette
factorisation est unique.

L'algorithme suivant permet de trouver la matrice L (lorsqu'elle existe) vériant A = LLT .

Algorithme (Méthode de Cholesky)


Première colonne de L :
√ a1j
l11 = a11 et lj1 = pour j = 2, . . . , n
l11
Pour i = 2, . . . , n, on détermine la i-ème colonne de L, après avoir calculé les (i − 1) premières
colonnes :
q Pi−1 2
lii = aii − k=1 l
Pi−1 ik
aij − k=1 lik ljk
lji = , pour j = i + 1, . . . , n
lii

Exemple
Par la méthode de Cholesky, on obtient :
    
4 12 −16 2 0 0 2 6 −8
 12 37 −43  =  6 1 0   0 1 5 
−16 −43 98 −8 5 3 0 0 3

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


3.2. Normes matricielles et conditionnement 27

3.2 Normes matricielles et conditionnement


3.2.1 Généralités sur les normes matricielles
Définition 3.3
Soit V un espace vectoriel sur R. Une norme vectorielle sur V est une application k · k : V → R+
qui vérie les propriétés suivantes :
• kvk = 0 ⇐⇒ v = 0

• kαvk = |α|kvk ∀α ∈ R, ∀v ∈ V

• ku + vk ≤ kuk + kvk ∀(u, v) ∈ V 2 (inégalité triangulaire)


On appelle espace vectoriel normé un espace vectoriel muni d'une norme.

Les normes usuelles de Rn sont :


n
X
kvk1 = |vi | ,
i=1
n
!1/2
X
kvk2 = |vi |2 ,
i=1
kvk∞ = max |vi | .
1≤i≤n

Définition 3.4
On appelle norme matricielle sur l'espace vectoriel Mn (R) toute norme vériant les propriétés de
la dénition 3.3 en plus de la propriété suivante :
kABk ≤ kAkkBk ∀A, B ∈ Mn (R).

Proposition 3.1
Soit k · k une norme vectorielle sur Rn , l'application k · k : Mn (R) → R+ dénie par
kAvk
kAk = sup = sup kAvk,
v∈Rn kvk v∈Rn
v6=0 kvk=1

est une norme matricielle, appelée norme matricielle subordonnée (à la norme vectorielle donnée).
De plus
kAvk ≤ kAkkvk ∀v ∈ Rn .

Définition 3.5
Soit A ∈ Mn (R). Alors :
kAvk1
kAk1 = sup ,
v∈Rn kvk1
v6=0

kAvk2
kAk2 = sup ,
v∈Rn kvk2
v6=0

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


28 Résolution numérique des systèmes linéaires

kAvk∞
kAk∞ = sup .
v∈Rn kvk∞
v6=0

Proposition 3.2
Soit A = (aij ) une matrice carré de dimension n. Alors :
 
XN
kAk∞ = max  |aij | ,
1≤i≤N
j=1

N
!
X
kAk1 = max |aij | ,
1≤j≤N
i=1
p
kAk2 = ρ (At A),
et en particulier si A est symétrique, kAk2 = ρ (A), où ρ(A) désigne le rayon spectral de la matrice
A, i.e. :
ρ(A) = max{|λ|; λ ∈ C, λ valeur propre de A}

Proposition 3.3
• Soit A ∈ Mn (R) et k · k une norme matricielle quelconque. Alors

ρ(A) ≤ kAk.

• Soient maintenant A ∈ Mn (R) et un nombre ε > 0, il existe au moins une norme matricielle
subordonnée telle que
kAk ≤ ρ(A) + ε.

3.2.2 Conditionnement
Définition 3.6
Soit une norme matricielle subordonnée que l'on note kk. On appelle conditionnement d'une
matrice inversible A ∈ Mn (R), relatif à cette norme, la valeur dénie par :
cond(A) = kAk · A−1 .

Proposition 3.4
Soit A une matrice inversible et soit b 6= 0 un vecteur non nul.
• Soient x et x + δx les solutions respectives des systèmes

Ax = b, et A(x + δx) = b + δb.

Alors on a
kδxk kδbk
≤ cond(A)
kxk kbk
• Soient x et x + δx les solutions respectives des systèmes

Ax = b, et (A + δA)(x + δx) = b

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


3.2. Normes matricielles et conditionnement 29

Alors on a
kδxk kδAk
≤ cond(A) .
kx + δxk kAk
De plus, ces inégalités sont optimales.
Remarques
• Pour toute matrice inversible, le conditionnement est toujours supérieur ou égale à 1, 1 = kIn k =
kAA−1 k ≤ kAkkA−1 k = cond(A).
• Si A est une matrice inversible, cond(A) = cond(A−1 ) et cond(αA) = cond(A) pour tout α ∈ R∗ .
|λmax |
• Pour toute matrice symétrique inversible A, cond2 (A) = kAk2 · A−1 2 = , où λmax et
|λmin |
λmin sont respectivement la valeur propre du plus grand module et du plus petit module de A.
• On dira qu'une matrice est bien conditionnée si son conditionnement est proche de 1 et qu'elle
est mal conditionné si son conditionnement est grand.
Exemple
Le système suivant est un exemple de système mal conditionné, dû à R.S. Wilson.
      
10 7 8 7 x1 32 1
 7 5 6 5   x2   23   1
  33  dont la solution est  1
  
 =   .
 8 6 10 9   x3 
7 5 9 10 x4 31 1

Le système perturbé
      
10 7 8 7 x1 + δx1 32, 1 9, 2
 7 5 6 5   x2 + δx2   22, 9   −12, 6
  33, 1  a pour solution  4, 5

  =   .
 8 6 10 9   x3 + δx3 
7 5 9 10 x4 + δx4 30, 9 −1, 1

Ainsi une erreur relative de moins de 0, 5% sur les données entraîne une erreur relative supérieur
à 100% (parfois supérieur à 1000%) sur chaque élément du vecteur solution.
De même
      
10 7 8, 1 7, 2 x1 + ∆x1 32 −81
 7, 08 5, 04 6 5   x2 + ∆x2   23   137
  33  a pour solution  −34

  =   .
 8 5, 98 9, 89 9   x3 + ∆x3 
6, 99 4, 99 9 9, 98 x4 + ∆x4 31 22

On note aussi que la matrice du système qu'on note A est inversible avec un déterminant égal à
1 (loin de 0) . Son inverse est donnée par :
 
25 −41 10 −6
 −41 68 −17 10 
A−1 =  10 −17
.
5 −3 
−6 10 −3 2

Cependant, elle a un mauvais conditionnement. Les valeurs propres de A sont : λ1 ≈ 0, 01015,


λ2 ≈ 0, 8431, λ3 ≈ 3, 858 et λ4 ≈ 30, 2877. Donc
λ4
cond2 (A) = ≈ 2984,
λ1
ce qui est très loin de 1.

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


30 Résolution numérique des systèmes linéaires

3.3 Méthodes itératives


3.3.1 Convergence d'une méthode itérative
Définition 3.7
Soit A une matrice inversible. On introduit une décomposition régulière de A, c'est-à-dire un
couple de matrices (M, N ) avec M inversible (et facile à inverser dans la pratique) tel que A =
M − N . La méthode itérative basée sur la décomposition (M, N ) est dénie par

x0 donné dans Rn ,

(E )
M x(k+1) = N x(k) + b ∀k ≥ 1

Si la suite de solutions approchées x(k) converge vers une limite x quand k tend vers l'inni, alors
par passage à la limite dans la relation de récurrence (E) , on obtient
(M − N )x = Ax = b
Par conséquent, si la suite de solutions approchées converge, sa limite est forcément la solution du
système linéaire.
D'un point de vue pratique, la matrice M est choisit de telle façon que le système linéaire (E)
soit facile à résoudre. Il faut savoir qu'on peut arrêter les itérations à tout moment où x(k) devient
susamment proche de la solution inconnue x. Comme on ne connait pas x, on ne peut pas décider
d'arrêter le calcul dès que x − x(k) ≤  où  est la précision désirée. Par contre on connait Ax (qui
vaut b ), et un critère d'arrêt fréquemment utilisé est b − Ax(k) ≤ . Cependant, si la norme de
A−1 est grande ce critère peut être trompeur car

x − x(k) ≤ A−1 b − Ax(k) ≤  A−1

qui peut ne pas être petit.


Lemme 3.1
Soit A ∈ Mn (R), les conditions suivantes sont équivalentes :
(A) lim Ai = 0,
i→+∞

(B) lim Ai x = 0 pour tout vecteur x ∈ Rn ,


i→+∞
(C) ρ(A) < 1,
(D) il existe au moins une norme matricielle subordonnée telle que kAk < 1.

Démonstration. On commence par montrer que (A) implique (B). L'inégalité


Ai x ≤ Ai kxk

montre que lim Ai x = 0. Ensuite, (B) implique (C) car, si ρ(A) ≥ 1, alors il existe λ et x 6= 0
i→+∞
tels que Ax = λx et |λ| = ρ(A), et, par conséquent, la suite Ai x = λi x ne peut pas converger vers
0. Le fait que (C) implique (D) est une conséquence immédiate de la proposition 3.3. Il ne reste
plus maintenant qu'à montrer que (D) implique (A). Pour cela on considère la norme matricielle
subordonnée telle que kAk < 1, et on a
Ai ≤ kAki → 0 lorsque i → +∞

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


3.3. Méthodes itératives 31

Définition 3.8
On dit que la méthode itérative dénie par (E) est convergente si, quel que soit le choix du vecteur
initial x0 ∈ Rn , la suite de solutions approchées x(k) converge vers la solution exacte x.
Théorème 3.5
• La méthode itérative dénie par (E)
 converge si et seulement si le rayon spectral de la matrice
d'itération M −1 N vérie ρ M −1 N < 1.
• La méthode itérative dénie par (E) converge si et seulement si kM −1 N k < 1 pour au moins
une norme matricielle subordonnée k · k.

Démonstration. On dénit l'erreur ek = x(k) − x. On a


k
ek = M −1 N xk−1 + M −1 b − M −1 N x + M −1 b = M −1 N ek−1 = M −1 N e0 .
 

Par application
 du lemme 3.1, on en déduit que ek tend vers 0, quel que soit e0 , si et seulement
si ρ M −1 N < 1, donc si et seulement si kM −1 N k < 1 pour au moins une norme matricielle
subordonnée k · k par la proposition 3.3.

Dans la suite de ce chapitre, on prend D la matrice diagonale de coecients



dij = aij , i = j
dij = 0 sinon
E la matrice triangulaire inférieure vériant

eij = 0, i≤j
eij = −aij i>j

et F la matrice triangulaire supérieure vériant



fij = 0, i≥j
fij = −aij i<j
On a alors
...
 
 −F 
A= D =D−E−F
...
 
−E

3.3.2 Méthode de Jacobi


La méthode de Jacobi consiste à prendre dans (E) : M = D, N = E + F, l'algorithme devient :
Dx(k+1) = (E + F ) x(k) + b.
D étant une matrice diagonale, elle estfacile à inverser. Plus précisément, D−1 est la matrice
1
diagonale dont les éléments sont les avec i = 1, ..., n. Les composantes du vecteur solution à
dii
l'itération k + 1 peuvent être calculées un par un par :

x donné 
 (0)

 


n
(k+1) 1  X (k) 
xi = bi − aij xj  ∀i = 1, . . . , n.
aii



 j=1
j6=i

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


32 Résolution numérique des systèmes linéaires

Définition 3.9
Soit A = (aij ) une matrice de Mn (R). A est dite à diagonale strictement dominante (par lignes)
si elle vérie :
j=n
X
|aij | < |aii | , 1 ≤ i ≤ n.
j=1
j6=i

Proposition 3.5
Si A est une matrice à diagonale strictement dominante alors A est inversible.

Théorème 3.6
Si A est une matrice à diagonale strictement dominante, la méthode de Jacobi converge.

Démonstration.
j=n
1 X
Si A est une matrice carrée à diagonale strictement dominante alors : : |aij | < 1, 1 ≤ i ≤ n.
|aii | j=1
j6=i
 
−aij
Par ailleurs, en posant T = D−1 (E + F ) = (tij ), on a tij = si i 6= j et tii = 0. Il s'en suit
aii
que
j=n j=n
X 1 X
kT k∞ = max |tij | = max |aij | < 1.
1≤i≤n 1≤i≤n |aii |
j=1 j=1
j6=i

En vertu du théorème 3.5, la méthode de Jacobi converge.


Théorème 3.7
Si A et 2D − A sont des matrices symétriques dénis positives, la méthode de Jacobi converge.

3.3.3 Méthode de Gauss-Seidel


La méthode de Gauss-Seidel consiste à prendre dans (E) : M = D − E, N = F, et une étape de
la méthode itérative s'écrit :
(D − E) x(k+1) = F x(k) + b.
On remarque que la matrice (D − E) est une matrice triangulaire inférieure. L'algorithme de la
méthode peut être écrit sous la forme suivante :
x(0) donné 


 

i−1 n
(k+1) 1  X (k+1)
X (k)
 xi = bi − aij xj − aij xj  ∀i = 1, . . . , n.

 aii
j=1 j=i+1

Théorème 3.8
Si A est une matrice à diagonale strictement dominante, la méthode de Gauss-Seidel converge.

Démonstration. D'après le théorème 3.5, if sut de montrer que kT k∞ = (D − E)−1 F ∞


< 1.
Ici, on utilisera la dénition suivante de la norme k.k∞ :
kT xk∞
kT k∞ = sup .
x6=0 kxk∞

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


3.3. Méthodes itératives 33

On pose y = T x = (D − E)−1 F x donc (D − E)y = F x et Dy = Ey + F x ou encore


y = D−1 Ey + D−1 F x.

Soit k l'indice tel que |yk | = max |yi | = kyk∞ = kT xk∞ . On a donc
1≤i≤n

j=k−1
X j=n
X
−1
D−1 F
 
yk = D E y +
kj j kj
xj
j=1 j=k+1

d'où
j=k−1 j=n
X |akj | X |akj |
|yk | ≤ kyk∞ + kxk∞
|akk | |akk |
j=1 j=k+1

et par suite  
j=k−1 j=n
1 −
X |akj |  kyk∞ X |akj |
≤ .
|akk | kxk∞ |akk |
j=1 j=k+1

On conclut que  
Pj=k−1 |akj |
Pj=n |akj |
1 − j=1 |akk |
kyk∞ j=k+1 |akk |
≤ <  =1
kxk∞ Pj=k−1 |akj | Pj=k−1 |akj |
1 − j=1 |akk | 1 − j=1 |akk |

Théorème 3.9
Si A est une matrice symétrique dénie positive, la méthode de Gauss-Seidel converge.

3.3.4 Méthode de relaxation


La méthode de relaxation, aussi appelé S.O.R. (successive over relaxation), consiste à prendre
D 1−ω
dans (E) : M = − E, N = D + F, ω ∈ R. On a donc :
ω ω
   
D (k+1) 1−ω
−E x = D + F x(k) + b.
ω ω

L'algorithme s'écrit donc :


x(0) donné


  

i−1 n
(k+1) (k) ω X (k+1)
X (k)
x = (1 − ω)xi + bi − aij xj − aij xj  ∀i = 1, . . . , n.
 i

 aii
j=1 j=i+1

Théorème 3.10
Si A est une matrice à diagonale strictement dominante et si 0 < ω ≤ 1, l'algorithme de relaxation
converge.

Théorème 3.11
Soit A est une matrice symétrique dénie positive. Si 0 < ω < 2 la méthode de relaxation converge.

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


34 Résolution numérique des systèmes linéaires

Théorème 3.12
Une condition nécessaire de convergence pour la méthode de relaxation est que 0 < ω < 2.

Démonstration. On rappelle que le déterminant d'une matrice est égal au produit de ses valeurs
propres (distinctes ou non) et que le déterminant d'une matrice triangulaire est égal au produit des
termes de la diagonale principale.
On pose :  −1  
1 1−ω
T (ω) = E−F E+F .
ω ω
Si les valeurs propres de T (ω) sont notées λi (ω), on obtient :
n
det 1−ω

ω D + F
Y
det (T (ω)) = λi (ω) = 1 = (1 − ω)n ,
i=1
det ω D − E

d'où ρ (T (ω)) ≥ [|1 − ω|n ]1/n = |1 − ω|. Pour que la méthode converge, il est nécessaire d'avoir
ρ(T ) < 1 (voir théorème 3.5) et par conséquent |1 − ω| < 1. Donc une condition nécessaire de
convergence pour la méthode de relaxation est que 0 < ω < 2.

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


Chapitre 4

Interpolation polynomiale

Dans tout ce chapitre, nous considérons une fonction f continue sur un intervalle [a, b] de R.
Nous cherchons à approcher cette fonction par un polynôme dans le sens suivant : étant donné n + 1
points distincts x0 , x1 , . . . , xn , de [a, b], on cherche un polynôme Pn (x) de degré inférieur ou égal à
n tel que
Pn (xi ) = f (xi ) pour i = 0, . . . , n.

Cette approche, qui fait l'objet de ce chapitre est appelée interpolation polynomiale. Elle est à
ne pas confondre avec une autre approche très utilisée : l'approximation au sens des moindres carrés.
En termes très généraux, on peut dire que dans le cas de l'interpolation polynomiale, on cherche un
polynôme dont la courbe passe par tous les points connus du graphe de f tandis que dans la méthode
des moindres carrés, on essaie d'approcher le mieux possible la courbe de f par un polynôme sans
toutefois passer nécessairement par des points de la courbe de f .

4.1 Interpolation de Lagrange


Théorème 4.1
Soit f : [a, b] → R et soient n + 1 points distincts x0 , x1 , . . . , xn de [a, b]. Il existe un unique
polynôme Pn de degré inférieur ou égal à n vériant :
Pn (xi ) = f (xi ) pour i = 0, . . . , n.

Ce polynôme est appelé polynôme d'interpolation de Lagrange de f aux points x0 , x1 , . . . , xn . Il


est donné par :
n n
x − xk
f (xi ) Li (x) avec Li (x) = pour i = 0, . . . , n.
X Y
Pn (x) =
xi − xk
i=0 k=0
k6=i

Les polynômes Li sont appelés polynômes de base de Lagrange associés aux points x0 , x1 , . . . , xn .

Démonstration.
Existence
Pour chaque
Pn i = 0, . . . , n, Li est un polynôme de degré n vériant Lj (xi ) = δij . Par conséquent
Pn (x) = i=0 f (xi ) Li (x) est de degré inférieur ou égal à n et on a :

Pn (xi ) = f (xi ) , i = 0, 1, . . . , n.

35
36 Interpolation polynomiale

Unicité
Supposons qu'il existe deux polynômes diérents Pn et Qn de degré inférieur ou égal à n, interpolant
f aux points xi . Posant maintenant Dn (x) = Pn (x) − Qn (x), Dn est donc un polynôme de degré
inférieur ou égal à n et par conséquent il peut avoir au plus n zéros. Cependant, on a Dn (xi ) = 0
pour i = 0, 1, . . . , n, ce qui voudrait dire que Dn aurait (n + 1) zéros d'où la contradiction. On
conclut que Pn − Qn = 0.

Exemple
Trouvons à l'aide de l'interpolation de Lagrange, le polynôme de degré 2 passant par les points :
(−1, 2), (0, 1) et (1, −1).
Les polynômes de base de Lagrange sont données par :
(x − x1 ) (x − x2 ) x(x − 1) x(x − 1)
L0 (x) = = = ,
(x0 − x1 ) (x0 − x2 ) (−1)(−1 − 1) 2
(x − x0 ) (x − x2 ) (x − (−1))(x − 1) (x + 1)(x − 1)
L1 (x) = = = ,
(x1 − x0 ) (x1 − x2 ) −(−1)(−1) −1
(x − x0 ) (x − x1 ) (x + 1)x (x + 1)x
L2 (x) = = = .
(x2 − x0 ) (x2 − x1 ) (1 − (−1))(1 − 0) 2

Donc
P2 (x) = L0 (x)f (x0 ) + L1 (x)f (x1 ) + L2 (x)f (x2 )
x(x − 1) (x + 1)(x − 1) (x + 1)x
= f (x0 ) + f (x1 ) + f (x2 )
2 −1 2
x(x − 1) (x + 1)(x − 1) (x + 1)x
=2 + −
2 −1 2
1 2 3
= − x − x + 1.
2 2

Théorème 4.2 (Erreur d'interpolation)


Soit Pn le polynôme interpolant f aux points x0 , x1 , . . . , xn de [a, b], et soit en (x) = f (x) − Pn (x),
l'erreur d'interpolation de f au point x de [a, b]. Si f est de classe C n+1 sur [a, b], alors pour tout
x ∈ [a, b], il existe un point θx ∈ [a, b] tel que :
n
Πn (x) (n+1)

Y
en (x) = f (θx ) Πn (x) = (x − xi )
(n + 1)!
i=0

En posant
Mn+1 = max f (n+1) (x) ,
x∈[a,b]

alors on obtient pour tout x ∈ [a, b]


Mn+1
|en (x)| ≤ max |Π(x)|.
(n + 1)! x∈[a,b]

Démonstration.
Si x = xi , le résultat est évident car en (x) = 0 et Πn (x) = 0.

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


4.2. Interpolation de Newton 37

Si x 6= xi , posons pour x xé :


f (x) − Pn (x)
R(t) = f (t) − Pn (t) − Πn (t)
Πn (x)

Alors R ∈ C n+1 [a, b] et :


Πn (xi )
R (xi ) = en (xi ) − en (x) = 0, i = 0, 1, . . . , n
Πn (x)
R(x) = en (x) − en (x) = 0.

Par conséquent, R admet au moins n + 2 zéros dans [a, b]. On peut donc appliquer le théorème de
Rolle entre deux zéros consécutifs de R. Il en résulte l'existence de (n + 1) zéros distincts pour R0 .
De même pour R00 , on peut voire facilement qu'elle s'annule en n points distincts de [a, b]. En itérant
le procédé n fois, on conclut que R(n+1) s'annule en un point de [a, b] qu'on note θx . En dérivant
(n + 1) fois l'expression de R, et en posant en (x) = f (x) − Pn (x), on déduit que :

Πn (x) (n+1)
en (x) = f (θx ) .
(n + 1)!

En posant Mn+1 = maxx∈[a,b] f (n+1) (x) , on conclut donc que


Mn+1
|en (x)| ≤ max |Π(x)|, ∀x ∈ [a, b].
(n + 1)! x∈[a,b]

Remarque
Si la fonction f à interpoler est un polynôme de degré inférieur ou égal à n (où n + 1 est le nombre
de points d'interpolation), l'erreur d'interpolation est nulle.

4.2 Interpolation de Newton


Si on ajoute un point d'interpolation xn+1 , la formule d'interpolation de Lagrange ne permet
pas de relier directement les polynômes Pn et Pn+1 . Dans cette section, on introduira l'interpolation
de Newton, une autre méthode de construction du polynôme d'interpolation qui n'ache pas ce
même inconvénient et qui est considérablement plus avantageuse de point de vue coût numérique.
Rappelons cependant que l'existence et l'unicité du polynôme d'interpolation donné par le théorème
4.1, montre que le polynôme d'interpolation de Newton n'est rien d'autre qu'une autre forme du
polynôme de Lagrange.

Définition 4.1
Soit f une fonction numérique dénie sur un intervalle [a, b] contenant n + 1 points distincts
x0 , x1 , . . . , xn . Les diérences divisées de f aux points (xi ) sont dénit par récurrence comme
suit :
f [xi ] = f (xi ), pour i = 0, ..., n.
Pour i = 0, ..., n−1, on appellera première diérence divisée, notée f [xi , xi+1 ] (ou [f (xi ), f (xi+1 )])
le rapport
f [xi+1 ] − f [xi ] f (xi+1 ) − f (xi )
f [xi , xi+1 ] = = .
xi+1 − xi xi+1 − xi

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


38 Interpolation polynomiale

Pour i = 0, ..., n − 2, on appellera deuxième diérence divisée, notée f [xi , xi+1 , xi+2 ] (ou
[f (xi ), f (xi+1 ), f (xi+2 )]) le rapport

f [xi+1 , xi+2 ] − f [xi , xi+1 ]


f [xi , xi+1 , xi+2 ] = .
xi+2 − xi

Pour i = 0, ..., n − p, on appellera p−ième diérence divisée, notée f [xi , xi+1 , . . . , xi+p ] (ou
[f (xi ), f (xi+1 ) . . . , f (xi+p )])

f [xi+1 , . . . , xi+p ] − f [xi , . . . , xi+p−1 ]


f [xi , xi+1 , . . . , xi+p ] = .
xi+p − xi

Exemple
Avec x0 = −1, x1 = 0, x2 = 1, et f (x0 ) = 2, f (x1 ) = 1, f (x2 ) = 0, on obtient :

[f (−1)] = 2, [f (0)] = 1, [f (1)] = 0.

1−2 0−1
[f (−1), f (0)] = = −1, [f (0), f (1)] = = −1.
0 − (−1) 1−0

−1 − (−1)
[f (−1), f (0), f (1)] = = 0.
1 − (−1)

Remarque
On peut calculer les diérences divisées d'une manière plus organisée en se basant sur le schéma
suivant :
x f (x) 1ère diérence divisée 2ème diérence divisée n−ième diérence divisée
x0 f [x0 ]
x1 f [x1 ] f [x0 , x1 ]
x2 f [x2 ] f [x1 , x2 ] f [x0 , x1 , x2 ]
.. .. .. ...
. . .
xn f [xn ] f [xn−1 , xn ] f [xn−2 , xn−1 , xn ] ... f [x0 , . . . , xn ]

Proposition 4.1
La j -ième diérence divisée f [x0 , x1 , . . . , xj ] est indépendante de l'ordre des points x0 , x1 , . . . , xj ,
et on a :
j
X f (xi )
f [x0 , . . . , xj ] = Qj .
i=0 k=0,k6=i (xi − xk )

Définition 4.2
Soient x0 , x1 , . . . , xn , n + 1 points distincts de [a, b]. Les polynômes Ni dénis pour i = 0, . . . , n
par :
N0 (x) = 1
j−1
(x − xi ) pour j = 1, . . . , n,
Y
Nj (x) =
k=0

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


4.2. Interpolation de Newton 39

sont appelés polynômes de base de Newton associés aux points d'interpolation x0 , x1 , . . . , xn .


Proposition 4.2
Soit Pn l'espace des polynômes de degré inférieur ou égal à n à coecients dans R. La famille
{N0 (x), N1 (x), . . . Nn (x)} est une base de l'espace vectoriel Pn que l'on appelle base de Newton.

Démonstration. Puisque card {N0 (x), N1 (x), . . . .Nn (x)} = dim Pn (x) = n+1, il sut de montrer
que {N0 (x), N1 (x), . . . .Nn (x)} est un système libre. Soient C0 , C1 , . . . ., Cn des constantes vériant :
C0 N0 (x) + C1 N1 (x) + . . . + Cn Nn (x) = 0.
Posons F (x) = C0 N0 (x) + C1 N1 (x) + . . . + Cn Nn (x) = 0. Comme les xi sont supposés deux à
deux distincts, on obtient :
F (x0 ) = C0 N0 (x0 ) = 0 ⇐⇒ C0 = 0
F (x1 ) = C1 N1 (x1 ) = C1 (x1 − x0 ) = 0 ⇐⇒ C1 = 0
.........
F (xn ) = Cn Nn (xn ) = Cn (xn − x0 ) (xn − x1 ) . . . (xn − xn−1 ) = 0 ⇐⇒ Cn = 0

La famille {N0 (x), N1 (x), . . . Nn (x)} est donc libre et par suite c'est une base de Pn .

Théorème 4.3 (Polynôme d'interpolation de Newton)


Soit f une fonction numérique dénie sur un intervalle [a, b] contenant n + 1 points distincts
x0 , x1 , . . . , xn . Le polynôme Pn interpolant f aux points x0 , x1 , . . . , xn s'écrit sous forme :

Pn (x) = f [x0 ] + (x − x0 ) f [x0 , x1 ] + (x − x0 ) (x − x1 ) f [x0 , x1 , x2 ] + . . .


+ (x − x0 ) (x − x1 ) . . . (x − xn−1 ) f [x0 , . . . , xn ] .

Démonstration. Pn ∈ Pn et B = {N0 (x), N1 (x), . . . Nn (x)} est une base de Pn selon la pro-
position précédente, donc on peut écrire Pn (x) dans la base B . Plus précisément, en écrivant
Pn (x) = D0 N0 (x) + D1 N1 (x) + . . . + Dn Nn (x) pour x = xi et 0 ≤ i ≤ n, on obtient le système
triangulaire inférieur suivant :


 Pn (x0 ) = D0 = f (x0 )
 Pn (x1 ) = D0 + N1 (x1 ) D1 = f (x1 )



Pn (x2 ) = D0 + N1 (x2 ) D1 + N2 (x2 ) D2 = f (x2 )
.. ..
. .





Pn (xn ) = D0 + N1 (xn ) D1 + · · · + Nn (xn ) Dn = f (xn )

La résolution du système ci-dessus par la méthode de la descente permet de déduire les Di et par
suite la forme du polynôme d'interpolation de Newton.
Exemple
Calculons le polynôme d'interpolation de la fonction f (x) = x x2 − 1 relativement aux points


x0 = −1, x1 = 1 et x2 = 2.
On commence d'abord par dresser le tableau des diérences divisées :
xk f [xk ] f [xk , xk+1 ] f [x0 , x1 , x2 ]
-1 0
1 0 0
2 6 6 2

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


40 Interpolation polynomiale

En utilisant la base de Newton, on obtient donc :


P (x) = 0 + 0(x + 1) + 2(x + 1)(x − 1) = 2(x − 1)(x + 1).

4.3 Choix des points d'interpolation


Le theorème 4.2 montre que si nous voulons rendre l'erreur entre la fonction f et son polynôme
d'interpolation la plus petite possible, au sens de la norme sup, nous avons intérêt à choisir les points
d'interpolations (xi ) qui minimisent la quantité maxx∈[a,b] |Π(x)|. Il existe un unique ensemble de
points qui minimise cette quantité, on les nomme les points de Chebyshev. Lorsque [a, b] = [−1, 1],
ces points sont donnés par
 
2i + 1
xi = cos π , i = 0, . . . , n.
2(n + 1)
Par intuition, on peut penser que plus nous augmentons le nombre de points d'interpolation,
meilleure sera la précision de l'approximation fournie par le polynôme construit par la méthode de
Lagrange ou de Newton. Cela est évidement vrai pour une large catégorie de fonctions, la fonction
f (x) = cos(6x) en est un exemple (voir gure 4.1, où Pi est le polynôme d'interpolation de degré i
construit à partir de i + 1 points équidistants de [−1, 1]). Cependant cette règle intuitive reste fausse
en général. Le phénomène de Runge en est un exemple concret.

Figure 4.1 Interpolation de la fonction f utilisant des points équidistants sur [−1, 1]

En 1901, le mathématicien allemand Carl Runge a montré qu'en considérant la fonction f (x) =
1
, et en considérant des points d'interpolation équidistants, on obtient une mauvaise approxi-
1 + x2
mation de la fonction f surtout aux bords où l'erreur peut devenir extrêmement grande (voir gure
1
4.2 pour la fonction f (x) = ). De plus, l'erreur d'interpolation tend vers l'inni lorsque
1 + 25x2
le nombre de points augmente. Autrement dit, plus on utilise dans la construction du polynôme
d'interpolation Pn des points où on connaît la valeur exacte de f , moins bien sera l'approximation
qu'on va obtenir en dehors de ces points. On peut voir d'après la gure 4.3 que ce phénomène peut
être évité si nous choisissons comme points d'interpolation les abscisses de Chebychev. On note
cependant que le choix de ces points ne résout pas complètement le phénomène de Runge.

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


4.3. Choix des points d'interpolation 41

Figure 4.2 Interpolation de la fonction f utilisant des points équidistants sur [−1, 1]

Figure 4.3 Interpolation de la fonction f utilisant des points de Tchebychev sur [−1, 1]

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


Chapitre 5

Dérivation et intégration numérique

5.1 Dérivation numérique


La dérivation d'une fonction numérique paraît une opération simple, de ce fait, on peut se poser
la question de l'intérêt de développer des méthodes numériques capables d'eectuer cette tâche.
Cependant dans plusieurs cas, la forme analytique de la fonction n'est pas connue, et la dérivation
classique ne peut donc être eectuée. Toutefois, si on connaît les valeurs que prend la fonction en
certain points, l'évaluation numérique de la dérivée est possible. Il peut arriver aussi que la forme
analytique d'une dérivée soit compliquée à tel point que son utilisation engendre un très grand
nombre de calculs. Dans ce cas, il peut être beaucoup plus simple d'évaluer la dérivée numériquement.

5.1.1 Dérivée d'ordre 1


On peut aborder la dérivation numérique d'au moins deux façons. La première approche se base
sur la dérivation du polynôme d'interpolation de la fonction à dériver. Ainsi, pour évaluer la dérivée
d'une fonction connue aux points (xi , f (xi )) pour i = 0, 1, 2, · · · , n, il sut de dériver le polynôme
d'interpolation passant par ces points. De plus, le terme d'erreur associé à cette approximation de
la dérivée est tout simplement la dérivée de l'erreur d'interpolation. Ce résultat est vrai quel que
soit l'ordre de la dérivée. La deuxième approche consiste à utiliser le développement de Taylor, c'est
cette approche qui est adoptée dans ce cours.
Une idée simple pour approximer la valeur de la dérivée d'une fonction numérique en un point
x ∈ R est de revenir à la dénition :
f (x + h) − f (x)
f 0 (x) = lim
h→0 h
et d'utiliser au lieu d'un h tendant vers 0, un h "assez petit" :
f (x + h) − f (x)
f 0 (x) ' .
h
Dans la formule ci-dessus, il est clair que plus la valeur de h se rapproche de 0, plus l'approximation
de la dérivée est précise.
Une expression de l'erreur d'une telle approximation peut être obtenue à l'aide du développement
de Taylor-Lagrange. Si f est de classe C 2 sur [a, b] et si x + h appartient à [a, b], alors :

h2 00
f (x + h) = f (x) + hf 0 (x) + f (ξ), ξ ∈ (x, x + h).
2

42
5.1. Dérivation numérique 43

On obtient donc la formule :

f (x + h) − f (x) h 00
f 0 (x) = − f (ξ), ξ ∈ (x, x + h),
h 2
d'où, en éliminant le reste, on obtient de nouveau la formule :

f (x + h) − f (x)
f 0 (x) ' ,
h
appelé diérence décentrée avant d'ordre 1. La formule de diérence décentrée arrière est obtenue
en utilisant un développement de Taylor pour f (x − h). Plus précisément, on a :

f (x) − f (x − h)
f 0 (x) ' ,
h
Dans le cas de diérences centrées, on évalue la fonction f en x + h et en x − h :
h2 00 h3 000
f (x + h) = f (x) + hf 0 (x) + f (x) + f (ξ1 )
2 6
h2 h3 000
f (x − h) = f (x) − hf 0 (x) + f 00 (x) − f (ξ2 )
2 6
où ξ1 ∈ (x, x + h) et ξ2 ∈ (x − h, x). Par suite
f (x + h) − f (x − h) h2  000
f 0 (x) = f (ξ1 ) + f 000 (ξ2 ) ,


2h 12
ce qui veut dire que l'erreur de troncature est
h2  000
f (ξ1 ) + f 000 (ξ2 ) .


12
Si f 000 est une fonction continue sur [x − h, x + h], alors le théorème des valeurs intermédiaires assure
l'existence d'un point ξ ∈ (x − h, x + h) vériant
1  000
f 000 (ξ) = f (ξ1 ) + f 000 (ξ2 ) .

2
Il s'en suit que
f (x + h) − f (x − h) h2 000
f 0 (x) = − f (ξ),
2h 6
et on a alors
f (x + h) − f (x − h)
f 0 (x) ' .
2h

5.1.2 Dérivées d'ordre supérieur


Les formules de dérivées d'ordre supérieur, peuvent être trouvées aussi en utilisant les formules
de Taylor.
Par exemple, la formule de la dérivée seconde est donnée par :
f (x + h) + f (x − h) − 2f (x)
f 00 (x) '
h2

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


44 Dérivation et intégration numérique

obtenue en sommant les développements de Taylor suivants :


h2 00 h3 h4 (4)
f (x + h) = f (x) + hf 0 (x) + f (x) + f 000 (x) + f (η1 )
2 3! 4!
h 2 h 3 h4 (4)
f (x − h) = f (x) − hf 0 (x) + f 00 (x) − f 000 (x) + f (η2 )
2 3! 4!
x ≤ η1 ≤ x + h et x − h ≤ η2 ≤ x.
l'erreur est en O h2 .


Pour obtenir les formules de la troisième et la quatrième dérivée, on prend une combinaison
linéaire des développement de Taylor, pour f (x + 2h), f (x+ h), f (x − h) et f (x − 2h).
Les formules suivantes sont toutes d'ordre 2 :
1
f 0 (xi ) ' [f (xi+1 ) − f (xi−1 )]
2h
1
f 00 (xi ) ' 2 [f (xi+1 ) − 2f (xi ) + f (xi−1 )]
h
1
f 000 (xi ) ' 3 [f (xi+2 ) − 2f (xi+1 ) + 2f (xi−1 ) − f (xi−2 )]
2h
(4) 1
f (xi ) ' 4 [f (xi+2 ) − 4f (xi+1 ) + 6f (xi ) − 4f (xi−1 ) + f (xi−2 )]
h

5.2 Extrapolation de Richardson


La méthode d'extrapolation de Richardson est valable non seulement pour la dérivation numé-
rique, mais aussi pour l'intégration numérique, la résolution numérique des équations diérentielles,
etc. Cette technique permet l'accélération de la convergence d'une méthode d'approximation par
une technique que nous décrivons dans cette section.
Considérons une quantité g que l'on souhaite évaluer. Considérons, de plus, que nous disposons
d'une série d'approximations g̃h de g pour diérents pas h, h2 , h4 , h8 , . . . en progression géométrique.
Nous avons, de plus, lim g̃h = g . La formule d'approximation g̃ est par exemple une formule de
h→0
diérences centrées qui approxime une dérivée. Dans ce cas-ci et dans d'autres cas généraux, on
peut prouver que g̃ approxime g comme

g̃h = g + c1 h + c2 h2 + c3 h3 + · · · (5.1)
On voit que l'on dispose d'une approximation de g d'ordre linéaire. Grâce à d'astucieuses combi-
naisons linéaires, nous allons être capable de créer une approximation de g plus précise que toutes
celles dont nous disposons jusque là et ce, sans calculer de nouvelles approximations g̃ .
Nous disposons donc, au départ, d'une série d'approximations de g qui convergent linéairement.
Voyons à présent comment nous pouvons obtenir une suite qui converge quadratiquement. Ecrivons
(5.1) pour deux pas consécutifs. Nous avons
g̃h = g + c1 h + c2 h2 + c3 h3 + · · · (5.2)

h h2 h3
+ c2 + c3 + · · ·
g̃ h = g + c1 (5.3)
2 2 4 8
Pour se débarrasser du terme en h, il sut d'eectuer − 12 (5.2)+(5.3). Après cette opération, nous
obtenons donc  
1 1 1 3
g̃ h − g̃h = g − c2 h2 − c3 h3 + · · · (5.4)
2 2 2 4 8

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


5.2. Extrapolation de Richardson 45
 
Une nouvelle approximation de g est donc 2 g̃ h − 12 g̃h . En réalisant une telle combinaison
2
linéaire pour toute paire d'approximations consécutives, on obtient une nouvelle suite d'approxima-
tions. Mais cette suite converge quadratiquement vers g . Trouver cette combinaison linéaire adéquate
qui permet de se débarrasser du terme d'ordre inférieur est ce qu'on appelle l'extrapolation de Ri-
chardson.
Nous ne sommes pas obligés de nous arrêter en si bon chemin. Il est aussi possible de se débarras-
ser du terme d'ordre quadratique et d'obtenir une série d'approximations qui converge cubiquement
vers g . Pour ce faire, nous considérons la forme (5.4) écrite pour la paire h et h/2 ainsi que (5.4)
écrite pour la paire h/2 et h/4. Cela nous donne respectivement
  1 3
2g̃ h − g̃h = g − c2 h2 − c3 h3 + · · · (5.5)
2 2 4
  1 3
= g − c2 h2 − c3 h3 + · · ·
2g̃ h − g̃ h (5.6)
4 2 8 32
A présent pour éliminer le terme en h2 , nous allons réaliser − 14 (5.5)+(5.6). Nous obtenons donc
 
1 3 3 1
g̃h − g̃ h + 2g̃ h = g − c3 h3 + · · ·
4 2 2 4 4 32
La dernière équation nous donne donc une nouvelle suite d'approximations
1 8
g ' g̃h − 2g̃ h + g̃ h
3 2 3 4
qui converge cubiquement vers g . Nous pouvons bien entendu répéter le processus à l'inni.
Remarque
Dans toute la présentation de la méthode, nous avons considéré des pas qui se divisent à chaque
fois par 2. Le processus peut bien entendu être appliqué avec des pas qui se divisent par 3 ou
par 10, ou par n'importe quelle constante. Dans ce cas, la combinaison linéaire qui permet de se
débarrasser du terme d'ordre inférieur change également.
Exemple
Appliquons l'extrapolation de Richardson au cas du calcul de la dérivée d'ordre 1 d'une fonction.
Pour ce faire, nous partons de la formule de diérences centrées
 2
h4 (5)

f (x + h) − f (x − h) h (3)
0
f (x) = − f (x) + f (x) + . . . (5.7)
2h 3! 5!
Lors de la présentation de l'extrapolaton de Richardson, nous cherchions à approximer g . Cette
fois, notre g est en réalité f 0 (x). Pour supprimer le terme en h2 de (5.7), on eectue l'opération
f 0 ( h2 ) − 14 f 0 (h) en utilisant la formule (5.7). On obtient par suite l'approximation d'ordre 4 :
 
f (x+ h
2)
−f (x− h
2)
 
1 f (x+h)−f (x−h)
h − 4 2h
f 0 (x) ' 1
1− 4

qui peut aussi s'écrire sous forme


   
f (x+h)−f (x−h) 1 f (x+2h)−f (x−2h)
2h − 4 4h
f 0 (x) ' 1
1− 4

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


46 Dérivation et intégration numérique

d'où

−f (x + 2h) + 8f (x + h) − 8f (x − h) + f (x − 2h)
f 0 (x) ' .
12h

5.3 Intégration numérique


Lorsqu'on veut calculer une intégrale, on n'est pas toujours en mesure d'obtenir sa valeur exacte.
Il se peut que l'obtention d'une primitive soit impossible ouZ trop compliquée. Pour pallier à ce
b
problème, on cherche une approximation de l'intégrale I(f ) = f (x)dx par une somme de surfaces
a
de rectangles, de trapèzes ou d'autres formes géométriques dont on sait calculer l'aire. Considérons
une subdivision uniforme de l'intervalle [a, b] en n sous intervalles [xi−1 , xi ] , i = 1, . . . , n de même
b−a
longueur h = xi − xi−1 = . On a donc : x0 = a < x1 < . . . xi < xi+1 < . . . < xn = b où
n
xi = a + ih pour i = 0, 1, . . . , n, en particulier x0 = a et xn = b. Soit fi la restriction de la fonction
Z Z b Z x1 x2
f à chaque sous intervalle [xi , xi+1 ]. En écrivant f (x)dx = f (x)dx + f (x)dx + . . . . . . . +
a a x1
Z xn n−1
X Z xi+1
f (x)dx = f (x)dx, on peut alors obtenir des approximations de l'intégrale I(f ) en
xn−1 i=0 xi
approchant fi (x) par une fonction qui sera facile à intégrer sur [xi , xi+1 ]. Si In est la valeur approchée
de I(f ) obtenue par la méthode proposée, on dira que la méthode converge si on a lim In = I(f ).
n→∞

5.3.1 Méthode des rectangles


La méthode des rectangles à gauche consiste à approcher f par la fonction en escalier qui prend,
sur chaque segment de la subdivision, la même valeur à l'extrémité gauche de ce segment que f (voire
gure 5.1). Cela revient donc à interpoler la fonction f sur le segment [xi , xi+1 ] par le polynôme de
Lagrange de degré 0 qui vaut f (xi ). L'aireZdu rectangle de base [xi , xi+1 ] est f (xi ) (xi+1 − xi ), par
b
suite en notant Rn la valeur approchée de f (x)dx, on a :
a

n−1 n−1
X b−aX
Rn = f (xi ) (xi+1 − xi ) = f (xi )
n
i=0 i=0

car xi+1 − xi = h = (b − a)/n.

Exemple
En prenant n = 4 et en utilisant la méthode des rectangles à gauche, on a
Z 1
f (x)dx ≈ 0, 25 (f (0) + f (0, 25) + f (0, 5) + f (0, 75))
0
Z 1
Si f (x) = sin(x2 ), on obtient f (x)dx ≈ 0, 2108.
0

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


5.3. Intégration numérique 47

Figure 5.1

Remarque
On peut dénir similairement la méthode des rectangles à droite où
n−1
X
Rn = h f (xi+1 ) ,
i=0

et la méthode des rectangles (point milieu) :


n−1
X
Rn = h f ((xi + xi+1 ) /2) .
i=0

Théorème 5.1
Si f est de classe C 1 sur [a, b], alors la méthode des rectangles converge et on a plus précisément :
b max[a,b] | f 0 (x) |
Z
Rn − f (t)dt ≤ (b − a)2
a 2n

pour tout entier naturel n non nul.

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


48 Dérivation et intégration numérique

Démonstration. En utilisant la dénition de Rn , on a :


Z b n−1
X n−1
X Z xi+1
Rn − f (t)dt = f (xi ) (xi+1 − xi ) − f (t)dt
a i=0 i=0 xi
n−1
X Z xi+1 n−1
X Z xi+1
= (f (xi ) − f (t)) dt ≤ |f (xi ) − f (t)| dt
i=0 xi i=0 xi
n−1
X Z xi+1
≤ |xi − t| max | f 0 (x) | dt (d'après l'inégalité des accroissements nis)
[a,b]
i=0 xi
n−1 n−1
" #xi+1
X Z xi+1
0
X (t − xi )2
≤ (t − xi ) max | f (x) | dt ≤ max | f 0 (x) |
xi [a,b] 2 [a,b]
i=0 i=0 xi
n−1
X h2 h2 max[a,b] | f 0 (x)
≤ max | f 0 (x) |≤ n max | f 0 (x) |= (b − a)2
2 [a,b] 2 [a,b] 2n
i=0

5.3.2 Méthode des trapèzes


La méthode des trapèzes consiste à remplacer la courbe représentative de f , sur chaque seg-
ment [xi , xi+1 ], par le segment qui relie (xi , f (xi )) à (xi+1 , f (xi+1 )) (voire gure 5.2). Cela revient
donc à interpoler la fonction f sur le segment [xi , xi+1 ] par le polynôme de Lagrange de degré 1
aux points xi et xi+1 . L'aire du trapèze de base [xi , xi+1 ] est (xi+1 − x ) (f (xi ) + f (xi+1 )) /2 =
Z i b
h (f (xi ) + f (xi+1 )) /2, par suite en notant Tn la valeur approchée de f (x)dx, on a :
a

n−1 n−1
!
X f (a) + f (b) X
Tn = h (f (xi ) + f (xi+1 )) /2 = h + f (xi ) .
2
i=0 i=1

Figure 5.2

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


5.3. Intégration numérique 49

Exemple
En prenant n = 4 et en utilisant la méthode des trapèzes, on a
Z 1  
f (0) + f (1)
f (x)dx ≈ 0, 25 + f (0, 25) + f (0, 5) + f (0, 75)
0 2
Z 1
Si f (x) = sin(x2 ), on obtient f (x)dx ≈ 0, 3160.
0

Théorème 5.2
Si f est de classe C 2 sur [a, b], alors la méthode des trapèzes converge et on a plus précisément :
b max[a,b] | f 00 (x) |
Z
Tn − f (t)dt ≤ (b − a)3
a 12n2

pour tout entier naturel n non nul.

Démonstration. La méthode des trapèzes consiste à approcher f sur le segment [xi , xi+1 ] par son
polynôme d'interpolation Pi de degré 1 ayant les mêmes valeurs que f aux bornes de l'intervalle.
D'après le théorème 4.2, comme f est de classe C 2 , on a
f 00 (θx )
∀x ∈ [xi , xi+1 ] , f (t) − Pi (t) = (xi+1 − t) (t − xi ) ,
2
avec θx ∈ [xi , xi+1 ]. Donc
xi+1 xi+1
|f 00 (θx )|
Z Z
| (f (t) − Pi (t)) dt ≤ (xi1 − t) (t − xi ) dt
xi xi 2
max[a,b] | f 00 (x) |
Z xi+1
≤ (xi+1 − t) (t − xi ) dt
xi 2
max[a,b] | f 00 (x) |
Z xi+1 Z xi+1 
= (xi+1 − t) (t − xi+1 ) dt + (xi+1 − t) (xi+1 − xi ) dt
xi xi 2
| f 00 (x) | max[a,b] | f 00 (x) | h3
≤ (xi+1 − xi )3 ≤ .
12 12
Par suite, on peut conclure de la façon suivante
Z b n−1
X Z xi+1
Tn − f (t)dt = (Pi (t) − f (t)) dt
a i=0 xi
n−1
X Z xi+1
≤ |Pi (t) − f (t)| dt
i=0 xi
n−1
X | f 00 (x) | h3 max[a,b] | f 00 (x) | h3 00
3 max[a,b] | f (x) |
≤ =n = (b − a)
12 12 12n2
i=0

5.3.3 Méthode de Simpson


Cette méthode consiste à remplacer f , sur chaque segment [xi , xi+1 ] de la subdivision, par la
fonction polynômiale de degré inférieur ou égal à 2 qui prend les mêmes valeurs que f aux extrémités

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


50 Dérivation et intégration numérique

et au milieu ξi de ce segment (voire gure 5.3). La fonction f sera donc approchée sur le segment
[xi , xi+1 ] par son polynôme d'interpolation Pi de Lagrange de degré 2 ayant les mêmes valeurs que
Z b
f aux bornes de l'intervalle et en son milieu. La valeur approchée de f (x)dx par la méthode de
a
Simpson notée par Sn est alors donnée par
n−1
b−aX
Sn = (f (xi ) + f (xi+1 ) + 4f (ξi ))
6n
i=0
n−1 n−1
!
b−a X X
= f (a) + f (b) + 2 f (xi ) + 4 f (ξi ) ,
6n
i=1 i=0

où ξi = (xi + xi+1 ) /2 = xi + h/2.

Figure 5.3

Exemple
En prenant n = 4 et en utilisant la méthode de Simpson, on a
Z 1
f (x)dx ≈ 0, 25/6 (f (0) + f (1) + 2 (f (0, 25) + f (0, 5) + f (0, 75))
0

+4 (f (0, 125) + f (0, 375) + f (0, 625) + f (0, 875))).


Z 1
Si f (x) = sin(x2 ), on obtient f (x)dx ≈ 0, 3102.
0

Théorème 5.3
Si f est de classe C 3 sur [a, b], alors la méthode de Simpson converge et on a plus précisément :
b max[a,b] | f (3) (x) |
Z
Sn − f (t)dt ≤ (b − a)4
a 192n3

pour tout entier naturel n non nul. Si f est de classe C 4 sur [a, b], un résultat où la convergence
est plus rapide peut être obtenu :

Pr. M. Benzakour Amine, Analyse Numérique, SMI4


5.3. Intégration numérique 51

b max[a,b] | f (4) (x) |


Z
Sn − f (t)dt ≤ (b − a)5
a 2880n4

Pr. M. Benzakour Amine, Analyse Numérique, SMI4

Vous aimerez peut-être aussi