18.01.2015 Views

Appunti di Calcolo Numerico - Esercizi e Dispense - Università degli ...

Appunti di Calcolo Numerico - Esercizi e Dispense - Università degli ...

Appunti di Calcolo Numerico - Esercizi e Dispense - Università degli ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

5.5. Interpolazione polinomiale a tratti<br />

f (x) = |x| + 1 prendendo 6 punti equi<strong>di</strong>stanti nell’intervallo [−1,1] e il polinomio <strong>di</strong> interpolazione della<br />

funzione f (x) = e x nello stesso intervallo e con gli stessi punti. Mentre nel caso della funzione f (x) = e x il<br />

polinomio <strong>di</strong> interpolazione, nell’intervallo dei no<strong>di</strong>, si sovrappone alla funzione interpolata, per la funzione<br />

f (x) = |x| + 1 l’errore è ben evidente.<br />

Figura 5.8: Interpolazione della funzione f (x) = |x| + 1 (a sinistra) e della funzione f (x) = e x (a destra) con<br />

n = 5 nell’intervallo [−1,1]<br />

Se, in alcuni casi, la scelta dei no<strong>di</strong>, fatta in maniera opportuna, può risolvere determinati problemi che<br />

si incontrano nell’interpolazione, altre volte il polinomio <strong>di</strong> interpolazione produce risultati comunque non<br />

buoni, in<strong>di</strong>pendentemente dalla scelta dei no<strong>di</strong>.<br />

La domanda, allora, è la seguente: come possiamo ridurre il termine dell’errore senza aumentare<br />

il grado n nell’interpolazione e, tuttavia, mantenendo un numero elevato <strong>di</strong> no<strong>di</strong> La risposta viene<br />

dall’interpolazione polinomiale a tratti.<br />

Supponiamo <strong>di</strong> voler costruire una curva che interpola dei dati che si trovano all’interno <strong>di</strong> un certo intervallo<br />

[a,b]. Prenderemo dei punti all’interno <strong>di</strong> questo intervallo, in modo che il primo e l’ultimo punto<br />

coincidano con a e b rispettivamente: a = x 1 < x 2 < ... < x m = b. Chiamiamo questi punti no<strong>di</strong>. Come si<br />

può notare, abbiamo cambiato la numerazione dei no<strong>di</strong> (non più da x 0 a x n ma da x 1 a x m ) per evitare confusioni<br />

con quanto detto prima sull’interpolazione polinomiale. A ciascun nodo è associato il valore y i da<br />

interpolare. In questo modo abbiamo m no<strong>di</strong> in [a,b] e possiamo considerare gli m − 1 sottointervalli dati<br />

da [x 1 , x 2 ], [x 2 , x 3 ],... fino ad arrivare a [x n−1 , x m ] (da cui il generico sottointervallo è dato da [x i , x i+1 ] con<br />

i = 1,2,...,m − 1). Su ciascun sottointervallo andremo a costruire un polinomio <strong>di</strong> interpolazione <strong>di</strong> grado<br />

basso (considereremo n = 1 e n = 3), che chiamamo s i (x). La funzione <strong>di</strong> interpolazione globale sarà una<br />

curva v(x) continua (in alcuni casi anche <strong>di</strong> classe C 1 o C 2 ) che sod<strong>di</strong>sfa la relazione<br />

v(x) = s i (x), x i ≤ x ≤ x i+1 ,i = 1,2,...,m − 1.<br />

Ci sono <strong>di</strong>versi tipi <strong>di</strong> interpolazione polinomiale a tratti.<br />

l’interpolazione lineare a tratti e le spline cubiche.<br />

Noi ne consideriamo solamente due:<br />

5.5.1 Interpolazione lineare a tratti<br />

Il caso più semplice da considerare è prendere, su ciascun sottointervallo [x i , x i+1 ] un polinomio <strong>di</strong> interpolazione<br />

lineare (grado n = 1), quin<strong>di</strong> una retta. Allora la funzione v(x) sarà continua (ma non avrà le<br />

derivate continue) in tutto l’intervallo.<br />

Nell’intervallo [x i , x i+1 ], il polinomio <strong>di</strong> interpolazione s i (x) si può costruire facilmente applicando, ad<br />

esempio, la formula delle <strong>di</strong>fferenze <strong>di</strong>vise <strong>di</strong> Newton, da cui s i (x) = y i + f [x i , x i+1 ](x − x i ).<br />

Globalmente avremo v(x) tale che<br />

v(x) = s i (x) = y i + f [x i , x i+1 ](x − x i ), x i ≤ x ≤ x i+1 , i = 1,2,...,m − 1.<br />

Un esempio <strong>di</strong> interpolazione lineare a tratti si ha in Figura 5.9. Il grande vantaggio <strong>di</strong> usare questo tipo<br />

<strong>di</strong> interpolazione è la sua semplicità e facilità. Tuttavia spesso questo tipo <strong>di</strong> interpolazione non è sufficiente<br />

75

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!