# Metodo dell'interpolazione lineare

Il metodo dell'interpolazione lineare è un metodo numerico per trovare le radici di una funzione. È una versione leggermente più raffinata del metodo della bisezione e ne ripercorre pregi e difetti. Necessita della stima iniziale di un intervallo (a,b) entro cui debba esser compresa la radice, tale che f(a)×f(b) < 0. È anch'esso un metodo del primo ordine e dunque prevede una convergenza lenta. La stabilità è garantita.
Sia data una sequenza di n numeri reali distinti x$_k$ per k=1,...,k=n chiamati nodi e per ogni x$_k$ sia dato un secondo numero reale y$_k$. L'interpolazione si propone di cercare una funzione di variabile reale f(x) di una certa famiglia di funzioni di variabile reale tale che sia
    $f(x_{k})=y_{k}~{\mbox{per}}~k=1,\ldots ,n$ .
Una coppia (x$_k$,y$_k$) viene chiamato punto dato ed f viene detta interpolante per i punti dati.
Quando gli y$_k$ sono forniti da una funzione nota talora si scrivono f$_k$.
L'algoritmo sfruttato dal metodo è il seguente:
* Scelta iniziale di a e b tali che f(a)×f(b) < 0
* c = (a×f(b) - b×f(a))/(f(b) - f(a))
* Se f(c) = 0 entro un certo criterio di tolleranza, c è la soluzione cercata
* Se f(a)×f(c) < 0 la radice è compresa nell'intervallo (a,c)
* Se f(c)×f(b) < 0 la radice è compresa nell'intervallo (b,c)
* Si ripete il ciclo rimpiazzando a o b con c a seconda se sia soddisfatta la condizione 4. o 5.
Si distingue dalla bisezione solo nel punto 2. dove si impiega un'interpolazione lineare piuttosto che dimezzare semplicemente l'intervallo. Questo accorgimento migliora l'efficienza del metodo.

## Esempio

Si supponga di avere la seguente tabella, che dà alcuni valori di una funzione nota f.
| x | f(x) |
| 0 | 0 |
| 1 | 0.8415 |
| 2 | 0.9093 |
| 3 | 0.1411 |
| 4 | −0.33 |
| 5 | −0.9589 |
| 6 | −0.2794 |
Quanto vale la funzione per esempio, in corrispondenza di $x=2.5$ ? L'interpolazione risolve problemi come questo.
Esistono molti metodi differenti di interpolazione. Per capire se un metodo scelto è adatto, è opportuno dare risposta a tutte le seguenti domande:
* Quanto esatto è il metodo?
* Quanto è costoso?
* Quanto è liscia l'interpolante?
* Quanti punti dati sono necessari per individuare la interpolante?
Il metodo di interpolazione più semplice è l'interpolazione lineare. Si consideri l'esempio di determinare $f(2.5)$. Poiché 2.5 è il punto medio fra 2 e 3, è ragionevole assegnare a $f(2.5)$ il valore medio fra $f(2)=0.9093$ e $f(3)=0.1411$, per cui risulta $f(2.5)=0.5252$.
In generale l'interpolazione lineare considera due punti dati, denotiamoli (x$_a$,y$_a$) e (x$_b$,y$_b$), e assume come funzione interpolante quella definita come
$f(x)={\frac {x-x_{b}}{x_{a}-x_{b}}}y_{a}-{\frac {x-x_{a}}{x_{a}-x_{b}}}y_{b}$.
Questa formula può essere interpretata come la media ponderata. L'interpolazione lineare è rapida e facile, ma può risultare ben poco precisa. Un altro svantaggio dell'interpolante lineare sta nel fatto di non essere differenziabile nei punti x$_k$.
La seguente stima dell'errore indica che l'interpolazione lineare non è molto precisa. Indichiamo con $g$ la funzione interpolante e supponiamo che x sia compreso fra x$_a$ e x$_b$ e che f sia due volte differenziabile. Allora l'errore lineare di interpolazione è
    $|f(x)-g(x)|\leq C(x_{b}-x_{a})^{2}\quad {\mbox{dove}}\quad C={\frac {1}{8}}\max _{y\in [x_{a},x_{b}]}f''(y).$
Quindi, l'errore è proporzionale al quadrato della distanza fra i punti dati. L'errore di qualche altro metodo afferente alla Interpolazione polinomiale e alla Interpolazione spline, è proporzionale alle più alte potenze della distanza fra i punti dati. Questi metodi inoltre producono funzioni interpolanti più lisce.