Vous êtes sur la page 1sur 13

Epreuve

de Modelisation
Option calcul scientifique

Agregation Externe de Mathematiques


Universite Paris-Sud 11

R
esolution num
erique des
equations
diff
erentielles ordinaires

1 Introduction `
a la discr
etisation des E.D.O.
1
1.1 Quelques exemples dE.D.O. . . . . . . . . . . . . .
1
1.2 Methodes dEuler (explicite, semi-implicite, implicite) 3
2 Analyse num
erique des m
ethodes `
a un pas
5
2.1 Definitions (convergence, stabilite, consistance, ordre) 7
2.2 Principaux resultats danalyse numerique . . . . .
8
3 M
ethodes de Runge-Kutta
3.1 Principe general des methodes de Runge-Kutta . .
3.2 Methodes de Runge-Kutta usuelles . . . . . . . . .

1
1.1

10
10
12

Introduction `
a la discr
etisation des E.D.O.
Quelques exemples dE.D.O.

Un grand nombre de probl`emes qui seront vus en theorie du controle secrivent sous la forme devolution
dun certain nombre de quantites en fonction du temps. Ces probl`emes secrivent comme une E.D.O.
(eventuellement dependant dun ou plusieurs param`etres, les controles), et decrivant levolution dune ou
plusieurs quantites. Ces equations peuvent etre du 1er , du 2nd ... ou du n`eme ordre, lineaires ou pas...
Exemple (Voiture en mouvement) On consid`ere une voiture se deplacant sur un axe Ox et dont on
peut contr
oler lacceleration u (si u > 0 la voiture accel`ere et si u < 0 la voiture decel`ere). Lequation
devolution de la position x de la voiture est donc
d2 x
(t) = x(t) = u(t).
dt2
Cest une equation du 2nd ordre en temps dependant du controle u. On peut toujours ecrire une equation
du 2nd ordre sous forme dune E.D.O. du 1er ordre, en doublant le nombre dinconnues

0 

x0 (t) = y(t)
x(t)
y(t)
=
.
y 0 (t) = u(t)
y(t)
u(t)
Exemple (Trajectoire (x, y, z) dune particule de masse m dans un champ de potentiel)

x
m y = V(x, y, z)
z

c S. Martin


Epreuve
de Modelisation
Option calcul scientifique

Agregation Externe de Mathematiques


Universite Paris-Sud 11

qui devient du

1er ordre en ecrivant


x0

y0

z0

m vx0

m vy0

m vz0

=
=
=

V
(x, y, z)
x
V
vy
(x, y, z)
x
V
vz
(x, y, z)
x
V

(x, y, z)
x
V

(x, y, z)
y
V

(x, y, z)
z
vx

cest-`a-dire en doublant le nombre dequations...

On pourrait imaginer un contr


ole qui alt`ere la trajectoire (champ electrique, magnetique, etc...).
Exemple (Objet en chute libre) Un asterode sapproche de la terre en ligne droite. Il subit la force
dattraction gravitationnelle g ainsi que la force de frottement de lair, qui varie avec laltitude z comme
Ff = k v 2 eaz , v etant la vitesse de lobjet, k et a des coefficients de frottement. Dapr`es le principe
fondamental de la dynamique, lE.D.O. qui regit le mouvement de lastre est
z = g + k v 2 eaz = g + k (z 0 )2 eaz
que lon peut ecrire sous forme dequations du premier ordre :
 0
z = v
v 0 = g + k v 2 eaz
Exemple (Evolution epidemiologique) La prediction en epidemiologie constitue un probl`eme majeur en
modelisation. Le premier mod`ele dynamique (simpliste et irrealiste dans la plupart des cas !) est d
u `
a
Hamer en 1906. Soit n le nombre total dindividus, x le nombre dindividus sains (susceptibles detre
infectes) et y le nombre dindividus infectes. Soit le taux dinfection. Le mod`ele secrit
 0
y =
xy
x0 = xy
Or x + y = n, ce qui permet detudier levolution du nombre de personnes infectees :
y 0 = y (n y).
Determiner le nombre de personnes infectees `a un instant t > 0, avec la donnee initiale y(t0 ) = y0 .
La theorie des E.D.O. est assez riche et le comportement des solutions tr`es varie (points fixes, attractifs,
repulsifs, attracteurs, points cols, trajectoire periodique, etc...). On souhaite resoudre des E.D.O. du 1er
ordre `
a N variables et decrire des methodes numeriques permettant de le faire. On tachera dans ce cours
detudier certaines proprietes de ces methodes dans la plupart des cas :
4 la convergence ; cest la premi`ere qualite requise pour un schema numerique, assurant que la solution
numerique est proche de la solution exacte, selon des crit`eres etablis,Montrer que si un schema est
stable et consistant, alors il est convergent.
4 la precision ; cest la propriete qui etablit le controle de lerreur entre la solution numerique et la solution
exacte,
4 la complexite de la mise en oeuvre ; lenjeu est de mettre en oeuvre des methodes numeriques qui
peuvent etre implementees avec le moins de difficultes possibles,
4 la robustesse ; on sinteresse `
a des methodes qui ne sont pas specifiques `a un unique probl`eme donne,
mais `
a des classes de probl`emes generiques.
De nombreux ouvrages exposent en detail les methodes qui sont abordees dans ces notes de cours. Signalons
en particulier ceux de Crouzeix et Mignot [1], Demailly [2] et Schatzman [3].
2

c S. Martin


Epreuve
de Modelisation
Option calcul scientifique

Agregation Externe de Mathematiques


Universite Paris-Sud 11

1.2

M
ethodes dEuler (explicite, semi-implicite, implicite)

Soit T > 0, N N et f : R+ RN RN une fonction reguli`ere. On consid`ere le probl`eme dinconnue


u : R+ RN pose par une equation differentielle ordinaire (E.D.O.) de la forme
(
du
(t) = f (t, u)
t (0, T )
dt
u(0) = u0 .
On suppose que f verifie les hypoth`eses de Cauchy-Lipschitz : f est continue sur [0, T ] RN et
L > 0, t [0, T ], (v, w) RN RN , |f (t, c) f (t, w)| 6 L |v w|.
On cherche une methode numerique qui permet de construire une solution numerique proche (en un
sens `
a preciser) de la solution exacte (si une telle solution existe !). La strategie consiste `a decouper un
intervalle de temps [0, T ] en intervalles de temps elementaires [tn , tn+1 ], avec tn = nh, et `a considerer
que sur chaque petit intervalle du/dt est a` peu pr`es constant. Cette approximation est valable pour tous
les schemas numeriques envisages. En revanche, levaluation du terme f (t, u) sur lintervalle de temps
[tn , tn+1 ] fait apparatre de nombreuses possibilites, dont certaines sont discutees ci-apr`es :
 Sch
ema dEuler explicite. Cest une methode basee sur une evaluation directe et explicite (la plus
simple) de f (t, u). Elle consiste `
a chercher une approximation Un de u(tn ) definie par :
Un+1 Un
= f (tn , Un ).
h

(1.1)

Un deuxi`eme point de vue sur la methode dEuler explicite consiste `a integrer lequation (1.1) sur [tn , tn+1 [,
on obtient
Z
tn+1

u(tn+1 ) u(tn ) =

f (s, u(s)) ds
tn

et la methode dEuler explicite consiste donc `a evaluer le terme integral par


Z tn+1
f (s, u(s)) ds h f (tn , u(tn )).
tn

La methode dEuler explicite peut etre implementee de facon simple : cest une methode directe dont
chaque etape ne necessite que levaluation de la fonction f . Neanmoins, comme le montre lexemple
suivant, cette methode peut etre imprecise et ne pas preserver certaines proprietes fondamentales de la
solution exacte :
Exemple (Schema dEuler et trajectoire circulaire (1/2)) Considerons le syst`eme dE.D.O. : x0 = y,
y 0 = x. Le calcul suivant

d 2
x + y 2 = 2xx0 + 2yy 0 = 2xy + 2xy = 0
dt

x2 + y 2 = Cte.

etablit que les trajectoires sont des cercles. Or, numeriquement, le schema dEuler explicite secrit
x

n+1 xn = yn
xn+1 = xn hyn
h

yn+1 = yn + h xn
yn+1 yn = x
n
h


2
2
2
2
(xn+1 ) + (yn+1 ) = (1 + h2 ) (xn ) + (yn ) .
Numeriquement, les trajectoires ne sont plus circulaires (voir Fig.1) ! Cette propriete est mise en defaut,
quelle que soit la valeur de h choisie (aussi petite soit-elle). Bien quelle soit facile `a mettre en oeuvre, la
methode dEuler explicite ne permet pas, dans ce cas, de capter une propriete fondamentale de la solution
exacte. Cest ce qui peut motiver letude dautres schemas...
3

c S. Martin


Epreuve
de Modelisation
Option calcul scientifique

Agregation Externe de Mathematiques


Universite Paris-Sud 11

Euler explicite, h=2/20


Euler explicite, h=2/40
Demipoint, h=2/20

Fig. 1 Solution numerique du syst`eme x0 = y, y 0 = x pour la C.I. (1, 0) avec les methodes dEuler
explicite et du demi-point.

 Sch
ema dEuler semi-explicite (ou demi-point). Pour levaluation du terme integral ci-dessus, on
pourrait faire un choix probablement plus precis avec lapproximation suivante
Z tn+1



f (s, u(s)) ds h f tn+ 12 , u tn+ 12
tn

h

f (tn , u(tn )) + f (tn+1 , u (tn+1 )) .


2
On propose ainsi le nouveau schema

Un+1 Un
1
=
f (tn , Un ) + f (tn+1 , Un+1 )
h
2

(1.2)

appele schema semi-implicite (ou point-milieu).


Exemple (Schema dEuler et trajectoire circulaire (2/2)) Pour le syst`eme introduit precedemment x0 =
y, y 0 = x, le schema du point milieu secrit :

xn+1 xn = 1 (yn + yn+1 )


h
2
y
yn
1

n+1
= (xn + xn+1 )
h
2
Il preserve la norme et, en consequence, les trajectoires circulaires (voir Fig.1), quelle que soit la valeur
de h choisie. Par rapport au schema dEuler explicite, cest une amelioration importante. En revanche, le
prix `
a payer consiste, `
a chaque iteration, a` resoudre un syst`eme lineaire...
4

c S. Martin


Epreuve
de Modelisation
Option calcul scientifique

Agregation Externe de Mathematiques


Universite Paris-Sud 11

 Sch
ema dEuler implicite. Un autre choix consiste `a approcher le terme integral par
Z tn+1
f (s, u(s)) ds h f (tn+1 , u(tn+1 ))
tn

qui conduit `
a la methode dEuler implicite (ou retrograde).
Un+1 Un = h f (tn+1 , Un+1 ).

(1.3)

Il sagit dune equation a priori non lineaire `a resoudre pour trouver Un+1 . Cette methode est donc plus
compliquee que la methode explicite. Neanmoins, linteret que lon peut porter `a des methodes implicites
concerne la notion de stabilite des methodes. Cette notion sera developpee dans la section suivante, mais
nous en donnons un apercu `
a travers lexemple suivant.
Exemple (Sur la notion de stabilite) Soit > 0 et considerons lequation :
 0
u = u
u(0) = u0 > 0.
Ce probl`eme admet la solution u(t) = u0 e t qui satisfait :
t > 0,

u(t) > 0

et

lim u(t) = 0.

t+

Etudions la mise en oeuvre des methodes dEuler sur cet exemple :


4 methode explicite : Un = (1 h)n U0 .
1
4 methode implicite : Un =
U0 .
(1 + h)n
Il apparat alors que la methode explicite fonctionne uniquement si h est choisi de mani`ere adequate :
elle est stable sous la condition 0 < h < 1/ ; si cette condition nest pas satisfaite, en particulier si
1 < h < 2, la solution numerique peut atteindre des valeurs negatives (voir Fig.2), ce qui na pas de
sens physique ! De plus, si h > 2, la solution numerique oscille entre des valeurs positives et negatives,
avec une amplitude qui augmente : la solution numerique ne tend pas vers 0 lorsque t + : dans ce
cas encore, la solution numerique ne respecte pas une propriete fondamentale de la solution exacte ! En
revanche, la methode implicite est inconditionnellement stable au sens o`
u il nest pas necessaire de choisir
un pas de temps h sous une contrainte determinee (voir Fig.3) pour que les deux proprietes mentionnees
soient satisfaites par la solution numerique.

Analyse num
erique des m
ethodes `
a un pas

Soit N N et f : R+ RN RN une fonction reguli`ere qui verifie lhypoth`ese de Cauchy-Lipschitz.


On sinteresse `
a lanalyse des methodes numeriques permettant de calculer la solution u : R+ RN de
lE.D.O.
(
du
(t) = f (t, u)
(P)
dt
u(0) = u0
Dans toute cette partie, | | et k k designent les normes usuelles sur R et RN , respectivement. Soit
h [0, h? ]. On choisit une subdivision de [0, T ]
0 = t0 < t1 < ... < tn < ... < tNh 1 < tNh = T,
et lon pose : n {0, ..., Nh 1}, hn = tn+1 tn , h = sup hn .
n

c S. Martin


Epreuve
de Modelisation
Option calcul scientifique

Agregation Externe de Mathematiques


Universite Paris-Sud 11

Sol. num. par Euler explicite, h=1.5


Sol. exacte

Fig. 2 Solution numerique de lequation u0 = u pour la C.I. u(0) = 1 avec la methode dEuler
explicite h = 1.5.
Sol. num. par Euler explicite, h=2.15
Sol. exacte

Fig. 3 Solution numerique de lequation u0 = u pour la C.I. u(0) = 1 avec la methode dEuler
implicite h = 1.5.
6

c S. Martin


Epreuve
de Modelisation
Option calcul scientifique

Agregation Externe de Mathematiques


Universite Paris-Sud 11

2.1

D
efinitions (convergence, stabilit
e, consistance, ordre)

D
efinition 2.1 (M
ethode `
a un pas)
Une methode `
a un pas correspond `
a lecriture dun schema numerique sous la forme

(Ph )

Un+1 = Un + hn (tn , Un ; hn )
U0 donne (typiquement, proche de u0 )

avec : R+ RN [0, h? ] RN (pour la methode dEuler explicite, (t, u; h) = f (t, u)).


D
efinition 2.2 (Convergence dune m
ethode)
Lapproximation de (P) definie par le schema `
a un pas (Ph ) est dite convergente si, quelle que soit la
donnee initiale u0 ,
lim

max ku(tn ) Un k = 0.

! ! ! Nh augmente lorsque h diminue ! ! !

U0 u0 ; h0 n6Nh

Cette definition constitue une propriete fondamentale que doit satisfaire un schema numerique : cette
propriete garantit que la solution numerique est proche de la solution continue. Par ailleurs, on ne
suppose pas que le schema part de la condition initiale exacte du syst`eme differentiel ; en effet, dune
part, il peut y avoir une erreur de troncature sur la valeur de la condition initiale et dautre part, la
condition initiale peut ne pas etre connue exactement, quelle soit elle-meme le resultat dun calcul, ou
quelle soit obtenue par un procede dechantillonnage. De facon generale, de meme que la solution dun
syst`eme differentiel est continue par rapport aux donnees initiales, la solution approchee par un schema
a un pas doit etre continue par rapport `
`
a une perturbation des conditions initiales. La convergence dun
schema resulte, comme on va le voir, de deux proprietes :
4 la stabilite ; cest une propriete propre au schema, et qui assure que le schema namplifie pas trop les
erreurs quon commet `
a chaque pas,
4 la consistance ; cest une propriete qui decrit la relation entre le schema et le syst`eme differentiel, et
qui implique que le schema secarte peu localement de la solution.
D
efinition 2.3 (Erreur de discr
etisation, de consistance)
On definit :
4 lerreur de discretisation
4 lerreur de consistance

: en = u(tn ) Un ,
: En = u(tn+1 ) u(tn ) hn (tn , u(tn ); hn ).

Lerreur de consistance est commise en remplacant un dans le schema par la solution exacte u(tn ).
D
efinition 2.4 (Stabilit
e)
On dit que la methode (Ph ) est stable sil existe M > 0 telle que pour toutes suites Un , Vn , n definies par


Un+1 = Un + hn (tn , Un ; hn )
Vn+1 = Vn + hn (tn , Vn ; hn ) + n

on a la propriete

max kUn Vn k 6 M kU0 V0 k +

n6Nh

kn k .

n6Nh

Cela signifie que des erreurs commises `


a chaque iteration se cumulent mais ne degradent pas trop la
solution.

c S. Martin


Epreuve
de Modelisation
Option calcul scientifique

Agregation Externe de Mathematiques


Universite Paris-Sud 11
D
efinition 2.5 (Consistance)
La methode (Ph ) est consistante pour le probl`eme (P) si
NX
h 1

ku(tn+1 ) u(tn ) hn (tn , u(tn ); hn )k =

n=0

NX
h 1

kEn k

n=0

tend vers 0 lorsque h tend vers 0.


Exemple (Consistance de la methode dEuler explicite) On se place dans le cas o`
u f est supposee (Lt , Lu )lipschitzienne :
Lt , Lu ,

(t1 , u1 ), (t2 , u2 ),

kf (t1 , u1 ) f (t2 , u2 )k 6 Lt |t1 t2 | + Lu ku1 u2 k.

La generalisation sous lhypoth`ese (moins restrictive) de Cauchy-Lipsschitz, est disponible dans [3] ainsi
que comme une application immediate du Lemme 2.7 qui sera demontre plus loin. Pour la methode dEuler
explicite, on a
NX
NX
h 1
h 1
kEn k =
ku(tn+1 ) u(tn ) hn f (tn , u(tn ))k
n=0

=
6
6
6

n=0
NX
h 1

tn+1

tn
n=0
NX
h 1 Z tn+1

(f (t, u(t)) f (tn , u(tn ))) dtk





Lt |t tn | + Lu ku(t)) u(tn )k dt

n=0 tn
NX
h 1 
h2n
n=0


Lt + h2n Lu sup ku0 (t)k
[t0 ,tNh ]

h T Lt + Lu sup ku0 (t)k
[t0 ,tNh ]

et la methode est consistante.


D
efinition 2.6 (Ordre dune m
ethode)
La methode est dordre p lorsque
NX
h 1

ku(tn+1 ) u(tn ) hn (tn , u(tn ); hn )k = O(hp ),

u C p+1 ([0, T ]).

n=0

(la methode dEuler est dordre 1)

2.2

Principaux r
esultats danalyse num
erique

Lemme 2.7 (CNS de consistance)


Une methode est consistante si et seulement si
(t, y; 0) = f (t, y)

t [0, T ], y RN

Preuve. Posons En = y(tn+1 ) y(tn ) hn (tn , y(tn ); hn ). Dapr`es la formule des accroissements finis, il
existe cn ]tn , tn+1 [ tel que :
En = hn (f (cn , y(cn )) (tn , y(tn ); hn )) .
En posant
n = hn (f (cn , y(cn )) (cn , y(cn ); 0)) ,
8

n = (cn , y(cn ); 0) (tn , y(tn ); hn ),


c S. Martin


Epreuve
de Modelisation
Option calcul scientifique

Agregation Externe de Mathematiques


Universite Paris-Sud 11

on obtient
En = n + hn n .
Dune part, la fonction t 7 |f (t, y(t)) (t, y(t); 0)| est continue, donc integrable au sens de Riemann, et
on en deduit :
Z T
X
lim
|n | =
|f (t, y(t)) (t, y(t); 0)| dt.
h0

n<Nh

Dautre part,
|| 6 (h) =

|(t, y(t); 0) (t0 , y(t0 ); h0 )| ;

max

|t t0 | 6 h
0 6 h0 6 h

la fonction (t, h) 7 (t, y(t); h) etant continue sur le compact [0, T ][0, h? ], elle est uniformement continue
et donc limh0 (h) = 0 ; on en deduit
X
X
|hn | 6 T (h),
do`
u lim
|hn | = 0.
h0

n6Nh

n6Nh

Dire que P
la methode est consistante equivaut `a dire que, pour toute solution de lequation y 0 (t) = f (t, y(t)),
on a lim h0 |En |, i.e.
t [0, T ], f (t, y(t)) = (t, y(t); 0).
Dapr`es le theor`eme de Cauchy-Lipschitz, pour tout (t? , y ? ) [0, T ]R, il existe une solution de lequation
differentielle y 0 (t) = f (t, y(t)) qui verifie y(t? ) = y ? . On en deduit que la propriete de consistance entrane
f (t? , y ? ) = (t? , y ? ; 0).

Th
eor`
eme 2.8 (CNS de convergence)
Si la methode (Ph ) est stable et consistante, alors elle est convergente.
Preuve. On pose
En = u(tn+1 ) u(tn ) hn (tn , u(tn ); hn ).
Puisque la methode est consistante,
lim

h0

NX
h 1

kEn k = 0.

On pose Vn = u(tn ). La suite Vn verifie les hypoth`eses de la definition de stabilite et on a

X
max kUn u(tn )k 6 M kU0 u0 k +
kEn k .
n6Nh

n6Nh

Dapr`es ce qui prec`ede, max kUn u(tn )k tend vers 0 quand (U0 , h) tend vers (u0 , 0).

n6Nh

Th
eor`
eme 2.9 (CNS pour une m
ethode dordre p)
On suppose f C p ([0, T ] RN ) et que , /h, ..., p /hp existent et sont continues sur [0, T ] RN
[0, h? ]. Alors une CNS pour que la methode soit dordre p est que
(t, y; 0) = f (0) (t, y),

(t, y; 0) = f (1) (t, y),


h
2

...,

p1
1
(t, y; 0) = f (p1) (t, y),
p1
h
p

o`
u les derivees sont definies par f (0) (t, y) = f (t, y) et
f (k) (t, y) =

f (k1)
(t, y) + y f (k1) (t, y) f (t, y), k = 1, ..., p.
t
9

c S. Martin


Epreuve
de Modelisation
Option calcul scientifique

Agregation Externe de Mathematiques


Universite Paris-Sud 11

Th
eor`
eme 2.10 (Convergence dordre p)
Soit U0 = u0 . Si une methode est stable et dordre p, et si f C p ([0, T ] R), alors
max |Un u(tn )k 6 M hp .

n6Nh

Preuve. Le resultat est une consequence des definitions de la stabilite et de lordre.

X
X
max kUn u(tn )k 6 M kU0 u0 k +
kEn k
et
kEn k 6 C hp .
n6Nh

n6Nh

n6Nh

M
ethodes de Runge-Kutta

Il sagit ici de trouver des methodes plus precises que la methode dEuler mais qui soient toujours des
methodes `
a un pas. En particulier, on cherchera des methodes dordre p en supposant que f C p+1 ([0, T ]
N
R ).

3.1

Principe g
en
eral des m
ethodes de Runge-Kutta

 Une m
ethode nave (et co
uteuse !). Un moyen simple pour construire une methode dordre p est
dutiliser une methode de Taylor
(t, u; h) = f (t, u) +

hp1 (p1)
h (1)
f (t, u) + ... +
f
(t, u).
2
p!

Naturellement, verifie les hypoth`eses du Theor`eme 2.9 et permet de construire une methode dordre p.
De plus, on peut voir que cette methode est stable si, par exemple, f C p ([0, T ] RN ). Neanmoins, elle
presente un inconvenient majeur qui est la necessite dutiliser (de calculer) non pas une fonction f mais
p fonctions (f (0) , ..., f (p1) ). En pratique, ce calcul peut etre co
uteux surtout si f depend de param`etres.
On cherche donc des methodes ne necessitant que levaluation de f .
 M
ethodes de quadrature (Runge-Kutta). Lidee est dessayer devaluer u en des temps intermediaires gr
ace `
a des formules de quadrature. Pour cela, cherchons `a interpreter les formules introduites
precedemment : si on reecrit le syst`eme differentiel
du
= f (t, u)
dt
sous forme integrale entre tj et tj+1 , on obtient
Z

tj+1

u(tj+1 ) = u(tj ) +
tj

du
(s) ds.
dt

On peut donc obtenir une approximation de u(tj+1 ) u(tj ) en utilisant une formule de quadrature ; si on
utilise la formule des rectangles `
a gauche, on aura
u(tj+1 ) u(tj ) ' hj

du
(tj ),
dt

ce qui nous conduit au schema dEuler explicite. En utilisant la formule des rectangles `a droite, on a
u(tj+1 ) u(tj ) ' hj
10

du
(tj+1 ),
dt
c S. Martin


Epreuve
de Modelisation
Option calcul scientifique

Agregation Externe de Mathematiques


Universite Paris-Sud 11

ce qui nous conduit au schema dEuler implicite. Enfin, en utilisant une formule avec comme noeuds les
extremites de lintervalle, on ecrit :


du
du
(tj ) +
(tj+1 ) .
u(tj+1 ) u(tj ) ' hj
dt
dt
Pour quune telle formule soit dordre 0 en tant que formule dintegration, il faut que + = 1. On tombe
donc sur la methode ; le cas = 1/2 qui est la formule des trap`ezes conduit `a la methode de CrankNicholson (ou point-milieu), qui est la plus precise. Pour fabriquer des schemas fondes sur des formules
dintegration, on raisonne comme suit : on se donne q noeuds cj appartenant `a [0, 1], distincts ou non,
ranges par ordre croissant et des formules de quadrature
Z 1
q
X
f (t) dt '
bj f (cj )
(3.1)
0

j=1

ci

f (t) dt '
0

q
X

aij f (cj ).

(3.2)

j=1

La formule de quadrature (3.2) diff`ere un peu des formules de quadrature classiques en ce quelle fait
intervenir des points situes `
a lexterieur de lintervalle dintegration (notamment si aij 6= 0 pour j > i).
Il ny a pas de difficulte nouvelle quand on fait cette hypoth`ese. Une formule de Runge-Kutta consiste `
a
construire une approximation basee sur ces formules de quadrature, i.e. si on pose tk,i = tk + ci hk ,
Uk,i = Uk + hk

q
X

aij f (tk,j , Uk,j )

(3.3)

j=1

Uk+1 = Uk + hk

q
X

bj f (tk,j , Uk,j )

(3.4)

j=1

Un point de vue identique mais leg`erement different dans la forme revient `a evaluer le terme integral de
la mani`ere suivante :
Z tn,i
q
X
(i)
u(tn,i ) = u(tn ) +
f (s, u(s)) ds ' u(tn ) + hn
aij f (tn,j , u(tn,j )),
tn

Z
(ii)

j=1
q
X

tn+1

f (s, u(s)) ds ' u(tn ) + hn

u(tn+1 ) = u(tn ) +
tn

bj f (tn,j , u(tn,j )),

j=1

et les methodes de Runge-Kutta consistent consistent alors `a


4 remplacer les approximations par des egalites,
4 ajuster les aij , bj de facon `
a pouvoir calculer facilement et `a avoir un ordre donne.
(i)

(ii)

Un,i = Un + hn

q
X

aij f (tn,j , Un,j ),

j=1
q
X

Un+1 = Un + hn

i = 1, ..., q

bj f (tn,j , Un,j )

j=1

Les Un,i sont calcules par (i), et Un+1 est evalue grace `a (ii) et aux Un,i calcules precedemment. Ainsi,
un schema de Runge-Kutta est enti`erement determine par ses coefficients que lon peut representer sous
la forme dun tableau (voit Tab.1).
On remarque que les relations (3.3) permettent de determiner les Uk,j explicitement si les aij sont nuls
pour j > i. Si les aij sont nuls pour j > i mais certains des aii ne le sont pas, la methode est dite semiimplicite, car on peut resoudre tour `
a tour chacune des equations (3.3) par une technique de resolution
dequations non lineaires. Enfin, sil y a des couples (i, j) avec j > i pour lesquels aij nest pas nul, (3.3)
forme un syst`eme de N q equations non lineaires couplees.
11

c S. Martin


Epreuve
de Modelisation
Option calcul scientifique

Agregation Externe de Mathematiques


Universite Paris-Sud 11
c1
c2
..
.

a11
a21
..
.

a12
a22
..
.

a1q
a2q
..
.

cq

aq1
b1

aq2
b2

aqq
bq

Tab. 1 Tableau des coefficients dune methode de Runge-Kutta.

3.2

M
ethodes de Runge-Kutta usuelles

Les methodes etant enti`erement determinees par le tableau de leurs coefficients, nous indiquons ici celles
qui sont le plus couramment utilisees.
4 M
ethode dEuler implicite.

4 M
ethode dEuler explicite.
0
1

1
1

0
1

4 M
ethode de Heun.

4 M
ethode du point milieu.
0
1
1

1
0
1/2

0
1
1

0
1
1/2

0
1/2
0
0
1/6

0
0
1/2
0
1/3

0
1
1/2

0
0
1/2

4 M
ethode -implicite.

4 M
ethode RK4.
0
1/2
1/2
1
1

1
1

0
0
0
1
1/3

0
0
0
0
1/6

avec, pour la methode -implicite, =

1 2
1/2

1/2

1
1
+ .
2 2 3

Par exemple, si lon sinteresse `


a la methode de Heun, la construction de la solution se fait de la mani`ere
suivante :
tn,1 = tn

: un,1

tn,2 = tn + hn

: Un,2

tn+1

: Un+1

1
2
1
= Un + hn f (tn,1 , Un,1 )
2


1
1
1
= Un + hn
f (tn,1 , Un,1 ) + f (tn,2 , Un,2 )
2
2
2


1
1
f (tn , Un ) + f (tn+1 , Un + hn f (tn , Un ))
= Un + hn
2
2
= Un

Lexpression finale de Un+1 en fonction de Un est ici obtenue de mani`ere explicite car la methode de
Heun est explicite. Le calcul ne necessite que levaluation de la fonction f (`a plusieurs reprises) : en
consequence, non seulement cette methode est facile `a implementer, mais surtout elle est valable pour
toute fonction f suffisamment reguli`ere. Au contraire, la methode basee sur les developpements de Taylor
necessite levaluation des derivees de f ce qui, en pratique, peut se reveler co
uteux si f depend de plusieurs
param`etres et que lon modifie ces param`etres...

12

c S. Martin


Epreuve
de Modelisation
Option calcul scientifique

Agregation Externe de Mathematiques


Universite Paris-Sud 11

Th
eor`
eme 3.1 (Ordre dune m
ethode de RK)
La methode de Runge-Kutta estP
4 dordre 1 si et seulement si j bj = 1,
P
P
P
4 dordre 2 si et seulement si elle satisfait en outre j bj cj = 1/2 dune part et j (bj i aji ) = 1/2
dautre part.
Preuve. Les methodes de Runge-Kutta sont construites de la mani`ere suivante :
X
Uj (t, u, h) = u + h
aji f (t + h ci , Ui (t, u, h))
i
X
(t, u; h) =
bj f (t + h cj , Uj (t, u, h))
j

avec la propriete suivante :


lim Ui (t, u, h) = u.

h0

Or, une methode est dordre 1 si et seulement si (t, u; 0) = f (t, u). Par continuite de f , on obtient :
X
(t, u; 0) =
bj f (t, u),
j

ce qui etablit lequivalence. Par ailleurs, une methode est de plus dordre 2 si /h(t, u; 0) = (1/2) f (1) (t, u).
Apr`es calculs, on obtient :

X  f
f
Uj

(t, u; h) =
bj cj
(t, Uj (t, u, h)) +
(t, Uj (t, u, h))
(t, u, h) ,
h
t
u
h
j
!
X
Uj
X
(t, u, h) =
aji f (t + h ci , Ui (t, u, h)) .
aji f (t + h ci , Ui (t, u, h)) + h
h
h
i
i
Par passage `
a la limite sur h (les fonctions etant reguli`eres et bornees), on obtient
!
X
X
X

f
f
(t, u; 0) =
bj cj
(t, u) +
bj
aji
(t, u) f (t, u)
h
t
u
j
j
i
et on obtient ainsi la CNS proposee.

La methode dEuler (implicite, explicite ou point milieu) est dordre 1, la methode de Heun dordre 2, la
methode -implicite dordre 3, la methode de RK classique dordre 4. On peut continuer `a deriver ainsi
de suite des CNS et calculer les coefficients (bj ), (aij ), (cj ) en fonction de ces conditions. Mentionnons
toutefois quil ne sert `
a rien dutiliser une methode precise (dordre 4) si f ou u nest pas 5 fois differentiable
(on naura pas, en tout cas, lordre prevu).

R
ef
erences
[1] M. Crouzeix et A. Mignot. Analyse numerique des equations differentielles. Masson, 1984.
[2] J.-P. Demailly. Analyse numerique et equations differentielles. edp Sciences, 1996.
[3] M. Schatzman. Analyse numerique : une approche mathematique. Dunod, 2002.

13

c S. Martin

Vous aimerez peut-être aussi