Tp11 corrige Corrigé informatique commune Résolution numérique d ? une équation di ?érentielle Exercice On commence par importer les di ?érents modules et fonctions dont nous auront besoin import numpy as np import matplotlib pyplot as plt from scipy inte
Corrigé informatique commune Résolution numérique d ? une équation di ?érentielle Exercice On commence par importer les di ?érents modules et fonctions dont nous auront besoin import numpy as np import matplotlib pyplot as plt from scipy integrate import odeint La fonction odeint nous permet d ? obtenir une résolution numérique de référence pour l ? équation di ?érentielle qui nous intéresse def f x t return np sin t np sin x t np linspace x odeint f t plt plot t x plt title solution de x' sin t sin x plt show solution de x' sin t sin x La méthode d ? Euler se dé ?nit ainsi def euler f x t n len t x x for k in range n ?? h t k ?? t k p f x k t k x append x k h p return x mais le résultat est assez décevant la solution fournie par la méthode s ? éloigne irrémédiablement de la vraie solution http info-llg fr page Cx euler f t plt plot t x ' ?? ??' label 'Solution exacte' plt plot t x label Méthode d'Euler plt title Méthode d'Euler plt legend loc 'upper left' plt show Méthode d'Euler Solution exacte Méthode d'Euler En revanche les méthodes de Heun et RK s ? avèrent bien plus précises def heun f x t n len t x x for k in range n ?? h t k ?? t k p f x k t k p f x k h p t k x append x k h p p return x def rk f x t n len t x x for k in range n ?? h t k ?? t k p f x k t k p f x k h p t k h p f x k h p t k h p f x k h p t k x append x k h p p p p return x et fournissent des résultats peu discernables de la solution exacte En ?n la méthode d ? Euler implicite est dé ?nie par from scipy optimize import newton def eulerbis f x t n len t x x for k in range n ?? h t k ?? t k s newton lambda u u ?? x k ?? f u t k h x k x append s return x Elle fournit un résultat visuellement un peu meilleur que la méthode d ? Euler classique mais s ? éloigne elle aussi de la solution exacte page Cx eulerbis f t plt plot t x ' ?? ??' label 'Solution exacte' plt plot t x label Méthode d'Euler plt title Méthode d'Euler implicite plt legend loc 'best' plt show Méthode d'Euler implicite Solution exacte Méthode d'Euler Exercice On dé ?nit l ? erreur de la méthode ainsi def erreur methode n t np linspace n def f x t return x x methode f t m for k
Documents similaires
-
30
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Aucune attribution requise- Détails
- Publié le Jan 09, 2021
- Catégorie Science & technolo...
- Langue French
- Taille du fichier 46.5kB