Adloun

mathématiques complémentaires (terminale) · Chapitre 6 · Exercice de TD

La méthode d'Euler, à la main puis en Python

Primitives et équations différentielles · niveau 3 (difficile)

Énoncé

La méthode d'Euler, à la main puis en Python.

On reprend la perfusion continue étudiée plus haut : avec .

  • Écrire la relation de récurrence donnée par la méthode d'Euler de pas , puis calculer à la main.
  • Comparer à la valeur exacte .
  • Écrire en Python le calcul pour ; ; et , et commenter.

Corrigé

  • Récurrence. Avec et :

On reconnaît une suite arithmético-géométrique — celles du chapitre 1. Partant de :

  • Comparaison. La valeur exacte est mg/L. Euler surestime de mg/L, soit environ . Ce n'est pas un hasard : la courbe est creusée vers le bas, donc chaque tangente passe au-dessus d'elle.
  • En Python.

def euler(f, t0, y0, h, n):
    t, y = t0, y0
    for _ in range(n):
        y = y + h * f(t, y)
        t = t + h
    return y

from math import exp

perfusion = lambda t, y: -0.2 * y + 4

for h in (1, 0.5, 0.1, 0.01):
    print(h, round(euler(perfusion, 0, 0, h, round(5 / h)), 4))
# 1    -> 13.4464
# 0.5  -> 13.0264
# 0.1  -> 12.7166
# 0.01 -> 12.6498

print(round(20 * (1 - exp(-1)), 4))   # exact : 12.6424

À chaque division du pas par , l'écart est divisé par environ ( ; ; ; ). C'est le comportement caractéristique de la méthode d'Euler : elle est lente, mais elle converge, et surtout elle ne demande jamais de savoir résoudre.

100 % gratuit

Essaie le suivant avec le tuteur

Faire l'exercice suivant avec le tuteur

Sans compte : le cours et un exercice avec le tuteur. Pour tout le reste : inscription gratuite en 30 secondes, sans carte bancaire.

Le cours du chapitre · Tous les exercices du chapitre

Exercice suivant avec le tuteur →