230
7 Equations différentielles ordinaires
0
5
10
15
20
25
30
35
0.4
0.5
0.6
0.7
0.8
0.9
1
1.1
1.2
1.3
0
20
40
60
80
100
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Figure 7.10. A gauche, solutions numériques du problème (7.50) obtenues par
la méthode d’Euler explicite avec h = 1.05 (trait fin) et h = 0.95 (trait épais).
Les valeurs de la solution exacte sont indiquées par des cercles. A droite, les
erreurs de perturbation correspondant à ρ(t) = sin(t) avec h = h
∗ = 2/2.9
(trait plein épais) et h = 0.9 (trait discontinu fin)
0
20
40
60
80
100
0
0.2
0.4
0.6
0.8
1
Figure 7.11. Erreurs de perturbation correspondant à ρ(t) = sin(t) avec
α = 0.8 (trait épais) et α = 0.9 (trait fin) pour l’Exemple 7.6, en utilisant une
stratégie adaptative
Dans les cas où on ne dispose d’aucune information sur y, il n’est
pas simple de trouver λ max = max |f y |. Dans ces cas, une approche plus
heuristique consiste à utiliser un pas de temps variable. Plus précisément,
on peut prendre t n+1 = t n + h n , où
0 α
|f y (t n , u n )|
,
(7.51)
pour des valeurs de α strictement inférieures à 1. Remarquer que le
dénominateur dépend de u n qui est connu. Sur la Figure 7.11, on trace
les erreurs de perturbation de l’Exemple 7.6 pour deux valeurs de α.
L’analyse précédente peut être effectuée pour d’autres méthodes à
un pas, en particulier pour les méthodes d’Euler implicite et de CrankNicolson. Pour ces méthodes qui sont A-stables, on arrive aux mêmes
conclusions sur l’erreur de perturbation, mais sans aucune limitation sur
Précédent

- 241/374

Suivant