Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Corso di Laurea in Ingegneria Gestionale Sede di Fermo
Corso di Calcolo Numerico
3 - PROBLEMI DI INTERPOLAZIONE
Lucio Demeio
DIISM
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione: Polinomio di Lagrange
Differenze divise
Splines
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Introduzione
Problemi di interpolazione
Supponiamo di avere un insieme di dati che rappresentano misurazioni della temperatura in una certa localit` a durante il mese di luglio con cadenza bisettimanale.
Rappresentiamo tali dati nella seguente tabella:
Giorno Temperatura1 27.1
8 27.2
15 23.5
22 28.0
29 29.1
Supponiamo di voler conoscere la temperatura in un giorno
del mese diverso da quelli tabulato, o di dover utilizzare la
temperatura in un modello che la richiede continua, o di
voler predire la temperatura pi` u avanti nel tempo.
Dobbiamo costruire una funzione continua che passi per i
punti della tabella: interpolazione!
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Introduzione
Problemi di interpolazione
Supponiamo di avere un insieme di dati che rappresentano misurazioni della temperatura in una certa localit` a durante il mese di luglio con cadenza bisettimanale.
Rappresentiamo tali dati nella seguente tabella:
Giorno Temperatura1 27.1
8 27.2
15 23.5
22 28.0
29 29.1
Supponiamo di voler conoscere la temperatura in un giorno
del mese diverso da quelli tabulato, o di dover utilizzare la
temperatura in un modello che la richiede continua, o di
voler predire la temperatura pi` u avanti nel tempo.
Dobbiamo costruire una funzione continua che passi per i
punti della tabella: interpolazione!
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Introduzione
Problemi di interpolazione
Supponiamo di avere un insieme di dati che rappresentano misurazioni della temperatura in una certa localit` a durante il mese di luglio con cadenza bisettimanale.
Rappresentiamo tali dati nella seguente tabella:
Giorno Temperatura
1 27.1
8 27.2
15 23.5
22 28.0
29 29.1
Supponiamo di voler conoscere la temperatura in un giorno
del mese diverso da quelli tabulato, o di dover utilizzare la
temperatura in un modello che la richiede continua, o di
voler predire la temperatura pi` u avanti nel tempo.
Dobbiamo costruire una funzione continua che passi per i
punti della tabella: interpolazione!
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Introduzione
Problemi di interpolazione
Supponiamo di avere un insieme di dati che rappresentano misurazioni della temperatura in una certa localit` a durante il mese di luglio con cadenza bisettimanale.
Rappresentiamo tali dati nella seguente tabella:
Giorno Temperatura
1 27.1
8 27.2
15 23.5
22 28.0
29 29.1
Supponiamo di voler conoscere la temperatura in un giorno del mese diverso da quelli tabulato, o di dover utilizzare la temperatura in un modello che la richiede continua, o di voler predire la temperatura pi` u avanti nel tempo.
Dobbiamo costruire una funzione continua che passi per i
punti della tabella: interpolazione!
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Introduzione
Problemi di interpolazione
Supponiamo di avere un insieme di dati che rappresentano misurazioni della temperatura in una certa localit` a durante il mese di luglio con cadenza bisettimanale.
Rappresentiamo tali dati nella seguente tabella:
Giorno Temperatura
1 27.1
8 27.2
15 23.5
22 28.0
29 29.1
Supponiamo di voler conoscere la temperatura in un giorno del mese diverso da quelli tabulato, o di dover utilizzare la temperatura in un modello che la richiede continua, o di voler predire la temperatura pi` u avanti nel tempo.
Dobbiamo costruire una funzione continua che passi per i
punti della tabella: interpolazione!
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione polinomiale
Problemi di interpolazione
Una classe di funzioni continue molto usate nei problemi di interpolazione sono i polinomi.
Sappiamo che per n + 1 punti assegnati,
{(x
0, y
0), (x
1, y
1), ..., (x
n, y
n)} passa uno ed un solo polinomio P
n(x) di grado n.
Approssimazione polinomiale delle funzioni
Una propriet` a importante dei polinomi ` e che possono approssimare bene quanto si vuole una qualunque funzione continua su un intervallo chiuso. In particolare vale il seguente teorema:
Theorem (Teorema di Weierstrass)
Sia f : [a, b] → R una funzione continua e sia ε > 0 arbitrario.
Allora esiste un polinomio P (x) tale che, per ogni x ∈ [a, b], si
ha |f (x) − P (x)| < ε.
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione polinomiale
Problemi di interpolazione
Una classe di funzioni continue molto usate nei problemi di interpolazione sono i polinomi.
Sappiamo che per n + 1 punti assegnati,
{(x
0, y
0), (x
1, y
1), ..., (x
n, y
n)} passa uno ed un solo polinomio P
n(x) di grado n.
Approssimazione polinomiale delle funzioni
Una propriet` a importante dei polinomi ` e che possono approssimare bene quanto si vuole una qualunque funzione continua su un intervallo chiuso. In particolare vale il seguente teorema:
Theorem (Teorema di Weierstrass)
Sia f : [a, b] → R una funzione continua e sia ε > 0 arbitrario.
Allora esiste un polinomio P (x) tale che, per ogni x ∈ [a, b], si
ha |f (x) − P (x)| < ε.
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione polinomiale
Problemi di interpolazione
Una classe di funzioni continue molto usate nei problemi di interpolazione sono i polinomi.
Sappiamo che per n + 1 punti assegnati,
{(x
0, y
0), (x
1, y
1), ..., (x
n, y
n)} passa uno ed un solo polinomio P
n(x) di grado n.
Approssimazione polinomiale delle funzioni
Una propriet` a importante dei polinomi ` e che possono approssimare bene quanto si vuole una qualunque funzione continua su un intervallo chiuso. In particolare vale il seguente teorema:
Theorem (Teorema di Weierstrass)
Sia f : [a, b] → R una funzione continua e sia ε > 0 arbitrario.
Allora esiste un polinomio P (x) tale che, per ogni x ∈ [a, b], si
ha |f (x) − P (x)| < ε.
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione polinomiale
Problemi di interpolazione
Una classe di funzioni continue molto usate nei problemi di interpolazione sono i polinomi.
Sappiamo che per n + 1 punti assegnati,
{(x
0, y
0), (x
1, y
1), ..., (x
n, y
n)} passa uno ed un solo polinomio P
n(x) di grado n.
Approssimazione polinomiale delle funzioni
Una propriet` a importante dei polinomi ` e che possono approssimare bene quanto si vuole una qualunque funzione continua su un intervallo chiuso. In particolare vale il seguente teorema:
Theorem (Teorema di Weierstrass)
Sia f : [a, b] → R una funzione continua e sia ε > 0 arbitrario.
Allora esiste un polinomio P (x) tale che, per ogni x ∈ [a, b], si
ha |f (x) − P (x)| < ε.
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione polinomiale
Problemi di interpolazione
Una classe di funzioni continue molto usate nei problemi di interpolazione sono i polinomi.
Sappiamo che per n + 1 punti assegnati,
{(x
0, y
0), (x
1, y
1), ..., (x
n, y
n)} passa uno ed un solo polinomio P
n(x) di grado n.
Approssimazione polinomiale delle funzioni
Una propriet` a importante dei polinomi ` e che possono approssimare bene quanto si vuole una qualunque funzione continua su un intervallo chiuso. In particolare vale il seguente teorema:
Theorem (Teorema di Weierstrass)
Sia f : [a, b] → R una funzione continua e sia ε > 0 arbitrario.
Allora esiste un polinomio P (x) tale che, per ogni x ∈ [a, b], si
ha |f (x) − P (x)| < ε.
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Polinomio interpolatore di Lagrange
Supporremo nel seguito che le y
isiano i valori di una funzione nei punti x
i, chiamati nodi: y
i= f (x
i)
Siano {(x
0, y
0), (x
1, y
1), ..., (x
n, y
n)} n + 1 punti del piano cartesiano. Chi ` e il polinomio di grado n che passa per essi?
Cominciamo dalle cose semplici, n = 1: {(x
0, y
0), (x
1, y
1)}. Allora
P
1(x) = y
0x − x
1x
0− x
1+ y
1x − x
0x
1− x
0Si vede facilmente che P
1(x
0) = y
0e P
1(x
1) = y
1. n = 2: {(x
0, y
0), (x
1, y
1), (x
2, y
2)}. Allora
P
2(x) = y
0(x − x
1)(x − x
2) (x
0− x
1)(x
0− x
2) + y
1(x − x
0)(x − x
2) (x
1− x
0)(x
1− x
2) +y
2(x − x
0)(x − x
1)
(x
2− x
0)(x
2− x
1)
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Polinomio interpolatore di Lagrange
Supporremo nel seguito che le y
isiano i valori di una funzione nei punti x
i, chiamati nodi: y
i= f (x
i)
Siano {(x
0, y
0), (x
1, y
1), ..., (x
n, y
n)} n + 1 punti del piano cartesiano. Chi ` e il polinomio di grado n che passa per essi?
Cominciamo dalle cose semplici, n = 1: {(x
0, y
0), (x
1, y
1)}. Allora
P
1(x) = y
0x − x
1x
0− x
1+ y
1x − x
0x
1− x
0Si vede facilmente che P
1(x
0) = y
0e P
1(x
1) = y
1. n = 2: {(x
0, y
0), (x
1, y
1), (x
2, y
2)}. Allora
P
2(x) = y
0(x − x
1)(x − x
2) (x
0− x
1)(x
0− x
2) + y
1(x − x
0)(x − x
2) (x
1− x
0)(x
1− x
2) +y
2(x − x
0)(x − x
1)
(x
2− x
0)(x
2− x
1)
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Polinomio interpolatore di Lagrange
Supporremo nel seguito che le y
isiano i valori di una funzione nei punti x
i, chiamati nodi: y
i= f (x
i)
Siano {(x
0, y
0), (x
1, y
1), ..., (x
n, y
n)} n + 1 punti del piano cartesiano. Chi ` e il polinomio di grado n che passa per essi?
Cominciamo dalle cose semplici, n = 1: {(x
0, y
0), (x
1, y
1)}. Allora
P
1(x) = y
0x − x
1x
0− x
1+ y
1x − x
0x
1− x
0Si vede facilmente che P
1(x
0) = y
0e P
1(x
1) = y
1. n = 2: {(x
0, y
0), (x
1, y
1), (x
2, y
2)}. Allora
P
2(x) = y
0(x − x
1)(x − x
2) (x
0− x
1)(x
0− x
2) + y
1(x − x
0)(x − x
2) (x
1− x
0)(x
1− x
2) +y
2(x − x
0)(x − x
1)
(x
2− x
0)(x
2− x
1)
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Polinomio interpolatore di Lagrange
Supporremo nel seguito che le y
isiano i valori di una funzione nei punti x
i, chiamati nodi: y
i= f (x
i)
Siano {(x
0, y
0), (x
1, y
1), ..., (x
n, y
n)} n + 1 punti del piano cartesiano. Chi ` e il polinomio di grado n che passa per essi?
Cominciamo dalle cose semplici, n = 1: {(x
0, y
0), (x
1, y
1)}.
Allora
P
1(x) = y
0x − x
1x
0− x
1+ y
1x − x
0x
1− x
0Si vede facilmente che P
1(x
0) = y
0e P
1(x
1) = y
1.
n = 2: {(x
0, y
0), (x
1, y
1), (x
2, y
2)}. Allora
P
2(x) = y
0(x − x
1)(x − x
2) (x
0− x
1)(x
0− x
2) + y
1(x − x
0)(x − x
2) (x
1− x
0)(x
1− x
2) +y
2(x − x
0)(x − x
1)
(x
2− x
0)(x
2− x
1)
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Polinomio interpolatore di Lagrange
Supporremo nel seguito che le y
isiano i valori di una funzione nei punti x
i, chiamati nodi: y
i= f (x
i)
Siano {(x
0, y
0), (x
1, y
1), ..., (x
n, y
n)} n + 1 punti del piano cartesiano. Chi ` e il polinomio di grado n che passa per essi?
Cominciamo dalle cose semplici, n = 1: {(x
0, y
0), (x
1, y
1)}.
Allora
P
1(x) = y
0x − x
1x
0− x
1+ y
1x − x
0x
1− x
0Si vede facilmente che P
1(x
0) = y
0e P
1(x
1) = y
1. n = 2: {(x
0, y
0), (x
1, y
1), (x
2, y
2)}. Allora
P
2(x) = y
0(x − x
1)(x − x
2) (x
0− x
1)(x
0− x
2) + y
1(x − x
0)(x − x
2) (x
1− x
0)(x
1− x
2) +y
2(x − x
0)(x − x
1)
(x
2− x
0)(x
2− x
1)
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Polinomio interpolatore di Lagrange
In generale, per n + 1 punti:
P
n(x) = y
0(x − x
1)(x − x
2)...(x − x
n) (x
0− x
1)(x
0− x
2)...(x
0− x
n) + +y
1(x − x
0)(x − x
2)...(x − x
n) (x
1− x
0)(x
1− x
2)...(x
1− x
n) + ...
+y
k(x − x
0)...(x − x
k−1)(x − x
k+1)...(x − x
n) (x
k− x
0)...(x
k− x
k−1)(x
k− x
k+1)...(x
k− x
n) + ...
+y
n(x − x
0)(x − x
1)...(x − x
n−1)
(x
n− x
0)(x
n− x
1)...(x
n− x
n−1)
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Notazione
I coefficienti delle y
ksi indicano solitamente con L
n,k(x) e sono polinomi di grado n:
L
n,k(x) = (x − x
0)...(x − x
k−1)(x − x
k+1)...(x − x
n) (x
k− x
0)...(x
k− x
k−1)(x
k− x
k+1)...(x
k− x
n) cos`ı che il polinomio interpolatore di Lagrange si pu` o scrivere come
P
n(x) =
n
X
k=0
y
kL
n,k(x)
Come son fatti gli L
n,k?
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Notazione
I coefficienti delle y
ksi indicano solitamente con L
n,k(x) e sono polinomi di grado n:
L
n,k(x) = (x − x
0)...(x − x
k−1)(x − x
k+1)...(x − x
n) (x
k− x
0)...(x
k− x
k−1)(x
k− x
k+1)...(x
k− x
n) cos`ı che il polinomio interpolatore di Lagrange si pu` o scrivere come
P
n(x) =
n
X
k=0
y
kL
n,k(x)
Come son fatti gli L
n,k?
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Esempi degli L
n,ksu [0, 1]
n = 10, k = 5
0.2 0.4 0.6 0.8 1.0
-1 1 2 3
n = 100, k = 5
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Esempi degli L
n,ksu [0, 1]
n = 10, k = 5
0.2 0.4 0.6 0.8 1.0
-1 1 2 3
n = 100, k = 5
0.2 0.4 0.6 0.8 1.0
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Esempi degli L
n,ksu [0, 1]
n = 10, k = 5
0.2 0.4 0.6 0.8 1.0
-1 1 2 3
n = 100, k = 5
0.2 0.4 0.6 0.8 1.0
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Esempio
f (x) = sin 2πx nell’intervallo [0, 1], nodi equispaziati;
n = 3
0.2 0.4 0.6 0.8 1
-1 1
n = 5 Mathematica file Interpol1.nb
n = 5
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Esempio
f (x) = sin 2πx nell’intervallo [0, 1], nodi equispaziati;
n = 3
0.2 0.4 0.6 0.8 1
-1 1
n = 5
0.2 0.4 0.6 0.8 1
-1 1
Mathematica file Interpol1.nb
n = 5
0.2 0.4 0.6 0.8 1
-1 1
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Esempio
f (x) = sin 2πx nell’intervallo [0, 1], nodi equispaziati;
n = 3
0.2 0.4 0.6 0.8 1
-1 1
n = 5
0.2 0.4 0.6 0.8 1
-1 1
Mathematica file Interpol1.nb
n = 5
0.2 0.4 0.6 0.8 1
-1 1
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Esempio
f (x) = sin 2πx nell’intervallo [0, 1], nodi equispaziati;
n = 3
0.2 0.4 0.6 0.8 1
-1 1
n = 5
0.2 0.4 0.6 0.8 1
-1 1
Mathematica file Interpol1.nb
n = 5
0.2 0.4 0.6 0.8 1
-1 1
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Esempio
f (x) = sin 2πx nell’intervallo [0, 1], nodi equispaziati;
n = 3
0.2 0.4 0.6 0.8 1
-1 1
n = 5
0.2 0.4 0.6 0.8 1
-1 1
Mathematica file Interpol1.nb
n = 5
0.2 0.4 0.6 0.8 1
-1 1
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Theorem (Errore)
Sia f ∈ C
n+1[a, b] e siano x
0, x
1, ..., x
ni nodi
dell’interpolazione in [a, b], distinti ma altrimenti arbitrari.
Allora, ∀ x ∈ [a, b] esiste un numero ξ(x) ∈ [a, b] tale che
f (x) = P
n(x) + f
n+1(ξ(x))
(n + 1)! (x − x
0)(x − x
1)...(x − x
n)
Vediamo che f (x
k) = P
n(x
k) (ovvio!!) e che l’errore ` e
proporzionale alla derivata di ordine n + 1 ed inversamente
proporzionale ad (n + 1)! Se la derivata (n + 1)-esima ` e limitata,
allora l’errore va a zero molto rapidamente all’aumentare di n.
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Theorem (Errore)
Sia f ∈ C
n+1[a, b] e siano x
0, x
1, ..., x
ni nodi
dell’interpolazione in [a, b], distinti ma altrimenti arbitrari.
Allora, ∀ x ∈ [a, b] esiste un numero ξ(x) ∈ [a, b] tale che
f (x) = P
n(x) + f
n+1(ξ(x))
(n + 1)! (x − x
0)(x − x
1)...(x − x
n)
Vediamo che f (x
k) = P
n(x
k) (ovvio!!) e che l’errore ` e
proporzionale alla derivata di ordine n + 1 ed inversamente
proporzionale ad (n + 1)! Se la derivata (n + 1)-esima ` e limitata,
allora l’errore va a zero molto rapidamente all’aumentare di n.
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Altro esempio
f (x) = tanh x nell’intervallo [−1, 1], nodi equispaziati;
n = 10
-1 -0.5 0.5 1
-1 1
Mathematica file Interpol1.nb
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Altro esempio
f (x) = tanh x nell’intervallo [−1, 1], nodi equispaziati;
n = 10
-1 -0.5 0.5 1
-1 1
Mathematica file Interpol1.nb
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Altro esempio
f (x) = tanh x nell’intervallo [−1, 1], nodi equispaziati;
n = 10
-1 -0.5 0.5 1
-1 1
Mathematica file Interpol1.nb
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Interpolazione di Lagrange
Altro esempio
f (x) = tanh x nell’intervallo [−1, 1], nodi equispaziati;
n = 10
-1 -0.5 0.5 1
-1 1
Mathematica file Interpol1.nb
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise
Un metodo molto usato per la generazione del polinomio interpolatore ` e quello delle differenze divise.
Siano x
k∈ [a, b], k = 0, n i nodi e sia f (x) una funzione continua definita anch’essa in [a, b]. Sia inoltre P
n(x) il polinomio interpolatore di Lagrange di grado n. Il polinomio si pu` o scrivere nella forma
P
n(x) = a
0+ a
1(x − x
0) + a
2(x − x
0)(x − x
1) + ... +a
n(x − x
0)(x − x
1)...(x − x
n−1)
dove gli a
ksono dei coefficienti da determinare. Sostituendo x
0al posto di x, i vede subito che
a
0= P
n(x
0) = f (x
0)
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise
Un metodo molto usato per la generazione del polinomio interpolatore ` e quello delle differenze divise.
Siano x
k∈ [a, b], k = 0, n i nodi e sia f (x) una funzione continua definita anch’essa in [a, b]. Sia inoltre P
n(x) il polinomio interpolatore di Lagrange di grado n.
Il polinomio si pu` o scrivere nella forma
P
n(x) = a
0+ a
1(x − x
0) + a
2(x − x
0)(x − x
1) + ... +a
n(x − x
0)(x − x
1)...(x − x
n−1)
dove gli a
ksono dei coefficienti da determinare. Sostituendo x
0al posto di x, i vede subito che
a
0= P
n(x
0) = f (x
0)
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise
Un metodo molto usato per la generazione del polinomio interpolatore ` e quello delle differenze divise.
Siano x
k∈ [a, b], k = 0, n i nodi e sia f (x) una funzione continua definita anch’essa in [a, b]. Sia inoltre P
n(x) il polinomio interpolatore di Lagrange di grado n.
Il polinomio si pu` o scrivere nella forma
P
n(x) = a
0+ a
1(x − x
0) + a
2(x − x
0)(x − x
1) + ...
+a
n(x − x
0)(x − x
1)...(x − x
n−1) dove gli a
ksono dei coefficienti da determinare.
Sostituendo x
0al posto di x, i vede subito che
a
0= P
n(x
0) = f (x
0)
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise
Un metodo molto usato per la generazione del polinomio interpolatore ` e quello delle differenze divise.
Siano x
k∈ [a, b], k = 0, n i nodi e sia f (x) una funzione continua definita anch’essa in [a, b]. Sia inoltre P
n(x) il polinomio interpolatore di Lagrange di grado n.
Il polinomio si pu` o scrivere nella forma
P
n(x) = a
0+ a
1(x − x
0) + a
2(x − x
0)(x − x
1) + ...
+a
n(x − x
0)(x − x
1)...(x − x
n−1) dove gli a
ksono dei coefficienti da determinare.
Sostituendo x
0al posto di x, i vede subito che
a
0= P
n(x
0) = f (x
0)
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise
Sostituiamo ora x
1al posto di x:
f (x
1) = a
0+ a
1(x
1− x
0) ovvero a
1= f (x
1) − f (x
0)
x
1− x
0Continuando:
a
2= f (x
2) − f (x
0) − a
1(x
2− x
0) (x
2− x
0)(x
2− x
1)
= f (x
2) − f (x
1) + f (x
1) − f (x
0) − a
1(x
2− x
0) (x
2− x
0)(x
2− x
1)
=
f (x2)−f (x1)
x2−x1
−
f (xx1)−f (x0)2−x1
x2−x0x1−x0
− 1 x
2− x
0=
f (x2)−f (x1)
x2−x1
−
f (xx1)−f (x0)1−x0
x
2− x
0Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise
Sostituiamo ora x
1al posto di x:
f (x
1) = a
0+ a
1(x
1− x
0) ovvero a
1= f (x
1) − f (x
0)
x
1− x
0Continuando:
a
2= f (x
2) − f (x
0) − a
1(x
2− x
0) (x
2− x
0)(x
2− x
1)
= f (x
2) − f (x
1) + f (x
1) − f (x
0) − a
1(x
2− x
0) (x
2− x
0)(x
2− x
1)
=
f (x2)−f (x1)
x2−x1
−
f (xx1)−f (x0)2−x1
x2−x0x1−x0
− 1 x
2− x
0=
f (x2)−f (x1)
x2−x1
−
f (xx1)−f (x0)1−x0
x
2− x
0Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise
Queste espressioni si possono scrivere pi` u sinteticamente introducendo le differenze divise per la funzione f . La definizione delle differenze divise ` e induttiva:
Diff. divisa di ord. ZERO: f [x
i] = f (x
i); Diff. divisa di ord. UNO:
f [x
i, x
i+1] = f [x
i+1] − f [x
i] x
i+1− x
i= f (x
i+1) − f (x
i) x
i+1− x
iDiff. divisa di ord. DUE:
f [x
i, x
i+1, f
i+2] = f [x
i+1, x
i+2] − f [x
i, x
i+1] x
i+2− x
i= f (x
i+2) − 2 f (x
i+1) + f (x
i)
x
i+2− x
iCalcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise
Queste espressioni si possono scrivere pi` u sinteticamente introducendo le differenze divise per la funzione f . La definizione delle differenze divise ` e induttiva:
Diff. divisa di ord. ZERO: f [x
i] = f (x
i);
Diff. divisa di ord. UNO:
f [x
i, x
i+1] = f [x
i+1] − f [x
i] x
i+1− x
i= f (x
i+1) − f (x
i) x
i+1− x
iDiff. divisa di ord. DUE:
f [x
i, x
i+1, f
i+2] = f [x
i+1, x
i+2] − f [x
i, x
i+1] x
i+2− x
i= f (x
i+2) − 2 f (x
i+1) + f (x
i)
x
i+2− x
iCalcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise
Queste espressioni si possono scrivere pi` u sinteticamente introducendo le differenze divise per la funzione f . La definizione delle differenze divise ` e induttiva:
Diff. divisa di ord. ZERO: f [x
i] = f (x
i);
Diff. divisa di ord. UNO:
f [x
i, x
i+1] = f [x
i+1] − f [x
i] x
i+1− x
i= f (x
i+1) − f (x
i) x
i+1− x
iDiff. divisa di ord. DUE:
f [x
i, x
i+1, f
i+2] = f [x
i+1, x
i+2] − f [x
i, x
i+1] x
i+2− x
i= f (x
i+2) − 2 f (x
i+1) + f (x
i)
x
i+2− x
iCalcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise
Queste espressioni si possono scrivere pi` u sinteticamente introducendo le differenze divise per la funzione f . La definizione delle differenze divise ` e induttiva:
Diff. divisa di ord. ZERO: f [x
i] = f (x
i);
Diff. divisa di ord. UNO:
f [x
i, x
i+1] = f [x
i+1] − f [x
i] x
i+1− x
i= f (x
i+1) − f (x
i) x
i+1− x
iDiff. divisa di ord. DUE:
f [x
i, x
i+1, f
i+2] = f [x
i+1, x
i+2] − f [x
i, x
i+1] x
i+2− x
i= f (x
i+2) − 2 f (x
i+1) + f (x
i)
x
i+2− x
iCalcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise
La differenza divisa di ordine UNO pu` o essere vista come un rapporto incrementale della funzione, tra x
ie x
i+1;
La differenza divisa di ordine DUE pu` o essere vista come un rapporto incrementale della derivata della funzione, tra x
ie x
i+2(rapporto incrementale secondo);
Vedremo in seguito, che i rapporti incrementali si possono usare per approssimare numericamente le derivate; quindi, le differenze divise di ordine UNO approssimano la derivata prima, quelle di ordine DUE la derivata seconda; Diff. divisa di ord. k:
f [x
i, x
i+1, ..., x
i+k] = f [x
i+1, x
i+2, ..., x
i+k] − f [x
i, x
i+1, ..., x
i+k−1]
x
i+k− x
iCalcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise
La differenza divisa di ordine UNO pu` o essere vista come un rapporto incrementale della funzione, tra x
ie x
i+1; La differenza divisa di ordine DUE pu` o essere vista come un rapporto incrementale della derivata della funzione, tra x
ie x
i+2(rapporto incrementale secondo);
Vedremo in seguito, che i rapporti incrementali si possono usare per approssimare numericamente le derivate; quindi, le differenze divise di ordine UNO approssimano la derivata prima, quelle di ordine DUE la derivata seconda; Diff. divisa di ord. k:
f [x
i, x
i+1, ..., x
i+k] = f [x
i+1, x
i+2, ..., x
i+k] − f [x
i, x
i+1, ..., x
i+k−1]
x
i+k− x
iCalcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise
La differenza divisa di ordine UNO pu` o essere vista come un rapporto incrementale della funzione, tra x
ie x
i+1; La differenza divisa di ordine DUE pu` o essere vista come un rapporto incrementale della derivata della funzione, tra x
ie x
i+2(rapporto incrementale secondo);
Vedremo in seguito, che i rapporti incrementali si possono usare per approssimare numericamente le derivate; quindi, le differenze divise di ordine UNO approssimano la derivata prima, quelle di ordine DUE la derivata seconda;
Diff. divisa di ord. k:
f [x
i, x
i+1, ..., x
i+k] = f [x
i+1, x
i+2, ..., x
i+k] − f [x
i, x
i+1, ..., x
i+k−1]
x
i+k− x
iCalcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise
Con queste definizioni, possiamo allora scrivere che
a
0= f (x
0) = f [x
0] a
1= f (x
1) − f (x
0)
x
1− x
0= f [x
1] − f [x
0] x
1− x
0= f [x
0, x
1] a
2= f [x
1, x
2] − f [x
0, x
1]
x
2− x
0= f [x
0, x
1, x
2] ...
a
k= f [x
0, x
1, x
2, ..., x
k]
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise
Con queste definizioni, possiamo allora scrivere che
a
0= f (x
0) = f [x
0] a
1= f (x
1) − f (x
0)
x
1− x
0= f [x
1] − f [x
0]
x
1− x
0= f [x
0, x
1] a
2= f [x
1, x
2] − f [x
0, x
1]
x
2− x
0= f [x
0, x
1, x
2] ...
a
k= f [x
0, x
1, x
2, ..., x
k]
Il polinomio interpolatore si pu` o dunque scrivere come
P
n(x) = f [x
0] +
n
X
k=1
f [x
0, x
1, ..., x
k] (x − x
0)(x − x
1)...(x − x
k−1)
detta
formula di interpolazione di Newton alle differenze diviseCalcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Mathematica file DiffDiv1.nb
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Mathematica file DiffDiv1.nb
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise - Legame con le derivate
Theorem
Sia f ∈ C
n[a, b] e siano x
0, x
1, ..., x
ni nodi in [a, b], distinti ma altrimenti arbitrari. Allora ∃ξ ∈ (a, b) tale che
f [x
0, x
1, ..., x
n] = f
(n)(ξ)
n!
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise - Legame con le derivate
Dal Teorema di Lagrange: se f (x) ` e derivabile, ∃ξ ∈ [x
0, x
1] tale che
f [x
0, x
1] = f (x
1) − f (x
0) x
1− x
0= f
0(ξ)
Theorem
Sia f ∈ C
n[a, b] e siano x
0, x
1, ..., x
ni nodi in [a, b], distinti ma altrimenti arbitrari. Allora ∃ξ ∈ (a, b) tale che
f [x
0, x
1, ..., x
n] = f
(n)(ξ)
n!
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Proof.
Sia g(x) = f (x) − P
n(x). Evidentemente g(x
k) = 0, ∀k. Per il Teorema di Rolle generalizzato, ∃ξ ∈ (a, b) tale che
g
(n)(ξ) = f
(n)(ξ) − P
n(n)(ξ) = 0. Ma P
n(n)(x) = n! f [x
0, x
1, ..., x
n], da cui la tesi.
Teorema di Rolle generalizzato
Data una funzione f : [a, b] → R , di classe C
n[a, b], se esistono
n + 1 punti, x
0, x
1, ..., x
n∈ [a, b] tali che f (x
k) = 0, k = 0, ..., n,
allora esiste un punto ξ ∈ [a, b] tale che f
n(ξ) = 0.
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Proof.
Sia g(x) = f (x) − P
n(x). Evidentemente g(x
k) = 0, ∀k. Per il Teorema di Rolle generalizzato, ∃ξ ∈ (a, b) tale che
g
(n)(ξ) = f
(n)(ξ) − P
n(n)(ξ) = 0. Ma P
n(n)(x) = n! f [x
0, x
1, ..., x
n], da cui la tesi.
Teorema di Rolle generalizzato
Data una funzione f : [a, b] → R , di classe C
n[a, b], se esistono
n + 1 punti, x
0, x
1, ..., x
n∈ [a, b] tali che f (x
k) = 0, k = 0, ..., n,
allora esiste un punto ξ ∈ [a, b] tale che f
n(ξ) = 0.
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise - Nodi equispaziati
Siano ora i nodi (x
0, x
1, ..., x
n) uniformemente distribuiti in [a, b], cio` e x
i+1− x
i= h = cost., con , x
0= a e x
n= b, ed h = (b − a)/n ` e detto passo di discretizzazione.
Allora possiamo scrivere che
x
i= x
0+ i h x
i− x
j= (i − j) h
Se x ∈ [a, b], possiamo scrivere x = x
0+ s h, dove s ` e un numero reale con 0 ≤ s ≤ n;
s = 0 → x = a, s = i → x = x
i, s = n → x = b i < s < i + 1 → x
i< x < x
i+1b
a h
x x1
x0 x2 x3 xn
x
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise - Nodi equispaziati
Siano ora i nodi (x
0, x
1, ..., x
n) uniformemente distribuiti in [a, b], cio` e x
i+1− x
i= h = cost., con , x
0= a e x
n= b, ed h = (b − a)/n ` e detto passo di discretizzazione.
Allora possiamo scrivere che
x
i= x
0+ i h x
i− x
j= (i − j) h
Se x ∈ [a, b], possiamo scrivere x = x
0+ s h, dove s ` e un numero reale con 0 ≤ s ≤ n;
s = 0 → x = a, s = i → x = x
i, s = n → x = b i < s < i + 1 → x
i< x < x
i+1b
a h
x x1
x0 x2 x3 xn
x
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Differenze divise - Nodi equispaziati
Siano ora i nodi (x
0, x
1, ..., x
n) uniformemente distribuiti in [a, b], cio` e x
i+1− x
i= h = cost., con , x
0= a e x
n= b, ed h = (b − a)/n ` e detto passo di discretizzazione.
Allora possiamo scrivere che
x
i= x
0+ i h x
i− x
j= (i − j) h
Se x ∈ [a, b], possiamo scrivere x = x
0+ s h, dove s ` e un numero reale con 0 ≤ s ≤ n;
s = 0 → x = a, s = i → x = x
i, s = n → x = b i < s < i + 1 → x
i< x < x
i+1b
a h
x x1
x0 x2 x3 xn
x
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Notazione binomiale
Avremo dunque
x − x
0= s h, x − x
1= (s − 1) h (x − x
0)(x − x
1) = s(s − 1) h
2(x − x
0)(x − x
1)...(x − x
k) = s(s − 1)...(s − k) h
k+1Il polinomio interpolatore di Lagrange diventa allora
P
n(x) = P
n(x
0+ sh) = f [x
0] + s h f [x
0, x
1] +s(s − 1) h
2f [x
0, x
1, x
2] + ...
+s(s − 1)...(s − n + 1) h
nf [x
0, x
1, ..., x
n]
=
n
X
k=0
s(s − 1)...(s − k + 1) h
kf [x
0, x
1, ..., x
k]
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Notazione binomiale
Avremo dunque
x − x
0= s h, x − x
1= (s − 1) h (x − x
0)(x − x
1) = s(s − 1) h
2(x − x
0)(x − x
1)...(x − x
k) = s(s − 1)...(s − k) h
k+1Il polinomio interpolatore di Lagrange diventa allora
P
n(x) = P
n(x
0+ sh) = f [x
0] + s h f [x
0, x
1] +s(s − 1) h
2f [x
0, x
1, x
2] + ...
+s(s − 1)...(s − n + 1) h
nf [x
0, x
1, ..., x
n]
=
n
X
k=0
s(s − 1)...(s − k + 1) h
kf [x
0, x
1, ..., x
k]
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Notazione binomiale
Avremo dunque
x − x
0= s h, x − x
1= (s − 1) h (x − x
0)(x − x
1) = s(s − 1) h
2(x − x
0)(x − x
1)...(x − x
k) = s(s − 1)...(s − k) h
k+1Il polinomio interpolatore di Lagrange diventa allora
P
n(x) = P
n(x
0+ sh) = f [x
0] + s h f [x
0, x
1] +s(s − 1) h
2f [x
0, x
1, x
2] + ...
+s(s − 1)...(s − n + 1) h
nf [x
0, x
1, ..., x
n]
=
n
X
k=0
s(s − 1)...(s − k + 1) h
kf [x
0, x
1, ..., x
k]
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Notazione binomiale - Differenze divise in avanti
Ricordando la definizione dei coefficienti binomiali
n k
= n(n − 1)...(n − k + 1)
k! ;
estendendola anche al campo reale, possiamo scrivere
P
n(x) = f [x
0] +
n
X
k=1
s k
k! h
kf [x
0, x
1, ..., x
k]
che ` e detta formula alle differenze divise in avanti di
Newton
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Notazione binomiale - Differenze divise in avanti
Ricordando la definizione dei coefficienti binomiali
n k
= n(n − 1)...(n − k + 1)
k! ;
estendendola anche al campo reale, possiamo scrivere
P
n(x) = f [x
0] +
n
X
k=1
s k
k! h
kf [x
0, x
1, ..., x
k]
che ` e detta formula alle differenze divise in avanti di
Newton
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Notazione binomiale - Differenze divise in avanti
Ricordando la definizione dei coefficienti binomiali
n k
= n(n − 1)...(n − k + 1)
k! ;
estendendola anche al campo reale, possiamo scrivere
P
n(x) = f [x
0] +
n
X
k=1
s k
k! h
kf [x
0, x
1, ..., x
k]
che ` e detta formula alle differenze divise in avanti di
Newton
Calcolo Numerico Lucio Demeio
DIISM
Interpolazione:
Polinomio di Lagrange Differenze divise Splines
Differenze divise
Notazione binomiale - Differenze divise in avanti
Ricordando la definizione dei coefficienti binomiali
n k
= n(n − 1)...(n − k + 1)
k! ;
estendendola anche al campo reale, possiamo scrivere
P
n(x) = f [x
0] +
n
X
k=1