Vous êtes sur la page 1sur 75

VII

RÉSOLUTION NUMÉRIQUE
D’ÉQUATIONS DIFFÉRENTIELLES

Analyse Numérique
Tronc Commun

Analyse Numérique – R. Touzani Équations différentielles 1


Exemple 1 : Pendule pesant sans amortissement

Pendule de masse m, suspendu en O et de longueur `


θ(t) : position relative à une position d’équilibre (angle)

Analyse Numérique – R. Touzani Équations différentielles 2


Exemple 1 : Pendule pesant sans amortissement

Pendule de masse m, suspendu en O et de longueur `


θ(t) : position relative à une position d’équilibre (angle)

g θ(t) l

Analyse Numérique – R. Touzani Équations différentielles 2


Exemple 1 : Pendule pesant sans amortissement

Pendule de masse m, suspendu en O et de longueur `


θ(t) : position relative à une position d’équilibre (angle)

g θ(t) l

Énergie totale du système :


1
E = m `2 (θ0 )2 + mg ` (1 − cos θ)
2

Analyse Numérique – R. Touzani Équations différentielles 2


Mouvement du pendule gouverné par la loi fondamentale de la dynamique

E 0 (t) = 0

Analyse Numérique – R. Touzani Équations différentielles 3


Mouvement du pendule gouverné par la loi fondamentale de la dynamique

E 0 (t) = 0

Donc
E 0 (t) = m `2 θ0 θ00 + mg ` θ0 sin θ = 0.

Analyse Numérique – R. Touzani Équations différentielles 3


Mouvement du pendule gouverné par la loi fondamentale de la dynamique

E 0 (t) = 0

Donc
E 0 (t) = m `2 θ0 θ00 + mg ` θ0 sin θ = 0.

D’où l’équation différentielle d’ordre 2 :

 θ00 (t) = − g sin θ(t), g > 0,



`
θ(0) = θ0 , θ0 (0) = 0 (par exemple)

Analyse Numérique – R. Touzani Équations différentielles 3


Remarque
Si on considère des déplacements petits du pendule, on peut écrire

sin θ(t) ≈ θ(t)

D’où l’équation différentielle linéaire :

 θ00 (t) = − g θ(t)



`
θ(0) = θ0 , θ0 (0) = 0

La solution de cette équation est donnée par


r
g
θ(t) = θ0 cos t.
`

Analyse Numérique – R. Touzani Équations différentielles 4


Pendule pesant non amorti : transformation

θ(t) est solution du problème différentiel :


 00 2
 θ (t) = −ω sin θ(t)

θ(0) = θ0 ,

 0
θ (0) = 0 par exemple
g
où ω 2 = .
`
 
x(t)
Posons : x(t) = θ(t), y (t) = θ0 (t) et y(t) =
y (t)
On a alors
x 0 (t)
 
y0 (t) =
y 0 (t)

Analyse Numérique – R. Touzani Équations différentielles 5


Pendule pesant non amorti : transformation

θ(t) est solution du problème différentiel :


 00 2
 θ (t) = −ω sin θ(t)

θ(0) = θ0 ,

 0
θ (0) = 0 par exemple
g
où ω 2 = .
`
 
x(t)
Posons : x(t) = θ(t), y (t) = θ0 (t) et y(t) =
y (t)
On a alors
x 0 (t)
   0 
θ (t)
y0 (t) = =
y 0 (t) θ00 (t)

Analyse Numérique – R. Touzani Équations différentielles 5


Pendule pesant non amorti : transformation

θ(t) est solution du problème différentiel :


 00 2
 θ (t) = −ω sin θ(t)

θ(0) = θ0 ,

 0
θ (0) = 0 par exemple
g
où ω 2 = .
`
 
x(t)
Posons : x(t) = θ(t), y (t) = θ0 (t) et y(t) =
y (t)
On a alors
x 0 (t) θ0 (t)
   0   
θ (t)
y0 (t) = = =
y 0 (t) θ00 (t) −ω 2 sin θ(t)

Analyse Numérique – R. Touzani Équations différentielles 5


Pendule pesant non amorti : transformation

θ(t) est solution du problème différentiel :


 00 2
 θ (t) = −ω sin θ(t)

θ(0) = θ0 ,

 0
θ (0) = 0 par exemple
g
où ω 2 = .
`
 
x(t)
Posons : x(t) = θ(t), y (t) = θ0 (t) et y(t) =
y (t)
On a alors
x 0 (t) θ0 (t)
   0     
θ (t) y (t)
y0 (t) = = = = .
y 0 (t) θ00 (t) −ω 2 sin θ(t) −ω 2 sin x(t)

Analyse Numérique – R. Touzani Équations différentielles 5


 
θ(t)
y (t) = 0 est solution du problème différentiel :
θ (t)
( 0
y (t) = f(y(t), t)
y(0) = y0

avec    
x y
f( , t) =
y −ω 2 sin(x)
et
 
θ0
y0 = .
0

Analyse Numérique – R. Touzani Équations différentielles 6


Formalisme général

Les équations différentielles apparaı̂ssent naturellement dans différents domaines


des sciences et des sciences sociales. Elles décrivent l’évolution de phénomènes
dépendant du temps.

Analyse Numérique – R. Touzani Équations différentielles 7


Formalisme général

Les équations différentielles apparaı̂ssent naturellement dans différents domaines


des sciences et des sciences sociales. Elles décrivent l’évolution de phénomènes
dépendant du temps.
Une équation différentielle d’ordre 1 est de la forme :

y0 (t) = f(y(t), t)

où f : Rd × [0, T ] → Rd est continue.

Analyse Numérique – R. Touzani Équations différentielles 7


Formalisme général

Les équations différentielles apparaı̂ssent naturellement dans différents domaines


des sciences et des sciences sociales. Elles décrivent l’évolution de phénomènes
dépendant du temps.
Une équation différentielle d’ordre 1 est de la forme :

y0 (t) = f(y(t), t)

où f : Rd × [0, T ] → Rd est continue.

Le problème avec condition initiale


y0 (t) = f(y(t), t)
(

y(0) = y0 ∈ Rd ,

est appelé problème de Cauchy.

Analyse Numérique – R. Touzani Équations différentielles 7


Exemple 2 : Modèle malthusien de croissance de population

P(t) : Nombre d’individus appartenant à une population donnée à l’instant t.


Qu’est-ce qui entraı̂ne des variations de la population P(t) ?

Analyse Numérique – R. Touzani Équations différentielles 8


Exemple 2 : Modèle malthusien de croissance de population

P(t) : Nombre d’individus appartenant à une population donnée à l’instant t.


Qu’est-ce qui entraı̂ne des variations de la population P(t) ?
Les naissances
→ α : taux de natalité
→ Nombre de naissances à l’instant t : αP(t)

Analyse Numérique – R. Touzani Équations différentielles 8


Exemple 2 : Modèle malthusien de croissance de population

P(t) : Nombre d’individus appartenant à une population donnée à l’instant t.


Qu’est-ce qui entraı̂ne des variations de la population P(t) ?
Les naissances
→ α : taux de natalité
→ Nombre de naissances à l’instant t : αP(t)

Les décès
→ β : taux de mortalité
→ Nombre de décès à l’instant t : βP(t)

Analyse Numérique – R. Touzani Équations différentielles 8


P(t) est définie comme solution du problème différentiel :
( 0
P (t) = αP(t) − βP(t) = (α − β)P(t)
P(0) = P0 (population à l’instant initial)

Analyse Numérique – R. Touzani Équations différentielles 9


P(t) est définie comme solution du problème différentiel :
( 0
P (t) = αP(t) − βP(t) = (α − β)P(t)
P(0) = P0 (population à l’instant initial)

Solution :

P(t) = P0 exp((α − β)t)

Analyse Numérique – R. Touzani Équations différentielles 9


Modèle dit “de croissance logistique”

Ajout d’un terme de compétition entre les individus

Analyse Numérique – R. Touzani Équations différentielles 10


Modèle dit “de croissance logistique”

Ajout d’un terme de compétition entre les individus


(
P 0 (t) = aP(t) − bP(t)2
P(0) = P0

Analyse Numérique – R. Touzani Équations différentielles 10


Modèle dit “de croissance logistique”

Ajout d’un terme de compétition entre les individus


(
P 0 (t) = aP(t) − bP(t)2
P(0) = P0

⇒ Équation différentielle non linéaire

Solution :

aP0
P(t) = .
bP0 + (a − bP0 )e −at

Analyse Numérique – R. Touzani Équations différentielles 10


Comparaison des 2 modèles de population

300
malthus
croissance logistique

250
population en millions

200

150

100

50
0 50 100 150 200 250 300
temps en annees

Analyse Numérique – R. Touzani Équations différentielles 11


Le théorème de Cauchy-Lipschitz

Théorème
On considère le problème aux valeurs initiales :
( 0
y (t) = f(y(t), t)
(∗)
y(0) = y0 ∈ Rd

où f : (y, t) ∈ Rd × [0, T ] 7→ f(y, t) ∈ Rd . On suppose que :


f est continue sur Rd × I
f est lipschitzienne en y : il existe L > 0 telle que

∀ t ∈ [0, T ], ∀ y1 , y2 ∈ VRd y0 kf(y1 , t) − f(y2 , t)k ≤ L ky1 − y2 k.

où VRd y0 est un voisinage de y0 .
Alors, le problème (∗) possède une solution unique.

Analyse Numérique – R. Touzani Équations différentielles 12


Approximation numérique

On se restreint désormais à une équation différentielle (d = 1).

Analyse Numérique – R. Touzani Équations différentielles 13


Approximation numérique

On se restreint désormais à une équation différentielle (d = 1).


On subdivise l’intervalle [0, T ] en N sous-intervalles ]tn , tn+1 ], avec n = 0, 1, . . . , N − 1

Analyse Numérique – R. Touzani Équations différentielles 13


Approximation numérique

On se restreint désormais à une équation différentielle (d = 1).


On subdivise l’intervalle [0, T ] en N sous-intervalles ]tn , tn+1 ], avec n = 0, 1, . . . , N − 1

On choisit, pour simplifier, une subdivision uniforme : tn = nh.

Analyse Numérique – R. Touzani Équations différentielles 13


Approximation numérique

On se restreint désormais à une équation différentielle (d = 1).


On subdivise l’intervalle [0, T ] en N sous-intervalles ]tn , tn+1 ], avec n = 0, 1, . . . , N − 1

On choisit, pour simplifier, une subdivision uniforme : tn = nh.


On appelle h pas de temps

Analyse Numérique – R. Touzani Équations différentielles 13


Approximation numérique

On se restreint désormais à une équation différentielle (d = 1).


On subdivise l’intervalle [0, T ] en N sous-intervalles ]tn , tn+1 ], avec n = 0, 1, . . . , N − 1

On choisit, pour simplifier, une subdivision uniforme : tn = nh.


On appelle h pas de temps
On veut construire une méthode numérique permettant de définir des approximations
yn de y (tn ) (Schémas numériques).

Analyse Numérique – R. Touzani Équations différentielles 13


Lien avec l’intégration numérique

Remarque
En intégrant l’équation différentielle y 0 (t) = f (y (t), t) entre t = tn et t = tn+1 , on
obtient Z tn+1
y (tn+1 ) − y (tn ) = f (y (t), t) dt
tn

Analyse Numérique – R. Touzani Équations différentielles 14


Lien avec l’intégration numérique

Remarque
En intégrant l’équation différentielle y 0 (t) = f (y (t), t) entre t = tn et t = tn+1 , on
obtient Z tn+1
y (tn+1 ) − y (tn ) = f (y (t), t) dt
tn

On peut approcher cette intégrale par la méthode des rectangles à gauche :

y (tn+1 ) − y (tn ) ≈ h f (y (tn ), tn )

Analyse Numérique – R. Touzani Équations différentielles 14


Lien avec l’intégration numérique

Remarque
En intégrant l’équation différentielle y 0 (t) = f (y (t), t) entre t = tn et t = tn+1 , on
obtient Z tn+1
y (tn+1 ) − y (tn ) = f (y (t), t) dt
tn

On peut approcher cette intégrale par la méthode des rectangles à gauche :

y (tn+1 ) − y (tn ) ≈ h f (y (tn ), tn )

On peut ainsi définir le schéma

yn+1 = yn + h f (yn , tn ) n = 0, 1, . . . , N − 1

Analyse Numérique – R. Touzani Équations différentielles 14


Schémas d’Euler

On veut approcher la dérivée y 0 (t) en t = tn . On peut utiliser pour cela une méthode
de dérivation numérique :

Analyse Numérique – R. Touzani Équations différentielles 15


Schémas d’Euler

On veut approcher la dérivée y 0 (t) en t = tn . On peut utiliser pour cela une méthode
de dérivation numérique :
1ère méthode :

y (tn+1 ) − y (tn )
y 0 (tn ) ≈
h

Analyse Numérique – R. Touzani Équations différentielles 15


Schémas d’Euler

On veut approcher la dérivée y 0 (t) en t = tn . On peut utiliser pour cela une méthode
de dérivation numérique :
1ère méthode :

y (tn+1 ) − y (tn )
y 0 (tn ) ≈
h

D’où le schéma d’Euler progressif :

yn+1 − yn
= f (yn , tn ) n = 0, 1, . . . , N − 1
h

Analyse Numérique – R. Touzani Équations différentielles 15


2ème méthode :

y (tn+1 ) − y (tn )
y 0 (tn+1 ) ≈
h

D’où le schéma d’Euler rétrograde :

yn+1 − yn
= f (yn+1 , tn+1 ) n = 0, 1, . . . N − 1
h

Analyse Numérique – R. Touzani Équations différentielles 16


Le schéma d’Euler progressif : Consistance

On appelle Erreur de troncature l’expression :

y (tn+1 ) − y (tn )
εnh = − f (y (tn ), tn ).
h

Analyse Numérique – R. Touzani Équations différentielles 17


Le schéma d’Euler progressif : Consistance

On appelle Erreur de troncature l’expression :

y (tn+1 ) − y (tn )
εnh = − f (y (tn ), tn ).
h

On a par la formule de Taylor :

y (tn+1 ) = y (tn ) + h y 0 (tn ) + O(h2 )


= y (tn ) + h f (y (tn ), tn ) + O(h2 )

Analyse Numérique – R. Touzani Équations différentielles 17


Le schéma d’Euler progressif : Consistance

On appelle Erreur de troncature l’expression :

y (tn+1 ) − y (tn )
εnh = − f (y (tn ), tn ).
h

On a par la formule de Taylor :

y (tn+1 ) = y (tn ) + h y 0 (tn ) + O(h2 )


= y (tn ) + h f (y (tn ), tn ) + O(h2 )

Donc

εnh = O(h)

On dit que le schéma d’Euler progressif est consistant.

Analyse Numérique – R. Touzani Équations différentielles 17


Le schéma d’Euler progressif : Convergence

Soit en = y (tn ) − yn (Erreur à l’instant t = tn ).

Analyse Numérique – R. Touzani Équations différentielles 18


Le schéma d’Euler progressif : Convergence

Soit en = y (tn ) − yn (Erreur à l’instant t = tn ).


On a

y (tn+1 ) − y (tn ) − h f (y (tn ), tn ) = h εnh


yn+1 − yn − h f (yn , tn ) = 0

Analyse Numérique – R. Touzani Équations différentielles 18


Le schéma d’Euler progressif : Convergence

Soit en = y (tn ) − yn (Erreur à l’instant t = tn ).


On a

y (tn+1 ) − y (tn ) − h f (y (tn ), tn ) = h εnh


yn+1 − yn − h f (yn , tn ) = 0

En soustrayant, on obtient

en+1 = en + h f (y (tn ), tn ) − f (yn , tn ) + h εnh




Analyse Numérique – R. Touzani Équations différentielles 18


Le schéma d’Euler progressif : Convergence

Soit en = y (tn ) − yn (Erreur à l’instant t = tn ).


On a

y (tn+1 ) − y (tn ) − h f (y (tn ), tn ) = h εnh


yn+1 − yn − h f (yn , tn ) = 0

En soustrayant, on obtient

en+1 = en + h f (y (tn ), tn ) − f (yn , tn ) + h εnh




Donc

|en+1 | ≤ |en | + h f (y (tn ), tn ) − f (yn , tn ) + h |εnh |


Analyse Numérique – R. Touzani Équations différentielles 18


Le schéma d’Euler progressif : Convergence

Soit en = y (tn ) − yn (Erreur à l’instant t = tn ).


On a

y (tn+1 ) − y (tn ) − h f (y (tn ), tn ) = h εnh


yn+1 − yn − h f (yn , tn ) = 0

En soustrayant, on obtient

en+1 = en + h f (y (tn ), tn ) − f (yn , tn ) + h εnh




Donc

|en+1 | ≤ |en | + h f (y (tn ), tn ) − f (yn , tn ) + h |εnh |


≤ |en | + hL y (tn ) − yn + Ch2


Analyse Numérique – R. Touzani Équations différentielles 18


Le schéma d’Euler progressif : Convergence

Soit en = y (tn ) − yn (Erreur à l’instant t = tn ).


On a

y (tn+1 ) − y (tn ) − h f (y (tn ), tn ) = h εnh


yn+1 − yn − h f (yn , tn ) = 0

En soustrayant, on obtient

en+1 = en + h f (y (tn ), tn ) − f (yn , tn ) + h εnh




Donc

|en+1 | ≤ |en | + h f (y (tn ), tn ) − f (yn , tn ) + h |εnh |


≤ |en | + hL y (tn ) − yn + Ch2


= (1 + hL) |en | + Ch2

Analyse Numérique – R. Touzani Équations différentielles 18


On montre alors que
|en | ≤ C (|e0 | + h) = Ch

Analyse Numérique – R. Touzani Équations différentielles 19


On montre alors que
|en | ≤ C (|e0 | + h) = Ch

Théorème
On suppose que la solution y (t) est de classe C 2 . Alors, il existe une constante C
indépendante de h telle que

|y (tn ) − yn | ≤ Ch n = 1, . . . , N

Analyse Numérique – R. Touzani Équations différentielles 19


On montre alors que
|en | ≤ C (|e0 | + h) = Ch

Théorème
On suppose que la solution y (t) est de classe C 2 . Alors, il existe une constante C
indépendante de h telle que

|y (tn ) − yn | ≤ Ch n = 1, . . . , N

On dit que ce schéma est d’ordre 1.

Analyse Numérique – R. Touzani Équations différentielles 19


Le schéma d’Euler rétrograde

Il sécrit :

yn+1 − yn
= f (yn+1 , tn+1 ) n = 0, 1, . . . , N − 1
h

Analyse Numérique – R. Touzani Équations différentielles 20


Le schéma d’Euler rétrograde

Il sécrit :

yn+1 − yn
= f (yn+1 , tn+1 ) n = 0, 1, . . . , N − 1
h

Notons que ce schéma est implicite :

Analyse Numérique – R. Touzani Équations différentielles 20


Le schéma d’Euler rétrograde

Il sécrit :

yn+1 − yn
= f (yn+1 , tn+1 ) n = 0, 1, . . . , N − 1
h

Notons que ce schéma est implicite : Étant donné yn , on calcule yn+1 en résolvant une
équation algébrique non-linéaire : g (x) = 0 où

g (x) = x − yn − h f (x, tn+1 ).

Analyse Numérique – R. Touzani Équations différentielles 20


Le schéma d’Euler rétrograde

Il sécrit :

yn+1 − yn
= f (yn+1 , tn+1 ) n = 0, 1, . . . , N − 1
h

Notons que ce schéma est implicite : Étant donné yn , on calcule yn+1 en résolvant une
équation algébrique non-linéaire : g (x) = 0 où

g (x) = x − yn − h f (x, tn+1 ).

Sous les mêmes hypothèses que pour le schéma d’Euler progressif, on montre que ce
schéma est d’ordre 1.

Analyse Numérique – R. Touzani Équations différentielles 20


Le schéma de Crank-Nicolson

Il sécrit :

yn+1 − yn 1 
= f (yn , tn ) + f (yn+1 , tn+1 ) n = 0, 1, . . . , N − 1
h 2

Analyse Numérique – R. Touzani Équations différentielles 21


Le schéma de Crank-Nicolson

Il sécrit :

yn+1 − yn 1 
= f (yn , tn ) + f (yn+1 , tn+1 ) n = 0, 1, . . . , N − 1
h 2

Évaluons l’erreur de troncature de ce schéma :


y (tn+1 ) − y (tn ) 1
εnh :=

− f (y (tn ), tn ) + f (y (tn+1 ), tn+1 )
h 2

Analyse Numérique – R. Touzani Équations différentielles 21


Le schéma de Crank-Nicolson

Il sécrit :

yn+1 − yn 1 
= f (yn , tn ) + f (yn+1 , tn+1 ) n = 0, 1, . . . , N − 1
h 2

Évaluons l’erreur de troncature de ce schéma :


y (tn+1 ) − y (tn ) 1
εnh :=

− f (y (tn ), tn ) + f (y (tn+1 ), tn+1 )
h 2

La formule de Taylor donne :

h h 0 h h2 00 h
y (tn+1 ) = y tn + + y tn + + y tn + + O(h3 )
2 2 2 8 2
h h 0 h h2 00 h
y (tn ) = y tn + − y tn + + y tn + + O(h3 )
2 2 2 8 2

Analyse Numérique – R. Touzani Équations différentielles 21


Le schéma de Crank-Nicolson

Il sécrit :

yn+1 − yn 1 
= f (yn , tn ) + f (yn+1 , tn+1 ) n = 0, 1, . . . , N − 1
h 2

Évaluons l’erreur de troncature de ce schéma :


y (tn+1 ) − y (tn ) 1
εnh :=

− f (y (tn ), tn ) + f (y (tn+1 ), tn+1 )
h 2

La formule de Taylor donne :

h h 0 h h2 00 h
y (tn+1 ) = y tn + + y tn + + y tn + + O(h3 )
2 2 2 8 2
h h 0 h h2 00 h
y (tn ) = y tn + − y tn + + y tn + + O(h3 )
2 2 2 8 2

En soustrayant, on obtient

h
y (tn+1 ) − y (tn ) = h y 0 tn + + O(h3 )
2

Analyse Numérique – R. Touzani Équations différentielles 21


Donc
y (tn+1 ) − y (tn ) h
= y 0 tn + + O(h2 )
h 2

Analyse Numérique – R. Touzani Équations différentielles 22


Donc
y (tn+1 ) − y (tn ) h
= y 0 tn + + O(h2 )
h 2

De même
1  h h
+ O(h2 ).

f (y (tn ), tn ) + f (y (tn+1 ), tn+1 ) = f y (tn + ), tn +
2 2 2

Analyse Numérique – R. Touzani Équations différentielles 22


Donc
y (tn+1 ) − y (tn ) h
= y 0 tn + + O(h2 )
h 2

De même
1  h h
+ O(h2 ).

f (y (tn ), tn ) + f (y (tn+1 ), tn+1 ) = f y (tn + ), tn +
2 2 2

Ainsi

nh = O(h2 )

Analyse Numérique – R. Touzani Équations différentielles 22


Donc
y (tn+1 ) − y (tn ) h
= y 0 tn + + O(h2 )
h 2

De même
1  h h
+ O(h2 ).

f (y (tn ), tn ) + f (y (tn+1 ), tn+1 ) = f y (tn + ), tn +
2 2 2

Ainsi

nh = O(h2 )

On montre alors que le schéma de Crank-Nicolson est d’ordre 2 :

|y (tn ) − yn | ≤ Ch2

Analyse Numérique – R. Touzani Équations différentielles 22


Méthodes basées sur la formule de Taylor

Supposons la fonction f dérivable. On a par la formule de Taylor :

y (tn+1 ) = y (tn + h)
h2 00 1 1
= y (tn ) + hy 0 (tn ) + y (tn ) + · · · + hk y (k) (tn ) + hk+1 y (k+1) (ξn )
2 k! (k + 1)!

où ξn ∈ [tn , tn+1 ]

Analyse Numérique – R. Touzani Équations différentielles 23


Méthodes basées sur la formule de Taylor

Supposons la fonction f dérivable. On a par la formule de Taylor :

y (tn+1 ) = y (tn + h)
h2 00 1 1
= y (tn ) + hy 0 (tn ) + y (tn ) + · · · + hk y (k) (tn ) + hk+1 y (k+1) (ξn )
2 k! (k + 1)!

où ξn ∈ [tn , tn+1 ]


Donc si h  1 :

h2 00 1
y (tn+1 ) ≈ y (tn ) + hy 0 (tn ) + y (tn ) + · · · + hk y (k) (tn ).
2 k!

Analyse Numérique – R. Touzani Équations différentielles 23


Méthodes basées sur la formule de Taylor

Supposons la fonction f dérivable. On a par la formule de Taylor :

y (tn+1 ) = y (tn + h)
h2 00 1 1
= y (tn ) + hy 0 (tn ) + y (tn ) + · · · + hk y (k) (tn ) + hk+1 y (k+1) (ξn )
2 k! (k + 1)!

où ξn ∈ [tn , tn+1 ]


Donc si h  1 :

h2 00 1
y (tn+1 ) ≈ y (tn ) + hy 0 (tn ) + y (tn ) + · · · + hk y (k) (tn ).
2 k!

Pour k = 1 :
y (tn+1 ) ≈ y (tn ) + hy 0 (tn ) = y (tn ) + hf (y (tn ), tn )

Analyse Numérique – R. Touzani Équations différentielles 23


Pour k = 2 :
h2 00 h2 00
y (tn+1 ) ≈ y (tn ) + hy 0 (tn ) + y (tn ) = y (tn ) + hf (y (tn ), tn ) + y (tn )
2 2

Analyse Numérique – R. Touzani Équations différentielles 24


Pour k = 2 :
h2 00 h2 00
y (tn+1 ) ≈ y (tn ) + hy 0 (tn ) + y (tn ) = y (tn ) + hf (y (tn ), tn ) + y (tn )
2 2

Pour évaluer y 00 (tn ), on dérive l’équation différentielle :

∂f ∂f
y 00 (t) = (y (t), t) + (y (t), t) y 0 (t)
∂t ∂y
∂f ∂f
= (y (t), t) + (y (t), t) f (y (t), t)
∂t ∂y

Analyse Numérique – R. Touzani Équations différentielles 24


Pour k = 2 :
h2 00 h2 00
y (tn+1 ) ≈ y (tn ) + hy 0 (tn ) + y (tn ) = y (tn ) + hf (y (tn ), tn ) + y (tn )
2 2

Pour évaluer y 00 (tn ), on dérive l’équation différentielle :

∂f ∂f
y 00 (t) = (y (t), t) + (y (t), t) y 0 (t)
∂t ∂y
∂f ∂f
= (y (t), t) + (y (t), t) f (y (t), t)
∂t ∂y

D’où le schéma :

h2  ∂f ∂f 
yn+1 = yn + hf (yn , tn ) + (yn , tn ) + (yn , tn ) f (yn , tn )
2 ∂t ∂y

On montre que ce schéma est d’ordre 2

Analyse Numérique – R. Touzani Équations différentielles 24


Une méthode de Runge-Kutta d’ordre 2

ỹn+1 = yn + hf (yn , tn )
h 
yn+1 = yn + f (yn , tn ) + f (ỹn+1 , tn+1 )
2

Analyse Numérique – R. Touzani Équations différentielles 25


Une méthode de Runge-Kutta d’ordre 2

ỹn+1 = yn + hf (yn , tn )
h 
yn+1 = yn + f (yn , tn ) + f (ỹn+1 , tn+1 )
2

Cette méthode est aussi appelée Schéma de Heun.

Analyse Numérique – R. Touzani Équations différentielles 25


Une méthode de Runge-Kutta d’ordre 4

h
yn,1 = yn + f (yn , tn )
2
h h
yn,2 = yn + f (yn,1 , tn + )
2 2
h
yn,3 = yn + h f (yn,2 , tn + )
2
1 1 h 1 h 1 
yn+1 = yn + h f (yn , tn ) + f (yn,1 , tn + ) + f (yn,2 , tn + ) + f (yn,3 , tn+1 )
6 3 2 3 2 6

Analyse Numérique – R. Touzani Équations différentielles 26


Une méthode de Runge-Kutta d’ordre 4

h
yn,1 = yn + f (yn , tn )
2
h h
yn,2 = yn + f (yn,1 , tn + )
2 2
h
yn,3 = yn + h f (yn,2 , tn + )
2
1 1 h 1 h 1 
yn+1 = yn + h f (yn , tn ) + f (yn,1 , tn + ) + f (yn,2 , tn + ) + f (yn,3 , tn+1 )
6 3 2 3 2 6

On montre que cette méthode est d’ordre 4.

Analyse Numérique – R. Touzani Équations différentielles 26


Équations différentielles d’ordre 2

 00 0
 y (t) = f (y (t), y (t), t)
 0<t≤T
y (0) = a

 0
y (0) = b

Analyse Numérique – R. Touzani Équations différentielles 27


Équations différentielles d’ordre 2

 00 0
 y (t) = f (y (t), y (t), t)
 0<t≤T
y (0) = a

 0
y (0) = b

1ère approche :
On approche les dérivées première et seconde par des quotients différentiels. On a le
schéma

yn+1 − 2yn + yn−1  yn+1 − yn−1 


2
= f yn , , tn
h 2h

Analyse Numérique – R. Touzani Équations différentielles 27


2e approche :
On se ramène à un système différentiel du premier ordre.
Soit la nouvelle inconnue z(t) = y 0 (t).
On obtient :

 0

 z (t) = f (y (t), z(t), t), 0<t≤T

 y 0 (t) = z(t),

0<t≤T


 y (0) = a

z(0) = b

Analyse Numérique – R. Touzani Équations différentielles 28

Vous aimerez peut-être aussi