poly de méthodes numériques

publicité
Analyse numérique 3 : évolution
Gabriel TURINICI
cours 2010-2011
Responsable cours : Gabriel TURINICI
Responsable TD : Gabriel TURINICI, Alessandra IACOBUCCI
Responsable des TP : Julien SALOMON
Volume horaire 20H cours + 14H TD + 6H TP
Semestre 6
Contrôle des connaissances : NF = 0,3PR + 0.7E
(E = Examen , PR= Projet)
Objectif de l’enseignement : analyse numérique des problèmes d’évolution
Site www : (utilisateur : “numeriqueM1” pass : “evolution”)
Aller à http://www.ceremade.dauphine.fr/~turinici/ ensuite aller
sur “Cours” ensuite choisir le votre.
1
Table des matières
1 Exemples d’équations d’évolution : épidémiologie, trafic, diffusion de chaleur, finances
5
2 Équations différentielles ordinaires (EDO)
2.1 Existence et unicité de la solution . . . . .
2.2 Schémas numériques . . . . . . . . . . . .
2.2.1 Définition de 4 schémas : . . . . . .
2.3 Erreur, consistance et ordre . . . . . . . .
2.3.1 Erreur . . . . . . . . . . . . . . . .
2.3.2 Consistance et ordre . . . . . . . .
2.4 Stabilité et convergence . . . . . . . . . . .
2.4.1 Zéro-stabilité . . . . . . . . . . . .
2.4.2 Convergence . . . . . . . . . . . . .
2.4.3 Stabilité absolue . . . . . . . . . .
2.5 Méthodes d’ordre supérieur : Runge-Kutta
2.5.1 Construction de methodes d’ordre 2
2.5.2 Consistance . . . . . . . . . . . . .
2.6 Pas de temps adaptatif pour R-K . . . . .
2.7 Systèmes d’EDO . . . . . . . . . . . . . .
2.7.1 Stabilité d’un système : . . . . . . .
2.7.2 Systèmes raides . . . . . . . . . . .
2.8 Application en épidémiologie : modèle SIR
2.9 Exercices . . . . . . . . . . . . . . . . . . .
2.9.1 Ordre . . . . . . . . . . . . . . . .
2.9.2 Erreur de troncature . . . . . . . .
2.9.3 Lemme de Gronwall . . . . . . . .
2.9.4 Problème de Cauchy . . . . . . . .
2.9.5 Runge-Kutta . . . . . . . . . . . .
2
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
(explicites)
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6
6
7
8
9
9
10
10
10
11
12
14
15
16
16
17
18
18
19
21
21
21
21
22
23
2.9.6
Systèmes d’EDO . . . . . . . . . . . . . . . . . . . . . 23
3 Équations différentielles stochastiques (EDS)
3.1 Rappels : mouvement brownien, martingales, intégrales et processus stochastiques, formule d’Ito . . . . . . . . . . . . . . . .
3.2 Formules d’Ito -Taylor . . . . . . . . . . . . . . . . . . . . . .
3.2.1 Rappels : Taylor sous forme intégrale . . . . . . . . . .
3.2.2 Formules d’Ito -Taylor . . . . . . . . . . . . . . . . . .
3.3 Schémas numériques . . . . . . . . . . . . . . . . . . . . . . .
3.3.1 Euler-Maruyama et Milshtein . . . . . . . . . . . . . .
3.3.2 Schémas implicites . . . . . . . . . . . . . . . . . . . .
3.4 Consistance . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5 Convergence . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.6 Application au delta-hedging des options et équation de Black&
Scholes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.6.1 Options . . . . . . . . . . . . . . . . . . . . . . . . . .
3.6.2 Portefeuille auto-financé . . . . . . . . . . . . . . . . .
3.6.3 Valorisation des options par delta hedging, équation de
Black& Scholes . . . . . . . . . . . . . . . . . . . . . .
3.6.4 Valorisation des options par probabilité risque-neutre .
3.7 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.1 EDS : solutions . . . . . . . . . . . . . . . . . . . . . .
4 Lois de conservation et équations hyperboliques
4.1 Dérivation . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 Méthode des caractéristiques . . . . . . . . . . . . . . . . . .
4.2.1 Résolution d’un problème hyperbolique par la méthode
des caractéristiques . . . . . . . . . . . . . . . . . . .
4.3 Problème de Riemann . . . . . . . . . . . . . . . . . . . . .
4.3.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . .
4.4 Généralités sur les différences finies . . . . . . . . . . . . . .
4.4.1 Exercices . . . . . . . . . . . . . . . . . . . . . . . .
4.5 Schémas numériques (FTCS, Lax, upwind, stabilité) . . . . .
4.5.1 Le schéma FTCS (Forward Time Centered Space) . .
4.5.2 Le schéma de Lax . . . . . . . . . . . . . . . . . . . .
4.5.3 Le schéma ”upwind” . . . . . . . . . . . . . . . . . .
4.5.4 Schémas d’ordre deux : Lax-Wendroff . . . . . . . . .
4.6 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
25
25
29
29
30
31
31
32
33
34
34
34
35
36
36
37
38
42
. 42
. 43
.
.
.
.
.
.
.
.
.
.
.
44
47
50
50
51
52
52
54
55
56
57
5 Équations aux dérivées partielles (EDP), équation de la chaleur
5.1 Motivation : évaluation d’options par Black & Scholes . . . . .
5.2 Rappels sur les EDP : espaces fonctionnels, formulation variationnelle, lemme de Lax-Milgram . . . . . . . . . . . . . . . .
5.2.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.2 Espaces de Sobolev . . . . . . . . . . . . . . . . . . . .
5.2.3 Formulation variationnelle . . . . . . . . . . . . . . . .
5.2.4 Lemme de Lax-Milgram . . . . . . . . . . . . . . . . .
5.3 Formulations variationnelles (Galerkin) pour la discrétisation
des EDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3.1 Convergence . . . . . . . . . . . . . . . . . . . . . . . .
5.3.2 Mise en oeuvre . . . . . . . . . . . . . . . . . . . . . .
5.3.3 Illustration : interpolation P 1 pour fonctions C 2 . . . .
5.4 Différences finies pour des EDP . . . . . . . . . . . . . . . . .
5.4.1 Euler explicite . . . . . . . . . . . . . . . . . . . . . . .
5.4.2 Euler implicite . . . . . . . . . . . . . . . . . . . . . .
5.4.3 Crank-Nicholson . . . . . . . . . . . . . . . . . . . . .
5.4.4 Retour à Black&Scholes . . . . . . . . . . . . . . . . .
5.5 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
60
60
61
61
62
63
64
65
65
67
68
70
70
71
71
72
73
Chapitre 1
Exemples d’équations
d’évolution : épidémiologie,
trafic, diffusion de chaleur,
finances
5
Chapitre 2
Équations différentielles
ordinaires (EDO)
Soit I un intervalle ouvert inclus dans <+. On considère l’équation différentielle
ordinaire suivante :
(
dX
= f (t, X(t))
dt
X(t0 ) = X0
dont la forme intégrale est
Zt
X(t) = X(t0 ) +
f (s, X(s))ds
(2.1)
t0
et X(t) ⊂ R. On remarque que si f est continue alors X(t) est C 1 .
2.1
Existence et unicité de la solution
Afin de montrer l’existence et l’unicité de la solution de l’EDO précédente,
on utilise les 2 théorèmes suivants :
Théorème 1 (Cauchy-Lipschitz variante locale) Soient f une fonction
continue, Lipschitz par rapport à X localement en X0 , t0 , c’est à dire qu’il
existent 2 boules Bx (X0 , Rx ), Bt (t0 , Rt ) et une constante L telle que
|f (t, X1 ) − f (t, X2 )| ≤ L|X1 − X2 |
6
pour tout t ∈ Bt et X1 , X2 ∈ Bx . Alors le problème de Cauchy admet une
solution locale unique :
X(t) : (t0 − ε, t0 + ε) −→ R (ε > 0). De plus, X(t) est C 1 .
Théorème 2 (Cauchy-Lipschitz variante globale) Sous les mêmes hypothèses que le théorème 1,si L est la même pour tout Rx (rayon de la boule),
alors une solution globale existe et est unique.
Variante : il y a existence et unicité globale également si on peut trouver
une fonction continue α : R → R+ telle que
|f (t, X1 ) − f (t, X2 )| ≤ α(t)|X1 − X2 |.
Exemples
1/ f (t, X) = rX avec r ∈ R constante. Alors |f (t, X1 )−f (t, X2 )| = |r|·|X1 −
X2 | donc nous obtenons existence globale ;
5
. Un calcul immédiat nous donne |f (t, X1 ) − f (t, X2 )| =
2/ f (t, X) = X−3
5
· |X1 − X2 | donc nous obtenons existence locale pour L >
|(X1 −3)(X2 −3)|
5
dans un voisinage de tout point (t0 , X0 6= 3). Par contre comme
|(X0 −3)(X0 −3)|
5
n’est pas borné autour de X0 = 3 le thm. d’existence globale
|(X0 −3)(X0 −3)|
n’est pas applicable.
2.2
Schémas numériques
Si la solution du problème de Cauchy existe, elle est unique (cf théorème
précédent). Pour trouver la solution on l’approche à l’aide de schémas. L’approximation se fait sur [0, T ] par N points.
Notations : - l’équation à résoudre Ẋ(t) = f (t, X(t))
T
- h = , tn = n · h, ∀n ≤ N
N
- Xn = X(tn ) ;
On notera par Un une approximation de Xn et fn = f (tn , Un ) ;
Comment calculer les Un ? Par exemple en partant de la formule suivante :
tZn+1
X(tn+1 ) = X(tn ) +
f (s, X(s))ds.
tn
Un schéma à un pas est donné par la formule :
Un+1 = Un + hφ(tn , Un , f, h)
7
(2.2)
Chaque fonction φ donne un autre schéma numérique. Sauf quand il est
explictement mentionné (cf. exercices ci-dessous), on supposera que (2.2)
admet toujours une solution unique Un+1 .
2.2.1
Définition de 4 schémas :
Nous allons expliciter quelques schémas pour f1 (t, X) = rX et f2 (t, X) =
˙ = f1 (t, X(t)) est
rX . Nous rappelons que pour f1 la solution X(t) de X(t)
˙ = f2 (t, Y (t)) est
X(t) = ert X0 alors que pour f2 la solution Y (t) de Y (t)
Y0
.
Y (t) = 1−rtY
0
– Euler explicite (EE) :
Un+1 = Un + hf (tn , Un ) = Un + hfn
U0 = X(0)
2
Justification : la formulation intégrale approximation par une méthode
des rectangles.
Exemples : pour f1 : Un+1 = Un + hrUn = (1 + rh)Un ; pour f2 :
Un+1 = Un + hrUn2 = (1 + rhUn )Un .
– Euler implicite (EI) :
Un+1 = Un + hfn+1
U0 = X(0)
Un
; pour f2 :
Exemples : pour f1 : Un+1 = Un + hrUn+1 donc Un+1 = 1−rh
2
2
Un+1 = Un + hrUn+1 donc Un+1 est solution de rhUn+1 − Un+1 + Un = 0.
– Cranck Nicholson (CN) :
(
Un+1
U0
hf + f i
n
n+1
= Un + h
2
= X(0)
Justification : la formulation intégrale approximation par une méthode
des trapèzes.
1+ rh
n+1
2
Exemples : pour f1 : Un+1 = Un + hr Un +U
donc
U
=
U ;
n+1
2
1− rh n
pour f2 : Un+1 = Un + hr
Un+1 + (1 + rh
U )Un = 0.
2 n
2
Un2 +Un+1
2
8
2
donc Un+1 est solution de
rh 2
U
2 n+1
−
– Heun (H) :
(
Un+1 = Un +
U0 = X(0)
i
hh
fn + f (tn+1 , Un + hfn )
2
Exemples : pour f1 : Un+1 = Un + h2 [rUn + r(Un + hrUn )] ; pour f2 :
Un+1 = Un + h2 [rUn2 + r(Un + hrUn2 )2 ].
2.3
Erreur, consistance et ordre
2.3.1
Erreur
Quand on introduit la solution exacte dans la formule (2.2) des méthodes à
un pas on obtient les ”erreurs de troncature”.
X(tn+1 ) = X(tn ) + hφ(tn , Xn , f, h) + hτn+1 (h)
(2.3)
X(tn+1 ) − X(tn ) − hφ(tn , Xn , f, h)
h
(2.4)
ou encore
τn+1 (h) =
Définition 1 La différence qui apparait lorsqu’on met la vraie solution dans
le schéma numérique est dite erreur de troncature. Ici il s’agit de τn+1 (h) qui
est l’erreur de troncature locale au pas n + 1. L’erreur de troncature globale
est : τ (h) = max | τn (h) |.
n=1,...,N
Remarque 1 L’erreur de troncature est ici la même chose que l’erreur entre
Xn+1 et le Un+1 obtenu en partant de Un = Xn .
Exemples
Euler explicite : par la formule de Taylor à l’ordre 2 :
1
X(t + h) = X(t) + hẊ(t) + h2 Ẍ(ξ), ξ ∈ [t, t + h]
2
1
Pour (t = tn et tn + h = tn+1 ), on obtient : τn+1 (h) = hẌ(ξn ).
2
9
2.3.2
Consistance et ordre
Définition 2 Un schéma est dit consistant si :
lim τ (h) = 0,
(2.5)
h→0
c’est à dire que pour h petit la solution exacte vérifie le schéma).
Un schéma est d’ordre ”p” si : τ (h) = O(hp ) pour h → 0.
2.4
2.4.1
Stabilité et convergence
Zéro-stabilité
Pour étudier la stabilité par rapport aux perturbations, on regarde si Znh
défini par
h i
(
(h)
(h)
(h)
Zn+1 = Zn + h φ tn , Zn , f, h + δn+1
(h)
Z0
= δ0 + X 0
est proche de Un+1 .
Définition 3 Le schéma donné par φ est dit zéro-stable s’il existe h0 et une
constante C indépendante ε tels que pour tout h ≤ h0 et |δn | < ε (∀n) :
(h)
|Zn+1 − Un+1 | ≤ Cε.
(2.6)
Théorème 3 On suppose f Lipschitz et φ Lipschitz par rapport à sa deuxième
variable ∃Λ > 0, h0 > 0 tel que ∀h < h0
|φ(t, X, f, h) − φ(t, Y, f, h)| < Λ | X − Y | .
Alors le schéma numérique donné par φ est zéro-stable.
(h)
Démonstration Voir cours. Indication : Notons : Wn = Zn − Un . Alors
Wn+1 = Zn(h) − Un + h[φ(tn , Zn(h) , f, h) − φ(tn , Un , f, h)] + hδn+1
d’où | Wn+1 |≤| Wn | +hΛ | Wn | +h|δn+1 | donc
| Wn+1 |≤| W0 | +hΛ
n
X
s=0
10
n+1
X
| Ws | + h|δs |
s=1
Lemme 1 (Gronwall discret) Soit Ks une suite de réels positifs et ϕk une
k
k
X
X
suite telle que pour tout k : ϕk+1 ≤ g0 +
ps +
Ks ϕs . Alors pour tout
n : ϕn+1
s=0
n
n
X
X
≤ (g0 +
ps ) exp( Ks ).
s=0
s=0
s=0
Démonstration Voir cours. Indication : cf. TD. Ceci nous permet de conclure
| Wn+1 |6 (1 + nh)ε exp(ΛT ) 6 (1 + T )ε exp(ΛT ).
2.4.2
Convergence
Définition 4 Un schéma est dit convergent à l’ordre p si, avec les notations
précédentes, |Un − Xn | = O(hp ). Un schéma convergent à l’ordre 1 est dit
”convergent”.
Théorème 4 Sous les mêmes hypothèses que le théorème 3 on a alors :
|Un − Xn | ≤ (| U0 − X0 | +nhτ (h)) exp(Λnh)
En particulier si | U0 −X0 |= O(hp ) et τ (h) = 0(hp ), alors | Un −Xn |= O(hp )
(le schéma converge à l’ordre p).
Démonstration Voir cours. Indication : Nous faisons comme dans la preuve
du théorème 3 avec δj = τj (h) (en utilisant donc le lemme du Gronwall
discret). Remarque 2 Le thm. précédent peut être re-écrit en disant que la consistance et la stabilité impliquent la convergence. C’est un principe souvent rencontré.
Corollaire 1 Les schémas d’Euler explicite et implicite convergent à l’ordre
1. Les schémas de Crank-Nicholson et Heun convergent à l’ordre 2.
Démonstration Voir cours. Indication : nous detaillons seulement pour le
schéma de Crank-Nicholson : la définition de l’erreur de tronquature
o
hn
f (tn , Xn ) + f (tn+1 , Xn+1 ) +hτn+1 (h)
(2.7)
Xn+1 = Xn +
2
11
donc
o
hn 0
0
Xn + Xn+1
+hτn+1 (h).
(2.8)
2
Par ailleurs la formule de Taylor à l’ordre 2 pour X 0 et d’ordre 3 pour X
donnent
Xn+1 = Xn +
h2 (3)
X (η)
2 n
h2
h3
= Xn + hXn0 + Xn00 + Xn(3) (ξ)
2
6
0
Xn+1
= Xn0 + hXn00 +
Xn+1
(2.9)
(2.10)
En remplacant (2.9) et (2.10) dans (2.8) on obtient
hτn+1 (h) =
h3 (3)
h3
Xn (ξ) − Xn(3) (η)
6
4
(2.11)
d’ou τn+1 (h) = O(h2 ). 2.4.3
Stabilité absolue
Ici la stabilité est regardée sous l’angle de la solution en temps T grand, mais
pour un pas h fixé. Pour λ ∈ C, t ≥ 0 on considère le problème test :
Ẏ (t) = λY (t)
Y (0) = 1
(2.12)
dont la solution est Y (t) = eλt . Pour <(λ) < 0 nous obtenons lim Y (t) = 0.
t→+∞
Donc toute perturbation locale en temps est ”effacée” en temps long. Ceci est
une propriété très convenable pour les schémas numériques qui doivent lutter
contre les erreurs d’arrondi etc. Nous voulons conserver cette propriété.
Définition 5 Un schéma est dit absolument stable si ∀h, λ : Un → 0. Sinon
sa région de stabilité absolue est :
{hλ ∈ C|Un → 0}.
Exemples
Euler explicite
Un+1 = Un + hλUn = (1 + hλ)Un = (1 + hλ)n+1 U0
12
région de stabilité 6
@
@
'$
1
@
R
@
-
-1
&%
Fig. 2.1 – La stabilité de Euler explicite.
région de stabilité 6
@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@
@
'$
1@@@
@
@@@@@@@@@@@@@@
@
@
@
@@@@@@@@@@@@
@
@@@@@@@@@@
@
@
1 @
@@@@@@@@@
@
@@
&%
@
@
@@@@@@@@
@
@
@
@
@
@
@
@@
@@@@@@@@@ @@
@
@@
@@@@@
@
@@@@@@@@@
@
@
@
@
@
@
@
@@
@@@@@@ de@Euler
@@@
Fig. 2.2 – La
stabilité
implicite.
@
@
@@
@@@@@
@
@
@
@
@
@
@
@
@
@
@@@@@@@@@@@@@@@@@@
On définit sa région de stabilité en imposant la condition de stabilité :
|1 + hλ| < 1. C’est donc l’intérieur de B((-1,0),1).
U0
Un
=
Euler implicite Un+1 = Un + hλUn+1 =
1 − hλ
(1 − hλ)n+1
Comme précédemment, pour trouver la région de stabilité, on limite le pas
de temps h en imposant la condition de stabilité :
|1 − hλ| > 1
Il s’agit donc ici de l’extérieur de la B((1,0),1).
Crank-Nicholson
13
région de stabilité
@@@@@@@@@@@@@@@@@@
6
@@@@@@@@@@@@@@@@@@
@
@
@@@@@@@@@@@@@@@@
@
@@@@@@@@@@@@@@@
@
@@@@@@@@@@@@@
@
@
@@@@@@@@@@@
@
@
@@@@@@@@@
@
@@@@@@@@
@
@@@@@@
@
@
@@@@
@
@
@@
@
Fig. 2.3 – La
stabilité
@
-
de Crank-Nicholson.


hλ n+1
hλ
1+
1+
h
2 U =
2 
U0
Un+1 = Un + (λUn + λUn+1 ) =

n
hλ
hλ 
2
1−
1−
2
2
On définit la région de stabilité en limitant le pas de temps h en imposant
la condition de stabilité :
hλ 1 +
2 < 1
hλ 1 −
2
Heun : la région de stabilité est {hλ tels que |1 + hλ +
2.5
(hλ)2
|
2
< 1}
Méthodes d’ordre supérieur : Runge-Kutta
Il s’agit de méthodes qui évaluent la fonction à des pas intermédiaires :
Un+1 = Un + hF (tn , Un ; h, f )
avec la fonction F du schéma définie par
F (tn , Un ; h, f ) =
s
X
b i Ki , b i ∈ R
(2.13)
i=1
Ki = f (tn + ci h, Un + h
s
X
j=1
14
aij Kj ), i = 1, 2, ..., s.
(2.14)
Une telle méthode est dite de Runge-Kutta (R-K). Pour une présentation
c A
plus simple nous introduisons le tableau du Butcher du schéma
bT
ou encore
c1 a11 a12 ... a1s
c2 a21 a22 ... a2s
... ... ... ... ...
(2.15)
cs as1 as2 ... ass
b1 b2 ... bs
Ps
Nous supposerons toujours j=1 aij = ci .
Définition 6 Si A est strictement triangulaire inférieure alors la méthode
est dite explicite ; si A est seulement triangulaire inférieure alors la méthode
est semi-explicite. Dans tous les autres cas il s’agit d’une méthode implicite.
Exemple de méthode R-K d’ordre 4 :
h
Un+1 = Un + (K1 + 2K2 + 2K3 + K4 )
6
h
h
K1 = fn = f (tn , Un ), K2 = f (tn + , Un + K1 ),
2
2
h
h
K3 = f (tn + , Un + K2 ), K4 = f (tn+1 , Un + hK3 ).
2
2
(2.16)
(2.17)
(2.18)
Le tableau de Butcher associé est
0
0
0
0
0
0
0
1/2 1/2 0
1/2 0 1/2 0
0 .
0
0
1
0
1
1/6 1/3 1/3 1/6
2.5.1
(2.19)
Construction de methodes d’ordre 2 (explicites)
Pour construire une méthode d’ordre 2 nous partons de Un = Xn . La
récurrence est Un+1 = Un + h(K1 b1 + K2 b2 ) avec K1 = f (tn , Xn ) et K2 =
f (tn + c2 h, Xn + hc2 K1 ).
On développe en série Taylor et on obtient les conditions b1 + b2 = 1,
b2 c2 = 1/2. Il existe donc plusieurs méthodes.
15
2.5.2
Consistance
Théorème 5 Soit f une fonction Lipschitz.
Alors la méthode R-K (expliPs
cite) est consistante si et seulement si i=1 bi = 1.
Démonstration Voir cours. Indication : par développements de Taylor. Remarque 3 Pour les méthodes implicites il faudrait aussi montrer l’existence d’une solution pour les pas de temps.
2.6
Pas de temps adaptatif pour R-K
Motivation : parfois la solution est presque constante, mais parfois elle
est très variable. on voudrait profiter des régions ”calmes” et utiliser un pas
h grand, qui sera adapté ensuite dans les régions très oscillantes. Pour ceci
il faut faire du pas adaptatif (c’est à dire variable et ajusté). Pour savoir
comment choisir ce pas il faut avoir des estimations d’erreur.
Comment estimer l’erreur en pratique ? Le plus facile serait de doubler le
pas
X(tn + 2h) = X1 + (2h)p+1 ψn + O(hp+2 )
X(tn + 2h) = X2 + 2hp+1 ψn + O(hp+2 ).
(2.20)
(2.21)
Ici X1 est obtenu après un pas 2h alors que X2 est obtenu après 2 pas h. Nous
remarquons que nous avons supposé travailler avec une méthode d’ordre p.
La quantité ∆ = X2 − X1 = (2p+1 − 2)hp+1 ψn nous aide à ajuster le h.
Remarque 4 Il est possible d’obtenir une approximation d’ordre p + 1 car
X(tn + 2h) = X2 + 2p∆−1 + O(hp+2 ). Mais alors l’erreur serait inconnue.
Bien qu’en principe la méthode ci-dessus serait intéressante, elle utilise
trop d’évaluation de f . Nous allons la raffiner en construisant deux méthodes
qui utilisent les mêmes évaluations (donc mêmes Ki ) mais dont les combinaisons linéaires faisant intervenir les bi donnent d’ordres différents. Nous
parlons alors de schémas emboı̂tées de Runge-Kutta-Fehlberg (R-K-F).
c A
bT
Notation :
, où c, A, b donnent un schéma d’ordre p alors que c, A, b̂T
b̂T
ET
16
donnent un schéma d’ordre p P
+ 1. La difference E = b − b̂ sert à estimer
l’erreur de tronquature ∆ = h si=1 Ei Ki .
Les plus populaires sont les schémas R-K-F d’ordres 4-5 ou 5-6 ou encore
2-3. En pratique l’algorithme est le suivant :
- nous précisons au début une tolérance ∆0
q
- si ∆ ≥ ∆0 alors nous refaisons le calcul avec le pas h̃ = h p+1
- si ∆ ≥ ∆0 le pas h est maintenu constant.
2.7
∆0
.
∆
Systèmes d’EDO
Soit I ⊂ R+ un intervalle ouvert et F : R×Rn → Rn . Il s’agit de résoudre
le problème de Cauchy suivant :
0
Y (t) = F (t, Y (t))
(2.22)
Y (t = 0) = Y0 ∈ Rn
Exemple : X 00 = f (X) n’est pas une EDO, mais on peut la mettre sous
forme d’un système, en posant : Y1 = X, Y2 = X 0 et on obtient :
0
Y1 = Y2
Y20 = f (Y1 )
Théorème 6 (existence et unicité) Soit F :] − ∞, ∞[×Rn → Rn une
fonction continue et est Lipschitz par rapport à la deuxième variable
kF (t, y) − F (t, ỹ)k ≤ Lky − ỹk ∀t ∈ R, ∀y ∈ Rn ,
avec un L ne dépendant pas de y ∈ Rn . Alors le problème de Cauchy (2.22)
admet un solution unique y(t) globale (c’est-à-dire définie pour tout t ≥ 0). Si
F est Lipschitz seulement autour de (t0 = 0, Y0 ), alors la solution est définie
seulement localement.
Cas particulier : F (t, y) = Ay avec A matrice n × n. Le problème
0
Y = AY
Y (0) = Y0
admet la solution (unique) Y (t) = eAt Y0 où on rappelle la définition de
P
(At)k
eAt = ∞
n=0 k! .
Si A est diagonalisable c’est-à-dire :
17
1) ∃Q inversible tel que A = QDQ−1 , D diagonale
2) ou d’une manière équivalente ∃Vi , λi , tel que AVi = λi Vi , kVi k = 1 et
{Vi ; i = P
1, . . . , n} est une base de Rn
alors, Y (t) = ni=1 eλi t Vi < y0 , Vi >.
2.7.1
Stabilité d’un système :
En posant Z = Q−1 Y nous obtenons :
Y 0 = AY =⇒ Y 0 = QDQ−1 Y =⇒ Q−1 Y 0 = DQ−1 Y
(2.23)
et donc comme Z 0 = (Q)−1 Y 0 on obtient par les égalités précédentes l’équation
différentielle : Z 0 = DZ et le problème :

0

 Z1 = λ1 Z1
..
.

 Z0 = λ Z
n n
n
Les solutions de ce problème s’écrivent : Zi (t) = eλi t Zi (t = 0) et la stabilité
du système équivaut à la stabilité de toutes les EDO dans le problème.
Exemples
- Euler explicite : Un+1 = Un + hf (tn , Un ). Soit f (y) = Dy.
En appliquant Euler explicite à cette exemple on a : Un+1 = Un +hDUn =
(1 + hD)Un donc le schéma est stable si |1 + hλi | < 1 pour tout i = 1, . . . , n.
-Euler implicite : Un+1 = Un +hf (tn+1 , Un+1 ) ; pour l’exemple précédent,
on a : Un+1 = Un + hDUn+1 donc Un+1 = (1 − hD)−1 Un . Le schéma est stable
si |1 − hλi | > 1 pour tout i = 1, . . . , n.
Implémentation Nous considérons toujours le cas f (t, y) = Ay.
- pour les schémas explicites Un+1 = Un +hAUn donc c’est un calcul direct
- pour les schémas implicites Un+1 = Un + hAUn+1 donc Un+1 = (I −
hA)−1 Un ; il faut résoudre un système linéaire. Pour des fonctions f plus
compliquées il faut faire une méthode de Newton ou une approximation ...
2.7.2
Systèmes raides
Nous avons vu que les schémas implicite était parfois difficiles de mettre
en oeuvre ; pourquoi les utiliser alors ? Considérons le système différentiel
18
suivant :
u0 = 998u + 1998v avec u(0) = 1
v 0 = −999u − 1999v avec v(0) = 0
On fait le changement de variables u = 2y − z et v = −y + z, ce qui nous
donne
0
y = −y
y(t) = e−t yo
⇒
z 0 = −1000z
z(t) = e−1000t z0
(donc λ1 = −1, λ2 = −1000). On retourne à nos variables initiales, et on
obtient la solution désirée,
u = 2e−t − e−1000t ,
v = e−t + e−1000t .
Pour la stabilité de Euler explicite il faut |1 + hλ1 | < 1 et |1 + hλ2 | < 1, donc
2
.
h ≤ 1000
Pour la stabilité de Euler implicite il faut |1−hλi | > 1, qui est toujours vérifié
(∀h > 0). Supposant que nous sommes intéressés seulement par la partie en
e−t de la solution (on traite donc e−1000t comme une perturbation ce qu’elle
l’est en fait), la précision des deux schémas pourrait être bonne pour des pas
h assez grands ; pourtant pour Euler explicite nous sommes obliger d’utiliser
un h petit car sinon il n’y a pas de stabilité. Conclusion : utiliser de schémas
implicites permet de résoudre avec h plus grand donc plus rapidement.
2.8
Application en épidémiologie : modèle SIR
Les variables :
- S = le nombre de personnes susceptibles d’être infectées (la population
non encore touchée par l’épidémie).
- I = les personnes infectées.
- R = les personnes qui ont eu la maladie, qui sont mortes ou qui ne
peuvent plus la transmettre (ayant acquis l’immunité ou car en quarantaine
etc).
Hypothèses du modèle :
1. Le nombre d’infection (passage de S à I) est proportionnel au nombre
de rencontres S × I. On peut le définir de la manière suivante :
S(t+dt)−S(t) ≈ nombre infections nouvelles entre t et t + dt (pris avec signe moins)
19
2. Le passage I → R est proportionnel au nombre d’individus en I. On
peut le définir de la manière suivante :
R(t + dt) − R(t) ≈ aI(t)dt
Nous obtenons le système d’équations, dit modèle SIR
dS
dt
dI
dt
dR
dt
= −rSI
= rSI − aI
= aI
(2.24)
(2.25)
(2.26)
On suppose S(0) = S0 6= 0, I(0) = I0 > 0, R(0) = R0 = 0
Remarque 5
d
(S
dt
+ I + R) = 0 donc S + I + R = cst.
Critères du modèle :
Le ρ = rS
est dit taux de reproductivité ; il intervient dans dI
= (ρ − 1)aI.
a
dt
- si ρ(t = 0) < 1 ⇒ pas d’épidémie.
- si ρ(t = 0) > 1 alors il y a épidémie. I croit ensuite décroı̂t. Le nombre
total d’individus infectés est R∞ := limt→∞ R(t) = I0 + S0 − limt→∞ S(t).
(limt→∞ S(t) existe car S(t), I(t), R(t) ≥ 0∀t et S &).
Remarque 6 S∞ := limt→∞ S(t) 6= 0 ; on parle alors de phénomène d’immunité du groupe du modèle SIR.
En pratique : r, a sont inconnues, on procède en 2 étapes
1) inversion : trouver r, a à partir des observations R(n), n = 1, . . . , Nmax
2) prévision : calculer S(t), I(t), t ≥ Nmax
Remarque 7 Des modèles plus compliqués sont parfois nécessaires, par exemple :
S → E → I → R.
Remarque 8 Les politiques sanitaires ont pour but d’influencer r, a et S0 :
quarantaine : a croit et r décroı̂t ; vaccination : S0 décroı̂t, etc.
20
2.9
Exercices
2.9.1
Ordre
Exercice 1 Décider lesquelles affirmations sont vraies :
√
√
√
√
√
1. pour h : h = O(h), h = O(h2 ), h = O( h1 ), h = O(h1/4 ) ;
2. pour sin(h) : sin(h) = O(h), sin(h) = O(h2 ), sin(h) = O( h1 ), sin(h) =
O(h1/4 ) ;
√
3. Pareil pour h + sin(h).
2.9.2
Erreur de troncature
Exercice 2 Trouver l’ordre de l’erreur de troncature pour les schémas de
Euler Implicite (EI) et Heun.
2.9.3
Lemme de Gronwall
Exercice 3 (variante intégrale)
Soit T > 0 (il peut être ∞ aussi), a(t), b(t),λ(t)
R t des fonctions continues
sur [0, T ], λ(t) ≥ 0 pour tout t. On note Λ(t) = 0 λ(τ )dτ .
1. Si pour tout t > 0 :
t
Z
a(t) ≤ b(t) +
λ(s)a(s)ds,
(2.27)
eΛ(t)−Λ(s) λ(s)b(s)ds.
(2.28)
0
alors
Z
t
a(t) ≤ b(t) +
0
Indication : Majorer la dérivée de A(t) = e−Λ(t)
Rt
0
λ(s)a(s)ds.
2. Si b est dérivable avec la dérivée intégrable sur [0, T ] alors
a(t) ≤ e
Λ(t)
Z
b(0) +
t
e
−Λ(s) 0
b (s)ds
(2.29)
0
3. Si en plus b est monotone croissante alors
a(t) ≤ eΛ(t) b(t).
21
(2.30)
4. Vérifier que en l’absence de l’hypothèse λ(t) ≥ 0 un contre-exemple est
λ(t) = λ < 0, b(t) = b + ω(t) , supp(ω) ⊂]0, T [, a(t) = beλt .
Exercice 4 (variante différentielle sans hypothèse de signe)
Soit T > 0 (il peut être ∞), g(t),λ(t) des fonctions continues sur [0, T ]
et a(t) une fonction
dérivable et dont la dérivée est continue sur [0, T ]. On
Rt
note Λ(s) = 0 λ(τ )dτ .
Si pour tout t > 0 :
a0 (t) ≤ g(t) + λ(t)a(t)
alors
Λ(t)
a(t) ≤ e
Z
(2.31)
t
a(0) +
eΛ(t)−Λ(s) g(s)ds.
(2.32)
0
Indication : Majorer la dérivée de A(t) = e−Λ(t) a(t).
Exercice 5 (variante discrète) Soit kn une suite de réels positifs et φn ≥ 0
une suite telle que
φn ≤ g0 +
n−1
X
ps +
n−1
X
φ0 ≤ g0
(2.33)
ks φs , n ≥ 1.
(2.34)
s=0
s=0
Si g0 ≥ 0 et pn ≥ 0 pour tout n ≥ 0 alors
!
!
n−1
n−1
X
X
φn ≤ g0 +
ps exp
ks
s=0
2.9.4
(2.35)
s=0
Problème de Cauchy
Exercice 6 Soit le problème de Cauchy :
x0 = 2y
y 0 = −2x − 4x3 − y
(2.36)
(2.37)
partant de (x(0), y(0)) = (x0 , y0 ) 6= (0, 0). Démontrer que ce problème admet
une solution maximale sur tout l’intervalle ]α, β[ (avec −∞ ≤ α < β ≤ ∞).
22
Exercice 7 On considère le problème de Cauchy :
x0 (t) = 2|x(t)|1/2
x(0) = 0
(2.38)
(2.39)
1. Démontrer que pour toute constante λ ≥ 0 ce problème admet la solution xλ (t) = (t − λ)2 si t ≥ λ et xλ (t) = 0 sinon. Commenter sur
l’unicité.
2. Écrire un schéma d’Euler explicite/implicite et expliquer quelle sera la
solution trouvée par un calcul numérique.
Exercice 8 Donner un résultat de convergence pour le schéma d’Euler sans
le lemme de Gronwall discret. On supposera la fonction f (t, x) Lipschitz globale de constante L et la solution X(t) de classe C 2 .
Indications : commencer sans les erreurs d’arrondi et établir une formule
de récurrence pour l’erreur.
2.9.5
Runge-Kutta
Exercice 9 (écriture R-K)
Vérifier que la méthode de Heun est bien une méthode de Runge-Kutta à
deux pas et écrire les tableaux de Butcher correspondants.
De même pour la méthode d’Euler modifiée :
h
h
Un+1 = Un + hf (tn + , Un + fn )
2
2
Exercice 10 (θ-schéma) On considère le “θ-schéma” :
Un+1 = Un + h {(1 − θ)f (tn , Un ) + θf (tn+1 , Un+1 )} .
Démontrer que la région de stabilité de ce schéma contient {z = hλ; Re(z) <
0} ssi θ ≥ 1/2.
2.9.6
Systèmes d’EDO
Exercice 11 (Modèle SIR)
Écrire un pas de la méthode d’Euler implicite pour le système
dS/dt = −rSI
dI/dt = rSI − aI
dR/dt = aI
23
(2.40)
(2.41)
(2.42)
Exercice 12 Soit le problème de Cauchy :
x0 = 2y(z − 1)
y 0 = −x(z − 1)
z 0 = −xy
(2.43)
(2.44)
(2.45)
partant de (x(0), y(0), z(0)) = (x0 , y0 , z0 ). Démontrer que ce problème admet
une solution maximale sur tout l’intervalle [0, ∞[.
Exercice 13 (systèmes autonomes) Soit le système x0 = f (x) avec f de
classe C 1 . L’état x est un vecteur de Rd .
1/ Soit x1 et x2 deux solutions de ce système. Alors si ces solutions se
touchent en un point elles sont égales.
2/ Soit x une solution. Alors soit t 7→ x(t) est injective soit elle est
périodique.
24
Chapitre 3
Équations différentielles
stochastiques (EDS)
3.1
Rappels : mouvement brownien, martingales, intégrales et processus stochastiques,
formule d’Ito
Filtrations
Le but de cette section n’est pas de constituer une présentation exhaustive
de la théorie des processus stochastique, mais seulement de fixer les notations
qui seront utilisées par la suite. On se référera à d’autres ouvrages (e.g. [5, 7])
pour les démonstrations des résultats acceptés ici tels quels.
Définition 7 Une famille (Xt )t≥0 de variables aléatoires sur un espace de
probabilité (Ω, A, P ) à valeurs dans un espace E muni d’une tribu ξ est dite
processus stochastique à temps continu et à valeurs dans (E, ξ).
Ici t est le temps et t → Xt (ω) une trajectoire du processus.
Définition 8 Soit (Ω, A, P ) un espace de probabilité. Une filtration (At )t≥0
est une famille croissance de sous-tribus de A.
At s’interprète comme l’information donc on dispose à l’instant t. On dit
que Xt est adapté à la filtration (At )t≥0 si ∀t Xt est At mesurable.
25
Réciproquement à partir de (Xt )t≥0 on pose Ãt = σ(Xs , s ≤ t) (qui est la
plus petite tribu rendant Xs mesurables pour tout s ≤ t ; ”σ” designe la plus
petite sigma algèbre contenant les ensembles en question) et At = σ(Ãt ∪ N )
(ici N sont les ensembles de mesure nulle) ; (Xt )t≥0 est adapté par rapport à
(At )t≥0 et (At )t≥0 est sa filtration naturelle.
Movement brownien
Il modélise un mouvement très irrégulier mais continu (peut être dessiné
sans lever le stylo du papier). Il s’agit d’une suite de variables aléatoires W (t)
(indexée par le temps t), notée aussi Wt , et telle que
a/ W0 = 0 avec probabilité 1
b/ P-ps t 7→ Wt (ω) est continu sur [0, T ]
b/ pour 0 ≤ s ≤ t ≤ T l’incrément W (t) − W (s)
√ est une variable normale
de moyenne 0 et variance t − s : W (t) − W (s) ≈ t − sN (0, 1) (N (0, 1) est
la loi de la variable normale standard
c/ pour 0 ≤ s < t < u < v ≤ T les incréments W (t) − W (s) et W (v) −
W (u) sont indépendants.
x2
1
e− 2λ ; par ailleurs Wt+dt − Wt
On rappelle que la densité de N (0, λ) est √2πλ
√
a comme loi N (0, dt) ou encore dtN (0, 1) (donc c’est intuitivement d’ordre
dt1/2 , cf. aussi formule de Ito).
Martingales
Soit (Ω, A, P ) un espace de probabilité et (At )t≥0 une filtration. Une
famille adaptée (Mt )t≥0 de v.a. intégrables (c’est à dire telles que E|Mt | < ∞)
est une martingale si pour tout s ≤ t E(Mt |As ) = Ms .
Remarque 9 On obtient facilement E(Mt ) = E(M0 ).
Proposition 1 Soit (Wt )t≥0 un mouvement brownien alors Wt , Wt2 − t,
eσWt −
σ2
t
t
sont des martingales.
Démonstration Voir cours. Indication : on utilise les propriétés de l’espérance
conditionnelle.
26
Intégrale de Ito
RT
Il s’agit de donner un sens à 0 f (t, ω)dWt pour un mouvement brownien
Wt et (At )t≥0 sa filtration naturelle.
RT
On se rappelle des sommes de Riemann pour le calcul de 0 h(t)dt qui
font intervenir des divisions
t0 = 0 < t1 < t2 < ... < tN = T de [0, T ] et les
P
sommes de Riemann j h(tj )(tj+1 − tj ). Ces sommes convergent à l’intégrale
de Riemann lorsque la finesse de la division tend vers zéro.
P −1
De manière analogue on construit les sommes de Ito N
j=0 h(tj )(Wtj+1 −
PN −1 tj +tj+1
Wtj ) ou de Stratanovich j=0 h( 2 )(Wtj+1 − Wtj ). Lorsque la fonction h
est déterministe les deux sommes convergent vers la même limite. Par contre
si h est aléatoire (par exemple dépend de Wt ) les deux sommes ne convergent
pas vers la même limite.
Exemple : h = W , tj = j · dt.
Les sommes de Ito :
N
−1
N
−1
X
X
h(tj )(Wtj+1 − Wtj ) =
Wtj (Wtj+1 − Wtj )
j=0
1
=
2
(3.1)
j=0
N
−1
X
Wt2j+1
−
Wt2j
j=0
1
2
− (Wtj+1
−1
1N
X
1 2
2
2
− Wtj ) =
WT − W0 −
(Wtj+1 − W(3.2)
tj ) .
2
2 j=0
2
PN −1
(Wtj+1 − Wtj )2 est de moyenne N dt = T et variance de
1
2
l’ordre dt donc la limite sera 2 WT − T .
Les sommes de Stratonovich :
N
−1
N
−1
X
X
tj + tj+1
h(
)(Wtj+1 − Wtj ) =
W tj +tj+1 (Wtj+1 − Wtj ) (3.3)
2
2
j=0
j=0
Le terme
j=0
N
−1 X
j=0
Wtj + Wtj+1
+ ∆Zj (Wtj+1 − Wtj )
2
(3.4)
Ici ∆Zj est une variable indépendante de Wtj de moyenne nulle et variance
dt/4. La limite sera 12 WT2 .
Remarque 10 L’intégrale de Stratonovich est aussi limite des sommes
N
−1
X
j=0
h(tj ) + h(tj+1 )
(Wtj+1 − Wtj ).
2
27
(3.5)
D’une manière plus générale, pourR un processus Ht adapté Rà la filtraT
T
tion (At )t≥0 on peut définir (dès que 0 Hs2 ds < ∞ ) i’intégrale 0 Hs dWs ,
RT 2
dite intégrale de Ito. Elle est une martingale si E 0 Hs ds < ∞ (condition
suffisante). Par ailleurs l’intégrale de Ito est continue.
Les propriétés
Rd’incréments
indépendants du mouvement brownien nous
t
renseignent que 0 HdW (s) est une martingale. En fait la réciproque est
t
aussi vraie : toute M (t) martingale locale par rapport au mouvement brownien dW (t) peut être représentée comme une intégrale stochastique :
Z t
M (t) = M (0) +
H(s)dW (s)
0
avec H(t) processus adapté et
martingale est continue.
Rt
0
H(s)2 ds < ∞ p.s. En particulier toute
Proposition 2 (Isométrie de Ito) L’intégrale de Ito a les propriétés suivantes
Z T
E
H(Wt , t)dWt = 0
(3.6)
0
Z T
2 Z T
E
H(Wt , t)dWt =
EH 2 (Wt , t)dt.
(3.7)
0
0
Processus d’Ito et EDS
Définition 9 On appelle un processus d’Ito le processus (Xt )t≥0 à valeurs
dans R tel que P-p.s. et pour tout t ≤ T
Z t
Z t
Xt = X 0 +
Ks ds +
Hs dWs
(3.8)
0
0
RT
RT
avec X0 A0 mesurable, Kt et Ht adaptés, 0 |Ks |ds < ∞ 0 Hs2 ds < ∞
On dira alors que Xt est solution de l’équation différentielle stochastique
dXt = Kdt + HdWt .
Proposition 3 (Ito) Pour une fonction f de classe C 2 , si Xt satisfait l’EDS
dXt = a(t, Xt )dt + b(t, Xt )dWt
alors
2
∂f
∂f
1
2∂ f
dt +
dXt + b(t, Xt )
dt.
df (t, Xt ) =
∂t
∂x
2
∂x2
28
(3.9)
Remarque 11 Comme avant, le sens à donner à (3.9) est un sens intégral.
La démonstration de cette formule, non présentée ici, permet de donner
un sens à l’égalité heuristique
(dWt )2 = dt. Donc dWt peut être vu comme
√
une variation d’ordre t d’où l’apparition de (bdW )2 = b2 dt dans la formule.
D’une manière formelle on peut écrire
∂f
∂f
1 ∂ 2f
∆t +
∆x +
(∆x)2
∂t
∂x
2 ∂x2
∂ 2f
1 ∂ 2f
1 ∂ 2f
+ 2 (∆x)2 +
∆x∆t +
(∆t)2 + ...
(3.10)
∂x
2 ∂x∂t
2 ∂ 2t
√
Mais ∆x = a∆t + b ∆tα avec α de loi N (0, 1). Alors (∆x)2 = a2 (∆t)2 +
2ab(∆t)3/2 +b2 ∆tα2 , donc E(∆x) = b2 ∆t. Il suffit ensuite de prendre ∆x, ∆t →
0.
∆f (Xt , t) =
t
Remarque 12 Si dS
= αdt + σdWt et St = eXt alors dXt = (α −
St
σdWt . Comme avant, le sens à donner à (3.9) est un sens intégral.
σ2
)dt
2
+
Modèle d’évolution d’un actif financier
Soit St un actif financier que nous prenons une action pour simplifier.
La performance de l’actif est souvent mesurée en termes de son rendement
St+dt −St
qui est le gain/perte relative entre t et t + dt. L’EDS associée est
St
dSt
= µdt + σdWt .
St
(3.11)
Ici µ est la tendance, déterministe. Le facteur multiplicatif σ est dit volatilité et donne la magnitude de l’incertitude sur l’évolution future de l’actif
financier.
3.2
3.2.1
Formules d’Ito -Taylor
Rappels : Taylor sous forme intégrale
On se rappelle que pour une équation
R tdéterministe dX(t)/dt = a(t, X(t))
la formulation intégrale est Xt = X0 + 0 a(s, Xs )ds et
∂
df (Xt )
= a(t, Xt ) f (Xt ).
dt
∂x
29
On obtient la formule
t
Z
f (Xt ) = f (X0 ) +
Lf (Xs )ds
0
∂
avec L = ∂x
. Par exemple pour f (x) = x on obtient la formule de X(t). On
suppose dorénavant a = a(X) et on utilise la formule précédente :
Z s
La(Xσ )dσ
a(Xs ) = a(X0 ) +
0
obtenant ainsi
Z
t
Z
t
Z
Xt = X 0 +
a(Xs )ds = X0 +
(a(X0 ) +
0
Z t
Z tZ s
= X0 + a(X0 )
ds +
La(Xσ )dσds
0
0
0
Z tZ s
La(Xσ )dσds.
= X0 + ta(X0 ) +
0
0
s
La(Xσ )dσ)ds
0
(3.12)
0
Pour une fonction générale on obtient la formule de Taylor sous forme
intégrale :
Z t
f (Xt ) = f (X0 ) +
Lf (Xs )ds = ...
0
= f (X0 ) +
n
X
tk
k=1
3.2.2
k!
Z tZ
k
L f (X0 ) +
s1
Z
sn
Ln+1 f (Xsn )dsn ...ds(3.13)
1.
...
0
0
0
Formules d’Ito -Taylor
Nous écrivons la formule de Ito :
Z t
Z t
2
∂
1
∂
2 ∂
f (Xt ) = f (X0 )+
a(Xs ) f (Xs ) + b(Xt )
f (Xs ) ds+ b f (Xs )dWs
2
∂x
2
∂x
∂x
0
0
2
∂
∂
∂
1
On note L0 = a(Xs ) ∂x
+ 12 b(Xt )2 ∂x
2 et L = b ∂x et on aura donc
Z
f (Xt ) = f (X0 ) +
t
Z
0
L f (Xs )ds +
0
0
30
t
L1 f (Xs )dWs .
(3.14)
Une application répétée de la formule nous permet d’écrire :
Z t
Z t
b(Xs )dWs
a(Xs )ds +
X t = X0 +
0
0
Z s
Z s
Z t
1
0
L a(Xσ )dWσ ds
L a(Xσ )dσ +
a(X0 ) +
= X0 +
0
0
0
Z s
Z s
Z t
0
1
b(X0 ) +
L b(Xσ )dσ +
L b(Xσ )dWσ dWs
(3.15)
+
0
0
Donc
0
t
Z
Xt = X0 + a(X0 )
Z
t
ds + b(X0 )
dWs + R
0
(3.16)
0
avec
Z tZ
Z tZ
s
s
L1 a(Xσ )dWσ ds
L a(Xσ )dσds +
R=
Z 0t Z 0s
Z t Z0 s 0
L1 b(Xσ )dWσ dWs .
L0 b(Xσ )dσdWs +
+
0
0
0
0
(3.17)
0
A l’ordre suivant :
Z tZ s
Z t
Z t
1
dWσ dWs + R2
dWs + L b(X0 )
ds + b(X0 )
Xt = X0 + a(X0 )
0
0
0
0
(3.18)
où
Z tZ
s
Z tZ
s
R2 =
L a(Xσ )dσds +
L1 a(Xσ )dWσ ds
0
0
0
0
Z tZ s
Z tZ sZ σ
0
L0 L1 b(Xu )dudWσ dWs
L b(Xσ )dσdWs +
+
0
0
0
Z0 t Z0 s Z σ
+
L1 L1 b(Xu )dWu dWσ dWs .
(3.19)
0
3.3
3.3.1
0
0
0
Schémas numériques
Euler-Maruyama et Milshtein
Considérons une division 0 = τ0 < τ1 < ... < τn < ... < τN = T ,
31
Le calcul numérique de la solution peut se faire e.g. par la méthode de
Euler-Maruyama (E-M) : on approche X(τn ) par Yn et on pose
Yn+1 = Yn +a(τn , Yn )(τn+1 −τn )+b(τn , Yn ) Wτn+1 −Wτn , Y0 = X(0). (3.20)
Comme dans les chapitres précédents on étudiera surtout le cas particulier
τk = k∆τ et on notera h = τn+1 − τn , ∆Wn = Wτn+1 − Wτn . Lorsqu’il n’y a
pas d’ambiguı̈té, on note aussi an = a(τn , Yn ), bn = b(τn , Yn ).
Ainsi le schéma Euler-Maruyama est donc
Yn+1 = Yn + an h + bn ∆Wn , Y0 = X(0).
(3.21)
Exercice 14 Expliquer comment le schéma d’Euler-Maruyama utilise le développement
Ito-Taylor à l’ordre 0.5-1.
Remarque 13 Pour a et b constantes Euler-Maruyama donne Yn+1 = Y0 +
aτn+1 + bWτn+1 .
Un autre schéma qu’on peut obtenir à l’aide de Ito-Taylor à l’ordre 1 est
le schéma de Milshtein
n
o
1
Yn+1 = Yn + an h + bn ∆Wn + bn b0n (∆Wn )2 − h , Y0 = X(0).
(3.22)
2
Exercice 15 Expliquer comment le schéma de Milshtein utilise le développement
Ito-Taylor à l’ordre 1.
D’autres schémas existent tels que les schémas dits d’ordre 1.5 ou 2, etc.
3.3.2
Schémas implicites
Une attention particulière est à accorder aux schémas implicites. Considérons
l’exemple d’un cas simple où a(X) = aX et b(X) = bX. Une translation naı̈ve
du principe des schémas implicites suggererait que Euler-Maruyama implicite
Yn
devrait être Yn+1 = Yn + ahYn+1 + bYn+1 ∆Wn ou encore Yn+1 = 1−ah−b∆W
n
ce qui pose problème car pas borné car on sait par exemple que pour une
1
variable normale réduite ξ la quantités E |ξ|
n’est pas finie. Donc il ne faut
pas rendre implicite la partie brownienne et ainsi on arrive au schéma EulerMaruyama implicite
Yn+1 = Yn + ahYn+1 + bYn ∆Wn .
32
(3.23)
Pareil pour le schéma de Milshtein implicite
o
b(τn , Yn )b0 (τn , Yn ) n
2
(∆Wn ) − h
Yn+1 = Yn + a(τn+1 , Yn+1 )h + b(τn , Yn )∆Wn +
2
Y0 = X(0).
(3.24)
3.4
Consistance
Définition 10 (Consistance faible) Un schéma est faiblement consistant
si
2
Yn+1 − Yn Aτn − an = 0
(3.25)
lim E E
h→0
h
et
2 !
1
lim E E
(Yn+1 − Yn )2 |Aτn − b2n = 0.
(3.26)
h→0
h
Théorème 7 Les schémas d’Euler-Maruyama et Milshtein sont faiblement
consistants.
Démonstration Voir cours. Indication : calculs en faisant attention aux
ordres. Définition 11 (Consistance forte) Un schéma est fortement consistant
si
2
Yn+1 − Yn =0
A
−
a
(3.27)
lim E E
τ
n
n
h→0
h
et
1
2
lim E
|Yn+1 − Yn − E(Yn+1 − Yn |Aτn ) − bn ∆Wn | = 0.
(3.28)
h→0
h
Remarque 14 La première condition de la consistance forte et faible est la
même.
Théorème 8 Les schémas d’Euler-Maruyama et Milshtein sont fortement
consistants.
Démonstration Voir cours. Indication : calculs en faisant attention aux
ordres. 33
3.5
Convergence
Définition 12 (Convergence forte) Un schéma numérique Yn de pas h
converge fortement à l’ordre γ > 0 au temps T = N h s’il existe h0 > 0 et
C > 0 indépendante de h telle que
E(|X(T ) − YN |) ≤ Chγ , ∀h ≤ h0
(3.29)
Définition 13 (Convergence faible) Un schéma numérique Yn de pas h
converge faiblement à l’ordre β > 0 au temps T = N h s’il existe h0 > 0 et
C > 0 indépendante de h telle que
|Eg(X(T )) − Eg(YN )| ≤ Chβ , ∀h ≤ h0 , ∀g ∈ Cp2β+2
(3.30)
Ici Cp2β+2 sont les fonctions à croissance au plus polynomiale de classe 2β + 2.
Théorème 9 Le schéma Euler-Maruyama converge fortement à l’ordre 0.5
et faiblement à l’ordre 1. Le schéma de Milshtein converge fortement et faiblement à l’ordre 1.
Démonstration Voir cours. Indication : on fait des estimations sur Z(t) =
sup0≤s≤t E|Yns − Xs |2 avec ns la partie entière inférieure de s/h........ 3.6
3.6.1
Application au delta-hedging des options
et équation de Black& Scholes
Options
Nous ne donnons pas ici toutes les détails des produits dérivés, le lecteur
intéressé peut consulter [4].
Pour rappel un call européen de strike K et maturité T sur un actif St
est le droit d’acheter l’actif St au prix K à l’instant (futur) T . En général les
options peuvent apporter h(ST ) à l’instant T , dans ce cas la fonction h est
appelée pay-off de l’option.
Il suit qu’à l’instant T le ’juste prix’ C(T, S) de ce contrat est
C(T, ST ) = (ST − K)+ .
34
(3.31)
Il reste maintenant à trouver le prix pour t < T . Pour ce faire on prend un
modèle d’évolution du sous-jacent St , par exemple
dSt
= µdt + σdWt .
St
3.6.2
(3.32)
Portefeuille auto-financé
Soit Πt un portefeuille composé d’actifs Sti en quantité θti , i = 0, ..., n. Il
est usuel de prendre comme premier actif l’actif sans risque dont l’évolution
est dSt0 = rSt0 dt avec r le taux d’intérêt sans risque.
La valeur Πt de ce portefeuille à l’instant t est
Πt =
n
X
θtk Stk qui sera noté θt · St .
(3.33)
k=0
Parmi tous les portefeuilles possibles, un type bien particulier nous intéressé
ici : ceux qui sont autofinancés c’est à dire ne reçoivent pas d’argent (et
ne versent pas). Pour ces portefeuilles seules sont admises des opérations
d’arbitrage entre les actifs i.e. il faut vendre un actif pour acheter un autre.
En temps discret ceci nous donne la relation suivante
θtn+1 · Stn+1 = θtn · Stn+1
(3.34)
car la redistribution se fait aux prix présents. Pour comprendre on peut
considérer par exemple des actifs qui se négocient seulement au ”fixing” une
seule fois par jour, alors, en ayant fini la journée avec une distribution d’actifs
θtn la redistribution θtn → θtn+1 se fera demain sur la base des prix de demain
Stn+1 (on suppose vente et achat simultanés).
Ceci veut dire que
Πtn+1 − Πtn = ...( après calcul) = θtn · (Stn+1 − Stn ).
(3.35)
et justifie la
Définition 14 Un portefeuille Πt est dit autofinancé si pour tout t :
dΠt = θt · dSt .
(3.36)
Remarque 15 Pour un portefeuille autofinancé dθt · St = 0.
Proposition 4 Tout portefeuille peut être rendu autofinancé en rajoutant
de l’actif sans risque.
35
3.6.3
Valorisation des options par delta hedging, équation
de Black& Scholes
Soit un portefeuille Π composé de 1 option de prix Ct = C(t, St ), ∆t
parts du sousjacent St et une certaine quantité γt d’actif sans risque (pour le
rendre autofinancé).
Alors si on prend ∆t = − ∂C
après calculs ........... on obtient
∂S
∂ 2C σ2S 2
+
γ
r
dt
(3.37)
t
∂t
∂S 2 2
donc c’est une évolution déterministe. Mais la seule évolution déterministe
possible pour un portefeuille est dΠt = rΠt dt d’où l’équation de Black&
Scholes :
dΠt =
∂C
+
∂C
∂C 1 2 2 ∂ 2 C
+ rC
+ σ S
− rC = 0
∂t
∂S
2
∂S 2
C(T, ST ) = h(ST )
(3.38)
(3.39)
La deuxième équation est tout simplement C(T, ST ) = (ST − K)+ pour
h(S) = (S − K)+ .
3.6.4
Valorisation des options par probabilité risqueneutre
Manifestement, d’après (3.32), St n’est pas une martingale. En utilisant
Girsanov et après calculs ........ on peut montrer que
−
C(t, St ) = E e
RT
t
r(s)ds
dXt
= rdt + σdW̃t .
Xt
h(XT )Xt = St
(3.40)
(3.41)
Ceci nous permet de calculer le prix selon la procédure suivante :
- on initialise Xt à St
- on calcule avec un schéma numérique (E-M, Milshtein, etc) XT pour
beaucoup de réalisations du mouvement brownien W̃t
- on calcule l’espérance du pay-off h(XT ) qu’on actualise comme dans la
formule précédente.
36
Remarque 16 On remarque que la procédure utilise la convergence faible.
Par ailleurs les arbres binômiaux Cox-Ross-Rubinstein sont donc un cas particulier de ce calcul pour un schéma particulier (voir aussi les exercices). Par
contre pour d’autres options (e.g. dépendantes de chemin) c’est la convergence forte qui est nécessaire.
Remarque 17 Le prix d’une option dépend d’une manière cruciale de la
volatilité σ (seul facteur inconnu, le taux r étant coté et connu). En fait on
peut négocier la volatilité à travers les options.
3.7
Exercices
Dans tout ce qui suit on considère une EDS
dXt = a(t, Xt )dt + b(t, Xt )dWt
(3.42)
Les coefficients a et b qui satisfont, au minimim, les conditions du théorème
d’existence d’un processus d’Ito, à savoir :
- a,
At du processus Xt
R T b sont adaptés à laR filtration
T
- 0 |as |ds ≤ ∞ ppt , 0 |bs |2 ds ≤ ∞ ppt
Rappel : le pas de temps est ici égal à h et on note τn = nh. Les schémas
numériques proposeront des approximations Yn de Xτn .
Lorsqu’il n’y a pas d’ambiguı̈té, on note an = a(τn , Yn ), bn = b(τn , Yn ).
Exercice 16 (consistance faible) On suppose a bornée : |a(t, x)| ≤ M ∀t, x.
1/ Montrer que le schéma suivant, dit ”Euler Maruyama faible”
√
(3.43)
Yn+1 = Yn + a(τn , Yn )h + b(τn , Yn )ξn h
est faiblement consistant. Ici ξn sont des variables aléatoires indépendantes
entre elles et indépendantes de Aτn telles que P (ξn = ±1) = 12 .
2/ Généraliser pour d’autres variables ξn .
3/ Le schéma est-il fortement consistant ?
Exercice 17 (schéma de Heun pour EDS) Dans cet exercice on considère
que dans (3.42) les coefficients a et b sont indépendants du temps, de classe
37
C 2 et a,b et les dérivées d’ordre 1 et 2 ( a0 ,a00 ,b0 ,b00 ) également bornées. On
étudie une généralisation formelle du schéma de Heun
o
1n
a(Yn ) + a Yn + a(Yn )h + b(Yn )∆Wn h
Yn+1 = Yn +
2
n
o
1
+ b(Yn ) + b Yn + a(Yn )h + b(Yn )∆Wn ∆Wn
(3.44)
2
Montrer que ce schéma n’est pas fortement consistant pour tout choix de a
et b et trouver pour quels types de coefficients le schéma l’est (conditions
suffisantes).
Exercice 18 (consistance : définitions)
Montrer que pour l’équation (3.42) les définitions de la consistance comme
EDS et comme EDO coı̈ncident si b = 0 (a et b seront supposeés aussi
régulières que nécessaire).
Exercice 19 Donner un exemple de coefficients a et b tels que le schéma
d’Euler Maruyama appliqué à d’équation (3.42) ait un ordre de convergence
forte strictement inférieur à 1.0.
Exercice 20 Dans l’équation (3.42) on supposera a, b Lipschitz, de croissance au plus quadratique en X. Montrer qu’un schéma fortement consistant
partant de X(0) converge fortement. Appliquer au schémas Euler-Maruyama
et Milstein et montrer que dans ces cas l’ordre de convergence γ est supérieur
à 0.5.
3.7.1
EDS : solutions
Rappel dans le calcul des esperances conditionnelles les propriétés suivantes
sont utiles (A est une tribu) :
a/ E(XZ|A) = ZE(X|A) si Z est mésurable par rapport à A
b/ E(X|A) = EX si X est indépendante de A
c/ majoration : E(X|A) ≤ E(|X||A)
Exo. 16 Nous vérifions les deux propriétés dans la définition de la consistance faible.
E
Yn+1 − Yn Aτn − an = E
h
bn
= an + √ Eξn − an = 0
h
!
√
an h + bn hξn Aτn − an
h
(3.45)
38
où nous avons utilisé le fait que an et bn sont mésurable p/r à Aτn et aussi
le fait que ξn est indépendante de Aτn , et Eξn = 0. Donc
2
Yn+1 − Yn (3.46)
E E
Aτn − an = E0 = 0
h
ce qui donne la première majoration dans la définition de la consistance, avec
c(h) = 0.
La deuxième condition :
!
√
(an h + bn hξn )2 (Yn+1 − Yn )2 E
Aτn
Aτn = E
h
h
√
= ha2n + 2an bn hEξn + b2n Eξn2 = ha2n + b2n .
(3.47)
Nous avons à nouveau utilisé Eξn = 0 mais aussi Eξn2 = 1 (et bien sur
l’indépendance de ξn et la mésurabilité de a et b p/r à Aτn ). On conclut
2
2
(Y
−
Y
)
n+1
n
2
Aτn − an = E(ha2n )2 ≤ h2 M.
(3.48)
E E
h
Mais M h2 → 0 pour h → 0, ce qui achève la démonstration de la consistance
faible (avec c(h) = M h2 dans les deux estimations).
2/ On remarque que toute suite de variables aléatoires ξn indépendantes
entre elles et indépendantes de Aτn de moyenne 0 et variance 1 donnent les
même resultat.
3/ Il ne peut pas l’être, car la deuxième condition de la définition de la
consistance forte ne serait pas satisfaite (en effet, les variables ξn n’ont aucune
relation avec les ∆Wn , donc en particulier ne peuvent pas les compenser lors
du calcul, et on reste avec un terme qui ne tend pas vers zéro pour h → 0).
Exo. 17
Les calculs de cet exo ne sont pas tout à fait
similaires à ceux de
l’application précedante pour la raison suivante : a Yn + an h + bn ∆Wn n’est
ni indépendante de Aτn ni mésurable par rapport à Aτn ; effectivement,
la fonction a mélange
∆Wn d’une part et Yn ,an et bn d’autre part donc,
a Yn + an h + bn ∆Wn n’est pas indépendante de Aτn à cause de la présence
des Yn ,an et bn et n’est pas mésurable p/r à Aτn à cause de la présence de
∆Wn . Il nous faut alors remplacer le calcul exacte de l’espérance conditionnelle, qu’on pouvait faire avant, par un calcul approché par des formules de
Taylor.
39
On remarque tout d’abord que, avec les notations an = a(Yn ), bn = b(Yn ),
= a0 (Yn ), b0n = b0 (Yn ), une formule de Taylor à l’ordre 2 nous donne :
2
00 n a (α )
a Yn +an h+bn ∆Wn = an +a0n · an h+bn ∆Wn + 2 y · an h+bn ∆Wn
pour un certain point αyn .
De
2
même :
00 n b (β )
b Yn +an h+bn ∆Wn = bn +b0n · an h+bn ∆Wn + 2 y · an h+bn ∆Wn
pour un certain point βyn .
Remarque : e.g., a0n est mésurable p/p à Aτn car il s’agit d’une fonction i.e.
a0 (·) appliquée à une variable Yn qui elle est mésurable p/r à Aτn .
Il ne reste plus qu’à faire les calculs de la même façon qu’avant. Nous
omettons seulement le calcul immédiat initial qui utilise l’indépendance et
la mésurabilité p/r à Aτn ; le lecteur est par contre invité à refaire si besoin.
00 n 2
a (αy )
0
an an h + E
an h + bn ∆Wn |Aτn
2
Yn+1 − Yn A
−
a
=
a
+
E
τ
n
n
n
h
2
00 n 2
b (βy )
E
· an h + bn ∆Wn ∆Wn |Aτn
2
bn b0n
2
+
E∆n +
− an .
(3.49)
2h
2h
A ce point, sous les hypothèses de l’exo, nous pouvons donc estimer que
√
b0n bn
Yn+1 − Yn A
−
a
=
E
+
O(
h)
(3.50)
τ
n
n
h
2
2
a0n
E b00 (βyn )· an h+bn ∆Wn
∆Wn |Aτn
A titre d’exemple, détaillons le traitement du terme
.
4h
n
00
n
Tout d’abord il faut se rappeler que βy dépend de ∆Wn aussi, donc b (βy )
n’est pas forcement mésurable par rapport à Aτn (ni forcement indépendant
de Aτn ). Donc on aura seulement des majorations :
2
2
E b00 (βyn ) · an h + bn ∆Wn ∆Wn |Aτn
E an h + bn ∆Wn |∆Wn |Aτn
≤ M2
2h
2h
où M2 = supx |b00 (x)|. On continue les majorations :
2
n
E an h + bn ∆Wn |∆Wn |Aτn
M2
≤ M2 Ea2n h|∆Wn | +
2h
√
√ 2 √ 3
b2 |∆Wn |3 o
2Ean bn |∆Wn |2 + E n
≤ C(h h + h + h ) ≤ C 0 h1/2
h
40
avec des constantes C, C 0 indépendantes de h.
Revenant à (3.50), comme bn b0n n’a aucune raison d’être petit pour h → 0 (en
fait il ne dépend même pas de h), le schéma n’est pas consistant en général.
Un calcul similaire nous montre que
2 1
(3.51)
E Yn+1 − Yn − E(Yn+1 − Yn |Aτn ) − bn ∆Wn = O(h).
h
En conclusion, le schéma est fortement (donc faiblement) consistant si et
seulement si bb0 = 0 c’est à dire b = constant.
41
Chapitre 4
Lois de conservation et
équations hyperboliques
4.1
Dérivation
On considère le domaine Ω ⊂ Rd et ρ(x, t) la densité d’une quantité
conservée. dont on note par F le flux entrant à travers la frontière ∂Ω.
Si on effectue un bilan sur ∂Ω on obtient la relation suivante :
Z
Z
d
F dσ.
(4.1)
ρ(x, t)dx =
dt Ω
∂Ω
En effet, l’évolution temporelle de la densité de la quantité conservée est
bien égale au flux entrant sur la frontière ∂Ω.
En dimension 1 (d=1) la frontière de Ω =]a, b[ est composée des points a et
b. On obtient
Z
Z b
d b
ρ(x, t)dx = F (b) − F (a) =
F 0 (x, t)dx.
(4.2)
dt a
a
Soit v(x) la vitesse en x ∈ Ω. Le flux sortant est alors F = −vρ et on
obtient pour tout α, β ∈ Ω
Z
Z β
d β
∂(vρ)
ρ(x, t)dx = −
dx,
(4.3)
dt α
∂x
α
d’où
∂ρ ∂(vρ)
+
= 0.
(4.4)
∂t
∂x
42
Une telle équation est dite équation hyperbolique ou loi de conservation.
1/ Cas particulier v = v0 constante. Alors l’équation est
∂ρ
∂ρ
+ v0
=0
∂t
∂x
(4.5)
2/ Si v ne dépend pas de t ni directement de x, c’et à dire v = v(ρ) alors
pour f = v(ρ)ρ on obtient
∂ρ ∂f (ρ)
+
=0
∂t
∂x
(4.6)
Exemple : le modèle de trafic (Greenshields)
Dans cet exemple, toujours en dimension 1,
Ω est une
route et ρ est la
ρ
densité de voitures. La vitesse est v(ρ) = vmax 1 − ρmax
En effet si la densité est maximale alors la vitesse est nulle sur la route
(v=0), on a un bouchon. De même si la densité est nulle alors la vitesse est
maximale (v = vmax ). On obtient
∂ρ vmax ∂
+
ρ(ρmax − ρ) = 0.
∂t ρmax ∂x
4.2
(4.7)
Méthode des caractéristiques
Soit l’équation
∂u ∂f (u)
+
=0
∂t
∂x
u(x, 0) = u0 (x).
(4.8)
(4.9)
Définition 15 On note a(u) = f 0 (u). Soit u une solution de (4.8)-(4.9). La
caractéristique issue de x0 est la courbe t 7→ Xx0 (t) d’équation
d
Xx (t) = a(u(Xx0 (t), t))
dt 0
Xx0 (0) = x0 .
Théorème 10 Soit u une solution de classe C 1 de (4.8)-(4.9). Alors
1. u est constant le long des caractéristiques
43
(4.10)
(4.11)
2. pour tout x0 la caractéristique issue de x0 est une droite
X = x0 + a(u0 (x0 ))t.
(4.12)
Démonstration Voir cours. Indication : Par dérivation. Corollaire 2 Dans le cas particulier a(·) = constante les caractéristiques
sont Xx0 (t) = x0 +at, et la solution satisfait u(x, t) = u(x−at, 0) = u0 (x−at).
4.2.1
Résolution d’un problème hyperbolique par la
méthode des caractéristiques
On considère le problème
∂
∂u(x, t)
+
(u(1 − u)) = 0.
∂t
∂x
(4.13)
avec


1
pour
x ≤ −1/2
1/2 − x pour −1/2 ≤ x ≤ 1/2
u(x, 0) = u0 (x) =

0
pour
x ≥ 1/2
Fig. 4.1 – Fonction (4.14).
44
(4.14)
On calcule a(u) = 1−2u et les caractéristiques sont données dans Fig. 4.2.
On obtient ensuite la solution

1
pour
x ≤ −t − 1/2

1
x
−
pour −t − 1/2 ≤ x ≤ t + 1/2
u(x, t) =
(4.15)
 2 1+2t
0
pour
x ≥ t + 1/2
Fig. 4.2 – Caractéristiques pour (4.14).
Soit maintenant le problème
∂
∂u(x, t)
+
(u(1 − u)) = 0.
∂t
∂x
avec


0.5
pour
x≤0
(x + 1)/2 pour 0 ≤ x ≤ 1
u(x, 0) = u0 (x) =

1
pour
x≥1
(4.16)
(4.17)
illustré dans la Fig. 4.3. Ici les caractéristiques se croisent, donc il y aura
création de singularité en t = 1, voir Fig. 4.4. Pour t ≤ 1 la solution sera
donc

1/2 pour
x ≤ 0, 0 ≤ t ≤ 1

1
x
+ 1 pour 0 ≤ x ≤ 1 − t, 0 ≤ t ≤ 1
u(x, t) =
(4.18)
 2 1−t
1
pour
x≥1−t 0≤t≤1
45
Fig. 4.3 – Fonction (4.17).
Fig. 4.4 – Caractéristiques pour (4.17).
46
4.3
Problème de Riemann
Pour comprendre la nature des solutions, on considère le problème suivant, dit de Riemann, qui a une condition initiale simple :
∂u(x, t) ∂f (u)
+
= 0.
∂t
∂x ug pour x ≤ 0
u(x, 0) = u0 (x) =
ud pour x > 0
(4.19)
(4.20)
Dans tout ce qui suit nous supposerons que f est de classe C 2 et concave. Nous
remarquons que sous ces hypothèses a = f 0 est décroissante donc inversible.
Notons v = a−1 son inverse (comme fonction).
Nous allons décrire les solutions de ce problème dans les deux cas possibles
ug ≤ ud et ug ≥ ud . Les solutions obtenues porteront le nom de ”solutions
faibles entropiques”.
1/ ug ≤ ud , voir Fig. 4.5. Il y a intersection des caractéristiques. On
Fig. 4.5 – Condition du problème de Riemann pour ug ≤ ud .
accepte que dans ce cas la solution correcte est une onde de choc
ug pour x ≤ st
u(x, t) =
ud pour x > st
47
(4.21)
où s est la vitesse du choc donnée par la formule de Rankine-Hugoniot
s=
f (ud ) − f (ug )
.
ud − ug
(4.22)
Pour comprendre intuitivement pourquoi cette formule, écrirons le bilan
de quantité conservée sur un intervalle [a, b] entre t et t + dt (cf. Fig. 4.6). Il
Fig. 4.6 – Bilan de matière lors de l’évolution d’un choc.
apparait en effet que la masse perdue est d’une part (ud −ug )·[s(t+dt)−st] et
d’autre part ceci devrait être la différence entre flux sortant et entrant, c’est
à dire [f (ud )−f (ug )]dt. Il suit que (ug −ud )·[s(t+dt)−st] = [f (ud )−f (ug )]dt
d’où (4.22).
2/ ug ≥ ud , voir Fig. 4.7. Dans ce cas les caractéristiques ne se croisent
pas mais par tout point ne passe pas nécessairement une caractéristique.
Pour remédier nous pouvons considérer une régularisation u0ε de la condition
initiale u(x, t = 0) comme dans la Fig. 4.8 ; celle ci aura des solutions par la
méthode des caractéristiques ; ensuite il suffit de passer à la limite ε → 0. La
solution sera alors

pour
x ≤ a(ug )t
 ug
v(x/t) pour a(ug )t ≤ x ≤ a(ud )t
u(x, t) =
(4.23)

ud
pour
x ≥ a(ud )t
Elle est appelée onde de raréfaction ou onde de détente. Elle est continue.
48
Fig. 4.7 – Condition du problème de Riemann pour ug ≥ ud .
Fig. 4.8 – Regularisation u0ε de la condition initiale u(x, t = 0) du problème
de Riemann pour ug ≤ ud .
49
4.3.1
Conclusion
Nous avons donc vu que le problème de Riemann pour f concave admet
deux types de solutions
- si la densité ug pour x < 0 est plus petite que celle ud pour x > 0 alors
la solution faible entropique est un choc qui se déplace à la vitesse s donnée
par la formule de Rankine-Hugoniot. Nous retrouvons une illustration dans
l’évolution d’un flot de voitures sur une route : quand devant la densité est
plus importante que derrière il y a formation d’un ”bouchon”.
- si la densité ug pour x < 0 est plus grande que celle ud pour x > 0 alors
la solution faible entropique est une onde de raréfaction. Nous retrouvons une
illustration dans l’évolution d’un flot de voitures sur une route : par exemple
au départ d’un feu rouge (quand devant il n’y a personne) il y a étalement
des voitures sans bouchon.
Dans le cas général (donnée initiale plus compliquée), il faut combiner
les deux techniques pour trouver la solution globale du problème. Ce sont
toujours les caractéristiques qui nous permettent de raisonner.
4.4
Généralités sur les différences finies
Nous allons présenter une méthodologie générale pour la résolution d’un
problème aux dérivées partielles : les différences finies. Bien que ceci s’utilise
pour une dimension d de l’espace arbitraire nous allons seulement l’utiliser
en 1D.
Soit donc une équation aux dérivées partielles faisant intervenir une fonction u définie sur un domaine spatial [X0 , XM ] ⊂ R et temporel [0, T ]. On se
donne u0 = u(x, t = 0). Obtenir la solution en tout point est généralement impossible, il faut alors discrétiser, c’est à dire calculer seulement une approximation. Pour ceci nous allons utiliser une division de X0 , X1 = X0 +∆x, X2 =
X0 + 2∆x, ..., XM = X0 + M ∆x avec ∆x = (XM − X0 )/M et pareil pour le
temps 0, t1 = ∆T, t2 = 2∆t, ..., voir Figure 4.9.
L’idée générale est que u(Xj , tn ) sera approché par Ujn et on donnera une
méthode pour calculer Ujn .
Pour ceci il faut rappeler quelques formules, venant de la formule de
Taylor, pour une fonction f : R → R :
f 0 (x) =
f (x + h) − f (x)
+ O(h) (Euler explicite).
h
50
(4.24)
Fig. 4.9 – Discretization par différences finies.
f 00 (x) =
f (x + h) + f (x − h) − 2f (x)
+ O(h2 )
h2
(4.25)
Il existe un deuxième schéma pour le calcul de f 0 (x), dit centré :
f 0 (x) =
f (x + h) − f (x − h)
+ O(h2 ).
2h
(4.26)
Ces schémas seront utilisés ensuite en divers combinaisons pour retrouver
la solution.
Pour ce qui est des données au bord du domaine on peut prendre
a/ des données périodiques u(X0 , t) = u(XM , t)
b/ des données explicites u(X0 , t) = g1 (t), u(XM , t) = g2 (t), avec g1 , g2
connues.
4.4.1
Exercices
Exercice 21 Démontrer les formules (4.24)-(4.26).
Exercice 22 Trouver α, β, γ tels que :
f 0 (x) =
αf (x + 2h) − βf (x − h) + γf (x)
+ O(h2 ).
h
51
(4.27)
4.5
Schémas numériques (FTCS, Lax, upwind,
stabilité)
On rappelle l’équation :
∂u ∂f (u)
+
=0
∂t
∂x
u(x, 0) = u0 (x).
(4.28)
(4.29)
Bien que ces schémas s’appliquent à une fonction f (u) générale dans
l’équation (4.8)-(4.9), nous allons seulement l’expliquer pour f linéaire, f (u) =
vu et plus encore nous prendrons v = 1.
4.5.1
Le schéma FTCS (Forward Time Centered Space)
Comme son nom le dit, c’est une méthode explicite en temps et centrée
en espace (voir Fig. 4.10) :
n
n
Ujn+1 − Ujn ∂u(Xj , tn )
Uj+1
− Uj−1
∂u(Xj , tn )
'
,
'
.
∂t
∆t
∂x
2∆x
(4.30)
Fig. 4.10 – Schéma FTCS.
On obtient ainsi l’équation à chaque pas de temps :
n
n
Ujn+1 − Ujn Uj+1
− Uj−1
∀j, n :
+
= 0,
∆t
2∆x
52
(4.31)
ou encore pour λ =
∆t
∆x
:
Ujn+1 =
λ n
λ n
Uj−1 + Ujn − Uj+1
.
2
2
(4.32)
∆t
Remarque 18 Si v 6= 1 alors λ = v ∆x
.


U1n
Sous la forme matricielle, notant U n =  ...  on obtient
n
UM

U n+1
1 − λ2
λ
2

=
0
.
 ..
0
0
...
1
− λ2
0
λ
2
...
1
...
− λ2
...
...
λ
2
1
0
..
.
..
.



 n
U .


λ
−2
1
(4.33)
Pour étudier la stabilité nous devons trouver les valeurs propres de cette
matrice. Nous utilisons le résultat général :
de la matrice M × M

0 ... 0
.
c
0 .. 
.
b
c .. 


.. ..
. c
.
0 ... ... a b
Proposition 5 Les valeurs propres

b c

a b

0 a

. .
 .. . .
sont
√
µk = b + 2 ac cos
kπ
, k = 1, ..., M.
M +1
(4.34)
(4.35)
Pour FTCS nous obtenons
µk = 1 + iλ cos
kπ
, k = 1, ..., M.
M +1
(4.36)
dont le module est toujours supérieur à 1. Donc le schéma FTCS n’est pas
stable.
53
Fig. 4.11 – Schéma de Lax.
4.5.2
Le schéma de Lax
L’idée ici est de symétriser toutes les quantités en espace (voir Fig. 4.11).
L’équation à chaque pas de temps est :
n
U n +Uj+1
Ujn+1 − j−1 2
∆t
ou encore sous forme matricielle

0 1−λ
2
 1+λ
 2
0

n+1

1+λ
U
= 0
2
 .
.
.
..
 .
0
...
+
n
n
Uj+1
− Uj−1
= 0,
2∆x
0
...
1−λ
2
0
0
..
.
1−λ
2
...
1+λ
2
0
0
..
.
..
.
(4.37)



 n
U .


1−λ 
2
0
(4.38)
Les valeurs propres sont maintenant :
µk =
√
1 − λ2 cos
kπ
, k = 1, ..., M
M +1
(4.39)
dont le module est inférieur à 1 dès que λ < 1 c’est à dire :
∆t < ∆x (condition de Courant-Friedrichs-Levy, CFL).
54
(4.40)
Pour expliquer la stabilité du schéma de Lax, essayons de la voir sous la
forme d’un schéma FTCS pour une autre équation :
U n +U n
n
n
Ujn+1 − j−1 2 j+1
− Uj−1
Uj+1
+
=0
(4.41)
∆t
2∆x
n
n
n
n
Ujn+1 − Ujn Uj+1
− 2Ujn
− Uj−1
+ Uj−1
∆x2 Uj+1
+
−
⇐⇒
= 0.
(4.42)
∆t
2∆x
2∆t
∆x2
Or, pour =
∆x2
2∆t
ceci est une discrétisation de
∂ 2u
∂u ∂u
+
− 2 = 0.
∂t
∂x
∂x
(4.43)
2
Comme il sera vu au chapitre sur les EDP, le terme de diffusion ∂∂xu2 joue son
rôle de ”régularisant” et stabilise ainsi le schéma numérique. Bien sur, cette
modification tend vers zéros pour ∆x → 0 donc pour des discrétisations fines
en temps/espace on résoudra bien l’équation initiale.
4.5.3
Le schéma ”upwind”
Nous considérons la version
∂u
∂u
+v
=0
∂t
∂x
u(x, 0) = u0 (x).
(4.44)
(4.45)
L’idée içi est de suivre la direction du ”vent”, voir Fig. 4.12-4.13. et d’utiliser des données spatiales déjà vues par le front d’avancement de la solution.
Pour vjn = v(Xj , tn ) on calcule à chaque pas de temps :
n
Ujn+1 − Ujn
Ujn − Uj−1
+ vjn
= 0, si vjn > 0,
∆t
∆x
n
Ujn+1 − Ujn
Uj+1
− Ujn
+ vjn
= 0, si vjn < 0.
∆t
∆x
(4.46)
(4.47)
Nous admettrons sans démonstration que ce schéma est stable sous les
conditions CFL.
55
Fig. 4.12 – Schéma ”upwind”, cas v > 0.
4.5.4
Schémas d’ordre deux : Lax-Wendroff
Ce schéma utilise des approximations d’ordre plus élevé. Il commence par
un calcul par le schéma de Lax à un pas de temps intermédiaire tn+1/2 et pas
d’espace intermédiaires Xj+1/2 :
n
n
+ Ujn
− fjn
Uj+1
fj+1
−λ
.
2
2
Ces valeurs sont utilisées ensuite pour avancer le schéma
n+1/2
n+1/2
Ujn+1 = Ujn − λ fj+1/2 − fj−1/2
n+1/2
Uj+1/2 =
(4.48)
(4.49)
Pour f (u) = u on obtient :
n
n
n n
− Ujn Ujn + Uj−1
Uj+1 + Ujn
Uj+1
Ujn − Uj−1
n+1
n
−λ
−
+λ
Uj = Uj − λ
2
2
2
2
(4.50)
La forme matricielle fait intervenir comme avant une matrice tri-diagonale
à coefficients constants sur diagonale a = λ/2 + λ2 /2, b = 1 − λ2 , c =
−λ/2 + λ2 /2 ; les valeurs propres sont
√
kπ
µk = 1 − λ2 + iλ 1 − λ2 cos
, k = 1, ..., M.
(4.51)
M +1
dont le module est inférieur à 1 dès que la condition CFL λ < 1 est vérifiée.
Le schéma Lax-Wendroff est stable donc sous la condition CFL.
56
Fig. 4.13 – Schéma ”upwind”, cas v < 0.
4.6
Exercices
Exercice 23 (Propagation des singularités) 1/ On considère le problème
∂u(x, t)
∂u(x, t)
+a
= 0.
∂t
∂x
u(x, 0) = u0 (x) = 1x≤0 .
(4.52)
(4.53)
Montrer que u(x, t) = u0 (x − at) est solution de ce problème. Dessiner cette
solution pour divers temps t > 0.
2/ Soit maintenant
∂u(x, t)
∂u(x, t)
∂ 2 u(x, t)
+a
=
.
(4.54)
∂t
∂x
∂x2
u(x, 0) = u0 (x) = 1x≤0 .
(4.55)
R ∞ −s2
√
√1
Montrer que u(x, t) = f ( x−at
)
(avec
f
(x)
=
e ds) est solution de
π y
4t
ce problème. Dessiner cette solution pour divers temps t > 0. Qu’observez
vous ?
Exercice 24 (solutions faibles entropiques) On considère le problème
57
∂u(x, t) ∂f (u)
+
= 0.
∂t
∂x ln(2) x < 0
u(x, 0) = u0 (x) =
0
x>0
(4.56)
(4.57)
où le flux est donné par f (u) = −eu .
1/ Justifier brièvement (en citant le résultat du cours) pourquoi la solution
faible entropique bornée du problème est une onde de raréfaction.
2/ Tracer les caractéristiques dans le demi-plan (x, t) ∈ R × R+ et expliciter la solution u(x, t). Tracer cette solution pour t = 1.
Exercice 25 (solutions faibles entropiques) On considère le problème
∂u(x, t) ∂u(u + 1)
+
= 0.
(4.58)
∂t
∂x
Trouver la solution (faible entropique) dans les
 deux cas suivants :
pour
x≤0
 1
1 − x pour 0 ≤ x ≤ 2
1/ Condition initiale : u(x, 0) = u0 (x) =

−1 pour
x≥2
On montrera que toutes les caractéristiques issues de [0, 2] passent par le
point (x = 3/2, t = 1/2).

1
pour
x≤0



1 − x pour 0 ≤ x ≤ 2
2/ Condition initiale : u(x, 0) = u0 (x) =
.
−1 pour 2 ≤ x ≤ 3



−1/2 pour
x≥3
Exercice 26 (solutions faibles entropiques) On considère le problème
√
∂u(x, t) ∂ u
+
= 0.
(4.59)
∂t
∂x
1/ Trouver la solution (faible entropique) dans les deux
cas suivants :
1 pour x < 0
4 pour x < 0
u(x, 0) = u0 (x) =
et u(x, 0) = u0 (x) =
.
4 pour x > 0
1 pour x > 0
Préciser dans chaque cas la nature de la solution.

x < −1
 1 pour
4 pour −1 < x < 0 Ici
2/ La même chose pour u(x, 0) = u0 (x) =

1 pour
x>0
construire la solution pour t < 12 et la représenter pour t = 3, 6, 12. Dans
58
quel sens varie la vitesse du choc pour t > 12 ? En déduire que u est continue
dans le domaine x ≥ 3t − 1 et t ≤ 12.
Exercice 27 Démontrer la stabilité du schéma ”upwind” pour le cas f (u) =
vu avec v constante égale à 1 ou -1 au choix. Démontrer que le schéma n’est
pas stable si on se trompe dans le choix de la formule (i.e. on prend la formule
pour v positif alors que v est négatif ).
Exercice 28 Trouver l’erreur de troncature pour le schéma de Lax et de
Lax-Wendroff.
59
Chapitre 5
Équations aux dérivées
partielles (EDP), équation de la
chaleur
5.1
Motivation : évaluation d’options par Black
& Scholes
Considérons une option de prix d’exercice (”strike”) K sur un sous-jacent
S de volatilité σ et qui distribue des dividendes continûment à proportion de
g de sa valeur. Le prix V de l’option est donné par contrat à l’instant final T ,
par exemple V (S, t = T ) = (S − K)+ pour un call, V (S, t = T ) = (S − K)−
pour un put ... Pour les autres instants ce prix satisfait (sous les hypothèses
standard du modèle) l’équation de Black&Scholes
σ2 ∂ 2V
∂V
∂V
+ S 2 2 + (r − g)S
− rV = 0.
∂t
2
∂S
∂S
(5.1)
Le changement de variables S = Kex , t = T − σ2τ/2 , q = σ2r/2 q̃ = σr−g
2 /2
nous change la fonction V (S, t) en une fonction v(x, τ ) = V (S, t) qu’on peut
ensuite changer à nouveau en y(x, τ ) par
x
1
2
v(x, τ ) = Kexp − (q̃ − 1) −
(q̃ − 1) + q τ y(x, τ ).
(5.2)
2
4
Cette nouvelle fonction y satisfait une équation aux dérivées partielles (EDP)
60
plus simple, en temps directe (pas rétrograde comme précédemment) :
∂ 2y
∂y
=
, x ∈ R, τ ≥ 0
∂τ
∂x2
(5.3)
à partir des conditions initiales
x
x
y(x, 0) = e 2 (q̃+1) − e 2 (q̃−1)
x
y(x, 0) = e 2 (q̃−1) −
pour un call,
+
− x2 (q̃−1)
e
+
pour un put.
(5.4)
(5.5)
Nous sommes donc dans le cadre uni-dimensionnel de l’équation de la
chaleur dont la forme générale s’écrit
∂u
∂t
− ∆u = f
u = g(x, t)
u(t = 0, ·) = u0 (·)
dans ΩT = Ω×]0, T [
sur ΓT = ∂Ω×]0, T [
dans Ω
(5.6)
(5.7)
(5.8)
où Ω est un ouvert borné de Rd (d = 1, 2, 3, ...) de frontière régulière.
L’équation qui précède régit en général tout phénomène de diffusion, par
exemple une diffusion de chaleur dans Ω, u(x, t) étant la température dans le
point ”x” au temps ”t”, ayant comme répartition initiale u(x, t = 0) = u0 (x)
avec des sources de chaleur d’intensité f (x, t) et des températures imposées
égales à g(x, t) sur le bord de Ω.
∂2
∂2
∂2
Pour rappel ici l’opérateur Laplacian est ∆ = ∂x
2 + ∂x2 + ... + ∂x2 et
1
2
d
modélise la diffusion.
5.2
5.2.1
Rappels sur les EDP : espaces fonctionnels, formulation variationnelle, lemme de
Lax-Milgram
Motivation
Pour résoudre l’équation dépendante du temps, nous allons par exemple
appliquer un schéma de Euler implicite. Ceci nous amène à résoudre pour
tout pas de temps (on rappelle la notation tn = nδt) :
un+1 − un
= ∆un+1 + f n
δt
61
(5.9)
ou encore
un+1 − δt∆un+1 = un δt + f n .
(5.10)
Nos constatons qu’il faut donc savoir résoudre les problèmes stationnaires
(indépendantes du temps) dont le plus simple exemple est celui de Poisson :
−∆u = f
u=0
dans Ω
sur ∂Ω.
(5.11)
(5.12)
Les conditions aux limites u = 0 portent le nom de conditions de Dirichlet.
Un autre type important de condition aux limites sont celles où on impose la
∂u
= g(x, t), qui seront dites conditions
dérivée normale (donc un flux), e.g. ∂n
de Neuman.
5.2.2
Espaces de Sobolev
Le but de cette partie est d’introduire les espaces de Sobolev nécessaires
pour le traitement variationnel des équations aux dérivées partielles (EDP).
Les espaces de Sobolev sont obtenues en classant les fonctions par leur
régularité. Nous allons noter par Ω ⊂ Rd le domaine de définition de ces
fonctions, domaine qui sera supposé régulier (par exemple sa frontière peut
être une fonction C 1 par morceaux ou au moins Lipschitz). Dans tout ce qui
suit les fonctions sont supposées aux valeurs réelles, mais ces espaces peuvent
aussi être définis pour des fonctions aux valeurs complexes.
Espaces L2
L’espace L2 (Ω) est défini par
2
Z
L = {f : Ω → R;
|f (x)|2 dx < ∞},
(5.13)
Ω
qui est un Hilbert avec le produit scalaire
Z
hf, giL2 =
f (x)g(x)dx.
Ω
62
(5.14)
Espaces H m
Ces espaces donnent des informations non seulement sur le comportement
de la fonction mais également pour ses dérivées.
Nous définissons :
H m = {f : Ω → R; ∂ α f (x) ∈ L2 ∀α ∈ Nd , |α| ≤ m},
(5.15)
i.e., les fonctions dont toutes les dérivées jusqu’au degré m sont dans L2 .
Exemple : H01 contient les fonctions L2 dont les dérivées sont aussi fonctions L2 .
La norme
X
kf kH m =
k∂ α f (x)kLp
(5.16)
α∈Nd ,|α|≤m
fait de H m un espace de Hilbert avec le produit scalaire
Z
X
hf, giH m =
∂ α f (x)∂ α g(x)dx.
Ω
(5.17)
α∈Nd ,|α|≤m
Lorsque les condition aux limites peuvent être prises en compte dans la
définition de l’espace, comme est le cas des conditions Dirichlet, il est utile
de travailler avec H0m qui est la fermeture dans H m des fonctions C ∞ ayant
un support compact strictement inclus dans Ω. Il s’agit donc dans ce cas
d’assurer l’annulation des fonctions sur la frontière ∂Ω de Ω.
Pour ces espaces H0m , il se trouve que l’annulation de la fonction sur le
bord fait que la norme sera contrôlée par la norme L2 de la dérivée, donc on
peut montrer, par exemple pour H01 :
k∇f kL2 ≤ kf kH01 = k∇f kL2 + k∇kL2 ≤ Ck∇f kL2 .
(5.18)
Ce sont des inégalités dites de Poincaré.
5.2.3
Formulation variationnelle
Il s’agit ici de donner un sens aux équations par intégration par parties. Bien que la théorie soit complètement opérationnelle pour d > 1, à
cause des formules d’intégration par parties plus élaborées (les formules de
Green/Stokes etc) nous allons seulement expliquer le cas d = 1.
63
Donc si −u00 = f dans un intervalle [α, β] on obtient en multipliant par
v(x)
Z β
Z β
Z β
00
0
0
f vdx = −
u vdx = −u (β)v(β) + u (α)v(α) +
u0 v 0 dx (5.19)
α
α
α
Si maintenant on suppose que notre problème avait des conditions de
Dirichlet nulles sur le bord de [α, β] (c’est à dire u(α) = u(β) = 0) alors
nous voyons que u peut être pris dans H01 ([α, β]). On prendra donc v pareil,
v ∈ H01 ([α, β]). Dans ce cas le problème peut être écrit sous la forme :
Z β
Z β
f vdx =
u0 v 0 dx, ∀v ∈ H01 ([a, b]).
(5.20)
α
on
(le
α
encore en définissant a : H01 ×H01
Rβ
dual de H01 ) par l(v) = α f vdx
→ R par a(u, v) =
il s’écrit
Rβ
α
u0 v 0 dx et l ∈ (H01 )0
A(u, v) = l(v), ∀v ∈ H01 ([α, β]).
(5.21)
Cette dernière formulation, obtenue par intégration par parties, est dite
formulation variationnelle ou formulation faible du problème initial.
Elle a beaucoup d’avantages dont celle de donner un sens avec minimum de
régularité (observons qu’il n’y a pas de dérivées deuxièmes) et est la méthode
de choix pour toutes les équations aux dérivées partielles (EDP).
5.2.4
Lemme de Lax-Milgram
Définition 16 Soit X un espace de Banach et une forme bi-linéaire a définie
sur X × X. La forme a est continue s’il existe M tel que a(u, v) ≤ M kukkvk
pour tous u, v ∈ X. Elle est coercive s’il existe m > 0 tel que pour tout
u ∈ V : a(u, u) ≥ mkuk2 .
Le résultat suivant, dit le “lemme de Lax-Milgram” donne un cadre très
convenable pour démontrer l’existence d’une solution d’une EDP :
Théorème 11 (Lax-Milgram) Soit “a” une forme bi-linéaire, continue et
coercive sur un espace X et l une forme linéaire continue sur cet espace :
l ∈ X 0 . Alors le problème :
Trouver u ∈ X solution de a(u, v) = (l, v)X 0 ,X , ∀v ∈ X
(5.22)
admet une solution unique u ∈ V . De plus l’application l 7→ u est continue
de X 0 dans X.
64
Remarque 19 Les hypothèses du thm. sont vérifiées pour notre problème en
posant X = H01 ([α, β]).
5.3
Formulations variationnelles (Galerkin) pour
la discrétisation des EDP
Sauf cas exceptionnels la solution u ne peut pas être trouvée analytiquement. Il faut alors conduire une étude numérique du problème (5.22).
Considérons donc une suite d’espaces d’approximation Xh ⊂ X qui “tendent” vers X dans un sens à définir. Ici h > 0 est un paramètre qui donne la
finesse de cette approximation, i.e. pour des valeurs h de plus en plus petites
les espaces Xh approchent de mieux en mieux X.
On peut alors considérer le problème (5.22) posé sur chaque espace Xh .
Il est crucial de remarquer que, puisque chaque sous-espace Xh est inclus en
X la forme bilinéaire a reste continue et coercive avec les mêmes constantes
m et M (qui ne sont peut être plus optimales ! ) :
a(uh , vh ) ≤ M kuh k · kvh k, pour tous uh , vh ∈ Xh .
(5.23)
a(uh , uh ) ≥ mkuh k2 pour tout uh ∈ Xh .
(5.24)
0
Par ailleurs la fonctionnelle l ∈ X est aussi une fonctionnelle dans le dual
Xh0 de Xh . Il s’ensuit que le problème approché :
Trouver uh ∈ Xh tel que a(uh , vh ) = l(vh ) pour tout vh ∈ Xh ,
(5.25)
admet une solution unique uh ∈ Xh .
5.3.1
Convergence
Une première question concerne la relation entre u et uh . Ceci est réglé
par le résultat suivant
Lemme 2 (Céa) Soit u solution de (5.22) et uh solution de (5.25). Alors
si ”a” est symétrique :
r
M
(5.26)
ku − uh k ≤
inf ku − wh k.
m wh ∈Xh
65
Si la forme bilinéaire “a” n’est pas symétrique l’estimation suivante est obtenue
M
(5.27)
ku − uh k ≤
inf ku − wh k.
m wh ∈Xh
Remarque 20 Il est important de noter que la constante M/m appelée
également constante de conditionnement de a qui intervient dans l’estimation dépend seulement de la forme bilinéaire a et de l’espace X ; en particulier
cette constante ne dépend pas des Xh .
Remarque 21 Donc la distance entre u et uh dépend principalement de
combien la solution exacte u est bien approchée par l’espace Xh . Comme
d’autre coté
ku − uh k ≥ inf ku − wh k,
wh ∈Xh
il s’ensuit que résoudre (5.25) est une façon optimale (par rapport à h en
tout cas) de trouver u. Cette méthode sera d’autant plus optimale que le
conditionnement M/m de la forme bilinéaire a est plus petit (i.e. proche de
1, car toujours sur-unitaire).
Remarque 22 Toutes les estimations sont dans la norme de l’espace X. Si
l’utilisation ultérieure de la solution u nécessite d’autres normes (e.g. lorsque
on a besoin de plus qu’une dérivée, etc) il faut alors changer de cadre fonctionnel, en particulier demander que la forme l soit plus régulière que juste
X 0.
Preuve Remarquons d’abord que
a(u − uh , vh ) = (l, vh ) − (l, vh ) = 0 pour tout vh ∈ Xh .
(5.28)
Il s’ensuit alors que a(u − uh , u − wh ) = a(u − uh , u − uh ) pour tout wh ∈ Xh .
On peut déduire d’ici
mku − uh k2 ≤ a(u − uh , u − uh ) = a(u − uh , u − wh ) ≤ M ku − uh k · ku − wh k.
On a obtenu donc
∀wh ∈ Xh : mku − uh k ≤ M ku − wh k,
d’où la conclusion pour le cas non-symétrique.
66
Si en plus la forme “a” est symétrique, alors pour tout vh de Xh :
a(u − vh , u − vh ) = a(u − uh + uh − vh , u − uh + uh − vh )
= a(u − uh , u − uh ) + 2a(u − uh , uh − vh ) + a(uh − vh , uh − vh )
= a(u − uh , u − uh ) + a(uh − vh , uh − vh ).
(5.29)
la dernière égalité étant vraie en virtue de l’orthogonalité (5.28). Il s’ensuit
alors de la positivité de la forme “a” :
∀vh ∈ Xh : a(u − uh , u − uh ) ≤ a(u − vh , u − vh ).
(5.30)
La conclusion suit en utilisant les constantes de continuité et coercivité de la
forme “a”.
Toujours pour une forme symétrique, on obtient donc (voir la preuve
précédente)
a(u − uh , u − uh ) = inf a(u − vh , u − vh ).
(5.31)
vh ∈Xh
Ceci nous dit que uh est la projection de la solution exacte u sur
p l’espace Xh
suivant la norme induite par la forme bilinéaire “a” : kwk∗ = a(w, w).
5.3.2
Mise en oeuvre
Pour résoudre (5.25) on se rappellera que (5.22) est en fait la forme “faible” de (5.11) qui appelle un traitement avec des fonctions test. Soit donc
eh1 ,...,ehNh une base de Xh . Nous ne supposerons rien d’autre sur les fonctions
ehk (normalisation, orthogonalité, ...).
A cause de la linéarité de a et l il s’ensuit que (5.25) est équivalent à
Trouver uh ∈ Xh tel que a(uh , ehk ) = l(ehk ) pour tout k = 1, ..., Nh . (5.32)
P h h h
Comme uh ∈ Xh on le cherche sous la forme uh = N
c e . En invok=1
PNkh k h h h
h
quant encore la linéarité de la forme a on obtient a(uh , ek ) = j=1 a(ej , ek )cj .
Notons donc par A la matrice Nh × Nh ayant comme entrées Ajk = a(ehj , ehk ),
par Uh le vecteur (colonne) Nh × 1 contenant les coefficients chk , k = 1, ...Nh
dans cet ordre, et par Fh le vecteur des résultats l(ehk ), k = 1, ...Nh dans
cet ordre. Alors on obtient donc (grâce à la symétrie de a) que (5.32) est
équivalent à
AUh = Fh .
(5.33)
67
Ainsi le problème initial est réduit à la résolution d’un système matriciel de
dimension Nh pour l’espace Xh suffisamment fin pour bien approcher u (cf.
le lemme de Céa).
Plusieurs choix sont possible pour les espaces Xh , et il y a toujours
un compromis à faire entre la généricité des espaces (i.e. leur capacité à
bien approcher des solutions des EDP générales) et l’effort nécessaire pour
résoudre (5.33) : plus la suite d’espaces Xh est générique, plus grandes sont
alors leur dimensions Nh respectives et plus difficiles à résoudre les systèmes (5.33).
Parmi les choix les plus utilisés on retrouve les éléments finis, les éléments
spectraux, les ondelettes ...
5.3.3
Illustration : interpolation P 1 pour fonctions C 2
Dans cette partie on s’intéresse aux fonctions de classe C 2 définies sur un
segment [α, β] de R1 . On introduit l’opérateur d’interpolation continue par
des fonctions linéaires par morceaux : pour une division α = x0 < x1 < ... <
xn = β de taille h = maxi=0,...,n−1 (xi+1 − xi ), l’interpolé if de f sera l’unique
fonction linéaire sur chaque [xi , xi+1 ] et qui prend les mêmes valeurs que f
dans les points xj : f (xj ) = (if )(xj ), j = 0, ..., n, voir Fig 5.1.
Il est facile à voir que if est définie sur [xi , xi+1 ] par
if (x) = f (xi ) +
f (xi+1 ) − f (xi )
(x − xi ).
xi+1 − xi
(5.34)
Proposition 6 Si f est de classe C 2 alors sur chaque [xi , xi+1 ] :
|(f − if )(x)| ≤ Ch2
|f 00 (y)|.
max
(5.35)
y∈[xi ,xi+1 ]
En plus, pour tout 1 ≤ p ≤ ∞ il existe une constante C indépendante de h
telle que
kf − if kL2 ≤ Ch2 kf kH 2 .
(5.36)
Démonstration Voir cours. Indication : On utilise la formule de Taylor :
f (x) = f (xi ) + f 0 (xi )(x − xi ) +
(x − xi )2 00
f (ξx )
2
pour un certain ξx ∈ [xi , xi+1 ]. En écrivant la même formule pour xi+1 on
obtient
f (xi+1 ) = f (xi ) + f 0 (xi )(xi+1 − xi ) +
68
(xi+1 − xi )2 00
f (ξi )
2
Fig. 5.1 – Interpolation (P1) continue d’une fonction de classe C 2 par polynomés de degré 1 par morceaux.
On remplace maintenant f 0 (xi ) de la dernière formule dans la première :
f (x) = f (xi )+
(x − xi )2 00
f (xi+1 − f (xi )
(x − xi )(xi+1 − xi ) 00
f (ξi )+
f (ξx )
(x−xi )−
xi+1 − xi
2
2
Mais, par (5.34) ceci est équivalent à :
f (x) − if (x) = −
(x − xi )(xi+1 − xi ) 00
(x − xi )2 00
f (ξi ) +
f (ξx )
2
2
d’où (5.35). Pour montrer (5.36) on écrit :
Z
β
p
|f −if | (x)dx =
α
n−1 Z
X
i=1
xi+1
n−1
X
|f −if | (x)dx ≤ Ch
(xi+1 −xi )
2
xi
4
i=1
max
|f 00 (y)|2 .
y∈[xi ,xi+1 ]
Mais chaque maxy∈[xi ,xi+1 ] |f 00 (y)|2 est atteint en un point noté ξim et donc la
P
00 m 2
m
somme est n−1
i+1 − xi )|f (ξi )| avec ξi ∈ [xi , xi+1 ]. Mais, pour h → 0
i=1 (xR
b
ceci converge vers a |f 00 |2 donc on en deduit l’existence d’une constante C
indépendante de h telle que
69
Z
β
2
4
b
Z
|f 00 (x)|2 dx.
|f − if | (x)dx ≤ Ch
a
α
En prenant la racine et avec l’inégalité kf 00 kL2 ≤ kf kH 2 on obtient l’estimation (5.36). 5.4
Différences finies pour des EDP
Nous sortons ici du cadre Galerkin pour revenir aux différences finies
permettant de résoudre :
∂y
∂ 2y
=
, x ∈ R, τ ≥ 0.
(5.37)
∂τ
∂x2
Nous allons prendre une grille en espace et une autre en temps comme vu
précédemment.
5.4.1
Euler explicite
Avec la notation Ukn ' y(nδτ, Ymin + (k − 1)δx) ce schéma s’écrit :
n
n
Uk+1
+ Uk−1
− 2Ukn
Ukn+1 − Ukn
=
,
δτ
δx2
ou sous forme matricielle, en notant
λ=
(5.38)
δτ
δx2
(5.39)
on obtient

U n+1



=



1 − 2λ
λ
0
...
λ
1 − 2λ
λ
0
0
..
.
λ
..
.
0
...
0
..
.
..
.
1 − 2λ
λ
..
.
1 − 2λ
λ
...
λ
1 − 2λ



 n
U .



(5.40)
En rappelant que les valeurs propres d’une matrice tri-diagonale (de
constantes a, b, c) sont (voir formules (4.35))
√
µk = b + 2 ac cos
kπ
, k = 1, ..., M.
M +1
70
(5.41)
on obtient ici
2
µk = 1 − 4λ sin
kπ
2(M + 1)
.
(5.42)
La condition de stabilité |µk | < 1, ∀k devient λ < 1/2 ou encore
δτ ≤
δx2
2
(5.43)
ce qui entraı̂ne des pas de temps très petits (e.g. pour δx = 10−3 , δτ sera de
de l’ordre 10−6 ).
5.4.2
Euler implicite
Le schéma s’écrit :
n+1
n+1
− 2Ukn+1
Uk+1
+ Uk−1
Ukn+1 − Ukn
=
,
δτ
δx2
ou sous forme matricielle,


1 + 2λ
−λ
0
...
0
.. 

 −λ
1 + 2λ
−λ
0
. 

.. 
n+1
 0
= U n.
−λ
1
+
2λ
−λ
. 

U
 .

...
...
 ..
1 + 2λ
−λ 
0
...
...
−λ
1 + 2λ
(5.44)
(5.45)
Les valeurs propres doivent être maintenant sur-unitaires ; elles sont
kπ
2
µk = 1 + 4λ cos
(5.46)
2(M + 1)
ce qui montre que le schéma est toujours stable.
5.4.3
Crank-Nicholson
Bien que le schéma d’Euler implicite soit stable, il n’est pas toujours
suffisamment précis. On utilise alors un schéma d’ordre supérieur, celui de
Crank-Nicholson. Il s’écrit :
n+1
n
n
U n+1 + Uk−1
− 2Ukn+1 Uk+1
+ Uk−1
− 2Ukn
Ukn+1 − Ukn
= k+1
+
.
δτ
2δx2
2δx2
71
(5.47)
Sous forme matricielle il s’écrit


1+λ
−λ/2
0
...
−λ/2


 0
 ..
1+λ
−λ/2
0
−λ/2
..
.
...
1 + λ/2
..
.
...
−λ/2
0
..
.
..
.
1+λ
−λ/2
−λ/2
1+λ
.
0

1−λ


 n+1  λ/2
U
=

 0

 ..
.
0

λ/2
0
...
1−λ
λ/2
0
λ/2
..
.
...
1−λ
..
.
...
λ/2
0
..
.
..
.
1−λ
λ/2
λ/2
1−λ

 n
U .


(5.48)
Soit G la matrice tridiagonale qui a −2 sur la diagonale et 1 sous/sur la
diagonale, et C = 2I − λG. Alors U n+1 = (4C −1 − I)U n et on observe que la
condition de stabilité est toujours satisfaite ce qui montre que le schéma est
toujours stable. Nous pouvons aussi montrer
Théorème 12 Supposons que la solution y est lisse de classe C 4 . Alors l’erreur de troncature du schéma de Crank-Nicholson est d’ordre O(δτ 2 + δx2 ).
Démonstration Voir cours. Indication : on utilise l’opérateur de différentiation
discrète
F (x + dx) + F (x − dx) − 2F (x)
2
(5.49)
δδx
F =
δx2
2
2
dont on connaı̂t la propriété δδx
F = ∂∂xF2 + O(δx2 ). 5.4.4
Retour à Black&Scholes
Pour resoudre maintenant l’équation de Black&Scholes sous sa forme
équation de la chaleur, il ne reste plus qu’à donner les conditions aux limites de l’intervalle spatial : à l’extrémité gauche y = R1 et à l’extrémité
droite y = R2 . Soit par exemple C le prix d’un call et P le prix d’un put. On
utilise alors des relations (qu’on accepte sans démonstration ici) :
lim C(S, t) − S = −Ke−r(T −t)
(5.50)
lim P (S, t) + S = Ke−r(T −t)
(5.51)
S→∞
S→∞
ce qui nous donne pour un call
R1 = 0, R2 (x, τ ) = exp
o
τ
(q̃ + 1) + (q̃ + 1)2
2
4
nx
(5.52)
et pour un put
nx
o
τ
2
R1 = exp
(q̃ − 1) + (q̃ − 1) , R2 = 0.
2
4
72
(5.53)
5.5
Exercices
Exercice 29 Trouver l’erreur de troncature pour le schéma d’Euler explicite
et implicite.
Exercice 30 Soit V un espace de Hilbert a(·, ·) : V × V → R une forme bilinéaire, continue et elliptique (i.e., définie positive) sur V ×V et symétrique.
Soit H un autre espace de Hilbert qui contient V : V ⊂ H ⊂ V 0 et l ∈ H ⊂
V 0 . On considère un problème écrit en formulation variationnelle :
Trouver u ∈ V tel que a(u, v) = hl, viH , ∀v ∈ V
(5.54)
Soit Vh ⊂ V un sous espace vectoriel de V et le problème discrétisé :
Trouver uh ∈ Vh tel que a(uh , vh ) = hl, vh iH , ∀vh ∈ Vh .
(5.55)
1/ Démontrer qu’il existe une constante C (à expliciter) telle que u vérifie :
kuk2V ≤ CklkH kukH , ku − uh k2V ≤ CklkH ku − uh kH .
(5.56)
Soit φk 6= 0 la k-ème fonction propre de a(·, ·), c’est à dire
a(φk , v) = λk hφk , viH , ∀v ∈ V
2/ On considère que λk 6= λl pour tout k 6= l. Démontrer que hφk , φl iH = 0
pour k 6= l. De même pour a(φk , φl ).
3/ Nous supposerons dorénavant que les φk engendrent H donc V . On
les prendra orthonormées dans H : kφk kH = 1. Ecrire u en fonction des φk ,
λk et hl, φk i.
4/ On prend comme choix pour Vh l’espace généré par les N premières
fonctions φk propres de a(·, ·) c’est à dire Vh = V ect{φk ; k = 1, ..., N ; a(φk , v) =
λk < φk , v >H , λ1 ≤ ... ≤ λN ≤ λj , ∀j > N }. Ecrire uh en fonction de φk ,
k = 1, ..., N .
Exercice 31 Sous les hypothèses du lemme de Céa, pour la forme bi-linéaire
symétrique a supposons qu’on ait ku − uh kV = minw∈Vh ku − wkV pour tout
membre de droite l ∈ V 0 . Démontrer alors qu’il existe une constante C telle
que a(u, v) = Chu, viV .
73
Exercice 32 (Équation de Black & Scholes) On considère l’équation de
Black & Scholes
σ2S 2 ∂ 2V
∂V
∂V
+
− rV = 0
+ rS
2
∂t
2 ∂S
∂S
1. On définit y = log(S), W (y, t) = V (S, t). Démontrer que l’équation
s’écrit maintenant
σ2 ∂ 2W
∂W
σ 2 ∂W
+
)
− rW = 0
+
(r
−
∂t
2 ∂y 2
2 ∂y
On note par Uij une approximation numérique de W (idy, jdt), i =
−M, M , j = 0, 1, ..., N = T /dt. Nous utiliserons pour les dérivées spa(y−dy)
tiales les approximations suivantes f 0 (y) ' f (y+dy)−f
, f 00 (y) '
2dy
f (y+dy)+f (y−dy)−2f (y)
(dy)2
g(t+dt)−g(t)
0
g (t) '
.
dt
alors que pour les dérivées en temps on utilise
2. Donner la formule pour le calcul de Uij en fonction des valeurs U`j+1 ,
` = −M, ..., M . Écrire sous une forme matricielle (1+rdt)U j = AU j+1
et montrer que A est tri-diagonale de la forme : A`,`−1 = a, A`,` = b,
A`,`+1 = c pour tout indice ` ∈ Z admissible.
Note : on prendra des formules explicites pour les dérivées et implicite
pour −rW . Les conditions aux limites ne seront pas prises en compte
dans la définition de la matrice A.
3. Supposons
que les valeurs propres d’une telle matrice A sont µA
k =
√
kπ
b + 2 ac cos( 2M +2 ).
Démontrer que a + b + c = 1 mais que a,b et c peuvent être vues comme
des probabilités d’une loi à 3 événements (i.e., a, b, c sont positives)
seulement si certaines conditions sur dt et dy sont satisfaites. Expliciter
ces conditions.
4. Comparer les conditions trouvées avec les conditions sur la stabilité
d’un schéma Euler explicite.
74
Bibliographie
[1] Robert Dautray and Jacques-Louis Lions. Analyse mathématique et calcul
numérique pour les sciences et les techniques. Vol. 7. INSTN : Collection
Enseignement. Masson, Paris, 1988. Evolution : Fourier, Laplace, Reprint
of the 1985 edition.
[2] Robert Dautray and Jacques-Louis Lions. Analyse mathématique et calcul
numérique pour les sciences et les techniques. Vol. 8. INSTN : Collection
Enseignement. Masson, Paris, 1988. Évolution : semi-groupe, variationnel., Reprint of the 1985 edition.
[3] Robert Dautray and Jacques-Louis Lions. Analyse mathématique et calcul
numérique pour les sciences et les techniques. Vol. 9. INSTN : Collection
Enseignement. Masson, Paris, 1988. Évolution : numérique, transport.,
Reprint of the 1985 edition.
[4] J. Hull. Options, Futures, and Other Derivatives. Prentice Hall, sixth
edition, 2006.
[5] Peter E. Kloeden and Eckhard Platen. Numerical solution of stochastic
differential equations, volume 23 of Applications of Mathematics (New
York). Springer-Verlag, Berlin, 1992.
[6] William H. Press, Saul A. Teukolsky, William T. Vetterling, and Brian P.
Flannery. Numerical recipes in C++. Cambridge University Press, Cambridge, 2002. The art of scientific computing, Second edition, updated
for C++.
[7] Daniel Revuz and Marc Yor. Continuous martingales and Brownian
motion, volume 293 of Grundlehren der Mathematischen Wissenschaften [Fundamental Principles of Mathematical Sciences]. Springer-Verlag,
Berlin, third edition, 1999.
75
Téléchargement