Upload
dangnga
View
243
Download
8
Embed Size (px)
Citation preview
Informatique & Mathematiques Appliquees
Equations differentielles ordinaires
J. Gergaud
13 mars 2017
Table des matieres
I Theorie mathematique 1
1 Introduction 3I Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3II Terminologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3III Qu’est-ce qu’une solution ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 Equations differentielles lineaires 5I Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5II Equations differentielles lineaires homogenes autonomes . . . . . . . . . . . . . . . . . . . . . . . . . 5
II.1 Approche elementaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5II.2 Exponentielle de matrice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6II.3 Calcul de l’exponentielle de matrice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8II.4 Forme des solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
III Equations lineaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10III.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10III.2 Existence et unicite de solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11III.3 Resolvante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12III.4 Equations differentielles lineaires avec second membre . . . . . . . . . . . . . . . . . . . . . . 14
3 Theorie des equations differentielles 15I Existence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15II Dependances par rapports aux donnees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
II.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20II.2 Continuite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21II.3 Derivee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
II Integration numerique 25
4 Introduction 27I Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27II Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
II.1 Exemple 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27II.2 Modele de Lorenz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28II.3 Exemple de Roberston . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
5 Les methodes de Runge-Kutta 31I Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31II Definitions et exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32III Methodes de Runge-Kutta explicite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
III.1 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33III.2 Ordre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34III.3 Convergence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
IV Erreurs d’arrondi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39V Controle du pas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
V.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39V.2 Extrapolation de Richardson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39V.3 Methode de Runge-Kutta emboıtees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
VI Les methodes de Runge-Kutta implicites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
i
ii TABLE DES MATIERES
VII Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
6 Sortie dense, discontinuites, derivees 47I Sortie dense . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
I.1 Objectif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47I.2 Calcul de la sortie dense . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47I.3 Detection d’evenements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48I.4 Integration d’equations differentielles a second membre discontinues . . . . . . . . . . . . . . 49
II Calcul de la derivee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49II.1 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49II.2 Differences finies externes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50II.3 Equation variationnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50II.4 Differentiation interne de Bock (IND) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50II.5 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
A 53I Espace de Banach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53II Theoremes de points fixes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53III Topologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53IV Developpement de Taylor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Premiere partie
Theorie mathematique
1
Chapitre 1
Introduction
I Objectifs
Dans ce document K designera le corps des reels R ou des complexes C.L’objectif de ce cours est l’etude mathematique, algorithmique et numerique des systemes differentielles a
condition initiale aussi appele probleme de Cauchy
(IV P ) 1
x(t) = f(t, x(t))x(t0) = x0,
ou
f : Ω ⊂ R×Kn −→ Kn
(t, x) 7−→ f(t, x),
Ω ouvert et (t0, x0) ∈ Ω. Le fait que Ω soit un ouvert est un point essentiel.Nous ne traiterons ni les equations a retard[6]
(DDE) 2
x(t) = f(t, x(t), x(t− τ))x(t) = f(t) ∀t ∈ [t0 − τ, t0],
ni les equations differentielles algebriques[7]
(DAE) 3
x(t) = f(x(t), z(t))ψ(x(t), z(t)) = 0x(t0) = x0, z(t0) = z0.
II Terminologie
— On appellera equation differentielle toute equation x(t) = f(t, x(t)) (c’est-a-dire sans la condition initiale).— Si la fonction f ne depend pas explicitement du temps, c’est-a-dire que l’equation differentielle s’ecrit
x(t) = f(x(t)), on dit que l’equation differentielle est autonome.— L’equation differentielle est dite lineaire 4 si elle s’ecrit x(t) = A(t)x(t) + b(t).
— x : I −→ Kn ;— A : I −→ L(Kn,Kn) ≡Mn(K) ;— b : I −→ Kn.
— Elle est dite lineaire et homogene ou sans terme constant si elle s’ecrit x(t) = A(t)x(t) ;— Elle est dite lineaire a coefficients constants si elle s’ecrit x(t) = Ax(t) + b.
III Qu’est-ce qu’une solution ?
La premiere question qui se pose est de savoir ce que l’on entend par une solution de (IV P ).
1. Initial Value Problem.2. Delay Differential Equation.3. Differential Algebraic Equation.4. En francais, on devrait dire equation affine.
3
4 CHAPITRE 1. INTRODUCTION
Definition III.1 (Definition classique) On suppose f continue. On appelle solution classique de (IV P ) toutcouple (I, x), I intervalle ouvert de R, contenant t0 et x : I → Kn derivable en tout point et verifiant
(i) (t, x(t)) ∈ Ω,∀t ∈ I(ii) x(t) = f(t, x(t)),∀t ∈ I
(iii) x(t0) = x0.
Une solution est aussi appelee courbe integrale de l’equation differentielle.
Remarque III.2Si f est continue (respectivement Ck) et (I, x) est une solution alors x est C1 (respectivement Ck+1).
On rappelle qu’une fonction x : I → Kn est localement absolument continue si elle est absolument continue surtout intervalle compact de I.
Definition III.3 (Solution faible) On appelle solution faible de (IV P ) tout couple (I, x), I intervalle ouvert deR contenant t0 et x : I → Kn localement absolument continue verifiant
(i) (t, x(t)) ∈ Ω,∀t ∈ I(ii) x(t) = f(t, x(t)), pour presque tout t ∈ I
(iii) x(t0) = x0.
Remarque III.4Si f est continue et x est une solution faible alors l’application t → f(t, x(t)) est continue. Par suite la deriveede x(t) qui existe presque partout est egale a une fonction continue. Donc x(t) existe partout sur I et x est unesolution classique.
Theoreme III.5(I, x) est une solution faible de (IV P ) si et seulement si (t, x(t)) ∈ Ω pour tout t dans I, la fonction t 7→ f(t, x(t))est localement integrable et
x(t) = x0 +
∫ t
t0
f(s, x(s))ds.
Demonstration
— Si (I, x) est une solution faible, x(.) est absolument continue, alors (corollaire 2.41.5 de [12])
x(t) = x0 +
∫ t
t0
x(s)ds = x0 +
∫ t
t0
f(s, x(s))ds.
— Reciproque.Si l’application t 7→ f(t, x(t)) est dans L1 et que l’on a
x(t) = x0 +
∫ t
t0
f(s, x(s))ds,
alors (theoreme 2.40.2 de [12]) x(t) = f(t, x(t)) presque partout. Donc (I, x) est une solution faible.
2
Dans toute la suite de ce document on supposera, sauf lorsque cela sera mentionne, que la fonction f est continue.
Chapitre 2
Equations differentielles lineaires
I Introduction
Dans tout ce chapitre I sera un intervalle de R et K sera le corps des reels ou des complexes. L’objectif de cechapitre est l’etude mathematique des equations differentielles lineaires
x(t) = A(t)x(t) + b(t),
ou— x : I −→ Kn ;— A : I −→ L(Kn,Kn) ≡Mn(K) ;— b : I −→ Kn.Ce chapitre est fortement inspire del’ouvrage de Frederic Jean [8]. Nous commencerons par le cas des equations
lineaires homogenes et autonomes x(t) = Ax(t), puis nous etudierons le cas non autonome x(t) = A(t)x(t) et le casgenerale des equations lineaires x(t) = A(t)x(t) + b(t).
II Equations differentielles lineaires homogenes autonomes
II.1 Approche elementaire
Dans cette sous section le corps K sera le corps des reels R.
Exemple II.1On considere l’equation differentielle ordinaire lineaire scalaire
(IV P1)
x(t) = λx(t)x(t0) = x0,
ou λ est un reel et x est une fonction de R dans R. On sait que la solution de cette equation, qui est unique (cf. letheoreme III.1 ci-apres), est donnee par
x(t) = eλ(t−t0)x0.
On en deduit que cette solution est definie sur I = R et que l’on a comme comportement asymptotique— Si λ < 0 alors limt→+∞ x(t) = 0 ;— Si λ = 0 alors x(t) = x0 ;— Si λ > 0
— Si x0 < 0 alors limt→+∞ x(t) = −∞ ;— Si x0 = 0 alors x(t) = 0 ;— Si x0 > 0 alors limt→+∞ x(t) = +∞.
Exemple II.2Considerons maintenant un systeme de deux equations differentielles
(IV P2)
x1(t) = λ1x1(t)x2(t) = λ2x2(t)x1(t0) = x0,1
x2(t0) = x0,2.
5
6 CHAPITRE 2. EQUATIONS DIFFERENTIELLES LINEAIRES
La solution est alors donnee par x1(t) = eλ1(t−t0)x0,1
x2(t) = eλ2(t−t0)x0,2.
et le comportement asymptotique est— si λ1 < 0 et λ2 < 0 alors limt→+∞ x(t) = 0 ;— si λ1 < 0 et λ2 > 0 et x0,2 6= 0 alors |x1(t)| → 0 et |x2(t)| → +∞, et donc ‖x(t)‖ → +∞, quand t→ +∞ ;— ...
Exemple II.3Si maintenant nous considerons le cas du systeme differentiel
(IV P3)
x(t) = Λx(t)x(t0) = x0,
avec
Λ = diag(λ1, . . . , λn) =
λ1 · · · 0...
. . ....
0 · · · λn
.
La solution est alors
x(t) =
e(t−t0)λ1x0,1
...e(t−t0)λnx0,n
=
e(t−t0)λ1 · · · 0
.... . .
...0 · · · e(t−t0)λn
x0 = e(t−t0)Λx0.
Remarque II.4La notation e(t−t0)Λ sera clair au paragraphe suivant.
Le comportement asymptotique est alors— si tous les λi sont strictement negatifs alors limt→+∞ x(t) = 0 ;— si tous les λi sont negatifs ou nuls alors la solution est bornee quand t→ +∞ ;— si au moins un λi est strictement positif et que x0,i 6= 0 alors ‖x(t)‖ → +∞, quand t→ +∞.
Exemple II.5Soit maintenant A une matrice diagonalisable, A = PΛP−1 et le systeme differentiel a valeur initiale
(IV P4)
x(t) = Ax(t)x(t0) = x0,
Posons z(t) = P−1x(t), alors z(t) est solution su systeme differentielle a valeur initiale
(IV P5)
z(t) = P−1x(t) = P−1PΛP−1x(t) = Λz(t)z(t0) = P−1x0.
On a donc z(t) = e(t−t0)ΛP−1x0 et x(t) = Pz(t) = (Pe(t−t0)ΛP−1)x0. Par suite le comportement asymptotique estcaracterise par les valeurs propres de la matrice A.
II.2 Exponentielle de matrice
L’espace vectoriel norme (Mn(K), ‖.‖), est un espace de Banach. On considere ici une norme qui verifie
‖AB‖ ≤ ‖A‖‖B‖. La serie∑+∞k=0
Ak
k! est alors normalement convergente (A) car
+∞∑k=0
‖Ak‖k!≤
+∞∑k=0
‖A‖k
k!= e‖A‖.
Definition II.6 (Exponentielle de matrice) On appelle exponentiel de matrice l’application
exp :Mn(K) −→ Mn(K)
A 7−→ exp(A) = eA =
+∞∑k=0
Ak
k!.
II. EQUATIONS DIFFERENTIELLES LINEAIRES HOMOGENES AUTONOMES 7
Theoreme II.7L’exponentielle de matrice a les proprietes suivantes :
(i) e0 = I ;
(ii) si A = diag(λ1, . . . , λn) alors
exp(A) =
eλ1 · · · 0...
. . ....
0 · · · eλn
; (2.1)
(iii) si P est inversible on aexp(PAP−1) = P exp(A)P−1; (2.2)
(iv) si A et B sont deux matrices qui commutent alors
exp(A+B) = exp(A) exp(B); (2.3)
(v) pour tout α et β, e(α+β)A = eαAeβA ;
(vi) pour toute matrice A, eA est inversible et
(exp(A))−1 = exp(−A); (2.4)
(vii) pour toute matrice A, l’application t→ etA est C∞ et
d
dtetA = AetA = etAA. (2.5)
Demonstration
(i) Evident.
(ii) Il suffit d’ecrire la definition.
(iii) On a
exp(PAP−1) = PIP−1 + PAP−1 + · · · PAkP−1
k!+ · · ·
= P
(I +A+ · · ·+ Ak
k!+ · · ·
)P−1.
(iv) Soit A,B deux matrices carres qui commutent. Par definition on a
eA+B = I + (A+B) + · · ·+ (A+B)m
m!+ · · ·
Mais A et B commutent, la formule du binome permet alors d’ecrire
(A+B)m =
m∑k=0
CkmAkBm−k.
Mais les series definissant eA et eB etant normalement convergentes, nous avons
eAeB =
(I +A+ · · ·+ Ak
k!+ · · ·
)(I +B + · · ·+ Bk
k!+ · · ·
)= I + (A+B) + · · ·
(m∑k=0
Ak
k!
Bm−k
(m− k)!
)+ · · ·
= I + (A+B) + · · · 1
m!
(m∑k=0
m!
k!(m− k)!AkBm−k
)+ · · ·
d’ou le resultat.
(v) C’est immediat car αA et βA commutent.
(vi) Il suffit d’ecrire eA−A = eAe−A = I.
8 CHAPITRE 2. EQUATIONS DIFFERENTIELLES LINEAIRES
(vii) Posons
f : R −→ Mn(K)
t 7−→ etA.
La serie definissant l’application f(t) est normalement convergente, par suite elle est uniformement convergentesur tout intervalle compacte I de R. La serie des termes derivees s’ecrit
A
(I +A+ · · ·+ tkAk
(k)!+ · · ·
)= AetA.
Cette serie est normalement convergente. On en deduit qu’elle est egale a f ′(t).
2
Theoreme II.8L’unique solution du systeme differentielle lineaire, autonome et homogene a valeur initial
(IV P6)
x(t) = Ax(t)x(t0) = x0,
estx(t) = e(t−t0)Ax0. (2.6)
DemonstrationSoit x verifiant (2.6), la propriete (2.5) implique alors que
x(t) =d
dt(e(t−t0)Ax0) = Ae(t−t0)Ax0 = Ax(t).
Comme on a x(t0) = x0, c’est bien une solution.Supposons maintenant que x soit une solution de (IV P6). Posons z(t) = e−(t−t0)Ax(t), alors
z(t) = −Ae−(t−t0)Ax(t) + e−(t−t0)AAx(t) = 0,
car A et e−(t−t0)A commutent. Par suite z(t) = z(t0) = x0 pour tout t et x(t) = e(t−t0)Az(t) = e(t−t0)Ax0. 2
II.3 Calcul de l’exponentielle de matrice
Exercice II.9A partir de la definition calculer etA pour
1
A =
(1 00 2
),
2
A =
(0 10 0
),
3
A =
(0 1−1 0
),
4
A =
0 1 00 0 10 0 0
.
Remarque II.10Si A est une matrice reelle diagonalisable dans C, eA = PeΛP−1 est aussi une matrice reelle.
Exercice II.11Soit a ∈ R, a partir de la diagonalisation dans C, calculer
exp
(0 −aa 0
)
II. EQUATIONS DIFFERENTIELLES LINEAIRES HOMOGENES AUTONOMES 9
Dans le cas general, pour calculer l’exponentiel d’une matrice, on va utiliser sa decomposition de Jordan [1]. Onnote respectivement P (λ) et m(λ) les polynomes caracteristique et minimale de A ∈Mn(C)
P (λ) =
r∏i=1
(λ− λi)pi
m(λ) =
r∏i=1
(λ− λi)mi ,
et on rappelle que l’on a les proprietes suivantes
(i) Γi = kerC(A− λiI)pi = kerC(A− λiI)mi ;
(ii) dim Γi = pi ;
(iii) Les Γi sont invariants par A ;
(iv) La restriction de A a Γi s’ecrit AΓi = λiIΓi + Ni, ou Ni est un endomorphisme de Γi nilpotent d’ordreinferieur ou egal a pi (Npi
i = 0).
Par suite, si P est la matrice de passage a une base formee d’une base de Γ1, . . . , d’une base de Γr, on aP−1AP = Λ +N avec
Λ =
λ1
. . .
λ1
. . .
λr. . .
λr
, N =
N1
. . .
Nr
,
ou λi est present pi fois dans Λ et ou N est nilpotent. Pour aller plus loin nous allons utilise la decomposition sousla forme de Jordan.
Theoreme II.12 (Decomposition de Jordan)Soit A une matrice carre complexe, alors il existe une matrice P inversible telle que
P−1AP =
J1
. . .
Jr
,
ou Ji est de dimension (pi, pi) et s’ecrit
Ji =
Ji,1 . . .
Ji,ei
, Ji,k =
λi 1
. . .. . .
. . . 1λi
, Ji,k matrice de dimension (ni,k, ni,k)
avec
(i) ei = dim(ker(A− λiI)) ;
(ii) mi est la dimension du plus grand bloc de Ji.
Demonstrationcf. [1]. 2
En conclusion, nous avons
exp(tA) = PetJP−1 =
etJ1,1
. . .
etJr,er
, etJi,k = etλi
1 t . . . tni,k−1
(ni,k−1)!
. . .. . . t
1
10 CHAPITRE 2. EQUATIONS DIFFERENTIELLES LINEAIRES
II.4 Forme des solutions
Theoreme II.13Soit A une matrice carree complexe. Toute solution de x(t) = Ax(t) s’ecrit
x(t) =
r∑i=1
etλimi−1∑k=0
tkvi,k (2.7)
ou vi,k ∈ Γi.
Remarque II.14— Le terme en λi est polynomiale en t lorsque mi > 1, et constant lorsque mi = 1 (ce dernier cas se produit si
et seulement si les ordres de multiplicites algebrique et geometrique de λi coıncident.— Fixons x(0) = x0 = v1 + · · · + vr, avec vi ∈ Γi. Cette decomposition de x0 existe et est unique car
Cn = Γ1 ⊕ · · · ⊕ Γr. Alors en ecrivant les derivees successives en 0 dans la formule (2.7) et en utilisant le fait
que dkxdtk
(0) = Akx0, on obtient
vi,k =1
k!Nkvi
ou N est la matrice nilpotente de la decomposition Λ +N de P−1AP .
Considerons maintenant le cas d’une matrice a coefficients dans R et d’une solution dans Rn. On peut bienevidemment considerer A comme une matrice complexe, prendre comme condition initiale x0 + i0, appliquer letheoreme II.13, puis prendre la partie reelle. Mais on peut profiter du fait que si une valeur propre est complexe, savaleur conjuguee est aussi une valeur propre et on peut decomposer Rn comme la somme directe
Rn = E1 ⊕ · · · ⊕ Eq,
ou Ei = Γλi ∩Rn si λ est une valeur propre reelle et Ei = (Γλi ⊕ Γλi) ∩Rn si λi est une valeur propre complexe.On obtient ainsi le
Theoreme II.15Si A est une matrice reelle, l’ensemble des solutions reelles s’ecrit
x(t) =
q∑i=1
etαi∑
0≤k≤mi−1
tk(cos(βit)ai,k + sin(βit)bi,k),
ou λi = αi + iβi et les ai,k, bi,k sont dans Ei.
Corollaire II.16Si A est une matrice reelle diagonalisable dans C, alors toute solution de x(t) = Ax(t) s’ecrit
x(t) =
q∑i=1
etαi(cos(βit)ai + sin(βit)bi)
avec λ1, . . . , λs, valeurs propres reelles de A, λs+1, λs+1, . . . , λq, λq, valeurs propres complexes conjuguees de A,λj = αj + iβj et aj + ibj vecteur propre de A associee a λj
III Equations lineaires
III.1 Introduction
On s’interesse dans cette section aux equations differentielles lineaires a condition initiale
(IV P7)
x(t) = A(t)x(t) + b(t)x(t0) = x0,
Les fonctions A : I ⊂ R→Mn(K) et b : I → Kn seront toujours supposees de classe Ck, k ≥ 0.
III. EQUATIONS LINEAIRES 11
III.2 Existence et unicite de solution
Theoreme III.1On suppose que A et b sont Ck, k ≥ 0, t0 ∈ I, intervalle ouvert de R et que x0 ∈ Kn, alors le probleme de Cauchy(IV P7) admet une solution et une seule.
DemonstrationCeci est aussi demontre au corollaire (3.I.12). Demontrons tout d’abord l’existence. On considere un intervallecompact J ⊂ I qui contient t0. Nous allons demontrer que l’application
T : E = (C0(J,Kn), ‖.‖∞) −→ E
x(.) 7−→ T (x(.)) = x0 +
∫ .
t0
(A(s)x(s) + b(s))ds,
admet un point fixe. Le theoreme (1.III.5) permettra alors de conclure que le probleme de Cauchy admet unesolution sur tout intervalle compact J ⊂ I et donc sur tout I. Pour demontrer que l’application T admet un pointfixe, nous allons utiliser le theoreme du point fixe qui dit que si T , application d’un espace de Banach dans luimeme, admet un itere T p qui est contractant pour p ≥ 1, alors T admet un point fixe (cf. A.II.2). Remarquons toutd’abord que T est bien une application de E dans E et que E est un espace de Banach. Considerons maintenantdeux elements de E, x1(.) et x2(.). Nous avons
‖(T (x1(.))− T (x2(.)))(t)‖ = ‖∫ t
t0
(A(s)(x1(s)− x2(s)))ds‖
=
∫ t
t0
‖A(s)(x1(s)− x2(s))‖ds
≤ ‖A(.)‖∞∫ t
t0
‖x1(s)− x2(s)‖ds
≤ ‖A(.)‖∞‖x1(.)− x2(.)‖∞(t− t0),
ou ‖x(.)‖∞ = maxt∈J ‖x(t)‖. Comme J = [a, b], car c’est un intervalle compact de R, on a
‖T (x1(.))− T (x2(.))‖∞ ≤ ‖A(.)‖∞‖x1(.)− x2(.)‖∞(b− a).
Ceci montre en particulier que T est continue. Montrons maintenant par recurrence que l’on a
‖(T p(x1(.))− T p(x2(.)))(t)‖ ≤ ‖A(.)‖p∞(t− t0)p
p!‖x1(.)− x2(.)‖∞ (2.8)
et ‖T p(x1(.))− T p(x2(.))‖∞ ≤‖A(.)‖p∞(b− a)p
p!‖x1(.)− x2(.)‖∞ (2.9)
L’assertion est vraie pour p = 1. Supposons la vraie pour p et montrons la pour p+ 1.
‖(T p+1(x1(.))− T p+1(x2(.)))(t)‖ = ‖(T (T px1(.))− T (T px2(.)))(t)‖
= ‖∫ t
t0
(A(s)(T px1(s)− T px2(s)))ds‖
≤ ‖A(.)‖∞∫ t
t0
‖T px1(s)− T px2(s)‖ds
≤ ‖A(.)‖∞∫ t
t0
‖A(.)‖p∞(s− t0)p
p!‖x1(.)− x2(.)‖∞ds
≤ ‖A(.)‖p+1∞
(t− t0)p+1
(p+ 1)!‖x1(.)− x2(.)‖∞
En prenant le maximum sur t ∈ J on obtient (2.9).Il nous suffit donc de choisir l’entier p de facon a avoir
‖A(.)‖p∞(b− a)p
p!< 1
pour conclure. 2
12 CHAPITRE 2. EQUATIONS DIFFERENTIELLES LINEAIRES
III.3 Resolvante
On considere ici l’equation lineaire homogene
x(t) = A(t)x(t). (2.10)
Theoreme III.2L’ensemble des solutions de l’equation differentielle lineaire et homogene (2.10) E est un espace vectoriel de dimensionn.
DemonstrationLe fait que E soit un espace vectoriel est immediat. Considerons maintenant l’application
Lt0 : Kn −→ Ex0 7−→ x(., t0, x0)
ou x(., t0, x0) est l’unique solution de l’equation differentielle (2.10) verifiant x(t0) = x0. Il est evident que cetteapplication est lineaire. Le theoreme III.1 d’existence et d’unicite de solution implique que cette application est unebijection, d’ou le resultat en ce qui concerne la dimension. 2
Definition III.3 On appelle resolvante de l’equation differentielle lineaire et homogene x(t) = A(t)x(t) l’application
R(t, t0) : Kn −→ Kn
x0 7−→ x(t, t0, x0).
Theoreme III.4(i) On a R(t, t0).x0 = x(t, t0, x0).
(ii) Si le systeme est autonome on a R(t, t0) = e(t−t0)A.
(iii) Pour tout t0 fixe, R(., t0) est la solution du probleme de Cauchy
(IV P8)
X(t) = A(t)X(t)X(t0) = In.
(iv) Pour tout t0, t1 et t2 dans I on aR(t2, t0) = R(t2, t1)×R(t1, t0)
(v) Pour tout t0, t1 dans I on a R(t0, t1) = (R(t1, t0))−1.
(vi) Si A(.) est Ck, alors R(., t0) est Ck+1.
Demonstration
(i) Le theoreme d’existence et d’unicite de solution et la nature de l’equation differentielle x(t) = A(t)x(t),implique que R(t, t0) est une application lineaire et bijective, L’application R(t, t0) est donc un isomorphismede Kn sur Kn et on a x(t, t0, x0) = R(t, t0)x0.
(ii) Evident.
(iii) Dans le probleme (IV P8), X(t) est une matrice (n, n) et In est la matrice identite d’ordre n. La proprieteprovient immediatement du fait que
∂
∂t(R(t, t0)x0) = A(t)(R(t, t0)x0),
et du fait que R(t0, t0) = In par definition.
(iv) Il s’agit tout simplement de la composee de deux applications lineaires.
(v) Il suffit de remarquer que R(t0, t1)×R(t1, t0) = R(t0, t0) = In.
(vi) Cela provient des proprietes des solutions d’une equation differentielle.
2
Theoreme III.5L’application R : I × I →Mn(K) qui a (t, s) associe R(t, s) est continue et de classe Ck+1 si A(.) est de classe Ck.
III. EQUATIONS LINEAIRES 13
DemonstrationOn peut ecrire R(t, s) = R(t, t0) × (R(s, t0))−1. Or l’application R(., t0) : I → Mn(K) est continue car c’est lasolution de (IV P8). On sait de plus que l’application
Φ :Mn(K)×Mn(K) −→ Mn(K)
(A,B) 7−→ AB
est bilineaire et continue et que l’application
inv : GL(Kn) −→ Mn(K)
A 7−→ A−1
est continue.On en deduit par composition des fonctions que R est continue.Si A(.) est Ck, alors R(., t0) est Ck+1. Comme Φ et inv sont C∞, on a, toujours par composition R qui est Ck+1. 2
Exercice III.6Soit R(t, t0) la resolvante de l’equation differentielle lineaire
x(t) = A(t)x(t).
On note ∆(t) = detR(t, t0).
1 On considere l’application
det : GLn(R) −→ R
A 7−→ det(A).
Montrer que det′(A).H = det(A)trace(A−1H)
2 Montrer que ∆(t) est solution du probleme de Cauchy
(IV P )
∆(t) = trace(A(t))∆(t)∆(t0) = 1.
3 En deduire que
det(R(t, t0)) = exp
(∫ t
t0
trace(A(s))ds
).
Corollaire III.7 (Liouville)Si pour tout t, trace(A(t)) = 0, alors det(R(t, t0)) = 1 pour tout t.
On se place ici dans le cas ou le corps K est le corps des reels. Une consequence du corollaire precedent est que sila trace de l’operateur A(t) est constamment nulle, alors l’equation differentielle conserve le volume d’un domaine deRn. En effet, si on note Γ0 un domaine de Rn et Γt son transport de t0 a t par l’equation differentielle, c’est-a-dire
Γt = R(t, t0)x0 ∈ Rn, x0 ∈ Γ0 = R(t, t0)Γ0,
alors en utilisant la formule du changement de variable dans une integrale multiple on a
V ol(Γt) =
∫Γt
dx =
∫Γ0
∣∣∣∣det
(∂x
∂x0(t, t0, x0)
)∣∣∣∣ dx0
=
∫Γ0
|det (R(t, t0))| dx0
= |det(R(t, t0)|V ol(Γ0).
Donc, si trace(A(t)) = 0 pour tout t, V ol(Γt) = V ol(Γ0).
14 CHAPITRE 2. EQUATIONS DIFFERENTIELLES LINEAIRES
III.4 Equations differentielles lineaires avec second membre
Theoreme III.8La solution du probleme de Cauchy lineaire
(IV P9)
x(t) = A(t)x(t) + b(t)x(t0) = x0,
s’ecrit
x(t) = R(t, t0)x0 +
∫ t
t0
R(t, s)b(s)ds. (2.11)
DemonstrationNous allons appliquer la methode de la variation de la constante. Posons z(t) = R(t, t0)v(t), nous avons alors
z(t)(t) =
(d
dtR(t, t0)
)v(t) +R(t, t0)v(t)
= A(t)R(t, t0)v(t) +R(t, t0)v(t)
= A(t)z(t) +R(t, t0)v(t).
Il suffit alors de poser R(t, t0)v(t) = b(t), soit v(t) = R(t0, t)b(t), pour que z verifie l’equation lineaire. Si on pose
maintenant v(t) =∫ tt0R(t0, s)b(s)ds, on obtient pour z une solution qui verifie z(t0) = 0. En conclusion, si on prend
x(t) = R(t, t0)x0 + z(t),
nous aurons bien x(t0) = x0 et
x(t) = A(t)R(t, t0)x0 + z(t)
= A(t)R(t, t0)x0 +d
dt(R(t, t0)v(t))
= A(t)R(t, t0)x0 +A(t)R(t, t0)v(t) +R(t, t0)v(t)
= A(t)(R(t, t0)x0 +R(t, t0)v(t)) + b(t)
= A(t)x(t) + b(t)
Il suffit maintenant d’ecrire
x(t) = R(t, t0)x0 +R(t, t0)
∫ t
t0
R(t0, s)b(s)ds
= R(t, t0)x0 +
∫ t
t0
R(t, t0)R(t0, s)b(s)ds
= R(t, t0)x0 +
∫ t
t0
R(t, s)b(s)ds,
pour conclure. 2
Chapitre 3
Theorie des equations differentielles
I Existence
On s’interesse au probleme de Cauchy suivant
(IV P )
x(t) = f(t, x(t))x(t0) = x0,
ou
f : Ω ⊂ R×Rn −→ Rn
(t, x) 7−→ f(t, x)
Ω ouvert et (t0, x0) ∈ Ω.
Definition I.1 (Fonction localement lipschitzienne) L’application f : Ω ⊂ R × Rn → Rn, Ω ouvert, estlocalement lipschitzienne par rapport a la variable x si et seulement si pour tout (t0, x0) ∈ Ω il existe un voisinageV ∈ V(t0, x0) et une constante k ≥ 0 tels que
∀(t, x1) ∈ V,∀(t, x2) ∈ V, ||f(t, x1)− f(t, x2)|| ≤ k||x1 − x2||.
Theoreme I.2Si f est differentiable par rapport a x et si l’application
∂f
∂x: Ω −→ L(Rn,Rn)
(t, x) 7−→ ∂f
∂x(t, x)
est continue alors f est localement lipschitzienne.
DemonstrationC’est un corollaire du theoreme des accroissements finis (cf. le corallaire 1.3.6 page 17 de [12]). 2
Theoreme I.3 (Theoreme de Cauchy-Lipschitz)Soit f : Ω → Rn, Ω ouvert de R ×Rn, f continue et localement lipschitzienne par rapport a x alors pour tout(t0, x0) ∈ Ω, il existe une unique solution locale au probleme de Cauchy
(IV P )
x(t) = f(t, x(t))x(t0) = x0.
Remarque I.4Par unique solution locale on entend : si (I1, x1) et (I2, x2) sont deux solutions de (IV P ) alors elles coıncident surI1 ∩ I2.
DemonstrationNous allons appliquer le theoreme du point fixe (A.II.2) a l’application
T : E −→ E
x 7−→ T (x),
15
16 CHAPITRE 3. THEORIE DES EQUATIONS DIFFERENTIELLES
Ω
t
Rn
x0
t0 − η|
t0 + η|
t0 − η0|
t0 + η0|
t0|
pente M
r0
x(t)
Figure 3.1 – Cylindre de securite ; x(t) est dans le cylindre de securite [t0 − η0, t0 + η0] × Bf (x0, r0), maisn’est pas dans le cylindre initial [t0 − η, t0 + η] × Bf (x0, r0). Ceci implique que ||ϕ(t, T (x)(t))|| ≤ M pour toutt ∈ [t0 − η0, t0 + η0].
definie par
T (x)(t) = x0 +
∫ t
t0
f(s, x(s))ds.
Il nous faut pour cela construire tout d’abord l’espace metrique complet E, puis montrer que T est bien definie etqu’il existe un entier p pour lequel T p est une contraction.
Definissons donc tout d’abord E. Comme f est localement lipschitzienne, il existe Vf = [t0−η, t0 +η]×Bf (x0, r0)voisinage de (t0, x0) sur lequel f est k−lipschitzienne. f est continue, donc supVf ||f(t, x)|| = M . Si M = 0 alors letheoreme est evident. Si M 6= 0, on pose η0 = min(η, r0/M) et C = [t0 − η0, t0 + η0]× Bf (x0, r0) ; C s’appelle lecylindre de securite (cf. la Fig. 3.1). Posons maintenant E = C0([t0 − η0, t0 + η0], Bf (x0, r0)) et d la distance sur Edefinie par d(x1, x2) = sup[t0−η0,t0+η0] ||x1(t)− x2(t)||. (E, d) est alors un espace metrique complet.
Montrons maintenant que l’application T est bien definie. x est continue, f est continue donc x0+∫ tt0f(s, x(s))ds ∈
Rn existe. Il nous reste a verifier que cette quantite est bien dans Bf (x0, r0) ; c’est ici que nous allons utiliser lecylindre de securite. Mais ceci est immediat car
||T (x)(t)− x0|| = ||∫ t
t0
f(s, x(s))ds|| ≤∫ t
t0
||f(s, x(s))||ds
≤∫ t
t0
Mds = M(t− t0) ≤M(r0/M) = r0.
Pour demontrer la contraction de T p, constatons tout d’abord que
||T (x1)(t)− T (x2)(t)|| ≤∫ t
t0
||f(s, x1(s))− f(s, x2(s))||ds
≤∫ t
t0
k||x1(s)− x2(s)||ds
≤ k(t− t0)|||x1 − x2|||.
Par recurrence on a alors
||T p(x1)(t)− T p(x2)(t)|| ≤ kp(t− t0)p
p!|||x1 − x2|||
d(T p(x1), T p(x2)) ≤ kpηp0p!
d(x1, x2).
Il suffit donc de prendre p tel quekpηp0p! < 1.
I. EXISTENCE 17
Nous avons donc montrer l’existence et l’unicite de la solution dans E. Il reste donc a montrer pour l’uniciteque toute solution definie sur [t0 − η0, t0 + η0] est a valeur dans la boule Bf (x0, r0). Raisonnons par l’absurde etsupposons qu’il existe une solution v telle que
A = t ∈ [t0, t0 + η0], ||v(t)− x0|| > r0 6= ∅
Posons t1 = Inft ∈ A, on a t0 < t1 < t0 + η0, ||v(t1)− x0|| = r0 et v(t) ∈ Bf (x0, r0),∀t ∈ [t0, t1]. Par suite
r0 = ||v(t1)− x0|| ≤∫ t
t0
||f(s, v(s))||ds ≤M(t1 − t0) ≤ r0
Donc r0 = M(t1 − t0) et t1 = t0 + r0/M ≥ t0 + η0 d’ou la contradiction. 2Nous allons maintenant montrer l’unicite d’une solution dite maximale. Pour cela rappelons la
Definition I.5 (ensemble ordonne inductif) Un ensemble ordonne est dit inductif si toute partie totalementordonnee est majoree.
Rappelons aussi le
Lemme I.6 (lemme de Zorn)Tout ensemble ordonne inductif admet un element maximal.
Demonstrationcf. page 24 de [14]. 2
Theoreme I.7L’ensemble des solutions du probleme de Cauchy est ordonnee par la relation d’ordre
(I1, x1) ≤ (I2, x2) ⇐⇒I1 ⊂ I2x2|I1 = x1
et si cet ensemble est non vide alors il est inductif.
DemonstrationLa relation d’ordre est evidente. Montrons que toute partie totalement ordonnee (Iα, xα)α∈A admet un elementmaximal. Posons I = ∪α∈AIα et x : I → Rn la fonction definie par x|Iα = xα. x est bien definie, en effet soit t dansI, alors il existe Iα qui contient t et x(t) = xα(t) ne depend pas le α, si t ∈ Iα ∩ Iβ alors on a (Iα, xα) ≤ (Iβ , xβ) ou(Iβ , xβ) ≤ (Iα, xα), et donc xα(t) = xβ(t)
On a bien evidemment (Iα, xα) ≤ (I, x) il reste donc a montrer que (I, x) est bien une solution.— I est un intervalle. Soit donc (s, t) ∈ I2. Alors il existe Iα et Iβ qui contiennent respectivement s et t. Mais
on a soit Iα ⊂ Iβ , soit Iβ ⊂ Iα, donc soit [s, t] ⊂ Iα ⊂ I, soit [s, t] ⊂ Iβ ⊂ I.— t0 ∈ I et x(t0) = x0.— Pour tout t ∈ I, il existe α tel que t ∈ Iα et x(t) = xα(t), par suite (t, x(t)) ∈ Ω.— Pour tout t ∈ I, il existe α tel que Iα contient t et (Iα, xα) est une solution. Donc x(t) = xα(t) =
x0 +∫ tt0f(s, x(s))ds.
2
Corollaire I.8Sous les hypotheses du theoreme de Cauchy-Lipschitz, toute solution se prolonge en une solution maximale (I, x),cette solution maximale est unique et I est un intervalle ouvert.
DemonstrationL’existence d’une solution maximale vient de l’application du lemme de Zorn et l’unicite du theoreme d’existence etd’unicite de Cauchy-Lipschitz. Pour montrer que I est un intervalle ouvert il suffit de voir que si I =]t0 − η, t0 + η0]on peut la prolonger en t0 + η0 grace au theoreme de Cauchy-Lipschitz. 2
Remarque I.9Le resultat d’exitence et d’unicite d’une solution maximal implique que les courbes solutions x(t, t0, x0) ne peuventse couper, elles sont confondues ou sans point commun, elles forment une partition de l’ouvert Ω (cf. Fig. 3.3).
Exemple I.10On considere le probleme de Cauchy definie sur Ω = R×R
(IV P1)
x(t) = −x2(t)x(t0) = x0.
Pour (t0, x0) fixe on a une unique solution maximale definie sur I =]ω−(t0, x0), ω+(t0, x0)[ qui depend de (t0, x0) :
18 CHAPITRE 3. THEORIE DES EQUATIONS DIFFERENTIELLES
— Si x0 = 0 alors I =]−∞,+∞[;ω−(t0, 0) = −∞, ω+(t0, 0) = +∞ et x(t) = 0 ;— Si x0 > 0 alors I =]t0 − 1/x0,+∞[ et
x(t) =x0
(t− t0)x0 + 1;
— Si x0 < 0 alors I =]−∞, t0 − 1/x0[ et
x(t) =x0
(t− t0)x0 + 1.
Ces resultats sont visualises sur les Fig. 3.2 et 3.3.
−5 −4 −3 −2 −1 0 1 2 3 4 5−2
−1.5
−1
−0.5
0
0.5
1
1.5
2
t
x0
Figure 3.2 – Visualisation de l’ensemble ]ω−(0, x0), ω+(0, x0)[×x0 pour l’exemple x(t) = −x2(t), x(0) = x0.
−5 −4 −3 −2 −1 0 1 2 3 4 5−2
−1.5
−1
−0.5
0
0.5
1
1.5
2
t
x(t
)
Figure 3.3 – Solutions pour le probleme x(t) = −x2(t), x(t0) = x0, les courbes integrales ne peuvent se couper, ellesforment une partition de l’ouvert Ω = R2.
Corollaire I.11Soit f : I ×Rn → Rn, I intervalle ouvert, continue. On suppose qu’il existe une fonction continue k : I → R+ telleque tour tout t fixe l’application f soit localement lipschitzienne par rapport a x de rapport k(t). Alors la solutionmaximale est globale, c’est-a-dire definie sur I.
DemonstrationSoit [t0 − η1, t0 + η2] ⊂ I. Dans la demonstration du theoreme de Cauchy-Lipschitz, prenons r0 = +∞, E =C0([t0 − η1, t0 + η2],Rn), d) et K = max[t0−η1,t0+η2] k(t). f(t, x) est alors lipschitzienne de rapport K sur cetintervalle et si p est tel que (Kp/p!) max(η1, η2)p < 1, alors T p est une contraction. 2
I. EXISTENCE 19
Corollaire I.12On considere le systeme de Cauchy lineaire
(IV P2)
x = A(t)x(t) + b(t)x(t0) = x0.
Si A(t) et b(t) sont definis sur R et continus alors on a existence et unicite de la solution sur I = R. Le resultat esten particulier verifie si le systeme est autonome.
DemonstrationIl suffit de prendre k(t) = ||A(t)||. En effet on a
||f(t, x1)− f(t, x2)|| ≤ ||A(t)(x1 − x2)|| ≤ ||A(t)||.||x1 − x2||.
2
Remarque I.13Le resultat est encore vrai si A(t) est localement integrable.
Theoreme I.14 (Theoreme d’explosion)On suppose f : Ω ⊂ R×Rn → Rn, Ω ouvert, continue derivable par rapport a x et telle que l’application
∂f
∂x: Ω −→ L(Rn,Rn)
(t, x) 7−→ ∂f
∂x(t, x)
soit continue. Soit K un compact contenu dans Ω et (t0, x0) ∈ K, alors il existe η1 et η2 > 0 tels que pour toutt 6∈]t0 − η1, t0 + η2[, (t, x(t, t0, x0)) soit exterieur a K.
DemonstrationNous allons montrer l’existence de η2.
Si ω+(t0, x0) = +∞ alors le resultat est evident car K etant compact, on a K ⊂ [t1, t2]×Bf (x0, R) et donc pourtout t > t2, on aura (t, x(t, t0, x0)) 6∈ K. Supposons donc maintenant que ω+ = ω+(t0, x0) ∈ R. Posons F = Rn+1Ωet ρ = d(K,F ) > 0 et definissons le compact
Kρ/2 = (t, x) ∈ R×Rn, d((t, x),K) ≤ ρ/2.
On a K ⊂ Kρ/2 ⊂ Ω. Considerons maintenant un point (t1, x1) ∈ K, alors l’ensemble Ω(t1, x1) = (t, x) ∈Ω, |t − t1| < η et ||x − x1|| < a avec η2 + a2 ≤ ρ2/4 est un ouvert inclu dans Kρ/2. Or Kρ/2 est un compact,
par suite pour tout (t, x) ∈ Ω(t1, x1), ||f(t, x)|| ≤ M et ||∂f∂x (t, x)|| ≤ k. On peut alors dans la demonstration dutheoreme de Cauchy-Lipschitz prendre r0 = +∞ et η0 = η, ces quantites etant independantes de (t1, x1). Montronsalors que t2 = ω+ − η = t0 + η2 repond a la question. Raisonnons par l’absurde et supposons qu’il existe t ∈]t2, ω+]tel que x(t, t0, x0) soit dans K. Prenons t1 = t et x1 = x(t, t0, x0), la solution du systeme de Cauchy
(IV P3)
x(t) = f(t, x(t))x(t1) = x1
existe alors sur ]t1 − η, t1 + η[. Par consequent la fonction definie par
x(t) =
x(t, t0, x0) si t ∈]ω−, t1[,
x(t, t1, x1) si t ∈ [t1, t1 + η[
est une solution du probleme de Cauchy de depart et t+ η > t2 + η > ω+, ce qui est impossible. 2
Corollaire I.15Si dans le theoreme precedent Ω = R×Rn et ω+(t0, x0) ∈ R alors on a ||x(t, t0, x0)|| → +∞ quand t→ ω+(t0, x0)(cf Fig. 3.3).
Si on suppose seulement que f est continue, alors on peut montrer qu’il existe une solution locale.
Theoreme I.16 (Theoreme de Peano)On suppose que f : Ω → Rn est continue, que ‖f(t, x)‖ est borne par A sur l’ensemble D = (t, x), t0 ≤ t ≤tf et ‖x− x0‖ ≤ b. Si tf − t0 ≤ b/A, alors il existe une sous suite des polygones d’Euler qui converge vers unesolution du probleme de Cauchy.
20 CHAPITRE 3. THEORIE DES EQUATIONS DIFFERENTIELLES
Demonstrationcf. [6] page 42. 2
On peut cependant perdre l’unicite. Par exemple le probleme
(IV P4)
x(t) =
√|x(t)|
x(0) = 0,
admet les solutions x1(t) = 0 et x2(t) = t|t|4 ainsi que
xa(t) =
0 si t ≤ ax2(t− a) si t > a
(cf. la Fig. 3.4).
−5 −4 −3 −2 −1 0 1 2 3 4 5−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
t
x(t
)
Figure 3.4 – Solutions pour le probleme x(t) =√|x(t)|, x(0) = 0.
II Dependances par rapports aux donnees
II.1 Introduction
On s’interesse ici au probleme de Cauchy
(IV P5)
x(t) = f(t, x(t), λ)x(0) = x0,
avec— f : Ω ⊂ R×Rn ×Rp → Rn continue ;— Ω ouvert ;—
∂f
∂x: Ω −→ L(Rn,Rn)
(t, x, λ) 7−→ ∂f
∂x(t, x, λ)
continue.Sous ces hypotheses le probleme de Cauchy
(IV P6)λ
x(t) = f(t, x(t), λ)x(t0) = x0,
admet une solution locale maximale pour tout (t0, x0, λ0) ∈ Ω
x :]ω−(t0, x0, λ0), ω+(t0, x0, λ0)[ −→ Rn
t 7−→ x(t, t0, x0, λ0).
Posons O = (t, t0, x0, λ0) ∈ R× Ω, ω−(t0, x0, λ0) < t < ω+(t0, x0, λ0), l’objectif de cette section est d’etudierles proprietes de continuite et de derivabilite de la fonction
x : O −→ Rn
(t, t0, x0, λ0) 7−→ x(t, t0, x0, λ0).
II. DEPENDANCES PAR RAPPORTS AUX DONNEES 21
II.2 Continuite
Nous allons dans un premier temps considerer la dependance par rapport au parametre λ. Posons ici O =(t, λ) ∈ R×Rp, ω−(λ) < t < ω+(λ). On a alors le
Theoreme II.1Sous les hypotheses de la sous-section precedente
(i) O est un ouvert ;
(ii) x : O → Rn est continue.
Pour demontrer ce theoreme, nous avons besoin du
Lemme II.2Soit u(t) une fonction de R a valeurs dans R continue et α et β deux reels strictement positifs. On suppose que
u(t) ≤∫ t
t0
(αu(s) + β)ds,
alors on a
u(t) ≤ β
α(eα(t−t0) − 1).
DemonstrationPosons v(t) =
∫ tt0
(αv(s) + β)ds, v(t) est la solution du systeme de Cauchy
(IV P7)
x(t) = αx(t) + βx(t0) = 0.
Donc v(t) = (β/α)(eα(t−t0) − 1). Considerons maintenant la suite v0(t) = u(t), . . . , vi(t) =∫ tt0
(αvi−1(t) + β)ds.
Cette suite converge uniformement sur tout compact vers v(t) la solution du probleme a valeur initiale lineaire
(IVP7). Montrons par recurrence que l’on a toujours vi(t) ≤∫ tt0
(αvi(t) + β)ds et vi+1(t) ≥ vi(t). Nous aurons doncmontrer ainsi que
β
α(eα(t−t0) − 1) = v∞(t) ≥ v0(t) = u(t)
Ceci est evident pour i = 0. Supposons donc l’inegalite vraie pour i, alors par hypothese de recurrence
vi+1(t) =
∫ t
t0
(αvi(t) + β)ds ≥ vi(t).
Par suite on a, puisque α et β sont strictement positifs
αvi+1(t) + β ≥ αvi(t) + β.
Et donc ∫ t
t0
(αvi+1(t) + β)ds ≥ vi+1(t).
2
Demonstrationdu theoreme. Le fait que O soit un ouvert est non trivial. Considerons (t∗, λ∗) ∈ O et supposons pour fixer lesidees que t∗ ≥ t0 (le cas t∗ ≤ t0 se traite de la meme maniere). Comme x(t∗, λ∗) existe, on a t∗ < ω+(λ∗). Onpeut donc choisir t∗ < t1 < ω+(λ∗) et x(t, λ∗) est definie pour tout t ∈ [t0, t1]. Definissons alors l’ensemble C =(t, x(t, λ∗), λ∗), t0 ≤ t ≤ t1 ⊂ Ω qui est un compact car c’est l’image du compact [t0, t1] par l’application continuet→ (t, x(t, λ∗), λ∗)). C est un compact de Rn+1, donc il existe un coefficient de Lebesgue ε > 0 du recouvrement Ω(cf. (A.III.1)), c’est-a-dire tel que pour tout (t, x, λ∗) ∈ C, B((t, x, λ∗), ε) ⊂ Ω. Par suite il existe a et b strictementpositifs tels que l’ensemble K = (t, x, λ) ∈ R×Rn ×Rp, t0 ≤ t ≤ t1, ||x− x(t, λ∗)|| ≤ a et ||λ− λ∗|| ≤ b ⊂ Ω.
De plus K est un ferme borne, donc un compact, et f(t, x, λ) est uniformement continue sur K :
∀ε, ∃η,∀(t1, x1, λ1) ∈ K,∀(t2, x2, λ2) ∈ K, ||(t1, x1, λ1)− (t2, x2, λ2)|| < η,⇒ ||f(t1, x1, λ1)− f(t2, x2, λ2)|| < ε.
Considerons maintenant x(t, t0, x0, λ) pour ||λ− λ∗|| < b. Le theoreme d’explosion (I.14) implique que x(., t0, x0, λ)quitte le compact K quand t → ω+(λ). Posons alors t2 = Inft, x(t, t0, x0, λ) 6∈ K. On a bien evidemmentt0 < t2 ≤ t1 par definition de K. Nous allons montrer que t2 = t1.
22 CHAPITRE 3. THEORIE DES EQUATIONS DIFFERENTIELLES
||x(t, t0, x0, λ)− x(t, t0, x0, λ∗)|| ≤
∫ t
t0
||f(s, x(s, t0, x0, λ), λ)− f(s, x(s, t0, x0, λ∗), λ∗)||ds
Or
||f(s, x(s, t0, x0, λ), λ)− f(s, x(s, t0, x0, λ∗), λ∗)||
≤ ||f(s, x(s, t0, x0, λ), λ)− f(s, x(s, t0, x0, λ∗), λ)||+ ||f(s, x(s, t0, x0, λ
∗), λ)− f(s, x(s, t0, x0, λ∗), λ∗)||
≤ k||x(t, t0, x0, λ)− x(t, t0, x0, λ∗)|| car f(t, x, λ) est Lipschitz par rapport a x
+ ε uniforme continuite.
Par suite
||x(t, t0, x0, λ)− x(t, t0, x0, λ∗)|| ≤
∫ t
t0
(k||x(t, t0, x0, λ)− x(t, t0, x0, λ∗)||+ ε)ds.
Donc en posant u(t) = ||x(t, t0, x0, λ)− x(t, t0, x0, λ∗)|| dans le lemme (II.2) on obtient
u(t) = ||x(t, t0, x0, λ)− x(t, t0, x0, λ∗)|| ≤ ε
k(ek(t−t0) − 1) = ε2. (3.1)
Prenons maintenant ρ2 ≤ b, ε2 < a et ||λ− λ∗|| < ρ2, alors (t2, x(t2, t0, x0, λ∗), λ∗) ∈ ∂K par definition de t2, mais
— ||λ− λ∗|| < ρ2 < b ;— ||x(t, t0, x0, λ)− x(t, t0, x0, λ
∗)|| ≤ ε2 < a.Il faut donc que t2 = t1. En conclusion pour t∗ ≥ t0, il existe t2 > t∗ et ρ2 > 0 tels que pour tout t, t0 ≤ t ≤ t2 ettout λ, ||λ− λ∗|| ≤ ρ2, x(t, t0, x0, λ) existe et donc (t, λ) ∈ O. Par une demonstration identique on peut construiret1 < t∗ et donc un ouvert ]t1, t2[×B(λ∗, ρ) ⊂ O. On en deduit que O est bien un ouvert. Quant-a la continuite, elleprovient immediatement de (3.1). 2
Theoreme II.3Sous les hypotheses de la sous-section precedente
(i) les fonctions ω− : (t0, x0, λ0) → ω−(t0, x0, x0) et ω+ : (t0, x0, λ0) → ω+(t0, x0, x0) sont respectivementsemi-continue inferieurement et semi-continue superieurement ;
(ii) O est un ouvert ;
(iii) x : O → Rn est continue ;
(iv) si f est independante de λ, (t0, x0) ∈ Ω ⊂ R ×Rn et si ω−(t0, x0) < a < b < ω+(t0, x0), alors pour toutr > 0, il existe s > 0 et M ≥ 0 tels que pour tout (t1, x1) verifiant t1 ∈ [a, b] et ‖x1 − x(t1, t0, x0)‖ ≤ s, onait ω−(t1, x1) < a < b < ω+(t1, x1) et pour tout t ∈ [a, b]
‖x(t, t1, x1)− x(t, t0, x0)‖ ≤ r≤M |t1 − t0|+M‖x1 − x0‖
Demonstrationcf. [13] page 344 ou [9] 2
Remarque II.4On suppose f independante de λ, f : Ω ∈ R×Rn → Rn, et on considere t0 < t1. On pose
O0 = x0 ∈ Rn, (t0, x0) ∈ Ω, t1 < ω+(t0, x0)O1 = x1 ∈ Rn, (t1, x1) ∈ Ω, ω−(t1, x1) < t0.
Dire que x0 ∈ O0, c’est dire que l’intervalle de definition de x(t, t0, x0) contient t1, le point x(t1, t0, x0) appartientalors a O1. Ces ensembles O0 et O1 sont des ouverts et l’application
R(t0, t1) : O0 −→ O1
x0 7−→ x(t1, t0, x0)
est un homeomorphisme (cf. la figure 3.5).
II. DEPENDANCES PAR RAPPORTS AUX DONNEES 23
t_0 t_f
[]
O0
[]
O1
t
x(t
)
Figure 3.5 – Homeomorphisme entre O0 et O1.
II.3 Derivee
On suppose dans cette sous-section que Λ = Rp.
Theoreme II.5Soit f : Ω ⊂ R×Rn ×Rp → Rn, Ω ouvert, f continue. On suppose que f admet des derivees partielles continuespar rapport a x et λ
∂f
∂x: Ω→Mn(R)
∂f
∂λ: Ω→M(n,p)(R).
Alors, la fonction x : O → E est de classe C1. Elle est de classe Ck+1, 1 ≤ k ≤ ∞, si f est de classe Ck. De plus
(i) La fonction ∂x∂x0
(., t0, x0, λ0) :]ω−(t0, x0, λ0), ω+(t0, x0, λ0)[→Mn(R) est la solution au probleme de Cauchylineaire
(V AR8) 1
X(t) = A(t)X(t)X(t0) = In,
ou A(t) = ∂f∂x (t, x(t, t0, x0, λ0), λ0) ∈Mn(R) et In est la matrice identite d’ordre n.
(ii) La fonction ∂x∂t0
(., t0, x0, λ0) :]ω−(t0, x0, λ0), ω+(t0, x0, λ0)[→ Rn est la solution au probleme de Cauchylineaire
(V AR9)
x(t) = A(t)x(t)x(t0) = −f(t0, x0, λ0).
(iii) La fonction ∂x∂λ0
(., t0, x0, λ0) :]ω−(t0, x0, λ0), ω+(t0, x0, λ0)[→Mn,p(R) est la solution au probleme de Cauchylineaire
(V AR10)
X(t) = A(t)X(t) +B(t)X(t0) = 0,
avec B(t) = ∂f∂λ (t, x(t; t0, x0, λ0), λ0) ∈Mn,p(R).
DemonstrationSupposons que l’on ait la derivabilite alors, puisque nous avons par definition
x(t, t0, x0, λ0) = x0 +
∫ t
t0
f(s, x(s, t0, x0, λ0), λ0)ds,
nous pouvons ecrire grace aux theoremes classiques du calcul integral
∂x
∂x0(t, t0, x0, λ0) = I +
∫ t
t0
∂f
∂x(s, x(s, t0, x0, λ0), λ0)
∂x
∂x0(s, t0, x0, λ0)ds.
D’ou le resultat.Les autres formules s’obtiennent de facon similaire. Pour une demonstration complete du theoreme nous renvoyons
a [13] page 350 ou [9] 2
1. Equations variationnelles.
24 CHAPITRE 3. THEORIE DES EQUATIONS DIFFERENTIELLES
Deuxieme partie
Integration numerique
25
Chapitre 4
Introduction
I Introduction
L’objectif de cette partie est d’etudier les algorithmes numeriques utilises dans les programmes actuels, enparticulier les programmes Ode45 de Matlab [11] et Dopri5 du professeur Hairer [6].
II Exemples
II.1 Exemple 1
(IV P )
x1(t) = x1(t) + x2(t) + sin tx2(t) = −x1(t) + 3x2(t)x1(0) = −9/25x2(0) = −4/25.
La solution est
x1(t) = (−1/25)(13 sin t+ 9 cos t)
x2(t) = (−1/25)(3 sin t+ 4 cos t).
Sur cet exemple on constate que si on utilise les valeurs des parametres par defauts dans les codes d’integrationsnumeriques on peut tres rapidement obtenir des resultats faux. Par exemple sur la Fig. 4.1, la solution calculee pourles valeurs par defauts des parametres RelTol et AbsTol de Ode45 n’est pas du tout periodique.
0 2 4 6 8−600
−500
−400
−300
−200
−100
0
100
t
x(t)
RelTol=10−3
, AbsTol=10−6
0 2 4 6 8−2.5
−2
−1.5
−1
−0.5
0
0.5
1
t
x(t)
RelTol=10−6
, AbsTol=10−9
0 2 4 6 8−1
−0.5
0
0.5
1
t
x(t)
RelTol=10−10
, AbsTol=10−15
0 2 4 6 8−1
−0.5
0
0.5
1
Solution
t
x(t)
Figure 4.1 – Solutions calculees avec Ode45, RelTol=10−3 et AbsTol=10−6, RelTol=10−6 et AbsTol=10−9,
RelTol=10−10 et AbsTol=10−15 et solution exacte
27
28 CHAPITRE 4. INTRODUCTION
II.2 Modele de Lorenz
(IV P )
x1(t) = −σx1(t) + σx2(t)x2(t) = −x1(t)x3(t) + rx(t)− x2(t)x3(t) = x1(t)x2(t)− bx3(t)x1(0) = −8x2(0) = 8x3(0) = r − 1,
avec σ = 10, r = 28, b = 8/3. La solution est visualisee sur la figure 4.2.
0 10 20 30 40 50 60 70 80 90 100−20
−10
0
10
20
t
x1(t)
−20 −10 0 10 20−25
−20
−15
−10
−5
0
5
10
15
20
25
x 1(t )
x2(t)
−20 −10 0 10 200
5
10
15
20
25
30
35
40
45
50
x 1( t )
x3(t)
Figure 4.2 – Solutions pour le probleme de Lorentz.
II.3 Exemple de Roberston
On considere la reaction chimique
A0.04−→ B (lente),
B +B3.107
−→ C +B (tres rapide),
B + C104
−→ B (rapide).
Le systeme differentiel associe a cette reaction chimique, qui est un exemple de probleme raide 1, est donnee par
(IV P )
x1(t) = −0.04x1(t) + 104x2(t)x3(t)x2(t) = 0.04x1(t)− 104x2(t)x3(t) −3.107x2
2(t)x3(t) = 3.107x2
2(t)x1(0) = 1x2(0) = 0x3(0) = 0,
et la solution calculee par les deux programmes Ode45 et Ode15s sont visualisees sur la figure 4.3.
1. stiff problem en anglais.
II. EXEMPLES 29
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.50
0.5
1
1.5
2
2.5
3
3.5
4x 10
−5
t
x2(t)
Figure 4.3 – Solutions numerique pour le probleme raide obtenues par une methode classique (Ode45) et par unemethode pour les equations differentielles raides (Ode15s)
30 CHAPITRE 4. INTRODUCTION
Chapitre 5
Les methodes de Runge-Kutta
I Introduction
Exemple I.1 (Orbite d’Arenstorf)On considere deux corps de masses (1− µ) et µ en rotation circulaire dans le plan, et un troisieme corps de masse
negligeable dont on souhaite etudier le mouvement x(t) = (x1(t), x2(t))T en fonction de l’attraction des 2 autrescorps dans le meme plan. Les equations du mouvement sont
(IV P )
x1(t) = x1(t) + 2x2(t)− µ′ x1(t)+µr31(t)
− µx1(t)−µ′r32(t)
x2(t) = x2(t)− 2x1(t)− µ′ x2(t)r31(t)
− µx2(t)r32(t)
r1(t) =√
(x1(t) + µ)2 + x22(t)
r2(t) =√
(x1(t)− µ′)2 + x22(t)
x1(0) = 0.994x1(0) = 0x2(0) = 0x2(0) = −2.00158510637908252240537862224,
avec µ = 0.012277471 et µ′ = 1−µ. La solution est alors periodique de periode tf = T = 17.0652165601579625588917206249.Elle est visualisee sur la figure 5.1.
−2 −1.5 −1 −0.5 0 0.5 1 1.5 2−1.5
−1
−0.5
0
0.5
1
1.5
2
2.5
x 1(t )
x2(t)
TerreLune
point initial
Euler
RK4
ode45
Figure 5.1 – Orbite d’Arenstorf calculee avec Euler (24000 pas equidistants), Rk4 (6000 pas equidistants) etOde45 (64 pas variables), cf. [6] page 130. Le professeur Ernst Hairer est ne en 1949 et est le pere de MartinHairer, medaille Fields 2014.
31
32 CHAPITRE 5. LES METHODES DE RUNGE-KUTTA
II Definitions et exemples
On desire calculer la solution sur l’intervalle I = [t0, tf ] du probleme de Cauchy
(IV P )
x(t) = f(t, x(t))x(t0) = x0.
On considere pour cela une subdivision t0 < t1 < . . . < tN = tf de I. On note hi = ti+1 − ti, i = 0, N − 1, lespas, et hmax = maxi(hi). Nous allons calculer successivement les valeurs approchees x1, . . . , xN de x(t1), . . . , x(tN ).
Definition II.1 (Methodes a un pas explicite) On appelle methode a un pas explicite toute methode pourlaquelle la valeur de xi+1 est calculee de facon explicite en fonction de ti, xi et hi :
xi+1 = xi + hiΦ(ti, xi, hi). (5.1)
Remarque II.2Pour simplifier les notations, nous n’ecrirons dans la suite que le premier pas
x1 = x0 + hΦ(t0, x0, h).
Definition II.3 (Schema d’Euler (1768)) On appelle methode d’Euler explicite le schema
x1 = x0 + hf(t0, x0). (5.2)
Remarque II.4Le shema d’Euler explicite est tout simplement une approximation de l’integrale
∫ t1t0f(s, x(s))ds par hf(t0, x0).
Exemple II.5
(IV P )
x(t) = t2 + x2(t)x(−1.5) = −1.4
−1.5 −1 −0.5 0 0.5 1 1.5−1.5
−1
−0.5
0
0.5
1
1.5
2
2.5
3
t
x(t)
h=1/2
h=1/4
h=1/8
solution
Figure 5.2 – Schema d’Euler, h = 1/2, 1/4, 1/8.
L’idee evidente pour ameliorer la precision numerique est d’approcher cette integrale par une formule dequadrature ayant un ordre plus eleve. Si on exploite, pour ameliorer l’approximation de l’integrale, le point milieu,nous obtenons
x(t1) ≈ x0 + hf(t0 +h
2, x(t0 +
h
2)).
Mais on ne connaıt pas la valeur de x(t0 + h2 ), d’ou l’idee d’approximer cette quantite par un pas d’Euler :
x(t0 + h/2) ≈ x0 + h2 f(t0, x0). Nous obtenons ainsi le schema de Runge.
Definition II.6 (Schema de Runge (1895) )
x1 = x0 + hf(t0 +h
2, x0 +
h
2f(t0, x0)). (5.3)
III. METHODES DE RUNGE-KUTTA EXPLICITE 33
III Methodes de Runge-Kutta explicite
III.1 Definition
Definition III.1 (Methode de Runge-Kutta explicite) On appelle methode de Runge-Kutta explicite a setages, la methode definie par le schema
k1 = f(t0, x0)k2 = f(t0 + c2h, x0 + ha21k1)...
ks = f(t0 + csh, x0 + h∑s−1i=1 asiki)
x1 = x0 + h∑si=1 biki
(5.4)
ou les coefficients ci, aij et bi sont des constantes qui definissent precisement le schema. On supposera toujours dans
la suite que c1 = 0 et ci =∑i−1j=1 aij pour i = 2, . . . , s.
On represente en pratique ce schema par le tableau de Butcher[3], cf. la table 5.1.
c1c2 a21
c3 a31 a32
......
.... . .
cs as1 as2 . . . ass−1
b1 b2 . . . bs−1 bs
Table 5.1 – Tableau de Butcher (ne en 1933).
Exemple III.2On considere par exemple les schemas
01
01/2 1/2
0 1
01/3 1/32/3 0 2/3
1/4 0 3/4Euler (ordre 1) Runge (ordre 2) Heun (ordre3)
01/2 1/21/2 0 1/21 0 0 1
1/6 2/6 2/6 1/6
01/3 1/32/3 −1/3 11 1 −1 1
1/8 3/8 3/8 1/8La methode Rk4 (ordre 4) Rk4, regle 3/8 (ordre 4)
Table 5.2 – Schemas de Runge-Kutta classiques.
Exercice III.3On considere le schema de Heun, cf. la table 5.2.
1 Ecrire le schema de Runge-Kutta correspondant.
2 Donner explicitement Φ(t0, x0, h).
34 CHAPITRE 5. LES METHODES DE RUNGE-KUTTA
III.2 Ordre
Rappelons tout d’abord les notations de Landau
Definition III.4 (Notations de Landau) (i) L’equation (5.5) ci-apres signifie qu’il existe un voisinage Ude 0 et il existe une constante C telle que pour tout h ∈ U on a ‖e(h)‖ ≤ C|h|p.
e(h) = O(hp) (5.5)
(ii) L’equation (5.6) ci-apres signifie qu’il existe une fonction ε(h) a valeurs reelles telle que ‖e(h)‖ = |h|pε(h)avec ε(h)→ 0 quand h→ 0.
e(h) = o(hp) (5.6)
Definition III.5 (Ordre) On dit d’une methode a un pas est d’ordre p ≥ 1 si, pour tout probleme de Cauchy avecf suffisamment derivable, l’erreur sur un pas, appelee erreur locale satisfait
e(h) = x1 − x(t1, t0, x0) = O(hp+1), (5.7)
ou x1 est la valeur calculee par le schema et x(t1, t0, x0) est la valeur exacte du probleme de Cauchy avec la valeurinitiale x(t0) = x0.
Remarque III.6Attention, un schema d’ordre p a une erreur locale en O(hp+1). Nous verrons au corollaire (III.17) que c’est l’erreurglobale xN − x(tf , t0, x0) qui est en O(hpmax).
Exemple III.7Le schema d’Euler explicite est d’ordre p = 1 car par definition de la derivee on a
x(t1) = x(t0 + h) = x0 + hx(t0) +O(h2) = x0 + hf(t0, x0) +O(h2)
= x1 +O(h2).
Nous allons maintenant etudier les relations que doivent verifier les coefficients aij , bi et ci pour qu’un schemade Runge-Kutta explicite a 2 etages soit d’ordre 2. Pour cela nous allons comparer les developpements de Taylor al’ordre 2 de x1 et de x(t1, t0, x0). Pour x1, nous avons
k1 = f(t0, x0)
k2 = f(t0 + c2h, x0 + a21hk1)
x1 = x0 + h(b1k1 + b2k2)
= x0 + h(b1f(t0, x0) + b2f(t0 + c2h, x0 + a21hf(t0, x0)))
= x0 + h(b1 + b2)f(t0, x0) + h2b2(c2ft(t0, x0) + a21fx(t0, x0)f(t0, x0)) +O(h3).
Quand a la solution exacte sur un pas, nous avons
x(t0 + h, t0, x0) = x0 + hx(t0) +h2
2x(t0) +O(h3)
= x0 + hf(t0, x0) +h2
2(ft(t0, x0) + fx(t0, x0)f(t0, x0)) +O(h3).
Par suite en identifiant les termes des coefficients des puissances de h et en utilisant c2 = a21, on peut voir que leschema sera d’ordre deux si et seulement si on a
b1 + b2 = 1 et b2a21 =1
2.
Si on considere la methode de Runge de la table 5.2, on voit qu’elle est d’ordre 2.
Exercice III.8On considere le schema de Runge-Kutta explicite a 3 etages
0c2 a21
c3 a31 a32
b1 b2 b3
avec ci =
s∑j=1
aij ,
III. METHODES DE RUNGE-KUTTA EXPLICITE 35
1 Verifier que, dans le cas d’un systeme autonome, les relations que doivent verifier les coefficients pour avoir unschema d’ordre 3 sont
b1 + b2 + b3 = 1b2a21 + b3a31 + b3a32 = 1
2b2a
221 + b3(a2
31 + 2a31a32 + a232) = 1
3b3a32a21 = 1
6
Theoreme III.9Les methodes de Heun et de Runge-Kutta Rk4 de la table 5.2 sont respectivement d’ordre 3 et 4.
Demonstrationcf. [6]. 2
Remarque III.10On demontre que :
— p = 4 est possible pour s = 4 et que l’on a 8 conditions ;— pour avoir p = 5, il faut que s ≥ 6 ;— pour avoir p = 8, il faut s ≥ 11 et il y a 200 conditions ;— pour p = 10, il y a 1205 conditions.
III.3 Convergence
Definition III.11 (Erreur de consistance ) Soit x(., t0, x0) la solution du probleme de Cauchy a valeur initialex(t0) = x0. L’erreur de consistance ei+1 est l’erreur locale en ti+1 obtenue par le schema a un pas en partant de lasolution a l’instant ti (cf. Fig. 5.3).
ei+1 = x(ti+1, t0, x0)− xi+1 =
∫ ti+1
ti
f(s, x(s))ds− hiΦ(ti, x(ti, t0, x0), hi). (5.8)
t i t i+1
x(t i)
x i+1
x(t i+1, t i, x(t i))← e i+ 1
x(t)
Figure 5.3 – Erreur de consistance du schema d’Euler.
Definition III.12 On dit qu’une methode a un pas est consistante avec l’equation differentielle x(t) = f(t, x(t)) sipour toute solution x de l’equation differentielle on a
N−1∑i=0
‖ei‖ =
N−1∑i=0
‖x(ti+1, t0, x0)− x(ti, t0, x0)− hiΦ(ti, x(ti, t0, x0), hi)‖ → 0, (5.9)
lorsque hmax = maxi(hi)→ 0.
36 CHAPITRE 5. LES METHODES DE RUNGE-KUTTA
Definition III.13 (Methode stable) On dit qu’une methode a un pas est stable si et seulement si il existe uneconstante S independante de h telle que pour toutes suites
xi+1 = xi + hiΦ(ti, xi, hi) 0 ≤ i ≤ N − 1 (5.10)
xi+1 = xi + hiΦ(ti, xi, hi) + εi+1 0 ≤ i ≤ N − 1, (5.11)
on ait
max0≤i≤N
‖xi − xi‖ ≤ S(‖x0 − x0‖+
N∑i=1
‖εi‖). (5.12)
Definition III.14 Une methode a un pas est convergente si pour toute solution exacte x(., t0, x0), la suite (xi)idefinie par xi+1 = xi + hiΦ(ti, xi, hi) verifie
max0≤i≤N
‖x(ti, t0, x0)− xi)‖ → 0, (5.13)
lorsque x0 → x(t0) et hmax → 0.
Remarque III.15La quantite max0≤i≤N ‖x(ti, t0, x0)− xi)‖ dans l’equation (5.13) est l’erreur globale.
Calculons cette erreur globale. Posons xi = x(ti, t0, x0). Par definition de l’erreur de consistance on a
xi+1 = xi + hiΦ(ti, xi, hi) + ei+1.
Si la methode est stable, nous en deduisons que
max0≤i≤N
(‖x(ti, t0, x0)− xi‖) ≤ S(‖x0 − x0‖+∑
1≤i≤N
‖ei‖).
Nous en deduisons le theoreme
Theoreme III.16Si la methode est stable et consistante, alors, elle est convergente.
Corollaire III.17Si la methode est stable, consistante, d’ordre p et si x0 = x0 alors l’erreur globale est en O(hp).
DemonstrationIl suffit d’ecrire (cf. Fig 5.4) que
max0≤i≤N
‖x(ti, t0, x0)− xi‖ ≤ S∑
0≤i≤N−1
‖ei+1‖
≤ S∑
0≤i≤N−1
Chp+1i
≤ SC(hmax)p∑
0≤i≤N−1
hi
≤ SC(tf − t0)(hmax)p
2
Theoreme III.18Une methode a un pas est consistante si et seulement si
∀(t, x) ∈ [t0, tf ]×Rn,Φ(t, x, 0) = f(t, x).
DemonstrationPar definition, nous avons
ei+1 = x(ti+1, t0, x0)− x(ti, t0, x0)− hiΦ(ti, x(ti, t0, x0), hi).
Le theoreme des accroissements finis applique a x(t) sur l’intervalle [ti, ti+1] implique qu’il existe ci ∈]ti, ti+1[ tel que
x(ti+1, t0, x0)− x(ti, t0, x0) = hix(ci) = hif(ci, x(ci)).
III. METHODES DE RUNGE-KUTTA EXPLICITE 37
x(t)
← e 0
t 0
← e 1
← S e 0
t 1
← e 2
← S e 1
t 2 t 3
x0
← e 0
t 0
← e 1
t 1
← e 2 = S e 2
t 2
← S e 0
← S e 1
x0
x(t)
Figure 5.4 – Convergence, attention l’erreur de consistance et la propagation des erreurs sont visualisees sur legraphique de droite et non de gauche.
Par suite, nous pouvons ecrire
ei+1 = hi(f(ci, x(ci))− Φ(ti, x(ti, t0, x0), hi)) = hi(αi + βi)
αi = f(ci, x(ci))− Φ(ci, x(ci), 0)
β = Φ(ci, x(ci), 0)− Φ(ti, x(ti, t0, x0), hi).
Or la fonction (t, h)→ Φ(t, x(t), h) est continue. Elle est donc uniformement continue sur le compact [t0, tf ]× [0, δ],et donc pour tout ε > 0, il existe η > 0, tels que hmax ≤ η(⇒ |ci − ti| < η)⇒ ‖βi‖ < ε.
|N−1∑i=0
(‖ei+1‖ − hi‖αi‖)| ≤N−1∑i=0
|‖ei+1‖ − hi‖αi‖|
≤N−1∑i=0
‖ei+1 − hiαi‖
≤N−1∑i=0
‖hiβi‖ ≤ ε(tf − t0)
Par suite, si les limites existent, on a limhmax→0
∑Ni=1 ‖ei‖ = limhmax→0
∑N−1i=0 hi‖αi‖. Or, par definition de l’integrale
de Riemann, nous avons∫ tf
t0
‖f(t, x(t))− Φ(t, x(t), 0)‖dt = limhmax→0
∑i
hi‖f(ξi, x(ξi))− Φ(ξi, x(ξi), 0)‖,
ξi ∈ [ti, ti+1]. Donc la methode est consistante si et seulement si∫ tf
t0
‖f(t, x(t))− Φ(t, x(t), 0)‖dt = 0
⇐⇒ f(t, x(t)) = Φ(t, x(t), 0).
2
Theoreme III.19 (Condition suffisante de stabilite)Pour que la methode a un pas explicite soit stable il suffit que Φ soit Lipchitzienne en x : il existe Λ tel que pour
tout t ∈ [t0, tf ], h ≥ 0 et pour tout (x1, x2) ∈ R2 on ait
‖Φ(t, x1, h)− Φ(t, x2, h)‖ ≤ Λ‖x1 − x2‖.
On peut alors prendre comme constante de stabilite S = eΛ(tf−t0).
38 CHAPITRE 5. LES METHODES DE RUNGE-KUTTA
Lemme III.20 (Lemme de Gronwall)Soient (hi)i, (θi)i et (εi)i des suites telles que
θi+1 ≤ (1 + Λhi)θi + |εi+1|, (5.14)
alors
θi ≤ eΛ(ti−t0)θ0 +
i−1∑k=0
eΛ(ti−tk+1)|εk+1|. (5.15)
DemonstrationDemontrons le resultat par recurrence. Pour i = 0, l’inegalite (5.15) devient θ0 ≤ θ0. Pour i = 1, l’inegalite (5.14)s’ecrit θ1 ≤ (1 + Λh0)θ0 + |ε1|. Il suffit alors de remarquer que (1 + Λh0) ≤ eΛ(t1−t0) pour conclure.
Supposons donc maintenant que l’assertion soit vraie pour i− 1 et montrons la pour i.
θi+1 ≤ (1 + Λhi)θi + |εi+1|
≤ eΛ(ti+1−ti)(eΛ(ti−t0)θ0 +
i−1∑k=0
eΛ(ti−tk+1)|εk+1|) + |εi+1|
≤ eΛ(ti+1−t0)θ0 +
i∑k=0
eΛ(ti+1−tk+1)|εk+1|.
2
Demonstrationdu theoreme III.19. On considere les deux suites
xi+1 = xi + hiΦ(ti, xi, hi)
xi+1 = xi + hiΦ(ti, xi, hi) + εi+1.
Comme Φ est Lipchitzienne par rapport a la variable x, nous avons
‖xi+1 − xi+1‖ ≤ ‖xi − xi‖+ hiΛ‖xi − xi‖+ ‖εi+1‖
Posons θi = ‖xi − xi‖, le lemme de Gronwall III.20 implique alors que
θi ≤ eΛ(ti−t0)θ0 +
i−1∑k=0
‖εk+1‖.
Mais ti − t0 ≤ tf − t0 et ti − tk+1 ≤ tf − t0, ce qui donne
max0≤i≤N
(θi) ≤ eΛ(tf−t0)(θ0 +
N−1∑k=0
‖εk + 1‖).
2
En conclusion lorsque le pas est constant, si nous notons nfe = Ns le nombre total d’evaluations du deuxiememembre f(t, x) de l’equation differentielle, l’erreur globale en tf pour une methode a un pas explicite d’ordre pstable et consistante s’ecrit
err = Chp
= C(tf − t0)psp(nfe)−p
= C(p)(nfe)−p.
Soit, en passant au logarithme en base 10
log10(err) = log10(C(p))− p log10(nfe).
Ceci est illustre, pour l’equation Van der Pol (cf. page 140 de [6])
(IV P )
x1(t) = x2(t)x2(t) = (1− x2
1(t))x2(t)− x1(t)x1(0) = 2.00861986087484313650940188x2(0) = 0,
avec tf = T = 6.6632868593231301896996820305, sur la Fig. 5.5 ou la pente de la droite est −p.
IV. ERREURS D’ARRONDI 39
2 2.5 3 3.5 4 4.5−12
−10
−8
−6
−4
−2
0
Euler
log10
(nfe)
log
10(e
rre
ur
po
ur
x1)
Runge
Heun
Rk4
2 2.5 3 3.5 4 4.5−12
−10
−8
−6
−4
−2
0
Euler
log10
(nfe)
log
10(e
rre
ur
po
ur
x2)
Runge
Heun
Rk4
Figure 5.5 – Erreur globale, pour chaque composante, en fonction du nombre d’evaluations, pour l’equation de Vander Pol (E. Hairer, S.P. Nørsett and G. Wanner, Tome I, page 140).
IV Erreurs d’arrondi
On considere sur [0, 1] l’equation differentielle ordinaire
(IV P )
x(t) = x(t)x(0) = 1.
Si on considere le schema de Runge on a
(i) Calcul 1
k1 = x0
k2 = x0 + (h/2)x0
x1 = x0 + h(x0 + (h/2)x0)
(ii) Calcul 2 x1 = (1 + h+ h2/2)x0
Donc ei ∼ h3xi/6 d’ou ei ≤ Ch3 avec C = e/6 sur [0, 1]. Par suite
hopt ≥(macheps
2e/6
)1/3
= 6.26 10−6
V Controle du pas
V.1 Introduction
La question qui se pose maintenant est le choix du pas ; sachant qu’un calcul a pas constant est en generalinefficace (cf. Fig 5.1). L’idee est de choisir les pas afin que l’erreur locale soit partout environ egale a une toleranceTol fournie par l’utilisateur. Il faut pour cela avoir une estimation de cette erreur locale.
V.2 Extrapolation de Richardson
Pour simplifier la presentation, nous supposons ici que la dimension de l’equation differentielle est n = 1.
L’idee de Richardson [10] est de calculer 2 pas d’une longueur h d’une methode de Runge-Kutta d’ordre p. Enpartant de x0, on obtient ainsi les valeurs de x1 et de x2. On calcule ensuite un grand pas de longueur 2h et on
40 CHAPITRE 5. LES METHODES DE RUNGE-KUTTA
0 0.5 1 1.5 2 2.5 3
x 10−5
0
1
2
3
4
5x 10
−9
err
eu
r g
lob
ale
0 0.5 1 1.5 2 2.5 3 3.5 4
x 10−6
0
2
4
6
8x 10
−12
h
err
eu
r g
lob
ale
(H
orn
er)
Figure 5.6 – Erreurs globales en fonction du pas h pour le schema de Runge ; en haut x1 = (1 + h+ h2/2)x0 et enbas x1 = x0 + h(x0 + (h/2)x0), hopt = 6.26 10−6, [4] page 218.
obtient une nouvelle quantite x2. L’erreur locale en t1 = t0 + h est e1 = x(t0 + h)− x1 = Chp+1 +O(hp+2). Quant-al’erreur en t2 = t0 + 2h pour la premiere methode elle est elle composee de deux parties
x(t2, t0, x0)− x2 = (x(t2, t0, x0)− x(t2, t1, x1)) + (x(t2, t1, x1)− x2)
= (x(t2, t1, x(t1, t0, x0))− x(t2, t1, x1)) + e2
=∂x
∂x1(t2, t1, x1)e1 + e1ε(e1) + e2
= (I +
∫ t2
t1
∂f
∂x(s, t1, x1)
∂x
∂x1(s, t1, x1)ds)e1 + e1ε(e1) + e2
= (I + h∂φ
∂x(t1, x1) +O(h2))e1 + e2
= (I +O(h))Chp+1 + Chp+1 +O(hp+ 2)
= 2Chp+1 +O(hp+2).
Pour la deuxieme methode on a
e2 = x(t0 + 2h, t0, x0)− x2 = C((2h)p+1) +O(hp+2).
Nous en deduisons alors l’estimation de l’erreur
x(t0 + 2h, t0, x0)− x2 =1
2p(x(t0 + 2h, t0, x0)− x2) +O(hp+1)
=x2 − x2
2p − 1+O(hp+2).
Remarque V.1Si on pose x2 = x2 + x2−x2
2p−1 , l’erreur local est en O(hp+2). Nous pouvons donc ainsi construire a partir d’unemethode d’ordre p, une methode d’ordre p+ 1. Cette methode est implemente en particulier dans le code Odex desprofesseurs Hairer et Wanner[6].
V.3 Methode de Runge-Kutta emboıtees
On considere deux schemas de Runge-Kutta a s etages d’ordre p et p = p − 1 emboıtes, c’est-a-dire avec lesmemes coefficient aij . Nous pourrons alors par difference estimer l’erreur locale
e1 ∼ x1 − x1 = (x1 − x(t1, t0, x0)) + (x(t1, t0, x0)− x1) = O(hp+1) +O(hp+1) = O(hp+1)
= Chp+1.
V. CONTROLE DU PAS 41
Exemple V.2 (Methode de Runge-Kutta emboıtees Rk2(1))
01/2 1/2
0 11 0
k1 = f(t0, x0)
k2 = f(t0 + h/2, x0 + h/2k1)
x1 = x0 + hk2 Runge
x1 = x0 + hk1 Euler
estimation de l’erreur locale : ||x1 − x1|| = h||k2 − k1||
Exemple V.3 (Methode de Runge-Kutta emboıtees Rk4(3))
01/3 1/32/3 −1/3 11 1 −1 11 1/8 3/8 3/8 1/8
1/12 1/2 1/4 0 1/6
k1 = f(t0, x0)
k2 = f(t0 + h/3, x0 + (h/3)k1)
k3 = f(t0 + 2h/3, x0 + h(−k1/3 + k2))
k4 = f(t+ h, x0 + h(k1 − k2 + k3))
x1 = x0 + (h/8)(k1 + 3k2 + 3k3 + k4) O(h5)
x1 = x0 + (h/12)(k1 + 6k2 + 3k3 + 2f(t0 + h, x1)) O(h4)
L’idee est alors d’accepter le pas si ||x1 − x1|| < Tol. La norme choisie est en generale
||x1 − x1|| =
√√√√ 1
n
∑i
(xi1 − xi1
1 + max(|xi0|, |xi1|)
)2
.
On peut aussi ecrire ceci err < 1, ou
err =
√√√√ 1
n
∑i
(xi1 − xi1sci
)2
et sci = Tol + Tolmax(|xi0|, |xi1|). En pratique on prend sci = Atoli +Rtoli max(|xi0|, |xi1|).
Remarque V.4— Si Rtoli = 0, on a pour cette composante une erreur locale absolue.— Si Atoli = 0 on a pour cette composante une erreur locale relative.— Dans Ode45 Rtol est un scalaire et Atol est un vecteur.— Dans Dopri5 Rtol et Atol sont des vecteurs.
Il nous reste maintenant a determiner la mise a jour du pas. Comme||x1 − x1|| ≈ Chp+1, et que l’on veut
Chp+1opt = Tol, on peut estimer que C = Tol
hp+1opt
. On en deduit que hopt = 0.9h(
Tol||x1−x1||
)1/(p+1)
= 0.9h(
1err
)1/(p+1).
Le coefficient 0.9 est un coefficient de securite. Afin d’eviter de plus des variations brusques du pas on imposera enpratique que 0.2 ≤ hopt ≤ 5h.En conclusion on obtient l’algorithme suivant.
Algorithme V.5 (Controle du pas)Calculer les sci = Atoli +Rtoli max(|xi0|, |xi1|)
42 CHAPITRE 5. LES METHODES DE RUNGE-KUTTA
Calculer
err = ||x1 − x1|| =
√√√√ 1
n
n∑i=1
(xi1 − xi1sci
)2
si err < 1 alorsLe pas est accepte
fin siCalculer le nouveau pas : h = hmin(5,max(0.2, 0.9 p+1
√1/err))
si t+ h > tf alorsh = tf − t
fin si
Quand au pas initiale, nous donnons ci-apres l’algorithme implemente dans Dopri5.
Algorithme V.6 (Pas initial Dopri5)Ici sci = Atol +Rtol|xi| et ||x|| =
√∑ni=1( xisci )
2.
Calcul d’un premier pas d’Eulerk0 = f(t0, x0), d0 = ||x0||, d1 = ||k0||h0 = 0.01d0d1 le pas est petit par rapport a la solutionsi d0 < 10−5 ou d1 < 10−5 alorsh0 = 10−6
fin sih0 = min(hmax, h0)x1 = x0 + h0k0 pas d’EulerEstimation de la derivee secondek1 = f(t0 + h0, x1)d2 = ||k1 − k0||/h0
si max(d1, d2) < 10−15 alorsh1 = max(10−6, 10−3h0)
sinonh1 = (0.01/max(d1, d2))1/p h1 tel que hp+1
1 max(d1, d2) = 0.01fin sih = min(100h0, h1, hmax)
Illustrons maintenant cet algorithme sur l’equation du Brusselator
(IV P )
x1(t) = 1 + x2
1(t)x2(t)− 4x1(t)x2(t) = 3x1(t))− x2
1(t)x2(t)x1(0) = 1.5x2(0) = 3,
La Fig. 5.7 donne pour tf = 20 la solution calculee, les pas acceptes et rejetes et les erreurs commises.
Exemple V.7 (Methode de Runge-Kutta emboıtees Rk3(2))Paires de Bogacki-Shampine utilises dans Ode23 de Matlab.
01/2 1/23/4 0 3/4
2/9 1/3 4/97/24 1/4 1/3 1/8
k1 = f(t0, x0)
k2 = f(t0 + h/2, x0 + h/2k1)
k3 = f(t0 + 3/4h, x0 + 3/4hk2)
x1 = x0 + h(2/9k1 + 3/9k2 + 4/9k3) O(h4)
x1 = x0 + h(7/24k1 + 1/4k2 + 1/3k3 + 1/8f(t1, x1)) O(h3)
estimation de l’erreur locale : ||x1 − x1|| = (h/72)|| − 5k1 + 6k2 + 8k3 − 9f(t1, x1)||
VI. LES METHODES DE RUNGE-KUTTA IMPLICITES 43
0 2 4 6 8 10 12 14 16 18 200
2
4
6
x1 e
t x
2
0 2 4 6 8 10 12 14 16 18 2010
−2
10−1
100
pa
s
pas acceptés
pas rejetés
0 2 4 6 8 10 12 14 16 18 2010
−6
10−4
t
err
eu
rs
erreur local estimée
erreur locale "exacte"
erreur globale "exacte"
Figure 5.7 – Solutions, pas acceptes et rejetes, erreurs locales estimes, ”exactes” et erreurs globales ”exactes”.L’integration est effectuee avec rk34 (regle 3/8 pour l’ordre 4) et les solutions ”exactes” sont calculees avec ode45,E. Hairer, S.P. Nørsett and G. Wanner, Tome I, page 170.
Exemple V.8 (Methode de Runge-Kutta emboıtees Rk5(4))Paires de Dormand Prince utilise dans Ode45 et Dopri5.
0
15
15
310
340
940
45
4445 − 56
15329
89
193726561 − 25360
2187644486561 − 212
729
1 90173168 − 355
33467325247
49176 − 5103
18656
1 35384 0 500
1113125192 − 2187
67841184
517957600 0 7571
16695393640 − 92097
3392001872100
140
VI Les methodes de Runge-Kutta implicites
Definition VI.1 (Methode de Runge-Kutta implicite) On appelle methode de Runge-Kutta implicite a setages, la methode definie par le schema
(S)
ki = f(t0 + cih, x0 + h
∑sj=1 aijkj) pour i = 1, . . . , s
x1 = x0 + h∑si=1 biki
(5.16)
ou les coefficients ci, aij et bi sont des constantes qui definissent precisement le schema. On supposera toujours dansla suite que ci =
∑sj=1 aij pour i = 1, . . . , s.
Remarque VI.2La methode est implicite car sur chaque pas, il faut resoudre un systeme d’equations non lineaires.
On represente en pratique ce schema par le tableau de Butcher, cf. la table 5.3.
Exemple VI.3 (Euler implicite)
x1 = x0 + hf(t1, x1)
1 11
44 CHAPITRE 5. LES METHODES DE RUNGE-KUTTA
c1 a11 . . . a1s
......
.... . .
cs as1 . . . assb1 . . . bs
Table 5.3 – Tableau de Butcher.
Exemple VI.4 (Trapeze)
x1 = x0 + h(f(t0, x0) + f(t1, x1))
01/2 1/2 1/2
1/2 1/2
Exemple VI.5 (Point milieu)
x1 = x0 + h(f(t0 + h/2, (x0 + x1)/2))
1/2 1/21
Exemple VI.6 (Gauss implicite a deux etage d’ordre 4)
1/2−√
3/6 1/4 1/4−√
3/6
1/2 +√
3/6 1/4 +√
3/6 1/41/2 1/2
Theoreme VI.7On suppose f : R×Rn → Rn continue et Lipchitzienne par rapport a la deuxieme variable x de constante L. Si
h <1
Lmaxi(∑j |aij |)
alors il existe une unique solution a (S) (cf. (5.16)). Si f(t, x) est Cp, alors les ki sont aussi Cp.
Exercice VI.8Demonstration du theoreme (VI.7)
1 Demontrer l’existence et l’unicite de la solution de (S) (utiliser le theoreme du point fixe).
2 Demontrer que les ki sont Cp si f est Cp (utiliser le theoreme des fonctions implicites).
Nous allons maintenant voir le lien entre les methodes de Runge-Kutta implicites et les methodes de collocation.Ces dernieres methodes consistent a chercher sur chaque intervalle d’une discretisation en temps un polynome u dedegre s dont les derivees coıncident 1 en s points donnes a f(t0 + cih, u(t0 + cih)).
Definition VI.9 (Methode de collocation) Soit s ≥ 1 et c1, . . . , cs, s points distincts de [0, 1], on definitl’unique polynome u(t) de degre s verifiant
u(t0) = x0
u′(t0 + cih) = f(t0 + cih, u(t0 + cih)).
La methode de collocation consiste alors a calculer x1 par
x1 = u(t0 + h).
1. co-locate en anglais.
VII. EXERCICES 45
Theoreme VI.10 ([5, 15])La methode de collocation est equivalente a une methode de Runge-Kutta implicite a s etages avec
aij =
∫ ci
0
lj(t)dt bj =
∫ 1
0
lj(t)dt i, j = 1, . . . , s,
ou lj(t) est le polynome de Lagrange.
lj(t) =∏k 6=j
t− ckcj − ck
.
Remarque VI.11Pour resoudre sur chaque pas le systeme d’equations non lineaires, on peut soit utiliser un point fixe (cf. lademonstration du theoreme (VI.7)), soit utiliser un algorithme de type Newton. Nous allons donner ici le cas leplus simple d’un algorithme du point fixe, sachant qu’en pratique, il est preferable d’utiliser un algorithme du typeNewton (cf. IV.8 page 118 de [7]).
Algorithme VI.12InitialisationN= nombre de pasfpeps= epsilon pour le point fixefpitermax= nombre maximum d’iterations pour le point fixeh = (tf − t0)/Npour l = 1 a N faire
Initialiser les ki = f(t0 + cih, x0)normprog=1 ; nbiter=0tant que (normprog>fpeps) et (nbiter<fpitermax) faire
Calculer les newki = f(t0 + cih, x0 + h∑sj=1 aijkj) pour i = 1, . . . , s
Calculer normprog=||(newk1 − k1; . . . ;newks − ks)||ki := newki pour i = 1, . . . , snbiter=nbiter+1
fin tant quet0 = t0 + hx0 = x0 + h
∑sj=1 bjkj
fin pour
VII Exercices
Exercice VII.11 Appliquez un pas d’une methode de Runge-Kutta explicite a s etages a l’equation x(t) = x(t), x(0) = 1 et montrez
que x1 est un polynome en h de degre s.
2 En deduire que l’ordre d’une methode de Runge-Kutta explicite ne peut etre plus grand que le nombre d’etages :p ≤ s.
Exercice VII.2On rappelle qu’un systeme non autonome peut toujours s’ecrire sous forme autonome. En effet si on considere leprobleme a valeur initiale
(IV P )
x(t) = f(t, x(t))x(t0) = x0,
et si on pose t = t0 + τ , τ ∈ [0, tf − t0], on a
(IV P ) ⇐⇒
dtdτ (τ) = 1dxdτ (τ) = f(t(τ), x(τ))τ(0) = t0x(0) = x0,
⇐⇒
dzdτ (τ) = f(z(τ))
z(0) =
(t0x0
),
avec
z(τ) =
(t(τ)x(τ)
)et f(z(τ)) =
(1
f(t(τ), x(τ))
).
46 CHAPITRE 5. LES METHODES DE RUNGE-KUTTA
1 Ecrire ce que devient le schema de Runge-Kutta explicite a s etages dans le cas autonome, c’est-a-dire avec lavariable z : k1 = ....
2 On pose g1 = z0 et gi = z0 + h∑i−1j=1 aij f(gj) pour i = 1, . . . , s. Ecrire ce que donne ce schema de Runge-Kutta
explicite avec ces notations.
3 En considerant la premiere composante des gi et de x1, montrer que l’on doit avoir
s∑i=1
bi = 1 et
i−1∑j=1
aij = ci,∀i = 2, . . . , s
Exercice VII.32 On considere l’equation differentielle de Cauchy du deuxieme ordre et autonome (on considere pour simplifier icique x(t) ∈ R)
(IV P )
x(t) = f(x(t))x(t0) = x0
x(t0) = x0..
1 On pose z(t) = x(t) et u(t) =(x(t) z(t)
)T. Ecrire le systeme (IV P ) sous la forme d’un systeme a condition
initiale du premier ordre.
2 On considere maintenant le schema de Nystrom suivant
k1 = f(x0)k2 = f(x0 + hα1z0 + (h2/2)α2k1)Φ1(u0, h) = Φ1(x0, z0, h) = z0 + (h/2)(γ1k1 + γ2k2)Φ2(u0, h) = Φ2(x0, z0, h) = (1/2)(δ1k1 + δ2k2)
u1 =
(x1
z1
)= u0 + hΦ(u0, h) =
(x0
z0
)+ h
(Φ1(x0, z0, h)Φ2(x0, z0, h)
)Montrer que la methode est consistante si et seulement si δ1 + δ2 = 2.
3 Donner le developpement limite a l’ordre 2 de k2 : k2 = f(x0) + · · · .
4 Donner les relations que doivent verifier les coefficients pour que la methode soit d’ordre 3.
2. sujet 36 page 83, Calcul differentiel et equations differentielles, Aze, Constans, Hiriart-Urruty, Dunod, 2002.
Chapitre 6
Sortie dense, discontinuites, derivees
I Sortie dense
I.1 Objectif
Les integrateurs numeriques ne donnent les resultats qu’aux points de la subdivision t0 < t1 < . . . < tN (celle-cietant determinee a priori pour les methodes a pas fixes et a posteriori pour les methodes a pas variables), orl’utilisateur peut vouloir calculer la solution en tout point de l’intervalle [t0, tf ] ou sur une grille tres fine. L’objectifde ce qui est appele dans la litterature la sortie dense 1 est de repondre a ce besoin. La sortie dense est en autrenecessaire :
— pour faire le trace de la solution (cf. la trajectoire tracee dans le cas de l’utilisation d’Ode45 sur la figure5.1) ;
— pour detecter un evenement, on integre le systeme differentiel jusqu’a l’instant T ou ψ(x(T )) = 0 (cf. lasous-section I.3 ci-apres) ;
— pour integrer les equations differentielles a second membre discontinue (cf. la sous section I.4 ci-apres).On desire donc sur un pas [t0, t1] avoir une approximation peu couteuse de la solution x(t) = x(t0 + θh), θ ∈ [0, 1],
c’est-a-dire qui ne necessite pas d’evaluation supplementaire du second membre de l’equation differentielle, etde meme ordre que la solution aux points de la subdivision t0, . . . , tN . Cette approximation sera en pratique unpolynome u(θ) ≈ x(t0 + θh) de degre p∗ = p− 1. Si on choisit correctement ce polynome, nous pouvons avoir uneerreur d’approximation en O(θp). En ajoutant cette erreur a l’erreur globale qui est en O(hp) pour un schemad’ordre p, nous obtiendrons bien ce que nous voulons.
I.2 Calcul de la sortie dense
Une solution simple pour un schema de Runge-Kutta d’ordre 4 est de considerer l’interpolation de l’Hermite,c’est-a-dire de determiner l’unique polynome de degre 3 tel que
u(0) = x0 u(0) = f(t0, x0)hu(1) = x1 u(1) = f(t1, x1)h.
On obtient ainsi le polynome suivant
u(θ) = (1− θ)x0 + θx1 + θ(θ − 1)((1− 2θ)(x1 − x0) + (θ − 1)hf(t0, x0) + θhf(t1, x1)).
Remarque I.1— La solution approximee ainsi est C1 ;— pour calculer le polynome, il faut calculer f(t1, x1), mais comme cette valeur est calculer au pas suivant, il
ne s’agit pas d’une evaluation supplementaire de f .
Dans le cas general, on suppose que l’on part d’une methode de Runge-Kutta d’ordre p a s etages. On rajoutes∗ − s etage et on cherche le polxnome u(θ) sous la forme
u(θ) = x0 +
s∗∑i=1
bi(θ)ki.
En generale on prend s∗ ≥ s+ 1 avec ks+1 = f(t1, x1). On cherche alors les polynomes bi(θ) tels que
u(θ)− x(t0 + θh) = O(hp∗+1).
1. dense output en anglais.
47
48 CHAPITRE 6. SORTIE DENSE, DISCONTINUITES, DERIVEES
Exemple I.2Pour la methode Rk4, s = s∗ = 4, on peut prendre
b1(θ) = θ − 3θ2
2+
2θ3
3
b2(θ) = b3(θ) = θ2 − 2θ2
3
b4(θ) = −θ2
2+
2θ3
3.
u(θ) est alors continue sur [t0, tf ], mais non C1.
Exemple I.3Pour la paire de Dorman-Prince (Dopri5 et Ode45) on trouvera les valeurs des bi(θ) page 192 de [6].
Remarque I.4La sortie dense permet aussi d’obtenir une approximation polynomiale des derivees u(k)(θ) et donc des x(k)(t0 +θh) :
h−ku(k)(θ)− x(k)(t0 + θh) = O(hp∗+1−k).
I.3 Detection d’evenements
L’objectif est de determiner l’instant t tel que ψ(t, x(t)) = 0 ∈ R.
Algorithme I.5si ψ(ti, xi)ψ(ti+1, xi+1) ≤ 0 alors
Determiner τ = ti + θhi et xτ , θ ∈ [0, 1] tel que g(θ) = ψ(ti + θh, u(θ)) = 0 u(θ) est la sortie dense sur[ti, ti+1].ti+1 = ti + θhixi+1 = u(ti + θhi)
fin si
Exemple I.6 (Balle qui rebondie)>> help ballode
BALLODE Run a demo of a bouncing ball.
This is an example of repeated event location, where the initial
conditions are changed after each terminal event. This demo computes ten
bounces with calls to ODE23. The speed of the ball is attenuated by 0.9
after each bounce. The trajectory is plotted using the output function
ODEPLOT.
See also ODE23, ODE45, ODESET, ODEPLOT, FUNCTION_HANDLE.
>> orbitode
Exemple I.7 (Probleme aux trois corps restreints)>> help orbitode
ORBITODE Restricted three body problem.
This is a standard test problem for non-stiff solvers stated in Shampine
and Gordon, p. 246 ff. The first two solution components are
coordinates of the body of infinitesimal mass, so plotting one against
the other gives the orbit of the body around the other two bodies. The
initial conditions have been chosen so as to make the orbit periodic.
Moderately stringent tolerances are necessary to reproduce the
qualitative behavior of the orbit. Suitable values are 1e-5 for RelTol
and 1e-4 for AbsTol.
ORBITODE runs a demo of event location where the ability to
specify the direction of the zero crossing is critical. Both
the point of return to the initial point and the point of
maximum distance have the same event function value, and the
direction of the crossing is used to distinguish them.
II. CALCUL DE LA DERIVEE 49
The orbit of the third body is plotted using the output function
ODEPHAS2.
L. F. Shampine and M. K. Gordon, Computer Solution of Ordinary
Differential Equations, W.H. Freeman & Co., 1975.
See also ODE45, ODE23, ODE113, ODESET, ODEPHAS2, FUNCTION_HANDLE.
>> orbitode
This is an example of event location where the ability to
specify the direction of the zero crossing is critical. Both
the point of return to the initial point and the point of
maximum distance have the same event function value, and the
direction of the crossing is used to distinguish them.
Calling ODE45 with event functions active...
Note that the step sizes used by the integrator are NOT
determined by the location of the events, and the events are
still located accurately.
I.4 Integration d’equations differentielles a second membre discontinues
(IV P )
x(t) = t2 + 2x2(t) si (t+ 0.05)2 + (x(t) + 0.15)2 ≤ 1x(t) = 2t2 + 3x2(t)− 2 si (t+ 0.05)2 + (x(t) + 0.15)2 > 1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
5
10
15
20
25
30
35
t
Nom
bre
de p
as
pas acceptéspas rejetés
Figure 6.1 – Utilisation du pas variable, programme myode43.m, E. Hairer, S.P. Nørsett and G. Wanner, Tome I,page 197.
II Calcul de la derivee
II.1 Exemple
On considere le probleme a valeur initiale suivant (Brusselator)[6], page 201.
(IV P )
x1 = 1 + x2
1x2 − (λ+ 1)x1
x2 = λx1 − x21x2
x1(0) = 1.3x2(0) = λ
50 CHAPITRE 6. SORTIE DENSE, DISCONTINUITES, DERIVEES
ou tf = 20.
II.2 Differences finies externes
∂x
∂x0j(tf , x0) ≈ 1
δ(x(tf , x0 + δej)− x(tf , x0)),
ou e1, . . . , en designe la base canonique de Rn.
II.3 Equation variationnelle
∂x∂x0j
(tf , x0) est la solution Xj(tf ) du systeme de Cauchy
(EQ)j
x(t) = f(t, x(t))
Xj(t) = ∂f∂x (t, x(t))Xj(t)
x(0) = x0
Xj(0) = ej
II.4 Differentiation interne de Bock (IND)
Nous allons approximer par differences finies le deuxieme membre de l’equation variationnelle [2]. On a
f(t, x(t) + δXj(t)) = f(t, x(t)) +∂f
∂x(t, x(t))δXj(t) + o(δXj(t))
On approxime alors dans les equations variationnelles
∂f
∂x(t, x(t))Xj(t) ≈
1
δ(f(t, x(t) + δXj(t))− f(t, x(t))).
On resout donc
(IND)j
x(t) = f(t, x(t))
Xj(t) = 1δ (f(t, x(t) + δXj(t))− f(t, x(t)))
x(0) = x0
Xj(0) = ej .
2.85 2.9 2.95 3 3.05 3.1−2
−1
0
x1
2.85 2.9 2.95 3 3.05 3.1−1
0
1
2
x2
2.85 2.9 2.95 3 3.05 3.1−1.5
−1
−0.5
x1
2.85 2.9 2.95 3 3.05 3.1−1
0
1
2
x2
2.85 2.9 2.95 3 3.05 3.1−1.5
−1
−0.5
x1
2.85 2.9 2.95 3 3.05 3.1−1
0
1
2
x2
2.85 2.9 2.95 3 3.05 3.1−1.5
−1
−0.5
x1
2.85 2.9 2.95 3 3.05 3.1−1
0
1
2
x2
Figure 6.2 – Derivee de la solution par rapport a λ∂x1(tf ,λ)
∂λ et∂x2(tf ,λ)
∂λ pour (de haut en bas) : les differences finies
avants (δλ = 4Tol), les differences finies avants (δλ =√Tol), la differentiation interne de Bock (δλ =
√macheps)
et l’equation variationnelle. On utilise le code Ode45 de Matlab avec Atol = Rtol = Tol = 10−4.
II. CALCUL DE LA DERIVEE 51
II.5 Exemple
Modele a compartiments
Sang x1(t) Organe x2(t)
-
?
k1
k3
k2
Donnees
Les concentrations dans le sang sont mesurees a differents instants :
ti xi1 ti xi10.25 215.6 3.00 101.20.50 189.2 4.00 88.00.75 176.0 6.00 61.61.00 162.8 12.00 22.01.50 138.6 24.00 4.42.00 121.0 48.00 0.0
Modele Mathematique
Le systeme d’equations differentielles decrivant le modele est le suivant :
(EDO)
x(t) =
(−k1 − k2 k3
k1 −k3
)x(t) = Akx(t)
x1(0) = c0x2(0) = 0
Probleme aux moindres carrees
0 5 10 15 20 25 30 35 40 45 50
0
50
100
150
200
250
t
x1(t
)
← r1
← r2
← r3
← r4
← r5
← r6
← r7← r
8← r
9← r
10 ← r11 ← r
12
0 5 10 15 20 25 30 35 40 45 500
20
40
60
80
t
x2(t
)
Figure 6.3 – Donnees, courbe pour β = (0.5, 0.55, 0.5, 240) et residus
(P )
Min f(β) = 1
2
∑ni=1(xi1 − x1(ti;β))2 = 1
2 ||r(β)||2β = t(c0, k1, k2, k3) ∈ R4
52 CHAPITRE 6. SORTIE DENSE, DISCONTINUITES, DERIVEES
Calcul de la derivee de la fonction residus
L’utilisation d’un algorithme a pas variables pour calculer les residus impose d’utiliser les equations variationnellespour calculer les derivees de x1 par rapport aux parametres.
(V AR)
x(t) = Akx(t)x1(0) = c0x2(0) = 0
X = AkX(t)
X(0) =
(10
)Z(t) = AkZ(t) +B(t)Z(0) = 0(3,3)
avec
B(t) =
(−x1(t) −x1(t) x2(t)x1(t) 0 x2(t)
)Solution
0 5 10 15 20 25 30 35 40 45 50
0
50
100
150
200
250
t
x1(t
)
← r1
← r2
← r3
← r4
← r5
← r6
← r7← r
8← r
9← r
10 ← r11 ← r
12
0 5 10 15 20 25 30 35 40 45 500
20
40
60
80
t
x2(t
)
Figure 6.4 – Donnees, courbe pour β = (0.5, 0.55, 0.5, 240) et residus
Annexe A
I Espace de Banach
On rappelle qu’un espace de Banach E est un espace vectoriel norme complet.
II Theoremes de points fixes
Theoreme II.1Soit (E, d) un espace metrique complet et f : E → E une application contractante (c’est-a-dire qu’il existe 0 ≤ ρ < 1tel que pour tout (x, y) ∈ E2, d(f(x), f(y)) ≤ kd(x, y)), alors f admet un point fixe unique x = f(x).
Demonstrationcf. [14] 2
Theoreme II.2Soit (E, d) un espace metrique complet et f : E → E une application, on suppose qu’il existe p > 0 telle que fp soitcontractante, alors f admet un point fixe unique x = f(x).
DemonstrationLe theoreme du point fixe precedent applique a g = fp implique que g a un unique point fixe x = g(x) = fp(x). Parsuite f(x) = f(fp(x)) = g(f(x)). Donc f(x) est aussi un point fixe de g. L’unicite du point fixe de g implique alorsque x = f(x).
Supposons maintenant que f possede 2 points fixes x1 et x2. On a x1 = f(x1) = fp(x1) et x2 = fp(x2). Donc x1
et x2 sont des points fixes de g. L’unicite du point fixe de g implique alors que x1 = x2. 2
III Topologie
Lemme III.1 (Coefficient de Lebesgue d’un recouvrement)Soient X un espace metrique compact et (Oi)i∈I un recouvrement ouvert de X, alors il existe ε > 0, appelecoefficient de Lebesgue du recouvrement, tel que pour tout x ∈ X,∃i ∈ I,B(x, ε) ⊂ Oi.
DemonstrationPour tout x ∈ X, il existe i ∈ I et ηx > 0, tel que B(x, ηx) ⊂ Oi. Comme X ⊂ ∪x∈XB(x, ηx/2) et que X estcompact il existe J fini tel que X ⊂ ∪j∈JB(xj , ηxj/2). Posons alors ε = minj∈J (ηxj/2) > 0, alors pour tout x ∈ X ilexiste j ∈ J tel que d(x, xj) < ηxj/2, par suite si x′ ∈ B(x, ε) on a d(x′, xj) ≤ d(x′, x) + d(x, xj) < ε+ ηxj/2 < ηxj .Et donc il existe i ∈ Oi tel que B(x, ε) ⊂ B(xj , ηxj ) ⊂ Oi. 2
IV Developpement de Taylor
On rappelle ici les developpement de Taylors. Soit f : Ω ∈ E → F , une fonction, Ω ouvert, E et F espacesvectoriels normes. On suppose f de classe Ck. On rappelle que
f ′(x) ∈ L(E,F )
f ′′(x) ∈ L(E,L(E,F )) ≡ L2(E,F )
f ′′(x) : E × E −→ F
(h1, h2) 7−→ f ′′(x).(h1, h2)
53
54 ANNEXE A.
f (k)(x) ∈ Lk(E,F ) (A.1)
f (k)(x) : Ek −→ F
(h1, . . . , hk) 7−→ f (k)(x).(h1, . . . , hk)
Si E = R, on identifie f (k)(x) ≡ f (k)(x).(1, . . . , 1) ∈ F .
Proposition VII.1Si x : [t0, tf ]→ F est Ck et (k + 1) fois differentiable sur ]t0, tf [ et telle que ||xk+1(t)|| ≤M, ∀t0 < t < tf alors
x(t0 + h) = x(t0) + x′(t0).h+ · · ·+ x(k)(t0)hk
k!+ rk(t),
avec
||rk(t)|| ≤ M
(k + 1)!hk+1 = O(hk+1)
Theoreme VII.2Soit f : Ω ∈ E → F une fonction Ck+1 et x0 et x0 + h deux points de Ω tels que [x0, x0 + h] ∈ Ω alors
f(x0 + h) = f(x0) + f ′(x0).h+1
2f ′′(x0).(h, h) + · · ·+ 1
k!f (k)(x0).(h, · · · , h︸ ︷︷ ︸
k fois
) + rk(h),
avec
||rk(h)|| ≤ sup0<t<1
||f (k+1)(x0 + th)|| ||h||k+1
(k + 1)!≤M ||h||
k+1
(k + 1)!= O(||h||k+1)
Bibliographie
[1] Patrick Altibelli and Luc Giraud. Cours d’algebre lineaire : valeurs propres et vecteurs propres de matrices,Decompositions canoniques de matrices et applications. Universite de Toulouse, INPT-ENSEEIHT, departementInformatique et Mathematiques Appliquees, 2, rue Camichel - B.P. 7122 - 31071 Toulouse Cedex FRANCE,2008.
[2] H.G. Bock. Numerical treatment of inverse problems in chemical reaction kinetics. In K.H. Hebert, P. Deuflhard,and W. Jager, editors, Modelling of chemical reaction systems, volume 18 of Springer series in Chem. Phys.,pages 102–125, 1981.
[3] J.C. Butcher. Numerical Methods For Ordinary Differential Equations. John Wiley & Sons, 2003.
[4] Jean-Pierre Demailly. Analyse numerique et equations differentielles. Collection Grenoble Sciences. PressesUniversitaires de Grenoble, 1996.
[5] A. Guillou and J.L. Soule. La resolution numerique des problemes differentiels aux conditions initiales par lesmethodes de collocation. R.I.R.O., (R-3) :17–44, 1969.
[6] E. Hairer, S.P. Nørsett, and G. Wanner. Solving Ordinary Differential Equations I, Nonstiff Problems, volume 8of Springer Serie in Computational Mathematics. Springer-Verlag, second edition, 1993.
[7] E. Hairer and G. Wanner. Solving Ordinary Differential Equations II, Stiff and Differential–Algebraic Problems,volume 14 of Springer Serie in Computational Mathematics. Springer-Verlag, second edition, 1996.
[8] Frederic Jean. Stabilite et Commande des Systemes Dynamiques : Cours et exercices. Les Presses de l’ENSTA,2011. ISBN : 978-2-7225-0936-8.
[9] L. Pontriaguine. Equations differentielles ordinaires. Mir, 1975.
[10] L.F. Richardson. The deferred approach to the limit. Philosophical Transactions of the Royal Society of London,Series A, 226 :299–349, 1927.
[11] L.F. Shampine and M.W. Reichelt. The matlab ode suite.http ://www.mathworks.com/access/helpdesk/help/pdf doc/otherdocs/ode suite.pdf.
[12] C. Wagschal. Derivation, Integration. Hermann, 1999.
[13] C. Wagschal. Fonctions holomorphes, Equations differentielles. Hermann, 2003.
[14] C. Wagschal. Topologie et analyse fonctionelle. Hermann, 2003.
[15] K. Wright. Some relationships between implicit runge-kutta collocation and lanczos τ methods, and theirstability properties. BIT, 10 :217–227, 1970.
55