MMSN
Analyse numérique 2
Chapitre 3 :
Résolution numérique d'EDO Cours 10-11-12-13-14
GM 3 Année 2021 - 2022 Contact : A. Tonnoir
2
Au programme (Chapitre 3)
Objectif :
Étant donné , déterminer numériquement la solution d'un système d’EDO :
t0
∈ [
a,
b]
Exemples d’application :
Mécanique (céleste) mx′′(t)=
Fy′(t) = f(t, y(t)), t ∈ [a, b] y(t0) = y
0
3
Au programme (Chapitre 3)
Objectif :
Étant donné , déterminer numériquement la solution d'un système d’EDO :
t0
∈ [
a,
b]
Exemples d’application :
MécaniqueModèle en épidémiologie S′
I R′
= − β
SIβ
SI− γ
Iγ
Iy′(t) = f(t, y(t)), t ∈ [a, b] y(t0) = y
0
4
Plan :
II. Les méthodes à 1-pas
I. Le théorème de Cauchy-Lipschtiz
III. Les méthodes multi-pas IV. Quelques extensions
Objectif :
Étant donné , déterminer numériquement la solution d'un système d’EDO :
t0
∈ [
a,
b]
y′(t) = f(t, y(t)), t ∈ [a, b] y(t0) = y
0
Au programme (Chapitre 3)
5
1.1 Définition (pb. de Cauchy)
I. Le théorème de Cauchy-Lipschtiz
y′(t) = f(t, y(t)), t ∈ [a, b] y(t0) = y
0
Étant donné , une fonction
continue, trouver une fonction t.q.
t0
∈ [
a,
b]
f: ℝ × ℝ
n→ ℝ
ny
: ℝ → ℝ
n C1Illustration dans le cas n=1 :
t y(t)
t0
y0
(1,f(t))
6
1.1 Définition (pb. de Cauchy)
I. Le théorème de Cauchy-Lipschtiz
y′(t) = f(t, y(t)), t ∈ [a, b] y(t0) = y
0
Étant donné , une fonction
continue, trouver une fonction t.q.
t0
∈ [
a,
b]
f: ℝ × ℝ
n→ ℝ
ny
: ℝ → ℝ
n C11.3 Définition (Fonction Lipschtiz)
On dit qu’une fonction est (globalement) Lipschitzienne par rapport à sa deuxième variable s’il existe L>0 t.q. :
f
: ℝ × ℝ
n→ ℝ
n∀t ∈ [a, b], ∀(y, z) ∈ ℝn × ℝn, ∥f(t, y) − f(t, z)∥ ≤ L ∥y − z∥
7
I. Le théorème de Cauchy-Lipschtiz
1.3 Théorème (de Cauchy-Lipschtiz)
Si f est continue et Lipschitzienne par rapport à sa 2ème variable alors le problème de Cauchy admet une unique solution.
(Rappel de la) Preuve (dans le cas n=1) : Point de départ : y sol. ssi y(t) = y(t0) + ∫
t
t0 f(s, y(s)) ds
Unicité : Soient et deux solutions du problème de Cauchy, alors on a :
y1 y
2
y1(t) − y
2(t) ≤ ∫ t
t0 f(s, y
1(s)) − f(s, y
1(s)) ds y1(t) − y
2(t) ≤ L∫ t
t0 y
1(s) − y
1(s) ds
8
I. Le théorème de Cauchy-Lipschtiz
Suite de la preuve :
Unicité : Soient et deux solutions du problème de Cauchy, alors on a :
y1 y
2
y1(t) − y
2(t) ≤ L∫ t
t0 y
1(s) − y
1(s) ds
1.3 Lemme de Grönwall (admis)
Soient et de deux fonctions continues et positives vérifiant :
Φ Ψ [
t0,
t] → ℝ
Φ(t) ≤ K + L∫ t
t0 Ψ(s)Φ(s) ds alors Φ(t) ≤ KeL∫tt0Ψ(s)Φ(s) ds
⇒ y
1(t) − y
2(t) ≤ 0 ⇒ y
1 = y
2
9
I. Le théorème de Cauchy-Lipschtiz
Suite de la preuve :
Existence : y sol. ssi y(t) = y(t0) + ∫ t
t0 f(s, y(s)) ds
On voit alors le problème de Cauchy comme une équation de point fixe
où l’opérateur .
ℒ
y=
yℒ :
B(
a,
b) = (
C0[
a,
b], ∥ ⋅ ∥
∞) →
B(
a,
b)
Remarque :
On rappelle que B est un espace de Banach.Or, on a : ∥ℒy
1 − ℒy
2∥L∞(a,b) ≤ sup
t∈[a,b] ∫ t
t0 f(s, y
1(s)) − f(s, y
2(s)) ds
≤ sup s∈[a,b]
L∫ t
t0 y
1(s) − y
2(s) ds
≤ L(b − a) ∥y
1 − y
2∥L∞(a,b)
10
I. Le théorème de Cauchy-Lipschtiz
Suite de la preuve :
Existence : y sol. ssi y(t) = y(t0) + ∫ t
t0 f(s, y(s)) ds
On voit alors le problème de Cauchy comme une équation de point fixe
où l’opérateur .
ℒ
y=
yℒ :
B(
a,
b) = (
C0[
a,
b], ∥ ⋅ ∥
∞) →
B(
a,
b)
Or, on a : ∥ℒy
1 − ℒy
2∥L∞(a,b) ≤ L(b − a) ∥y
1 − y
2∥L∞(a,b)
Si , on a alors une contraction, et on en déduit qu’il existe une unique solution en appliquant le Thm. de point fixe.
L
(
b−
a) <
111
I. Le théorème de Cauchy-Lipschtiz
Suite de la preuve :
Existence : y sol. ssi y(t) = y(t0) + ∫ t
t0 f(s, y(s)) ds
On voit alors le problème de Cauchy comme une éq u at i o n d e p o i nt f i xe o ù l ’ o pé r at e u r
.
ℒ
y=
yℒ :
B(
a,
b) = (
C0[
a,
b], ∥ ⋅ ∥
∞) →
B(
a,
b)
Si , l’idée est alors d’appliquer la même méthode sur un intervalle avec .
L
(
b−
a) >
1[
t0− ε,
t0+ ε]
2ε
L<
1t y(t)
t0
On applique le même résultat sur avec comme condition de
C a u c h y p o u r
construire .
[
t0,
t0+
2ε]
y1
(
t0+ ε
2
) =
y(
t0+ ε
2
)
y1
12
I. Le théorème de Cauchy-Lipschtiz
Suite de la preuve :
Existence : y sol. ssi y(t) = y(t0) + ∫ t
t0 f(s, y(s)) ds
On voit alors le problème de Cauchy comme une éq u at i o n d e p o i nt f i xe o ù l ’ o pé r at e u r
.
ℒ
y=
yℒ :
B(
a,
b) = (
C0[
a,
b], ∥ ⋅ ∥
∞) →
B(
a,
b)
Si , l’idée est alors d’appliquer la même méthode sur un intervalle avec .
L
(
b−
a) >
1[
t0− ε,
t0+ ε]
2ε
L<
1t y(t)
t0
Et ainsi de suite : y2(t0 + 3ε
2 ) = y1(t0 + 3ε 2 )
Remarque :
La solution étant u n i q u e s u r [ a , b] , o n d é d u i t aisément que y1=
y2= ⋯ =
y.13
I. Le théorème de Cauchy-Lipschtiz
1.3 Théorème (de Cauchy-Lipschtiz)
Si f est continue et Lipschitzienne par rapport à sa 2ème variable alors le problème de Cauchy admet une unique solution.
Remarques :
En appliquant la démarche de pro longement précédente, on peut construire une solution sur
ℝ
Si f n’est que localement Lip. (i.e. la constante L dépend de ) alors il existe une unique solution locale (maximale).
y0
14
Plan :
II. Les méthodes à 1-pas
I. Le théorème de Cauchy-Lipschtiz
III. Les méthodes multi-pas IV. Quelques extensions
Objectif :
Étant donné , déterminer numériquement la solution d'un système d’EDO :
t0
∈ [
a,
b]
y′(t) = f(t, y(t)), t ∈ [a, b] y(t0) = y
0
Au programme (Chapitre 3)
a) Définition et analyse
b) Les méthodes de Runge Kutta
15
II. a) Définition et analyse
Dans la suite de ce chapitre, on considèrera que f est Lipschtizienne, ce qui nous garantit qu’il existe une unique solution globale.
y(t) = y(t0) + ∫ t
t0 f(s, y(s)) ds Pour rappel, est solution ssi :y
Idée : Appliquer une formule de quadrature pour calculer un approximation de .
yi y(ti)
Considérons la discrétisation ti
=
t0+ iΔ
t, t.q. tN=
T, alors y(ti+1) = y(ti) + ∫ti+1
ti f(s, y(s)) ds
Méthode à 1-pas : Calculer y à partir de .
i+1 y
i
Méthode multi-pas : Calculer y avec .
i+1 y
i
,
yi−1
, ⋯,
yi−r
Remarque :
Avec une méthode numérique, on ne détermine pas (une approximation de) la solution pour tout instant t.
y2
16
t y(t)
t0
y0
(Δt,f(t))
y(ti+1) = y(ti) + ∫
ti+1
ti f(s, y(s)) ds Approcher l’intégrale
par la formule : yi+1 = y
i + Δt f(ti, y
i)
y1 y
3 …
Les questions naturelles qui se posent alors sont : Si
Δ
t→ 0
, a t’on yi→
y(ti) ? (Convergence)Peut-on concevoir des schémas plus précis ?
Un premier exemple : la méthode d’Euler
II. a) Définition et analyse
y2
17
Un premier exemple : la méthode d’Euler
t y(t)
t0
y0
(Δt,f(t))
y(ti+1) = y(ti) + ∫
ti+1
ti f(s, y(s)) ds Approcher l’intégrale
par la formule : yi+1 = y
i + Δt f(ti, y
i)
y1 y
3 …
Remarque :
En choisissant la formule de quadrature yi+1 = y
i + Δt f(ti+1, y
i+1) on déduit le schéma d’Euler implicite.
II. a) Définition et analyse
18
2.1 Définition (méthode à 1-pas)
Soit un fonction continue. On définit une méthode à 1 pas par la relation suivante :
Φ : ℝ × ℝ
n× ℝ → ℝ
nyi+1 = y
i + Δti Φ(ti, y
i, Δti)
Remarques :
La méthode d’Euler correspond à
Φ(
t,
y, Δ
t) =
f(
t,
y)
.Le pas de discrétisation peut a priori varier d’une itération à l'autre
Δ
tiLe choix de la fonction est déterminant dans la qualité de la méthode numérique.
Φ
II. a) Définition et analyse
19
2.1 Définition (méthode à 1-pas)
Soit un fonction continue. On définit une méthode à 1 pas par la relation suivante :
Φ : ℝ × ℝ
n× ℝ → ℝ
nyi+1 = y
i + Δti Φ(ti, y
i, Δti)
2.2 Définition (consistance)
Une méthode à 1-pas est dite consistante ssi l’erreur εi = y(ti+1) − y(ti) − Δti Φ(ti, y(ti), Δti)
vérifie , où est la solution du pb de Cauchy.
Δt→0lim
N−1
∑
i=0∥ε
i∥ = 0
yRemarque :
On rappelle que la solution approchée y .i
≠
y(
ti)
II. a) Définition et analyse
20
2.3 Définition (stabilité)
Soient une suite de perturbation et la suite définie par :
˜ ε
i zizi+1 = zi + Δti Φ(ti, zi, Δti) + ˜εi
La méthode à 1-pas est dite stable ssi
∃
M> 0
t.q.max0≤i≤N ∥zi − y
i∥ ≤ M
(∥z0 − y
0∥ + N−1∑
i=0
∥˜εi∥ )
II. a) Définition et analyse
21
2.4 Définition (convergence)
Une méthode est dite convergente ssi limΔt→0 max
0≤i≤N ∥y(ti) − y
i∥ = 0 Δt = max
0≤i≤N−1 Δti où
2.5 Théorème
Si la méthode à 1-pas est stable et consistante, alors elle est convergente.
Preuve : au (vrai) tableau !
Remarque :
Ce résultat est important car il nous donne la démarche à suivre. Pour montrer la convergence, on montrera que la méthode est consistante et stable.
II. a) Définition et analyse
22
2.4 Définition (convergence)
Une méthode est dite convergente ssi
2.5 Théorème
Si la méthode à 1-pas est stable et consistante, alors elle est convergente.
Remarque 2 :
Notons également que SANS connaître la solution exacte, on pourra justifier que la solution approchée est proche de la solution exacte grâce à la notion de convergence.
limΔt→0 max
0≤i≤N ∥y(ti) − y
i∥ = 0 Δt = max
0≤i≤N−1 Δti où
II. a) Définition et analyse
2.7 Proposition
Si la fonction est Lipschitzienne par rapport à sa 2ème variable, alors la méthode est stable.
Φ : ℝ × ℝ
n× ℝ → ℝ
23 Voyons maintenant des théorèmes pratiques pour prouver la consistance et la stabilité d’une méthode à 1-pas.
2.6 Proposition
Une méthode est consistante ssi
Φ(
t,
y(
t),
h) |
h=0=
f(
t,
y(
t))
Preuve : au (vrai) tableau !
Preuve : au (vrai) tableau !
II. a) Définition et analyse
24
2.8 Définition (ordre)
Une méthode à 1-pas est d’ordre p ssi il existe une constante K indépendante de
Δ
t t.q. :N−1
∑i=0
∥εi∥ ≤ KΔtp ⇔ N−1∑
i=0
∥εi∥ = O(Δtp)
Remarque :
Une méthode d’ordre 1 au moins est consistante.
2.9 Corollaire (direct du Thm. 2.5)
Si une méthode est stable et d’ordre p, alors max0≤i≤N ∥y(ti) − y
i∥ = O(Δtp)
II. a) Définition et analyse
25
2.10 Théorème (ordre)
Si est de classe par rapport à ses 2 variables, et de classe par rapport à sa dernière variable, alors la méthode est d’ordre p ssi :
f Cp
Φ
Cp
1 j+1
dj
dtj f(t, y(t)) = ∂j
∂Δtj Φ(t, y(t), Δt)|Δt=0 ∀j ∈ {0,⋯, p − 1}
Preuve : au (vrai) tableau !
II. a) Définition et analyse
26
Retour sur la méthode d’Euler
yi+1 = y
i + Δt f(ti, y
i) Schéma d’Euler :
La méthode est convergente et d’ordre 1 (détails au (vrai) tableau)
Illustration ordre convergence
1 1
Exemple :
Appliquons ce schéma au pb : y′(t) = y(t), t ∈ [0,T]
y(0) = 1
pour lequel la sol. exacte est connu : y
(
t) =
et.II. a) Définition et analyse
27
Retour sur la méthode d’Euler
yi+1 = y
i + Δt f(ti, y
i) Schéma d’Euler :
La méthode est convergente et d’ordre 1 (détails au (vrai) tableau)
Exemple :
Appliquons ce schéma au pb : y′(t) = y(t), t ∈ [0,T]
y(0) = 1
pour lequel la sol. exacte est connu : y
(
t) =
et.Δ
t= {0.2,0.1,⋯,0.0125}
II. a) Définition et analyse
28
Peut-on proposer des schémas d’ordre plus élevé ?
Idée 1 : Exploiter le Thm. 2.10.
Par exemple, pour une méthode d’ordre 2 on aurait : yi+1 = y
i + Δt f(ti, y
i) + Δt2
2 (∂tf(ti, y
i) + ∂yf(ti, y
i)f(ti, y
i)) (détails au (vrai) tableau)
Euler
Δ
t= 0.2
Schéma o2Δ
t= 0.2
II. a) Définition et analyse
29
Peut-on proposer des schémas d’ordre plus élevé ?
Idée 1 : Exploiter le Thm. 2.10.
Par exemple, pour une méthode d’ordre 2 on aurait : yi+1 = y
i + Δt f(ti, y
i) + Δt2
2 (∂tf(ti, y
i) + ∂yf(ti, y
i)f(ti, y
i)) Cette approche pose plusieurs problèmes :
l’augmentation de l’ordre devient rapidement très compliqué et nécessite la connaissance et le calcul des dérivées partielles de f.
La stabilité de la méthode nécessite des hypothèses de plus en plus forte sur f pour être prouvée.
II. a) Définition et analyse
30
Peut-on proposer des schémas d’ordre plus élevé ?
Idée 1 : Exploiter le Thm. 2.10.
Par exemple, pour une méthode d’ordre 2 on aurait : yi+1 = y
i + Δt f(ti, y
i) + Δt2
2 (∂tf(ti, y
i) + ∂yf(ti, y
i)f(ti, y
i))
Idée 2 : Introduire des pas intermédiaire Méthodes de Runge-Kutta
II. a) Définition et analyse
31
II. b) Les méthodes de Runge Kutta
y(ti+1) = y(ti) + ∫
ti+1
ti f(s, y(s)) ds Revenons un instant à la formule
et considérons r points intermédiaires avec . L’idée est alors d’appliquer une formule de quadrature plus précises exploitant ces r points :
tij
=
ti+ θ
jΔ
tiθ
j∈ [0,1]
∫
ti+1
ti f(s, y(s)) ds ≃ Δti ∑r
j=1
cjf(tij, y(tij)) Intuitivement, cela conduit au schéma :
yi+1 = y
i + Δti ∑r
j=1
cjf(tij, y
ij) Comment évaluer y
ij
?
32
II. b) Les méthodes de Runge Kutta
Partant du schéma :
on appliquera la même idée que précédemment pour évaluer (l’approximation de y ) :
ij y
(
tij)
On utilise alors une formule « de quadrature » : yij = y
i + Δti ∑r
k=1
ajkf(tik, y
ik) yi+1 = y
i + Δti ∑r
j=1
cjf(tij, y
ij)
y(tij) = y(ti) + ∫ tij
ti f(s, y(s)) ds
Remarque :
La formule utilisée est a priori différente pour chaque j.
33
II. b) Les méthodes de Runge Kutta
2.11 Définition (méthode de Runge-Kutta)
Étant donné les coefficients , , une méthode de RK est définie par :
(
cj)
j=1,⋯,r(
ajk)
j,k=1,⋯,r(θ
j)
j=1,⋯,ryi+1 = y
i + Δti ∑r
j=1
cjf(tij, y
ij) yij = y
i + Δti ∑r
k=1
ajkf(tik, y
ik) et tij
=
ti+ θ
jΔ
ti.De manière plus condensée, on peut reformuler ainsi : yi1
y⋮ y ir
i+1
=
yi
y⋮ yi i
+ Δti
a11 ⋯ a1r
⋮ ⋮
⋮ ⋮
ar1 arr c1 ⋯ cr
f(ti1, y
i1)
⋮ f(ti1, y
ir)
34
II. b) Les méthodes de Runge Kutta
2.11 Définition (méthode de Runge-Kutta)
Étant donné les coefficients , , une méthode de RK est définie par :
(
cj)
j=1,⋯,r(
ajk)
j,k=1,⋯,r(θ
j)
j=1,⋯,ryi+1 = y
i + Δti ∑r
j=1
cjf(tij, y
ij) yij = y
i + Δti ∑r
k=1
ajkf(tik, y
ik) et tij
=
ti+ θ
jΔ
ti.Remarque :
On résume généralement une méthode de RK à l’aide du tableau de Butcher :
θ
1θ ⋮
ra11 a1r
⋮ ⋮
arr ar1
⋯
⋯
c1
⋯
cr35
II. b) Les méthodes de Runge Kutta
2.11 Définition (méthode de Runge-Kutta)
Étant donné les coefficients , , une méthode de RK est définie par :
(
cj)
j=1,⋯,r(
ajk)
j,k=1,⋯,r(θ
j)
j=1,⋯,ryi+1 = y
i + Δti ∑r
j=1
cjf(tij, y
ij) yij = y
i + Δti ∑r
k=1
ajkf(tik, y
ik) et tij
=
ti+ θ
jΔ
ti.Remarque 2 :
Il s’agit bien d’une méthode à 1-pas car on calcule à l’aide uniquement de .
yi+1
yi
36
II. b) Les méthodes de Runge Kutta
Quelques exemples :
Méthode de Euler :
0 0
y
1
i+1 = y
i + Δti f(ti, y
i)
Méthode de Euler Implicite
1 1
y
1
i+1 = y
i + Δti f(ti+1, y
i+1)
Remarque :
On a ici une équation non linéaire à résoudre à chaque pas de temps. A priori, rien ne nous garantit l’existence et l’unicité de la solution. On peut en fait le prouver pour un
Δ
ti suffisamment petit avec l’hypothèse de f Lip.37
II. b) Les méthodes de Runge Kutta
Quelques exemples :
Méthode de Euler :
0 0
y
1
i+1 = y
i + Δti f(ti, y
i)
Méthode de Euler Implicite
1 1
y
1
i+1 = y
i + Δti f(ti+1, y
i+1)
Méthode de Heun
0 0
1 2
1 0
1 0 1 2
yi+1 = y
i + Δti
2 (f(ti1, y
i1) + f(ti2, y
i2)) yi1 = y
y i
i2 = y
i + Δti f(ti1, y
i1)
38
II. b) Les méthodes de Runge Kutta
2.12 Théorème
Une méthode de RK est consistante ssi .
r
∑
j=1cj
= 1
Preuve : au (vrai) tableau !
2.13 Théorème
En notant A la matrice de coefficients , une méthode de RK est stable si pour tout i avec
où L est la constante de Lipschitz de f.
aij
Δ
ti≤
h* h*Lρ(
A) < 1
Idée de la preuve : au (vrai) tableau !
Remarque :
Pour une méthode de RK explicite, on a et donc la méthode est toujours stable.
ρ(
A) = 0
39
II. b) Les méthodes de Runge Kutta
2.12 Corollaire (du Thm. 2.10)
Une méthode de RK est d’ordre p ssi elle vérifie les conditions j
= 1,⋯,
p du tableau ci-dessous :où est la matrice diagonale formée des et le vecteur de composantes 1 de .
Θ θ
i1
ℝ
rj = 1 c ⋅ 1 = 1
j = 2 ctΘ1 = ctA1 1 2 j = 3
ctAΘ1 = ctA21 = 1 et 6
ctΘ21 = ctΘA1 = ct (A1)2 = 1 3
Idée de la preuve : au (vrai) tableau !
40
II. b) Les méthodes de Runge Kutta
Conditions pour une méthode d’ordre élevé :
j = 1 c ⋅ 1 = 1
j = 2 ctΘ1 = 1 2 j = 3 ctΘ21 = 1
3 ctAΘ1 = 1 et 6
Les conditions précédentes ont le défaut de devenir rapidement inextricables ! On a souvent recourt à des conditions simplificatrices.
Typiquement, en imposant A
1 = Θ1
, le tableau devient :41
Plan :
II. Les méthodes à 1-pas
I. Le théorème de Cauchy-Lipschtiz
III. Les méthodes multi-pas
IV. Quelques extensions
Objectif :
Étant donné , déterminer numériquement la solution d'un système d’EDO :
t0
∈ [
a,
b]
y′(t) = f(t, y(t)), t ∈ [a, b] y(t0) = y
0
Au programme (Chapitre 3)
a) Définition et analyse
b) Les méthodes prédiction-correction
42
III. a) Définition et analyse
L’idée de départ pour construire une méthode multi-pas est la remarque suivante :
y(ti+k) = y(ti) + ∫
ti+k
ti f(s, y(s)) ds
On utilisera alors une formule de quadrature pour évaluer l’intégrale exploitant les points y
(
ti+j)
:∫
ti+k
ti f(s, y(s)) ds ≃ Δt∑k
j=0
βjf(ti+j, y(ti+j)) ce qui conduit au schéma suivant :
yi+k = y
i + Δt∑k
j=0
βjf(ti+j, y
i+j)
Remarque :
Pour les méthodes multi-pas, on se limitera au casΔ
t constant.43
III. a) Définition et analyse
3.1 Définition (méthode multi-pas)
Étant donné et , avec , on définit la méthode multi-pas comme suit :
α
jβ
jα
k≠ 0
k
∑j=0
αjy
i+j = Δt∑k
j=0
βjf(ti+j, y
i+j)
Remarques :
Pour initialiser la méthode, i.e. calculer , il faut utiliser une méthode à 1 pas.
y1
, ⋯,
yk−1
Le calcul de ne nécessite qu’une évaluation de ce qui permet un gain en cout de calculs.
yi+k+1 f
44
III. a) Définition et analyse
3.1 Définition (méthode multi-pas)
Étant donné et , avec , on définit la méthode multi-pas comme suit :
α
jβ
jα
k≠ 0
k
∑j=0
αjy
i+j = Δt∑k
j=0
βjf(ti+j, y
i+j)
Pour l’analyse de ces méthodes, il sera utile d’introduire deux polynômes :
α(t) = ∑k
j=0
αjtj β(t) = ∑k
j=0
βjtj
45
III. a) Définition et analyse
3.2 Définition (consistance)
Une méthode multi-pas est dite consistante ssi l’erreur de consistance :
εi = 1 Δt
k
∑j=0
αjy(ti+j) − ∑k
j=0
βjf(ti+j, y(ti+j)) vérifie lim
Δt→0 max
i∈{0,⋯,N−k} ∥εi∥ = 0
3.3 Théorème (admis, cf démo. Thm. )
Une méthode multi-pas est consistante ssi et .
α(1) = 0
α′ (1) = β(1)
46
III. a) Définition et analyse
3.4 Définition (stabilité)
Soit une suite et définie par
˜ ε
i zialors la méthode est dite stable ssi il existe M
> 0
t.q.max0≤i≤N ∥y
i − zi∥ ≤ M ( max
0≤i≤k−1 ∥y
i − zi∥ + max
0≤i≤N−k ∥˜εi∥)
k
∑j=0
αjzi+j = Δt ˜εi + ∑k
j=0
βjf(ti+j, zi+j)
3.5 Théorème (admis)
Une méthode multi-pas est stable ssi les racines de
sont de module inférieure à 1, et celle de module 1 de multiplicité simple.
α(
t)
47
III. a) Définition et analyse
3.6 Définition (convergence)
Une méthode multi-pas est dite convergente ssi limΔt→0 max
0≤i≤N ∥y(ti) − y
i∥ = 0
3.7 Théorème
Si une méthode multi-pas est stable et consistante et vérifie
limΔt→0 max
0≤i≤k−1 ∥y(ti) − y
i∥ = 0
alors elle est convergente.
Preuve : au (vrai) tableau !
48
III. a) Définition et analyse
3.8 Définition (ordre)
Une méthode multi-pas est d’ordre p ssi
0≤i≤N−kmax ∥εi∥ = O(Δtp)
3.9 Corollaire
Si une méthode est convergente et d’ordre p alors max0≤i≤N ∥y(ti) − y
i∥ = O(Δtp)
Remarque :
Ce résultat n’est vrai que si on initialise la méthode multi-pas avec un méthode d’ordre p au moins !
49
III. a) Définition et analyse
3.10 Théorème
U n e m é t h o d e m u lt i - p a s e s t d ’ o r d r e p s s i où :
Cl
= 0, ∀ l ∈ {0,⋯, p}
C0 = ∑k
i=0
αi Cl = ∑k
j=0
αj jl
l! − βj jl−1 (l − 1)!
et
Preuve : au (vrai) tableau !
Remarque :
Ce résultat n’est vrai que si on initialise la méthode multi-pas avec un méthode d’ordre p au moins !
50
III. b) Méthode de prédiction correction
Méthode implicite
Dans le cas où
β
k≠ 0
, la méthode multi-pas est implicite :ce qui conduit à résoudre une équation non linéaire.
Deux difficultés apparaissent alors :
Comment initialiser la méthode de Newton pour résoudre le problème non linéaire ?
Quel critère choisir pour stopper les itérations ?
αky
i+k+∑k−1
j=0
αjy
i+j = Δtβk f(ti+k, y
i+k) + Δt∑k−1
j=0
βjf(ti+j, y
i+j)
51
III. b) Méthode de prédiction correction
Méthode implicite
Dans le cas où
β
k≠ 0
, la méthode multi-pas est implicite : αkyi+k+∑k−1
j=0
αjy
i+j = Δtβk f(ti+k, y
i+k) + Δt∑k−1
j=0
βjf(ti+j, y
i+j)
ce qui conduit à résoudre une équation non linéaire.
Pour palier ces deux difficultés, l’idée est d’utiliser une méthode de prédiction- correction :
k
∑j=0
αjy
i+j = Δtβk f(ti+k, y′
i+k) + Δt∑k−1
j=0
βjf(ti+j, y
i+j) α′k y′
i+k+∑k−1
j=0
α′jy′
i+j = Δt∑k−1
j=0
β′jf(ti+j, y′
i+j)
(Correcteur)
(Prédicteur)
52
III. b) Méthode de prédiction correction
Méthode prédiction-correction :
On considère la méthode de prédiction-correction :
k
∑j=0
αjy
i+j = Δtβk f(ti+k, y′
i+k) + Δt∑k−1
j=0
βjf(ti+j, y
i+j) α′k y′
i+k+∑k−1
j=0
α′jy′
i+j = Δt∑k−1
j=0
β′jf(ti+j, y′
i+j)
(Correcteur)
(Prédicteur)
3.11 Théorème
Si la méthode du prédicteur est d’ordre où p est l’ordre du correcteur, alors la méthode de prédiction correction est d’ordre p.
q
≥
p− 1
Preuve : au (vrai) tableau !
53
Plan :
II. Les méthodes à 1-pas
I. Le théorème de Cauchy-Lipschtiz
III. Les méthodes multi-pas IV. Quelques extensions
Objectif :
Étant donné , déterminer numériquement la solution d'un système d’EDO :
t0
∈ [
a,
b]
y′(t) = f(t, y(t)), t ∈ [a, b] y(t0) = y
0
Au programme (Chapitre 3)
a) Adaptation du pas b) Méthode pararéel
54
IV. a) Adaptation du pas
Revenons sur les méthodes à 1-pas : yi+1 = y
i + Δti Φ(ti, y
i, Δti)
Si on connaissait l’erreur de consistance , on pourrait adapter le pas à chaque itération.
ε
iΔ
tiIdée :
Utiliser une seconde méthode pour approcher l’erreur de consistance :
y′
i+1 = y′
i + Δti Φ′(ti, y′
i, Δti)
On supposera que la première méthode est d’ordre p
et la deuxième d’ordre p’ > p.
55
IV. a) Adaptation du pas
On rappelle que l’on a :
εi = y(ti+1) − y(ti) − Δti Φ(ti, y(ti), Δti) et ε′i = y(ti+1) − y(ti) − Δti Φ′(ti, y(ti), Δti)
4.1 Proposition (cf TD)
L’erreur de consistance vérifie :
ε
iεi = y
i + Δti Φ′(ti, y
i, Δti) − y
i+1 + O(Δtp+2i )
Idée : Choisir le « plus grand » pas t.q. l’estimation de soit inférieur à une tolérance fixée !
Δ t
i∥ε
i∥
56
IV. a) Adaptation du pas
Tant que
∥
ei∥ >
tol et∥
epi∥ <
tol :Algorithme d’adaptation du pas à chaque pas de tps :
<latexit sha1_base64="HbIeaJVGhQ5CdUtcI/AIhWEwTUw=">AAAFeXicjVTLbtNAFL0uDZTwSsuSzUBUKdA2cqAVLEAqKgI2SEE0baUkiibOJB3Fsa3xGBoifyRL/gC+gEU33Lkeh5Q8wFHsO+ee+zozmm7ky1i77ndn7dp64fqNjZvFW7fv3L1X2tw6icNEeaLhhX6ozro8Fr4MRENL7YuzSAk+6vritDs8Mv7Tz0LFMgyO9TgS7REfBLIvPa4R6pSGLS0u9GScdiZyp5ayli/6misVfmEznpTtsNYb4WtuUZ12JGvVz2Xlz3r3SsTuHP9xp1R2qy49bN6oWaMM9qmHm84ltKAHIXiQwAgEBKDR9oFDjL8m1MCFCLE2TBBTaEnyC0ihiLEJsgQyOKJDfA9w1bRogGuTM6ZoD6v4+FcYyWAbY0LkKbRNNUb+hDIbdFnuCeU0vY3x27W5RohqOEf0X3E583/jzCwa+vCCZpA4U0SImc6zWRJSxXTOZqbSmCFCzNg99Cu0PYrMdWYUE9PsRltO/h/ENKhZe5abwE/qcnvpfH2sbJgxVfVof4or9Mi0HlnesukDzLo31am9tM7yvmK7rzmPwVs6BfmOK4pi8AEOLCPLZlBNlY3qedUm8oyuEaEDeEWKXmCP2Tc7qUfYK8eaQ1TedKVpH9IVfTaRKbAKp171zMmQ8HV6hnOU25ym3vxc7+g0+NhTjMxgum+LJ5pM+Qw+Wb5R43hB5tfo7dFkmWIh7U9xRe7FESneFLW/74V54+RptXZQdT/ulw9f2jtjAx7AI6jgvfAcDuE91KGBKn6DXw44zvpl4WGhUniSUdccG3MfrjyFZ78BBwgjMg==</latexit>
yi+1 yi + ti (ti, yi, ti)
<latexit sha1_base64="tsRO/SqMPTCysDkLDgAFUI2Nn7o=">AAAFhnicjVRNb9NAEB2XBkKgbQpHLiuiiqKWyEFE5QBSUBFwQQqiaSvFVbRxNukqjm3Za5pg+Ydy4Qy/gQuz43VoyQc4ij375s3X29X2Q0/Gyra/WRu3Nku375TvVu7d39reqe4+OI2DJHJFxw28IDrv81h40hcdJZUnzsNI8EnfE2f98bH2n30RUSwD/0TNQnEx4SNfDqXLFUK96tS5kgOhpDcQqaPEVKWzLOul8qCRMccTQ8WjKLhihQs9GTtgzlvhKW5QlfUkc9qX8sn+H+DwRsjhQsDTXrVm12162KLRMEYNzNMOdq1f4MAAAnAhgQkI8EGh7QGHGH9daIANIWIXkCIWoSXJLyCDCsYmyBLI4IiO8T3CVdegPq51zpiiXazi4T/CSAZ7GBMgL0JbV2PkTyizRlflTimn7m2G377JNUFUwSWi/4ormP8bp2dRMISXNIPEmUJC9HSuyZKQKrpzdm0qhRlCxLQ9QH+EtkuRhc6MYmKaXWvLyf+DmBrVa9dwE/hJXe6tnG+IlTUzpqou7U9ljR651hPDWzW9j1mfzXW6WFlndV+x2deCx+AdnYJixyOKYvARmoaRZ9Ooospa9aJqF3la15DQEbwmRafYY/7NT+ox9sqx5hiV110p2odsTZ9dZAqswqlXde1kSPg6P8MFyk1OXW9xrvd0GjzsKUamP9+35ROlcz6Dz4av1ThZkvkNegc0Wa5YQPtTWZN7eUSGN0Xj73th0Th9Xm806/anF7XWK3NnlOERPIZ9vBeOoAUfoA0dVPG7tWltWdulcqleapaOcuqGZWIewo2n1PoNbwsm7A==</latexit>
yei+1 yi + ti 0(ti, yi, ti)
<latexit sha1_base64="qPrSOZoRmgJPS4RUPi88tVspOq8=">AAAFV3icjVTLbtNAFL0pSRvCK4ElmxFRJSTUyKmo6AKkoko8FkhFNG2lJIom9iSM4thmPKYNVr6Jr2HRDWzhG1jAnetxVEgccBT7zrnnvs6MZhj5MtaOc1nauFaubG5Vr9du3Lx1+069cfckDhPlio4b+qE6G/JY+DIQHS21L84iJfh06IvT4eTQ+E8/ChXLMDjWs0j0p3wcyJF0uUZoUH/d0+JCp2I+SOWc9T4k3GM9X4w0Vyo8Z5l3ZryP2nO2w3rn0hNa+p5Ic591DupNp+XQw5aNtjWaYJ+jsFH6CT3wIAQXEpiCgAA02j5wiPHXhTY4ECHWhxQxhZYkv4A51DA2QZZABkd0gu8xrroWDXBtcsYU7WIVH/8KIxlsY0yIPIW2qcbIn1BmgxblTimn6W2G36HNNUVUw3tE/xWXM/83zsyiYQT7NIPEmSJCzHSuzZKQKqZzdmUqjRkixIztoV+h7VJkrjOjmJhmN9py8n8npkHN2rXcBH5Ql9uF842wsmHGVNWl/amt0SPTemp5RdMHmHVnoVO/sE5xX7Hd15zH4AWdgnzHFUUxeAN7lpFlM6imykb1vGoXeUbXiNAxPCNFL7DH7Jud1EPslWPNCSpvutK0D/M1fXaRKbAKp171lZMh4dPiDOcotzlNveW5XtJp8LGnGJnBYt9WT5Qu+AzeWb5R43hF5ufo9WiyTLGQ9qe2JvfqCHNTtP++F5aNk91We6/lvH3cPHhq74wq3IcH8BDvhSdwAK/gCDqo4mf4Al/hW/my/KuyWalm1I2SjbkHfzyVxm9heRgq</latexit>
ei yi+1 yei+1
<latexit sha1_base64="iZEnuRptcTrQmg9ECGFfbb3XfV0=">AAAFNnicjVTLbhMxFL0pA5TwSmHJxiKq1A3RBFGBBEhFlYANUhFNWymJImfipFbmJdsDLaP8Al/Dgg38Bxt2CNixZ8P1HU9USCYwUWauzz33dWx5mIZSG9//XFs7552/cHH9Uv3ylavXrjc2bhzoJFOB6ARJmKijIdcilLHoGGlCcZQqwaNhKA6H013rP3wtlJZJvG9OU9GP+CSWYxlwg9CgsdUz4sTkIp0NcjljvYesF4qx4Uolb5jzkWvQaPotnx62aLSd0QT37CUbtV/QgxEkEEAGEQiIwaAdAgeNvy60wYcUsT7kiCm0JPkFzKCOsRmyBDI4olN8T3DVdWiMa5tTU3SAVUL8K4xksIkxCfIU2rYaI39GmS1alTunnLa3U/wOXa4IUQPHiP4rrmT+b5ydxcAYHtAMEmdKCbHTBS5LRqrYztmZqQxmSBGz9gj9Cu2AIkudGcVomt1qy8n/nZgWtevAcTP4QV1uVs43xsqWqalqQPtTX6FHoXXkeFXTx5j1zlynfmWd6r6029eSx+ApnYJyxxVFMXgB245RZLOoocpW9bJqF3lW15TQCTwmRU+wx+JbnNRd7JVjzSkqb7sytA+zFX12kSmwCqdezZmTIeHt/AyXKHc5bb3FuZ7RaQixJ43MeL5vyyfK53wGrxzfqrG/JPMT9I5oskKxhPanviL38gh7U7T/vhcWjYO7rfZ2y395r7nzyN0Z63ALbsMW3gv3YQeewx50UMV38B4+wifvg/fF++p9K6hrNRdzE/54vJ+/AdXBDUM=</latexit>
epi ei
Si
∥
ei∥ <
tol alors<latexit sha1_base64="V3eQwLXvOB8fxar9TTqfLdyXvB4=">AAAFTHicjVTLbhMxFL0paSnhlcKSjUVUiQ3RBLWiixYVFQEbpCKatlISRc7ECVbmJdsDLaP5G76GBRvY8AewZ1chcX3HExXygIkyc33uua9jy4MkkNp43rfKypXq6trV9Wu16zdu3rpd37hzrONU+aLtx0GsTgdci0BGom2kCcRpogQPB4E4GUwOrP/knVBaxtGROU9EL+TjSI6kzw1C/fqT7jMRGM66RpyZzOT9TOaMdQMxMlyp+D2b5+8aGQrNvOZOv97wmh49bNZoOaMB7jmMNyoX0IUhxOBDCiEIiMCgHQAHjb8OtMCDBLEeZIgptCT5BeRQw9gUWQIZHNEJvse46jg0wrXNqSnaxyoB/hVGMtjEmBh5Cm1bjZE/pcwWXZQ7o5y2t3P8DlyuEFEDbxH9V1zJ/N84O4uBEezQDBJnSgix0/kuS0qq2M7ZpakMZkgQs/YQ/QptnyJLnRnFaJrdasvJ/52YFrVr33FT+EFdbi6cb4SVLVNTVZ/2p7ZEj0Lr0PEWTR9h1odTnXoL6yzuS7t9LXkMntMpKHdcURSDV7DtGEU2ixqqbFUvq3aQZ3VNCB3DHil6hj0W3+KkHmCvHGtOUHnblaF9yJf02UGmwCqcejWXToaED9MzXKLc5bT1Zud6QachwJ40MqPpvs2fKJvyGbxxfKvG0ZzMT9E7pMkKxWLan9qS3PMjcrwpWn/fC7PG8aNma7vpvd5q7O+6O2Md7sF9eID3wmPYh5dwCG1U8SN8gi/wtfq5+rN6Uf1VUFcqLuYu/PGsrv0GkqAUVw==</latexit>
ti ti ⇥ 0.8
Si
∥
ei∥ >
tol alors<latexit sha1_base64="lKOCwIN6gvjAHkUomkVpOF+t9SM=">AAAFTHicjVTLbhMxFL0p6YPwSmHJxiKqxIZoUrWCRUFFRcAGqYimrZREkTNxgpV5yfZAy2j+hq9hwQY2/AHs2VVIXN/xRIU8YKLMXJ977uvY8iAJpDae962ycqW6ura+cbV27fqNm7fqm7ePdZwqX7T9OIjV6YBrEchItI00gThNlODhIBAng8mB9Z+8E0rLODoy54nohXwcyZH0uUGoX3/SfSYCw1nXiDOTmbyfyZyxbiBGhisVv2fz/F0jQ6FZq7ndrze8pkcPmzVazmiAew7jzcoFdGEIMfiQQggCIjBoB8BB468DLfAgQawHGWIKLUl+ATnUMDZFlkAGR3SC7zGuOg6NcG1zaor2sUqAf4WRDLYwJkaeQttWY+RPKbNFF+XOKKft7Ry/A5crRNTAW0T/FVcy/zfOzmJgBI9oBokzJYTY6XyXJSVVbOfs0lQGMySIWXuIfoW2T5GlzoxiNM1uteXk/05Mi9q177gp/KAutxbON8LKlqmpqk/7U1uiR6F16HiLpo8w64OpTr2FdRb3pd2+ljwGz+kUlDuuKIrBK9h1jCKbRQ1VtqqXVTvIs7omhI7hMSl6hj0W3+KkHmCvHGtOUHnblaF9yJf02UGmwCqcejWXToaED9MzXKLc5bT1Zud6QachwJ40MqPpvs2fKJvyGbxxfKvG0ZzMT9E7pMkKxWLan9qS3PMjcrwpWn/fC7PG8Xaztdv0Xu809vfcnbEBd+Ee3Md74SHsw0s4hDaq+BE+wRf4Wv1c/Vm9qP4qqCsVF3MH/nhW134De1UUUg==</latexit>
ti ti ⇥ 1.2
A priori couteux !
57
IV. a) Adaptation du pas
4.1 Définition (Runge-Kutta emboitée)
Un couple de méthode de RK respectivement d’ordre p et et impliquant r et pas intermédiaire est
dite emboitée ssi les tableaux de Butcher vérifient : p′
>
p r′=
r+ 1
θ
1θ ⋮
ra11 a1r
⋮ ⋮
arr ar1
⋯
⋯
c1
⋯
cr1
0 0 ⋮
0
c′1
⋯
c′r c′r+1yi+1 = y
i + Δti ∑r
j=1
cjf(tij, y
ij) yij = y
i + Δti ∑r
k=1
ajkf(tjk, y
jk)
˜
yi+1 = y
i + Δti ∑r+1
j=1
c′jf(tij, y
ij)
58
IV. a) Adaptation du pas
Illustration méthode de Runge-Kutta emboitée
Méthode de RK 24
(Tps 0.1s)
∼
Méthode de RK 4 (Tps 1s)∼
Simulation du mouvement de trois planètes.
59
IV. b) Méthode pararéel
Considérons une série d’instant et notons l’approximation de la solution à ces instants.
T0
=
t0< ⋯ <
TN<
Tyn
T0 T1 ⋯ Tn
Idée / Objectif : Calculer en parallèle la solution dans chaque intervalle [ t
n, t
n+1] .
Remarque :
On aura tn+1−
tn> Δ
tProblème : Connaître l’approximation . y
n
60
IV. b) Méthode pararéel
Considérons une série d’instant et notons l’approximation de la solution à ces instants.
T0
=
t0< ⋯ <
TN<
Tyn
Introduisons également deux méthodes de résolution : Une précise et couteuse . On notera
l’approximation obtenue avec en partant de
ℱ ℱ(
yn
,
tn,
tn+1)
tn+1
(
tn,
yn
)
Une grossière et peu couteuse . On notera
l’approximation obtenue avec en partant de
𝒢 𝒢(
yn
,
tn,
tn+1)
tn+1
(
tn,
yn
)
T0 T1 ⋯ Tn
61
IV. b) Méthode pararéel
Considérons une série d’instant et notons l’approximation de la solution à ces instants.
T0
=
t0< ⋯ <
TN<
Tyn
T0 T1 ⋯ Tn
Idée : Calculer itérativement les approximations : y
n
yk+1
n+1 = ℱ(yk
n, tn, tn+1) + 𝒢(yk+1
n , tn, tn+1) − 𝒢(yk
n, tn, tn+1)
Séquentiel Parallèle !
yn+1 = ℱ(y
n, tn, tn+1) + 𝒢(y
n, tn, tn+1) − 𝒢(y
n, tn, tn+1)
Parallèle !
62
IV. b) Méthode pararéel
Considérons une série d’instant et notons l’approximation de la solution à ces instants.
T0
=
t0< ⋯ <
TN<
Tyn
T0 T1 ⋯ Tn
Idée : Calculer itérativement les approximations : y
n
yk+1
n+1 = ℱ(yk
n, tn, tn+1) + 𝒢(yk+1
n , tn, tn+1) − 𝒢(yk
n, tn, tn+1)
Remarque :
Une méthode pararéel sera efficace seulement si on converge rapidement en k.
63
IV. b) Méthode pararéel
Illustration méthode pararéel :
Résolution du système de Lotka-Volterra x′(t) = αx(t) − βx(t)y(t)
y′(t) = δx(t)y(t) − γy(t)
Δt = 0.1
Paramètres :
Euler / RK4
8 sous domaines