Chargement de l'audio en cours
Plus

Plus

TP1. Méthode d’Euler pour une équation y'=f
P.296

Mode édition
Ajouter

Ajouter

Terminer

Terminer

TP INFO


1
Méthode d’Euler pour une équation y=fy^{\prime}=f




Énoncé

On considère l’équation différentielle (E):y=ex2(\mathrm{E}): y^{\prime}=\mathrm{e}^{-x^{2}}. Soit ff la solution de cette équation vérifiant f(0)=1f(0) = 1.
La méthode d’Euler est une méthode numérique qui permet de trouver une valeur approchée de la solution de (E)(\mathrm{E}) en utilisant les deux hypothèses vérifiées par ff : f:f(x)=ex2f: f^{\prime}(x)=\mathrm{e}^{-x^{2}} et f(0)=1f(0)=1. On va utiliser cette méthode pour construire une approximation de la courbe représentative de ff sur l’intervalle I=[0 ;2]\mathrm{I}=[0~; 2].
On commence par choisir un pas h>0h > 0. On pose x0=0x_0=0 et, pour tout entier naturel nn, xn+1=xn+hx_{n+1}=x_{n}+h puis on définit les points Mn(xn ;f(xn))\mathrm{M}_{n}\left(x_{n}~; f\left(x_{n}\right)\right) qui appartiennent donc à la courbe représentative de ff que l’on souhaite approcher.
Comme on ne connaît pas l’expression de la fonction ff, on ne peut pas calculer directement les coordonnées de ces points.

Objectif

Construire une suite de points Pn(xn ;yn)\boldsymbol{{\mathrm{P}}_{n}(x_{n}~; y_{n})} approchant au mieux les points Mn(xn ;f(xn))\boldsymbol{{\mathrm{M}}_{n}\left(x_{n}~; f\left(x_{n}\right)\right)} pour obtenir une approximation d’une primitive de la fonction xex2\boldsymbol{x \mapsto \mathbf{e}^{-x^2}} sur I\mathbf{I} à l’aide d’une des deux méthodes.

Questions préliminaires :

1. Exprimer x1x_1 puis x2x_2 en fonction de hh.


2. Justifier que f(xn+1)f(xn)hf(xn)\dfrac{f\left(x_{n+1}\right)-f\left(x_{n}\right)}{h} \approx f^{\prime}\left(x_{n}\right) lorsque hh est proche de 00.


3. En déduire que f(xn+1)f(xn)+hexn2f\left(x_{n+1}\right) \approx f\left(x_{n}\right)+h \mathrm{e}^{-x_{n}^{2}} lorsque hh est proche de 00.


4. a. Cette relation permet d’approcher les ordonnées yny_n des points Pn\mathrm{P}_n de la manière suivante : yn+1=yn+hexn2y_{n+1}=y_{n}+h \mathrm{e}^{-x_{n}^{2}}. Justifier cette égalité.


b. Justifier que y0=1y_0=1.


c. Exprimer y1y_1 et y2y_2 en fonction de hh.
Voir les réponses
MÉTHODE DE RÉSOLUTION 1
TABLEUR

Dans une feuille de calcul, on construit un tableau donnant les valeurs de xnx_n et yny_nnn est un entier naturel de 00 à 2020. On entre la valeur 00 dans la cellule B2, la valeur 11 dans la cellule C2 et on choisit h=0,1h = 0{,}1.
On obtient alors la feuille suivante :
Méthode d’Euler pour une équation y′=f

1. Écrire les formules à entrer en B3 et C3 puis étirer vers le bas pour obtenir xnx_n et yny_n.

2. Représenter la suite de points Pn\mathrm{P}_n.
MÉTHODE DE RÉSOLUTION 2
PYTHON

On veut écrire un programme sous Python qui, pour une valeur de hh saisie par l’utilisateur, calcule les coordonnées (xn ;yn)\left(x_{n}~; y_{n}\right) des points Pn\mathrm{P}_n.

1. Déterminer la valeur de hh pour obtenir 21 points équitablement répartis dans l’intervalle [0 ;2][0~; 2].

2. Écrire une fonction approximation d’arguments x, y et h (correspondant à xnx_n, yny_n et hh) qui retourne la valeur approchée de l’ordonnée du point Pn+1\mathrm{P}_{n+1}.

Aide
On pensera à charger la fonction exp du module math.


a. Écrire une fonction Euler d’arguments x0, y0 et h qui retourne les abscisses xix_i et les ordonnées yiy_i des points cherchés.


b. En utilisant par exemple le module matplotlib, représenter l’approximation graphique recherchée.



Voir les réponses

Pour aller plus loin


En 1901, les mathématiciens Carl Runge et Martin Wilhelm Kutta développent une méthode pour résoudre les équations différentielles du type y=f(t ,y)y^{\prime}=f(t~, y) avec la condition y(t0)=y0y\left(t_{0}\right)=y_{0}.
À l’ordre 1, la méthode est similaire à la méthode d’Euler en posant yn+1=yn+h×f(tn ,yn)y_{n+1}=y_{n}+h \times f\left(t_{n}~, y_{n}\right).
À l’ordre 2, la méthode gagne en précision en posant yn+1=yn+h×f(tn+h2,yn+h2f(tn ,yn))y_{n+1}=y_{n}+h \times f\left(t_{n}+\dfrac{h}{2}, y_{n}+\dfrac{h}{2} f\left(t_{n}~, y_{n}\right)\right).
Utilisation des cookies
En poursuivant votre navigation sans modifier vos paramètres, vous acceptez l'utilisation des cookies permettant le bon fonctionnement du service.
Pour plus d’informations, cliquez ici.