Numerieke Wiskunde XI:
Lineaire interpolatie
Stel: je hebt een lijst meetpunten en je wilt weten wat de wilt weten wat een meetwaarde is die tussen twee punten in ligt.
Om dat op te lossen zijn er diverse mogelijkheden, waaronder:
• Bereken een regressielijn, polynoom,
machtsfunctie of exponentiële functie
met behulp van de kleinste kwadraten methode, en gebruik die om de gezochte 'meetwaarde' te vinden.
• Bereken het 'exacte' polynoom door de meetpunten en gebruik die om
de gezochte 'meetwaarde' te vinden. De graad van dit polynoom is één lager dan het aantal meetpunten.
• Bereken een rechte lijn tussen de twee dichtstbijzijnde meetpunten en gebruik die om de gezochte 'meetwaarde'
te vinden (Lineaire interpolatie).
• Bereken een parabool door de drie dichtstbijzijnde meetpunten en gebruik die om de gezochte 'meetwaarde' te
vinden (Driepunts-interpolatie).
- Op deze pagina gaat het over Lineaire interpolatie.
-
Zie de figuur hiernaast. Er zijn twee punten:
(x0, y0)
en(x1, y1)
. - De
x
-coördinaat van het gezochte punt(x, y)
moet tussenx0
enx1
liggen. - De
y
-coördinaat van het gezochte punt bereken je met:
y = y0 + (x-x0) / (x1-x0) · (y1-y0)
.
- Als
x
niet tussenx0
enx1
ligt, is er sprake van extrapolatie. Dat is riskant, omdat de uitkomst onnauwkeurig kan worden.
Een uitgewerkt voorbeeld
Vraag: geven is de set meetpunten (x,y) = (1,1); (2,3); (4,5); (5,7)
. Wat is de met lineaire interpolatie
bepaalde waarde voor x = 3.1
?
Uitwerking: x = 3.1
ligt in tussen x = 2
en x = 4
.
De meetwaarden voor x = 1
en x = 5
doen in deze berekening niet mee!
- Teken eerst de meetpunten
(x0,y0) = (2,3)
en(x1,y1) = (4,5)
in een grafiek. Trek een rechte lijn tussen de meetpunten. - Bereken (met de hierboven genoemde formule):
y = 3 + (3.1-2)/(4-2)*(5-3) = 3 + 1.1/2*2 = 4.1
. - Teken het punt
(x,y) = (3.1,4.1)
in de grafiek. Het ligt precies op de rechte lijn.
- Natuurlijk is er ook een applicatie om zelf met deze techniek
aan de slag te gaan. Klik op de knop hiernaast.
- De code van de applicatie kun je downloaden om zelf aan door te ontwikkelen.
- Als je verder wilt werken aan de applicatie, download je de .zip-file en pak je hem uit. Je hebt dan meteen een werkend voorbeeld.
Downloaden:
Druk op de knop:
File: voorb661.zip, 2107 bytes.