due parole sull’interpolazione Daniele Marini
Due problemi trovare una funzione incognita a partire da dati campione che assuma nei punti campione il valore dato: interpolazione che assuma nei punti campione un valore “vicino”: approssimazione in questo caso si richiedono anche proprietà di smoothing o smussatura/lisciatura
Interpolazione di dati dati n punti distinti (xi,yi) determinare una funzione f(x) tale che f(xi)=yi si possono imporre ulteriori vincoli, ad esempio sulla derivabilità della funzione ai vari ordini e sul valore delle derivate in tutti i punti o nei punti estremi se la funzione f è un polinomio di grado k si parla di interpolazione polinomiale; se k=1 si parla di interpolazione lineare
Interpolazione polinomiale se il numero di punti è elevato per garantire l’interpolazione bisogna ricorrere a un polinomio di grado elevato (>3) e la funzione interpolante può avere oscillazioni indesiderate in questo caso si ricorre a interpolazione a tratti ad esempio con spline cubiche o di terzo grado
Interpolazione a spline cubiche dati N punti si scelgono k funzioni Sj polinomiali di terzo grado imponendo: la funzione S0 passa per i punti p0,p1,p2,p3 la funzione S1 passa per i punti p4,p5,p6,p7 ... si impongono condizioni di continuità in p3=p4, p7=p8, ... si impongono condizioni di continuità sulle derivate prime e seconde nei punti comuni si impongono condizioni agli estremi (es. S’0=S’k=0)
Spline cubiche Si supponga di avere N punti {xk , yk} k=1..N le cui ascisse siano ordinate in modo crescente, ovvero: x1 < x2 < · · · < xN Si voglia quindi costruire la funzione S(x), detta Spline cubica, formata da N − 1 polinomi cubici Sk(x), dove Sk(x) = ck,0 +ck,1(x − xk) +ck,2(x − xk)2 +ck,3 (x − xk)3 per xk ≤ xk+1 e k = 1, 2, . . . , N − 1.
Spline cubiche Allora la S(x) avrà la forma: Dovranno quindi essere soddisfatte le condizioni: S (xk) = yk k = 1, 2, . . . , N Sk −1 (xk) = Sk (xk) k = 2, 3, . . . , N − 1 S′ k −1 (xk) = S′ k (xk) k = 2, 3, . . . , N − 1 S′′ k-1(xk) = S ′′k (xk) k = 2, 3, . . . , N − 1
Spline cubiche Infine per determinare le funzioni occorre trovare i valori dei coefficienti ck,i, k=1..,N, i=0..3
Interpolazione lineare dati due punti (x1,y1) (x2,y2) si ricava l’equazione della retta passante per essi: dati n punti si ricorre all’interpolazione lineare a tratti: ogni coppia di punti è interpolata da un segmento di retta, la funzione interpolante non è continua alle derivate (è una spezzata)
Approssimazione si richiede che la funzione incognita passi vicino ai punti campione occorre rendere minima una qualche distanza (norma) si definisce un residuo: ri=(yi-f(xi)) si definisce una norma, ad esempio quadratica:
Approssimazione -minimi quadrati supponendo che la funzione approssimante sia un polinomio di grado n-1: occorre rendere minima la norma:
Approssimazione - spline curve di Bezier costruite con funzioni di Bernstein cubiche altri metodi: B-spline, interpolazione di Hermite, ...