NOM : Date : .
PRENOM : Groupe : .
Mathématiques pour la Biologie (semestre 2) : Feuille-réponses du TD 5
La méthode de Euler pour l’approximation d’une solution d’une équation differentielle
Principe de la méthode de Euler
Etant donné une équation differentielle
dx
= f (t, x), (1)
dt
on veut approximer, pour une valeur initiale x0 , une fonction x(t) qui verifie l’équation et pour laquelle
on a x(0) = x0 . Pour faire cela, on choisit quelques points ti pour lesquels on calcule des approximations
xi correspondants. On espère que xi ≈ x(ti ). A partir de la valeur x0 on peut calculer dx 0
dt (0) = x (0) à
l’aide de l’équation (1) en calculant f (0, x0 ). Comme valeur approximative x1 au temps t1 = 0 + t1 on
choisit de prendre
x0 + dX = x0 + x0 (0) · t1 . (2)
En général, la valeur xi+1 est déterminée en ajoutant ∆xi = (ti+1 − ti ) · f (ti , xi ) à son predecesseur, la
valeur xi :
xi+1 = xi + ∆xi = xi + (ti+1 − ti ) · f (ti , xi ). (3)
Fig. 1 – Pour approximer la courbe, on suit la droite tangente à cette courbe. La tangente est donnée
par le point xi et le coefficient directeur x0 (ti ) = f (ti , x(ti )).
Cette procedure est justifiée par les approximations suivants. La derivée x0 (t) peut être vue comme
le quotient de deux differences (pour ∆t petit) :
∆x xi+1 − xi
= ≈ x0 (ti ). (4)
∆t ti+1 − ti
En isolant xi+1 on obtient
xi+1 = xi + (ti+1 − ti ) · x0 (ti ), (5)
ou la derivée inconnue x0 (t) de la fonction x(t) - qu’on ne connait pas non plus - est remplacée par f (t, x)
correspondant à (1). Cela donne la spécification (3).
1
Exemple
Considerons l’équation
dx
= −2t · x(t), x(0) = 1 (6)
dt
2
La solution analytique est x(t) = e−t .
Exercice : Compléter le tableau suivant :
2
i ti x(ti ) = e−(ti ) xi ∆xi = (ti+1 − ti ) · (−2)ti · xi xi+1 = xi + ∆xi
0 0 1 1 (0.2 − 0.0) · (−2) · 0 · 1 = 0 1+0=1
1 0.2 1 (0.4 − 0.2) · (−2) · 0.2 · 1 = −0.08 1 + (−0.08) = 0.92
2 0.4 0.92
3 0.6
4 0.8
5 1.0
Exercice : Dessiner les valeurs xi et x(ti ) dans un système de coordonnées t - x.
Méthode d’Euler en deux variables
On considère maintenant le système
(
x0 (t) = 0.08x(t) − 0.004x(t)y(t)
y 0 (t) = −0.06y(t) + 0.002x(t)y(t)
avec une population initiale x(0) = 40 lapins et y(0) = 20 renards. On souhaite étudier l’évolution des
deux populations sur une période de 10 ans. Si on introduit les vecteurs
µ ¶ µ ¶
x(t) 0.08x(t) − 0.004x(t)y(t)
p(t) = , f (t, p) = ,
y(t) −0.06y(t) + 0.002x(t)y(t)
on peut écrire le système (7) sous la forme
µ ¶
0 x(0)
p (t) = f (t, p), p(0) = .
y(0)
La méthode d’Euler progressive s’écrit
ui+1 − ui
= f (ti , ui ) ou ui+1 = ui + (ti+1 − ti ) · f (ti , ui ) (7)
ti+1 − ti
2
ce qui équivaut au schéma (on écrit les composants de u = (u1 , u2 ) séparement)
(ui+1 )1 −(ui )1
ti+1 −ti = 0.08(ui )1 − 0.004(ui )1 (ui )2
(ui+1 )2 −(ui )2
= −0.06(ui )2 + 0.002(ui )1 (ui )2 (8)
ti+1 −ti
(u0 )1 = x(0), (u0 )2 = y(0).
ou, mieux lisible, en utilisant la transformation dans (7) :
¡ ¢
(ui+1 )1 = (ui )1 + (ti+1 − ti ) · ¡0.08(ui )1 − 0.004(ui )1 (ui )2 ¢
(ui+1 )2 = (ui )2 + (ti+1 − ti ) · − 0.06(ui )2 + 0.002(ui )1 (ui )2 (9)
(u0 )1 = x(0), (u0 )2 = y(0).
Ensuite on peut résoudre le système pas à pas. En utilisant les notations comme en une dimension,
¡ ¢
∆(ui )1 = (ti+1 − ti ) · 0.08(ui )1 − 0.004(ui )1 (ui )2 ,
¡ ¢
∆(ui )2 = (ti+1 − ti ) · − 0.06(ui )2 + 0.002(ui )1 (ui )2 ,
on calcule maintenant des valeurs approximatives pour certains moments ti .
Exercice : Compléter le tableau suivant :
i ti (ui )1 (ui )2 ∆(ui )1 (ui+1 )1 = (ui )1 + ∆(ui )1 ∆(ui )2 (ui+1 )2 = (ui )2 + ∆(ui )2
0 0 40 20
1 10
2 20
3 30
4 40
5 50
6 60
Exercice :
– Dessiner approximativement le developpement des populations comme dans la figure suivant.
– Comparer ta figure avec celle en bas. Quelle est plus précise ? Pourquoi est-elle plus précise ?
– Dessiner la figure correspondante dans le plan x - y.