Vous êtes sur la page 1sur 53

1

Université Hassan II de Casablanca

Ecole Nationale Supérieure d'Electricité et de Mécanique

Documents Pédagogiques : Polycopié d'Analyse Numérique Pour

Ingénieurs

1ère Année : Filières Génie Mécanique: PIP, QMSI, CMPI et GSM

Année Universitaire 2018 - 2019

Pr Hamid El Ouardi

Email : h.elouardi@ensem.ac.ma
2

Introduction :

L'objectif de ce cours d'Analyse Numérique est d'exposer quelques méthodes numériques de

résolution et de montrer comment un problème mathématique complexe peut se ramener à une

succession d'opérations simples. J'ai évité de faire trop de théorie parce que mon objectif n'est

pas ici de justier en pronfondeur ni d'étudier en détail, mais seulement d'informer et de suciter

l'interêt.

Ce cours d'Analyse Numérique est écrit pour les élèves ingénieurs de l'ENSEM. En général, le

volume horaire alloué à l'enseignement de l'Analyse Numérique ne permet pas d'enseigner toutes

les méthodes et toutes les techniques.

Ce document est un support de cours : la participation à une formation et les lectures re-

commandées sont essentielles pour une bonne maîtrise du sujet. Toute approche théorique est

volontairement écartée ; le maintien d'une rigueur nécessaire en est d'autant plus dicile et par-

fois délicat. Une telle approche facilitant la découverte des concepts fondamentaux, est un premier

pas vers une formation plus théorique pour tous ceux qui ont les connaissances requises. Chacun

sait combien la qualité de la présentation d'un texte pédagogique contribue à sa compréhension.

Chaque chapitre propose : le cours proprement dit, composé des dénitions, propriètés et

théorèmes dont la connaissance est indispensable. Ce cours est illustré d'exemples importants et

d'exercices d'applications corrigés en travaux dirigés. Des cas pratiques de synthèse qui visent

à l'assimilation du cours et à l'acquisition de techniques classiques de résolution pratiques de

problèmes réels seront traités en travaux pratiques.

Il y a dans ce polycopié assez de matières pour l'utiliser comme un document de base pour la

formation d'ingénieurs.

Pr : Hamid El Ouardi

Enseignant Chercheur à l'E.N.S.E.M

E-Mail : h.elouardi@ensem.ac.ma
Table des matières

1 Equations non linéaires 7


1 Exemples et motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.1 Exemple 1 : Equation d'état d'un gaz . . . . . . . . . . . . . . . . . . . . . 8

1.2 Exemple 2 : problème nancier . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.3 Position du problème . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2 L'algorithme de dichotomie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.1 Convergence de l'algorithme de dichotomie . . . . . . . . . . . . . . . . . . 9

3 Méthodes des approximations successives . . . . . . . . . . . . . . . . . . . . . . . 10

3.1 Déniton et hypothèses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

3.2 Convergence de la méthode des approximations successives . . . . . . . . . 10

3.3 Critère d'arrêt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

4 Méthode de la sécante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

4.1 Convergence de l'algorithme . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

5 Méthode de Newton - Raphson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

5.1 Convergence de l'algorithme . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

6 Comparaison des algorithmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

7 Sytèmes Non Linéaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

8 Travaux Dirigés (correction en classe) . . . . . . . . . . . . . . . . . . . . . . . . . 14

2 Interpolation 17
1 Exemples et motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

1.1 Exemple 1 : étude expérimentale . . . . . . . . . . . . . . . . . . . . . . . . 17

1.2 Exemple 2 : masse volumique d'un matériau . . . . . . . . . . . . . . . . . . 18

2 Interpolation polynômiale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2.1 Interpolation polynômiale : existence et unicité . . . . . . . . . . . . . . . . 18

3 Pr Hamid El Ouardi
4 TABLE DES MATIÈRES

2.2 Erreur d'interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.3 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.4 Représentation des interpolations de type Lagrange . . . . . . . . . . . . . . 20

2.5 Représentation des interpolations de type Newton . . . . . . . . . . . . . . 20

3 Travaux Dirigés (Correction en classe) . . . . . . . . . . . . . . . . . . . . . . . . . 22

3 Intégration Numérique 23
1 Exemples et motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

1.1 Exemple 1 : Enérgie émise . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

1.2 Exemple 2 : Pas d'expression analytique de la primitive . . . . . . . . . . . 24

2 Quelques méthodes d'intégrations numériques . . . . . . . . . . . . . . . . . . . . . 24

2.1 Méthode des trapèzes et Analyse de l'erreur . . . . . . . . . . . . . . . . . . 24

2.2 Méthode de Simpson et son erreur . . . . . . . . . . . . . . . . . . . . . . . 25

3 Travaux Dirigés (Correction en classe) . . . . . . . . . . . . . . . . . . . . . . . . . 26

4 Equations diérentielles 29
1 Exemples et motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

1.1 Exemple 1 : évolution d'une population . . . . . . . . . . . . . . . . . . . . 30

1.2 Exemple 2 : modèle de Lotka-Volterra . . . . . . . . . . . . . . . . . . . . . 30

2 Position du problème . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

3 Problème d'existence et d'unicité . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

3.1 Existence de la solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

er
4 Généralisations aux systèmes du 1 ordre . . . . . . . . . . . . . . . . . . . . . . . 32

5 Méthodes numériques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

5.1 Méthode d'Euler - Cauchy. . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

5.2 Erreur de la méthode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

5.3 Algorithme (Euler) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

6 Les schémas un pas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

6.1 Notion d'ordre d'une méthode . . . . . . . . . . . . . . . . . . . . . . . . . 35

6.2 Construction d'un schéma d'ordre p . . . . . . . . . . . . . . . . . . . . . . 36

6.3 Schémas de Runge - Kutta . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

6.4 Algorithme (RK2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

6.5 Algorithme (RK4) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

7 Travaux Dirigés (Correction en classe) . . . . . . . . . . . . . . . . . . . . . . . . . 38


TABLE DES MATIÈRES 5

5 Méthode des diérences nies 41


1 Exemples et motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

1.1 Exemple 1 : déformation d'une corde élastique . . . . . . . . . . . . . . . . 42

1.2 Exemple 2 : l'équation de la chaleur . . . . . . . . . . . . . . . . . . . . . . 42

2 Méthode des diérences nies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

2.1 Approximation des dérivées . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

2.2 Problème Approché . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

2.3 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

3 Cas des problèmes elliptiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

3.1 Modèle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

4 Cas des problèmes évolutifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

4.1 Equation de la chaleur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

4.2 Schéma Explicite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

4.3 Schéma implicite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

5 Travaux Dirigés (Correction en classe) . . . . . . . . . . . . . . . . . . . . . . . . . 51


6 TABLE DES MATIÈRES
Chapitre 1

Equations non linéaires

Sommaire
1 Exemples et motivations . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.1 Exemple 1 : Equation d'état d'un gaz . . . . . . . . . . . . . . . . . . . 8

1.2 Exemple 2 : problème nancier . . . . . . . . . . . . . . . . . . . . . . . 8

1.3 Position du problème . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2 L'algorithme de dichotomie . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1 Convergence de l'algorithme de dichotomie . . . . . . . . . . . . . . . . 9

3 Méthodes des approximations successives . . . . . . . . . . . . . . . . 10


3.1 Déniton et hypothèses . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

3.2 Convergence de la méthode des approximations successives . . . . . . . 10

3.3 Critère d'arrêt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

4 Méthode de la sécante . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.1 Convergence de l'algorithme . . . . . . . . . . . . . . . . . . . . . . . . . 11

5 Méthode de Newton - Raphson . . . . . . . . . . . . . . . . . . . . . . 12


5.1 Convergence de l'algorithme . . . . . . . . . . . . . . . . . . . . . . . . . 12

6 Comparaison des algorithmes . . . . . . . . . . . . . . . . . . . . . . . 13


7 Sytèmes Non Linéaires . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
8 Travaux Dirigés (correction en classe) . . . . . . . . . . . . . . . . . . 14

7 Pr Hamid El Ouardi
8 CHAPITRE 1. EQUATIONS NON LINÉAIRES

1 Exemples et motivations
1.1 Exemple 1 : Equation d'état d'un gaz
On veut déterminer le volume V occupé par un gaz de température T et de pression p. L'équa-
tion d'état est "  2 #
N
p+a (V − N b) = kN T,
V
où a et b sont deux coecients dépendants de la nature du gaz, N est le nombre de molécules

contenues dans le volume V et k est la constante de Boltzmann. Il faut donc résoudre une équation

non linéaire d'inconnue V : chercher V solution de


"  2 #
N
f (V ) = p + a (V − N b) − kN T,
V

Pour le dioxyde de Carbone CO2 , a = 0.401 Pa m3 , b = 42.7×10−6 m3 , N = 1000, T = 300K, p =


3.5 × 107 Pa , k = 1.3806503 × 10−23 JK −1 est la constante de Boltzmann.

1.2 Exemple 2 : problème nancier


On veut chercher le taux de placement moyen d'un taux t d'un fond de placement sur plusieurs
années. On a investi chaque année une somme a = 1000 dhs et on se retrouve aprés 7 ans avec un

montant A = 6500 dhs. La relation qui lie t, a, A est

7
X 1+t 1+t
A = a (1 + t)i = a (1 + t)7 − 1 : f (t) = A − a (1 + t)7 − 1 = 0,
 
i=1
t t

c'est une équation non linéaire, dont on est incapable de trouver une solution exacte.

1.3 Position du problème


Soit une fonction numérique d'une variable réelle x, on recherche les nombres α s'ils existent,

tels que f (α) = 0; on les appellera solutions de f (x) = 0 ou encore zéros de f. Le problème posé

est de discuter l'existence, voire l'unicité des solutions de l'équation f (x) et de donner des procédés
permettant d'obtenir la ou les valeurs de α.
Nous constaterons que les algorithmes permettant d'obtenir les solutions de α, du moins des

approximations numériques de α peuvent dépendre des propriétés de régularité de f . Il est naturel


alors d'etudier les performances (convergence, ecacité, souplesse d'utilisation) des algorithmes

pour diverses classes de fonctions. Le cadre sera souvent le suivant : on se donne à priori α∈R
2. L'ALGORITHME DE DICHOTOMIE 9

et un voisinage V de α. On considère les fonctions de C p (V ), p ≥ 0. On demandera des conditions

susantes sinon nécésaires pour que f ∈ C p (V ) possède :

- au moins une solution dans V (existence).

- au plus une solution dans V (unicité).

On construit alors des algorithmes pour obtenir la solution α et on étudie la convergence, la

précision et l'ecacité.

2 L'algorithme de dichotomie
Soient x1 , x2 , ..........., xn les n racines réelles d'une équation f (x) = 0, rangées dans l'ordre

croissant. Séparer les racines de l'équation c'est trouver (n − 1) nombres a1 , a2 , ............, an−1
tels que l'on ait : x1 < a1 < x2 < a2 ........... < an−1 < xn . Si l'on connait les zéros de f 0 (x),
le théorème de Rolle permet de séparer les racines de l'équation f (x) = 0. En pratique, cette

éventualité est rarement utilisée et l'on réduit à transposer dans le domaine du calcul le procédé

graphique consistant à tracer la courbe y = f (x) et à évaluer les intersections avec l'axe des x.

Soit alors α une racine de f (x) = 0 comprise dans [a, b], a et b tels que f (a)f (b) < 0.
a+b
Soit x0 = 2 , on calcule f (x0 ),

si f (x0 )f (a) < 0 ⇒ on pose a1 = a, b1 = x0 ,

si f (x0 )f (b) < 0 ⇒ on pose a1 = x0 , b1 = b,

si f (x0 ) = 0 ⇒ x0 est racine.

On a obtenu un intervalle (a1 , b1 ) de longueur moitié de (a, b) et comprenant la racine α. On

recommence avec cet intervalle comme on a opéré avec le pécédent et ainsi de suite jusqu'à obtenir

un intervalle de la longueur désirée contenant la racine α.

2.1 Convergence de l'algorithme de dichotomie


eme b−a
Soit (an , bn ) le segment obtenu à la n étape, on a : an ≤ α ≤ bn avec bn − an = 2n et

f (an )f (bn ) < 0. Il vient donc lim an = lim bn = α et par continuité de f , on a lim f (an ) =
n→+∞ n→+∞ n→+∞
lim f (bn ) = f (α) . D'où f (α) = 0.
n→+∞
|b−a| |b−a|
La rapidité de convergence de l'algorithme est donnée par : |an − α| ≤ 2n ou |bn − α| ≤ 2n .

Exemple : On veut trouver le zéro de la fonction f (x) = sin(2x) − 1 + x dans [−3, 3] . Avec le

code Matlab (tolérence ε = 10−8 ), on trouve α = 0.35228846


10 CHAPITRE 1. EQUATIONS NON LINÉAIRES

3 Méthodes des approximations successives


Nous avons justié l'algorithme de dichotomie sur la classe des fonctions continues sur un

segment et de signes opposés aux extremités du segment. Lorsque f est plus régulière, on peut

obtenir de meilleures performances avec des algorithmes plus évolués.

3.1 Déniton et hypothèses


Nous voulons résoudre le problème f (x) = 0, on peut en posant x = f (x)+x = g(x) se ramener
au problème : résoudre x = g(x) où donc g est une fonction donnée.

Exemple : Pour l'équation


x2 − x − 2 = 0,
√ 2
−x−2
on peut prendre g(x) = x2 −2, g(x) = x + 2, g(x) = 1+ x2 ou g(x) = x− x λ , pour tout λ 6= 0.
La méthode itérative consiste à utiliser l'algorithme suivant :

Algorithme 1 :
Choisir x0 arbitrairement et générer la suite (xn ) par la relation




xn = g(xn−1 ) pour n = 1, 2.........., N


x0 quelconque.

Mais nous ne pouvons pas être sûr que cet algorithme soit toujours bien déni. D'aprés le

théorème du point xe, nous savons que si g est contractante d'un intervalle [a, b] dans lui - même

ie ∃k < 1 : |g(x) − g(y)| ≤ k |x − y| , alors il existe un élément et un seul α de [a, b] tel que

g(α) = α.

3.2 Convergence de la méthode des approximations successives


L'équation x = g(x) a une solution, on s'intéresse à la convergence de la suite xn déni par

l'algorithme 1.

Théorème 1 : Soit I = [a, b] un intervalle xé et soit g une fonction satisfaisant les conditions
suivantes :

i) g est continue sur I,


ii) ∀x ∈ I g(x)∈ I,
iii) g est Lipschitzienne, de constante de Lipschitz k < 1.
Alors ∀x0 ∈ I, la suite (xn ) dénie par l'algorithme (1) converge vers la solution unique α de

l'équation x = g(x).
Preuve : D'aprés le théorème du point xe, il existe un unique α tel que α = g(α). De plus, on

a l'estimation |xn − α| ≤ k n |x0 − α| , lim k n = 0 ⇒ lim xn = α.


n→+∞ n→+∞
4. MÉTHODE DE LA SÉCANTE 11

Remarque : Lorsqu'une suite (xn ) converge vers l, selon la relation

|xn+1 − l| ≤ k |xn − l| ,

on dit que la convergence est au moins linéaire. Plus généralement, on dénit :

Dénition : Soit la suite (xn ) convergente vers l. S'il existe un nombre p et une constante

c 6= 0 tels que lim |xn+1 −l|


p = c, on dit que la convergence est d'ordre p; c est la constante
n→+∞ |xn −l|
d'erreur asypmptotique.

p
S'il existe une constante c et un réel p positif : |xn+1 − l| ≤ c |xn − l| pour tout n assez grand,
on dit que la convergence est au moins d'ordre p.
Remarque : La convergence est d'autant plus rapide que son ordre p est grand.
2
En eet si |xn − l| est petit, |xn − l| est encore plus petit.

3.3 Critère d'arrêt


Si la méthode converge, les éléments de la suite (xn ) sont de plus en plus proche de la solution

α. Un critère d'arrêt est pour  (tolérence) donné : |xn − xn−1 | <  et nous prendrons xn comme

valeur approchée de la solution.

Remarque importante : Si on suppose que g ∈ C 1 ((a, b)) et |g0 (x)| < 1, alors g est contrac-
tante et le théorème 1 est encore valable.

4 Méthode de la sécante
La méthode de Newton possède de grands avantages, mais elle nécessite le calcul de la dérivée

de g . La méthode de la sécante consiste à utiliser la droite sécante passant par les points (xn , g(xn ))
et (g(xn−1 ), g(xn−1 )) plutôt que la droite tangente passant par (xn , g(xn )). Il s'agit d'une méthode
à trois niveaux : approcher les racines de g se ramène à calculer la limite de la suite récurrente

x1 et x2 tels que g(x1 )g(x2 ) < 0 et déterminer la suite (xn ) par la relation


−xn−1
xn+1 = xn − g(xn ) g(xxn)−g(x

) , n = 2, .....

n n−1

4.1 Convergence de l'algorithme


Théorème : Soit g deux fois continument diérentiable sur un intervalle ouvert de centre l
vériant :

g(l) = 0, g 0 (l) 6= 0.

Alors, si x1 et x2 sont choisis assez près de l, l'algorithme de la sécante déni par :



−xn−1
xn+1 = xn − g(xn ) g(xxn)−g(x ∀n ≥ 2

n n−1 )
12 CHAPITRE 1. EQUATIONS NON LINÉAIRES

converge vers l et la convergence est au moins d'ordre p = 1, 618...

5 Méthode de Newton - Raphson


Si nous posons g(x) = f (x) − x, le problème est de trouver x tel que f (x) = 0 et l'algorithme

s'écrit xn+1 = xn − ff0(x n)


(xn ) qui est la formulation de la méthode de Newton - Raphson.

Choisir x0 et déterminer la suite (xn ) par la relation


xn+1 = xn − ff0(x n)

(x ) , n = 0, 1.....

n

5.1 Convergence de l'algorithme


f 0 (x)f 00 (x)
On a G(x) = x − ff0(x) 0
(x) , G (x) = (f 0 (x))2
, pour que |G0 (x)| < 1, il faut donc que f 00 (x) ne soit

pas trop grand et que f 0 (x) ne soit pas trop petit.

Théorème : Soit x0 ∈ I , supposons qu'il existe deux nombres c ≥ 0, λ ≥ 0 tels que


c
i) f (x0 ) ≤ 2λ .

ii) ∀x ∈ [x0 − c, x0 + c] ⊂ I, |f 00 (x)| ≤ 1


4λc et |f 0 (x)| ≥ λ1 .
f (xn )
Alors ∃!α ∈ [x0 − c, x0 + c] : f (α) = 0 et de plus, la suite dénie par : xn+1 = xn − f 0 (xn )
c
converge vers α et |xn − α| ≤ 82n
( qui tend trés vite vers zéro ).

Preuve : ∀x, y ∈ [x0 − c, x0 + c] , f (x) − F (y) = f 0 (η)(x − y) avec η ∈ (x, y).


Donc

|f (x) − f (y) − f 0 (y)(x − y)| = |x − y| |f 0 (y) − f 0 (η)| = |x − y| |y − η| |f 00 (η1 )| avec η1 ∈ [y, η] .

Comme |y − z| ≤ 2c et |f 00 (x)| ≤ 1
4λc , on a :

1
|f (x) − f (y) − f 0 (y)(x − y)| ≤ |x − y| (∗)

f (xn )
Nous montrons par récurrence que si x1 , ........, xn sont défnies par xn+1 = xn − f 0 (xn ) et

appartiennent à [x0 − c, x0 + c] , alors xn+1 ∈ [x0 − c, x0 + c] et

c
|xn − xn−1 | ≤ (**)
2n

Cette relation est vraie pour n=1



|x1 − x0 | = ff0(x
c 0) c
f (x0 ) ≤ 2λ et (x0 ) ≤ 2λ λ = 2c .

Supposons les relations vraies à l'ordre (n − 1), on a :

f (xn−1 ) = −(xn − xn−1 )f 0 (xn−1 ), d'où f (xn ) = f (xn ) − f (xn−1 ) − (xn − xn−1 )f 0 (xn−1 ) et en

1 c
utilisant (∗), il vient : |f (xn )| ≤ 2λ |xn − xn−1 | ≤ λ2n+1 .
6. COMPARAISON DES ALGORITHMES 13


|xn+1 − xn | = ff0(x
n) cλ c
D'autre part, on a :
(xn ) ≤ λ2n+1 = 2n+1 . Nous pouvons en déduire que :

|xn+1 − x0 | ≤ |xn+1 − xn | + |xn − xn−1 | + ...... |x1 − x0 | ≤ c( 12 + 1


22 + ............ + 1
2n+1 ) ≤ c. Donc

xn+1 ∈ [x0 − c, x0 + c] .
De (∗∗), on déduit que la série de terme général xn − xn−1 est absolument convergente donc

la suite xn tend vers une limite α ∈ [x0 − c, x0 + c] quand n → +∞. D'aprés la relation |f (xn )| ≤
c
λ2n+1 et de la continuité de f , on en déduit que f (α) = 0. On applique la formule des accroissements
nis à f (xn ).
00
f (α) = f (xn ) + (α − xn )f 0 (xn ) + (α − xn )2 f (θn )
2 , θn ∈ [α, xn ]

2 f 00 (θn ) 2
f (xn ) = (xn − xn−1 )f 0 (xn ), ce qui implique : |xn+1 − α| ≤ |xn − α| 2f 0 (x ) ≤ |xn − α|
n
1
8c .

Comme |x0 − c| ≤ 2c , nous avons |xn − α| ≤ c


82n
.
Remarque : Il est clair qu'il faut se placer dans une zone où f 0 (x) ne risque pas de s'annuler.
Enn, la méthode converge lentement dans le cas des racines multiples.

Si α est racine
avec p l'ordre de multiplicité, on considère alors la méthode de Newton modiée :

Choisir x0 et déterminer la suite (xn ) par la relation




xn+1 = xn − p ff0(x n)

(xn ) , n = 0, 1.....

6 Comparaison des algorithmes


Méthode de Dichotomie
Avantages : la convergence est assurée, on a l'encadement de la solution et un seul calcul de la

fonction à chaque itération.

Inconvénient : la vitesse de la convergence est linéaire, donc lente.

Méthode de la sécante
Avantages : un seul calcul de la fonction à chaque itération. Convergence rapide. Inconvénient :

peut diverger si les données initiales sont mal choisies, le calcul de f (xn ) − f (xn−1 ) peut produire
des erreurs de chute.

Méthode de Newton
Avantages : la convergence est rapide.

Inconvénient : nécessite le calcul de la dérivée d'une fonction.

7 Sytèmes Non Linéaires


On veut généraliser la méthode de Newton au cas de systèmes non linéaires F =0 où F :
RN → RN , F = (f1 , f2 , ......, fN ).
Pour cela on introduit la matrcice Jacobienne du vecteur du vecteur F :
14 CHAPITRE 1. EQUATIONS NON LINÉAIRES

 
∂f1 ∂f1
  ∂x1 ... ∂xN
∂fi  
DF (x) = (x) = .
 
.
∂xj ij  
∂fN ∂fN
∂x1 ... ∂xN

La méthode de Newton dans ce cas s'écrit :

[DF (xk )] (xk+1 − xk ) = −F (xk ), k = 0, 1, 2.....

8 Travaux Dirigés (correction en classe)


Exercice 1.1 : Soit la fonction f (x) = 2x3 − x − 2
1. Montrer que f possède une seule racine x ∈ [1, 2] .

2. Etudier la convergence des trois méthodes itératives suivantes : x0 ∈ [1, 2] donné et

(α) xn+1 = 2x3n − 2;


2
(β) xn+1 = 2x2n −1 ;
xn
p
(γ) xn+1 = 3
1+ 2 .

Si l'une des méthodes converge l'utiliser pour déterminer x à 10−3 près.

Exercice 1.2 : Soit l'équation x = ln(1 + x) + 0.2 dans R+


1. Montrer que la méthode itérative est convergente.

2. Choisir x0 et déterminer la valeur approchée de la solution.

3. Choisir x0 = 0.7 et utiliser la méthode de Newton pour trouver une autre approximation.

Exercice 1.3 : Soit l'équation e−x = x2 dans R. On pose f (x) = e−x − x2


1. Montrer que l'équation f (x) = 0 admet une unique racine sur R, que l'on notera l. Localiser
l entre deux entiers consécutifs ; soit I l'intervalle obtenu.

2. Soit la méthode d'approximation successive suivante :

xn+1 = xn − e−xn + x2n , x0 ∈ I

Cette méthode converge t-elle vers l, pourquoi ?

3. Soit la méthode d'approximation successive suivante :

−xn
xn+1 = e 2 , x0 ∈ I

Cette suite converge t-elle vers l, pourquoi ?


8. TRAVAUX DIRIGÉS (CORRECTION EN CLASSE) 15

4 Ecrire la méthode de Newton pour f. Choisir x0 qui assure la convergence de Newton.

Exercice 1.4 (TP) :


Soit à résoudre f (x) = exp(x) − 2 cos(x) = 0 dans l'intervalle I = [−1, 1]

1. Montrer que cette équation admet une solution α dans I.

2. Appliquer la méthode de Newton pour trouver une valeur approchée de α.

3. Appliquer la méthode de la sécante pour trouver une valeur approchée de α.


16 CHAPITRE 1. EQUATIONS NON LINÉAIRES
Chapitre 2

Interpolation

Sommaire
1 Exemples et motivations . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.1 Exemple 1 : étude expérimentale . . . . . . . . . . . . . . . . . . . . . . 17
1.2 Exemple 2 : masse volumique d'un matériau . . . . . . . . . . . . . . . . 18
2 Interpolation polynômiale . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.1 Interpolation polynômiale : existence et unicité . . . . . . . . . . . . . . 18
2.2 Erreur d'interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.3 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.4 Représentation des interpolations de type Lagrange . . . . . . . . . . . . 20
2.5 Représentation des interpolations de type Newton . . . . . . . . . . . . 20
3 Travaux Dirigés (Correction en classe) . . . . . . . . . . . . . . . . . 22

1 Exemples et motivations
1.1 Exemple 1 : étude expérimentale
Dans le contexte des sciences expérimentales, ces données peuvent provenir d'une expérience,

par exemple la température y (en degrés) en fonction du temps x (en heures).

i xi yi
0 0 5
1 6 10
2 12 19
3 18 18

17 Pr Hamid El Ouardi
18 CHAPITRE 2. INTERPOLATION

Nous voulons représenter le phénomène observé par une fonction P polynômiale. Ce polynôme doit
vérier : P(xi ) = yi , i = 0, 3.

1.2 Exemple 2 : masse volumique d'un matériau


Les masses volumiques du matériau pour diérentes températures sont données par le tableau

ci- dessous :

 
i 1 2 3
 
 ◦ 
 Température T (en C) 94 205 371 
 
Masse volumique R(T) : (enkg/m3) 929 902 860

En utilisant les polynômes d'interpolation qui permettent d'interpoler les diérents points de
◦ ◦
données précédentes. On désire trouver les masses volumiques du sodium pour T = 251 C, T = 305 C

et T = 800 C .

2 Interpolation polynômiale
2.1 Interpolation polynômiale : existence et unicité
Théorème 1 : on considère un segment [a, b] de R et une subdivision a = x0 < x 1 <
x2 ............. < xn = b à l'aide des (n + 1) points distincts (xi ), i = 0, n. Soient (yi )i=0,n (n + 1)
nombres réels quelconques. Alors, il existe un unique polynôme de degré n maximum, soit P, tel

P(xi ) = yi , i = 0, ......n
que :
n
Preuve : Soit P (x) = αi xi
P
le polynome cherché. Pour chaque xi on doit avoir P (xi ) = yi ⇔
i=0
2 n
α0 + α1 xi + α2 (xi ) + ...................αn (xi ) = yi .
Ceci fournit un système de (n + 1) inconnues α0 , α1 , ..., αn .
Le déterminant est celui de VAN DER MONDE :


x20 xn0

1 x0 . .

x21 . . xn1


1 x1

1 x2 x22 . . xn2 Y
= (xi − xj ) 6= 0



. . . . . . i>j
i=0,n
j=0,n
. . . . .



x2n n

1 xn . . xn

Le système linéaire est un système de Cramer qui détermine de façon unique P.


2. INTERPOLATION POLYNÔMIALE 19

2.2 Erreur d'interpolation


Théorème 2 : Soit f une fonction numérique continue sur [a, b]. Pour un entier n ≥ 1, f est

(n + 1) fois dérivable sur ]a, b[, de plus f (p) , 1 ≤ p ≤ n possède un prolongement continue sur

]a, b[ . Pour a = x0 < x1 < x2 ............. < xn = b, il existe un polynôme unique Pn de degré n tel

que Pn (xi ) = yi , i = 0, ......n. De plus, ∀x ∈ [a, b], ∃c ∈ ]a, b[ :

(x − a)(x − x1 ).................(x − b) (n+1)


f (x) = Pn (x) + f (c).
(n + 1)!
n
Preuve : Soit Pn (x) = 2 n
αi xi , on doit avoir α0 +α1 xi +α2 (xi ) +...................αn (xi ) = f (xi ),
P
i=0
d'aprés le théorème 1, est uniquement déterminé.
 Pn
 Q(xi ) = 0, i = 0, n
Soit Q telle que
(x−a)(x−x1 ).................(x−b)
 f (x) = P (x) +
n (n+1)! Q(x), x 6= xi
et soit φ la fonction dénie par t ∈ [a, b] → φ(t) = f (t) − Pn (t) − (t−a)(t−x1(n+1)!
).................(t−b)
Q(x).

 φ(xi ) = 0, i = 0, n
Par construction .
 φ(x) = 0
C'est à dire φ s'annule en (n + 2) distincts si x 6= xi . Q(x) possède les mêmes propriétés que

f. Le théorème de Rolle s'applique (n + 1) fois à φ entre deux de ses zéros consécutifs. Il existe

alors (n + 1) zéros distincts de φ0 dans ]a, b[. Le théorème de Rolle s'applique n fois à φ0 pour

fournir n zéros de φ00 ................, enn il existe un nombre c ∈ ]a, b[ tel que φ(n+1) (c) = 0. Or :

0 = φ(n+1) (c) = f (n+1) (c) − Q(x), d'où Q(x) = f (n+1) (c).

2.3 Exemples
1) n = 1, x0 = a, x1 = b ; on cherche P1 tel que P1 (a) = f (a), P1 (b) = f (b). Il vient facilement

que

f (b) − f (a)
P1 (x) = f (a) + (x − a)
b−a
(x − a)(x − b) 00
et f (x) = P1 (x) + f (c).
2
a+b
2) n = 2, x0 = a, x1 = 2 , x2 = b ;on cherche P2 tel que P1 (a) = f (a), P2 ( a+b a+b
2 ) = f ( 2 ), P2 (b) =

f (b) et d (P2 ) = 2. Pour le trouver, on peut écrire par exemple : P2 (x) = f (a) + (x − a)P1 (x) où

◦ f (b)−f (a) f ( a+b )−f (a)


d (P1 ) = 1 et P1 (b) = b−a , P1 ( a+b
2 ) = 2 2b−a et on a :

( )
a + b 2f (b) − f ( a+b

2 ) − f (a)
 
2 a+b
P2 (x) = f (a) + (x − a) f( ) − f (a) + 2(x − ) .
b−a 2 2 b−a
20 CHAPITRE 2. INTERPOLATION

2.4 Représentation des interpolations de type Lagrange


Polynôme de Lagrange
Théorème : Soient a = x0 < x1 < x2 ............. < xn = b , (n + 1) points distincts d'une

subdivision de [a, b]. Soient Li , i = 0, n, les (n + 1) polynômes de Lagrange : Li ∈ Pn tel que

Li (xi ) = δij , j = 0, n , sont linéairement indépendants et forment une base de Pn .


n n n
Preuve : Soient (λi ) tels que
P P P
λi Li = 0 dans Pn ⇒ λi Li (xi ) = 0 = λi δij = λj = 0
i=0 i=0 i=0

Forme théorique des polynômes de Lagrange


Li s'annule en xj , j = 0, n mais j 6= i et prend 1 pour x = xi . Comme Li ∈ Pn , on a
Q
Li (xi ) = 1 = c (xi − xj ), il vient :
j6=i
Q
(x − xj )
j6=i
Li (x) = Q .
(xi − xj )
j6=i

Représentation des polynômes dans la base de Lagrange


n
P
Le polynôme P ∈ Pn vérie P (xi ) = yi , i = 0, n. P = λi Li or P (xj ) = yj , il vient
i=0
n
P n
P n
P
λi Li (xj ) = yj λi δij = λj
soit = yj , d'où ∀x ∈ [a, b] , P (x) =
P (xi )Li (x), ∀P ∈ Pn .
i=0 i=0 i=0
Dénition : Le polynôme P ∈ Pn associé par le théorème 2 à la fonction f et la subdivision
a = x0 < x1 < x2 ............. < xn = b est dit polynôme d'interpolation de Lagrange de f.
Résultat : Le polynôme d'interpolation de Lagrange de f aux points xi , i = 0, n distincts de
n
P
[a, b] s'écrit Pn (x) = f (xi )Li (x) où (Li )i=0,n est la base de Lagrange dans Pn .
i=0

2.5 Représentation des interpolations de type Newton


Polynôme de Newton
Il n'y a pas de relation simple entre l'interpolant de base Ln relatif à la subdivision {xk ; 0 ≤ k ≤ n} ,
a ≤ x0 < x1 < ... < xn = b et l'interpolant de base Ln+1 relatif à la subdivision plus ne

{xk ; 0 ≤ k ≤ n + 1} , a ≤ x0 < x1 < ... < xn+1 = b.


De point de vue numérique, ceci est un inconvénient auquel remédie l'interpolant de Newton

que nous allons expliciter.

Base de Newton

On peut montrer que les fonctions e0 , e1 , ..., en telles que :

∀x ∈ R, e0 (x) = 1, e1 (x) = x − x0 , ..., ek (x) = (x − x0 )(x − x1 )...(x − xk−1 ), ... forment une

base de l'espace vectoriel Pn des polynômes sur R de degré inférieur ou égal à n ∈ N.


2. INTERPOLATION POLYNÔMIALE 21

Développons le polynôme Pn sur la base (e0 , e1 , ..., en )


( n
X
∀x ∈ R, Pn (x) = αk ek (x)
k=0

On en déduit que :

Pn (x0 ) = f (x0 ) = α0
f (x0 )−f (x1 )
Pn (x1 ) = f (x1 ) = f (x0 ) + α1 (x1 − x0 ) ⇐⇒ α1 = x0 −x1

Pour expliciter αk , k  2, posons :

∀ y0 , y1 , ... yk ∈ R, ∀n ∈ N∗ ,


f (yi ) si k = i,


f [yi , . . . , yk ] =
 f [yi+1 , . . . , yk ] − f [yi , . . . , yk−1 ]

si k ≥ i.

yk − yi
On en déduit que :

αk = f [x0 , . . . , xn ], 0≤k≤n

Le polynôme d'interpolation de f s'écrit, dans la base de Newton,

n
X
Pn (x) = f [x0 , . . . , xk ]ek (x),
k=0

Remarque :
f [x0 , . . . , xk ] sont appelées les diérences divisées de Newton, on peut les calculer et les

représenter par un tableau, dans lequel le terme (i, j) est calculé partir des éléments (i − 1, j − 1)
et (i, j − 1) :

x0 f [x0 ]

x1 f [x1 ] f [x0 , x1 ]

x2 f [x2 ] f [x1 , x2 ] f [x0 , x1 , x2 ]

. . . . ..
. . . . .
. . . .

x2 f [xn ] f [xn−1 , xn ] f [xn−2 , xn−1 , xn ] ... f [x0 , x1 , . . . , xn−1 , xn ]

En factorisant la forme de Newton, il vient :

  

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

L'algorithme de Hörner s'écrit


22 CHAPITRE 2. INTERPOLATION

 Initialisation :

P ← f [x0 , . . . , xn ]

 Pour k décroissant de n−1 à 0 faire :

P ← f [x0 , . . . , xk ] + (x − xk ) P.

3 Travaux Dirigés (Correction en classe)


Exercice 2.1 : Déterminer le polynôme d'interpolation de Lagrange et de Newton satisfaisant
au tableau ci-dessous

x 0 2 3 5
f (x) −1 2 9 87

Exercice 2.2 :
1. Déterminer le polynôme d'interpolation de Lagrange et de Newton pour les points d'appui

1
d'abscisses : −2, −1, 0, 1, 2. de la fonction f (x) = 1+x2

2. Discuter l'erreur d'interpolation.

Exercice 2.3 :

Soit f (x) = 2+x

1. Déterminer le polynôme P (x) d'interpolation de Lagrange et de Newton basé sur les points
d'abscisses 0, 1 et 2.

2. Calculer P (0.1) et P (0.9), et comparer aux valeurs exactes. Evaluer l'erreur d'interpolation
en ces deux points. Commentaires ?

Exercice 2.4 (TP) : Les masses volumiques du matériau pour diérentes températures sont
données par le tableau ci- dessous :

 
i 1 2 3
 
 ◦ 
 Température T (en C) 94 205 371 
 
Masse volumique R(T) : (enkg/m3) 929 902 860

1. Écrire la formule d'interpolation de Lagrange qui permet d'interpoler les diérents points

de données précédentes.

◦ ◦ ◦
2. Trouver les masses volumiques du sodium pour T = 251 C, T = 305 C et T = 800 C
en utilisant l'interpolation de Lagrange et de Newton.
Chapitre 3

Intégration Numérique

Sommaire
1 Exemples et motivations . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.1 Exemple 1 : Enérgie émise . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.2 Exemple 2 : Pas d'expression analytique de la primitive . . . . . . . . . 24
2 Quelques méthodes d'intégrations numériques . . . . . . . . . . . . . 24
2.1 Méthode des trapèzes et Analyse de l'erreur . . . . . . . . . . . . . . . . 24
2.2 Méthode de Simpson et son erreur . . . . . . . . . . . . . . . . . . . . . 25
3 Travaux Dirigés (Correction en classe) . . . . . . . . . . . . . . . . . 26

1 Exemples et motivations
R1 x
On trouve souvent des intégrales dont le calcul est trés compliqué par exemple : √e dx,
0 1+x2
R1 R1 2

0
cos(x2 )dx, 0
e−x dx, .....
L'intégration numérique est basée principalement sur la relation suivante :

Z b Z b Z b
f (x)dx = Pn (x)dx + En (x)dx
a a a

1.1 Exemple 1 : Enérgie émise


On veut calculer l'énergie émise dans le spectre (infrarouge) compris entre les longueurs d'ondes

de 3µm et 14µm par un corps noir, objet capable d'émettre dans tout le spectre, à la température
ambiante. La résolution de ce problème est obtenue en calculant :

23 Pr Hamid El Ouardi
24 CHAPITRE 3. INTÉGRATION NUMÉRIQUE

Z 0,0014
1
E(T ) = 2, 39.10−11 dx,
0,0003 x5 (−1 + e(1,432/(T x)) )
où x est la longeur d'onde et T la température du corps noir. On désire calculer E(T ) pour T
compris entre - 60 et 90 degré Celsius.

1.2 Exemple 2 : Pas d'expression analytique de la primitive


Il n'existe pas d'expression analytique de la primitive de la fonction à intégrer :

Z x
2
Er(x) = exp(−t2 )dt.
π 0

2 Quelques méthodes d'intégrations numériques


Rb
L'objectif est de donner une valeur approchée de
a
f (x)dx où f ∈ C([a, b]), et bien évidemment
dans le cas où f n'a pas de primitive explicite. Ceci se fait en trois étapes :

1. On subdivise l'intervalle [a, b] en choisissant des points x0 = a < x1 < x2 < ... < xn = b.
R xi+1
2. On estime
xi
f (x)dx en utilisant une formule de quadrature.

Rb
3. On reconstitue l'approximation de
a
f (x)dx via la formule de Chasles.

2.1 Méthode des trapèzes et Analyse de l'erreur


D'aprés le chapitre de l'interpolation linéaire, on a :

f (x) = Pn (x) + En (x) .


| {z } | {z }
polynôme d'interpolation Erreur associée

On sait qu'on peut remplacer f (x) par le polynôme de degré 1 passant par les points (xi , f (xi ))
et (xi+1 , f (xi+1 ))

f (xi+1 ) − f (xi ) (x − xi )(x − xi+1 ) 00


f (x) = f (xi ) + (x − xi ) + f (c).
xi+1 − xi 2 {z
| {z } | }
P1 (x) Erreur
R xi+1 R xi+1
Par approximation de
xi
f (x)dx, on retiendra
xi
P1 (x)dx, c'est à dire

xi+1
xi+1 − xi
Z
P1 (x)dx = (f (xi+1 ) + f (xi )).
xi 2

L'erreur est

xi+1 xi+1 xi+1


(x − xi )(x − xi+1 ) 00
Z Z Z
ε(x) = f (x)dx − P1 (x)dx = f (c)dx, ∀x ∈ [a, b]
xi xi xi 2
2. QUELQUES MÉTHODES D'INTÉGRATIONS NUMÉRIQUES 25


(x − xi )(x − xi+1 ) 00
≤ sup |f 00 (c)| × (x − xi )(x − xi+1 ) f 00 (c) ,

f (c)
2
x∈[a,b]
2

il vient

Z xi+1
(x − xi )(x − xi+1 )
|ε(x)| ≤ M 00 dx
xi
2
(xi+1 − xi )3
≤ M 00
12

où M 00 = sup |f 00 (x)| .
x∈[a,b]
b−a
On décompose l'intervalle [a, b] en n sous-intervalles de longueur h= n . Les diérents points

engendrés sont notés xi pour i = 0, 1, ..., n avec a = x0 < x1 < ... < xn = b.
Dans chaque sous-intervalle [xi , xi+1 ] , on peut utiliser la méthode du trapèze. On a alors la

formule des trapèzes :

n−1 n−1
" n−1
#
Z b X Z xi+1 h X h X
f (x)dx = f (x)dx ' (f (xi+1 ) + f (xi )) = f (x0 ) + 2 f (xi ) + f (xn )
a i=0 xi i=0
2 2 i=1

L'erreur globale est majorée par :

Z 
b 
f (a) + f (b) h2
f (x)dx − h + f (a + h) + f (a + 2h) + ... + f (xn−1 ) ≤ M 00 (b − a) .

2 12

a

La méthode des trapèzes a consisté à remplacer f localement par des fonctions anes. L'erreur

sera sans doute plus faible si on remplace f par des polynômes de degrés plus élevées : c'est l'objet

d'une autre méthode approchée trés ecace : la méthode de Simpson.

2.2 Méthode de Simpson et son erreur


Reprenons le raisonnement utilisé avec la méthode des trapèzes, mais cette fois en utilisant un

polynôme de degré 2 dont la courbe passe par les points (x0 , f (x0 )), (x1 , f (x1 ))$et(x2 , f (x2 )).
Ce polynôme est donné par la formule de Newton :

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

Il vient ensuite

Z x2 Z x2
h
f (t)dt = P2 (t)dt ' [f (x0 ) + 4f (x1 ) + f (x2 )] .
x0 x0 3
26 CHAPITRE 3. INTÉGRATION NUMÉRIQUE

Puisque la méthode requiert deux intervalles, on divise l'intervalle [a, b] en n sous-intervalles

b−a
de longueur h= 2n , la méthode de Simpson consiste à remplacer

Z b n−1
X Z x2i+2 n−1
X h
f (x)dx = f (x)dx ' (f (x2i ) + 4f (x2i+1 ) + f (x2i+2 )) =
a i=0 x2i i=0
3
h
[f (x0 ) + 4f (x1 ) + 2f (x2 ) + ........ + f (x2n )] .
3

(x − x0 )(x − x1 )(x − x2 ) 4
f (c), f 4 (c) ≤ M 4 .

f (x) = P2 (x) +
4!
On a :

x2 x2
M4 M4
Z Z
h
f (t)dt − [f (x0 ) + 4f (x1 ) + f (x2 )] ≤ |(x − x0 )(x − x1 )(x − x2 )| dx ≤ h5 .
x0 3 4! x0 90

3 Travaux Dirigés (Correction en classe)


Exercice 3.1 :

R π
1. Déterminer par la méthode des trapèzes une valeur approchée de I = 0
2
f (x)dx sur la

base du tableau suivant :

π π
x 0 8 4 3 π8 π
2

f (x) 0 0.382683 0.707107 0.923880 1

2 Déterminer par la méthode de Simpson, une valeur approchée de de I.

3 Ces points d'appui sont ceux donnant sinx, comparer alors les résultats obtenus avec la

valeur exacte.

Exercice 3.2 :
On lance une fusée verticalement du sol et l'on mesure pendant les premières 80 secondes

l'accélération γ:

t(en s) 0 10 20 30 40 50 60 70 80
γ(en m/s2 ) 30 31.63 33.44 35.47 37.75 40.33 43.29 46.70 50.67

Calculer la vitesse V de la fusée à l'instant t = 80s, par les Trapèzes puis par Simpson.

Exercice 3.4 :
3. TRAVAUX DIRIGÉS (CORRECTION EN CLASSE) 27

Calculer à l'aide de la méthode des Trapèzes, l'intégrale

Z π
I= sin(x2 )dx
0

avec N =5 puis N = 10 points.

Exercice 3.5 (TP)


R2√
Soit à calculer I= 0
1 + t2 dt

1. Déterminer la valeur approchée de I par la méthode des trapèzes.

2. Déterminer la valeur approchée de I par la méthode de Simpson.

√ p √
3. Comparer avec la valeur exacte de I = 5 + ln 2 + 5 = 2, 9578857151
28 CHAPITRE 3. INTÉGRATION NUMÉRIQUE
Chapitre 4

Equations diérentielles

Sommaire
1 Exemples et motivations . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1.1 Exemple 1 : évolution d'une population . . . . . . . . . . . . . . . . . . 30

1.2 Exemple 2 : modèle de Lotka-Volterra . . . . . . . . . . . . . . . . . . . 30

2 Position du problème . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3 Problème d'existence et d'unicité . . . . . . . . . . . . . . . . . . . . . 31
3.1 Existence de la solution . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

4 Généralisations aux systèmes du 1er ordre . . . . . . . . . . . . . . . . 32


5 Méthodes numériques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
5.1 Méthode d'Euler - Cauchy. . . . . . . . . . . . . . . . . . . . . . . . . . 33

5.2 Erreur de la méthode . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

5.3 Algorithme (Euler) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

6 Les schémas un pas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34


6.1 Notion d'ordre d'une méthode . . . . . . . . . . . . . . . . . . . . . . . 35

6.2 Construction d'un schéma d'ordre p . . . . . . . . . . . . . . . . . . . . 36

6.3 Schémas de Runge - Kutta . . . . . . . . . . . . . . . . . . . . . . . . . 37

6.4 Algorithme (RK2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

6.5 Algorithme (RK4) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

7 Travaux Dirigés (Correction en classe) . . . . . . . . . . . . . . . . . 38

29 Pr Hamid El Ouardi
30 CHAPITRE 4. EQUATIONS DIFFÉRENTIELLES

1 Exemples et motivations
Bien souvent, on ne sait pas résoudre exactement une équation diérentielle. C'est à dire

qu'on ne sait pas donner la forme explicite des solutions. Il faut alors recourir à des méthodes

qui donnent des solutions approchées. Celles ci reposent sur des notions d'analyse numérique

que vous rencontrerez dans votre future formation d'ingénieur. Nous nous contenterons d'aborder

dans ce chapitre deux des méthodes les plus simples à mettre en oeuvre ; celle d'Euler et celle de

Runge-Kutta. La résolution numérique des équations diérentielles est probablement le domaine

de l'analyse numérique où les applications sont les plus nombreuses. Que ce soit en mécanique des

uides, en transfert de chaleur ou en analyse des structures, on aboutit souvent à la résolution

d'équations diérentielles, de systèmes d'équations diérentielles ou plus généralement d'équations

aux dérivées partielles.

1.1 Exemple 1 : évolution d'une population


Considérons une population y d'animaux dans un milieu ambiant où au plus B animaux

peuvent coexister. On suppose que initialement la population y0  B et que le facteur de croissance


des animaux soit égal à une constante C. Dans ce cas, l'évolution de la population au cours du

temps sera proportionnelle au nombre d'animaux existants, sans toutefois que ce nombre ne dépasse

la limite B. Cela peut s'exprimer par l'équation diérentielle suivante :


  
 y 0 (t) = Cy(t) 1 − y(t)
B , t > 0,
 y(0) = y0 .
La résolution de cette équation permet de trouver l'évolution de la population au cours du

temps.

1.2 Exemple 2 : modèle de Lotka-Volterra


On considère deux populations, y et z, où y sont les proies et z les prédateurs. L'évolution des

deux populations est alors décrite par le système d'équations diérentielles suivant :

 y 0 (t) = C1 y(t) [(1 − b1 y(t) − d2 z(t))] ,
 z 0 (t) = −Cz(t) [(1 − d y(t))] , 1

où C1 et C2 sont les facteurs de croissance des deux populations, d1 et d2 tiennent compte de

l'interaction entre les deux populations. b1 est liée à la quantité de nourriture disponible pour la

population des proies y1 . Ce modèle est connu sous le nom de LOTKA-VOLTERRA.


2. POSITION DU PROBLÈME 31

2 Position du problème
Soit F (x, y, y 0 , .........., y (p) ) = 0 une équation diérentielle d'ordre p où x ∈ [a, b] ⊂ R, y ∈
C p ([a, b] , R) .
Dénition : On dit que la fonction y(x) est solution de l'équation diérentielle si et seulement
si

F (x, y(x), y 0 (x), .........., y (p) (x)) = 0, ∀x ∈ [a, b]

Une équation diérentielle peut avoir plusieurs solutions. Pour préciser, on introduit des condi-

tions particulières. Il est évident que pour une équation d'ordre p , p conditions sont nécéssaires

pour xer la solution.

Exemple :




 y(a) = η0


y 0 (a) = η1


où η0 , ..............., ηp−1 sont des constantes données.



 .


y (p−1) (a) = ηp−1


Dans ce chapitre, nous étudierons les équations diérentielles du 1 ordre ie les équations de la

forme :


 y 0 = f (x, y)
 y(a) = η (η constante donnée),

car on peut montrer que les équations d'ordre supérieur se ramenent à un système d'équations

dierentielles d'ordre 1 en posant : z1 (x) = y 0 (x), z2 (x) = z10 (x) = y 00 (x)...............etc.

3 Problème d'existence et d'unicité


3.1 Existence de la solution
Notre but est de trouver une solution de l'équation diérentielle


 y 0 = f (t, y(t)) vériant la condition initiale

 y(t0 ) = y0

Pour formuler le problème de façon précise, nous allons faire des hypothèses sur f (t, y).
Hypothèse 1 : La fonction f (t, y) est à valeurs réelles et elle est continue sur un domaine D
du plan (t, y) déni par t0 − α < t < t0 + α, y0 − β < y < y0 + β où α et β sont positifs.
32 CHAPITRE 4. EQUATIONS DIFFÉRENTIELLES

Cette hypothèse montre que f (t, y) est continue sur D f (t, y) est borné
donc dans D , c'est à
 
β
dire : ∃M ∈ R tel que sup |f (t, y| = M. On peut poser h = min α, M .
(t,y)∈D
Hypothèse 2 : f (t, y) satisfait à la condition de Lipschitz relativement à y dans D ie ∃M ∈ R+
telle que : |f (t, y1 ) − f (t, y2 )| ≤ M |y1 − y2 | , ∀(t, y1 ) et (t, y2 ) ∈ D.
On va dénir une suite yn (t) qui converge uniformément vers la solution y(t) sur |t − t0 | ≤ h,
soit la suite dénie par de la façon suivante sur |t − t0 | ≤ h :
Rt Rt
y0 (t) = y0 , y1 (t) = y0 + t0
f (x, y0 (x))dx, .................., yn (t) = y0 + t0
f (x, yn−1 (x))dx.
Théorème de Picaro :
La suite
 {yn (t)} converge uniformément sur le segment |t − t0 | ≤ h vers y(t) vériant :

 y 0 = f (t, y(t))
 y(t0 ) = y0

4 Généralisations aux systèmes du 1er ordre


On cherche une fonction y(t) ∈ Rn telle que


 y 0 = f (t, y(t)) t ∈ [a, b] , f : [a, b] × Rn → Rn
 y(t0 ) = y0 .

On fait des hypothèses équivalentes sur f (t, y) .

Hypothèse 1 : f (x, y) est continue sur un compact.


Hypothèse 2 : Pour la condition de Lipschitz, il sut de remplacer  valeur absolue par

une norme de Rn car la formulation de la condition de Lipschitz donc l'existence et l'unicité est

indépendente de la norme choisie.

5 Méthodes numériques
Il existe deux grandes classes de méthodes numériques

a ) Les méthodes à 1 pas.

b ) Les méthodes à pas multiples.

Dans les deux cas, un principe de base essentiel est le suivant : le problème mathématique,

quel qu'il soit, traite les fonctions à valeurs dans R, ayant pour support un intervalle de R; donc

un nombre de points ayant la puissance du continu ; or, sur un calculateur, nous sommes obligés

de travailler sur un nombre ni de points judicieusement choisis et répartis sur l'intervalle [a, b] .
Donc il faut discrétiser le domaine de travail. Les points ainsi formés pourront être repères par

un indice n variant de 0 à N (N est le nombre de points de l'ensemble support ξ)


5. MÉTHODES NUMÉRIQUES 33


Donc 1 temps R → ξ
(∞ points) N points.

Souvent les points tn sont équidistants. On écrit alors tn = t0 + nh, n = 0, .......N. La quantité

h est alors appelée le pas de la méthode.

Dans tous les cas, une méthode discrète consiste pour chaque point xn à trouver une va-

leur yn qui est une valeur approchée de y(xn ) solution exacte de l'équation au point xn . Dans

une méthode à 1 pas , la valeur yn peut être trouvée si et seulement si yn−1 est connu ; la

connaissance de yn−2 , yn−3 n'est pas nécéssaire. Une méthode à k pas nécessite en mémoire

yn−1 , yn−2 , ..........., yn−k pour calculer yn . Dans les méthodes à un pas, le point de départ ne joue

pas un rôle spécial ce qui rend facile le changement du pas h. Les méthodes à pas multiples nécés-

sitent une procédure de départ spéciale. Une des principales questions qui se posent est la valeur

de la quantité e(tn ) = yn − y(tn ) : erreur de discrétisation. Ces méthodes sont presque toujours

applicables. La seule condition nécésaire pour pouvoir les appliquer est la possibilté de calculer

une bonne approximation de la valeur de f (t, y) pour un (t, y) donné.

5.1 Méthode d'Euler - Cauchy.


L'idée principale est d'approcher, au voisinage d'un point (t0 , y0 ), une fonction inconnue par

sa tangente, qui elle est connue.

Les erreurs commises à chaque pas de calcul se propagent et nalement l'erreur obtenue au pas

k est de la forme :

ek = ky(tk ) − yk k = O(h)

La valeur de h inuence donc énormément la précision de la méthode, mais aussi sa stabilité.

En eet si la largeur du pas de calcul h est trop importante, la méthode peut ne pas converger.

Nous étudierons complétement cette méthode car c'est la plus simple de toutes les méthodes

de résolution approchée.

Dénition Soit à résoudre


 y 0 (t) = f (t, y(t))
 y(t ) = y
0 0

On considère une subdivision de [a, b] en N intervalles égaux ti = a + ih.


y(ti + h) = y(ti ) + hy 0 (ti ) + 0(h2 ) or y 0 (ti ) = f (ti , yi )
y(ti + h) = y(ti ) + hf (ti , yi ) + 0(h2 ).
34 CHAPITRE 4. EQUATIONS DIFFÉRENTIELLES

On aura donc une approximation de y au point ti+1 par la formule


 yi+1 = yi + hf (xi , yi ) ,i≥ 0
 y0 donnée

5.2 Erreur de la méthode


L'erreur est de deux sources

a ) erreur de troncature (dûe à la méthode elle - même) : ei = |yi − y(ti )|


b ) erreur d'arrondi dûe à la précision du calcul. Soit ybi la valeur calculée de yi : ri = |ybi − yi | .
L'erreur totale est donc Ei = |ybi − y(xi )| < ri + ei .
La méthode est convergente si en → 0 quand h → 0.

5.3 Algorithme (Euler)


y0 = y(t0 ) = y(a)
y0 = t 0 = a
n= nombre de pas

b−a
h= n

Pour k de 1 à n Faire

yk = yk−1 + h.f (tk−1 , yk−1 )


tk = tk−1 + h
Fin Pour

En sortie de l'algorithme on obient le vecteur (y0 , y1 , ..., yn ) au correspondant au n+1 valeurs

de la solution approchée y associées à (t0 , t1 , ..., tn ).

6 Les schémas un pas


Ce sont les schémas dénis par une équation de récurrence et qui permettent de calculer yi+1
en utilisant yi , ti , h, f (ti , yi ). La formule générale sera donc


 yi+1 = yi + hΦ(ti , yi , h),i≥ 0
(4)
 y0 = ηh donnée

Dénition : Nous dirons que la méthode (4) est consistante avec l'équation diérentielle si :
max |[y(tn+1 ) − y(tn )] − Φ(tn , y(tn ), h)| → 0, quand h→0 , n = 0, ........, N − 1, pour toute

solution continue sur [a, b] de l'équation diérentielle.


6. LES SCHÉMAS UN PAS 35

Donc on voit que la méthode approche la solution dans un certain sens, la dénition suivante

concerne la propriété de continuité uniforme en h de l'application qui aux données fait correspondre
la solution du schéma.

Dénition : Soient {yn } et {zn } les solutions respectives des systèmes suivants :

 yn+1 = yn + hΦ(tn , yn , h)
 y xé quelconque dans R
0


 zn+1 = zn + h [Φ(tn , yn , h) + εn ]
 z xé quelconque dans R
0

Nous dirons que la méthode (4) est stable s'il existe deux constantes M1 et M2 indépendentes

de h telles que

max |yn − zn | ≤ M1 |y0 − z0 | + M2 max |εn | .


n=0,....,N n=0,....,N

Cette notion de stabilité siginie qu'une petite perturbation sur les données n'entraine qu'une

petite perturbation sur la solution du schéma et ceci indépendamment de h. Remarquons que la

stabilité est une propriété intrinséque du schéma de résolution numérique.

Dénition :
Nous dirons que la méthode (4) est convergente si ∀ζ ∈ R, si ηh → ζ quand h → 0 et si

{yn } est la solution de y 0 (t) = f (t, y(t)), nous avons max |yn − y(tn )| → 0 quand h→0 où
n=0,....,N
1
y ∈ C ([a, b]) est la solution de l'équation diérentielle.

Nous allons relier ces trois notions de consistance , de stabilité et de convergence à l'aide du

théorème fondamental suivant :

Théorème : Si la méthode est consistante et stable, elle est convergente.


Preuve : Puisque la méthode est consistante, nous avons pour toute solution y de l'équation
diérentielle y(tn+1 ) = y(tn ) + h [Φ(tn , y(xn ), h) + εn ] , n = 0, ..........., N − 1
ou max |εn | → 0 quand h → 0.
n=0,....,N −1
D'où max |yn − y(tn )| ≤ M1 |ηh − ζ| + M2 max |εn | .
n=0,....,N n=0,....,N −1
Théorème : Si Φ(t, y, h) vérie

1. Φ(t, y, 0) = f (t, y) ∀t ∈ [a, b]


2. |Φ(t, y, h) − Φ(x, y , h)| ≤ L |y − y ∗ |

Alors la méthode est convergente.

6.1 Notion d'ordre d'une méthode


yn+1 −yn
Φ(tn , yn , h) = h .
36 CHAPITRE 4. EQUATIONS DIFFÉRENTIELLES

y(tn +h)−yn
Soit 4(tn , yn , h) = h , y(tn + h) est solution execte en xn + h.

Dénition : On dira qu'un schéma est d'ordre p si p est le plus grand entier tel que :
|Φ(tn , yn , h) − 4(tn , yn , h)| ≤ Ahp , A ne dépend pas de y et Φ c'est à dire

|Φ(tn , yn , h) − 4(tn , yn , h)|


lim =A
h→0 h

On voit que la méthode sera d'autant meilleure que p sera grand.

Théorème de majoration de l'erreur


Si Φ(t, y, h) vérie :

1. Φ continue en t et en y au voisinage de h = 0.

2. Φ est Lipschitzienne en y.

3. ∃A et p tels que |Φ(t, y, h) − 4(t, y, h)| ≤ Ahp .

Alors l'erreur de discrétisation est d'order p et l'on a

eL(t−a) − 1
|en | = |yn − y(tn )| ≤ Ahp ,
L

où L est la constante de Lipschitz de Φ en y.

On voit donc pour un schéma d'ordre p l'erreur est aussi d'ordre p. Ce théorème donne une

estimation de l'erreur mais ne permet pas le contrôle de celle - ci, pour cela il faudrait pouvoir

estimer la constante A ce qui est en général impossible.

6.2 Construction d'un schéma d'ordre p


Soit y(t) la solution exacte de y0(t) = f (t, y(t)),

y(t + h) − y(t) h
= y 0 (t) + y 00 + o(h2 ) = 4(t, y(t), h).
h 2
∂y 0
Mais y 0 = f (t, y), y 00 = ∂t = fx0 + fy0 × f, 4(t, y, h) = f (t, y) + h2 ft0 + h2 fy0 × f + o(h2 ).

On aura donc un schéma d'ordre 2 et en choisissant comme fonction d'accroissement :

h 0 h
Φ(t, y, h) = f (t, y) + f (t, y + fy0 (t, y × f (t, y),
2 t 2

on peut montrer que ce schéma est stable et consistant. La compléxité des expressions analy-

tiques des dérivées augment, cette méthode est donc en général à éviter sauf dans des cas simples

(équations linéaires). On est donc amenée à rechercher un schéma d'ordre p qui ne nécéssite pas

le calcul des dérivées de f.


6. LES SCHÉMAS UN PAS 37

6.3 Schémas de Runge - Kutta


Posons Φ(x, y, h) = a1 f (x, y)+a2 f (x+p1 h, y +p2 hf (x, y)) et essayons de déterminer a1 , a2 , p1 ,
et p2 pour que le schéma soit convergent et d'ordre 2.

f (x + p1 h, y + p2 hf ) = f + p1 hfx0 + p2 hf fy0 + o(h2 ) ⇒

Φ(x, y, h) == (a1 + a2 )f (x, y) + a2 p1 hfx0 (x, y) + a2 p2 hf (x, y)fy0 (x, y) + o(h2 ).

D'autre part : 4(x, y, h) = f (x, y) + h2 fx0 (x, y) + h2 fy0 (x, y) × f (x, y) + o(h2 ), pour que le schéma
soit d'ordre 2, il faut que :

a1 + a2 = 1
1 1 1
a2 p1 = 2 d'où a2 = α, a1 = 1 − α, p1 = 2α , p2 = 2α
1
a2 p2 = 2

On a donc le schéma général de Runge - Kutta d'ordre 2

 
h h
yn+1 = yn + h (1 − α)f (xn , yn ) + αf (xn + , yn + f (xn , yn ) .
2α 2α
Cette méthode est consistante et stable. Elle est actuellement universellement utilisée et donne

d'excellents résultats.

Cas particuliers
La méthode d'Euler n'est qu'un exemple de méthodes plus générales de résolution, les mé-

thodes dites de Runge - Kutta. Elles consistent à écrire une solution approchée y où interviennent

uniquement des évaluations de la fonction f (et pas de ses dérivées !) de manière à ce que ce que

cette solution algébrique conduise à une erreur du même ordre que celle du développement en série

de Taylor.

Chaque méthode de Runge - Kutta consiste à écrire y(t + 1), solution approchée du problème

de Cauchy, sous la forme d'une combinaison linéaire de y(t) et de valeurs de la fonction f de telle

manière que le développement en série de Taylor de cette combinaison linéaire algébrique soit égal

au développement de Taylor de y(t + 1) jusqu'à un ordre xé.

6.4 Algorithme (RK2)


y0 = y(t0 ) = y(a)
y0 = t0 = a
n= nombre de pas

b−a
h= n

Pour k de 1 à n Faire
38 CHAPITRE 4. EQUATIONS DIFFÉRENTIELLES

K1 = f (tk−1 , yk−1 )
K2 = f (tk−1 + 12 h, yk−1 + h2 K1 )
yk = yk−1 + h2 (K1 + K2 )
tk = tk−1 + h
Fin Pour

6.5 Algorithme (RK4)


y0 = y(t0 ) = y(a)
y0 = t0 = a
n= nombre de pas

b−a
h= n

Pour k de 1 à n Faire

K1 = f (tk−1 , yk−1 )
K2 = f (tk−1 + 12 h, yk−1 + h2 K1 )
K3 = f (tk−1 + 12 h, yk−1 + h2 K2 )
K4 = f (tk−1 + h, yk−1 + hK1 )
yk = yk−1 + h6 (K1 + 2K2 + 2K3 + K4 )
tk = tk−1 + h
Fin Pour

7 Travaux Dirigés (Correction en classe)


Exercice 4.1 : Soit le problème de Cauchy suivant :

 y 0 (t) = f (t, y(t)) = e−t − 2y(t) , t ∈ [0, 1]
(1)
 y(0) = 1

1. Montrer que f (t, y(t) est lipshitzienne par rapport à y uniformément par rapport à t, et

donner une constante de Lipshitz.

2. Montrer que ce problème admet une solution unique.

3. Donner la solution exacte de (1), ainsi que y(0.2).

4. Appliquer la méthode d'Euler à ce problème, écrire l'algorithme correspondant et donner

l'approximation y2 de y(0.2) obtenue à l'aide d'un pas de discrétisation numérique h = 0.1.

5. Rappeler l'erreur de la méthode d'Euler et la comparer à l'erreur commise sur le calcul de

y(0.2); commentaires ?
7. TRAVAUX DIRIGÉS (CORRECTION EN CLASSE) 39

Exercice 4.2 : Soit l'équation diérentielle

t
y 0 (t) = y(t) − 2 , y(0) = 1
y
1. Approcher la solution de cette équation en t = 0.2 à l'aide de la méthode de Runge Kutta

d'ordre 2, avec un pas h = 0.2

2. Trouver la solution exacte de cette équation diérentielle.

3. Comparer.

Exercice 4. 3 : Soit l'équation diérentielle du second ordre



 y 00 (t) + 2y 0 (t) = 2y(t) , t ∈ [a, b]
 y(a) = 1 et y 0 (a) = 2

1. Ecrire cette équation diérentielle sous forme d'un système diérentiel de deux équations

diérentielles d'ordre 1.

2. Appliquer la méthode de Runge Kutta d'ordre 2 à ce système.

Exercice 4.4 : Soit l'équation diérentielle du second ordre



 y 00 (t) + 3 sin(y 0 (t)) = 2y(t) , t ∈ [a, b]
 y(a) = 1 et y 0 (a) = 2

1. Ecrire cette équation diérentielle sous forme d'un système diérentiel de deux équations

diérentielles d'ordre 1.

2. Appliquer la méthode de Runge Kutta d'ordre 2 à ce système.

3. Appliquer la méthode de Runge Kutta d'ordre 4 à ce système.

Exercice 4.5 : Soit l'équation diérentielle

y 0 (t) = y(t) + t , y(0) = 1

1. Approcher la solution de cette équation en t=1 à l'aide de la méthode d'Euler en subdi-

visant l'intervalle de travail en 10 parties égales.

2. Trouver la solution exacte de cette équation diérentielle.

3. Comparer.

Exercice 4.6 (TP) : On considère l'équation diérentielle suivante :





 y 0 (t) + 2y(t) = 3 exp(−4t)

y(0) = 1



h = 0.1 et 0 ≤ t ≤ 4

40 CHAPITRE 4. EQUATIONS DIFFÉRENTIELLES

Travail à faire :

1. Vérier que la solution exacte est y(t) = 2.5 exp(−2t) − 1.5 exp(−4t).

2. Ecrire et programmer la méthode d'Euler pour déterminer la solution approchée de cette

équation diérentielle.

3. Ecrire et programmer la méthode de Runge-Kutta d'ordre 2 pour déterminer la solution

approchée de cette équation diérentielle.

4. Ecrire et programmer la méthode de Runge-Kutta d'ordre 4 pour déterminer la solution

approchée de cette équation diérentielle.

5. Pour comparer l'erreur commise, tracer les courbes des deux solutions.
Chapitre 5

Méthode des diérences nies

Sommaire
1 Exemples et motivations . . . . . . . . . . . . . . . . . . . . . . . . . . 41
1.1 Exemple 1 : déformation d'une corde élastique . . . . . . . . . . . . . . 42
1.2 Exemple 2 : l'équation de la chaleur . . . . . . . . . . . . . . . . . . . . 42
2 Méthode des diérences nies . . . . . . . . . . . . . . . . . . . . . . . 42
2.1 Approximation des dérivées . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.2 Problème Approché . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.3 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3 Cas des problèmes elliptiques . . . . . . . . . . . . . . . . . . . . . . . 46
3.1 Modèle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4 Cas des problèmes évolutifs . . . . . . . . . . . . . . . . . . . . . . . . 50
4.1 Equation de la chaleur . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.2 Schéma Explicite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.3 Schéma implicite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5 Travaux Dirigés (Correction en classe) . . . . . . . . . . . . . . . . . 51

1 Exemples et motivations
Le but de ce chapitre est de présenter les méthodes d'approximation de solutions d'équations

aux dérivées partielles (EDP) par diérences nies en se basant sur les cas particuliers importants

de l'équation de la chaleur en dimension 1 et du modèle elliptique.

Les EDP apparaissent dans tous les domaines des sciences et de l'ingénierie.

41 Pr Hamid El Ouardi
42 CHAPITRE 5. MÉTHODE DES DIFFÉRENCES FINIES

1.1 Exemple 1 : déformation d'une corde élastique


Considérons le problème du déplacement vertical u(x) au point x d'une corde tendue entre les

extrémités x=0 et x = 1, soumise à une tension unité et à une densité de charge verticale f (x).
Le problème correspondant s'anonce : trouver une fonction u deux fois continûment dérivable sur

[0, 1] telle que

−u00 (x) = f (x) si 0 < x < 1,


u(0) = u(1) = 0.

1.2 Exemple 2 : l'équation de la chaleur


Il s'agit d'un problème d'évolution (c'est à dire un problème dépendant du temps) décrivant

la diusion de la chaleur dans un l métallique tendu sur l'ntervalle [0, 1], soumis à une source de

chaleur extérieure f (x, t) dépendant du temps et de la position le long du l, dont on connait la

température initiale u0 (x), la température α(t) à l' éxtrémité x = 0, et la tempéerature β(t) à l'

éxtrémité
 x=1
∂u ∂2u

∂t (x, t) ∂x2 (x, t) = f (x, t) pour x ∈ ]0, 1[ et t>0

x ∈ [0, 1]

 u(x, 0) = u0 (x) pour

u(0, t) = α(t) et u(1, t) = β(t)
f sappelle le terme source ; u0 sappelle la condition initiale ; α et β sappellent les conditions au

bord.

2 Méthode des diérences nies


Dans la plupart des cas, on est incapable de déterminer de manière analytique les solutions

précèdentes bien qu'une étude mathématique démontre leur existence et unicité. On fait alors appel

à des méthodes d'approximations basées sur l'idée suivante : on résout les équations approchées

de celle de (1),(2) et qui donnent des solutions facilement calculables.

On étudiera ici une méthode ancienne mais ecace, il, s'agit en gros de remplacer les dérivées

par leurs taux d'accroissement.

Remarques :

1. Il existe d'autres méthodes numériques (méthodes directes, méthodes de Galerkin, méthode

des éléments nis, méthode des volumes nis).

2. Un problème aux dérivées partielles nécessite la donnée de : d'un domaine Ω, d'une équation
aux dérivées partielles (E.D.P), de conditions aux limites, de conditions initiales (pour les
2. MÉTHODE DES DIFFÉRENCES FINIES 43

problèmes d'évolutions).

Pour obtenir une approximation numérique de la solution de ce problème, nous devons

approcher chacun des élements. Nous rencontrerons des problèmes de : precésion, rapidité
et de stabilité.

2.1 Approximation des dérivées


On rappelle la formule de développement de Taylor pour les fonctions supposées régulières.

(a) fonction à une variable

h2 00 h3 000 hn−1 (n−1) hn (n)


f (x + h) = f (x) + hf 0 (x) + f (x) + f (x) + .... f (x) + f (ξ)
2! 3! (n − 1)! n!
h2 h3 000 hn−1 (n−1)
f (x + h) = f (x) + hf 0 (x) + f 00 (x) + f (x) + .... f (x) + o(hn )
2! 3! (n − 1)!

(b) Fonction à deux variables

∂f ∂f h2 ∂ 2 f k2 ∂ 2 f
f (x + h, y + k) = f (x, y) + h (x, y) + k (x, y) + (x, y) + (x, y)
∂x ∂y 2! ∂x2 2! ∂y 2

(n−1)
∂2f

1 ∂f ∂f n
+hk (x, y) + ... h (x, y) + k (x, y) + o((|h| + |k|) ).
∂x∂y (n − 1)! ∂x ∂y

D'une façon générale, si f est une fonction d'une variable de classe C3 , et si h → 0, on a

d'aprés la formule de Taylor-Lagrange :

h2 00
f (x + h) = f (x) + hf 0 (x) + 2! f (x0 ), x0 ∈ (x, x + h)
2 3
f (x + h) = f (x) + hf 0 (x) + h
2! f 00 (x) + h
3! f (3) (x1 ), x1 ∈ (x, x + h)
h2 00 h3 (3)
f (x − h) = f (x) − hf 0 (x) + 2! f (x) − 3! f ∈ (x − h, x)
(x2 ), x2
3
f (x + h) − f (x − h) = 2hf 0 (x) + h3! f (x1 ) + f (3) (x2 ) = 2hf 0 (x) + 2h3 f (3) (ξ), ξ ∈
 (3) 
D'où :

(x − h, x + h)

c'ést à dire

f (x + h) − f (x) h
= f 0 (x) + f 00 (x0 ) = f 0 (x) + o(h)
h 2!
f (x + h) − f (x − h) f (x + h) − f (x − h)
f 0 (x) = + h2 f (3) (ξ) = + o(h2 ).
2h 2h

De même, si f est une fonction d'une variable de classe C4 , et si h→0 on a : f (x + h) =


2 3 4
f (x) + hf 0 (x) + h
2! f 00 (x) + h
3! f (3) (x) + h
4! f (3) (x) + o(h4 ).
h2 00 h3 (3) h4 (3)
f (x − h) = f (x) − hf 0 (x) + 2! f (x) − 3! f (x) + 4! f (x) + o(h4 ).
44 CHAPITRE 5. MÉTHODE DES DIFFÉRENCES FINIES

ce qui nous donne

00 f (x + h) + f (x − h) − 2f (x)
f (a) = + o(h2 )
h2

Ainsi, on obtient :

∼ f (x + h) − f (x)
f 0 (x) − , formule décentrée à droite
h
∼ f (x + h) − f (x − h)
f 0 (x) − , formule centrée
2h
∼ f (x + h) − 2f (x) + f (x − h)
f 00 (x) − , formule centrée du 2 ordre
h2

∂f ∼ f (x + h, y) − f (x − h, y)
(x, y) − ,
∂x 2h
∂f ∼ f (x, y + k) − f (x, y − k)
(x, y) − ,
∂y 2k
∂2f ∼ f (x + h, y) − 2f (x, y) + f (x − h, y)
(x, y) − ,
∂x2 h2

2.2 Problème Approché


Soit Ω un domaine et Γ sa frontière. On dénit le maillage, c'est à dire, on discrétise le

domaine Ω. Puis, on approxime les dérivées et les conditions aux bord. On obtient ainsi un

problème discrèt à résoudre.

2.3 Exemples
A) Supposons que Ω = ]0, a[×]0, b[ et soient N et M deux entiers et posons h= a
N, k= b
M,

alors :

R = Rhk = [Mij : Mij = (ih, jk); i = 0, ......N ; j = 0, .....M ] .

Les points frontaliers du réseau sont donc les points

Mij ; i ∈ {0, N } ∀j; j ∈ {0, M } ∀i.

Si la condition aux frontières est u(x, y) = g(x, y) ; x, y ∈ Γ , on posera alors ui,j = gi,j
pour i ∈ {0, N } ∀j; j ∈ {0, M } ∀i.
∂u
Si la condition à la frontière est
∂n = g(0, y) alors la dérivée normale est la dérivée en x.

Nous avons donc :


∂u ∂2u
u1,j = u0,j + h + h2 2∂x2 + o(h3 ).
∂n
2. MÉTHODE DES DIFFÉRENCES FINIES 45

Les dérivées étant prises aux points (0; jk). D'où (*)
∂2u
 
2 ∂u
∂x2
= 2 u1,j − u0,j − h + o(h).
h ∂n
∂2u
On peut approcher ∂x2
au point (0; jk) par

2
(u1,j − u0,j − hg0,j ) .
h2
∂u
Si la condition à la frontière est : α ∂n (0, y) + βu(0, y) = g(0, y) et en reprenant (*), nous
2
∂ u
pouvons donc approcher ∂x2
au point (0; jk) par :
 
2 βh h
u1,j − (1 − )u0,j − g0,j .
h2 α α
B) Considérons le problème suivant sur Ω = ]0, L[ × ]0, L[



 ∆u(x, y) = f (x, y); (x, y) ∈ Ω




u(x, y) = g(x, y); (x, y) ∈ ∂Ω

Soit un entier N, on obtient le réseau

 
L
R = Rhk = Mij : Mij = (ih, jk); i, j = 0, ......N ; h = .
N
Pour ne pas avoir des matrices trop grandes, nous prendrons N = 4.

Nous numérotons les points comme indiqué sur la gure 2.

Nous noterons fi la valeur de f au point numéroté i et gi la valeur de g au point numéroté

i (i = 10, 25) et Vi l'approximation au point i.

Nous avons l'approximation

u(x − h, y) + u(x + h, y) + u(x, y − h) + u(x, y + h) − 4u(x, y)


∆u(x, y) ' = f (x, y).
h2
Nous obtenons donc, en écrivant cette équation aux points i = 1, .........., 9 :
    
−4 1 0 1 0 0 0 V1 h2 f1 − g11 − g25
    
1 −4 1 0 0 0 0 V2   h2 f2 − g12
    
  
    
h2 f3 − g13 − g15 
    

 0 1 −4 0 0 0 0 
 V2  
  
    
2

 1 0 1 −4 1 0 0 
 V3  
  h f4 − g24 

    
2
0 1 0 1 0 1 0 =
V4  h f5
   
  
    
2
0 0 1 0 0 0 1 V5   h f6 − g16
    
  
    
2
0 0 0 1 −4 1 0 V6   h f7 − g21 − g23 
    
 
    
h2 f8 − g20
    

 0 0 0 0 1 −4 1 
 V7  
 


2
0 0 0 0 0 1 −4 V9 h f9 − g17 − g19
46 CHAPITRE 5. MÉTHODE DES DIFFÉRENCES FINIES

⇐⇒ AV = B

3 Cas des problèmes elliptiques


3.1 Modèle
On considère le modéle linéaire (P) suivant :

 00


 −u (x) + c(x)u(x) = f (x) pour 0<x<1

(P ) u(0) = 0



u(1) = 0

où c ∈ C([0, 1] , R+ ), et f ∈ C([0, 1] , R), qui peut modéliser par exemple un phénomène de

dision - réaction d'une espèce chimique.

On s'intérésse à l'approximation par la méthode de la diérence nies du problème station-

naire (P ).
1
Soit un pas du millage constant h= N +1 et une subdivision de ]0, 1[ , notée (xk )k=0,......N +1 ,
avec : x0 = 0 < x1 < x2 < ..... < xN +1 = 1. Soit ui l'inconnue discrète associée au noeud

i (i = 1...N ). On obtient les équations discètes en approchant u00 (xi ) par la formule de

Taylor,

u(xi + h) − 2u(xi ) + u(xi − h) 00 h2


2
= u (xi ) + u(4) (ζ).
h 24

Posons ci = c(xi ), fi = f (xi ) pour i = 1, .....N

d'où on approche (P ) par le schéma




 − ui+1 −2u
h2
i +ui−1
+ ci ui = fi pour i = 1, .........N

(Ph ) u0 = 0



uN +1 = 0

On peut écrire ces équations sous forme matricielle :

Ah Uh = Bh ,

avec
3. CAS DES PROBLÈMES ELLIPTIQUES 47

   
α
u1 f1 + h2
   
. .
   
   
Uh = 

 , Bh = 
 



 . 


 . 

β
uN fN + h2
 
2 −1
h2 + c1 h2 0 . . . 0
 
−1 2 −1
 

 h2 h2 + c2 h2 . . . 0 

−1
 
 0 . . . . . 
 h2 
 
et Ah = 
 . . . . . . .


 
. . . . . . .
 
 
 
−1 2 −1
+ cN −1
 
. . . .
h2 h2 h2
 
 
−1 2
0 . . . 0
h2 h2 + cN

Remarque : les questions suivantes se posent naturellement


(a) Le système Ah Uh = Bh , admet - il une solution unique ?

(b) A-t-on convergence de Uh vers u et en quel sens ?

Soit c = (c1 , ..., cN )t ∈ RN tel que ci ≥ 0 pour i = 1, ..., N ; Alors la matrice Ah est

symétrique dénie positive, et donc inversible.

Preuve : la matrice Ah est évidement symétrique. Montrons qu'elle est dénie positive. Soit

v = (v1 , ..., vN )t , on pose v0 = vN +1 = 0. Calculons le produit scalaire Ah v.v = v t Ah v. On

a :
  
2 + c1 h2 −1 0 . 0 v1
  
2
  
 −1 2 + c2 h −1 . 0  . 
  
  
 0
 −1 . . . 



1   
Ah v.v = 2 (v1 , ..., vN ) 
 . . . . .
 ,
h 




 . . . . .
  
 
  
2 + cN −1 h2 −1
  
 . . .  
  
0 . . −1 2 + cN h2 vN

c'est - à - dire

N
1 X
Ah v.v = vi (−vi−1 + (2 + ci h2 )vi − vi+1 ).
h2 j=1
On a donc, par changement d'indice :

 
N N N
1 X X X
Ah v.v = − 2  vi vi−1 + (2 + ci h2 )vi2 + vj−1 vj  .
h j=1 j=1 j=2
48 CHAPITRE 5. MÉTHODE DES DIFFÉRENCES FINIES

Et comme on a v0 = α et vN +1 = β , on peut écrire :

N N
X 1 X
ci vi2 + −2vi vi−1 + vi2 + vi−1
2 2

Ah v.v = 2
+ vN .
j=1
h j=1

On a donc nalement :

N N
X 1 X
Ah v.v = ci vi2 + (vi − vi−1 )2 + vN
2
≥ 0, ∀v = (v1 , ..., vN ) ∈ RN .
j=1
h2 j=1

Si on suppose Ah v.v = 0, on a alors


N
X
ci vi2 = 0
j=1

et

vi − vi−1 = 0,

pour tout i = 1....N.

On a donc v1 = v2 = ... = vN +1 = 0, ceci démontre que la matrice Ah est bien dénie.

Remarques :
(a) Si à la place des conditions u(0) = 0 et u(1) = 0, on avait u(0) = α et u(1) = β, on

fait le changement v(x) = u(x) + ax + b et on détermine a et b pour que v vérie une

équation du genre (P ).

(b) Ah est symétrique dénie positive, donc inversible, ce qui entraîne l'existence et l'unicité

de la solution de (Ph ).

Convergence : (c(x) ≥ 0)

Soit Uh la solution discréte du problème (Ph ) , u la solution du problème (P ) et posons V =t


(u(xi )) alors kUh − V k∞ ≤ ch2 ; c'est à dire kUh − V k∞ → 0 pour h→0 et i → +∞

Preuve : Par développement de Taylor, on a :

h2 00 h3 00 h4
u(xi+1 ) = u(xi ) + hu0 (xi ) + u (xi ) + u (xi ) + u(4) (ζi ),
2 6 24

h2 00 h3 00 h4
u(xi−1 ) = u(xi ) − hu0 (xi ) + u (xi ) − u (xi ) + u(4) (ηi ).
2 6 24
3. CAS DES PROBLÈMES ELLIPTIQUES 49

En additionnant ces deux inégalités, on obtient que :

u(xi+1 ) − 2u(xi ) + u(xi−1 ) 00 h2 h (4) i


2
= u (xi ) + u (ζi ) + u(4) (ηi ) ,
h 24
ce qui entraîne que :
h2
kUh − V k∞ ≤ sup u(4) (t) .

12 t∈[0,1]
Remarque : On peut généraliser facilement le même raisonnement au problème linéaire général à

une variable
 00


 −a(x)u (x) + b(x)u0 (x) + c(x)u(x) = f (x) pour 0<x<1

(S) u(0) = α



u(1) = β

On s'intéresse à la discrétisation du problème (S), à la résolution numérique du système discrétisé


et à la convergence.

Soit h tel que (N + 1)h = 1


u(x + h) − 2u(x) + u(x − h) 00 h2
2
= u (x) + u(4) (ζ),
h 24
u(x + h) − u(x − h) 0
= u (x) + h2 u(3) (ζ1 ).
2h
Posons ai = a(xi ), bi = b(xi ), ci = c(xi ) et fi = f (xi ) et on approche (S) par le problème approché

ui+1 −2ui +ui−1 −ui−1
 −ai

 h2 + bi ui+12h + ci ui = fi pour i = 1, .........N

(Sh ) u0 = α



uN +1 = β

Si on pose
   
a1 α b1 α
u1 f1 + h2 − 2h
   
   

 . 


 . 

   
 .   fi 
uh =   , bh = 
   


 . 


 . 

   
. .
   
   
   
aN β bN β
uN fN + h2 − 2h
 
. . . . . .
 
 

 . . . . . . 

 
2ai −ai bi
 . . h2 + ci h2 + 2h . . 
Ah = 
 

−ai bi

 . h2 − 2h . . . . 

 
. . . . . .
 
 
 
. . . . . .
50 CHAPITRE 5. MÉTHODE DES DIFFÉRENCES FINIES

d'où (Sh ) est équivalent : Ah u h = bh et pour la résolution numérique, on impose : a(x) ≥ a0 >
0 , c(x) ≥ 0 ).

THEOREME : Soit Uh =t (ui ) la solution de (Sh ) et V =t (u(xi )) la solution exacte de (S), on

2
a le résultat de convergence suivant : kV − Uh k∞ ≤ ch .

4 Cas des problèmes évolutifs


4.1 Equation de la chaleur
La présentation des méthodes de base pour la résolution de ce type d'équation sera eectuée à

travers l'équation suivante :

On considère le problème suivant : trouver u(x, t) : [0, 1] × R+ → R, solution de :

 2
∂u


 ∂t (x, t) = d ∂∂su2 (x, t) 0 < x < 1; t > 0


u(0, t) = α(t)





 u(1, t) = β(t)


u(x, 0) = ϕ0 (x)

d coecient > 0.

Cette équation peut s'interpréter comme celle qui décrit l'évolution de la température d'une barre

dans le temps, causée par l'absorption d'un ux de chaleur. Avec ce modèle, on cherche à prédire

la température en tout point à tout instant à partir d'une distribution initiale ϕ0 .

Notons par ui,j l'approximation de u(x, t) au point (xi , tj ) avec : xi = i∆x, tj = j∆t, 0 ≤ i ≤
N, 0 ≤ j ≤ M.

4.2 Schéma Explicite



ui,j+1 −ui,j ui+1,j +ui−1,j −2ui,j


 ∆t =d (∆s)2 ,1 ≤ i ≤ N − 1, 0 ≤ j ≤ M − 1


u0,j = α(tj ), j ≥ 0





 un+1,j = β(tj ), j ≥ 0


ui,0 = ϕ0 (si ), i ≥ 0

d∆t
avec la dénition : λ= (∆s)2 , on peut le réecrire comme :

ui,j+1 = λui−1,j + (1 − 2λ)ui,j + λui+1,j.

En posant
5. TRAVAUX DIRIGÉS (CORRECTION EN CLASSE) 51

 
 n+1 1 − 2λ λ  n
 
 
 λ 1 − 2λ .
   
    
    
  
   . . .  
=
 u  
 i−1

   ui−1 

. . . .
    
 
 ui   ui
   
 
. 1 − 2λ λ
    
 
ui+1   ui+1
λ 1 − 2λ
| {z }
A
Si on décompose la matrice
   
1 0 −2 1
   
   
 0
 1 . 

 1
 −2 . 

   
 . . .   . . . 
A=  + λ  = I + λT
   
. . . . . . . .
   
   
   
. 1 0  . −2 1
   
  
   
0 1 1 −2
C'est à dire

un+1 = (I + λTd )un .

4.3 Schéma implicite



ui,j+1 −ui,j ui+1,j+1 +ui−1,j+1 −2ui,j+1


 ∆t =d (∆s)2 + fi,j , 1 ≤ i ≤ N − 1, 0 ≤ j ≤ M − 1


u0,j = α(tj ), j ≥ 0





 un+1,j = β(tj ), j ≥ 0


ui,0 = ϕ0 (si ), i ≥ 0

−ui,j = λui−1,j − (1 + 2λ)ui,j+1 + λui+1,j+1.

Soit sous forme matricielle

(I − λTd )un+1 = un .

5 Travaux Dirigés (Correction en classe)


Exercice 5.1 Considèrons le problème de Dirichlet suivant :

Trouver u(x, y) dénie sur D = ]0, 1[ × ]0, 1[ tel que :



 −∆u(x, y) = p dans D
(P )
 u(x, y) = 0 sur ∂D
52 CHAPITRE 5. MÉTHODE DES DIFFÉRENCES FINIES

1
Notons h= 3 le pas du maillage de D et Vi l'approximation de u au noeud numéro i. Ecrire la

forme discrétisée du problème (P ) et en déduire le système linéaire (sous forme matricielle) que

vérient les (Vi )i∈I où I est l'ensemble des noeuds.

Exercice 5.2 Soit l'équation aux dérivées partielles





 u00 (x) + f (x)u0 (x) + g(x)u(x) = q(x) x ∈ [a, b]

(P ) u(a) = α



u(b) = β

où f, g et q sont des fonctions connues.

(b−a)
On pose h= n et on note xi = a + ih, ui = u(xi ), fi = f (xi ), qi = q(xi ), gi = g(xi ).

1 Montrer que la diérence nie appliquée à (P ) est équivalent à la résolution du système

AU = B, avec U = (u1 , ...., un−1 ) , A et B à déterminer.

Exercice 5.3 On considère l'équation aux dérivées partielles suivant :


∂2u ∂2u


 ∂x2 + ∂y 2 = 0, (x, y) ∈ ]0, 0.5[ × ]0, 0.5[


u(0, y) = u(x, 0) = 0 0 ≤ x ≤ 0.5





 u(x, 0.5) = 200x 0 ≤ x ≤ 0.5


u(0.5, y) = 200y 0 ≤ y ≤ 0.5

On choisit les pas h et k telle que 8h = 8k = 1.



1 Dénir un schéma aux diérences nies qui permet d'approcher (P ).

2 On pose ωi = u(Pi ) avec Pi = (xi , yj ) montrer que le problème approché est équivalent à

résoudre le système linéaire Aω = B.

Exercice 5.4 Soit le système aux équations aux dérivées partielles


∂u ∂v


 ∂t = c ∂x x ∈ R+ , t ∈ R+


∂v
= c ∂u +
∂x x ∈ R , t ∈ R
+


∂t
(S)



 u(x, 0) = u0 (x)


v(x, 0) = v0 (x)

c est une constante réelle positive.

1) Proposer un schéma aux diérences nies permettant de résoudre numériquement (S)

2) Montrer que (S) est équivalent à l'équation aux dérivées partielles (P)


∂2w 2


 ∂t2 = d ∂∂xw2 (1)

(P ) w(x, 0) = a(x) (2)


 ∂w(x,0)
= b(x) (3)

∂t
5. TRAVAUX DIRIGÉS (CORRECTION EN CLASSE) 53

Déterminer w , d. (on admet que (3) est vériée)

3) Proposer un schéma implicite permettant de résoudre (P).

4) On pose T (x, t) = f (x + ct) + g(x − ct).

Déterminer l'équation aux dérivées partielles vériée par T (x, t).

Vous aimerez peut-être aussi