Metodo dell'interpolazione lineare

Da Wikipedia, l'enciclopedia libera.

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 xk per k=1,...,n chiamati nodi e per ogni xk sia dato un secondo numero reale yk. 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 (xk,yk) viene chiamato punto dato ed f viene detta interpolante per i punti dati.

Quando gli yk sono forniti da una funzione nota talora si scrivono fk.

L'algoritmo sfruttato dal metodo è il seguente:

  1. Scelta iniziale di a e b tali che f(a)×f(b) < 0
  2. c = (a×f(b) - b×f(a))/(f(b) - f(a))
  3. Se f(c) = 0 entro un certo criterio di tolleranza, c è la soluzione cercata
  4. Se f(a)×f(c) < 0 la radice è compresa nell'intervallo (a,c)
  5. Se f(c)×f(b) < 0 la radice è compresa nell'intervallo (b,c)
  6. 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[modifica | modifica wikitesto]

Si supponga di avere la seguente tabella, che dà alcuni valori di una funzione nota f.

Diagramma dei punti dati.
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?
Interpolation example linear.svg

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 (xa,ya) e (xb,yb), 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 xk.

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 xa e xb e che g sia due volte differenziabile. Allora l'errore lineare di interpolazione è

 |f(x)-g(x)| \le C(x_b-x_a)^2 \quad\mbox{dove}\quad C = \frac18 \max_{y\in[x_a,x_b]} g''(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.

Voci correlate[modifica | modifica wikitesto]

Collegamenti esterni[modifica | modifica wikitesto]

matematica Portale Matematica: accedi alle voci di Wikipedia che trattano di matematica