Algorithme de Neville

De testwiki
Version datée du 30 novembre 2024 à 21:36 par imported>UnMecQuiPassaitParLa (Correction de la formule de récurrence en accord avec la démonstration plus bas dans la page (formule de base fausse cf discussion))
(diff) ← Version précédente | Version actuelle (diff) | Version suivante → (diff)
Aller à la navigation Aller à la recherche

En analyse numérique, l'algorithme de Neville[1] est un algorithme d'interpolation polynomiale dû à Modèle:Lien.

L'algorithme de Neville est une méthode récursive du calcul de la valeur du polynôme d'interpolation en un point donné, avec lequel il est aisé d'ajouter des points d'interpolation au fur et à mesure. Il est moins adapté pour fournir une expression du polynôme d'interpolation. Il est parfois confondu avec l'algorithme d'Aitken[2].

Description de l'algorithme

Soit un jeu de n+1 points donnés (xi, yi) où les xi sont distincts deux à deux, et le polynôme d'interpolation p(x) de degré au plus n vérifiant :

p(xi)=yi,i=0,,n.

L'algorithme de Neville évalue ce polynôme pour le point d'abscisse x.

Soit pi,j(x) le polynôme de degré j qui passe par les points (xk, yk) pour k = i, i + 1, …, i+j.

Les pi,j(x) satisfont à la relation de récurrence

pi,0(x)=yi, 0in,
pi,j+1(x)=(xix)pi+1,j(x)+(xxi+j+1)pi,j(x)xixi+j+1, 0j<n et 0i<nj.

Cette relation de récurrence permet de calculer p0,n(x), qui est la valeur cherchée. Il nécessite O(nModèle:2) opérations en virgule flottante.

Par exemple, pour n = 4, on peut utiliser la relation de récurrence pour remplir le tableau triangulaire ci-dessous, de gauche à droite.

p0,0(x)=y0
p0,1(x)
p1,0(x)=y1 p0,2(x)
p1,1(x) p0,3(x)
p2,0(x)=y2 p1,2(x) p0,4(x)
p2,1(x) p1,3(x)
p3,0(x)=y3 p2,2(x)
p3,1(x)
p4,0(x)=y4

On obtient ainsi p0,4(x), la valeur à l'abscisse x du polynôme d'interpolation passant par les 5 points donnés.

Démonstration

Soit pi,j(x) le polynôme de degré j qui passe par les points (xk, yk) pour k = i, i + 1, …, i+j, et soit fi,j le coefficient du terme de degré j de ce polynôme, c'est-à-dire :

pi,j(x)=fi,jxj+...

pi,j(x) passe par les points numérotés i, i + 1, …, i+j

pi+1,j(x) passe par les points numérotés i + 1, …, i+j,i+j+ 1

pi,j+1(x) passe par les points numérotés i, i + 1, …, i+j,i+j+ 1

Les polynômes pi,j+1(x) et pi,j(x) ont les points i, i + 1, …, i+j en commun. Il suit que la soustraction pi,j+1(x) - pi,j(x) de ces deux polynômes s'annulera pour les j+1 abscisses de ces points. Autrement dit les abscisses xi, ... , xi+j sont racines du polynôme pi,j+1(x) - pi,j(x). Comme pi,j+1(x) - pi,j(x) est un polynôme de degré j+1, il possède au plus j+1 racines. Donc finalement nous connaissons toutes ses racines, ce sont les abscisses: xi, ... , xi+j. Nous pouvons dès lors écrire ce polynôme sous forme factorisée :

pi,j+1(x)pi,j(x)=fi,j+1(xxi)(xxi+1)...(xxi+j)

En employant la même méthode, on trouve aussi :

pi,j+1(x)pi+1,j(x)=fi,j+1(xxi+1)(xxi+2)...(xxi+j+1)

En divisant ces deux relations membre à membre, on obtient :

pi,j+1(x)pi,j(x)pi,j+1(x)pi+1,j(x)=xxixxi+j+1

dont on peut isoler pi,j+1 pour retrouver la relation de récurrence de Neville :

pi,j+1(x)=(xix)pi+1,j(x)+(xxi+j+1)pi,j(x)xixi+j+1

Par ailleurs, en employant la même méthode que précédemment, on peut obtenir :

pi+1,j(x)pi,j(x)=(fi+1,jfi,j)(xxi+1)(xxi+2)...(xxi+j)

et en utilisant l'égalité évidente :

pi,j+1(x)pi,j(x)=pi,j+1(x)pi+1,j(x)+pi+1,j(x)pi,j(x)

on obtient :

fi,j+1(xxi)=fi,j+1(xxi+j+1)+(fi+1,jfi,j)

qui fournit un algorithme récursif de calcul de ces coefficients :

fi,0=yi, 0in,
fi,j+1=fi+1,jfi,jxi+j+1xi 0j<n et 0i<nj. 

Ces coefficients sont appelés différences divisées, notées :

fi,j=f[xi,,xi+j],

et sont utilisés pour calculer le polynôme d'interpolation de Newton.

Exemple

Modèle:...

L'algorithme de Neville est plus économique numériquement que l'interpolation newtonienne lorsque le nombre de points à évaluer est faible (typiquement, inférieur aux nombre de points d'interpolation). Au delà, il vaut mieux calculer une fois pour toutes les différences divisées, et utiliser la méthode de Newton.

L'algorithme de Neville est utilisé notamment dans la méthode de Romberg, une méthode d'intégration numérique.

Voir aussi

Notes

Modèle:Références

Bibliographie

Liens externes

Modèle:Portail

de:Polynominterpolation#Algorithmus_von_Neville-Aitken

  1. Iterative Interpolation, Eric Harold Neville, Indian Math. Soc., Jn., v. 20, 1933, Modèle:P..
  2. Modèle:Lang.