Support de cours
Ingénieurs Sup'Galilée
1 Introduction 3
1.1 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.1 Météorologie . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.2 Biologie . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.3 Chimie : La réaction de Belousov-Zhabotinsky . . . . . 5
1.1.4 Mécanique . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2 Dénition des E.D.O. . . . . . . . . . . . . . . . . . . . . . . . 8
1.3 Formulation générale : le problème de Cauchy . . . . . . . . . 10
1.4 Dérivation numérique . . . . . . . . . . . . . . . . . . . . . . . 12
1.5 Méthode des diérences nies pour le problème de Cauchy en
dimension d 1 . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.6 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.7 Stabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.8 Méthode des diérences nies pour le problème de Cauchy en
dimension d . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3 Méthode de Runge-Kutta 20
3.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.2 Formules explicites de Runge-Kutta d'ordre 2 . . . . . . . . . 21
3.3 Méthodes de Runge-Kutta d'ordre 4 . . . . . . . . . . . . . . 22
5 Exercices corrigés 26
1 INTRODUCTION
1 Introduction
1.1 Exemples
1.1.1 Météorologie
Modèle de Lorentz :
Source Wikipedia Mathématiquement, le couplage de l'atmosphère avec
l'océan est décrit par le système d'équations aux dérivées partielles cou-
plées de Navier-Stokes de la mécanique des uides. Ce système d'équa-
tions était beaucoup trop compliqué à résoudre numériquement pour
les premiers ordinateurs existant au temps de Lorenz. Celui-ci eut donc
l'idée de chercher un modèle très simplié de ces équations pour étu-
dier une situation physique particulière : le phénomène de convection
de Rayleigh-Bénard. Il aboutit alors à un système dynamique diéren-
tiel possédant seulement trois degrés de liberté, beaucoup plus simple
à intégrer numériquement que les équations de départ.
$ 1
& x ptq σxptq σyptq
y 1 ptq xptqyptq ρxptq yptq (1.1)
% z 1 ptq xptqyptq βzptq
avec σ 10, ρ 28, β 8{3 et les données initales xp0q 8,
y p0q 8 et z p0q ρ 1.
Dans ces équations, σ ,ρ - respectivement le nombre de Prandtl et le
rapport du nombre de Rayleigh sur un Rayleigh critique - et β sont
trois paramètres réels.
xptq est proportionnel à l'intensité du mouvement de convection, y ptq
est proportionnel à la diérence de température entre les courants as-
cendants et descendants, et z ptq est proportionnel à l'écart du prol
de température vertical par rapport à un prol linéaire (Lorenz 1963
p.135).
La résolution numérique de ce modèle donne
3
1.1 Exemples 1 INTRODUCTION
Modele de Lorentz
20
x(t)
0
−20
0 10 20 30 40 50 60 70 80 90 100
t
50
y(t)
−50
0 10 20 30 40 50 60 70 80 90 100
t
40
z(t)
20
0
0 10 20 30 40 50 60 70 80 90 100
t
Modele de Lorentz
50
45
40
35
30
z(t)
25
20
15
50
10
5 0
0
−50
−20 −15 −10 −5 0 5 10 15 20 y(t)
x(t)
1.1.2 Biologie
Considérons une population y d'animaux dans un milieu ambient où au
plus B animaux peuvent coexister. On suppose que initialement la popula-
tion soit y0 B et que le facteur de croissance des animaux soit égal à
une constante C. Dans ce cas, l'évolution de la population au cours du temps
sera proportionnelle au nombre d'animaux existants, sans toutefois que ce
nombre ne dépasse la limite B. Cela peut s'exprimer à travers l'équation
1 y ptq
y ptq Cy ptq 1 , t ¡ 0, y p0q y0. (1.2)
B
La résolution de cette équation permet de trouver l'évolution de la population
au cours du temps.
4
1.1 Exemples 1 INTRODUCTION
5
1.1 Exemples 1 INTRODUCTION
0
0 5 10 15 20 25 30 35 40
t
Brusselator simplifie
6
4
Y(t)
0
0 1 2 3 4 5 6
X(t)
1.1.4 Mécanique
Le pendule pesant le plus simple est constitué d'un petit objet pesant
accroché à une tige de masse négligeable devant celle de l'objet. L'autre
extrémité de la tige est l'axe de rotation du pendule. Un tel pendule, sans
viscosité, est appelé pendule pesant simple. On note θptq l'angle que fait le
6
1.1 Exemples 1 INTRODUCTION
θ 2 pt q
ν 1
sinpθptqq θ ptq 0.
g
(1.6)
L mL2
Exemple 2 Dans cet exemple, on étudie le problème du pendule pesant sans
viscosité décrit au paragraphe 1.1.4. On est donc ramené à résoudre l'E.D.O.
1
θ(t)
−1
−2
−3
0 2 4 6 8 10 12 14 16 18 20
t
2
θ’(t)
−2
−4
0 2 4 6 8 10 12 14 16 18 20
t
7
1.2 Dénition des E.D.O. 1 INTRODUCTION
Pendule pesant
4
1
θ’(t)
−1
−2
−3
−4
−3 −2 −1 0 1 2 3
θ(t)
8
1.2 Dénition des E.D.O. 1 INTRODUCTION
on obtient $
dzz r1s
'
'
' pt q y p1q ptq z r2s ptq,
' dzz r2s
dt
&
dt pt q y p2q ptq z r3s ptq,
' ..
'
' .
'
% dzz rps
dt ptq y ppq ptq.
Or
y ppq ptq G pt, y ptq, y p1q ptq, y p2q ptq, . . . , y pp1q ptqq
G pt, z r1s ptq, z r2s ptq, . . . , z rps ptqq.
On obtient alors le système diérentiel d'ordre 1 suivant :
$ r1s
r2s
dt ptq z ptq,
'
' dzz
'
' r s
& dzz ptq z r3s ptq,
2
dt
.. (1.10)
'
' .
'
'
% dzz rps ptq G pt, z r1s ptq, z r2s ptq, . . . , z rps ptqq.
dt
Exemple
1
(suite) Pour obtenir la forme canonique de (1.4), on pose
y1 ptq
y pt q avec y1 ptq X ptq et y2 ptq Y ptq. On obtient alors
y2 ptq
p1q
αz12 z2 pβ 1qz1
% pt, z q ÞÝÑ 1
αz12z2 βz1
la forme canonique est donnée par
y p1q ptq G b pt, y ptqq. (1.11)
Exemple 2 (suite) Pour obtenir la forme canonique de (1.7),on prend
p2 et "
Gp : R R R ÝÑ R
pt, u, vq ÞÝÑ Lg sinpuq .
9
1.3 Formulation générale : le problème de Cauchy 1 INTRODUCTION
10
1.3 Formulation générale : le problème de Cauchy 1 INTRODUCTION
avec f G b et y p0q 3
2
.
y 1 pt q θptq
y ptq θp1qptq
y 2 pt q
θp1q ptq
G pt, θptq, θp1qptqq
p
y 2 pt q
Gp pt, y1 ptq, y2 ptqq
.
On pose
fp : r0, T s R2 ÝÑ
R 2
pt, z q ÞÝÑ z2
Gp pt, z1 , z2 q
.
y p0 q
θ0
avec
θ1
.
0
11
1.4 Dérivation numérique 1 INTRODUCTION
Sous ces hypothèses le problème de Cauchy pPC q admet une unique solution.
Bf
Proposition 1.6 Si pt, y q est continue et bornée, alors f satisfait la
By
condition de Lipschitz (1.19) en y .
y pt hq y ptq
y 1 pt q lim
hÑ0 h
y ptq y pt hq
lim
hÑ0 h
y pt hq y pt hq
lim
hÑ0 2h
a nh, n P v0, N w et h pb aq{N une discrétisation
On note tn
régulière de ra, bs. Soit pDyqn une approximation de y1 ptn q. On appelle
diérence nie progressive l'approximation
pDyqP ypt q ypt q , @n P v0, N 1w
n 1 n
n (1.20)
h
diérence nie rétrograde l'approximation
n1
pDyqR ypt q ypt q , @n P v1, N w
n
n (1.21)
h
diérence nie centrée l'approximation
n1
pDyqC ypt q ypt q , @n P v1, N 1w
n 1
n (1.22)
2h
12
1.4 Dérivation numérique 1 INTRODUCTION
et
pDyqRn yp1qptnq h2 yp2qpηRn q
2. En déduire que
|yp1qptnq pDyqPn | ¤ Ch, avec C
1
max
2 tPrtn ,tn 1 s
|yp2qptq|
et
|y1ptnq pDyqRn | ¤ Dh, avec D
1
max |y p2q ptq|
2 tPrtn1 ,tn s
2. En déduire que
|yp1qptnq pDyqCn | ¤ Eh2, avec E
1
max
6 tPrtn1 ,tn 1 s
|yp3qptq|
Dénition 1.8 La diérence τ phq |y1 ptn qpDyqn | est appelée erreur de
troncature au point tn . On dira que τ est d'ordre p ¡ 0 si il existe une
constance C ¡ 0 telle que
τ phq ¤ Chp .
13
1.5 Méthode des diérences nies pour le problème de Cauchy en
dimension d 1 1 INTRODUCTION
14
1.6 Exemple 1 INTRODUCTION
1.6 Exemple
Soit l'E.D.O. suivante
" 1
y ptq y pt q t2 y 2 ptq, pour t P r0, 5s,
y p0q 1
de solution exacte
y ptq 1{pet t2 2t 2q.
Les résolutions numériques avec les schémas d'Euler progressif et rétrograde
sont représentés en gure 1.
1.7 Stabilité
Pour illustrer la notion de stabilié (absolue) d'un schéma numérique, on
étudie le problème modèle suivant :
Soit λ 0, Soit l'E.D.O. suivante
" 1
y pt q λy ptq, pour t P R ,
y p0 q y0
y ptq y0 eλt .
En particulier, on a
lim y ptq 0
t Ñ 8
15
1.7 Stabilité 1 INTRODUCTION
−0.2
exacte
−0.4
Euler Progressive
Euler Régressive
−0.6
−0.8
−1
−1.2
−1.4
−1.6
−1.8
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
t
y rn s yrns
1
hf ptn , y rns q y rns λhy rns p1 λhqy rns
d'où
y rns p1 λhqn y r0s , @n ¥ 0.
On remarque alors que si |1 λh| ¡ 1 alors limnÑ 8 |y rns | 8, le schéma
d'Euler progressif est alors instable. Pour assurer la stabilité, il faut ici im-
poser une condition sur h :
|1 λh| 1 d'où 0 h .
2
λ
On dit alors que le schéma d'Euler progressif est conditionnellement stable.
16
1.7 Stabilité 1 INTRODUCTION
exacte
6 Euler Progressive
Euler Regressive
−2
−4
−6
−8
0 2 4 6 8 10 12 14 16 18 20
t
0.6
0.4
0.2
−0.2
−0.4
−0.6
−0.8
−1
0 2 4 6 8 10 12 14 16 18 20
t
17
1.8 Méthode des diérences nies pour le problème de Cauchy en
dimension d 1 INTRODUCTION
y rn 1s y rns
1
1 λh
et donc
n
y rns y r0s , @n ¥ 0.
1
1 λh
Dans ce cas limnÑ 8 y rns 0 sans condition : on dit que le schéma d'Euler
rétrograde est inconditionnellement stable.
f : rt0, t0 T s Rd ÝÑ Rd
f 1 pt, z q
pt, z q ÞÝÑ
w f pt, z q ...
f d pt, z q
En notant
y1 ptq f1 pt, y ptqq
y ptq ...
et f pt, y ptqq ..
.
yd ptq fd pt, y ptqq
le problème de Cauchy peut aussi s'écrire sous la forme
$ 1
'
' y1 ptq f1 pt, y ptqq,
'
&. ..
'
'
' yd1 ptq fd pt, y ptqq, @t P rt0 , t0 Ts
% avec y pt0 q y 0 P Rd .
Après discrétisation et utilisation de la formule des diérences nies progres-
sive on obtient $
'
'
rn 1s yrns hf ptn , y rns q
'
'
y1 1 1
& ..
.
'
' rn 1s rns hfd ptn , y rns q
'
' yd yd
% avec y pt0 q y 0 P Rd .
18
2 MÉTHODE À UN PAS OU À PAS SÉPARÉS
rns
y1
où y rns ...
et y rns q y ptn q.
y
rns
d
On obtient alors la méthode d'Euler progressive sous forme vectorielle :
" rn 1s
y y rns hff ptn , y rns q, @n P v0, N 1w (1.27)
y r0s y pt0q
Ce schéma est explicite, car il permet le calcul direct de y rn 1s en fonction
de y rns .
De la même manière, la méthode d'Euler régressive sous forme vecto-
rielle est donnée par le schéma
" rn 1s
y y rns hff ptn r
1, y n 1 s q, @n P v0, N 1w
(1.28)
y r0s y pt0q
Ce schéma est implicite, car y rn 1s est dénit implicitement en fonction de
y rns .
2.2 Convergence
La méthode converge sur l'intervalle rt0 , t0 T s si, pour la suite des y rns
calculés, l'écart maximum avec la solution exacte diminue quand le pas h
diminue :
lim
max y rns y ptn q 0
h NT Ñ0 nPt0,...,N u
2.3 Stabilité
La méthode est stable si une petite perturbation sur y r0s ou Φ n'entraîne
qu'une petite perturbation sur la solution approchée, et cela quel que soit le
pas h.
Souvent , lorsque la méthode n'est pas stable, l'amplication des erreurs
est exponentielle et, au bout de quelques calculs, les résultats entraînent des
dépassements de capacité.
19
2.4 Consistance 3 MÉTHODE DE RUNGE-KUTTA
2.4 Consistance
Le schéma de calcul (2.1) est consistant avec l'équation diérentielle si
n
y pt
lim max
1 q y ptnq Φptn, y ptnq, hq 0
h T Ñ0 n h
N
Cela signie que le schéma doit être une approximation vraisemblable, bien
construite.
2.5 Ordre
La méthode itérative est d'ordre p si pour toute solution :
n
y pt
max
1 q y ptnq Φptn, y ptnq, hq ¤ Chp
n h
3 Méthode de Runge-Kutta
3.1 Principe
Pour simplier, on suppose hn h. L'idée fondamentale des méthodes
de Runge-Kutta est d'intégrer l'équation (??) sur rtn , tn 1 s et de calculer :
» tn 1
y pt
n 1
q y pt q n
f pt, y ptqqdt,
tn
avec
ris
¸
q
rjs
k pt, y , hq f t hai , y h bi,j k pt, y , hq , 1 ¤ i ¤ q
j 1
20
3.2 Formules explicites de Runge-Kutta
3 MÉTHODE
d'ordre 2 DE RUNGE-KUTTA
que l'on peut représenter sous la forme d'un tableau dit tableau de But-
cher :
a B
(3.1)
ct
avec B pbi,j qi,j Pv1,qw P Mq,q pRq, a paiqiPv1,qw P Rq et c pciqiPv1,qw P Rq
Remarque 3.1 1. Une méthode de Runge-Kutta est d'ordre 0 si
¸q
ai bij .
j 1
2. Une méthode de Runge-Kutta est d'ordre 1 (et donc consistante) si elle
est d'ordre 0 et si
¸q
ci 1.
i 1
y rn 1s y rns
h rns h n rns
hff t n
,y f pt , y q .
2 2
21
3.3 Méthodes de Runge-Kutta d'ordre
3 4MÉTHODE DE RUNGE-KUTTA
Pour des valeurs plus élevées de p, ces méthodes sont plus précises que
la méthode d'Euler, et d'autant plus que p augmente. On se limite dans la
pratique à p 4. Cette méthode est connue sous le nom de Runge-Kutta 4.
Remarquons que dans ces méthodes le pas peut être adapté à chaque étape.
y rn s y rns h n rns
1
f pt , y q f t ,y hff ptn , y rns q .
2 2
Q. 1 Ecrire la fonction algorithmique REDRK4Vec permettant de résoudre
un problème de Cauchy (vectoriel par la méthode de Runge-Kutta d'ordre 4.
22
4 MÉTHODES À PAS MULTIPLES
y rn s y rn1s
1
2hff ptn , y rns q. (4.1)
4.2 Le principe
Dans tous les schémas présentés, la valeur de y rn 1s était déterminée
à chaque pas de façon explicite en fonction uniquement du point y rns . On
peut tenir compte de plusieurs valeurs y ris précédemment calculées et ainsi
travailler sur un nombre de pas multiples.
Les méthodes à pas multiples s'écrivent sous la forme générale :
ķ ķ
αiy rn is h βif ptn i , y rn i sq (4.2)
i 0
i 0
23
4.3 Méthodes d'Adams-Bashforth 4 MÉTHODES À PAS MULTIPLES
ķ
Propriété 4.4 (Stabilité) Soit P le polynôme déni par P pλq αi λi .
Une méthode à pas multiple est stable, si
i 0
2 et
Pour le schéma (4.1), on a k
$ $
1 & β0 0
& α0
α 0 β 2
% α1 1 % β1 0
2 2
24
4.4 Méthodes d'Adams-Moulton 4 MÉTHODES À PAS MULTIPLES
h rn 1s
y rn 1 s y rns f f rns . (4.6)
2
h rn 1s
y rn 1 s y rns 5ff 8ff rns f rn1s . (4.7)
12
h rn 1s
y rn 1 s y rns 9ff 19ff rns 5ff rn1s f rn2s . (4.8)
24
Ces schémas sont implicites et leur ordre correspond au nombre de pas plus
un.
npour
4.5.2 Exemple
Choisissons la méthode d'Euler explicite pour prédicteur et la méthode
implicite des trapèzes comme correcteur.
Euler explicite : y rn 1s y rns hff ptn , y rns q
Trapèze implicite : y rn 1s y rns h2 pf ptn , y rns q f ptn 1 , y rn 1s qq
On obtient :
$ rns
'
'
'
f f ptn, y rnsq;
& y rn 1s y rns hff rns;
rn 1s
'
'
' f
% rn 1s
f ptn 1, y rn 1sq;
y y rns h2 py rn 1s f rns q
Remarque 4.6 On retrouve ici, pour ce cas simple, une formule de Runge-
Kutta 2.
25
5 EXERCICES CORRIGÉS
5 Exercices corrigés
Exercice 1
26
5 EXERCICES CORRIGÉS
2. En déduire que
2. En déduire que
Correction
Q. 1 1. Soit n P v0, N 1w, on a
pDyqPn ypt qh ypt q .
n 1 n
27
5 EXERCICES CORRIGÉS
De même, comme ηR
n P rtn1, tns on a
|yp2qpηRn q| ¤ tPrtmax
,t s
n 1 nn
|yp2qptq|
d'où, en utilisant (5.4),
hy p1q ptn q
h2 p2q n h3 p3q n
y ptn 1
q yptnq y pt q y pη 1 q (5.5)
2! 3!
et
y ptn 1
q yptn1q 2hyp1qptnq h3 p3q n
6
p y pη 1 q y p3q pη2n qq
d'où
y p1q ptn q
y ptn 1 q yptn1q h2 pyp3qpηnq y p3q pη2n qq.
1
2h 12
2. Comme η1n P rtn, tn 1s rtn1, tn 1s, on en déduit que
|yp3qpη1nq| ¤ tPrt max
,t s
|yp3qptq|.
n 1 n 1
28
5 EXERCICES CORRIGÉS
Exercice 2
On veut résoudre numériquement le problème pP q suivant : trouver y
telle que " 1
pP q yypp0tqq cos
0.
ptq 1, @t P r0, 4πs
dont la solution exacte est y ptq sinptq t.
On rappelle le schéma d'Euler progressif pour la résolution d'un problème
de Cauchy " rn 1s rns n rns
pS q yyr0s ydonné.hf pt , y q,
Correction
Q. 1 On commence par écrire le problème de cauchy associé à pP q :
" 1
y ptq f pt, yptqq, @t P rt0, t0 T s
pPC q y pt0 q y0 P R.
avec t0 0, T 4π, y0 0 et
f : rt0 , t0 T s R ÝÑ R
pt, zq ÞÝÑ cosptq 1 .
Les données du problème de Cauchy sont donc les réels t0 , T, y0 et la fonction
f. L'inconnue est la fonction y : rt0 , t0 T s ÝÑ R.
Pour résoudre numériquement le problème de Cauchy, on utilise le schéma
pS q où les données sont celles du problème de Cauchy plus le nombre de
discrétisations N P N On peux alors calculer
29
5 EXERCICES CORRIGÉS
1: Fonction t Ð DisReg( a, b, N )
2: h Ð pb aq{N
3: Pour n Ð 0 à N faire
4: t pn 1q Ð a n h
5: Fin Pour
6: Fin Fonction
30
5 EXERCICES CORRIGÉS
1: Fonction rt , Y s Ð REDEP( f, t0 , T, y0 , N )
2: tÐ p
DisReg t0 , t0T, N q
3: h Ð pb aq{N
4: Y p1q Ð y 0
5: Pour n Ð 1 à N faire
6: Y pn 1q Ð Y pnq h f pt pnq, Y pnqq
7: Fin Pour
8: Fin Fonction
1: Fonction w Ð fCauchy( t, y )
2: w Ð cosptq 1
3: Fin Fonction
31
5 EXERCICES CORRIGÉS
Exercice 3
On veut résoudre numériquement le problème du pendule pesant sans
viscosité : $ p2q
& θ ptq Lg sinpθptqq, @t P r0, 100s
pP q % θp0q π
θp1q p0q 1
avec g 9.81 et L 1.
On rappelle le schéma d'Euler progressif (vectoriel) pour la résolution d'un
problème de Cauchy
" rn 1s
y rns hff ptn , y rns q,
pS q y
y r0s donné.
Correction
Q. 1 On a déjà écrit le problème de cauchy associé à pP q :
" 1
y ptq f pt, y ptqq, @t P rt0, t0 Ts
pPC q y p q y 0 P R2 .
t0
θptq
avec y ptq 0, T 100, y 0 π
et
θp1q ptq
, t0
1
f : rt0, t0 T s R2 ÝÑ
R 2
pt, z q ÞÝÑ z2
Lg sinpz 1q
.
32
5 EXERCICES CORRIGÉS
1: Fonction rt , Y s Ð REDEPvec( f, t0 , T, y 0 , N )
2: t Ð DisRegpt0 , t0 T, N q
3: h Ð pb aq{N
4: Y p:, 1q Ð y 0
5: Pour n Ð 1 à N faire
6: Y p:, n 1q Ð Y p:, nq h f pt pnq, Y p:, nqq
7: Fin Pour
8: Fin Fonction
33
5 EXERCICES CORRIGÉS
1: Fonction w Ð fP( t, z )
2: g Ð 9.81
3: LÐ1
4: w p1 q Ð z p2 q
5: w p2q Ð pg {Lq sinpz p1qq
6: Fin Fonction
y Ð
0 π
3:
1
4: rt, Y s Ð REDEPvec( fP, t0 , T, y 0 , 2000)
5: Plotpt , Y p1, :qq Representation de pt, θptqq
6: Plotpt , Y p2, :qq Representation de pt, θ1ptqq
Exercice 4
la méthode de Heun est donnée par
h n
y rn s y rns h n rns
1
f pt , y q f t 1
, y rns hff ptn , y rns q .
2 2
Q. 1 Ecrire la fonction algorithmique permettant de ré-
REDHeunVec
soudre un problème de Cauchy (vectoriel par la méthode de Heun en utilisant
au plus 2N évaluation de f .
Correction
Q. 1 Le schéma de Heun peut s'écrire sous la forme
y rn s y rns pk k n2 q
1 h n
2 1
34
5 EXERCICES CORRIGÉS
avec
k n1 f ptn, y rnsq
k n2 f ptn 1, y rns hkk 1 q
L'algorithme de la fonction REDEPvec s'écrit alors :
1: Fonction rt , Y s Ð REDHeunVec( f, t0 , T, y 0 , N )
2: t Ð DisRegpt0 , t0 T, N q
3: h Ð pb aq{N
4: Y p:, 1q Ð y 0
5: Pour n Ð 1 à N faire
6: k 1 Ð f pt pnq, Y p:, nqq
7: k 2 Ð f pt pn 1q, Y p:, nq hkk 1 q
8: Y p:, n 1q Ð Y p:, nq ph{2q pk 1 k 2q
9: Fin Pour
10: Fin Fonction
Exercice 5
la méthode de Runge-Kutta d'ordre 4 est donnée par
rns
k1 f ptn , y rns q
k2
rns f ptn h2 , y rns h2 k 1 q
rns
k3
rns f ptn h2 , y rns h2 k 2 q
rns
k4
rns f ptn h, y rns hkk 3 q
rns
y rn s
1 y rns h6 pk 1
rns 2kk rns 2kk rns k rns q.
h n 1 rns
2 3 4
y rn s y rns h n rns
1
f pt , y q f t ,y hff ptn , y rns q .
2 2
Q. 1 Ecrire la fonction algorithmique REDRK4Vec permettant de résoudre
un problème de Cauchy (vectoriel par la méthode de Runge-Kutta d'ordre 4.
35
5 EXERCICES CORRIGÉS
Correction
Q. 1 L'algorithme de la fonction REDRK4Vec s'écrit alors :
1: Fonction rt , Y s Ð REDRK4Vec( f, t0 , T, y 0 , N )
2: tÐ p
DisReg t0 , t0 T, N q
3: h Ð pb aq{N
4: Y p:, 1q Ð y 0
5: Pour n Ð 1 à N faire
6: k 1 Ð f pt pnq, Y p:, nqq
7: k 2 Ð f pt pnq h{2, Y p:, nq ph{2qk 1 q
8: k 3 Ð f pt pnq h{2, Y p:, nq ph{2qk 2 q
9: k 4 Ð f pt pnq h, Y p:, nq hkk 3 q
10: Y p:, n 1q Ð Y p:, nq ph{6q pk 1 2kk 2 2kk 3 k 4q
11: Fin Pour
12: Fin Fonction
Exercice 6
La méthode de Adam-Bashforth d'ordre 4 explicite est donnée par
y rn 1s y rns h
24 55ff rns 59ff rn1s 37ff rn2s 9ff rn3s .
Correction
36
5 EXERCICES CORRIGÉS
Exercice 7
On pose f rns f ptn , y rns q. La méthode de Adams-Bashforth d'ordre
4 explicite est donnée par
h
y rn s y rns
1
55ff rns 59ff rn1s 37ff rn2s 9ff rn3s
24
37
5 EXERCICES CORRIGÉS
Correction
Q. 1 On utilise le schéma de Runge-Kutta d'ordre 4 pour initialiser les 4
premières valeurs.
Ensuite on utilise comme prédicteur le schéma explicte et comme correcteur
le schéma implicite. Le principe est donc
Calcul à l'aide du prédicteur :
h
ŷ rn 1 s y rns 55ff rns 59ff rn1s 37ff rn2s 9ff rn3s
24
Calcul à l'aide du correcteur :
rn s r sq
fˆ
1
f ptn 1 , ŷ n 1
rn 1s
y rn 1 s y rns h
24
ˆ
9f 19ff rns 5ff rn1s f rn2s
38
5 EXERCICES CORRIGÉS
1: Fonction rt , Y s Ð REDPreCor4Vec( f, t0 , T, y 0 , N )
2: t Ð DisRegpt0 , t0 T, N q
3: h Ð pb aq{N
4: rtini, Y inis Ð REDRK4Vecpf, t0, t0 3 h, y 0 , 3q
5: Pour n Ð 1 à 4 faire
6: Y p:, nq Ð Y ini p:, nq
7: Fin Pour
8: k1Ð f ptp3q, Y p:, 3qq
9: k2Ð f ptp2q, Y p:, 2qq
10: k3Ð f ptp1q, Y p:, 1qq
11: Pour n Ð 4 à N faire
12: k 0 Ð f pt pnq, Y p:, nqq
13: Ŷ Ð Y p:, nq ph{24q p55 k 0 59 k 1 37 k 2 9 k 3 q
14: F̂ Ð f pt pn 1q, Ŷ q
15: Y p:, n 1q Ð Y p:, nq ph{24q p9 F̂ 19 k 0 5 k 1 k 2 q
16: k3 Ð k2
17: k2 Ð k1
18: k1 Ð k0
19: Fin Pour
20: Fin Fonction
39