Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Generalit`a
Problema 1 Dati (xi , yi ) i = 0, ..., n (es. misurazioni) voglio
approssimarli con una funzione g in modo da poter stimare
landamento dei dati anche in punti x 6= xi .
Problema 2 Data f voglio approssimarla con una g pi
u facile da
usare (ad esempio un polinomio). Es:
Z b
exp(x 2 )dx =?
a
b
2
g (x)dx
a
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
3
4
5
2
Pm , polinomi algebrici
Pm di grado m:
fm (x) = pm (x) = k=0 ak x k
PT
m ,funzioni polinomiali a tratti di grado r (tipicamente basso):
fm|[xi ,xi+1 ] = pr (x)(i)
Sr , funzioni spline di ordine r (vedi dopo, caso particolare di 2)
m , polinomi trigonometrici:
Pm
m (x) = a0 + k=1 (ak cos(kx) + bk sin(kx))
...
interpolazione: fm (xi ) P
= yi , i = 0, ..., n
n
minimi quadrati: min i=0 (fm (xi ) yi )2 (ideale per
approssimazione di dati sperimentali)
Stefano Berrone Sandra Pieraccini
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Dimensioni...
dim(Pm ) = m + 1
dim(PT
m ) = (r + 1)(numero di intervalli)
dim(Sm ) = ...
dim(m ) = 2m + 1
...
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Misura dellerrore
Norma di funzione:
kf k = max |f (x)|
x[a,b]
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
Dati: (xi , yi ), i =P
0, . . . , n (xi : nodi)
Target: pn (x) = nk=0 ak k (x)
Pn = span{0 (x), ...n (x)}
Esempio: Pn = span{1, x, x 2 , ..., x n }
Criterio di interpolazione: P
pn (xi ) = yi i = 0, ..., n nk=0 ak k (xi ) = yi
Posto:
G =
R(n+1)(n+1)
..
.
0 (xn ) 1 (xn ) . . . n (xn )
a = (a0 , ..., an )T Rn+1 ,
= Ga = y
G matrice di Grahm
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
Base di Lagrange
k (x) = `k (x) t.c.:
(
1 i =k
`k (xi ) = ik =
0 i=
6 k
yi = pn (xi ) =
n
X
ak `k (xi ) = ai `i (xi ) = ai
k=0
ai = yi !!!
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
i6=k (x xi )
`k (x) = Q
i6=k (xk xi )
Esempio
(x0 , y0 ) = (2, 3), (x1 , y1 ) = (1, 7), (x2 , y2 ) = (3, 5):
`0 (x) =
(x 1)(x 3)
,
(2 1)(2 3)
`2 (x) =
`1 (x) =
(x + 2)(x 3)
(1 + 2)(1 3)
(x + 2)(x 1)
(3 + 2)(3 1)
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
Base di Newton
`e un polinomio di grado n + 1
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
i = 0, ..., n
i = 0, ..., n
yn+1 pn (xn+1 )
n+1 (xn+1 )
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
Base di Newton:
0 (x) 1
1 (x) = x x0
2 (x) = (x x0 )(x x1 )
..
.
n1
n (x) = k=0
(x xk )
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
Differenze divise
Siano xi , i = 0, ..., n nodi distinti
Definizione (Differenza divisa di ordine 0 relativa al nodo xk )
f [xk ] := f (xk )
Definizione (Differenza divisa di ordine k relativa ai nodi
xi0 , xi1 , ..., xik )
f [xi0 , xi1 , ..., xik ] :=
Propriet`a
ak = f [x0 , x1 , ..., xk ]
Stefano Berrone Sandra Pieraccini
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
f [xk , xk+1 ]
72
1+2 = 3
5+7
31 = 1
7+5
43 = 2
1+3
3+2
21
41
4
5
= 1
1 45
4+2
3
= 10
4
3
p3 (x) = 2 3(x + 2) + (x + 2)(x 1) (x + 2)(x 1)(x 3)
5
10
Stefano Berrone Sandra Pieraccini
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
Esempio
E se aggiungiamo il nodo (x4 , y4 ) = (0, 2)?
xk
2
1
3
f [xk ]
2
7
5
p4 (x)
f [xk , xk+1 ]
72
1+2 = 3
5+7
31 = 1
7+5
43 = 2
2+7
9
04 = 4
1+3
4
3+2 = 5
21
41 = 1
94 +2
1
03 = 12
1 45
4+2
1
12 +1
01
3
= 10
= 13
12
3
13
12 + 10
0+2
47
= 120
47
4
4 (x) = 2 3(x + 2) + (x + 2)(x 1)
120
5
3
47
(x + 2)(x 1)(x 3)
(x + 2)(x 1)(x 3)(x 4)
10
120
= p3 (x)
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
4
3
2 3(x + 2) + (x + 2)(x 1) (x + 2)(x 1)(x 3)
5
10
47
4
3
2 + (x + 2) 3 + (x 1) (x 1)(x 3)
5
10
47
(x 1)(x 3)(x 4)
120
3
47
4
p4 (x) = 2+(x+2) 3 + (x 1)
(x 3)
(x 3)(x 4)
5 10
120
4
3
47
p4 (x) = 2+(x+2) 3 + (x 1)
+ (x 3)
(x 4)
5
10 120
p4 (x)
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
Propriet`a
Le differenze divise non dipendono dallordine dei nodi
f [xi0 , ..., xik ] = f [P(xi0 , ..., xik )]
dove P(xi0 , ..., xik ) `e una qualunque permutazione dei nodi.
Osservazione
Se i nodi sono distinti, i denominatori delle differenze divise sono
sempre diversi da zero
tavola ben definita
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
Interpolazione di Hermite
/////////
11AGI, 02NJG
/////////
Dati: (xi , f (xi )), i = 0, ..., n e (xi , f 0 (xi )), i = 0, ..., n La forma di
Newton `e particolarmente efficiente
xk f [xk ] f [xk , xk+1 ] f [xk , xk+1 , xk+2 ]
x0 f (x0 )
x0 f (x0 )
f 0 (x0 )
f [x0 ,x1 ]f 0 (x0 )
x1 f (x1 ) f [x0 , x1 ]
x1 x0
..
0
x1 f (x1 )
f (x1 )
.
..
.
Generalizzabile a pi`
u derivate e non su tutti i nodi le stesse derivate
Esercizio proposto
Esempi 5.1 e 5.2 libro di testo (Monegato)
Stefano Berrone Sandra Pieraccini
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
En (xi ) = 0
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
Teorema
Se f C [a, b]
||En || (1 + n ) min ||f q||
qPn
P
n = || ni=0 |`i (x)||| : costante di Lebesgue, dipende solo dai
nodi
minqPn ||f q|| : errore di migliore approssimazione, dipende
solo da f
Come si comportano 1 + n e minqPn ||f q|| ?
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
Teorema (Weierstrass)
Se f C [a, b] > 0 pn (x), n = n() t.c.
|f (x) pn (x)| <
x [a, b]
Purtroppo, n per n !
n
log
n con nodi
di Chebichev:
2i+1
xi = cos 2(n+1)
(1, 1), i = 0, ..., n
Stefano Berrone Sandra Pieraccini
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
1
,
1+x 2
x [a, b]
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
Teorema (^)
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Base di Lagrange
Base di Newton
Convergenza
Teorema (^)
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
se f `e regolare converge
uniformemente
Stefano Berrone Sandra Pieraccini
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
(k)
sd (xi ) = yi , i = 0, .., n
Stefano Berrone Sandra Pieraccini
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Gradi di libert`a
# parametri: (d + 1) n = dn + n
# condizioni: n + 1 + d (n 1) = n + 1 + dn d
n + 1:interpolazione + (n 1) d:raccordo nei nodi interni
u utilizzato (d = 3, spline cubiche)
Differenza: d 1 Nel caso pi`
mancano 2 condizioni
Le spline cubiche vengono dette...
1
vincolate: s30 (x0 ) = y00 , s30 (xn ) = yn0 , con y00 , yn0 dati
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
ks3 f (p) k
h
hi
p = 0, 1, 2
cost. per h 0 si ha
(
o(h3p )
=
O(h4p )
k=3
k=4
p = 0, 1, 2, 3
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Comandi MATLAB
a = polyfit(x,y,n)
yy = polyval(a,xx)
yy = spline(x,y,yy)
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Limiti dellinterpolazione:
interpolazione polinomiale globale non adatta per n grandi
interpolazione in generale non adatta per dati sperimentali
(molti dati + affetti da errore)
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
minm
cR
min
cRm
n
X
(fm (xi ) yi )2
i=1
n
m
X
X
i=1
NO
!2
ck k (xi ) yi
k=1
Definizione
fm (x) `e la migliore approssimazione nel senso dei minimi
quadrati
Stefano Berrone Sandra Pieraccini
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
A=
Rnm
..
.
1 (xn ) 2 (xn ) . . . m (xn )
y = (y1 , . . . , yn )T Rn ,
c = (c1 , . . . , cm )T Rm
2
n X
X
m
(x
)
minm
y
i
i
k
k
cR
cRm
i=1
|k=1 {z
}
Ac
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Esempio
(1, 2), (1, 3), (3, 5), (2, 7),
1 1
1 1
A=
1 3
1 2
f3 (x) = c1 + c2 x + c3 x 2
1
2
1
3
,
y =
9
5
4
7
4 5 15
AT A = 5 15 35 ,
15 35 99
7
AT y = 0
12
9
7 T
Soluzione sistema lineare AT Ac = AT y : c = ( 11
2 , 4, 4) .
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Approssimazione polinomiale:
P
P
P m1
1
x
.
.
.
i
i
i
P 2
Pi xi m
P xi
x
.
.
.
i
i i
i xi
AT A =
Rmm
..
.
P 2m2
P m1 P m
...
i xi
i xi
i xi
P
y
i
i
P yi xi
i
T
A y =
Rm
..
.
P
m1
i yi xi
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Propriet`a
Matrici ortogonali (Q T Q = QQ T = I ) non cambiano norma
euclidea di vettore:
kQxk22 = (Qx)T Qx = x T Q T Qx = x T x = kxk22
Sia A = QR Rnm
R = Q T A Rnm , Q Rnn
R1
mm
z1
m
T
R=
Q y=
0
z2
(n m) m
nm
kAc y k22 = kQ T (Ac y )k22 = kQ T Ac Q T y k22 =
= kRc Q T y k22 = kRc z1 k22 + kz2 k22
min kAcy k22 min kRcz1 k22 +kz2 k22 min kRcz1 k22 Rc = z1
Stefano Berrone Sandra Pieraccini
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Comandi MATLAB
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Un esempio nonlineare
Modello: a1 ea2 x
P
NON `e nella forma
ck k (x)! Ma con una trasformazione di
variabili...
y = a1 ea2 x
log(y ) = log(a1 ea2 x ) = log(a1 ) + a2 x
| {z }
| {z } |{z}
z
c1
c2
z = c1 + c2 x
Quindi con i dati (xi , log(yi )) posso ricostruire c1 e c2 e quindi
risalire a a1 = ec1 e a2 = c2
Stefano Berrone Sandra Pieraccini
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Sia x = x0 h
1
f (x0 h) = f (x0 ) f 0 (x0 )h + f 00 ( )h2
2
f (x0 ) f (x0 h) 1 00
+ f ( )h
h
2
(approssimazione con differenze allindietro)
f 0 (x0 ) =
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
1 000
f (+ )h3
6
1 000
f ( )h3
6
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
Scelta h
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
1
1
1
f (x0 +h) = f (x0 )+f 0 (x0 )h+ f 00 (x0 )h2 + f 000 (x0 )h3 + f (4) (+ )h4
2
6
24
1
1
1
f (x0 h) = f (x0 )f 0 (x0 )h+ f 00 (x0 )h2 f 000 (x0 )h3 + f (4) ( )h4
2
6
24
Sommo:
f 00 (x0 ) =
Generalit`
a
Interpolazione polinomiale
Interpolazione polinomiale a tratti
Metodo dei minimi quadrati
Derivazione numerica
(p)
a f (p) ...