Vous êtes sur la page 1sur 4

I.N.S.S.E.T.

Universit de Picardie Licence Maths et SPI 2me anne

Programmation avec Matlab M. Marcoux

TP 8 Equations diffrentielles
1. Introduction
Lobjectif de ce TP est de rsoudre numriquement une quation diffrentielle. Nous nous limiterons ici au cas des quations diffrentielles linaires coefficients constants du premier ordre.

Les points suivants seront abords : Scripts fonction. Paramtres dentre et de sortie Boucle for

2. Rappels mathmatiques et prparation


Allez dans le rpertoire correspondant votre nom : c:\tpmatlab\votrenom\ Crez un rpertoire TP8 et allez dans celui-ci.

a) Premier ordre
On sintresse au cas du circuit R-L aliment par une tension continue Ve

i L

Ve

Vs

8-1

On rappelle que dans ce cas lapplication de la loi dOhm donne lquation diffrentielle reliant le courant i (t ) et la tension Ve suivante :
L di + R i = Ve dt

Mettez cette quation sous la forme

di = f (t , i ) dt

Dterminez la solution gnrale de cette quation en fonction dune constante dintgration k Donnez la solution exacte du problme en considrant comme condition initiale
i (t = 0) = 0

Les valeurs numriques sont les suivantes : R = 40 , L = 3 H et Ve = 2 V Ralisez un script intitul "solexacte.m" traant la courbe commente de la solution exacte pour le circuit RL entre linstant t = 0 et linstant final (dure) indiqu par lutilisateur

Tentons maintenant dobtenir numriquement la solution de ces quations. Le but sera en fait dobtenir le trac de la solution de lquation diffrentielle, sans en connatre priori sa forme analytique.

b) Mthode dEuler
Soit rsoudre lquation diffrentielle suivante : dy = f (t , y ) dt y (t = 0) = y 0 (1)

En supposant y (t ) connue linstant t, le dveloppement en srie de Taylor de y (t + t ) au voisinage de t donne : d y (t ) 2 d 2 y (t ) 3 d 3 y (t ) 4 d 4 y y (t + t ) = y (t ) + t + + + + ... dt 2 ! dt 2 3! dt 3 4 ! dt 4 8-2

A lordre 1, on obtient :
y (t + t ) = y (t ) + t dy = y (t ) + t f ( y, t ) dt

Pour t constant, on a : yi +1 = y i + t f ( y i , t i ) (2)

y tant connue t = 0 , la fonction peut tre dtermine tout autre instant ultrieur. En rptant itrativement ce calcul, on abouti un trac de la solution de lquation de dpart (1).

3. Manipulation

a) Equation du premier ordre Mthode dEuler


Ecrire un script fonction "f.m" qui code la fonction f (t , i ) de la partie 2-a de la prparation Ecrivez un script "Euler1.m" qui code la mthode dEuler permettant de rsoudre une quation diffrentielle (1) laide de la relation (2)

Conseils : Paramtres dentre : le pas de calcul t , et la dure du calcul T Paramtres de sortie : les valeurs de y (ordonne) et t (abscisse) Lvaluation se fera sur un certain intervalle pour la variable t (limite infrieure en 0) Utilisez une boucle for pour lvaluation de la relation (2). Il sagira dobtenir un vecteur pour y. A lissue du calcul, faites le trac de la fonction y (t ) et enregistrez le.

Testez le script, et commentez la courbe obtenue. Choisir judicieusement les valeurs (pas et dure du calcul) 8-3

b) Erreur
Faire un script "erreur.m" traant sur un mme graphique la solution exacte et la solution approche obtenue par la mthode dEuler prcdente et traant sur une autre courbe lerreur (cart entre ces 2 solutions) Regardez lerreur obtenue pour diffrents pas dintgration. Commentez.

c) Application
Ecrivez un script "Euler2.m" effectuant le trac de la rponse du circuit R-L en rgime sinusodal forc : le signal dentre tant : Ve (t ) = E sin(2 f t ) Commentez avec E = 2 V et f = 100 Hz

d) Fonctions intgres
Lobjectif de ces fonctions est de rsoudre graphiquement une quation diffrentielle. Recherchez laide de la fonction ode23 Sa syntaxe est : [t , y ] = ode23(' fun' , [a b], y 0) On obtient ainsi deux vecteurs y et t donnant la solution de lquation diffrentielle contenue dans le script "fun.m", sur lintervalle [a, b] , avec comme condition initiale y 0 .

Ralisez un script "finteg.m" utilisant la fonction ode23 pour obtenir le trac de la solution de lquation de la question 2-a et celle de la question 2-c Ralisez un script "compare.m" effectuant la comparaison des rsultats obtenus par cette fonction intgre, par la mthode dEuler et avec la solution exacte Commentez

8-4

Vous aimerez peut-être aussi