Vous êtes sur la page 1sur 39

On commence !

(EDO)

1
Méthodes Numériques
Problèmes Pratiques

Résolution d'équations
différentielles
2
Questions de mathématicien(ne) :

• Quelles équations modélisent le problème ?


• Nos équations ont - elles une solution ?
• Si oui, cette solution est-elle unique ?
• Pouvons-nous en calculer la, une, toutes les ... solution(s) ?
• Sinon, que savons-nous de la (ou des) solution(s) ?
• Pouvons-nous calculer une forme approximative de la
solution ?
• Si oui, quelle est la qualité de l’approximation ?
• Pouvons-nous améliorer l’approximation ? À quel prix ?
• Nos résultats sont-ils conformes aux observations ?
• Si non, changeons les équations et recommençons !
3
Équation du 1er ordre
Soit f une fonction définie de l’intervalle [a, b] dans R. On cherche
une fonction inconnue y : t → y (t), t ∈ [a, b] vérifiant

(1) y′ (t) = f (t, y (t)) t ∈ [a, b],


(2) y (a) = y0

La condition (2) est dite condition initiale ou condition de Cauchy.


Théorème (Cauchy - Lipschitz)
Si
• f est continue dans [a,b]×R,
• il existe L > 0 tel que ∀(t, y1, y2) ∈ [a, b] × R × R,
|f (t, y1) − f (t, y2)| ≤ L|y1 − y2|
alors le problème de Cauchy admet une unique solution.

4
Équations différentielles
•Pourquoi des équations différentielles?

Dès que l’on veut modéliser des phénomènes physiques, biologiques,


économiques, etc…, les équations différentielles apparaissent.

Exemple: Une population possède à un instant t : N(t) individus.


Si elle a de la nourriture abondante. Sa population augmente
proportionnellement à sa taille (par exemple, chaque année, la population
augmente de 5%).
N vérifie l’équation différentielle : y'  k. y
N '  k .N k  0.05
5
Équations différentielles
On peut également avoir un système d'équations différentielles.
Population proies / prédateurs Lokta Volterra (1925)
x : population des lapins
y : population des renards
a : taux d’accroissement des lapins (sans prédateurs)
b : taux de mortalité des lapins à cause de la prédation
c : taux de mortalité des renards en l’absence de proies
e : le facteur décrivant quelle quantité des lapins attrapés permet
de créer des nouveaux renards

x '  a.x  b.x. y


y '  e.b.x. y  c. y 6
Équations différentielles
On peut également avoir un système d'équations différentielles.

x'  f (t , x, y )  x'   f (t , x, y ) 
     
y '  g (t , x, y )  y '   g (t , x, y ) 

 x  f (t , u ) 
En u    F (t , u )   
notant  y  g (t , u ) 

 u '  F (t , u )
7
Équations différentielles
Avec cette transformation, une équation différentielle du second
ordre peut se transformer en une équation différentielle du
premier ordre
ᇱᇱ ᇱ y ' '  f (t , y, y ' )
y1  y  y1'   y'   y2 
Posons:
y2  y'
        
 y2'  y''  f (t, y1, y2)
 y1   y '1   y2   
Posons : u    u'     F (t ,( yy
1 , y22 ))  F (t , u )
 y2  et (t , y1 , y
F : (ty,2 u ) f  
2 )  

 f ( t , y1 , y 2 ) 

u '  F (t , u ) 8
Ce que l’on peut résoudre
Équation linéaire d’ordre 1 à coefficients constants
(E ) y ‘(t) + ay (t) = f (t), t [t0, t0 + T ].

1 Résolution de l’ équation sans second membre


(E0) x ′(t ) + ax (t) = 0, nous avons donc x (t) = c exp(−at).
Les solutions constituent un espace vectoriel de dimension 1.
2 Variation de la constante : recherche d’une solution
particulière de (E ) de la forme : y (t) = α(t)x (t)
d’o ù α′(t) = f (t) exp(at).
3 Toute solution de (E ) s’ écrit comme somme d’une solution
particulière et d’une solution de (E0).
Les solutions constituent un espace affine.

9
Ce que l’on peut résoudre

Équation linéaire d’ordre 1

(E ) y ′(t) + a(t)y (t) = f (t), t ∈ [t0, t0 + T ].


1 Résolution de l’ équation sans second membre
(E0) x ′(t ) + a(t)x (t) = 0
Les solutions constituent un espace vectoriel de dimension 1.
Si ã désigne une primitive de a, x (t ) = C exp(−ã(t)).
2 Variation de la constante : recherche d’une solution
particulière de la forme : y (t) = α(t)x (t)
α′(t) = f(t)exp(ã(t))
3 Toute solution de (E ) s’ écrit comme somme d’une solution
particuli ère et d’une solution de (E0).

10
Ce que l’on peut résoudre

Équation linéaire d’ordre 2 à coefficients constants


(E ) y ′′(t) + ay ′(t) + by (t) = f (t), t ∈ [t0, t0 + T ].
1 Résolution de l’ équation sans second membre,
(E0), x ′′(t) + ax ′(t) + bx (t) = 0
Les solutions forment un espace vectoriel de dimension 2, de
base {x1(t), x2(t)}.
2 Variation de la constante : recherche d’une solution
particulière de (E) de la forme : y (t) = α(t)x1(t) + β(t)x2(t)
avec la condition α′(t)x1(t ) + β′(t)x2(t) = 0
3 Toute solution de (E ) s’ écrit comme somme d’une solution
particulière et d’une combinaison linéaire de x1 et x2.
L’ensemble des solutions forme un espace affine.

11
Ce que l’on peut résoudre

Équations de Bernoulli

C’est une équation différentielle liée au problème de descente en


temps constant ou encore courbe isochrone

y′(t)+a(t)y(t)=b(t)y(t)α , α∈R\{0,1}

on pose z(t) = y 1−α(t)

z vérifie une équation linéaire du1er ordre à coefficients non


constants

12
Ce que l’on peut résoudre
Équations de Riccati
C’est une équation différentielle liée à des mouvements plans
• y′(t)+a(t)y(t)+c(t)=b(t)y2(t)
• si z est une solution particulière, on pose y = y1 + z
• y1 vérifie une équation de Bernoulli avec α = 2
• sans solution particulière, rien à faire !

13
Ce que l’on peut résoudre
Systèmes différentiels linéaires sans second membre

Soit A une matrice carrée de taille n. Les solutions du système


(1) Y ‘(t) = AY (t)
(2) Y (0) = Y0
On sait résoudre le système si :
• A est diagonale..à équations indépendantes,
• A est semblable à une matrice diagonale : A=P− DP
1

d’o ù PY ′(t) = DPY et donc, en posant Z = PY , Z ′ = DZ .


De manière générale, et par analogie avec le cas

14
Ce que l’on peut résoudre
(ou presque)

Systèmes différentiels linéaires avec second membre


Soit A une matrice carrée de taille n et F une fonction vectorielle
définie sur [0, T ]. Soit le système
(1) Y ′(t) = AY (t) + F (t)
(2) Y (0) = Y0

Méthode
• on résout X ′(t) = AX (t), soit X (t) = exp(tA)
• variation de la constante : on cherche des solutions
particulières du type X (t)B(t).

15
En guise de conclusion provisoire

Les équations dont on peut donner explicitement la


solution exacte sont rares.

L’ étude qualitative d’une EDO est souvent complexe et


les outils simples d’analyse ne permettent pas d’avoir
une méthode unifiée (chaque EDO est un cas
particulier ou presque).

Avant toute simulation numérique, il est d’usage de


vérifier l’existence et l’unicité de la solution.

Nous le supposerons dans toute la suite.

16
Quelques grands noms

John ADAMS Carl RUNGE


Leonhard EULER
(1707-1783) (1819-1892) (1856-1927)

Martin KUTTA Karl HEUN


(1867-1944) (1859-1929)
17
COURS1 - METHODES NUMERIQUES
POUR LA RESOLUTION
DES EQUATIONS DIFFERENTIELLES ORDINAIRES (EDO)

COURS2 - METHODES NUMERIQUES POUR LA RESOLUTION


DES EQUATIONS AUX DERIVEES PARTIELLES (EDP)

Mini Projet noté

18
OBJECTIFS
de la partie « EQUATIONS DIFFERENTIELLES ORDINAIRES »

Avoir une vue d’ensemble des méthodes basiques et courantes de


résolution des EDO

Identifier les problèmes classiques rencontrés lors de telles


résolutions

Connaître un outil de résolution (intégrateur ou solveur)

Savoir appliquer une méthodologie de résolution d’un système EDO

19
INTRODUCTION : Qu’est qu’une EDO ?

EDO : équation(s) décrivant l’évolution d’un système fonction d’une


seule variable indépendante, par exemple : Équations avec
des dérivées
ordinaires
- le temps : système temporel
- une coordonnée de l’espace : système 1-D

EDP : équation(s) décrivant l’évolution d’un système fonction de


plusieurs variables indépendantes, par exemple : Équations avec
des dérivées
partielles
- 2 : le temps et une coordonnée de l’espace : système temporel 1-D
- 2 : deux coordonnées de l’espace : système 2-D
- 3 : système 3-D
etc ….
20
EXEMPLE 1: Réaction chimique dans un réacteur

k1 k3
A+B C+D E
k2

Bilan matière:
dC
A  k C C  k C C
dt 1 A B 2 C D
dC
B  k C C  k C C
dt 1 A B 2 C D
dC
C  k C C k C C k Cn Cm
dt 1 A B 2 C D 3 C D
dC
D  k C C k C C k Cn Cm
dt 1 A B 2 C D 3 C D
dC
E  k Cn Cm
dt 3 C D

21
I. INTRODUCTION - RAPPELS
1 - Ordre et non linéarité
2 - Problèmes à valeur initiale et aux limites
3 - Forme Canonique
II. METHODES A UN PAS (CONSTANT)
1 - Méthode d’Euler explicite
2 - Méthode d’ Heun
3 - Méthodes de Runge- Kutta

22
CLASSIFICATION DES EDO:

Ordre : dy
 y  kx
dx 1er ordre

d2y dy
 y  kx
dx2 dx 2nd ordre

d3y d2y dy
a  b( )2  kx
dx3 dx2 dx 3eme ordre

Linéaire / Non-linéaire :
dy Linéaire
 y  kx
dx

d2y dy
 y  kx Non-linéaire
dx2 dx

d3y d2y dy
a  b( )2  kx Non-linéaire
dx3 dx2 dx 23
Pour avoir une solution unique d’un système
de n EDO d’ordre 1
il faut spécifier n valeurs des variables
dépendantes …

Exemple: dC
A  k C C  k C C
dt 1 A B 2 C D
dC
B  k C C  k C C
dt 1 A B 2 C D
dC
C  k C C  k C C  k Cn Cm
dt 1 A B 2 C D 3 C D
dC
D  k C C  k C C  k Cn Cm
dt 1 A B 2 C D 3 C D
dC
E  k Cn Cm
dt 3 C D

Pour résoudre ce système et espérer trouver la solution unique qui


correspond à mon problème, je dois connaître une valeur de CA , CB, CC,
CD et CE 24
Problème à valeur initiale / Problème à valeur aux limites :

Problème à valeur initiale :


Les valeurs des variables dépendantes ou de leurs dérivées sont toutes
connues à la valeur initiale de la valeur indépendante

Problème à valeur aux limites :


Les valeurs des variables dépendantes ou de leurs dérivées sont connues
en plusieurs valeurs de la variable indépendante

25
FORME CANONIQUE D’UNE EDO :

Système :  dy
 1  f (y , y ,..., y , x)

 dx 1 1 2 n
 dy

 2  f (y , y ,..., y , x) dy

 dx 2 1 2 n  f( y, x)
... dx

 dy
 n  f (y , y ,..., y , x)
 dx n 1 2 n

Conditions initiales :
y (x )  y
 1 0

1,0
y (x )  y
 2 0

2,0 y(x )  y
...
0 0

y (x )  y
 n 0 n,0

Solutions :
y  F (x)
 1 1

y  F (x) y  F(x)
 2 2
...

y  F (x) 26
 n n
TRANSFORMATION VERS UNE FORME CANONIQUE :

Exemple : dnz  G(z, dz , d2z ,..., dn -1z , x)


dxn dx dx2 dxn -1

On pose : z  y soit :  dy
 1 

1 y
  dx 2
 dz dy
  1 y  dy

 dx dx 2  2 y

 2 dy

 dx 3
d z  2 y ...

 dx
2 dx 3 
 dy
 n  G(y , y ,..., y , x)
...
  dx 1 2 n
z  dyn 1
 n 1
d  yn
 dxn 1 dx


 dnz dyn

 dxn

dx

27
Exemple : Mettre sous forme canonique l’équation suivante

d3z  x3 d2z  x2 dz  5z  0
dx3 dx2 dx

zy dy
1 1 y
dz  d y1  y dx 2
dx dx 2 dy
2 y
d2z  d y2  y dx 3
dx 2 dx 3
dy
d 3z  d y 3 3 y 3y y 2y 5y
dx 3 dx dx 4 3 4 2 1
dy dy
y x 4 1 4 1
4 dx dx
28
Cadre de ce cours

Résolution d’un système d’EDO non linéaires (problème à valeurs initiales)

dy y(t )  y
 f( y, t) 0 0
dt

A partir de
maintenant,
La variable
indépendante est t

t
y(t)  y   f(τ,y)dτ
0 t
0
Notations :
y(t) ou y(tj) : solution exacte

yj : solution numérique

ej = yj - y(tj) : erreur
29
METHODE A UN PAS (CONSTANT)

METHODES d’EULER (ou méthode de la tangente)

dy y(t ) y
Le problème à une équation est :  f(y,t) 0 0
dt

Développement de Taylor : n (n)


2 y(t )

 t  t y (t )


y(t)  y(t )   t  t y(t )   t  t 
    0 
 ... 


 0 0  R (t)
0  0 0  0 2! n! n

Soit en s’arrêtant à l’ordre 1: y(t)  y(t )  (t  t )f(t ,y )


0 0 0 0
On peut écrire :
y  yn  hf(tn,yn)
n1
avec h = tn+1 - tn

30
METHODES d’EULER EXPLICITE

y  yn  hf(t n,yn )
n 1

y est connue
0

31
Exemple :
Intégration avec Euler de dy avec y(0)=1
 t 2y
dt
y  1 2t 1  5e 2t 
 
Solution exacte est :
4 

j tj Euler Solution Erreur Euler Erreur


h=0.2 Exacte h=0.2 h=0.1 h=0.1
0 0.0 1.0 1.0 0 1.0 0.0
1 0.2 0.6 0.6879 -0.0879 0.6500 -0.0379
2 0.4 0.4 0.5117 -0.1117 0.4620 -0.0497
3 0.6 0.32 0.4265 -0.1065 0.3777 -0.0488

Plus h plus erreur

32
METHODE d’HEUN: principe

k  f(t ,y )
1 j 1 j 1
y*  y  hk Calcul du point y*j par Euler explicite
j j 1 1

k  f(t ,y* ) Calcul de la pente en (tj, y*j)


2 j j

k k Calcul final de yj : moyenne entre k1


y  y h 1 2
j j1 2 et k2

33
METHODES de RUNGE-KUTTA: principe

Méthode de Heun fait la moyenne entre 2 pentes ; les méthodes de


Runge-Kutta font la moyenne de m pentes …

Formule générique
y  y  w k  w k  w k ... wmkm
j j1 1 1 2 2 3 3
avec

k  f(t ,y )
1 j1 j1
k  f(t  c h,y  a k )
2 j1 2 j1 21 1
k  f(t  c h,y  a k  a k )
3 j1 3 j1 31 1 32 2
...
km  f(t  cmh,y  a k  a k  ...  a k )
j1 j1 m1 1 m2 2 m(m 1) m  1

L’ordre de la méthode (m) dépend de l’ordre du développement de


La série de Taylor correspondante . 34
Exemple : Runge-Kutta d’ordre 2

h
y y   k1  k 2 

j j 1 2  

a vec

k  f(t ,y )
1 j 1 j 1

k  f(t  h,y  hk )
2 j 1 j 1 1
35
Runge-Kutta d’ordre 4
1
 1 1 1 
y  y h 
k  k  k  k 
j j1 
6 1

 3 2 3 3 6 4


avec

k  f(t ,y )
1 j1 j1
h h
k  f(t  ,y  k )
2 j1 2 j1 2 1
h h
k  f(t  ,y  k )
3 j1 2 j1 2 2
k  f(t  h,y  hk )
4 j1 j1 3

36
Comparaison des méthodes d’Euler, Heun et RK4

Exemple :
Intégration de dy avec y(0)=1
 y
dt
Solution exacte est : y  et

h EulerErreur HeunErreur RK4Erreur


0.2 4.02e-2 (31) 2.86e-3 (57) 5.80e-6 (129)
0.1 1.92e-2 (61) 6.62e-4 (112) 3.33e-7 (254)
0.05 9.39e-3 (121) 1.59e-4 (222) 2.00e-8 (504)
0.025 4.65e-3 (481) 3.90e-5 (442) 1.22e-9 (1004)
0.0125 2.31e-3 (961) 9.67e-6 (882) 7.56e-11 (2004)

37
CONCLUSION : METHODE A UN PAS (CONSTANT)

 3 méthodes : Euler, Heun, Runge-Kutta 4

 précision dépend de l’ordre


 Euler : ordre 1
 Heun : ordre 2
 Runge-Kutta : ordre 4
Cependant utilisation d’ordre supérieur n’est
pas très intéressant …

 pour améliorer la précision : réduire le pas h

38

Travaux Dirigés

39

Vous aimerez peut-être aussi