Cours Methodes Numeriques
Cours Methodes Numeriques
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.1 Définition de l’analyse numérique . . . . . . . . . 1
1.2 Analyse d’erreur . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1 Erreurs de modélisation . . . . . . . . . . . . . . 2
1.2.2 Erreurs de représentation sur ordinateur . . . . . 3
1.2.3 Erreurs de troncature . . . . . . . . . . . . . . . . 3
1.3 Notion d’erreurs . . . . . . . . . . . . . . . . . . . . . . . 3
1.4 Chiffres significatifs . . . . . . . . . . . . . . . . . . . . . 5
1.1 INTRODUCTION
1 de 45
temps ; La simulation numérique permet à partir de cet état initial de prévoir le temps qui
fera les jours suivants. Or cette simulation est la mise en œuvre sur ordinateur de méthodes de
résolutions numériques des équations mathématiques de la mécanique de fluide.
Nous nous sommes habitués à résoudre d’une façon analytiques un certain nombre de pro-
blèmes mathématiques. C’est le cas notamment des techniques d’intégration et de résolution
d’équations algébriques ou différentielles. Pour des problèmes plus compliqués l’analyse numé-
rique fournit plusieurs techniques de résolutions qui résultent en différents algorithmes.
Un ordinateur ne peut fournir que des solutions approximatives. Ces approximations dépendent
des contraintes physiques (espace mémoire, ...) et du choix des algorithmes retenus par le pro-
grammeur. Ces algorithmes dépendent de certains paramètres qui influent sur la précision du
résultat. Ces algorithmes dépendent de certains paramètres qui influent sur la précision du
résultat. De plus, on utilise en cours de calcul des approximations plus ou moins précises. Par
exemple, on peut remplacer une dérivée par une différence finie de façon à transformer une
équation différentielle en une équation algébrique. Le résultat final et son ordre de précision
dépendent des choix que l’on fait. Une partie importante de l’analyse numérique consiste donc
à contenir les effets des erreurs ainsi introduites, qui proviennent de trois sources principales :
• Erreurs de modélisation ;
• Erreurs de représentation sur ordinateur ;
• Erreurs de troncature.
2 de 45
modélisation, qui paraît acceptable à cette étape de l’analyse.
3 de 45
De plus, en multipliant par 100 %, on obtient l’erreur relative en pourcentage.
En pratique, il est difficile d’évaluer les erreurs absolue et relative, car on ne connaît géné-
ralement pas la valeur exacte de x et l’on n’a que x∗ . C’est pourquoi on utilise l’approximation
∆x
pour l’erreur relative. Dans le cas de quantités mesurées expérimentalement dont on ne
|x∗ |
connaît que la valeur approximative, on dispose souvent d’une borne supérieure pour l’erreur
absolue qui dépend de la précision des instruments de mesure utilisés. Cette borne est quand
même appelée erreur absolue, alors qu’en fait on a :
|x − x∗ | ≤ ∆x
x∗ − ∆x ≤ x ≤ x∗ + ∆x
et que l’on note parfois x = x∗ ± ∆x. On peut interpréter ce résultat en disant que l’on a estimé
la valeur exacte x à partir de x∗ avec une incertitude de ∆x de part et d’autre.
L’erreur absolue donne une mesure quantitative de l’erreur commise et l’erreur relative en
mesure l’importance. Par exemple, si l’on fait usage d’un chronomètre dont la précision est
de l’ordre du dixième de seconde, l’erreur absolue est bornée par 0,1 s. Mais est-ce une erreur
importante ? Dans le contexte d’un marathon d’une durée approximative de 2 h 20 min, l’erreur
relative liée au chronométrage est très faible :
0.1
= 0, 0000119
2 × 60 × 60 + 20 × 60
et ne devrait pas avoir de conséquence sur le classement des coureurs. Par contre, s’il s’agit d’une
course de 100 m d’une durée d’environ 10 s, l’erreur relative est beaucoup plus importante :
0.1
= 0, 01
10.0
soit 1 % du temps de course. Avec une telle erreur, on ne pourra vraisemblablement pas dis-
tinguer le premier du dernier coureur. Cela nous amène à parler de précision et de chiffres
significatifs au sens de la définition suivante.
4 de 45
1.4 CHIFFRES SIGNIFICATIFS
Definition 3
Si l’erreur absolue vérifie :
∆x ≤ 0, 5 × 10m
alors le chiffre correspondant à la méme puissance de 10 est dit significatif et tous ceux
à sa gauche, correspondant aux puissances de 10 supérieures à m, le sont aussi. On
arrête le compte au dernier chiffre non nul. Il existe une exception à la règle. Si le chiffre
correspondant à la me puissance de 10 est nul ainsi que tous ceux à sa gauche, on dit
qu’il n’y a aucun chiffre significatif. Inversement, si un nombre est donné avec n chiffres
significatifs, on commence à compter à partir du premier chiffre non nul à gauche et
l’erreur absolue est inférieure à 0, 5 fois la puissance de 10 correspondant au dernier
chiffre significatif.
En pratique, on cherchera à déterminer une borne pour ∆x aussi petite que possible
et donc la valeur de m la plus petite possible.
22
On obtient une approximation de π(x = π) au moyen de la quantité ,
7
22
x∗ = = 3, 142857... . On en conclut que :
7
Exemple
22
∆x = x − = 0.00126... = 0.126 × 10−2
7
Puisque l’erreur absolue est plus petite que 0.5 × 10−2 , le chiffre des centièmes est
significatif et on a en tout 3 chiffres significatifs (3,14).
Une méthode numérique est dite stable si elle donne de bons résultats quelque soit
la nature de ses données. Les données initiales qui vont être traités par ordinateur
sont souvent tronquées. Il faut donc que les méthodes numériques utilisées soient
insensibles aux petites variations des données initiales ; on dit dans ce cas que la
méthode numérique est bien conditionnée. Une méthode est mal conditionnée si de
petites variations sur les données peuvent produire de grandes perturbations sur les
résultats obtenues. Il faut donc prendre en compte tous ces paramètres au cours de
l’élaboration des méthodes numérique. En Analyse Numérique, pour résoudre un
5 de 45
problème donné, souvent le problème qui se pose n’est pas de trouver une méthode
numérique mais la difficulté réside dans la démonstration que ce problème est bien
conditionné et que la méthode utilisée est stable.
6 de 45
CHAPITRE 2
Systèmes d’équations linéaires
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2 Rappel mathématiques . . . . . . . . . . . . . . . . . . . 8
2.2.1 Les matrices . . . . . . . . . . . . . . . . . . . . . 8
2.2.2 Applications linéaires . . . . . . . . . . . . . . . . 11
2.3 Systèmes linéaires . . . . . . . . . . . . . . . . . . . . . . 13
2.4 Résolution des systèmes d’équations linéaires . . . . . . . 14
2.4.1 Motivation . . . . . . . . . . . . . . . . . . . . . . 14
2.4.2 Méthodes directes de résolution de systèmes li-
néaires . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4.3 Méthodes itératives de résolution de systèmes li-
néaires . . . . . . . . . . . . . . . . . . . . . . . . 25
2.1 INTRODUCTION
7 de 45
Ces calculs complexes requièrent des méthodes évoluées. La modélisation de ces types des
problèmes génère généralement des systèmes d’équations linéaires ou non linéaires de taille
considérable, qu’on doit résoudre à l’aide de méthodes efficaces qui minimisent le temps de
calcul et l’espace mémoire requis.
Dans ce chapitre, nous allons aborder les principales méthodes de résolution des systèmes
linéaires à savoir les méthodes de Gauss.
Dans la plupart des cas, nous traitons des matrices non singulières ou inversibles,
c’est-à-dire dont la matrice inverse existe. Nous faisons donc de révision systéma-
tique de l’algèbre linéaire élémentaire.
1. Addition de matrices
8 de 45
Definition 4
Soient A et B deux matrices ayant la même taille n × p. Leur somme C = A + B est la
matrice de taille n × p définie par
3 −2 0 5
Si A= et B=
1 7 2 −1
alors
Exemple
3 3
A+B = .
3 6
−2
Par contre si B′ = alors A + B′ n’est pas définie.
8
Definition 5
Le produit d’une matrice A = aij de Mn,p (K) par un scalaire α ∈ K est la matrice
αaij formée en multipliant chaque coefficient de A par α. Elle est notée α · A (ou
simplement αA).
Exemple
1 2 3 2 4 6
Si A= et α=2 alors αA = .
0 1 0 0 2 0
9 de 45
Matrices particulières
i > j =⇒ aij = 0.
Trace et déterminant
• Trace : dans le cas d’une matrice carrée de taille n × n, les éléments a11 , a22 , . . . , ann
sont appelés les éléments diagonaux, sa trace est la somme de ses termes diagonaux.
On a les propriétés suivantes :
• Déterminant : Le déterminant d’une matrice carrée (n, n) est noté det(A) ou encore
n
(−1)i+j aij det(Aij )
X
det(A) =
i=1
10 de 45
X
det(A) = ϵσ aσ(1),1 aσ(2),2 aσ(3),3 . . . aσ(n),n (2.1)
σ∈Sn
1. det(I) = 1,
2. det(AT ) = det(A)
3. det(AB) = det(A)det(B)
Théorème 1
Soient A une matrice carrée, alors
∃B ∈ Mn (K), AB = In ou ∃C ∈ Mn (K), CA = In
(AB)−1 = A−1 B −1
11 de 45
l’application linéaire :
Definition 7
On appelle application linéaire f : E −→ F , une application possédant les propriétés
suivantes :
• f (x + y) = f (x) + f (y) ∀x ∈ E ∀y ∈ F
• f (λx) = λf (x) ∀x ∈ E ∀λ ∈ K
On remarque que :
x1 a1,1 a1,2 . . . a1,j . . . a1,p x1
. .
.
. . . . . . . . . . . . . . . . . . . ..
f x
j = a
i,1 ai,2 . . . ai,j ... ai,p
xj
.. ..
.
.
... ... ... ... ... ...
xn an,1 an,2 . . . an,j . . . an,p xn
f : R3 −→ R3
Exemple
x 2x + 3y + z
f y = −x + 2z
z x − y + 4z
12 de 45
La matrice associée à l’application f est :
2 3 1
A = −1 0 2
1 −1 4
Definition 8
On appelle système linéaire S la donnée de n équations linéaires :
a11 x1 + a12 x2 + a13 x3 + · · · + a1n xn = b1
a21 x1 + a22 x2 + a23 x3 + · · · + a2n xn = b2
.. (2.2)
.
+ an2 x2 + an3 x3 + · · · + ann xn = bn
an1 x1
où x1 , x2 , . . .xp sont les p inconnues du système, k1 , k2 , . . .kn sont les n termes du second
membre ou constantes et les aij sont les n × p coefficients du système.
AX = b
où A est la matrice :
a11 a12 a13 . . . a1n
a21 a22 a23 . . . a2n
.
.. .. . . ..
(2.3)
.. . . . .
an1 an2 an3 . . . ann
13 de 45
2.4 RÉSOLUTION DES SYSTÈMES D’ÉQUATIONS LINÉAIRES
2.4.1 MOTIVATION
X = A−1 b
. et la discussion peut sembler close. Nous verrons cependant que le système linéaire 2.12 peut
devenir très grand, et donc difficile voire impossible à résoudre à la main. Pour comprendre
le problème, essayons de compter le nombre d’opérations nécessaires pour calculer la solution
en utilisant les formules de Cramer. Nous devons calculer n + 1 déterminants de taille n. On
sait que le déterminant de A est donné par la formule 2.1. L’ensemble Sn contient n! éléments
donc le calcul de det(A) se ramène à n! − 1 additions et n!(n − 1) multiplications soit au total
n!−1+n!(n−1) = nn!−1 opérations à virgule flottante. Comme nous avons n+1 déterminants
à calculer, le nombre d’opérations nécessaires pour résoudre le système à l’aide des formules de
Cramer est de (n + 1)(n × n! − 1) opérations à virgule flottante qui est équivalent quand la
dimension n tend vers l’infini à n(n + 1)!. Essayons d’évaluer cette quantité lorsque n = 100.
√
Pour ceci on peut utiliser la formule de Stirling n! ≃ nn+1/2 e−n 2π qui est très précise pour
évaluer la factorielle :
≃ 9, 4 × 10161
Par exemple, avec ordinateur fonctionnant à 100 megaflops (flops = opérations à virgule flot-
tante par secondes - floating point operations per second), il faudrait environ 3 × 10146 années
pour résoudre notre système !
On en déduit donc qu’il est impossible d’utiliser les formules de Cramer pour des systèmes
de grande taille. En pratique, on utilise les méthodes directes pour des systèmes de dimension
peu élevée (n ≤ 100). Pour de très grands systèmes qui peuvent par exemple apparaître en
économie ou pour l’approximation d’équations aux dérivées partielles.
14 de 45
2.4.2 MÉTHODES DIRECTES DE RÉSOLUTION DE SYSTÈMES LINÉAIRES
Definition 9
Une méthode de résolution d’un système linéaire est dite directe si la solution du système
peut être obtenue par cette méthode en un nombre fini et prédéterminé d’opérations.
L’idée des méthodes directes est de se ramener à la résolution d’un (ou de deux) système(s)
triangulaire(s). Ces méthodes reviennent souvent à écrire une décomposition de la matrice
A = BC, où B et C ont des propriétés particulières. Ainsi résoudre AX = b équivaut à
résoudre B(Cx) = b ce qui est équivalent à résoudre :
By = b,
puis
Cx = y.
1. Méthode de Gauss
La méthode d’élimination de Gauss consiste à éliminer tous les termes sous la diagonale
de la matrice A. La stratégie de résolution est basée sur la question suivante : quelles
opérations sont permises sur les lignes du système 2.12 pour le ramener à un système
triangulaire ? Ou encore : pour ramener un système linéaire quelconque à un système
triangulaire, quels sont les coups permis, c’est-à-dire ceux qui ne changent pas la solution
du système de départ ? Pour transformer un système quelconque en système triangulaire,
il suffit d’utiliser trois opérations élémentaires sur les lignes de la matrice qui sont :
L’algorithme de GAUSS
15 de 45
remontée (détermination de la solution du système linéaire). Pour la présenter, nous
allons prendre l’exemple suivant :
x + 2y + 2z = 2 L1
x + 3y − 2z = −1 L2
3x + 5y + 8z = 8
L3
On conserve la ligne L1 , qui sert de pivot pour éliminer l’inconnue x des autres
lignes ; pour cela, on retire L1 à L2 , et 3 fois L1 à L3 . On obtient :
x + 2y + 2z = 2 L1
y − 4z = −3 L′2 ← L2 − L1
−y + 2z = 2 L′3 ← L3 − 3L1
On conserve alors la ligne L2 qui sert de pivot pour éliminer y de la troisième ligne ;
pour cela, remplace la ligne L3 par L3 + L2 . On trouve :
x + 2y + 2z = 2 L1
y − 4z = −3 L′2
−2z = −1 L′′3 ← L3 + L2
16 de 45
Algorithm 1 Algorithme de GAUSS
Élimination
Require: matrice A, vecteur b
Ensure: Une matrice échelonnée A
for i=1 :n-1
for k=i+1 :n
Ak ← Ak − Ak,i /A,i × Ai ;
Endfor
Endfor
En faisant les opérations indiquées (le pivot a11 est 1), on élimine les termes
non nuls sous la diagonale de la première colonne et l’on obtient :
1 1 2 1 2
0 0 1 1 0
(2.5)
0
2 1 2 −4
0 0 2 4 −4
Ici, la procédure est interrompue par le fait que le nouveau pivot serait 0 et
qu’il n’est pas possible d’éliminer les termes sous ce pivot. Toutefois, on peut
encore, parmi les opérations élémentaires, inter-changer deux lignes. Le seul
17 de 45
choix possible dans cet exemple est d’intervertir la ligne 2 et la ligne 3. On se
rend immédiatement compte qu’il n’y a plus que des 0 sous le nouveau pivot
et que l’on peut passer à la colonne suivante :
1 1 2 1 2
0 2 1 2 −4
(2.6)
0 0 1 1 0
0 0 2 4 −4
X = [1 − 12 − 2]T
Complexité de l’algorithme
Notion de pivotage
La méthode précédente s’applique lorsque tous les pivots ne sont pas nuls. Si tel n’est pas
le cas, on recherche dans les équations suivantes un coefficient non nul.
Afin de diminuer les risques d’incidents numériques, le pivot choisi est le plus grand en
valeur absolue. Lorsque ce pivot est trouvé, on effectue les permutations nécessaires pour
faire apparaître ce nouveau pivot à la place du pivot nul. Il existe deux stratégies de
pivotation (recherche de pivot non nul) : la pivotation partielle et la pivotation totale.
— Stratégie de pivot partiel : A la k éme étape, on choisira comme pivot l’élément akik
18 de 45
vérifiant
|akik | = max |akip |
k≤p≤n
en dépit que la stratégie de pivot total est toujours plus sure, l’expérience
montre que la stratégie de pivot partiel est suffisamment robuste dans la
plupart des cas. Mentionnons que la stratégie de pivot total est plus coûteuse.
De plus, il existe une classe importante de matrices ou‘ il n’est pas nécessaire
d’utiliser une stratégie de pivot, c’est le cas des matrices symétriques définies-
positives.
Exercice 1
Utiliser l’algorithme de GAUSS (avec pivotation partielle puis pivotation totale) pour
résoudre le système linéaire suivant (le mettre sous la forme Ax=b) :
2x + 4y − z + 5t = −10
x + 2y + 7t = −13
x+y + 3z + t = 4
+ 2z + 4t = −5
2x + y
2. La décomposition LU
Principe de la méthode
Supposons qu’on doive, dans un programme donné, résoudre plusieurs fois le même sys-
tème linéaire AX = b, avec différents seconds membres b, mais la même matrice A. Si tous
les seconds membres b sont initialement connus, on peut alors effectuer simultanément
sur tous les seconds membres les manipulations intervenant dans l’élimination de Gauss.
Le plus souvent, dans la pratique, il s’agit de résoudre des systèmes avec des b calculés
au cours du processus et donc inconnus initialement. Il n’est alors pas raisonnable de
recommencer la triangulation de Gauss à chaque résolution : il faut conserver ce résultat
19 de 45
qui consiste en fait à factoriser la matrice A sous la forme A = LU ou L est une matrice
triangulaire inférieure et U une matrice triangulaire supérieure (L pour lower, U pour
upper) : on conservera en mémoire L et U . Par la suite, tout système
AX = b =⇒ LU X = b
Il s’agit alors de systèmes triangulaires qui se résolvent par une méthode de descente puis
de remontée, soit un nombre d’opérations égal à 2n2 .
Théorème 2
Soit A une matrice inversible. Une condition nécessaire et suffisante pour que A soit
décomposable en un produit LU est que tous ses mineurs principaux soient différents de
zéro.
— L’unicité de la décomposition
Proposition 1
20 de 45
Décomposition de Croûte
Pour obtenir cette décomposition, on doit déterminer les coefficients lij et uij des matrices
L et U de telle sorte que A= LU . En imposant que la diagonale de U soit composée de
1, on doit avoir :
a11 a12 a13 . . . a1n l11 0 0 ... 0 1 u12 u13 . . . u1n
a21
a22 a23 . . . a2n l
l 0 ... 0 0 1 u23 . . . u2n
= 21 22
.
.. .. . . .. . .. .. .. ..
. .. .. . . ..
(2.9)
.. . . . . .. . . . . .. . . . .
an1 an2 an3 . . . ann ln1 ln2 ln3 . . . lnn 0 0 0 ... 1
21 de 45
iii. Produit des lignes de L par la deuxième colonne de U . Les différents produits
donnent :
l21 u12 + l22 = 9, l22 = 9 − l21 u12 = 1,
l31 u12 + l32 = 6, =⇒ l32 = 6 − l31 u12 = 2,
l41 u12 + l42 = 15 l42 = 15 − l41 u12 = 3.
l41 u14 + l42 u24 + l43 u34 + l44 = 40 =⇒ l44 = 40 − l41 u14 − l42 u24 − l43 u34 = 1
Exercice 2
Soit le système :
3 −1 2 x 12
1 2 3
y
= 11
2 −2 1 z 2
22 de 45
Algorithm 2 Décomposition de Crout
Entrées : matrice A.
Sortis : matrices L et U satisfaisant A = LU
— Fixant la diagonale de la matrice U à 1 : Uii = 1 i = 1, . . . , n
— Première colonne de L : li1 ← ai1 i = 1, . . . , n
— Première ligne de U : u1i ← a1i /l11 i = 1, . . . , n
j−1
X
— Les valeurs de lij :lij ← aij − ljk ukj j≤i
k=1
i−1
1 X
— Les valeurs de uij :uij ← (aij − lik ukj ) j>i
lii k=1
L’algorithme précédent ne fonctionne que si les pivots lii sont tous non nuls.
Ce n’est pas toujours le cas et il est possible qu’il faille permuter deux lignes
pour éviter cette situation, tout comme pour l’élimination de Gauss. Le co-
efficient lii est encore appelé pivot.
Exemple
0 2 1 x 1
1 0 0
y
= 2
3 0 1 z 3
3. Factorisation de Cholesky
Théorème 3
Si A est une matrice symétrique réelle définie positive, il existe au-moins une matrice B
triangulaire inférieure telle que A = LLT . De plus, on peut imposer que les coefficients
diagonaux de B soient strictement positifs et alors la décomposition est unique.
Dans le cas où la matrice est symétrique, on peut diminuer l’espace mémoire nécessaire à
la résolution d’un système linéaire. la factorisation de Cholesky qui consiste à décomposer
A sous la forme LLT où L est encore ici une matrice triangulaire inférieure. La matrice
triangulaire supérieure U de la décomposition LU est ainsi remplacée par la matrice
transposée de L, réduisant ainsi l’espace mémoire nécessaire. Si on souhaite résoudre un
système linéaire, on procède encore ici en deux étapes. On résout d’abord le système
triangulaire inférieur LY = b et ensuite le système triangulaire supérieur LT X = Y . On
refait donc le même raisonnement qui nous a mené à la décomposition LU générale mais
23 de 45
cette fois en considérant une matrice A symétrique :
a11 a12 a13 . . . a1n l11 0 0 ... 0 l11 l21 l31 . . . ln1
a21
a22 a23 . . . a2n l
l 0 ... 0 0 l22 l32 . . . ln2
= 21 22
. .. .. . . . (2.12)
... .. .. .. . .. .. . . ..
.. ..
. .. .
. . . . . . .
. . . .
an1 an2 an3 . . . ann ln1 ln2 ln3 . . . lnn 0 0 0 . . . lnn
√
2 l11 = a11 ,
a11 = l11 ,
a21
a21 = l21 l11 , =⇒ 21 l = ,
l11
a31
a31 = l31 l11 l31 =
l11
qui complète le calcul de la première colonne de L. Notons que le pivot l11 doit être non
nul. On poursuit avec le calcul de la deuxième colonne :
q
2
2 2 l22 = a22 − l21 ,
a = l21 + l22 ,
22
=⇒
a32 − l31 l21
a
32 = l31 l21 + l32 l22 l32
=
l22
q
2 2 2 2 2
Enfin : a33 = l31 + l32 + l33 qui entraîne que l33 = a33 − l31 − l32 .
1 1 1 1
1 5 5 5
1 5 14 14
1 5 14 15
24 de 45
Algorithm 3 Factorisation de Cholesky
Entrées : matrice symétrique A.
Sortis : matrice L qui satisfait A = LLT
√
— Première Premier pivot l11 : li1 ← a11 i = 1, . . . , n
— Première colonne de L : li1 ← ai1 /l
v11 i = 2, . . . , n
u
u k−1
X
— Terme diagonal (pivot) lii : lii ← takk − a2kj k = 2, . . . , n
u
j=1
k−1
éme 1 X
— k colonne de L : lik ← (aik − lij lkj ) i>k
lkk j=1
On dit qu’une méthode itérative est convergente si pour tout choix initial x(0) ∈ Rn , on
a : (xk ) −→ x lorsque k −→ ∞
25 de 45
Principe des méthodes itératives :
Le principe de base de de telles méthodes est d’engendrer une suite de vecteurs xk (les itérés)
convergente vers la solution x∗ du système linéaire Ax = b. On veut que cette suite soit simple
à calculer. Une idée naturelle est de travailler avec une matrice P inversible qui soit “proche” de
A, mais plus facile que A à inverser. On appelle matrice de pré-conditionnement cette matrice
P. On écrit alors : A = P − (P − A).
Posons : P − A = N , Nous avons alors :
AX = b ⇐⇒ (P − N )X = b ⇐⇒ P X = N X + b
Sous cette forme, et à partir d’un choix initial X (0) donné nous cherchons à approcher la solution
du problème par la méthode itérative suivante :
X (0) ∈ Rn
(2.13)
P X k+1 = N Xk + b
A chaque itération, nous devons résoudre un système linéaire de matrice P pour calculer X k+1
en fonction de X k .
Montrons que cette méthode, si elle converge, approche bien la solution du système
AX = b :
Soit X ∗ solution de AX = b,
On a P X k+1 = N X k + b pour tout k ∈ N, donc à la limite : X k −→ X ∞ lorsque
k −→ ∞, alors,
P X∞ = N X∞ + b
P X ∞ = (P − A)X ∞ + b
AX ∞ = b
26 de 45
Definition 12: Erreur d’approximation
ek = X k − X
e(k+1) = X k+1 − X
P X k+1 = N X k + b
équivalent à
X k+1 = P −1 N X k + P −1 b
de même
AX = b = P X − N X
ek = (P −1 N )k e(0)
Tout le problème consiste dès lors à bien choisir la décomposition P − N . Les trois décom-
27 de 45
positions proposées ci-dessous sont deux méthodes les plus connues. Soit A une matrice d’ordre
n telle que aii ̸= 0. On décompose A sous la forme : A = D − E − F avec :
1. D : la diagonale de A
1. Méthode de Jacobi :
Dans cette méthode, nous prenons : P = D, N = E + F La méthode de Jacobi s’exprime
donc par la suite :
X (0) ∈ Rn donné
(2.14)
DX k+1 k
= (E + F )X + b k ≥ 1
Il est facile à chaque itération de calculer X k+1 en fonction de X k car la matrice diagonale
D est inversible.
n
xk+1 aij xkj + bi )/aii
X
i = (−
j=1,j̸=i
2. Méthode de Gauss-Seidel :
Dans cette méthode, nous prenons ; P = D − E, N = F La méthode de Gauss-Seidel
s’exprime donc par la suite :
X (0) ∈ Rn donné
(2.15)
(D − E)X k+1 k
= FX + b k ≥ 1
i−1 n
xk+1 aij xk+1 aij xkj + bi )/aii
X X
i = (− j −
j=1,j̸=i j=i+1
28 de 45
On appelle la matrice G = (D−E)−1 F la matrice d’itération de Gauss-Seidel. La méthode
de Jacobi converge ssi ρ(G) < 1.
3. Méthode de relaxation :
C’est une méthode intermédiaire entre les deux méthodes précédentes. Nous mettons un
peu de diagonale de chaque côté en posant Dans cette méthode, nous prenons ; P =
1 1−ω
D − E, N = D + F , où ω ̸= 0 est un paramètre de relaxation.
ω ω
La méthode de relaxation s’exprime donc par la suite :
X (0) ∈ Rn donné
(2.16)
1
( D − E)X k+1
1−ω
D + F )X k + b k ≥ 1
=(
ω ω
i−1 n
xk+1 aij xk+1 aij xkj + bi )/aii
X X
i = (− j −
j=1,j̸=i j=i+1
Exercice 3
Résoudre le système :
9x1 − 2x2 + x3 = 13
−x1 + 5x2 + −x3 = 9
x1 − 2x2 + 93x3 = −11
29 de 45
CHAPITRE 3
Équations non linéaires
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.2 Méthode de Newton . . . . . . . . . . . . . . . . . . . . 31
3.2.1 Interprétation géométrique . . . . . . . . . . . . . 31
3.2.2 Analyse de convergence . . . . . . . . . . . . . . . 32
3.3 Méthode de Sécante . . . . . . . . . . . . . . . . . . . . . 33
3.3.1 Analyse de convergence . . . . . . . . . . . . . . . 34
3.4 Méthode de Sécante . . . . . . . . . . . . . . . . . . . . . 35
3.1 INTRODUCTION
L’objectif des méthodes présentées ici est de résoudre pour des fonctions numériques, des
équations de la forme f (x) = 0. Puisque’il n’existe pas de formule générale pour des fonctions
aussi simples que des polynômes, il est peu probable que l’on puisse résoudre analytiquement
des équations non linéaires. Il faudra donc recourir aux méthodes numériques. Dans ce qui
suit, nous verrons plusieurs méthodes pour y arriver. Dans ce cours on va etudier certaines
méthodes itérative dont le principe est le suivant : on élabore une fonction ϕ continue telle que
f (x) = 0 =⇒ ϕ(x) = x pourx ∈ [a, b]. Puis on construit une suite (xn+1 = ϕ(x)) en partant
d’un point initial x0 ∈ [a, b]. Cette suite converge vers x∗ solution de f (x) = 0.
30 de 45
3.2 MÉTHODE DE NEWTON
La méthode de Newton est l’une des méthodes les plus utilisées pour la résolution des
équations non linéaire pour des fonctions f assez régulières. Cette méthode possède également
une belle interprétation géométrique. L’idée de cette méthode est de remplacer la fontion non
linéaire f (x) par son approximation affinée en se basant sur l’utilisation du développement de
Taylor.
À partir d’une valeur initiale x0 de la solution, on cherche une correction δx telle que : f (x0 +
δx) = 0 Le développement de Taylor de f au voisinage de x0 d’ordre 1 est :
Donc on a
0 = f (x0 ) + f ′ (x0 )δx
et la correction
f (x0 )
δx = −
f ′ (x0 )
Puisque nous avons négligé les termes d’ordre supérieur à 1 dans le développement de Taylor,
cette correction n’est pas parfaite et l’on pose : x1 = x0 + δx.
On recommence le processus en cherchant à corriger x1 d’une nouvelle quantité δx. On obtient
alors la définition suivante :
(0)
∈ Rdonné
x
f (xn ) (3.1)
n+1
x = xn − ′ n∈N
f (xn )
La figure 3.2.1 permet de donner une interprétation géométrique assez simple de la méthode
de Newton. Sur cette figure, on a représenté la fonction f (x), la valeur initiale x0 et le point
(x0 , f (x0 )) qui est sur la courbe. La droite tangente à la courbe en ce point est de pente f (x0 )
et a pour équation :
y = f (x0 ) + (x − x0 )f ′ (x0 )
31 de 45
qui correspond au développement de Taylor de degré 1 autour de x0 . Cette droite coupe l’axe
des x en y = 0, c’est-à-dire en :
f (x0 )
x1 = x 0 −
f ′ (x0 )
qui devient la nouvelle valeur estimée de la solution. On reprend ensuite le même raisonnement
à partir du point (x1 , f (x1 )) et ainsi de suite.
1. f de classe C 2
2. f (x∗ ) = 0
si f ′ (x∗ ) ̸= 0 Alors
la suite :
(0)
∈ Rdonné
x
f (xn ) (3.2)
n+1
x = xn − ′ n∈N
f (xn )
converge vers x∗ .
32 de 45
De plus, si f ”(x) garde un sign constante (f ”(x) ̸= 0) on a la majoration de l’erreur :
Proposition 2
√
On veut calculer 2 en résolvant : f (x) = x2 − 2 = 0.
√ √
Dans ce cas on a f ′ (x) = 2x et f ′ ( 2) = 2 2 ̸= 0, On doit donc s’attendre à une
convergence quadratique, ce que l’on peut constater dans le tableau suivant.
Méthode de Newton
Exemple
n xn e
0 2
1 1.5 0.5
2 1,416 6666 0.0833334
3 1,414 2157 0.0024509
4 1,414 2136 0.0000021
Tout comme c’était le cas avec la méthode des points fixes, la convergence de la
méthode de Newton dépend de la valeur initiale x0 . Malgré ses belles propriétés
de convergence, une mauvaise valeur initiale peut provoquer la divergence de cette
méthode.
33 de 45
de la pente f (xn ) de la droite tangente à la courbe par l’expression suivante :
f (xn ) − f (xn−1 )
f ′ (x) =
xn − xn−1
Cela revient à utiliser la droite sécante passant par les points (xn , f (xn )) et (xn−1 , f (xn−1 ))
plutôt que la droite tangente passant par (xn , f (xn )). Ce choix est représenté à la figure 3.3. Il
en résulte l’algorithme suivant.
∈ Rn donné
x(0) , x(1)
Soit f : R −→ R une fonction de classe C 2 et (x∗ ) un zéro de f (x∗ ) tel que f ′ (x∗ ) ̸= 0.
Alors il existe un voisinage I de (x∗ ) tel que la suite définie par :
∈ Rdonné
x(0) , x(1)
34 de 45
existe et converge vers (x∗ )
De plus, si f ”(x) garde un signe constante (f ”(x) ̸= 0) on a
1 √
où p = (1 + 5)
2
Les phénomènes non linéaires sont extrêmement courants en pratique. Ils sont sans doute
plus fréquents que les phénomènes linéaires. Dans cette section, nous examinons les systèmes
non linéaires et nous montrons comment les résoudre à l’aide d’une suite de problèmes linéaires,
auxquels on peut appliquer diverses techniques de résolution étudiées dans le chapitre 2. Le
problème consiste à trouver le ou les vecteurs x = [x1 x2 x3 ...xn ]T vérifiant les n équations non
linéaires suivantes :
f1 (x1 , x2 , x3 , . . . , xn ) =0
f (x , x , x , . . . , x ) =0
2 1 2 3 n
.. (3.5)
.
fn (x1 , x2 , x3 , . . . , xn )
=0
où les fi sont des fonctions de n variables que nous supposons différentiables. Contrairement
aux systèmes linéaires, il n’y a pas de condition simple associée aux systèmes non linéaires qui
permette d’assurer l’existence et l’unicité de la solution. Le plus souvent, il existe plusieurs
solutions possibles et seul le contexte indique laquelle est la bonne. Les méthodes de résolution
des systèmes non linéaires sont nombreuses. Notamment, presque toutes les méthodes du cha-
pitre 2 peuvent être généralisées aux systèmes non linéaires. Pour éviter de surcharger notre
exposé, nous ne présentons que la méthode la plus importante et la plus utilisée en pratique,
soit la méthode de Newton. C’est à peu près la même idée que dans R. Nous remplaçons f ′ par
une matrice des dérivées partielles appelé "La Jacobienne" noté J. On aura alors :
X (0) ∈ Rn donné
(3.6)
X n+1 = X n − J −1 (X n )f (X n ) n ∈ N
35 de 45
En multipliant la formule de récurrence par J(X n ) on aura le système linéaire :
X (0) ∈ Rn donné
J(X )(X n n
− X n+1 ) − f (X n ) = 0 n ∈ N (3.7)
J(X n )(X n − X n+1 ) = f (X n )
∂f1 ∂f1 ∂f1
(X) (X) . . . (X)
∂x1 ∂x2 ∂xn
∂f2 ∂f2 ∂f2
∂x (X) (X) . . . (X)
J = 1 ∂x2 ∂xn
(3.8)
.. .. .. ..
. . . .
∂fn ∂fn ∂fn
(X) (X) . . . (X)
∂x1 ∂x2 ∂xn
et b= f (X n )
f1 (X)
f2 (X))
b=
..
(3.9)
.
fn (X)
Exercice 4:
n cherche à trouver l’intersection de la courbe x2 = ex1 et du cercle de rayon 4 centré à
l’origine d’équation x21 + x22 = 16. L’intersection de ces courbes est une solution de :
ex1 − x2 = 0
x2
+ x22 − 16 = 0
1
36 de 45
1. Itération k=1 on a le système linéaire :
2.8
e −1 y11 e2.8 − 2.8
= (3.11)
2(2.8) 2(2.8) y21 (2.8)2 + (2.8)2 − 16
37 de 45
CHAPITRE 4
Interpolation
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 38
4.2 Interpolation de Lagrange . . . . . . . . . . . . . . . . . 39
4.2.1 Base de Lagrange . . . . . . . . . . . . . . . . . . 39
4.2.2 Interpolation de Lagrange . . . . . . . . . . . . . 40
4.3 Polynôme de Newton . . . . . . . . . . . . . . . . . . . . 41
4.1 INTRODUCTION
On se donne un ensemble de points (xi , fi ), les xi sont appelés abscisses ou noeuds d’inter-
polation tandis que les couples ((xi , f (xi )) pour i = 0, 1, 2, ..., n) sont les points de collocation
ou points d’interpolation obtenus suite à une mesure expérimentale (fi représente la tempé-
rature, pression, débit, ....) peut-on construire une approximation de f (x), et ce, pour tout x
pour connaître la valeur de la fonction mesurée en d’autres points dans le domaine ? Il s’agit
d’un problème d’interpolation, dont la solution est relativement simple. Il suffit de construire
un polynôme de degré suffisamment élevé dont la courbe passe par les points de collocation
P (xi ) = f (xi ).
Il y a cependant des éléments fondamentaux qu’il est important d’étudier. En premier lieu, il
convient de rappeler certains résultats cruciaux relatifs aux polynômes, que nous ne démontrons
pas.
38 de 45
Théorème 7
Un polynôme de degré n dont la forme générale est :
avec an ̸= 0 possède, tenant compte des multiplicités, très exactement n racines qui
peuvent être réelles ou complexes conjuguées. Rappelons que r est une racine de Pn (x) si
Pn (r) = 0
Proposition 3
Par (n + 1) points de collocation d’abscisses distinctes ((xi , f (xi )) pour i = 0, 1, 2, ..., n),
on ne peut faire correspondre qu’un et un seul polynôme de degré n.
Definition 13
L’unique polynôme de degré n passant par les points (xi , f (xi )) pour i = 0, 1, 2, ..., n, est
appelé l’interpolant de f (x) de degré n aux abscisses (noeuds) x0 , x1 , ..., xn .
39 de 45
Réciproquement, pour i fixé, il existe un unique polynôme li vérifiant les trois propriétés pré-
cédentes.
Definition 14
Les polynômes Li (x) sont les polynômes de Lagrange de Rn [X] associés aux points
x0 , x1 , ..., xn .
Soit f une fonction donnée définie sur R à valeurs dans R et x0 , x1 , ..., xn , n + 1 réels donnés
distincts. Interpoler la fonction f par un polynôme de degré n aux points x0 , x1 , ..., xn consiste
à trouver un polynôme P de degré ≤ n tel que :
n
X
P (x) = f (xi )Li (x)
i=0
On doit calculer le polynôme passant par les points (0 , 1), (1 , 2), (2 , 9) et (3 , 28).
Si l’on cherche le polynôme de degré 3 passant par les 4 points on doit construire
quatre fonctions Li (x).
Exemple
40 de 45
L’interpolation de Lagrange donne dans ce cas :
qui est l’expression du polynôme de degré 3 passant par les 4 points donnés. Enfin,
le polynôme calculé permet d’obtenir une approximation de la fonction inconnue
f (x) partout dans l’intervalle contenant les points de collocation, c’est-à-dire [0 ,
3]. Ainsi, on a : f (2.5) = P3 (2.5) = (2.5)3 + 1 = 16.625
Pn (x) = a0
+ a1 (x − x0 )
+ a2 (x − x0 )(x − x1 )
+.
41 de 45
ficients ai de telle sorte que Pn (x) passe par les (n + 1) points de collocation (xi , f (xi )) pour
i = 0, 1, 2, ..., n. On doit donc s’assurer que :
Les coefficients de la forme ?? s’annulent tous en x = x0 , sauf le premier. On peut ainsi montrer
que :
Pn (x0 ) = a0 = f (x0 )
f (x1 ) − f (x0 )
a1 =
(x1 − x0 )
Definition 15
On définit les premières différences divisées de la fonction f (x) par :
f (xi+1 ) − f (xi )
f [xi , xi+1 ] =
(xi+1 − xi )
a1 = f [x0 , x1 ] (4.3)
42 de 45
Le troisième coefficient (a2 ) est à son tour déterminé par :
Pn (x2 ) = a0 +a1 (x2 −x0 )+a2 (x2 −x0 )(x2 −x1 ) = f (x0 )+f [x0 , x1 ](x1 −x0 )+a2 (x2 −x0 )(x−x1 ) = f (x2 )
Definition 16
Les deuxièmes différences divisées de la fonction f(x) sont définies à partir des premières
différences divisées par la relation :
De même, les n-ièmes différences divisées de la fonction f (x) sont définies à partir des
(n − 1)-ièmes différences divisées de la façon suivante :
Notons que les toutes premières différences divisées de f (x) (soit les 0-es différences) sont
tout simplement définies par f (xi ).
passe par les trois premiers points de collocation. On remarque de plus que ce
polynôme de degré 2 s’obtient simplement par l’ajout d’un terme de degré 2 au
polynôme P1 (x) déjà calculé. En raison de cette propriété, cette méthode est dite
récursive.
43 de 45
On peut soupçonner à ce stade-ci que le coefficient a3 est :
a3 = f [x0 , x1 , x2 , x3 ] (4.5)
Théorème 8
L’unique polynôme de degré n passant par les (n + 1) points de collocation ((xi , f (xi ))
pour i = 0, 1, 2, ...., n) peut s’écrire selon la formule d’interpolation de Newton ?? ou
encore sous la forme récursive :
Calculer le polynôme passant par les points : (0 , 1), (1 , 2), (2 , 9) et (3 , 28) par
l’interpolation de Newton
44 de 45
Suivant la formule de Newton avec x0 = 0, le polynôme de collocation est :
qui est le même polynôme (en vertu de l’unicité) que celui obtenu par la méthode
de Lagrange.
Si l’on souhaite ajouter un point de collocation et calculer un polynôme de degré
4, il n’est pas nécessaire de tout recommencer. Par exemple, si l’on veut inclure le
point (5 , 54), on peut compléter la table de différences divisées déjà utilisée.
45 de 45