Aller au contenu

Leçon 2

Construire l'exponentielle par la méthode d'Euler

Vidéo 2 : Construire l'exponentielle par la méthode d'Euler · 4 min 08 s · sous-titres en français

Le cours écrit

2.1 L'idée

On sait que exp⁡\exp existe, mais on ne sait pas calculer exp⁡(1)\exp(1). La méthode d'Euler avance à petits pas en suivant la tangente. Pour hh proche de 00, l'approximation par la tangente donne f(x+h)≈f(x)+h f′(x).f(x + h) \approx f(x) + h\,f'(x). Pour la fonction exponentielle, f′(x)=f(x)f'(x) = f(x), donc f(x+h)≈f(x)+h f(x)f(x + h) \approx f(x) + h\,f(x), c'est-à-dire f(x+h)≈(1+h) f(x).f(x + h) \approx (1 + h)\,f(x). Avancer d'un pas hh revient à multiplier par 1+h1 + h.

2.2 À la main

Exemple 5 (pas de 0,50{,}5). On part de x=0x = 0, où y=1y = 1.

xx 00 0,50{,}5 11
yy 11 1×1,5=1,51 \times 1{,}5 = 1{,}5 1,5×1,5=2,251{,}5 \times 1{,}5 = 2{,}25

On obtient exp⁡(1)≈2,25\exp(1) \approx 2{,}25, une approximation grossière : la ligne brisée reste sous la courbe.

Exemple 6 (pas de 0,250{,}25). Il faut quatre pas pour atteindre 11, et chaque pas multiplie par 1,251{,}25.

xx 00 0,250{,}25 0,50{,}5 0,750{,}75 11
yy 11 1,251{,}25 1,561{,}56 1,951{,}95 2,442{,}44

Plus le pas est petit, meilleure est l'approximation, mais plus il y a de calculs.

2.3 Le programme Python

def euler(h, n):
    y = 1
    Y = [y]
    for i in range(n):
        y = y + h * y
        Y.append(y)
    return Y

La fonction euler reçoit le pas h et le nombre de pas n. Elle renvoie la liste des valeurs yy. La ligne y = y + h * y s'écrit en langage naturel y←y+h×yy \leftarrow y + h \times y.

2.4 Les résultats

Exemple 7. Pour atteindre x=1x = 1, on lit le dernier terme de la liste.

Appel Résultat affiché
euler(0.5, 2) [1, 1.5, 2.25]
euler(0.1, 10)[10] 2.5937424601
euler(0.01, 100)[100] 2.704813829421526
euler(0.001, 1000)[1000] 2.716923932235896

Python donne lui-même exp(1) (avec from math import exp) : 2.718281828459045. Les valeurs s'en approchent quand le pas diminue.

2.5 Vers la gauche

Avec un pas négatif, on avance vers la gauche.

Exemple 8. Avec euler(-0.1, 10)[10], on arrive en x=−1x = -1. Le programme affiche 0.3486784401, alors que exp(-1) vaut 0.36787944117144233. Chaque pas multiplie par 1+h=0,91 + h = 0{,}9 : la valeur diminue, sans s'annuler.

2.6 Une suite géométrique

À chaque pas, on multiplie par 1+h1 + h. Après nn pas, on a donc yn=(1+h)n.y_n = (1 + h)^n. Les valeurs calculées forment une suite géométrique de raison 1+h1 + h. Cette remarque sert aux leçons 3, 7 et 9.

Lire le cours complet du chapitre

Exercices 3 et 4

  • Exercice 3 : la méthode d'Euler à la main
  • Exercice 4 : la méthode d'Euler en Python

Exercices du chapitre (PDF, 198 Ko)

Corrigés

Cherche d'abord les exercices sur ta feuille, puis compare avec le corrigé détaillé.

Corrigés du chapitre (PDF, 154 Ko)

Tu es hors connexion. Les chapitres téléchargés restent disponibles dans Hors connexion.