Extrapolation de Richardson
En analyse numérique, le procédé d'extrapolation de Richardson est une technique d'accélération de la convergence. Il est ainsi dénommé en l'honneur de Lewis Fry Richardson[1]Modèle:,[2], qui l'a popularisé au début du Modèle:S-. Les premières utilisations remontent à Huygens en 1654 et Takebe Kenkō en 1723[3], pour l'évaluation numérique de π.
Ce procédé est notamment utilisé pour définir une méthode numérique d'intégration : la méthode de Romberg, accélération de la méthode des trapèzes.
Présentation du principe
On suppose que la quantité inconnue Modèle:Mvar peut être approchée par une fonction Modèle:Math avec une convergence d'ordre Modèle:Mvar en Modèle:Mvar
expression dans laquelle le coefficient Modèle:Mvar n'est pas connu. Le principe d'extrapolation consiste à supprimer le terme en Modèle:Mvar par combinaison linéaire de deux valeurs de Modèle:Math, calculés avec des Modèle:Mvar différents : par exemple Modèle:Math et Modèle:Math. On obtient :
Modèle:Math est l'extrapolé de Richardson qui approche Modèle:Mvar à l'ordre m>n en h. Le facteur 2 peut être remplacé par n'importe quel autre facteur. L'intérêt de la méthode est qu'il sera fréquemment plus aisé d'obtenir une précision donnée en calculant Modèle:Math que Modèle:Math avec un Modèle:Math beaucoup plus petit (risque d'erreur d'arrondi, grande quantité de calcul …).
Formule générale
On suppose que l'on dispose d'une approximation de Modèle:Mvar avec une formule d'erreur de cette forme
les coefficients étant inconnus. On se fixe un paramètre réel r>1 et on forme une combinaison entre la relation précédente et cette même relation prise au point
Le terme en Modèle:Math a disparu. Cette formule peut être itérée pour augmenter l'ordre, en évaluant Modèle:Math successivement aux points .
Pour les formules d'erreur pouvant être exprimé sous la forme
avec une fonction connue telle que , un algorithme d'interpolation polynomial (par exemple l'algorithme d'Aitken-Neville) peut être utilisé. Dans ce cas, la suite des subdivisions Modèle:Mvar n'a pas nécessité d'être en progression géométrique.
Dans ce cas, le résultat de l'extrapolation de Richardson s'obtient en calculant la valeur en zéro du polynôme d'interpolation passant par les points , où les Modèle:Mvar forment une suite décroissant vers 0. Une variante consiste à utiliser une interpolation par fraction rationnelle au lieu d'une interpolation polynomiale (Modèle:Lien[4] ou le ρ-algorithme de P. Wynn).
Pour le cas encore plus général, où la formule d'erreur est de la forme :
avec les fonctions connues et telles que , l'algorithme d'interpolation linéaire généralisé de Mühlbach[5] peut être utilisé : On obtient dans ce cas un algorithme d'accélération de la convergence appelé E-algorithme, de Håvie[6] et Brezinski[7] (à ne pas confondre avec l'ε-algorithme de P. Wynn).
Algorithme
L'algorithme présenté est celui associé à la méthode d'Aitken Neville, lorsque la formule d'erreur est de la forme :
Pour N valeurs différentes calculés de Modèle:Mvar, avec la suite auxiliaire Modèle:Mvar correspondante, on initialise le tableau suivant :
Puis le reste du tableau (seulement une partie triangulaire) est calculé par les relations :
Le résultat de l'extrapolation de Richardson est (la pointe du triangle)
Le choix de la suite auxiliaire Modèle:Mvar est un compromis entre une suite décroissant suffisamment rapidement pour obtenir un algorithme numériquement stable, et une suite décroissant lentement évitant les difficultés de calcul des Modèle:Mvar. Pour des raisons de risque de divergence, on évitera d'utiliser une suite auxiliaire décroissant plus lentement que la suite harmonique (critère de Laurent).
D'autres algorithmes d'interpolation polynomiales peuvent être utilisés à la place de la méthode d'Aitken Neville, notamment la méthode de Lagrange (en particulier sa variante dite barycentrique). Dans ce cas précis, les polynômes formant la base de Lagrange peuvent être calculés une fois pour toutes (ceux-ci ne dépendant que de la suite Modèle:Mvar choisie), ce qui rend l'algorithme compétitif. Ceci est d'autant plus vrai s'il y a à extrapoler à plusieurs reprises, par exemple pour la résolution des équations différentielles, ou l'extrapolation d'une suite vectorielle.
Les suites classiquement utilisés sont :
- la suite de Romberg
- les suites de Bulirsch ou bien
- la suite de Deuflhard
Lorsque les exposants de la formule d'erreur de Modèle:Math ne suivent pas une progression arithmétique, les algorithmes précédents doivent être adaptés, avec la contrainte d'utiliser une suite Modèle:Mvar géométrique, du type Modèle:Math (par exemple, celle de Romberg, de raison 2). D'autre part, les différents exposants de la formule d'erreur doivent être connus, car ils rentre dans la formule de calcul du tableau.
Exemples d'application
Approximation numérique de la dérivée d'une fonction
Le point de départ est le développement de Taylor de la fonction à dériver :
la dérivée de Modèle:Math est déduite
en appelant , le terme d'erreur se présente sous une forme :
forme convenable pour être accélérée à l'aide de l'extrapolation de Richardson. Il suffira de calculer Modèle:Math pour différentes valeur de Modèle:Mvar (par exemple la suite de Romberg), et de s'en servir pour éliminer les termes en Modèle:Mvar, Modèle:MathModèle:Etc.
En soustrayant le développement de Taylor de Modèle:Math à celui de Modèle:Math, on obtient :
on en tire une autre approximation de la dérivée :
qui ne contient que des termes d'erreur de degré pair. L'utilisation de l'extrapolation de Richardson est dans ce cas beaucoup plus efficace, car à chaque étape, le degré d'approximation est augmenté de 2.
De la même manière, cette fois-ci en additionnant les développements de Modèle:Math et Modèle:Math, on en tire une formule du même type servant à calculer la dérivée seconde :
Dans les deux cas précédents, on pourra utiliser la méthode de Aitken-Neville pour le calcul de l'extrapolation de Richardson, avec la fonction .
Intégration numérique
La méthode des trapèzes possède un terme d'erreur n'ayant que des puissances paires de h, d'après la formule d'Euler-Maclaurin. Elle est donc très bien adaptée à l'utilisation de l'extrapolation de Richardson. La méthode résultante est appelée méthode de Romberg.
La méthode du point médian possède aussi ce type de développement, et peut donc fournir une variante de la méthode de Romberg. Les deux méthodes peuvent être utilisées de concert pour fournir une estimation de l'erreur de l'intégrale résultante.
Intégration numérique des équations différentielles
La méthode d'intégration de base qui se prête le mieux à l'extrapolation de Richardson est la méthode du point milieu (où du point milieu modifié) de Gragg. Elle possède aussi un terme d'erreur où n'apparait que les puissances paires de Modèle:Mvar (lorsque les subdivisions sont paires). La méthode résultante est connue sous le nom de Modèle:Lien. Il existe plusieurs variantes, dépendant du choix de la séquence des Modèle:Mvar, du type d'extrapolation (polynomiale ou rationnelle), et du calcul de la taille du pas global.
Notes
Voir aussi
Bibliographie
Article connexe
- ↑ Modèle:Article
- ↑ Modèle:Article
- ↑ Modèle:Article
- ↑ Modèle:En R. Bulirsch et J. Stoer, §2.2 in Introduction to Numerical Analysis, New York, Springer-Verlag, 1991.
- ↑ Mühlbach, G., The general Neville-Aitken algorithm and some applications. Numer. Math. v31. 97-110
- ↑ Håvie, T., Generalized Neville type extrapolation schemes. BIT. v19. 204-213
- ↑ Brezinski, C., « A general extrapolation algorithm ». Numer. Math. v25. 175-187