1. Chapitre 6
´
Les equations diff´ rentielles
e
Ce chapitre est consacr´ a l’´ tude des equations diff´ rentielles, lesquelles jouent un
e` e ´ e
rˆ le fondamental en mod´ lisation pour la biologie, la chimie, la physique et l’ing´ nierie.
o e e
Ces mod` les sont facilement param´ trisables (` partir de donn´ es exp´ rimentales), ce
e e a e e
qui justifie leur popularit´ et leur large utilisation. En outre, ils fournissent en g´ n´ ral
e e e
des informations pr´ cieuses sur les quantit´ s observables (quantit´ s qui peuvent etre
e e e ˆ
mesur´ es) a condition d’obtenir une bonne estimation de la solution. Nous pr´ sentons
e ` e
ici les sch´ mas classiques permettant de fournir des solutions num´ riques suffisam-
e e
ment pr´ cises pour des probl` mes issus de la mod´ lisation en physique, chimie ou
e e e
biologie. Nous proposons egalement une etude math´ matique justifiant la pr´ cision
´ ´ e e
des algorithmes.
6.1 Introduction et rappels th´ oriques
e
´
6.1.1 Le pont de Tacoma aux Etats-Unis
´
C’est en juillet 1940 que le pont suspendu de Tacoma dans l’Etat de Washington
´
(Etats-Unis) est achev´ et ouvert au trafic automobile. D` s les premiers jours, le pont
e e
commence a osciller de mani` re verticale mais ceci n’est pas vraiment surprenant pour
` e
un pont suspendu, les jours passent alors sans qu’aucun probl` me ne soit d´ tect´ . Ce-
e e e
pendant, un matin de novembre 1940 la situation se complique : le pont commence a `
onduler durant plusieurs heures, les cˆ bles maintenant le tablier du pont se soul` vent
a e
p´ riodiquement de haut en bas. Un peu plus tard, une pi` ce du pont se casse brutale-
e e
ment, le pont continue a osciller mais dans le mˆ me temps la chauss´ e se d´ forme de
` e e e
mani` re inqui´ tante. Par moment, un bord de la chauss´ e domine de plusieurs m` tres
e e e e
l’autre bord et le pont est evacu´ d’urgence : il finit par s’´ crouler.
´ e e
Les ing´ nieurs se sont alors pench´ s sur les raisons qui ont conduit le pont a
e e `
s’´ crouler. Pour cela, il s’agit de mod´ liser les mouvements du pont en recensant les
e e
ph´ nom` nes physiques qui agissent sur le pont.
e e
Par exemple, un mod` le relativement simple consiste a etudier l’´ volution au cours
e `´ e
du temps d’une coupe transversale du pont de Tacoma, les variables sont alors l’angle
de rotation Z(t) du segment transverse par rapport a l’axe horizontal et le d´ placement
` e
du centre de gravit´ y(t) par rapport a la position d’´ quilibre (voir Figure 6.1). Nous
e ` e
supposons que les cˆ bles r´ sistent a la force appliqu´ e lorsqu’il subit une elongation
a e ` e ´
223
2. 224 ´ ´
CHAPITRE 6. LES EQUATIONS DIFFERENTIELLES
5
Z(t)
y(t)
4
3
2
y(t) 1
0
-1
-2
Z(t) 0 50 100 150 200
t
(a) (b)
´
F IG . 6.1 – Etude du mouvement d’une coupe transverse du pont a l’aide d’une equation
` ´
diff´ rentielle ordinaire. (a) Nous consid´ rons les variations au cours du temps de la
e e
hauteur du pont par rapport a la position d’´ quilibre y(t) et de l’angle de rotation Z(t).
` e
(b) R´ sultats de simulations num´ riques de la solution (y(t), Z(t)).
e e
mais pas lorsqu’il est compress´ . En outre, la force exerc´ e par les cˆ bles agit comme
e e a
des ressorts d’une raideur K, proportionnelle a l’´ longation du cˆ ble. Sur la Figure 6.1,
` e a
nous observons que l’extension du cˆ t´ droit est donn´ e par (y − l sin(Z)) et donc la
oe e
force exerc´ e par le cˆ ble de droite est
e a
−K (y − l sin(Z)) lorsque y − l sin(Z) ≥ 0,
+
−K (y − l sin(Z)) =
0
sinon.
De la mˆ me mani` re, l’extension du cˆ ble de gauche est donn´ e par (y + l sin(Z))+ .
e e a e
Finalement, en prenant en compte la force du vent λ sin(ωt) d’une amplitude faible
λ > 0 et de fr´ quence ω/2π, une force d’amortissement d’amplitude δ > 0 et la
e
gravit´ g, la loi de la m´ canique de Newton permet d’´ crire un syst` me diff´ rentiel
e e e e e
pour y et Z :
Z (t) = 3K cos(Z(t)) (y(t) − l sin(Z(t)))+ − (y + l sin(Z(t)))+
ml
+λ sin(ω t) − δ Z (t),
K
(y(t) − l sin(Z(t)))+ − (y + l sin(Z(t)))+ + g − δy (t),
y (t) = −
m
o` l est la longueur des cˆ bles au repos et m la masse du pont.
u a
3. ´
6.1. INTRODUCTION ET RAPPELS THEORIQUES 225
Cette equation n’est pas sous une forme tr` s convenable pour la discr´ tisation et
´ e e
pour l’´ tude th´ orique, nous pr´ f´ rons l’´ crire sous la forme :
e e ee e
u (t) = f (t, u(t)),
o` u : R → Rd . Pour cela, il suffit de poser u = (u1 , u2 , u3, u4 ) avec
u
u1 = Z, u2 = Z , u3 = y, u4 = y
et f : R × R4 → R4 donn´ e par
e
u2
3K
cos(u1 ) (u3 − l sin(u1 ))+ − (u3 + l sin(u1 ))+ + λ sin(ωt) − δu2
ml
f (t, u) =
.
u4
K
− (u3 − l sin(u1 ))+ − (u3 + l sin(u1))+ + g − δu4
m
Cette equation diff´ rentielle ne peut pas etre r´ solue exactement, c’est pourquoi il
´ e ˆ e
est indispensable de recourir a la simulation num´ rique sur ordinateur pour tenter d’ap-
` e
procher la solution et recomposer ainsi les derni` res minutes correspondant aux mou-
e
vements du pont suspendu avant son effondrement. Un exemple de solution approch´ e e
est pr´ sent´ sur la Figure 6.1 : le d´ placement vertical y(t) est ici amorti tandis que
e e e
les variations de l’angle Z(t) ne s’amortissent pas, ce qui conduit a l’effondrement du
`
pont.
6.1.2 Rappels th´ oriques
e
Avant de d´ crire des algorithmes num´ riques permettant d’approcher la solution
e e
d’une equation diff´ rentielle ordinaire, rappelons quelques r´ sultats th´ oriques sur les
´ e e e
syst` mes d’´ quations diff´ rentielles ordinaires [11].
e e e
D´ finition 6.1.1 Nous appelons equation diff´ rentielle d’ordre n une equation de la
e ´ e ´
forme
u(n) (t) = f (t, u, u , . . . , u(n−1) ), (6.1)
o` f est une application d´ finie sur I × U × U1 . . . Un−1 → E, I est un intervalle de R,
u e
U, U1 ,. . ., Un−1 sont des ouverts d’un espace de Banach E. Une solution de l’´ quation
e
n
diff´ rentielle (6.1) est une application u de classe C (I, E) v´ rifiant (6.1).
e e
4. 226 ´ ´
CHAPITRE 6. LES EQUATIONS DIFFERENTIELLES
Remarque 6.1.1 Lorsque E = R, l’´ quation diff´ rentielle est dite scalaire tandis que
e e
lorsque f est ind´ pendante de t, l’´ quation diff´ rentielle est dite autonome.
e e e
Concernant la th´ orie des equations diff´ rentielles, nous nous int´ ressons au probl` me
e ´ e e e
de l’existence et de l’unicit´ locale de solutions pour le probl` me de Cauchy1 (c’est-
e e
a-dire l’´ quation diff´ rentielle accompagn´ e d’une ¡¡ condition initiale ¿¿). Notons
` e e e
d’abord que dans le cas g´ n´ ral d’une equation d’ordre n, une condition initiale est la
e e ´
donn´ e de la fonction inconnue u et de toutes ses d´ riv´ es jusqu’` l’ordre n−1 au point
e e e a
t = 0. En d´ finitive, nous pouvons toujours nous ramener au cas n = 1, quitte a agran-
e `
dir l’espace E comme dans l’exemple du pont de Tacoma et en consid´ rant commee
nouvelle fonction inconnue le vecteur (u, u , . . . , u(n−1) ). C’est pourquoi d´ sormais,
e
nous nous placons dans le cas n = 1, et consid´ rons une fonction f : I × U → E,
¸ e
o` I est un intervalle ouvert de R et U un ouvert d’un espace de Banach E muni de la
u
norme . . Consid´ rons alors un syst` me diff´ rentiel de la forme
e e e
u (t) = f (t, u(t)),
(6.2)
u(t = 0) = u ,
0
o` u0 ∈ E et o` la fonction f ∈ C 0 (I × U, E) est seulement continue. Ceci permet de
u u
d´ montrer l’existence d’une solution lorsque E est de dimension finie mais pas l’uni-
e
cit´ de la solution. Pour assurer l’unicit´ , il suffit que f soit localement lipschitzienne
e e
par rapport a la variable x ∈ U. A
` ` titre d’exemple, nous rappelons le r´ sultat le plus
e
classique pour l’existence et l’unicit´ d’une solution pour un syst` me diff´ rentiel [11].
e e e
Th´ or` me 6.1.1 (Th´ or` me de Cauchy-Lipschitz) 2 Soit f ∈ C 0 (I × U, E) et sup-
e e e e
posons qu’il existe un voisinage de (0, u0 ) dans I × U et L > 0 tels que pour tout
t ∈ I, x et y dans ce voisinage
f (t, x) − f (t, y) ≤ L x − y .
Alors
– il existe T > 0 et u ∈ C 1 ([0, T ], U) solution du probl` me de Cauchy (6.2) ;
e
– si v est une autre solution, elle co¨ncide avec u sur l’intervalle [0, T ] ;
ı
– si de plus f est de classe C r (I × U, E) avec r ≥ 1, alors u est de classe
C r+1 (I, U).
La d´ monstration de ce th´ or` me repose sur le th´ or` me de point fixe contrac-
e e e e e
tant que nous avons d´ montr´ au Chapitre 3 [Th´ or` me 3.2.1]. Nous proposons une
e e e e
d´ monstration de ce th´ or` me dans la section 6.2.2 en prouvant la convergence du
e e e
sch´ ma d’Euler explicite par une m´ thode de compacit´ .
e e e
Pour l’instant int´ ressons-nous a la notion de trajectoire.
e `
1
En r´ f´ rence a Augustin Louis Cauchy, math´ maticien francais (1789-1957) qui fut l’un des plus
ee ` e ¸
prolifiques. Ses travaux port` rent sur l’analyse (fonctions holomorphes, crit` res de convergence sur les
e e
s´ ries enti` res) mais aussi en optique sur la propagation d’ondes electromagn´ tiques.
e e ´ e
2
En r´ f´ rence a Rudolph Otto S. Lipschitz (1832-1903), math´ maticien allemand, qui travailla sur
ee ` e
la th´ orie des nombres, les equations diff´ rentielles compl´ tant les travaux de Cauchy.
e ´ e e
5. ´
6.1. INTRODUCTION ET RAPPELS THEORIQUES 227
D´ finition 6.1.2 Nous appelons trajectoire ou orbite partant de u0 l’ensemble d´ fini
e e
par
Tu0 := {u(t) ∈ E, u solution de (6.2), t ∈ [0, T ] avec u(0) = u0 } .
En appliquant le Th´ or` me 6.1.1, nous avons imm´ diatement le r´ sultat suivant :
e e e e
Corollaire 6.1.1 Soient u0 et v0 ∈ U deux donn´ es initiales distinctes. Alors les tra-
e
jectoires Tu0 et Tv0 sont disjointes.
Placons-nous maintenant dans le cadre d’application du Th´ or` me 6.1.1, le r´ sultat
¸ e e e
suivant donne une condition suffisante pour que T = +∞ [11].
Th´ or` me 6.1.2 Soient f ∈ C 0 (I × U, Rd ), supposons de plus que f est localement
e e
lipschitzienne en la deuxi` me variable et u la solution de (6.2) d´ finie pour 0 ≤ t < T .
e e
Si la solution u est uniform´ ment born´ e sur [0, T ] alors T = +∞.
e e
Apr` s ces quelques r´ sultats d’existence et d’unicit´ , etudions le comportement
e e e ´
qualitatif de la solution u. Pour simplifier, nous consid´ rons un probl` me autonome,
e e
c’est-` -dire que la fonction f ne d´ pend que de la variable u mais pas de t ∈ R :
a e
u (t) = f (u(t)),
(6.3)
u(t = 0) = u ,
0
o` la fonction f : U → E est continue.
u
D´ finition 6.1.3 Le point u ∈ U est un point d’´ quilibre ou stationnaire du syst` me
e ¯ e e
diff´ rentiel (6.3) d` s qu’il v´ rifie :
e e e
f (¯) = 0.
u
Se pose alors la question de la stabilit´ de ces points d’´ quilibre.
e e
D´ finition 6.1.4 Soit u ∈ U un point d’´ quilibre ou stationnaire de (6.3). Nous disons
e ¯ e
que u est stable d` s qu’il v´ rifie :
¯ e e
∀ε > 0, ∃ η > 0 tel que u0 ∈ B(¯, η) ⇒
u u(t) − u ≤ ε,
¯
c’est-` -dire que si nous partons d’une donn´ e initiale proche de l’´ tat stationnaire u,
a e e ¯
+
la solution u(t) de (6.3) reste proche de l’´ tat stationnaire pour tout t ∈ R .
e
En outre, si la solution u v´ rifie
e
lim u(t) − u = 0,
¯
t→∞
alors nous disons que le point d’´ quilibre est asymptotiquement stable, c’est-` -dire
e a
que la solution converge vers l’´ tat stationnaire.
e
6. 228 ´ ´
CHAPITRE 6. LES EQUATIONS DIFFERENTIELLES
Recherchons ensuite des conditions suffisantes de stabilit´ d’un point d’´ quilibre.
e e
Pour cela, voyons d’abord ce qu’il se passe dans le cas d’une fonction lin´ aire. Soit
e
A ∈ Mn,n (R), le syst` me diff´ rentiel (6.3) s’´ crit alors
e e e
u (t) = A u(t),
(6.4)
u(0) = u
0
et la solution est donn´ e par u(t) = eA t u0 avec
e
tn n
eA t = A .
n∈N
n!
La solution de (6.4) est bien d´ finie pour tout temps et ce syst` me admet un point
e e
d’´ quilibre u = 0 dont la stabilit´ est li´ e au spectre de la matrice A [11].
e ¯ e e
Th´ or` me 6.1.3 (Stabilit´ des syst` mes diff´ rentiels lin´ aires) Consid´ rons u la so-
e e e e e e e
lution du syst` me diff´ rentiel (6.4). Alors le point 0 est asymptotiquement stable si et
e e
seulement si pour tout λ ∈ Sp(A),
Re(λ) < 0.
En outre, le point 0 est stable si et seulement si pour tout λ ∈ Sp(A)
– soit Re(λ) < 0,
– ou bien Re(λ) = 0 et λ n’est pas d´ fective, c’est-` -dire
e a
dim(Ker(A − λ In )) = p,
o` p repr´ sente la multiplicit´ de λ.
u e e
Dans le cas non lin´ aire la situation est bien plus complexe. Commencons, comme
e ¸
souvent, par transformer le probl` me pour se ramener a une situation connue. En
e `
lin´ arisant l’´ quation diff´ rentielle (6.3), introduisons δ = u − u, qui v´ rifie
e e e ¯ e
δ (t) = f (u(t)) − f (¯) =
u u f (¯) δ
u + o(δ),
o` o(δ) signifie qu’il existe une fonction ε(δ) telle que ε(δ) / δ → 0 lorsque δ → 0.
u
Ainsi, lorsque δ est initialement petit, les termes en o(δ) sont n´ gligeables et la
e
stabilit´ du point stationnaire u ∈ U ⊂ E se ram` ne a l’´ tude de stabilit´ du probl` me
e ¯ e ` e e e
lin´ aire suivant au point 0
e
δ = u f (¯) δ.u
Nous pourrions esp´ rer un r´ sultat analogue au cas lin´ aire mais ce n’est h´ las pas
e e e e
toujours le cas [11].
Th´ or` me 6.1.4 (Th´ or` me de stabilit´ non lin´ aire) Soient E un espace vectoriel
e e e e e e
norm´ de dimension finie et consid´ rons le point stationnaire u ∈ U ⊂ E du syst` me
e e ¯ e
diff´ rentiel (6.3), o` f ∈ C 1 (U, E). Si pour tout λ ∈ Sp( u f (¯)) nous avons Re(λ) <
e u u
0, alors le point u est asymptotiquement stable.
¯
En revanche s’il existe λ ∈ Sp( u f (¯)) telle que Re(λ) > 0 alors le point u est
u ¯
instable.
7. ´
6.1. INTRODUCTION ET RAPPELS THEORIQUES 229
Observons que lorsqu’une valeur propre est de partie r´ elle nulle, nous ne pouvons
e
pas conclure sur la stabilit´ du point d’´ quilibre en utilisant la th´ orie lin´ aire. Il faut
e e e e
alors faire appel a la th´ orie de Lyapunov3.
` e
D´ finition 6.1.5 Soit u ∈ U un point d’´ quilibre de (6.3). Nous appelons fonction de
e ¯ e
Lyapunov une fonction L : U → R continue et diff´ rentiable sur U v´ rifiant
e e
L(¯) < L(u), ∀ u ∈ U {¯}
u u
L(u) f (u) ≤ 0, ∀ u ∈ U.
Notons que les hypoth` ses sur L permettent d’assurer que
e
d
L(u) = L(u) u = L(u) f (u) ≤ 0.
dt
L’existence d’une telle fonction L permet alors de conclure sur le comportement de la
solution proche de l’´ quilibre [11].
e
Th´ or` me 6.1.5 (Th´ or` me de Lyapunov) Soient E un espace de Banach de dimension finie
e e e e
et u ∈ U un point d’´ quilibre de (6.3). S’il existe une fonction de Lyapunov L associ´ e
¯ e e
a l’´ quilibre u ∈ U, alors l’´ quilibre est stable.
` e ¯ e
D´ monstration :
e
Consid´ rons ε > 0 tel que B(¯, ε) ⊂ U et soit
e u
m = min L(u)
u−¯ =ε
u
le minimum de la fonction de Lyapunov L sur le bord de B(¯, ε). Puisque u ∈ U est
u ¯
un minimum strict de la fonction L qui est continue, l’ensemble
Uε := u ∈ B(¯, ε),
u L(u) < m
est un voisinage de u inclus dans U. Ainsi, en choisissant u0 ∈ Uε , comme t → L(u(t))
¯
est d´ croissante, il vient alors
e
L(u(t)) ≤ L(u0 ) < m,
pour t ≥ 0 et donc u(t) ∈ ∂B(¯, ε). Par suite u(t) reste dans le voisinage compact
/ u
B(¯, ε) de u pour tout t ≥ 0 et mˆ me dans le voisinage Uε , donc u est bien stable. 2
u ¯ e ¯
Dans une premi` re partie, nous pr´ sentons plusieurs sch´ mas explicites classiques
e e e
(sch´ mas d’Euler, de Runge et de Runge-Kutta), puis proposons une analyse de conver-
e
gence de la solution num´ rique vers la solution exacte du syst` me diff´ rentiel en in-
e e e
troduisant les notions de consistance et de stabilit´ . Nous etudions ensuite un sch´ ma
e ´ e
d’Euler implicite pour les equations diff´ rentielles raides qui jouent un rˆ le important
´ e o
dans les applications a la chimie. Enfin la derni` re partie est consacr´ e aux syst` mes
` e e e
hamiltoniens.
3
En r´ f´ rence a Alexander Lyapunov math´ maticien russe (1857-1918) qui travailla sur les syst` mes
ee ` e e
dynamiques.
8. 230 ´ ´
CHAPITRE 6. LES EQUATIONS DIFFERENTIELLES
`
6.2 Sch´ mas a un pas explicites
e
Int´ ressons-nous maintenant a la discr´ tisation des equations diff´ rentielles ordi-
e ` e ´ e
naires et supposons que E = Rd avec d ≥ 1. Pour approcher la solution de (6.2)
sur l’intervalle [0, T ], d´ composons cet intervalle en N sous-intervalles [tn , tn+1 ] avec
e
tn = n ∆t, n ∈ {0, . . . , N} et ∆t = T /N. Par la suite, la solution num´ rique e
est not´ e v n et d´ signe une approximation de la solution u aux points tn , pour n =
e e
0, . . . , N.
L’objectif de l’analyse num´ rique des equations diff´ rentielles ordinaires est de
e ´ e
construire des sch´ mas num´ riques en discr´ tisant l’´ quation (6.2). Ensuite, il s’agit
e e e e
de d´ montrer que la solution approch´ e converge, en un sens a pr´ ciser, vers la solution
e e ` e
exacte. Pour cela, nous cherchons a evaluer l’erreur de discr´ tisation en = u(tn ) − v n ,
`´ e
et plus pr´ cis´ ment, a obtenir des estimations d’erreur de la forme
e e `
en = u(tn ) − v n ≤ C ∆tα ,
o` C ne d´ pend que de la solution exacte, du temps final T mais surtout pas du pas de
u e
temps ∆t tandis que α > 0 donne l’ordre de convergence de la m´ thode num´ rique.
e e
6.2.1 Les sch´ mas de Runge-Kutta
e
D´ crivons d’abord la mani` re de construire un sch´ ma num´ rique pour l’´ quation
e e e e e
(6.2). Puisque la fonction f est continue, elle est int´ grable sur [0, T ] et donc en
e
int´ grant (6.2) sur l’intervalle [tn , tn + ∆t], nous avons
e
tn+1
u(tn+1 ) − u(tn ) = f (s, u(s)) ds.
tn
Le sch´ ma num´ rique s’obtient alors en appliquant une formule de quadrature pour
e e
approcher l’int´ grale du cˆ t´ droit de l’´ galit´ .
e oe e e
Le sch´ ma d’Euler explicite. Par exemple, en appliquant la m´ thode des rec-
e e
n
tangles a gauche vue au Chapitre 5 [section 5.2.3] au point t , nous obtenons
`
tn+1
f (s, u(s)) ds ∆t f (tn , u(tn )).
tn
En remplacant u(tn ) par son approximation v n vient alors le sch´ ma d’Euler explicite
¸ e
0
v = u(0)
(6.5)
n+1
= v n + ∆t f (tn , v n ), pour n = 0, . . . , N − 1,
v
qui peut aussi s’´ crire sous la forme
e
v n+1 = v n + ∆t φ(tn , v n , ∆t), n = 0, . . . , N − 1,
9. ´ `
6.2. SCHEMAS A UN PAS EXPLICITES 231
avec
φ(tn , v n , ∆t) = f (tn , v n ) .
Nous etudierons pr´ cis´ ment la convergence de ce sch´ ma et d´ montrerons par la
´ e e e e
mˆ me occasion le Th´ or` me de Cauchy-Lipschitz (Th´ or` me 6.1.1) pour l’existence
e e e e e
de solutions.
Le sch´ ma de Runge. Une autre approximation consiste a utiliser la formule du
e `
point milieu etudi´ e au Chapitre 5 [section 5.4.3]
´ e
tn+1
∆t ∆t
f (s, u(s)) ds ∆t f tn + , u tn +
tn 2 2
mais au pr´ alable il est imp´ ratif de construire une approximation de u(tn + ∆t ). Pour
e e 2
cela, appliquons simplement le sch´ ma d’Euler explicite pr´ sent´ pr´ c´ demment sur
e e e e e
un demi-pas de temps
∆t ∆t
u tn + u(tn ) + f (tn , u(tn )) .
2 2
En remplacant u(tn ) par sa valeur approch´ e v n , nous obtenons le sch´ ma de Runge
¸ e e
explicite qui comporte deux etapes
´
k1 = f (tn , v n ),
n ∆t n ∆t
k2 = f t + 2 , v +
2
k1 ,
n+1
= v n + ∆t k2 ,
v
qui peut aussi s’´ crire sous la forme
e
v n+1 = v n + ∆t φ(tn , v n , ∆t), n = 0, . . . , N − 1,
avec
∆t n ∆t
φ(tn , v n , ∆t) = f tn + ,v + f (tn , v n ) .
2 2
Le sch´ ma de Runge-Kutta. Plus g´ n´ ralement, d´ finissons les sch´ mas de Runge-
e e e e e
Kutta explicites de la mani` re suivante :
e
10. 232 ´ ´
CHAPITRE 6. LES EQUATIONS DIFFERENTIELLES
D´ finition 6.2.1 Une m´ thode de Runge-Kutta a s etages est donn´ e par
e e ` ´ e
k = f (tn , v n ),
1
k = f (tn + c ∆t, v n + ∆t a k ) ,
2
2 2,1 1
.
. (6.6)
.
ks = f (tn + cs ∆t, v n + ∆t (as,1 k1 + . . . + as,s−1 ks−1 )) ,
n+1
v = v n + ∆t (b1 k1 + b2 k2 + . . . + bs ks ) ,
o` ci , ai,j et bj sont des coefficients. Nous les repr´ sentons habituellement par le
u e
sch´ ma
e
c1 0
..
c2 a2,1 .
.
. .
. .. .. (6.7)
. . . .
cs as,1 . . . as,s−1 0
b1 ... bs−1 bs
Exemple 6.2.1 Les m´ thodes d’Euler et de Runge peuvent donc etre repr´ sent´ es par
e ˆ e e
les tableaux suivants :
0
0
1/2 1/2
1
0 1
Donnons en particulier le sch´ ma de Runge-Kutta d’ordre quatre. C’est une ex-
e
cellente m´ thode pour la plupart des probl` mes de Cauchy (6.2), c’est certainement la
e e
premi` re a essayer puisque nous verrons qu’elle est tr` s pr´ cise et assez stable ! Elle
e ` e e
est a quatre etages et est d´ finie par la fonction
` ´ e
1
φ(t, v n , ∆t) = (k1 + 2 k2 + 2 k3 + k4 ) ,
6
11. ´ `
6.2. SCHEMAS A UN PAS EXPLICITES 233
avec
k = f (tn , v n ),
1
k = f tn + ∆t , v n + ∆t
2
2 2
k1 ,
k3 = f tn + ∆t , v n + ∆t k2 ,
2 2
k4 = f (tn + ∆t, v n + ∆t k3 ) .
Cette m´ thode combine les formules de quadrature de Simpson et du trap` ze etudi´ es
e e ´ e
au Chapitre 5 [section 5.2.3] tandis que les evaluations aux temps interm´ diaires sont
´ e
fournies par la m´ thode d’Euler explicite. Nous v´ rifions que son ecriture matricielle
e e ´
est la suivante
0
1/2 1/2
1/2 0 1/2
1 0 0 1
1/6 1/3 1/3 1/6
Avant de se lancer dans l’analyse des sch´ mas a un pas, comparons la pr´ cision des
e ` e
diff´ rents sch´ mas pour un probl` me dont la solution exacte est connue
e e e
Exemple 6.2.2 Proposons de comparer l’ordre de convergence des diff´ rents sch´ mas
e e
num´ riques. Pour cela, consid´ rons l’´ quation diff´ rentielle scalaire
e e e e
u (t) = −u(t), t ∈ [0, 1],
u(t = 0) = 1,
dont la solution exacte est connue :
u(t) = u(0) e−t .
12. 234 ´ ´
CHAPITRE 6. LES EQUATIONS DIFFERENTIELLES
Nous effectuons alors
plusieurs simulations -5
num´ riques en faisant
e
tendre le param` tre ∆t
e -10
vers z´ ro pour les sch´ mas
e e
log(e(dt))
d’Euler explicite, de -15
Runge et de Runge-Kutta
-20
a quatre etages. Sur la
` ´
Figure 6.2, l’axe des Euler explicite
-25 Runge d’ordre 2
abscisses correspond Runge-Kutta d’ordre 4
au log(∆t) et l’axe des -5 -4.5 -4 -3.5 -3 -2.5
ordonn´ es
e repr´ sente
e log(dt)
log(maxn≥0 |en (∆t)|).
F IG . 6.2 – Comparaison des sch´ mas d’Eu-
e
Ainsi, la pente correspond
ler, de Runge et Runge-Kutta 4.
a l’ordre de la m´ thode.
` e
Nous constatons sur cet exemple que le sch´ ma d’Euler explicite est d’ordre un,
e
le sch´ ma de Runge est d’ordre deux tandis que le sch´ ma de Runge-Kutta a quatre
e e `
etages est d’ordre quatre !
´
Simulation d’une solution chaotique Dans beaucoup d’applications, les solutions
d’une equation diff´ rentielle ordinaire sont chaotiques. Il n’y a pas de d´ finition for-
´ e e
melle pr´ cise de la notion de chaos, mais une d´ finition convenable est que lorsque
e e
t devient grand, une connaissance approximative de la donn´ e initiale u(0) rend le
e
comportement de la solution incompr´ hensible.
e
Consid´ rons par exemple le mod` le de Lorentz : nous cherchons a approcher les
e e `
fonctions (x(t), y(t), z(t)) pour tout t ≥ 0 du syst` me suivant
e
x = σ (y − x),
y = x (ρ − z) − y,
z = x y − β z,
avec σ = 10, ρ = 28 et β = 8/3.
En appliquant le th´ or` me de Cauchy-Lipschitz (Th´ or` me 6.1.1), nous montrons
e e e e
que sur tout intervalle de temps [0, T ], il existe une unique solution au syst` me de
e
Lorentz. Cependant, la simulation num´ rique de ce syst` me pose de r´ elles difficult´ s
e e e e
lorsque le nombre d’it´ rations devient grand.
e
13. ´ `
6.2. SCHEMAS A UN PAS EXPLICITES 235
Choisissons une donn´ e initiale
e
qui est une perturbation de
l’´ quilibre (0, 0, 0) de l’ordre
e trajectoire de (x,y,z)
de 10−6 . Nous observons alors z
50
plusieurs choses. Tout d’abord, 45
40
35
30
en tracant sur la Figure 6.3
¸ 25
20
15
l’´ volution des composantes
e 10
5
0
(x(t), y(t), z(t)) au cours du 20
30
10
temps, la solution forme une -20 -15
-10 -5
0 -20
-10
0 y
x 5 10
15 20
-30
sorte de papillon. Notons que
pour diff´ rents pas de temps
e
∆t = 2. 10−4 , 2. 10−5 et 2. 10−6
´
F IG . 6.3 – Evolution de (x, y, z).
le comportement qualitatif de la
solution reste le mˆ me.
e
Cependant, en tracant l’´ volution des composantes x(t) et z(t), nous observons que
¸ e
pour t ≥ 15, les simulations num´ riques mettent en evidence un comportement chao-
e ´
tique de la solution num´ rique pour diff´ rents pas de temps (voir Figure 6.4).
e e
30
dt = 2.E-4 dt = 2.E-4
dt = 2.E-5 50 dt = 2.E-5
dt = 2.E-6 dt = 2.E-6
20
40
10
30
x(t)
z(t)
0
20
-10 10
-20 0
0 5 10 15 20 25 30 0 5 10 15 20 25 30
t t
´
F IG . 6.4 – Evolution des composantes xn et z n en fonction de n pour un sch´ ma
e
d’Euler explicite et diff´ rents pas de temps ∆t = 2. 10−4, 2. 10−5 et 2. 10−6.
e
C’est pourquoi, il est important d’´ tudier le plus pr´ cis´ ment possible le comporte-
e e e
ment de la solution num´ rique lorsque le param` tre ∆t tend vers z´ ro. Par la suite, nous
e e e
etudierons les m´ thodes de discr´ tisation des equations diff´ rentielles dites ¡¡ sch´ ma
´ e e ´ e e
a un pas ¿¿.
`
L’ensemble de ces m´ thodes num´ riques peut etre d´ crit comme un sch´ ma a un
e e ˆ e e `
pas explicite, autrement dit le sch´ ma s’´ crit sous la forme
e e
0
v = u(0)
(6.8)
n+1
v n n n
= v + ∆t φ(t , v , ∆t), n = 0, . . . , N − 1,
14. 236 ´ ´
CHAPITRE 6. LES EQUATIONS DIFFERENTIELLES
o` φ : R+ × Rd × R+ → Rd d´ finit compl` tement la m´ thode num´ rique. Bien sˆ r,
u e e e e u
la m´ thode est dite a un pas car v n+1 ne d´ pend que de l’´ tape pr´ c´ dente v n .
e ` e e e e
Ainsi l’algorithme est satisfaisant d` s lors que l’erreur en = v n −u(tn ) converge
e
vers 0 pour tout n ∈ {0, . . . , N} lorsque le pas de temps ∆t tend vers z´ ro.
e
´
Etudions d’abord le sch´ ma le plus simple, c’est-` -dire le sch´ ma d’Euler explicite,
e a e
pour lequel nous proposons une d´ monstration de convergence qui ne repose pas sur
e
un r´ sultat d’existence de solutions pour (6.2) : la convergence du sch´ ma num´ rique
e e e
constitue donc une preuve du Th´ or` me de Cauchy-Lipschitz (Th´ or` me 6.1.1). En-
e e e e
suite, nous proposons une etude g´ n´ rale des sch´ mas a un pas et donnons des condi-
´ e e e `
tions suffisantes sur la fonction φ pour d´ montrer la convergence et calculer l’ordre du
e
sch´ ma.
e
6.2.2 Convergence du sch´ ma d’Euler explicite
e
Soit u(t) la solution exacte de l’´ quation diff´ rentielle (6.2) et v n la solution ap-
e e
proch´ e donn´ e par le sch´ ma a un pas (6.8). D´ finissons l’erreur globale au temps tn
e e e ` e
par la diff´ rence entre les solutions exacte et approch´ e :
e e
en (∆t) = u(tn ) − v n , n ∈ N.
D´ finition 6.2.2 Consid´ rons l’´ quation diff´ rentielle ordinaire (6.2). Nous disons que
e e e e
le sch´ ma (6.8) est convergent sur l’intervalle [0, T ] lorsque pour ∆t = T /N
e
lim max en (∆t) = 0.
∆t→0 n=0,...,N
En outre le sch´ ma est convergent d’ordre p s’il existe une constante C > 0 ne
e
d´ pendant que de f , T , u0 et surtout pas de ∆t telle que
e
max en (∆t) ≤ C ∆tp .
n=0,...,N
Supposons que pour T > 0, la fonction f appartient a C([0, T ]×U, E) et consid´ rons
` e
le sch´ ma d’Euler explicite pour (6.2)
e
v n+1 = v n + f (tn , v n ).
Notons alors v∆t la fonction affine par morceaux de [0, T ] a valeurs dans E, d´ finie par
` e
v n+1 − v n
v∆t (t) = v n + (t − tn ), t ∈ [tn , tn+1 [, n = 0, . . . , N − 1.
∆t
Nous souhaitons d´ montrer que la fonction v∆t converge vers une solution de (6.2).
e
D’une part, puisque f est continue elle est born´ e sur tout compact. La ¡¡ d´ riv´ e ¿¿
e e e
de v∆t est alors born´ e sur un intervalle inclus dans [0, T ] ind´ pendamment de ∆t.
e e
L’ensemble (v∆t )∆t>0 forme ainsi une famille de fonctions equicontinues dont une
´
sous-suite converge uniform´ ment grˆ ce au Th´ or` me d’Arzel` -Ascoli.
e a e e a
Th´ or` me 6.2.1 (Th´ or` me d’Arzel` -Ascoli) Soit (vm )m∈N une suite de fonctions
e e e e a
telles que {vm : [0, T ] → R, m ∈ N} est equicontinue sur [0, T ] avec 0 < T < +∞,
´
15. ´ `
6.2. SCHEMAS A UN PAS EXPLICITES 237
c’est-` -dire que pour tout ε > 0, il existe δ > 0 ind´ pendant de m ∈ N tel que pour
a e
tout |t − s| ≤ δ,
sup vm (t) − vm (s) ≤ ε.
m∈N
Si la suite (vm )m∈N est born´ e, alors il existe une sous-suite qui converge uniform´ ment.
e e
Montrons alors le r´ sultat suivant (qui englobe une partie du Th´ or` me 6.1.1).
e e e
Th´ or` me 6.2.2 (Convergence du sch´ ma d’Euler explicite) Soient f ∈ C 0 ([0, T ]×
e e e
U, E), B(u0 , δ) ⊂ U et
M = sup |f (t, u)|
(t,u)∈[0,T ]×B(u0 ,δ)
Alors il existe au moins une solution au probl` me de Cauchy (6.2) d´ finie sur l’in-
e e
tervalle [0, T0 ] avec T0 = min(T, δ/M) et il existe une sous-suite de la solution
num´ rique donn´ e par le sch´ ma d’Euler qui converge vers cette solution.
e e e
D´ monstration : Soient δ > 0 et T > 0 tels que B(u0 , δ) ⊂ U, alors par
e
d´ finition de M la solution num´ rique v∆t (t) ∈ B(u0 , δ) pour tout t ∈ [0, T0 ] avec
e e
T0 = min(T, δ/M) et de plus
v∆t (t) − v∆t (s) ≤ M |t − s|.
Ainsi, d’apr` s le Th´ or` me d’Arzel` -Ascoli, il existe une sous-suite (v1/m )m∈N∗ qui
e e e a
converge uniform´ ment vers une fonction u. Il reste a d´ montrer que u est solution de
e ` e
(6.2), c’est-` -dire que pour tout t ∈ [0, T0 ]
a
t
u(t) = u(0) + f (s, u(s)) ds.
0
En utilisant le fait que f est uniform´ ment continue sur [0, T ] × U, il existe δ(∆t) → 0
e
lorsque ∆t → 0 telle que
f (t, v) − f (s, w) ≤ δ(∆t), v − w ≤ M ∆t et |t − s| ≤ ∆t.
C’est pourquoi,
t
v∆t (t) − u(0) − f (s, v∆t (s)) ds ≤
0
N −1 tn+1
f (s, v∆t(s)) − f (tn , v n ) + f (s, v∆t (s)) − f (tn+1 , v n+1 ) ds
n=0 tn
N −1
≤ 2 δ(∆t) ∆t = 2 T δ(∆t).
n=0
En ecrivant cette in´ galit´ pour une sous-suite convergente et en passant a la limite ∆t
´ e e `
tend vers z´ ro, nous obtenons le r´ sultat.
e e 2
Nous montrons facilement que lorsque la fonction f est lipschitzienne par rapport
a la seconde variable, la suite d´ finie par le sch´ ma d’Euler converge uniform´ ment.
` e e e
16. 238 ´ ´
CHAPITRE 6. LES EQUATIONS DIFFERENTIELLES
e e `
6.2.3 Consistance et stabilit´ des sch´ mas a un pas
´
Etablissons maintenant des crit` res g´ n´ raux sur l’ensemble des sch´ mas num´ riques
e e e e e
a un pas, ecrits sous la forme (6.8), ce qui permettra de d´ montrer facilement la conver-
` ´ e
gence de la solution approch´ e vers la solution exacte. Pour cela, d´ finissons deux no-
e e
tions importantes : la consistance qui renseigne sur la coh´ rence de la discr´ tisation et
e e
la stabilit´ qui signifie le contrˆ le de l’accumulation des erreurs.
e o
Pour n ∈ N, l’erreur de consistance du sch´ ma (6.8) au temps t, pour u une solution
e
de (6.2) et un pas de temps ∆t, est obtenue en appliquant le sch´ ma de discr´ tisation a
e e `
la solution exacte, c’est-` -dire
a
u(t + ∆t) − u(t)
R(t, u, ∆t) = − φ(t, u(t), ∆t), (6.9)
∆t
ce qui permet alors de d´ finir la consistance.
e
D´ finition 6.2.3 Consid´ rons le sch´ ma a un pas (6.8) associ´ a l’´ quation diff´ rentielle
e e e ` e` e e
(6.2). Nous disons que le sch´ ma est consistant lorsque pour tout t ∈ [0, T ] et toute
e
solution u ∈ C([0, T ], Rd ) de (6.2)
lim R(t, u, ∆t) = 0.
∆t→0
De plus, pour p ∈ N, le sch´ ma est consistant d’ordre p s’il existe une constante
e
C > 0 ne d´ pendant que de f , T et u0 mais surtout pas de ∆t telle que
e
R(t, u, ∆t) ≤ C ∆tp , pour tout t ≥ 0
et toute solution u ∈ C([0, T ], Rd ) de (6.2).
Ainsi, la consistance donne une indication sur la coh´ rence de l’approximation φ
e
de la fonction f . En effet, elle signifie que lorsque le param` tre de discr´ tisation ∆t
e e
´
tend vers z´ ro, la fonction φ(t, u(t), ∆t) converge vers f (t, u(t)). Etablissons alors une
e
condition suffisante sur φ pour que le sch´ ma (6.8) soit consistant.
e
Proposition 6.2.1 (Condition suffisante pour la consistance) Consid´ rons le sch´ ma
e e
a un pas (6.8) associ´ a l’´ quation diff´ rentielle (6.2). Si la fonction φ ∈ C (R ×Rd ×
` e` e e 0 +
R+ , Rd ) et pour tout w ∈ Rd , t ∈ [0, T ]
φ(t, w, 0) = f (t, w).
Alors le sch´ ma (6.8) est consistant.
e
D´ monstration : Prenons u ∈ C 1 ([0, T ], Rd ) la solution exacte de (6.2), nous pou-
e
vons ecrire pour t ∈ [0, T − ∆t]
´
t+∆t t+∆t
u(t + ∆t) − u(t) = u (s) ds = f (s, u(s)) ds.
t t
17. ´ `
6.2. SCHEMAS A UN PAS EXPLICITES 239
Nous en d´ duisons alors que
e
u(t + ∆t) − u(t)
R(t, u, ∆t) = − φ(t, u(t), ∆t),
∆t
t+∆t
1
= [f (s, u(s)) − φ(t, u(t), ∆t)] ds.
∆t t
Soit ε > 0, puisque φ est une fonction continue au point (t, u(t), 0) et φ(t, u(t), 0) =
f (t, u(t)), il existe η1 > 0 tel que pour tout ∆t ≤ η1
ε
φ(t, u(t), ∆t) − f (t, u(t)) ≤ .
2
Nous avons donc par in´ galit´ triangulaire
e e
t+∆t
ε 1
R(t, u, ∆t) ≤ + f (s, u(s)) − f (t, u(t)) ds.
2 ∆t t
D’autre part, la fonction s → f (s, u(s)) est continue sur [0, T ], elle est donc uni-
form´ ment continue, il existe donc η2 > 0 tel que pour tout |t − s| ≤ ∆t ≤ η2 ,
e
t+∆t
1 ε
f (s, u(s)) − f (t, u(t)) ds ≤ .
∆t t 2
Ainsi, lorsque ∆t ≤ η = min(η1 , η2 ), l’erreur de consistance satisfait
R(t, u, ∆t) ≤ ε,
ce qui d´ montre la proposition.
e 2
Pour obtenir la consistance d’ordre p > 1, il est n´ cessaire de supposer que la
e
fonction f ∈ C p ([0, T ] × U, Rd ), ce qui implique d’apr` s le Th´ or` me 6.1.1 que u ∈
e e e
p+1 d p−m
C ([0, T ], R ). D´ finissons alors f(m) ∈ C
e ([0, T ] × U, R ) pour (t, w) ∈ R × Rd
d
f (t, w) = f (t, w)
(0)
∂f(m)
f(m+1) (t, w) = (t, w) + w f(m) (t, w) f (t, w), m ≥ 0.
∂t
Par r´ currence, la solution de (6.2) v´ rifie pour tout m ∈ {0, . . . , p}
e e
u(m+1) (t) = f(m) (t, u(t)), t ∈ [0, T ].
`
A partir de cette derni` re egalit´ et d’un d´ veloppement de Taylor de la solution de
e ´ e e
(6.2) a l’ordre p, il vient
`
p
∆tm (m) ∆tp+1 (p+1)
u(t + ∆t) = u(t) + u (t) + u (η),
m=1
m! (p + 1)!
p−1
∆tm ∆tp+1 (p+1)
= u(t) + ∆t f(m) (t, u(t)) + u (η).
m=0
(m + 1)! (p + 1)!
18. 240 ´ ´
CHAPITRE 6. LES EQUATIONS DIFFERENTIELLES
Ainsi, en choisissant la fonction φ telle que
p−1
∆tm
φ(t, v, ∆t) = f(m) (t, v) , (6.10)
m=0
(m + 1)!
l’erreur de consistance v´ rifie naturellement
e
u(t + ∆t) − u(t) ∆tp
R(t, u, ∆t) = − φ(t, u(t), ∆t) = u(p+1) (η) .
∆t (p + 1)!
Compte tenu que u(p+1) est continue, elle est born´ e sur [0, T ] et l’erreur de consis-
e
tance est bien d’ordre p. Nous pouvons alors facilement d´ montrer a l’aide de (6.10) la
e `
Proposition suivante
Proposition 6.2.2 (Condition suffisante pour la consistance d’ordre p) Consid´ rons e
le sch´ ma a un pas (6.8) associ´ a l’´ quation diff´ rentielle (6.2). Si la fonction φ ∈
e ` e` e e
C p−1 (R+ × Rd × R+ , Rd ) et v´ rifie pour tout m = {0, . . . , p − 1}
e
∂mφ f(m) (t, v)
m
(t, v, 0) = , t ∈ [0, T ].
∂∆t m+1
Alors le sch´ ma (6.8) est consistant d’ordre p.
e
C’est alors un exercice trivial que de v´ rifier que le sch´ ma de Runge est effective-
e e
ment d’ordre deux et le sch´ ma de Runge-Kutta a quatre etages est d’ordre quatre.
e ` ´
Ces crit` res donnent une information sur la pr´ cision d’une etape de discr´ tisation
e e ´ e
mais ils n’assurent pas que l’accumulation des erreurs ne converge pas vers l’infini
lorsque le nombre d’´ tapes ou d’it´ rations croˆt. Pour exprimer cela, introduisons la
e e ı
notion de stabilit´ .
e
D´ finition 6.2.4 Le sch´ ma (6.8) est stable s’il existe ∆t > 0 et R > 0 pouvant
e e
d´ pendre de la donn´ e initiale u0 et du temps final T = N ∆t tels que pour tout
e e
∆t ∈ [0, ∆t [
v n ∈ B(0, R), ∀ n = 0, , . . . , N,
o` B(0, R) d´ signe la boule de centre 0 et de rayon R. Autrement dit la solution
u e
num´ rique v n est born´ e ind´ pendamment de n et ∆t.
e e e
En outre, le sch´ ma est inconditionnellement stable lorsque ∆t = ∞.
e
Notons que cette notion de stabilit´ a d´ j` et´ utilis´ e pour d´ montrer la conver-
e ea ´e e e
gence du sch´ ma d’Euler explicite puisque nous avons d´ montr´ en premier lieu que la
e e e
solution num´ rique est born´ e. Cependant cette condition se r´ v` le bien souvent trop
e e e e
faible pour permettre une analyse de convergence d’un sch´ ma num´ rique a un pas.
e e `
C’est pourquoi, nous introduisons une notion de stabilit´ plus contraignante, c’est la
e
stabilit´ par rapport aux erreurs.
e
D´ finition 6.2.5 Le sch´ ma (6.8) est stable par rapport aux erreurs s’il existe ∆t > 0
e e
et C > 0 d´ pendant de u0 , f et T tels que pour 0 ≤ ∆t ≤ ∆t ,
e
v n+1 := v n + ∆t φ(tn , v n , ∆t),
19. ´ `
6.2. SCHEMAS A UN PAS EXPLICITES 241
et
w n+1 := w n + ∆t φ(tn , w n , ∆t) + εn ,
pour n = 0, . . . , N − 1 et (εn )n∈N ⊂ Rd est donn´ e, alors
e
n−1
n n 0 0
v −w ≤ C v −w + εi ,
i=0
pour tout n = 0, . . . , N − 1.
Cette d´ finition signifie que pour qu’un sch´ ma soit stable il faut et il suffit que
e e
l’accumulation des erreurs soit du mˆ me ordre que la somme des erreurs commises a
e `
chaque etape. Nous proposons une condition suffisante de stabilit´ pour un sch´ ma a
´ e e `
un pas de la forme (6.8)
Proposition 6.2.3 (Condition suffisante pour la stabilit´ ) Supposons que la fonction
e
φ est continue et lipschitzienne par rapport a la variable v ∈ Rd , o` Γ > 0 est la
` u
constante de Lipschitz :
φ(t, u, ∆t) − φ(t, v, ∆t) ≤ Γ u − v (6.11)
pour tout t ≥ 0 et ∆t > 0. Alors la solution num´ rique donn´ e par (6.8) est stable par
e e
rapport aux erreurs.
D´ monstration : Soient (v n )n et (w n )n telles que
e
v n+1 := v n + ∆t φ(tn , v n , ∆t),
et
w n+1 := w n + ∆t φ(tn , w n , ∆t) + εn .
En faisant la diff´ rence et en utilisant la condition (6.11), il vient pour en = v n − w n
e
en+1 ≤ (1 + Γ ∆t) en + εn .
Puis en proc´ dant par r´ currence, nous obtenons
e e
n
n+1 n+1 0
e ≤ (1 + Γ ∆t) e + (1 + Γ ∆t)n−k εk .
k=0
En observant que 1 + Γ ∆t ≤ eΓ ∆t , nous avons alors simplement
n
n+1 Γ tn+1 0
e ≤ e e + εk ,
k=0
ce qui d´ montre le r´ sultat de stabilit´ par rapport aux erreurs avec C = eΓ T > 0. 2
e e e
`
A partir de la notion de consistance et de stabilit´ , nous pouvons d´ montrer la
e e
convergence de la solution num´ rique vers la solution exacte de (6.2). C’est un r´ sultat
e e
classique en analyse num´ rique et plus g´ n´ ralement en analyse : nous verrons plus
e e e
tard que cette notion revient lors de l’analyse de sch´ mas num´ riques pour les equations
e e ´
aux d´ riv´ es partielles.
e e
20. 242 ´ ´
CHAPITRE 6. LES EQUATIONS DIFFERENTIELLES
Th´ or` me 6.2.3 (Consistance + Stabilit´ ⇒ Convergence) Nous supposons que le
e e e
sch´ ma (6.8) est consistant d’ordre p et stable par rapport aux erreurs. Alors la solu-
e
tion num´ rique converge vers la solution exacte de (6.2). L’erreur v´ rifie en outre
e e
en (∆t) ≤ C ∆tp + e0 (∆t) ,
pour tout n = 0, . . . , N, o` C > 0 ne d´ pend que de T , f et u.
u e
D´ monstration : Puisque le sch´ ma est consistant, la solution exacte u v´ rifie
e e e
u(tn+1 ) = u(tn ) + ∆t φ(tn , u(tn ), ∆t) + ∆t R(tn , u, ∆t),
avec la condition suivante sur R(tn , u, ∆t) : pour tout t ∈ [0, T ] et u solution exacte
de (6.2)
lim R(t, u, ∆t) = 0,
∆t→0
et puisque le sch´ ma est d’ordre p
e
R(t, u, ∆t) ≤ C ∆tp , ∀t ∈ [0, T ].
D’autre part, la solution num´ rique est donn´ e par
e e
v n+1 = v n + ∆t φ(tn , v n , ∆t).
En faisant la diff´ rence entre les deux egalit´ s, le terme d’erreur en (∆t) = v n − u(tn )
e ´ e
satisfait la relation de r´ currence
e
en+1 (∆t) = en (∆t) + ∆t [ φ(tn , v n , ∆t) − φ(tn , u(tn ), ∆t)]
− ∆t R(tn , u(tn ), ∆t).
Ainsi, en appliquant directement la d´ finition de la stabilit´ par rapport aux erreurs
e e
avec w n = u(tn ), il vient
n−1
n 0
e (∆t) ≤ C e (∆t) + ∆t R(ti , u, ∆t) .
i=0
Puisque le sch´ ma est consistant, nous avons
e
n−1
∆t R(ti , u, ∆t) ≤ T max R(ti , u, ∆t) ,
0≤i≤n−1
i=0
le terme de droite tend bien vers z´ ro lorsque ∆t converge vers z´ ro, puisque pour tout
e e
i ∈ {0, . . . , n}
lim R(ti , u, ∆t) = 0
∆t→0
0
et u converge vers u(0) donc le sch´ ma est convergent.
e
En outre, le sch´ ma etant consistant d’ordre p, l’erreur est du mˆ me ordre
e ´ e
n−1
n 0
e (∆t) ≤ C e (∆t) + ∆t R(ti , u(ti), ∆t)
i=0
≤ C e0 (∆t) + ∆tp .
2
21. ´ ´
6.3. LES EQUATIONS DIFFERENTIELLES RAIDES 243
´
6.3 Les equations diff´ rentielles raides
e
Consid´ rons l’exemple d’une equation diff´ rentielle mod´ lisant une r´ action chi-
e ´ e e e
mique pour un param` tre ε > 0 assez petit,
e
ε
a −→
b lente,
1/ε2
b+b −→
c + b tr` s rapide,
e
1/ε
b+c −→
c + a rapide,
o` a, b et c sont trois r´ actants de concentration Ca (t), Cb (t) et Cc (t). Sur un intervalle
u e
de temps dt, la variation de la concentration Ca diminue proportionnellement a ε pour `
produire de la substance b et dans le mˆ me temps augmente proportionnellement a 1/ε
e `
par association des substances b et c produisant a la fois les r´ actants a et c, ce qui
` e
conduit a`
Cb Cc
dCa = −ε Ca dt + dt.
2ε
De la mˆ me mani` re
e e
Cb Cb Cb Cb Cb Cc
dCb = ε Ca dt + 2
dt − 2
dt − dt
2ε ε 2ε
et
Cb Cb Cb Cc Cb Cc
dCc = dt + dt − dt.
2ε2 2ε 2ε
En passant formellement a la limite dt → 0, nous obtenons un syst` me d’´ quations
` e e
diff´ rentielles raides, c’est-` -dire contenant des echelles d’ordre diff´ rent ε, 1/ε et
e a ´ e
1/ε2
C (t) = −ε C (t) + Cb (t) Cc (t) ,
a
a
2ε
2
Cb (t) Cb (t) Cc (t)
Cb (t) = +ε Ca(t) − 2ε2 −
2ε
,
2
Cc (t) = Cb (t) .
2ε2
Cette r´ action d´ crit la production de r´ actants c a partir de la substance a tandis
e e e `
que b sert de catalyseur. Observons en effet que Cc = 1, Ca = Cb = 0 est un
equilibre vers lequel la solution est suppos´ e converger. Pour un tel syst` me, l’utili-
´ e e
sation d’une m´ thode de Runge-Kutta explicite est pratiquement impossible car nous
e
serions oblig´ s de prendre un pas de temps ∆t tr` s petit pour obtenir une approxi-
e e
mation raisonnable, sans quoi la solution num´ rique devient instable. En effet, une
e
caract´ ristique de cette equation diff´ rentielle est la pr´ sence de diff´ rentes echelles
e ´ e e e ´
(lente, tr` s rapide et rapide), pour que le sch´ ma explicite reste pr´ cis, il faut que le pas
e e e
de temps soit du mˆ me ordre que la fr´ quence la plus rapide, c’est-` -dire ici de l’ordre
e e a
2
de ε .
Pour mieux comprendre ce ph´ nom` ne, consid´ rons un probl` me bien plus simple
e e e e
pour lequel tous les calculs sont explicites et qui poss` de les mˆ mes caract´ ristiques
e e e
ε u (t) = −u(t) + cos(t), 0<ε 1. (6.12)
22. 244 ´ ´
CHAPITRE 6. LES EQUATIONS DIFFERENTIELLES
Cette equation diff´ rentielle est lin´ aire inhomog` ne et la solution exacte est donn´ e
´ e e e e
par
1 cos(t) ε sin(t)
u(t) = u0 − 2
e−t/ε + 2
+ .
1+ε 1+ε 1 + ε2
Cette solution est la somme d’une fonction oscillant a une p´ riode de 2π et d’une
` e
fonction qui tend vers z´ ro a la vitesse de 1/ε.
e `
Observons maintenant ce qu’il se passe lorsque nous appliquons la m´ thode d’Eu-
e
ler explicite a une telle equation pour un pas de temps ∆t constant. La solution num´ rique
` ´ e
au temps tn = n ∆t est alors donn´ e par
e
∆t ∆t
v n+1 = 1− vn + cos(tn ).
ε ε
Comme pour l’´ quation diff´ rentielle, recherchons une solution sous la forme
e e
n
n ∆t
v = 1− (v 0 − α) + α cos(tn ) + β sin(tn ).
ε
En injectant cet ¡¡ ansatz ¿¿ dans le sch´ ma num´ rique, nous obtenons deux equations
e e ´
lin´ aires pour α et β dont la solution est de la forme
e
α = 1 + O(ε ∆t), β = ε + O(ε∆t2 ),
ce qui donne finalement
n
n ∆t
v = 1− (v 0 − 1) + cos(tn ) + ε sin(tn ) + O(ε ∆t).
ε
Ainsi, la solution num´ rique v n est proche de la solution exacte seulement lorsque le
e
pas de temps v´ rifie la condition
e
|1 − ∆t/ε| < 1,
c’est-` -dire lorsque ∆t < ε, ce qui est trop contraignant dans la pratique lorsque
a
ε est tr` s petit. En d´ finitive, tous les sch´ mas explicites a un pas doivent satisfaire
e e e `
une condition similaire pour que la solution num´ rique soit stable, ce qui les rend
e
inutilisables pour ce type de probl` me a plusieurs echelles. Il faut donc construire des
e ` ´
sch´ mas diff´ rents pour les syst` mes diff´ rentiels raides.
e e e e
Envisageons alors l’utilisation d’une m´ thode implicite directement inspir´ e du
e e
sch´ ma d’Euler. En reprenant la d´ marche utilis´ e pr´ c´ demment sur l’intervalle [tn , tn +
e e e e e
∆t],
tn+1
n+1 n
u(t ) − u(t ) = f (s, u(s)) ds,
tn
le sch´ ma d’Euler implicite consiste a appliquer la m´ thode des rectangles en utilisant
e ` e
la valeur a droite f (tn+1 , u(tn+1)), il vient alors
`
tn+1
f (s, u(s)) ds ∆t f (tn+1 , u(tn+1 )).
tn
23. ´ ´
6.3. LES EQUATIONS DIFFERENTIELLES RAIDES 245
Le sch´ ma d’Euler implicite s’obtient alors en remplacant u(tn+1 ) par son approxi-
e ¸
mation v n+1
0
v = u(0)
(6.13)
n+1
v n n+1 n+1
= v + ∆t f (t , v ), pour n = 0, . . . , N − 1.
Remarquons que pour le sch´ ma d’Euler implicite, l’existence et a fortiori le cal-
e
cul de v n+1 n’est pas evident, il est donn´ de mani` re implicite et un probl` me non
´ e e e
lin´ aire doit en g´ n´ ral etre r´ solu, ce qui n’est pas toujours facile. Avant d’aborder ces
e e e ˆ e
probl` mes, v´ rifions que ce type de sch´ ma convient bien a la r´ solution d’´ quations
e e e ` e e
diff´ rentielles raides. Pour cela, revenons au probl` me d’une equation diff´ rentielle
e e ´ e
lin´ aire raide (6.12). Un calcul analogue a celui effectu´ pour le sch´ ma d’Euler expli-
e ` e e
cite donne ici
∆t ∆t
1+ v n+1 = v n + cos(tn+1 ),
ε ε
dont la solution peut etre ecrite sous la forme
ˆ ´
−n
n ∆t
v = 1+ (v 0 − 1) + cos(tn ) + ε sin(tn ) + O(∆t ε).
ε
Cette fois-ci nous n’avons pas de restriction sur la longueur du pas, car
1
< 1,
1 + ε ∆t
pour tout ∆t > 0. Dans ce cas, le sch´ ma implicite donne une bonne approximation
e
mˆ me si ∆t est tr` s grand. Il y a donc bon espoir que des sch´ mas implicites soient
e e e
mieux adapt´ s a la r´ solution num´ rique de probl` mes raides.
e ` e e e
1.5
Solution d’Euler explicite Solution d’Euler implicite
4 Solution exacte Solution exacte
1
2
0.5
0
0
-2
-0.5
-4
-1
0 2 4 6 8 10 0 2 4 6 8 10
(a) (b)
´
F IG . 6.5 – Evolution de la solution num´ rique obtenue par un sch´ ma d’Euler (a)
e e
−1
explicite et (b) implicite pour l’´ quation (6.12) avec ε = 10 et ∆t = 0, 2.
e
Par la suite, nous etudions la convergence du sch´ ma d’Euler implicite a l’aide
´ e `
de la m´ thodologie d´ velopp´ e pour les sch´ mas a un pas. Puis, nous introduisons
e e e e `
une nouvelle notion de stabilit´ pour la compr´ hension des ph´ nom` nes a plusieurs
e e e e `
echelles (A-stabilit´ ) et proposons d’autres sch´ mas implicites d’ordre plus elev´ .
´ e e ´ e