article

En analyse numérique (et dans son application algorithmique discrète pour le calcul numérique), une interpolation est une opération mathématique par laquelle on calcule la position d'un point dans une courbe pour laquelle on ne dispose pas d'équation. La courbe n'étant définie que par un ensemble de points, on est donc contraint d'estimer localement son équation.

= Interpolation polynomiale =

Une interpolation polynomiale consiste à utiliser un polynôme pour estimer localement l'équation représentant la courbe afin de déterminer la valeur entre les échantillons.

Interpolation linéaire


Dans le cas d'une interpolation linéaire, on considère dans ce cas que la courbe est localement une droite, dont on détermine l'équation à l'aide des coordonnées des deux points p_1 et p_2 de coordonnées respectives (x_1,y_1) et (x_2,y_2) les plus proches du point recherché :

pente = \frac{y_2 - y_1}{x_2 - x_1}
ordonn\acute{e}e\ \grave{a}\ l'origine = y_1 - pente \cdot x_1

L'équation permettant de retrouver le point recherché est la suivante :

y = pente \cdot x + ordonn\acute{e}e\ \grave{a}\ l'origine

Le code C permettant d'interpoler linéairement deux valeurs dans la plage mu * est le suivant : double LinearInterpolate(double v1, double v2, double mu) { return(v1*(1-mu)+v2*mu); }

Interpolation cubique


Comme son nom l'indique, on utilise ici une équation cubique pour modéliser localement la courbe. Quatre points sont nécessaires pour évaluer la fonction qui remplace la courbe discrète. Tout dépend des conditions de continuité utilisées, la forme de la cubique peut varier et donner une interporlation différente (ex: interpolation cubique de Keys ou interpolation cubique splines).

Le code C permettant d'interpoler cubiquement quatre valeurs dans la plage mu * est le suivant : double CubicInterpolate(double y0,double y1,double y2,double y3,double mu) { double a0,a1,a2,a3,mu2; mu2 = mu*mu; a0 = y3 - y2 - y0 + y1; a1 = y0 - y1 - a0; a2 = y2 - y0; a3 = y1; return(a0*mu*mu2+a1*mu2+a2*mu+a3); }

Répartition des points d'interpolation

Pour représenter une fonction en informatique, on prend en général « un certain nombre » de points et l'on fait une interpolation polynômiale, ce qui évite de calculer trop de points. Se pose alors la question du choix des points.

Dans un premier temps, on peut prendre des points régulièrement répartis dans l'intervalle. Cependant, cela peut donner des « effets de bord » (le polynôme représente bien au milieu de l'intervalle, mais a un comportement différent aux bords bien que passant par les points), et pose problème dans les endroits où les variations de pente sont importants.

Pour éviter les effets de bord, on utilise des points répartis selon une fonction sinusoïdale (il y a plus de points aux bords qu'au centre), voir Polynôme de Tchebychev.

On peut aussi utiliser le « remaillage automatique » : pour chaque intervale, on calcule la différence entre le polynôme et la fonction au point médian, et si cet écart est supérieur à un seuil de tolérence, on rajoute un point au milieu de l'intervalle.

= Applications =

  • Étalonnage d'un appareil en métrologie : par la mesure de points connus (étalons), on ajuste les paramètres de la loi reliant l'intensité mesurée (en général, courant ou tension sortant du détecteur) à l'intensité du phénomène ; la loi sert donc à interpoler entre les points des étalons.
  • Représentation graphique
  • Éléments finis

= Voir aussi =

=Liens externes= //astronomy.swin.edu.au/~pbourke/other/interpolation/ Interpolation methods, par Paul Bourke, décembre 1999

Interpolation numérique | Algorithme numérique

استيفاء | Интерполация | Interpolation | Interpolation | Interpolation | Interpolación | אינטרפולציה | Interpolazione (matematica) | Interpolatie | Interpolacja (matematyka) | Interpolação | Интерполяция | Interpolacija | İnterpolasyon | 插值

 

This article is licensed under the GNU Free Documentation License. It uses material from the "Interpolation numérique".

Home Pageartsbusinesscomputersgameshealthhospitalshomekids & teensnewsphysiciansrecreationreferenceregionalscienceshoppingsocietysportsworld