Vous êtes sur la page 1sur 2

ENSAM-MEKNES 3EME ANNEE

TP N◦ 1 RESOLUTION NUMERIQUE
DES EDO 2020-2021

TP N◦ 1 Résolution numérique des EDO


Schémas d’Euler et ordre

Exercice 1 Euler explicite


On cherche à mettre en œuvre la méthode d’Euler explicite pour la résolution numérique du
problème de Cauchy (
y 0 (t) = f (t, y(t)), t ∈ [0, T ]
y(0) = y0 .
Elle consiste, pour un pas h donné, à construire une suite d’approximations (yn ) de la solution
y aux temps tn = nh, par la formule

yn+1 = yn + hf (tn , yn ).

Par la suite, on utilise l’exemple modèle y 0 = t − ty avec la condition initiale y(0) = 2. La


−t2
solution exacte de cet exemple est donnée par y(t) = 1 + e 2 .
Les fichiers Matlab "prg_principal.m", "EulerExp.m" et "f1.m" contiennent respectivement le
programme principal, le programme du schéma d’Euler explicite et le programme de la fonction
f . (Voir au dos de la feuille)
1. Tester le programme et interpréter la figure affichée

2. Programmer la solution exacte, puis calculer l’erreur d’approximation;

3. Tracer les deux solutions sur la même figure;

4. Effectuer des simulations pour différentes valeurs du pas h (h = T /N avec N = 10 : 10 :


1000);

5. Tracer la courbe du log des erreurs d’approximation en fonction du log des pas h;

6. Quel est l’ordre obtenue numériquement du schéma d’Euler explicite.


L’ordre numérique est la pente de la droite de la régression linéaire des points.

Exercice 2 Euler point milieu


On utilise ici l’exemple modèle précédent y 0 (t) = t − ty(t), y(0) = 2. La solution exacte est
−t2
donnée par y(t) = 1 + e 2 .
Le schéma d’Euler point milieu consiste à construire une suite d’approximations (yn ) de la
solution y de la façon suivante :

yn+1/2 = yn + h2 f (tn , yn )
yn+1 = yn + hf (tn + h2 , yn+1/2 ).

1. Ecrire une fonction "EulerPointMilieu" qui permet de calculer la solution approchée yn


par la méthode d’Euler point milieu.

2. Tracer les deux solutions approchées (Euler explicite et point milieu) et la solution exacte
sur la même figure

3. Déterminer numériquement l’ordre de la méthode d’Euler point milieu.

1
ENSAM-MEKNES 3EME ANNEE
TP N◦ 1 RESOLUTION NUMERIQUE
DES EDO 2020-2021

________________________________
%FICHIER : "prg_principal.m"
% Programme principal
clear all
close all
T=2.; % temps final
N=50; % Nombre de pas de temps
y0=2.; % solution initiale
[yap,tps]=EulerExp(@myfunc,y0,N,T);
plot(tps,yap)
xlabel(’temps t’);
ylabel(’y’);
title(’Solution approchee par Euler explicite’);
________________________________

________________________________
%FICHIER : "EulerExp.m"
%
function [liste_y,liste_t]=EulerExp(f,y0,N,T)
t=0; liste_t=[0];
y=y0; liste_y=[y0];
h=T/N;
for i=1:N
y=y+h*f(t,y);
t=t+h;
liste_t=[liste_t,t];
liste_y=[liste_y,y];
end
________________________________

________________________________
%FICHIER : "f1.m"
%
function yp = f1(t,y)
yp=t-t*y;
end
________________________________

________________________________
% Calcul de l’ordre numerique
% liste_h = 10:10:1000
% liste_e : la liste des erreurs correspondantes à liste_h

polyfit(log(liste_h),log(liste_e),1)
________________________________

Vous aimerez peut-être aussi