Vous êtes sur la page 1sur 9

Chapitre 2

Dierences nies
1) Discr

etisation en temps
Nous avons vu au chapitre precedent quun syst`eme dynamique compose
dune equation devolution
(1)
dn
dt
= )(n) , t 0
et dune condition initiale
(2) n(0) = n
0
, n
0
IR
t,m
a une solution unique, au moins pour des temps assez petits et lorsque )
a un minimum de regularite. Toutefois, on ne dispose pas en general de
formule permettant de calculer n(t) en fonction de la dynamique )() et
de la condition initiale n
0
. Une exception notable est le cas du point xe
lineaire, o` u
(3) )(n) = n, 0 , n IR,
pour lequel la solution de (1) (2) est donnee par
(4) n(t) = e
t
n
0
, t 0.
On renonce donc `a calculer n(t) pour tous les instants (reels) t 0 et
on se contente dans la suite dapprocher le vecteur n(t) pour des instants
precis xes `a lavance. On se donne donc un intervalle de temps t 0,
un pas de temps elementaire et la famille dinstants discrets obtenus en
considerant les multiples entiers 2 t, 3 t, . . . / t, . . . de ce pas de temps.
On pose
(5) t
k
= / t , / IN.
On remarque que dans la relation (5), la notation t
k
ne designe pas un
exposant, mais un indice, ecrit en position superieure ! Ce choix est justie
par un besoin de plusieurs indices pour les applications `a lacoustique.
On peut donc concevoir de mani`ere abstraite les valeurs n(t
k
), pour
/ IN, lorsque n() est la solution du syst`eme dynamique (1) (2). On sait
que ces valeurs existent et sont uniques (les cas o` u de veritables dicultes pour
montrer lexistence nest pas envisagee ici) mais leur approximation nest en
general pas simple. Notons toutefois que meme dans le cas dune solution
Francois Dubois
exacte telle que (4), le calcul des valeurs numeriques de la fonction ex-
ponentielle (les exp(t), 0, t 0) nest pas trivial et demande un
algorithme approprie pour resommer la serie
(6) exp(t) =

k=0
1
/!
_
t
_
k
.
On cherche donc une solution approchee n
k
, pour / IN, a pri-
ori distincte de n(t
k
) (qui reste `a jamais dans le contexte de labstraction
mathematique), quon puisse calculer ` a la main ou avec une calculatrice
electronique et un algorithme approprie. La question que nous posons ici est
celle de lalgorithme de calcul approche. Si on demarre naturellement
par
(7) n
0
= n
0
pour linstant initial, comment passer jusqu` a linstant t, cest `a dire
comment calculer n
1
, approximation de n(t), sachant quentre les instants
0 et t, le vecteur n(t) suit la dynamique donnee par lequation (1) ?
De mani`ere plus generale, comment passer dune valeur approchee n
k
dej` a
connue (/ est ici un nombre entier xe) `a la valeur suivante n
k+1
? Comment
remplacer le syst`eme dynamique en temps continu (1) (2) par un syst`eme
dynamique discret (n
k
)
kIN
, cest `a dire une relation de recurrence entre
n
k
et n
k+1
?
2) Sch

ema dEuler explicite


Lidee de base pour construire un schema numerique est dintegrer
lequation (1) par rapport au temps, id est de remplacer la relation dieren-
tielle (1) par une relation integrale :
(8)
1
t
_
n(t
k+1
) n(t
k
)
_
=
1
t
_
t
k+1
t
k
)
_
n(t)
_
dt .
On approche ensuite la valeur moyenne au membre de droite de la relation
(8). De mani`ere generale, pour approcher la valeur moyenne 1(o, / ; ) dune
fonction ]o, /[ t (t) IR arbitraire sur lintervalle [o, /] cest `a dire
(9) 1(o, / ; )
1
/ o
_
/
o
(t) dt ,
on peut remplacer la fonction () par divers polynomes construits `a partir
de quelques valeurs connues de en des points caracteristiques de lintervalle
[o, /] : (o), (/), (
a+b
2
), et caetera.
1
Diff

erences finies
La methode dEuler explicite consiste `a remplacer (t) par la constante
(o) dans le calcul approche de la moyenne 1(o, / ; ). On en deduit donc
tr`es simplement :
(10) 1(o, / ; ) (o) ,
relation qui jointe au choix (t) )(n(t)) au sein de la relation (8), conduit
`a
(11)
1
t
_
n(t
k+1
) n(t
k
)
_
)
_
n(t
k
)
_
,
avec un symbole dapproximation caracteristique des valeurs n(t
k
) de
la solution exacte de lequation (1). La construction du schema numerique
consiste `a remplacer ce symbole dapproximation par une egalite ; le prix `a
payer est de remplacer les valeurs exactes n(t
k
) par des valeurs approchees
n
k
:
(12) n
k
n(t
k
) , t
k
= / t , / IN.
En consequence, le schema dEuler explicite secrit :
(13)
1
t
_
n
k+1
n
k
_
= )
_
n
k
_
, / IN.
La relation (13) denit un algorithme de calcul : si n
k
est connu et )(n
k
)
facile `a calculer `a partir de la connaissance de n
k
, on explicite la valeur
n
k+1
`a partir de la relation (13) :
(14) n
k+1
= n
k
+ t )(n
k
) .
Ce calcul de n
k+1
, immediat dans les conditions precedentes, justie le nom
de schema dEuler explicite.
Il est naturel de tester la methode precedente dans un cas o` u la solution
exacte est connue. Le prototype classique est le retour `a lequilibre avec une
constante de temps donnee par
(15) =
1

si la dynamique )() est choisie via la relation (3). Compte tenu de (4), il
vient facilement
(16)
n
_
t
k+1
_
n
_
t
k
_ = e
t,
e
t
.
1
Francois Dubois
Le schema numerique (14), joint `a (3), secrit quant `a lui
(17)
n
k+1
n
k
= 1 t .
On fait alors les deux remarques suivantes, apr`es avoir pose
(18) = t =
t

.
(i) Le schema (17) est une approximation dordre un de la loi lexponen-
tielle (16) satisfaite par la relation exacte :
(19) e

= 1 + O(
2
) ;
remplacer lexponentielle exp (t) par son approximation dordre un, sa
tangente, pour t petit, ce quon exprime par la relation (19), est certaine-
ment correct, au moins tant que =
t

reste petit.
(ii) Le rapport n(t
k+1
),n(t
k
) des valeurs de la solution exacte dune
dynamique (1) (3) reste toujours positif quel que soit t 0, ainsi que le
montre la relation (16). Cette propriete est en defaut pour le schema dEuler,
ainsi que le montre la relation (17) : 1 t < 0 d`es que t .
Pour t , cest `a dire lorsque le pas de temps t est superieur `a la
constante de temps du processus (physique) de retour `a lequilibre, les
valeurs approchees n
k
ne respectent plus la monotonie de la solution exacte.
Ceci peut etre catastrophique en pratique. Le respect de la monotonie impose
en consequence de limiter le pas de temps t `a des valeurs coherentes
avec la dynamique du processus physique, i.e. de choisir t de sorte que
(20) 0 < t <
1

.
Nous retenons que pour etre utilise de mani`ere ecace pour le probl`eme
mod`ele (1) (3) du retour `a lequilibre, le schema dEuler explicite doit satisfaire
une condition de stabilite (20) qui indique que le pas de temps t du
schema numerique ne doit pas exceder le temps caracteristique du processus
etudie.
16
Diff

erences finies
3) Sch

ema dEuler implicite


Nous repartons toujours de la relation (8) qui est exacte, entre les
instants t
k
et t
k+1
. Le probl`eme du choix du schema numerique est ramene
`a estimer au mieux la valeur moyenne 1(o, / ; ) denie `a la relation (9). Le
choix (10) conduit au schema dEuler explicite, mais le choix
(21) 1(o, / ; ) (/) ,
est tout aussi naturel que le choix propose `a la relation (10) et suppose a priori
la fonction () approchee par une valeur constante sur lintervalle [o, /].
On reporte ce choix au membre de droite de la relation (8), qui correspond `a
o = t
k
, / = t
k+1
, (t) = )(n(t)). Il vient alors
(22)
1
t
_
n(t
k+1
) n(t
k
)
_
)
_
n(t
k+1
)
_
.
Le schema dEuler implicite sobtient en rempla cant n(t
k
) par n
k
, n(t
k+1
)
par n
k+1
et les approximations par des egalites dans les relations (8) et (22).
On obtient ainsi
(23)
1
t
_
n
k+1
n
k
_
= )
_
n
k+1
_
.
A partir de la valeur connue n
k
, le schema dEuler implicite se propose
de calculer n
k+1
via la relation (23), cest `a dire en resolvant lequation
(24) n
k+1
t )
_
n
k+1
_
= n
k
.
On peut etre quelque peu de cu du resultat ; le schema numerique (24) ne
fournit pas explicitement la valeur n
k+1
en fonction de n
k
, il propose sim-
plement une equation `a resoudre pour evaluer n
k+1
. Lalgorithme doit etre
complete par le choix dun algorithme pour la resolution de lequation (24).
On peut par exemple appliquer une methode de la tangente, ou de Newton.
La valeur n
k+1
et obtenue comme limite de la suite (n
k+1
n
)
nIN
, avec par
exemple linitialisation
(25) n
k+1
0
= n
k
et des iterations denies en rempla cant )(n
k+1
) par )(n
k+1
n+1
), lui-meme ap-
proche autour de n
k+1
n
par linearisation :
(26) )
_
n
k+1
n+1
_
)
_
n
k+1
n
_
+ )

_
n
k+1
n
_

_
n
k+1
n+1
n
k+1
n
_
.
On injecte cette representation de )(n
k+1
) au membre de gauche de la rela-
tion (24) ; il vient
(27) n
k+1
n+1
t )

_
n
k+1
n
_
n
k+1
n+1
= n
k
+ t
_
)
_
n
k+1
n
_
)

_
n
k+1
n
_
n
k+1
n

.
1
Francois Dubois
Gr ace `a la resolution de lequation (27) qui est lineaire, on passe de n
k+1
n
`a n
k+1
n+1
et pour n tendant vers linni, on converge (si le pas de temps t
nest pas trop grand) vers une (la ?) solution de lequation (24).
Lorsquon teste le schema dEuler implicite (24) dans le cas de lequation
mod`ele de retour `a lequilibre (i.e. )(n) = n, c.f. (3)), il vient facilement
(28)
n
k+1
n
k
=
1
1 + t
.
On remarque que pour 0 et t 0, ce rapport reste toujours positif ; le
schema dEuler implicite conduit toujours `a des valeurs (n
k
)
kIN
compatibles
avec les contraintes de monotonie. On peut donc utiliser ce schema quel que
soit t 0 et il ny a pas `a se donner de condition de stabilite sur le pas de
temps.
Si on developpe le rapport n
k+1
,n
k
par rapport `a linniment petit
= t, la relation (28) conduit `a
(29)
n
k+1
n
k
= 1 +
2
+ O(
3
)
alors que le developpement pour la solution exacte (16) secrit
(30)
n(t
k+1
)
n(t
k
)
= 1 +

2
2
+ O(
3
) .
On a donc `a partir des relations (29) et (30) la propriete :
(31)
n
k+1
n
k
=
n(t
k+1
)
n(t
k
)
+

2
2
+ O(
3
)
et les developpements (29) et (30) concident jusquau premier ordre inclus.
On dit que le schema dEuler implicite est dordre un de precision.
4) Sch

ema de Crank-Nicolson
Au lieu de calculer la valeur moyenne 1(o, / ; ) par une formule de
quadrature `a un point comme pour les deux precedents schemas (voir les
relations (10) et (21)), nous utilisons une methode des trap`ezes, qui consiste
`a supposer la fonction () ane entre les points o et /. Nous avons alors :
(32) 1(o, / ; )
1
2
_
(o) + (/)
_
.
On re-injecte cette expression au membre de droite de la relation (8) et on en
deduit :
18
Diff

erences finies
(33)
1
t
_
n(t
k+1
) n(t
k
)
_

1
2
_
)
_
n(t
k
)
_
+ )
_
n(t
k+1
)
_
_
.
Le schema de Crank-Nicolson consiste `a denir la valeur approchee n
k
en
imposant une egalite au sein de la relation (33). Il secrit donc
(34)
1
t
_
n
k+1
n
k
_
=
1
2
_
)
_
n
k
_
+ )
_
n
k+1
_
_
.
Si on connat la valeur n
k
, la nouvelle valeur n
k+1
sobtient par resolution
dune equation, `a savoir
(35) n
k+1

t
2
)
_
n
k+1
_
= n
k
+
t
2
)
_
n
k
_
et en consequence le schema de Crank-Nisolson est implicite. Les methodes
dapproximation par lalgorithme de Newton proposees pour le schema dEuler
implicite peuvent etre adaptees sans diculte pour lequation (35).
Si on applique le schema (34) au cas o` u )(n) = n, on trouve
(36)
n
k+1
n
k
=
1 t , 2
1 + t , 2
et le respect de la monotonie impose de limiter la valeur du pas de temps :
(37) 0 < t <
2

.
Quand on developpe la fraction rationnelle au membre de droite de la relation
(36) en fonction de = t, suppose inniment petit, on trouve
1 , 2
1 + , 2
=
_
1

2
__
1

2
+

2
4
+ . . .
_
= 1 +

2
2

3
4
+ O(
4
) .
Donc
(38)
n
k+1
n
k

n(t
k+1
)
n(t
k
)
=

3
12
+ O(
4
)
et le schema de Crank-Nicolson est dordre deux de precision.
1
Francois Dubois
5) Sch

ema de Heun
Le schema de Crank et Nicolson est plus precis que les deux schemas
proposes initialement par Euler. Mais il reste implicite, ce qui peut conduire `a
des co uts de calcul importants pour resoudre lequation (35). On ladapte donc
pour le rendre explicite en suivant un procede tr`es pragmatique. On calcule
dabord une valeur predite n
k+1
`a laide du schema dEuler explicite :
(39) n
k+1
= n
k
+ t )(n
k
) .
On utilise ensuite cette valeur au membre de droite de la relation (34), en lieu
et place de n
k+1
. On obtient de cette fa con :
(40)
1
t
_
n
k+1
n
k
_
=
1
2
_
)
_
n
k
_
+ )
_
n
k+1
_
_
en complement de la relation (39). On peut aussi ecrire les relations (39) et
(40) sur une seule ligne :
(41)
1
t
_
n
k+1
n
k
_
=
1
2
_
)
_
n
k
_
+ )
_
n
k
+ t )(n
k
)
_
_
et cette relation denit le schema de Heun, qui appartient aussi `a la famille
des schemas de Runge et Kutta.
Si on teste le schema (41) pour le mod`ele du retour `a lequilibre, il vient :
(42)
n
k+1
n
k
= 1 t +
1
2
(t)
2
.
Le membre de droite de la relation (42) est toujours superieur `a zero. Par
contre, pour t 2, le rapport n
k+1
,n
k
est superieur `a lunite, ce qui
contredit le comportement qualitatif de la solution exacte (16). On doit donc
exclure de telles valeurs, do` u la condition de stabilite :
(43) 0 < t <
2

.
Le membre de droite de la relation (42) est exactement le developpement de
Taylor `a lordre deux en t de exp(). On tire donc des relations
(16) et (42) :
(44)
n
k+1
n
k

n(t
k+1
)
n(t
k
)
=

3
6
+ O(
4
)
qui indique que le schema de Heun est dordre deux en temps.
:o
Diff

erences finies
6) Tableau r

ecapitulatif
schema denition nature ordre stabilite
Euler explicite (13) explicite 1 0 < t 1
Euler implicite (23) implicite 1 t 0
Crank-Nicolson (34) implicite 2 0 < t 2
Heun (41) explicite 2 0 < t 2
FD, mars 2003, fevrier 2005.
:1

Vous aimerez peut-être aussi