Metodo dell'interpolazione lineare
# 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.

