Sei sulla pagina 1di 112

P1

APPUNTI PER IL CORSO DI

ANALISI NUMERICA

PROF. R. MORANDI

Anno accademico 2012–2013

1
A1

APPROSSIMAZIONE
QUESTO PROBLEMA SI PONE QUANDO CONOSCIAMO
UNA GRANDEZZA SOLO ATTRAVERSO UN IN-
SIEME DISCRETO DEI SUOI VALORI
LA COSTRUZIONE DI UNA FUNZIONE A PARTIRE DA
UNA TABELLA DI DATI VIENE AFFRONTATA SECONDA
DUE APPROCCI
• DATI AFFETTI DA UN SENSIBILE ERRORE
I DATI VENGONO APPROSSIMATI “NEL LORO INSIEME”
⇒ MIGLIORE APPROSSIMAZIONE
• DATI ESATTI
SI CERCA UNA FUNZIONE CHE PASSA PER I PUNTI
⇒ INTERPOLAZIONE

2
A2

CLASSI DI FUNZIONI PIÙ USATE PER


APPROSSIMARE ED INTERPOLARE

• POLINOMI
• FUNZIONI RAZIONALI
• FUNZIONI TRIGONOMETRICHE
• FUNZIONI POLINOMIALI A TRATTI
(FUNZIONI SPLINES)

3
A3

MIGLIORE APPROSSIMAZIONE
DATI (xi, fi), i = 1, . . . , n AFFETTI DA ERRORE
SI CERCA UNA FUNZIONE APPROSSIMANTE
CHE “SI ADATTI” ALL’ANDAMENTO DEI DATI

ABBIAMO BISOGNO DI UN CRITERIO CHE PERMETTA
DI QUANTIFICARE LA “BONTÀ” DELL’APPROSSIMAZIONE:

SE SI APPROSSIMANO I DATI CON UNA RETTA

APPROSSIMAZIONE LINEARE

SE SI APPROSSIMANO I DATI CON UN POLINOMIO DI


GRADO m > 1

APPROSSIMAZIONE POLINOMIALE DI GRADO m > 1

4
A4

CRITERI DI VALUTAZIONE DELLA MIGLIORE


APPROSSIMAZIONE
SI LAVORA SUL VETTORE ERRORE
Ei = fi − (a0 + a1xi) i = 1, . . . , n
(nel caso della retta)
OPPURE
Ei = fi − (a0 + a1xi + a2x2i + · · · + amxm
i ) i = 1, . . . , n

(nel caso di un polinomio di grado m)

Per determinare la retta o il polinomio che “meglio approssima” i


dati si determina la retta o il polinomio che minimizza la distanza
dell’approssimante dai dati (esistono varie “distanze” in Rn)
10 CRITERIO (errore in norma 1)

n ∑n
min |Ei| min |Ei| (∥E∥1)
a0 ,a1 a0 ,a1 ,...,am
i=1 i=1

20 CRITERIO (errore in norma infinito)


min max |Ei| min max |Ei| (∥E∥∞)
a0 ,a1 a0 ,a1 ,...,am

30 CRITERIO (errore in norma 2)



n ∑
n
min |Ei|2
min |Ei|2 (∥E∥22)
a0 ,a1 a0 ,a1 ,...,am
i=1 i=1
Il polinomio di migliore approssimazione ai
minimi quadrati è quel polinomio che minimizza l’er-
rore in norma 2.

5
A5

RETTA DI MIGLIORE APPROSSIMAZIONE AI


MINIMI QUADRATI
SI TRATTA DI MINIMIZZARE
∑n
min (fi − a0 − a1xi)2 = min S(a0, a1)
a0 ,a1 a0 ,a1
i=1
DERIVANDO RISPETTO A a0 E RISPETTO A a1


 ∂S ∑n

 ∂a0 = −2
 (fi − a0 − a1xi)
i=1
 ∑n


∂S
 ∂a1 = −2
 (fi − a0 − a1xi)xi
i=1
UGUAGLIANDO
 n A ZERO

 ∑ ∑
n ∑
n

 fi − a0 − a1 x i = 0

i=1 i=1 i=1
 ∑n ∑
n ∑
n

 fixi − a0 x i − a1x2i = 0


i=1 i=1 i=1
OVVERO
 n

 ∑ ∑
n ∑
n

 a0 + a1 xi = fi

i=1 i=1 i=1
∑n ∑n ∑
n Equazioni normali



 x2i =
 a0 x i + a1 fixi
i=1 i=1 i=1


 ∑
n ∑
n

 na0 + a1 xi = fi

i=1 i=1
 ∑
n ∑
n ∑
n

 x2i =

 a0 x i + a1 fixi
i=1 i=1 i=1

6
A6

POLINOMIO DI MIGLIORE
APPROSSIMAZIONE DI GRADO m > 1
∑n
min (fi − a0 − a1xi − a2x2i − · · · − amxm
i )
2
a0 ,a1 ,...,am
i=1
min S(a0, a1, . . . , am)
a0 ,a1 ,...,am

ANALOGAMENTE AL CASO DELLA RETTA


∂S ∑n
= 0; −2 (fi − a0 − a1xi − · · · − amxm
i )= 0
∂a0 i=1
∂S ∑n
= 0; −2 (fi − a0 − a1xi − · · · − amxm
i ) · xi = 0
∂a1 i=1
...
∂S ∑n
= 0; −2 (fi − a0 − a1xi − · · · − amxm
i ) · xi = 0
m
∂am i=1

⇒ OTTENIAMO IL SISTEMA LINEARE


 ∑ ∑ 2 ∑ m ∑

 na + a x + a x + · · · + a x = fi

 ∑
0 1
∑i 2
∑i m
∑i ∑
a0 xi + a1 x2i + a2 x3i + · · · + am xm+1 i = fixi
 ...

 a ∑ xm + a ∑ xm+1 + a ∑ xm+2 + · · · + a ∑ x2m = ∑ f xm

0 i 1 i 2 i m i i i

PROBLEMA DELLE EQUAZIONI NORMALI: MAL


CONDIZIONAMENTO DELLA MATRICE DEI COEFFICI-
ENTI

7
A7

NUOVA FORMULAZIONE DEL PROBLEMA DI


APPROSSIMAZIONE AI MINIMI QUADRATI
CONSIDERIAMO FUNZIONI POLINOMIALI DI GRADO m
E n DATI
IL PROBLEMA È DETERMINARE
[ ]

n
min S(a0, a1, . . . , am) = (yi − a0 − a1xi − · · · − amxm
i )
2
a0 ,a1 ,...,am
i=1

→ min ∥E∥22
a0 ,a1 ,...,am

SIA A LA MATRICE DI ORDINE n × (m + 1), SI SUPPONE


n>m+1
 
1 x1 x1 · · · x1
2 m
1 x x22 · · · xm 
 2 2 
 ... 
A =  ... ... ...

 m 
 1 xn−1 xn−1 · · · xn−1 
2

1 xn x2n · · · xm n

SIA z IL VETTORE DI (m + 1) COMPONENTI


 
a0
 a 
 1 
 
z =  ... 
 
 am−1 
am
 
y1
 .. 
 . 
E b IL VETTORE DI n COMPONENTI b =  
 yn−1 
yn

8
A8

FISSATO L’INDICE i ABBIAMO



m
Ei = bi − (A)ij zj ⇒
j=0

((A)ij : elemento ij di A)
IL PROBLEMA LINEARE DEI MINIMI QUADRATI
PUÒ ASSUMERE LA FORMA SEGUENTE:
DETERMINARE z ∈ IR(n+1) TALE CHE
∥b − Az∥22 = minimo

N.B.
LE EQUAZIONI NORMALI POSSONO ESSERE
OTTENUTE CONSIDERANDO
AT Az = AT b

9
A9

POSSIBILI METODI PER RISOLVERE IL PROB-


LEMA DEI MINIMI QUADRATI
METODO 1
L’APPROCCIO PIÙ OVVIO CONSISTE NEL RISOLVERE
(AT A)z = AT b
MA
T
LA MATRICE (A A) PUÒ RISULTARE MAL CONDIZION-
ATA ANCHE SE NON LO È LA MATRICE A
PERCHÈ:SI PUÒ DIMOSTRARE CHE L’INDICE DI CON-
DIZIONAMENTO DI (AT A) È IL QUADRATO DELL’INDICE
DI CONDIZIONAMENTO DI A)

METODO 2
NON SI RICORRE ALL’EQUAZIONI NORMALI, MA SI LA-
VORA SU A CON FATTORIZZAZIONE QR

10
A10

METODI NUMERICI PER LA RISOLUZIONE DI


SISTEMI LINEARI
Ax = b .

METODI DIRETTI(METODO DI GAUSS) :COSTRU-


ISCONO LA SOLUZIONE ESATTA IN ASSENZA DI ERRORI
DI ARROTONDAMENTO, IN UN NUMERO FINITO DI PAS-
SI
UTILIZZO: MATRICI “DENSE” E DI ORDINE NON ELE-
VATO
GAUSS FORNISCE LA FATTORIZZAZIONE A = LU
CON L TRIANGOLARE INFERIORE, lii = 1 ∀ i E U TRI-
ANGOLARE SUPERIORE
GAUSS IN PRECISIONE FINITA: IL METODO DI
GAUSS È INSTABILE (STRATEGIA DEL MASSIMO PIVOT)

METODI ITERATIVI(METODO DI JACOBI E GAUSS


SEIDEL: COSTRUISCONO UNA SUCCESSIONE DI VET-
TORI, CONVERGENTE SOTTO OPPORTUNE CONDIZIONI
ALLA SOLUZIONE
UTILIZZO: MATRICI “SPARSE”(IL NUMERO DEGLI EL-
EMENTI DIVERSI DA ZERO È PROPORZIONALE A n) E
DI ORDINE ELEVATO
NECESSITANO DI CRITERI DI ARRESTO PER
OTTENERE UN’ APPROSSIMAZIONE DELLA SOLUZIONE

11
A11

METODI DIRETTI: FATTORIZZAZIONE QR DEL-


LA MATRICE A:
A = QR
DOVE
Q È UNA MATRICE ORTOGONALE (Q−1 = QT )
R È UNA MATRICE TRIANGOLARE SUPERIORE

⇒ { {
Qy = f y = QT f
Ax = f ⇐⇒ QRx = f
Rx = y Rx = y

-METODO STABILE
SIA x UN VETTORE CONTENENTE ERRORI E CALCOL-
IAMO LA SUA LUNGHEZZA, OVVERO ∥x∥2
SIA P UNA MATRICE ORTOGONALE CON CUI LAVO-
RIAMO SUL VETTORE x
SE ANDIAMO A VEDERE L’ EFFETTO DI P su x OTTE-
NIAMO
√ √
∥P x∥2 = x P P x = xT x = ∥x∥2
T T

OVVERO LA LUNGHEZZA DI x È INVARIATA OVVERO


GLI ERRORI RIMANGONO INALTERATI

12
A12

FATTORIZZAZIONE QR DI UNA MATRICE


CI CHIEDIAMO SE,DATA UNA MATRICE A ∈ IRn×n
È POSSIBILE TROVARE DELLE MATRICI PER RIDURRE
A ALLA FORMA TRIANGOLARE SUPERIORE ED OTTENERE
UNA FATTORIZZAZIONE DI A

A = QR Q ORTOGONALE
R TRIANGOLARE SUPERIORE
(RICORDA LE MATRICI DEI MOLTIPLICATORI PER LA
FATTORIZZAZZIONE LU DI GAUSS
SE FOSSE POSSIBILE COSTRUIRE n−1 MATRICI ORTOG-
ONALI TALI CHE
Pn−1 . . . P2 P1 A = R, R TRIANGOLARE SUPERIORE

POTREMMO DEFINIRE
Q = (Pn−1 · · · P2 P1)T = P1P2 · · · Pn−1
CHE RISULTEREBBE ORTOGONALE (PRODOTTO DI MA-
TRICI ORTOGONALI)
⇒ QT A = R OVVERO A = QR

13
A13

SUPPONIAMO CHE, DATO UN VETTORE x = (x1, x2, . . . , xn)T


SIA POSSIBILE DETERMINARE UNA MATRICE Pk TALE
CHE
Pk x = (x1, . . . , xk−1, x̄k , 0, . . . , 0)T
DOVE [ ]
Ik−1 0
Pk =
0 Pen−k+1,n−k+1
LA MATRICE P1 SARÀ COSTRUITA PER LAVORARE SUL-
LA PRIMA COLONNA DELLA MATRICE A ANNULLANDO
TUTTI GLI ELEMENTI SOTTO DIAGONALI DELLA PRI-
MA COLONNA

LA MATRICE P2 SARÀ COSTRUITA PER LAVORARE SUL-


LA SECONDA COLONNA DELLA MATRICE A ANNUL-
LANDO TUTTI GLI ELEMENTI SOTTO DIAGONALI DEL-
LA SECONDA COLONNA
...
“L’INTERVENTO” DI P2 PUÒ ALTERARE I RISULTATI OT-
TENUTI CON P1?
LA STRUTTURA DELLA MATRICE PERMETTE DI RISPON-
DERE No

14
A14

ESEMPIO  
x x x x
 
x x x x
n=4 A= 
x x x x
x x x x
k = 1, P1 = Pe4,4
 
x x x x
  
0 x x x
A1 = P 1 A =   
0 x x x
0 x x x
k = 2, P2
   
1 0 0 0 x x x x
   
0  0 x x x
P2 =   ; A2 = P2A1 =  
 0 Pe3,3  0 0 x x
0 0 0 x x
k = 3, P3
   
1 0 0 0 x x x x
   
0 1 0 0  0 x x x
P3 =   ; P3A2 =  
0 0 Pe2,2  0 0 x x
0 0 0 0 0 x
ESSENZIALE
P2 MODIFICA GLI ZERI INTRODOTTI DA P1? No
P3 MODIFICA GLI ZERI INTRODOTTI DA P1 E DA P2? No

15
A15

DOMANDA: POSSIAMO FATTORIZZARE QR LA MATRICE


A (A È n × (m + 1), n > m + 1 ⇒ RETTANGOLARE )?
DOMANDA: POSSIAMO TROVARE UNA Q ORTOGONALE
TALE CHE
( )
R
QT A = , R ∈ IR(m+1)×(m+1)
0
TRIANGOLARE SUPERIORE?
   
x x x x x x
⃝    QT PUÒ ESSERE IL
x x x T 0 x x
 Q   PRODOTTO DI
A = ⃝ x x →0 0 x
x ⃝
    MATRICI ORTOG-
⃝x ⃝
x ⃝x  0 0 0

x ⃝
x ⃝x 0 0 0 ONALI

SCOMPONIAMO IL VETTORE b
[ ]
b1 CON b1 DI DIMENSIONE (m + 1)
b=
b2 E b2 DI DIMENSIONE n − (m + 1)
e E eb I TRASFORMATI DI A E b
INDICHIAMO CON A
MEDIANTE QT [ ]
eb1
e T e T e
A = Q A ; b = Q b, b = e
b2

16
A16

∥b − Az∥2 = minimo

∥b − Az∥2 = ∥Q T
(b − Az)∥ = ∥eb − Az∥
e 2
2
e
b1 − Rz
= e
b2
2
DETERMINARE z IN MODO DA MINIMIZZARE
∥b − Az∥2 EQUIVALE A DETERMINARE z TALE
CHE
Rz = eb1
IN QUESTO CASO IL SUO VALORE MINIMO È ∥eb2∥2
IL PROBLEMA DEI MINIMI QUADRATI È RI-
CONDOTTO ALLA RISOLUZIONE DI UN SIS-
TEMA TRIANGOLARE SUPERIORE

17
A17

MATRICI DI TRASFORMAZIONE DI
HOUSEHOLDER
SIA v ∈ IRq , v ̸= 0
T
2vv
Pe = I − T , I ∈ IRq×q
v v
PROPRIETÀ DI Pe
(2vv T )T
SIMMETRIA : P = I − T T = PeeT
(v v)( )( )
T T
2vv 2vv
ORTOGONALITÀ : PePeT = PePe = I − T I− T =
v v v v
2vv T 2vv T 4vv T vv T
=I− T − T + T T =
v v v v v vv v
T T
4vv 4vv
=I− T + T =I
v v v v
[ ]
I 0
P = n−q
HA LE STESSE PROPRIETÀ DI Pe
0 Pe q
n−q

18
A18

DATO x ∈ IRq SI VUOLE TROVARE v ∈ IRq ;


Pex = ke1, k ∈ IR
PONIAMO

v =x+
( αe1 )
T
e 2vv 2vv T x
Px = I − T x = x − T = αe1
v v v v
v T v = (x + αe1)T (x + αe1) = xT x + 2αx1 + α2
v T x = (x + αe1)T x = xT x + αx1

e 2vv T x 2v T x 2v T x
P x = x − T = x − T v = x − T (x + αe1)
v v v v v v
T T
2v x 2v x
= x − T x − T αe1
( T v v T )v v
v v − 2v x 2v T x
= x − T αe1
vT v v v
v T v − 2v T x = xT x + 2αx1 + α2 − 2xT x − 2αx1 = 0
SE α2 = xT x ⇒ α = ±∥x∥2

19
A19

e 2v T x xT x + αx1
P x = − T αe1 = −2α T e1
v v x x + 2αx1 + α2
α2 + αx1 α2 + αx1
= −2α 2 e1 = −2α e1 =
α + 2αx1 + α2 2(α2 + αx1)
= −αe1

v = x ± ∥x∥2e1
e 2vv T
P = I− T ⇒ Pex = ±∥x∥2e1
v v
SIA x ∈ IR ⇒n
 
x1
[ ]  ... 
 
I 0  
P = ; x =  x 
0 Pe
n−q
 .. 
 . 
xn
 
x1
 ... 
 
x 
 n−q  √
 
P x =  −α  α = ± x2n−q+1 + · · · + x2n
 
 0 
 . 
 .. 
0
N.B
PER EVITARE ERRORI DI CANCELLAZIONE IN
v = x ± ∥x∥2e1
SI PRENDE α = sgn(x1)∥x∥2
20
A20

ESEMPIO
SIA x = [4, 7, 4]T
COSTRUIAMO
 
y1
2vv T
P = I − T TALE CHE P x = y = y1e1 =  0 
v v
0
SCEGLIAMO v = x ± αe1
v = x ± ∥x∥2e1
v1 = x1 ± ∥x∥2
v2 = x2
v3 = x3
√ √
∥x∥2 = 16 + 49 + 16 = 81 = 9
v1 = 4 ± 9 ; v1 = 13
⇒ v2 = 7 ; v2 = 7 ∥v∥22 = v T v = 132 +72 +42 = 234
v3 = 4 ; v3 = 4
   
1 0 0 13 [13 7 4]
2vv T  2
P = I − T = 0 1 0 −  7  =
v v 234
0 0 1 4
   
1 0 0 13 13 · 7 13 · 4
2
1
=  0 1 0 −  7 · 13 72 7 · 4  =
117
0 0 1 4 · 13 4 · 7 42

21
A21

   
1 0 0 169 91 52
1
P = 0 1 0−  91 49 28 
117
0 0 1 52 28 16
 
−52 −91 −52
1 
P = −91 68 −28 
117
−52 −28 101
  
−52 −91 −52 4
1 
Px = −91 68 −28   7  =
117
−52 −28 101 4
   
−1059 −9
1 
= 0 = 0 
117
0 0

n = 3; q = n = 3
√ √
α = ± x21 + x22 + x23 = ± 81 = ±9
x1 = 4 ⇒ α = +9 CANCELLAZIONE
   
−α −9
Px =  0  =  0 
0 0

22
A22

SUPPONIAMO ORA
n = 3, q = 2
x = [4, 7, 4], P x → [4, ?, 0]

COSTRUIAMO
 
[ ] 1 0 0
I 0 n−q
P = e q
⇒ P =0 
0 P
0 P̄2×2
n−q q

√ √ √
α = ± x2 + x3 = ± 49 + 16 = ± 65 = 8.0622577
2 2

⇒ α = +8.0622577
   
x1 4
P x =  −α  =  −8.0622577 
0 0

COSTRUIAMO Pe
T T
2vv 2vv
Pe = I − T = I −
v v ∥v∥22

v = [v1, v2]T v1 = x2 + 65 = 7 + 8.0622577
v2 = x3 =4
v = [15.0622577, 4]

23
A23

∥v∥22 = 242.87159
2
= 121.435795
∥v∥22
[ ] [ ]
1 0 1 15.0622577 [15.0622577 4]
Pe = − =
0 1 121.435795 4
[ ] [ ]
1 0 1 226.87159 60.249028
= − =
0 1 121.435795 60.249028 16
[ ]
1 −105.43802 −60.249028
=
121.435795 −60.249028 105.43579
 
1 0 0
P =  0 −0.8682614 −0.4961389 
0 −0.4961389 0.8682431
    
4 4
Px =  P   7  =  −8.0622496 
4 ≃ 1.10−7

24
A1

INTERPOLAZIONE

DATI I PUNTI (xi, fi), i = 0, . . . , n VOGLIAMO RI-


COSTRUIRE LA FUNZIONE f (x) TALE PER CUI
f (xi) = fi
PER QUESTO È NECESSARIO
- STABILIRE LA CLASSE DI FUNZIONI IN CUI LAVO-
RARE
SIA

n
g(x) = fiφi(x)
i=0
CON φi(x) BASI DELLA CLASSE SCELTA
CLASSI DI FUNZIONI PIÙ USATE PER INTER-
POLARE MEDIANTE g(x)
• POLINOMI
• FUNZIONI RAZIONALI
• FUNZIONI TRIGONOMETRICHE
• FUNZIONI POLINOMIALI A TRATTI
(FUNZIONI SPLINES)
QUALUNQUE SIA g(x) IL PROBLEMA DELL’ INTERPO-
LAZIONE SI RICONDUCE ALLA RISOLUZIONE DEL SIS-
TEMA LINEARE DERIVANTE DA
∑n
αiφi(xi) = fi, i = 0, · · · , n
i=0
N.B.
LE INCOGNITE SONO COEFFICIENTI αi
25
A2

INTERPOLAZIONE POLINOMIALE
SE SCEGLIAMO I POLINOMI ABBIAMO L’ INTERPOLAZIONE
POLINOMIALE, CIOÈ
DATI I PUNTI (xi, fi), i = 1, . . . , n NON AFFET-
TI DA ERRORE SI CERCA UN POLINOMIO DI
GRADO MASSIMO n


n
Pn(x) = αj x j
j=0
TALE CHE

n
Pn(xi) = αj xji = fi, i = 0, . . . , n
j=0

⇒ SI OTTIENE UN SISTEMA LINEARE




 α0 + α1x0 + α2x20 + · · · + αnxn0 = f0


α0 + α1x1 + α2x21 + · · · + αnxn1 = f1
 ...


 α + α x + α x2 + · · · + α xn = f
0 1 n 2 n n n n

IL PROBLEMA CONSISTE QUINDI NEL RISOLVERE UN


SISTEMA LINEARE NELLE INCOGNITE α0, α1, . . . , αn CHE
AMMETTE UN’ UNICA SOLUZIONE SOLO SE xi, i = 0, . . . , n
SONO PUNTI DISTINTI
LA MATRICE DEI COEFFICIENTI PUÒ ESSERE MAL-
CONDIZIONATA

26
A3

INTERPOLAZIONE POLINOMIALE
ASSEGNATI I CINQUE PUNTI
(x0, f0) = (1, 2) (x1, f1) = (2, 3) (x2, f2) = (3, 4)

(x3, f3) = (4, 5) (x4, f4) = (5, 6),


SI VUOLE DETERMINARE IL POLINOMIO P4(x) CHE LI
INTERPOLA
IMPONENDO LE CONDIZIONI DI INTERPOLAZIONE, OT-
TENIAMO IL SEGUENTE SISTEMA LINEARE DI 5 EQUAZIONI
IN 5 INCOGNITE


 a0 + a1 + a2 + a3 + a4 = 2



 a0 + 2a1 + 4a2 + 8a3 + 16a4 = 3
a0 + 3a1 + 9a2 + 27a3 + 81a4 = 4



 a0 + 4a1 + 16a2 + 64a3 + 256a4 = 5

 a + 5a + 25a + 125a + 625a = 6
0 1 2 3 4

LA CUI SOLUZIONE È
a0 = 1, a1 = 1, a2 = 0, a3 = 0, a4 = 0.
• IL DETERMINANTE DELLA MATRICE DEI COEFFICI-
ENTI È 288 ⇒
• LA SOLUZIONE DEL SISTEMA ESISTE ED È UNICA
ED È [1 1 0 0 0]t ⇒
• IL POLINOMIO INTERPOLANTE È P1(x) = x + 1
• IL VALORE DEL CONDIZIONAMENTO DI A È DELL’
ORDINE DI 104

27
A4

FORMULAZIONE DI LAGRANGE DEL


POLINOMIO INTERPOLANTE
ASSEGNATI (xi, fi), i = 0, . . . , n SI DEFINISCONO LE BASI
DI LAGRANGE l0(x), l1(x), . . . , ln(x) TALI CHE

lj (x) È UN POLINOMIO DI GRADO n E


{
1 i=j
lj (xi) =
0 ALTRIMENTI

n
Pn(x) = lj (x)fj
j=0

È IL POLINOMIO DI GRADO n INTERPOLANTE


I DATI.
Infatti

n
Pn(xi) = lj (xi)fj = l0(xi)f0 + l1(xi)f1 + · · · +
j=0
+ li(xi)fi + · · · + ln(xi)fn ⇒
Pn(xi) = fi
BASI DI LAGRANGE lj (x)

(x − x0)(x − x1) · · · (x − xj−1)(x − xj+1) · · · (x − xn)


lj (x) =
(xj − x0)(xj − x1) · · · (xj − xj−1)(xj − xj+1) · · · (xj − xn)

CIOÈ
∏n
i̸=j (x − xi )
lj (x) = ∏n
i=1,

i=1, i̸=j (xj − xi )

28
A5

FORMULAZIONE DI NEWTON DEL


POLINOMIO INTERPOLANTE
È UNA FORMULAZIONE BASATA SU UNA NUO-
VA BASE
ESEMPIO ASSEGNATI (x0, f0) (x1, f1) (x2, f2)

BASEP (1, x, x2)


BASEL (l0(x), l1(x), l2(x))
BASEN {1, (x − x0), (x − x0)(x − x1)}
P2(x) = A0 + A1(x − x0) + A2(x − x0)(x − x1)
IMPONIAMO L’INTERPOLAZIONE

x = x0  A0 = f0
x = x1 A + A1(x1 − x0) = f1
 0
x = x2 A0 + A1(x2 − x0) + A2(x2 − x0)(x2 − x1) = f2
A0 = f0
f1 − A0 f1 − f0
A1 = =
x1 − x0 x1 − x0
[ ]
1 f2 − f1 f1 − f0
A2 = −
x2 − x0 x2 − x1 x1 − x0

29
A6

FORMULAZIONE DI NEWTON DEL


POLINOMIO INTERPOLANTE
ASSEGNATI (xi, fi), i = 0, . . . , n

P2(x) = A0 + A1(x − x0) + A2(x − x0)(x − x1)


P2(x) = f [x0] + (x − x0)f [x0, x1] + (x − x0)(x − x1)f [x0, x1, x2]
P3(x) = f [x0] + (x − x0)f [x0, x1] + (x − x0)(x − x1)f [x0, x1, x2]+
+ (x − x0)(x − x1)(x − x2)f [x0, x1, x2, x3]
P3(x) = P2(x) + (x − x0)(x − x1)(x − x2)f [x0, x1, x2, x3]
... = ···
... = ···
Pn(x) = f [x0] + (x − x0)f [x0, x1] + (x − x0)(x − x1)f [x0, x1, x2]
+ · · · + (x − x0)(x − x1) · · · (x − xn−1)f [x0, x1, x2, . . . , xn]

n
⇒ Pn(x) = Aj ωj (x)
j=0

Aj DD DI ORDINE j
ωj (x) = (x − x0)(x − x1) · · · (x − xj−1) j > 0
def
ω0(x) = 1

IN GENERALE
Pn+1(x) = Pn(x)+(x−x0)(x−x1) · · · (x−xn)f [x0, x1, . . . , xn, xn+1]

30
A7

CONDIZIONAMENTO DEL PROBLEMA DI


INTERPOLAZIONE POLINOMIALE
AL DI LÀ DEGLI SVANTAGGI CHE ESSA PRESENTA DAL
PUNTO DI VISTA PRATICO, LA FORMULAZIONE DI LA-
GRANGE È IMPORTANTE DAL PUNTO DI VISTA TEORI-
CO
SI PRESTA BENE PER STUDIARE IL CONDIZIONAMEN-
TO DEL PROBLEMA DELL’INTERPOLAZIONE POLINO-
MIALE
SUPPONIAMO DI PERTURBARE LE ORDINATE DEI PUN-
TI DI INTERPOLAZIONE, PASSANDO DAI VALORI

fi
AI VALORI PERTURBATI
f˜i = fi(1 + ϵi), i = 0, 1, . . . , n

CI CHIEDIAMO: QUESTA PERTURBAZIONE COME SI


RIPERCUOTE SUI VALORI CHE IL POLINOMIO INTER-
POLANTE ASSUME PER VALORI DI x VICINI AI PUNTI
FONDAMENTALI x0, x1, . . . , xn?
SIA L̃n(x) IL POLINOMIO CORRISPONDENTE AL NUOVO
INSIEME DI DATI
SIA [a, b] UN INTERVALLO CONTENENTE I PUNTI FON-
DAMENTALI

[a, b] = [ min xi, max xi] (1)


0≤i≤n 0≤i≤n

31
A8

CONDIZIONAMENTO DEL PROBLEMA DI


INTERPOLAZIONE POLINOMIALE
VOGLIAMO STIMARE LA PERTURBAZIONE RELATIVA
maxx∈[a,b] |L̃n(x) − Ln(x)|
maxx∈[a,b] |Ln(x)|
DA

n ∑
n
Ln(x) = fj lj (x) e L̃n(x) = f˜j lj (x),
j=0 j=0
SOTTRAENDO TERMINE A TERMINE SI OTTIENE
∑ ∑
|L̃n(x) − Ln(x)| = | nj=0(fj − f˜j )lj (x)| = | nj=0 fj ϵj lj (x)|
∑n
≤ ϵmax max0≤j≤n |fj| j=0 |lj (x)|,
PONENDO ϵmax = max0≤j≤n |ϵj |
DA
max |fj | = max |Ln(xj )| ≤ max |Ln(x)|,
0≤j≤n 0≤j≤n x∈[a,b]
OTTENIAMO

|L̃n(x) − Ln(x)| ≤ ϵmax maxx∈[a,b] |Ln(x)| nj=0 |lj (x)|
∑n
≤ ϵmax maxx∈[a,b] |Ln(x)| maxx∈[a,b] j=0 |lj (x)|,
E QUINDI
maxx∈[a,b] |L̃n(x) − Ln(x)|
≤ Λnϵmax, (2)
maxx∈[a,b] |Ln(x)|
DOVE

n
Λn = max |lj(x)|
x∈[a,b]
j=0

È DETTA COSTANTE DI LEBESGUE


32
A9

CONDIZIONAMENTO DEL PROBLEMA DI


INTERPOLAZIONE POLINOMIALE
POSSIAMO DIRE CHE Λn FUNZIONA DA NUMERO DI
CONDIZIONAMENTO DEL PROBLEMA E CIOÈ

SE Λn È GRANDE, IL PROBLEMA È MAL CONDIZION-


ATO, ALTRIMENTI È BEN CONDIZIONATO

N.B.
Λn DIPENDE DA n E DAI PUNTI FONDAMEN-
TALI x0, x1, . . . , xn
=⇒
ALCUNE SCELTE DI QUESTE ASCISSE POSSONO PORTARE
AD UN PROBLEMA DI INTERPOLAZIONE BEN CONDIZION-
ATO ED ALTRE AD UN CATTIVO CONDIZIONAMENTO

SI PUÒ DIMOSTRARE AD ESEMPIO CHE LA SCELTA PIÙ


COMUNE, QUELLA DI ASCISSE EQUIDISTANTI, NON
È BUONA PER n GRANDE, PERCHÉ PORTA A
n
Λn ≥ e 2
QUINDI, QUANDO POSSIBILE CONVIENE FARE SCELTE
DIVERSE

33
A10

CONDIZIONAMENTO DEL PROBLEMA DI


INTERPOLAZIONE POLINOMIALE
UNA BUONA SCELTA, RELATIVAMENTE ALL’INTERVAL-
LO [-1,1] È
( )
2i + 1
xi = cos π i = 0, 1, . . . , n (3)
2n + 2
CHE PER n GRANDE PORTA A
2
Λn ≃ log(n)
π

QUESTO È IL PIÙ PICCOLO VALORE CHE SI PUÒ OT-


TENERE

I PUNTI SONO DETTI PUNTI DI CHEBYSHEV PERCHÉ


SONO GLI ZERI DI UN PARTICOLARE POLINOMIO DI
GRADO n + 1, DETTO POLINOMIO DI CHEBYSHEV

N.B. È POSSIBILE ESTENDERE LA DEFINIZIONE DEI POLI-


NOMI DI CHEBYSHEV A UN INTERVALLO QUALUNQUE
[a, b] ̸= [−1, 1] MEDIANTE UN OPPORTUNO CAMBIAMEN-
TO DI VARIABILE OTTENENDO
( )
b−a 2i + 1 a+b
xi = cos π + , i = 0, . . . n. (4)
2 2n + 2 2

34
A11

CONDIZIONAMENTO DEL PROBLEMA DI


INTERPOLAZIONE POLINOMIALE
CONSIDERIAMO LA FUNZIONE
1
f (x) = , x ∈ [−1, 1],
1 + 25x2
2 2

1.5 1.5

1 1

0.5 0.5

0 0

−0.5 −0.5
−1 −0.5 0 0.5 1 −1 −0.5 0 0.5 1

2 2

1.5
1.5
1

0.5 1

0 0.5
−0.5
0
−1

−1.5 −0.5
−1 −0.5 0 0.5 1 −1 −0.5 0 0.5 1

Figura 1: INTERPOLAZIONE SU PUNTI FONDAMENTALI EQUIDISTANTI

PER QUESTA FUNZIONE I PUNTI FONDAMENTALI


EQUIDISTANTI NON SONO UNA BUONA SCELTA:
AL CRESCERE DI n, IL POLINOMIO INTERPOLANTE AP-
PROSSIMA SEMPRE MEGLIO LA FUNZIONE NELLA ZONA
CENTRALE DELL’INTERVALLO, MA SEMPRE PEGGIO VER-
SO GLI ESTREMI
POICHÉ ABBIAMO LA FUNZIONE IN FORMA
ANALITICA, POSSIAMO PROVARE A CAMBIARE DIS-
TRIBUZIONE DEI PUNTI FONDAMENTALI E SCEGLIAMO
I PUNTI DI CHEBYSHEV
35
A11

2 2

1.5 1.5

1 1

0.5 0.5

0 0

−0.5 −0.5
−1 −0.5 0 0.5 1 −1 −0.5 0 0.5 1

2 2

1.5 1.5

1 1

0.5 0.5

0 0

−0.5 −0.5
−1 −0.5 0 0.5 1 −1 −0.5 0 0.5 1

Figura 2: INTERPOLAZIONE SU PUNTI FONDAMENTALI DI CHEBYSHEV

I PUNTI DI CHEBYSHEV SONO OTTIMALI PER L’INTER-


POLAZIONE POLINOMIALE, DAL PUNTO DI VISTA DEL
CONDIZIONAMENTO DEL PROBLEMA E DA QUELLO DEL-
L’ERRORE DI INTERPOLAZIONE

MA SE LA FUNZIONE f NON È DATA IN FORMA ANALITI-


CA, (DATI SPERIMENTALI), NON POSSIAMO SCEGLIERE
I PUNTI IN CUI INTERPOLARE:

SE DECIDIAMO DI SCEGLIERE POCHI PUNTI E USARE


UN POLINOMIO INTERPOLANTE DI GRADO BASSO QUESTO
NON DARÀ IN GENERALE UNA BUONA APPROSSIMAZIONE
DELLA FUNZIONE f SU TUTTO L’INTERVALLO, A MENO
CHE ESSO NON SIA MOLTO PICCOLO (E QUINDI I PUNTI
MOLTO FITTI)

36
A12

CONDIZIONAMENTO DEL PROBLEMA DI


INTERPOLAZIONE POLINOMIALE
QUANDO SI DISPONE DI MOLTI DATI CONVIENE SEGUIRE
UNA STRADA DIVERSA, CHE CONSENTE DI UTILIZZARLI
TUTTI PUR LAVORANDO CON POLINOMI DI GRADO BAS-
SO: USARE INTERPOLANTI POLINOMIALI A TRAT-
TI
2 2

1.5 1.5

1 1

0.5 0.5

0 0
−1 −0.5 0 0.5 1 −1 −0.5 0 0.5 1

2 2

1.5 1.5

1 1

0.5 0.5

0 0
−1 −0.5 0 0.5 1 −1 −0.5 0 0.5 1

Figura 3: INTERPOLAZIONE MEDIANTE LINEARI A TRATTI

37
A13

CONDIZIONAMENTO DEL PROBLEMA DI


INTERPOLAZIONE POLINOMIALE
IL RACCORDO DEI VARI TRATTI LINEARI GENERA PUN-
TI ANGOLOSI E, COMPLESSIVAMENTE, LA FUNZIONE
APPROSSIMANTE È CONTINUA MA HA DERIVATA PRI-
MA DISCONTINUA
QUESTO PUÒ RISULTARE UN INCONVENIENTE

ESTETICAMENTE PERCHÉ SI NECESSITA DI UN GRAFI-


CO SENZA SPIGOLI
TEORICAMENTE PERCHÉ SI VUOL DETERMINARE
UNA FUNZIONE APPROSSIMANTE CON UN CERTO
GRADO DI REGOLARITÀ
PER EVITARE QUESTO PROBLEMA, MANTENENDO I SOT-
TOINTERVALLI E IL GRADO BASSO DEI POLINOMI, OC-
CORRE UTILIZZARE LEFUNZIONI SPLINES DI GRADO
SUPERIORE AL PRIMO

38
A13

FUNZIONI SPLINES

SIANO DATI
UN INTERVALLO [a, b] E n + 2 PUNTI a = y0 < y1 < y2 <
. . . < yn < yn+1 = b
SI DEFINISCE FUNZIONE SPLINE DI GRADO m E no-
di y0, y1, . . ., yn+1 UNA FUNZIONE CHE SODDISFA LE
PROPRIETÀ:
Sm,y ∈ Pm, per x ∈ Ii, i = 0, 1, . . . , n,

Sm,y ∈ C m−1[a, b]
QUINDI IN OGNUNO DEI NODI INTERNI y1, y2, . . . , yn DE-
VONO VALERE LE CONDIZIONI DI RACCORDO PER LA
FUNZIONE E LE SUE DERIVATE
(j)
lim Sm,y (j)
(x) = lim Sm,y (x), per j = 0, . . . , m − 1,
x→yi− x→yi+

PER UN TOTALE DI m × n CONDIZIONI.


IN OGNUNO DEGLI (n+1) SOTTOINTERVALLI LA SPLINE
È UN POLINOMIO DI GRADO m ED È QUINDI DEFINITA
MEDIANTE (m + 1) COEFFICIENTI =⇒ LA DIFFEREN-
ZA FRA IL NUMERO DI COEFFICIENTI E IL NUMERO DI
CONDIZIONI DI RACCORDO, OVVERO (n + 1) × (m + 1) −
m × n = m + n + 1, FORNISCE IL NUMERO DI GRADI DI
LIBERTÀ
IN PRATICA:
UNA VOLTA FISSATI I NODI, PER INDIVIDUARE UNA
PARTICOLARE SPLINE SI DEVONO FORNIRE m + n + 1
CONDIZIONI

39
A14

FUNZIONI SPLINES
DOBBIAMO TROVARE m+n+1 BASI βk (x), k = 0, · · · , m+n
PER POTER SCRIVERE L’ ESPRESSIONE DI UNA SPLINE


m+n
Sm,y = ck βk (x)
i=0

È NATURALE COSTRUIRE UNA BASE A PARTIRE DAL-


LA BASE DI Pm
AD ESEMPIO PRENDIAMO LA BASE CLASSICA 1, x, x2, · · · , xm
MANCANO ANCORA n BASI
MODO INTUITIVO(PRENDIAMO 2 NODI INTERNI)
NELL’ INTERVALL0 [y0, y1] LA SPLINE SARÀ RAPPRESEN-
TATA DA UN Pm(x) E QUINDI ESPRIMIBILE COME
Sm, y(x) = Pm(x)
PROCEDIAMO NELL’ INTERVALLO [y1, y2]
POSSIAMO PENSARE CHE LA SPLINE SIA RAPPRESEN-
TATA IN [y0, y2]) COME
Sm,y (x) = Pm(x) + c1P̃ (x)
P̃ (x) NON DEVE MODIFICARE QUANTO FATTO IN [y0, y1]
QUINDI POSSIAMO PRENDERE UN P̃ (x) CHE IN [y0, y1] È
IDENTICAMENTE NULLO
QUESTO PUÒ ESSERE OTTENUTO SE PONIAMO
{
def 0 x ≤ y1
P̃ (x) = (x − y1)m =
+
(x − y1)m x > y1

40
A15

FUNZIONI SPLINES
ANALOGAMENTE IN [y0, y3] SI AGGIUNGE c2P̃˜ (x)
E LA SPLINE SARÀ RAPPRESENTATA IN [y0, y3] COME
S (x) = P (x) + c P̃ (x) + c P̃˜ (x)
m,y m 1 2

DOVE, DI NUOVO,P̃ (x) NON DEVE MODIFICARE QUAN-


TO FATTO IN [y0, y2]

E DI NUOVO OTTENIAMO QUESTO CON


{
0 x ≤ y2
P̃˜ (x) = (x − y2)m
def
=
+
(x − y2)m x > y2
IN GENERALE POSSIAMO SCRIVERE LA SPLINE COME

m ∑
2
Sm,y (x) = Pm(x)+c1(x−y1)m m
+ +c2 (x−y2 )+ = ai x i + ci(x−yi)m
+
i=0 i=1

CON {
0
def x ≤ yi
(x − yi)m
+ =
(x − yi)m x > yi
CHE PRENDE IL NOME DI POTENZA TRONCATA DI
GRADO m RELATIVA A yi
N.B.
SONO PRESENTI SIA LA COMPONENTE POLINOMIALE
SIA LA COMPONENTE LEGATA AI NODI INTERNI DEL-
LA SPLINE ( I NODI ESTREMI y0 = a e y3 = b NON FIGU-
RANO PERCHÈ IL PRIMO E L’ ULTIMO PEZZO DI POLI-
NOMIO NON DEVONO ESSERE VINCOLATI DA RACCOR-
DI DAL MOMENTO CHE I LORO CONTIGUI SONO FUORI
DALL’ INTERVALLO ASSEGNATO)
41
A16

FUNZIONI SPLINES
GENERALIZZANDO QUANTO SOPRA AL CASO DI n NO-
DI INTERNI, POSSIAMO SCRIVERE LA SPLINE NELLA
FORMA


m ∑
n
Sm,y (x) = ai x i
+ ci(x − yi)m
+
i=0 i=1

1 1
data 1
spline
0.9 0.9

0.8 0.8

0.7 0.7

0.6 0.6

0.5 0.5

0.4 0.4

0.3 0.3

0.2 0.2

0.1 0.1

0 0
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1 −1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1

Figura 4: INTERPOLAZIONE MEDIANTE SPLINES DI GRADO 1 E 3

42
A17

FUNZIONI SPLINES
• PER RISOLVERE UN PROBLEMA DI INTERPOLAZIONE
MEDIANTE SPLINES È NECESSARIO RICORRERE AL-
LA RISOLUZIONE DEL SISTEMA LINEARE CHE DERI-
VA DALLE IMPOSIZIONI DELLE CONDIZIONI DI IN-
TERPOLAZIONE
• SIAMO ARRIVATI ALLA DEFINIZIONE DELLA SPLINE
PER OVVIARE AGLI INCONVENIENTI RISCONTRATI
NELL’ INTERPOLAZIONE QUANDO IL GRADO DEL
POLINOMIO INTERPOLANTE DIVENTA GRANDE, MA
UNA FUNZIONE SPLINE PUÒ ESSERE USATA SIA NEL-
L’ AMBITO DELL’ INTERPOLAZIONE CHE NELL’ AM-
BITO DELLA MIGLIORE APPROSSIMAZIONE

43
A18

FUNZIONI SPLINES
LA BASE DELLE POTENZE TRONCATE È
LA BASE STORICA DELLE SPLINES
VANTAGGI

• È FACILE RICAVARE LE ESPRESSIONI DEI POLINOMI


CHE RAPPRESENTANO LOCALMENTE LA SPLINE
SVANTAGGI

• 1)PER CALCOLARE IL VALORE IN UN PUNTO SONO


RICHIESTI PIÙ DI m + 1 ADDENDI
• 2)IL COSTO AUMENTA ALL’ AUMENTARE DEI NODI
INTERNI
• 3)IL COSTO AUMENTA TANTO PIÙ QUANTO PIÙ IL
PUNTO IN CUI SI CALCOLA LA SPLINE È VICINO
ALL’ ESTREMO DESTRO DELL’ INTERVALLO
• 4)COME PER LA BASE DEI MONOMI LA MATRICE
DEI COEFFICIENTI DEL SISTEMA CHE DERIVA DALLE
CONDIZIONI DELL’ INTERPOLAZIONE PUÒ ESSERE
MALCONDIZIONATA

44
A19

FUNZIONI SPLINES
ESEMPIO DI MAL CONDIZIONAMENTO
SIANO ASSEGNATI I PUNTI
x0 = 1 x1 = 2 x2 = 3 x3 = 4 x4 = 5
f0 = 2 f1 = 3 f2 = 4 f3 = 5 f4 = 6
VOGLIAMO LA SPLINE LINEARE INTERPOLANTE I DATI
E DI NODI x0, x1, x2, x3, x4

1
S1,y (x) = ai x i + c1(x − 2)+ + c2(x − 3)+ + c3(x − 4)+
i=0

IMPONENDO LE CONDIZIONI DI INTERPOLAZIONE OT-


TENIAMO LA MATRICE
 
1 1 0 0 0
1 2 0 0 0
 
 
Q =  1 3 1 0 0 ,
 
1 4 2 1 0
1 5 3 2 1

CON CONDIZIONAMENTO K = 6.6147e + 016

45
A20

FUNZIONI SPLINES
N.B.
I PROBLEMI 2) E 3) SONO DOVUTI AL FATTO CHE LE
POTENZE TRONCATE A PARTIRE DAL NODO SONO POLI-
NOMI DI GRADO m
QUINDI
SONO DEFINITE SU TUTTO L’ INTERVALLO (NON HAN-
NO SUPPORTO LOCALE )
QUESTO COMPORTA ANCHE CHE OGNI MODIFICA/VARIAZIONE
EFFETTUATA SUI PUNTI CREA VARIAZIONI GLOBALI
16

14

12

10

0
0 0.5 1 1.5 2 2.5 3 3.5 4

Figura 5: POTENZE TRONCATE DI SECONDO GRADO CON NODI INTERNI [0, 1, 2, 3]

46
A21

SPLINES CUBICHE INTERPOLANTI NEI NODI


LE SPLINES PIÙ USATE SONO LE

SPLINES CUBICHE

LA CONTINUITÀ FINO ALLA DERIVATA SECONDA È SOD-


DISFACENTE NELLA MAGGIOR PARTE DELLE SITUAZIONI
( LE EVENTUALI DISCONTINUITÀ SULLE DERIVATE DAL-
LA TERZA IN POI NON SONO VISIBILI AD OCCHIO NUDO
IN UN GRAFICO)
N.B.
IN GENERALE I NODI POSSONO COINCIDERE TO-
TALMENTE/IN PARTE O NON COINCIDERE CON
I PUNTI FONDAMENTALI DELL’ INTERPOLAZIONE

IN PARTICOLARE

• SE I NODI COINCIDONO TOTALMENTE CON


I PUNTI FONDAMENTALI ESISTE UN PROCEDIMEN-
TO AD HOC IN ALTERNATIVA A QUELLO BASATO
SULLE POTENZE TRONCATE
• SE I NODI NON COINCIDONO TOTALMENTE
CON I PUNTI FONDAMENTALI (OPPURE SE SI HA
NECESSITÀ DI UN GRADO SUPERIORE A 3) VIENE
CONSIDERATA UN’ ALTRA BASE IN ALTERNATIVA
A QUELLA DELLE POTENZE TRONCATE: LA BASE
DELLE B-SPLINES

47
A22

SPLINES CUBICHE INTERPOLANTI NEI NODI


CONSIDERIAMO
LE SPLINES CUBICHE INTERPOLANTI DEI NODI
PROBLEMA:
ASSEGNATI I DATI, COINCIDENTI CON I NODI,

(xi, fi), i = 0, . . . , n, a = x0 < x1 < . . . < xn+1 = b

SI VUOLE DETERMINARE UNA SPLINE CUBICA CHE LI


INTERPOLI
IL PROBLEMA COSÌ POSTO NON DEFINISCE UNIVOCA-
MENTE UNA SPLINE
INFATTI
n NODI INTERNI, GRADO DELLA SPLINE m = 3 =⇒
n + 3 + 1 = n + 4 GRADI DI LIBERTÀ (NOI ABBIAMO
SOLTANTO n + 2 CONDIZIONI DA IMPORRE)
=⇒

48
A23

SPLINES CUBICHE INTERPOLANTI NEI NODI


DOBBIAMO AGGIUNGERE ALTRE DUE CONDIZIONI:
IN MANCANZA DI ALTRE INFORMAZIONI, SI IMPONE
CHE LA DERIVATA SECONDA DELLA SPLINE SI ANNUL-
LI IN x0 e xn+1
LA SPLINE COSÌ DEFINITA PRENDE IL NOME DI

SPLINE NATURALE

SI PUÒ DIRE CHE ALL’ESTERNO DI [x0, xn+1] LA SPLINE


TENDE NATURALMENTE A PROSEGUIRE IN LINEA
RETTA
N.B.
LE DUE CONDIZIONI AGGIUNTE POSSONO ESSERE SCELTE
IN MODO DIVERSO QUANDO SI HANNO ULTERIORI IN-
FORMAZIONI SULLA FUNZIONE f

AD ESEMPIO:

• QUANDO SI CONOSCONO I VALORI DI f ′ O di f ′′ NEGLI


ESTREMI
• QUANDO SI SA CHE f È UNA FUNZIONE PERIODICA

49
A24

SPLINES CUBICHE INTERPOLANTI NEI NODI


CONSIDEREREMO LE SPLINES NATURALI

INDICHIAMO CON si(x) IL TRATTO DI SPLINE RELATI-


VO ALL’INTERVALLO [xi, xi+1]

LE CONDIZIONI DI CONTINUITÀ DELLA DERIVATA PRI-


MA E SECONDA DIVENTANO:
s′i(xi) = s′i−1(xi)
s′′i (xi) = s′′i−1(xi),
PER i = 1, 2, . . . , n
LE CONDIZIONI DI INTERPOLAZIONE DIVENTANO
si(xi) = fi
si(xi+1) = fi+1,
PER i = 0, 1, . . . , n
LE CONDIZIONI AGGIUNTE PER LA SPLINE NATURALE
DIVENTANO
s′′0 (x0) = s′′n−1(xn) = 0.
IDEA:
• ESPRIMERE s0, s1, . . . , sn IN TERMINI DEI VALORI, z0, z1, . . . , zn
(INCOGNITI), ASSUNTI DALLA DERIVATA SECONDA
NEI NODI CON z0 = 0 E zn+1 = 0
• INTEGRARE DUE VOLTE ED IMPORRE LA CONTI-
NUITÀ DELLA DERIVATA PRIMA E LE CONDIZIONI
DI INTERPOLAZIONE

50
A25

SPLINES CUBICHE INTERPOLANTI NEI NODI


SAPPIAMO CHE
• PER OGNI i, s′′i È UN POLINOMIO DI PRIMO GRADO
• POSSIAMO SCRIVERNE L’ ESPRESSIONE PONENDO
hi = xi+1 − xi , i = 0, 1, . . . n

zi+1 zi
s′′i (x) =
(x − xi) + (xi+1 − x).
hi hi
(ABBIAMO SCRITTO L’EQUAZIONE DELLA RETTA
CHE PASSA PER I DUE PUNTI (xi, zi) e (xi+1, zi+1))

(STIAMO IMPLICITAMENTE IMPONENDO LA CONTI-


NUITÀ DELLA DERIVATA SECONDA DELLA SPLINE)
INTEGRANDO DUE VOLTE, OTTENIAMO

zi+1 zi
si(x) = (x−xi)3 + (xi+1 −x)3 +Ci(x−xi)+Di(xi+1 −x),
6hi 6hi
LE COSTANTI DI INTEGRAZIONE Ci E Di PER OGNI i
SONO DETERMINATE IMPONENDO LE CONDIZIONI
DI INTERPOLAZIONE
fi+1
Ci = hi − h6i zi+1

Di = fi
hi − h6i zi.
(ANCORA I VALORI zi e zi+1 SONO INCOGNITI)

51
A26

SPLINES CUBICHE INTERPOLANTI NEI NODI


IMPONIAMO LE CONDIZIONI SULLA CONTINUITÀ DEL-
LA DERIVATA PRIMA
• DERIVIAMO si(x) E si−1(x) OTTENENDO
zi+1 zi
s′i(x) = (x − xi)2 − (xi+1 − x)2 + Ci − Di (5)
2hi 2hi
E
zi zi−1
s′i−1(x) = (x − xi−1)2 − (xi − x)2 + Ci−1 − Di−1,
2hi−1 2hi−1
(6)
• IMPONIAMO LA CONTINUITÀ OTTENENDO
hi hi fi+1 − fi hi−1 hi−1 fi − fi−1
− zi+1 − zi + = zi−1 + zi + ,
6 3 hi 6 3 hi−1
(7)

• PONIAMO hi−1zi−1 + 2(hi−1 + hi)zi + hizi+1 = bi OTTE-


NENDO
bi = 6(vi − vi−1)
(8)
fi+1 −fi fi −fi−1
vi = hi , vi−1 = hi−1 .
PER i = 1, 2, . . . n

52
A27

SPLINES CUBICHE INTERPOLANTI NEI NODI


ABBIAMO COSÌ RICAVATO n CONDIZIONI CHE I VALORI
z0, z1, . . . zn+1 DEVONO SODDISFARE
POICHÉ SIAMO INTERESSATI A SPLINES NATURALI, SOS-
TITUIAMO IL VALORE ZERO A z0 e zn+1 E OTTENIAMO
UN SISTEMA LINEARE DI n EQUAZIONI NELLE n INCOG-
NITE z1, z2, . . . zn. CON MATRICE DEI COEFFICIENTI

 
d1 h1 0 0 ... 0
h 
 1 d2 h2 0 ... 0 
 0 
 h2 d3 h3 ... 0 
A =  .. 
 . 
 
 0 . . . 0 hn−3 dn−2 hn−2 
0 ... 0 0 hn−2 dn−1
CON di = 2(hi−1 + hi), per i = 1, 2, . . . , n
QUESTA MATRICE HA UNA STRUTTURA MOLTO PAR-
TICOLARE:
È TRIDIAGONALE E SIMMETRICA E A PRE-
DOMINANZA DIAGONALE

53
A28

SPLINES CUBICHE INTERPOLANTI NEI NODI


SI PUÒ DIMOSTRARE CHE
• A È NON SINGOLARE (QUINDI IL SISTEMA AM-
METTE UN’ UNICA SOLUZIONE)
• QUANDO SI APPLICA IL METODO DI GAUSS A MA-
TRICI CON QUESTE CARATTERISTICHE LA TECNI-
CA DEL PIVOTING PARZIALE NON INDUCE NES-
SUNO SCAMBIO DI RIGHE
• AD OGNI PASSO VENGONO MODIFICATI SOLTAN-
TO UN ELEMENTO DIAGONALE ED IL COR-
RISPONDENTE TERMINE NOTO
• LA MATRICE U (A = LU ) A CUI SI PERVIENE HA
UNA STRUTTURA NON PIÙ TRIANGOLARE SUPERI-
ORE, MA BIDIAGONALE SUPERIORE (SOLTAN-
TO LA DIAGONALE E LA CODIAGONALE SUPERI-
ORE CONTENGONO ELEMENTI DIVERSI DA ZERO)

54
A29

SPLINES CUBICHE INTERPOLANTI NEI NODI


ESEMPIO
1
f (x) = exsin2(x)
2
IN [0, 2π] CON n = 4, 6, 8, 10 PUNTI EQUIDISTANTI
N.B.
AL CRESCERE DI n, LA SPLINE APPROSSIMA SEMPRE
MEGLIO LA FUNZIONE SU TUTTO L’INTERVALLO
RISULTATO TEORICO:
PER LE SPLINES CUBICHE INTERPOLANTI NEI NODI
QUALUNQUE SIA LA DISTRIBUZIONE DEI NO-
DI L’ERRORE DI INTERPOLAZIONE TENDE A ZERO SU
TUTTO L’INTERVALLO [a, b] QUANDO n TENDE A ∞
4 4

3 3

2 2

1 1

0 0

−1 −1
−4 −2 0 2 4 −4 −2 0 2 4

4 4

3 3

2 2

1 1

0 0

−1 −1
−4 −2 0 2 4 −4 −2 0 2 4

Figura 6: SPLINES CUBICHE INTERPOLANTI NEI NODI

55
A30

CONDIZIONAMENTO NELLE SPLINES


CUBICHE INTERPOLANTI NEI NODI

IL CONDIZIONAMENTO DIPENDE DALLA DIS-


TRIBUZIONE DEI NODI
SE I NODI SONO EQUIDISTANTI (h0 = h1 = . . . =
hn = h), QUALUNQUE SIA LA LORO DISTANZA h, IL
PROBLEMA È BEN CONDIZIONATO
INFATTI:
ABBIAMO A = hA, e MATRICE TRIDIAGONALE E
SIMMETRICA CON ELEMENTI DIAGONALI UGUALI
A 4 E ELEMENTI CODIAGONALI UGUALI A 1
e IN QUALUNQUE NORMA SI MISURI IL
=⇒ E k(A) = k(A),
CONDIZIONAMENTO
IL CONDIZIONAMENTO DI A e È OTTIMO PER

QUALUNQUE n ( IL VALORE DI k1(A) e CALCOLATO


CON MATLAB È CIRCA UGUALE A 3 PER OGNI n)

56
A31

CONDIZIONAMENTO NELLE SPLINES


CUBICHE INTERPOLANTI NEI NODI

IL CONDIZIONAMENTO PUÒ PEGGIORARE QUANDO I


¯
NODI NON SONO DISTRIBUITI IN MODO UNIFORME
SITUAZIONE CRITICA:
ALCUNI SOTTOINTERVALLI (POCHI RISPETTO AL NU-
MERO TOTALE n) HANNO AMPIEZZA MOLTO MAGGIORE
DEGLI ALTRI
ESEMPIO: SIANO δ1 E δ2 DUE NUMERI POSITIVI DATI E
CONSIDERIAMO DEI PUNTI COSÌ DISTRIBUITI:
xi = iδ1 , i = 0, 1, . . . , 5
x6 = x5 + δ2
xi = x6 + (i − 6)δ1 , i = 7, 8, . . . , 12
x13 = x12 + δ2
CHE INDIVIDUANO DUE INTERVALLI DI AMPIEZZA δ2
E 11 INTERVALLI DI AMPIEZZA δ1. AL VARIARE DI δ1
E δ2 IL NUMERO DI CONDIZIONAMENTO k1(A) VARIA
δ1 δ2 k1(A)
1 105 1.36 × 105
1 104 1.36 × 104
10−2 103 1.36 × 105
1 106 1.36 × 106
104 1 4.72 × 100
106 1 4.74 × 100
103 10−2 4.74 × 100

57
A32

FUNZIONI B-SPLINES
LE POTENZE TRONCATE SONO BASI A SUPPORTO NON
LOCALE
ABITUALMENTE SI PREFERISCE UNA FORMULAZIONE
ALTERNATIVA, CIOÈ UNA BASE LOCALE CHE È FORNI-
TA DALLE B-SPLINES
SI COSTRUISCONO PER RICORRENZA A PARTIRE DA
UN’ OPPORTUNA SPLINE DI GRADO 0
IN PARTICOLARE LA i-ESIMA BASE DI GRADO 0 È DEFINI-
TA {
def 1 yi ≤ x < yi+1
Bi,0(x) =
0 altrimenti
LA i-ESIMA BASE DI GRADO 1 È DEFINITA
x − yi yi+2 − x
Bi,1(x) = Bi,0(x) + Bi+1,0(x)
yi+1 − yi yi+2 − yi+1
LA i-ESIMA BASE DI GRADO 2 È DEFINITA
x − yi yi+3 − x
Bi,2(x) = Bi,1(x) + Bi+1,1(x)
yi+2 − yi yi+3 − yi+1
E COSÌ PER RICORRENZA LA i-ESIMA BASE DI GRADO
k
x − yi yi+k+1 − x
Bi,k (x) = Bi,k−1(x) + Bi+1,k−1(x)
yi+k − yi yi+k+1 − yi+1

58
A33

FUNZIONI B-SPLINES
B-SPLINES STA PER BELL- SPLINES (FORMA A CAM-
PANA)
INFATTI
x − yi yi+3 − x
Bi,2(x) = Bi,1(x) + Bi+1,1(x)
yi+2 − yi yi+3 − yi+1
PER DEFINIZIONE IN [yi, yi+1) ABBIAMO
x − yi
Bi,2(x) = Bi,1(x)
yi+2 − yi
IN [yi, yi+1) ABBIAMO
x − yi
Bi,1(x) =
yi+1 − yi
E QUINDI
x − yi x − yi
Bi,2(x) = ×
yi+2 − yi yi+1 − yi
OVVERO
(x − yi)2
Bi,2(x) =
(yi+2 − yi)(yi+1 − yi)
QUINDI UNA QUADRATICA CON LA CONCAVITÀ RIVOL-
TA VERSO L’ ALTO
ANALOGAMENTE SI PUÒ VEDERE CHE IN [yi+1, yi+2) LA
CONCAVITÀ È RIVOLTA VERSO IL BASSO E IN [yi+2, yi+3)
LA CONCAVITÀ È RIVOLTA VERSO L’ ALTO TUTTE LE
BASI PARTONO DA ZERO ED ARRIVANO A ZERO

59
A34

FUNZIONI B-SPLINES
CONSIDERIAMO I SUPPORTI DELLE BASI
GRADO 0
{
def 1 yi ≤ x < yi+1
Bi,0(x) =
0 altrimenti

QUINDI È DIVERSA DA ZERO SOLTANTO IN [yi, yi+1)


GRADO 1
{ x−y
def
i
yi+1 −yi yi ≤ x < yi+1
Bi,1(x) = yi+2 −x
yi+2 −yi+1 yi+1 ≤ x ≤ yi+2

Bi,1(x) ≡ 0, x < yi, x > yi+2


1

0.9

0.8

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0
1 1.5 2 2.5 3 3.5 4 4.5 5

Figura 7: B-SPLINES DI PRIMO GRADO CON NODI [1, 2, 3, 4, 5]

QUINDI IN UN PUNTO GENERICO SONO ATTIVE DUE


B-SPLINES LINEARI

60
A35

FUNZIONI B-SPLINES
LA B-SPLINES QUADRATICA COINVOLGE 4 NODI
[yi, yi+1, yi+2, yi+3]

INFATTI L’ESPRESSIONE È
x − yi yi+3 − x
Bi,2(x) = Bi,1(x) + Bi+1,1(x)
yi+2 − yi yi+3 − yi+1
QUINDI IN UN PUNTO GENERICO SONO ATTIVE TRE B-
SPLINES QUADRATICHE
IN UN PUNTO GENERICO SONO ATTIVE QUATTRO B-
SPLINES CUBICHE
GENERALIZZANDO IN UN PUNTO GENERICO SONO AT-
TIVE (p + 1) B-SPLINES DI GRADO p

61
A36

FUNZIONI B-SPLINES
1

0.9

0.8

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0
−5 0 5 10

Figura 8: B-SPLINES DI PRIMO GRADO (CON NODI SPAZIATI DI DUE)

0.8

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0
−5 0 5 10

Figura 9: B-SPLINES DI SECONDO GRADO (CON NODI SPAZIATI DI DUE)

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0
−5 0 5 10

Figura 10: B-SPLINES DI TERZO GRADO (CON NODI SPAZIATI DI UNO)

62
A37

FUNZIONI B-SPLINES
CONCLUDENDO:
SE VOGLIAMO ESPRIMERE UNA SPLINE DI GRADO m
E n NODI INTERNI CON LA BASE DELLE B-SPLINES LA
SCRIVIAMO


n
Sm,y = ciBi,m
i=−m

N.B.
IL PRIMO INDICE DELLA SOMMATORIA È −m
AD ESEMPIO CONSIDERIAMO m = 2
LA PRIMA BASE CHE LAVORA SULL’INTERVALLO [y0, y1]
PARTE DAL NODO y−2 (IL SUPPORTO È FATTO DA 4 NO-
DI)
=⇒ AGGIUNTA DI NODI AUSILIARI
N.B.
• LA SPLINE LINEARE INTERPOLANTE I DATI E DI
NODI x0, x1, x2, x3, x4 ESPRESSA IN TERMINI DI B-SPLINES
SI OTTIENE RISOLVENDO UN SISTEMA DIAGONALE
• AUMENTANDO IL GRADO DELLA SPLINES OTTENI-
AMO UN SISTEMA CON MATRICI A BANDA
• SI PUÒ DIMOSTRARE CHE LA MATRICE DEI COEF-
FICIENTI È BEN CONDIZIONATA
• OGNI MODIFICA/VARIAZIONE EFFETTUATA SUI PUN-
TI CREA VARIAZIONI LOCALI DAL PUNTO DI VISTA
VISIVO E COMPUTAZIONALE

63
A38

FORMULE DI QUADRATURA
PROBLEMA:
CALCOLO APPROSSIMATO DI
∫ b
I[f ] = f (x)dx , f (x) INTEGRABILE SU [a, b]
a

SI CERCANO METODI NUMERICI IN GRADO
DI FORNIRE UNA APPROSSIMAZIONE DI UN
INTEGRALE IN TERMINI DI UN NUMERO FINI-
TO DI VALORI DELLA FUNZIONE INTEGRAN-
DA
⇒ SUPPONIAMO DI CONOSCERE (O DI POTER
VALUTARE) LA FUNZIONE INTEGRANDA f (x)
IN PUNTI {xi} (SCELTI O PREFISSATI), DISTIN-
TI IN [a, b]
COSTRUIAMO FORMULE DEL TIPO
∫ b ∑
n
f (x)dx ∼
= wif (xi)
a i=0
{xi} = NODI DELLA FORMULA DI QUADRATU-
RA
{wi} = PESI DELLA FORMULA DI QUADRATU-
RA
IDEA IMMEDIATA:
APPROSSIMARE f (x) CON IL POLINOMIO IN-
TERPOLANTE LA FUNZIONE NEI NODI {xi} DI
GRADO n

64
A39

FORMULE DI QUADRATURA
ESEMPIO CON UN PUNTO: ( a+b
2 , f ( a+b
2 ))
SOSTITUIAMO ALLA FUNZIONE IL POLINOMIO INTER-
POLANTE DI GRADO 0 CHE PASSA PER IL PUNTO DATO

f(b)

f((a+b)/2) ∫ b
a+b
f (x)dx ≃ (b−a)f ( )
a 2
f(a)

a (a+b)/2 b

REGOLA DEL PUNTO DI MEZZO

ESEMPIO CON DUE PUNTI: (a, f (a)), (b, f (b))


SOSTITUIAMO ALLA FUNZIONE IL POLINOMIO INTER-
POLANTE DI GRADO 1 CHE PASSA PER I PUNTI DATI

f(b)

∫ b
b−a
f (x)dx ≃ [f (b) + f (a)]
a 2
f(a)

a b

REGOLA DEI TRAPEZI

65
A40

FORMULE DI QUADRATURA
ESEMPIO CON TRE PUNTI:
(a, f (a))
(b, f (b))
( a+b a+b
2 , f ( 2 ))
SOSTITUIAMO ALLA FUNZIONE IL POLINOMIO INTER-
POLANTE DI GRADO 2 CHE PASSA PER I PUNTI DATI
∫ b [ ]
h a+b
f (x)dx ≃ f (a) + 4f ( ) + f (b) , h = (b − a)
a 6 2
h 4h
w0 = 6 w1 = 6
h
w2 = 6
REGOLA DI SIMPSON

66
A41

ERRORE NELLE FORMULE DI QUADRATURA


INTERPOLATORIE
SI PUÒ DIMOSTRARE CHE SE LA FUNZIONE f È SUF-
FICIENTEMENTE REGOLARE GLI ERRORI HANNO LE
SEGUENTI ESPRESSIONI
( )3
FORMULA DEL PUNTO DI MEZZO R0 = 13 f ′′(ξ) b−a 2

1 ′′
FORMULA DEI TRAPEZI R1 = − 12 f (η)(b − a)3
( b−a )5
FORMULA DI SIMPSON R2 = − 90
1 iv
f (θ) 2
(9)
DOVE ξ, η E θ SONO PUNTI INTERNI AD [a, b].

67
A42

GENERALIZZAZIONE CON (n + 1) PUNTI


SIA Ln(f ; x) ⇒
∫ b ∫ b
f (x)dx = [Ln(f ; x) + En(f ; x)]dx =
a
∫a b ∫ b
Ln(f ; x)dx + En(f ; x)dx
a a

DOVE Ln(f ; xi) = f (xi)


RAPPRESENTIAMO Ln NELLA FORMA DI LAGRANGE

n
Ln(f ; x) = li(x)f (xi)
i=0


∫ b ∫ b∑
n ∫ b
f (x)d(x) = li(x)f (xi)dx + En(f ; x)dx
a a i=0 a

n ∫ b ∫ b
= f (xi) li(x)dx + En(f ; x)dx
i=0 | a {z } | a {z }
wi Rn (x)
∫ b ∑
n
f (x)dx = wif (xi) + Rn(x)
a i=0

DOVE Rn(x) È L’ERRORE DELLA FORMULA DI QUADRATU-


RA
LE FORMULE COSTRUITE IN QUESTO MODO SONO CHIA-
MATE
FORMULE DI QUADRATURA INTERPOLATORIE

68
A43

GRADO DI PRECISIONE
PER CONFRONTARE IL “GRADO DI ACCURATEZZA” DELLE
FORMULE DI QUADRATURA SI PUÒ USARE IL GRADO
DI PRECISIONE

UNA FORMULA DI QUADRATURA HA GRA-


DO DI PRECISIONE d SE È ESATTA QUANDO
LA FUNZIONE INTEGRANDA f (x) È UN POLI-
NOMIO QUALSIASI DI GRADO ≤ d ED ESISTE
ALMENO UN POLINOMIO DI GRADO d + 1 PER
CUI L’ERRORE Rn(f ) RISULTA NON NULLO

OGNI FORMULA DI QUADRATURA DI TIPO INTERPO-


LATORIO SU (n + 1) NODI HA GRADO DI PRECISIONE
ALMENO n.

LA FORMULA DEI TRAPEZI HA GRADO DI PRE-


CISIONE 1
LA FORMULA DI SIMPSON HA GRADO DI PRE-
CISIONE 3

69
A44

PROBLEMI CON NUMERO DI NODI n


GRANDE
NUMERO DI NODI n GRANDE
⇒ POLINOMIO INTERPOLANTE DI GRADO ELEVATO

NELL’ INTERPOLAZIONE NON C’È GARANZIA DI MIGLIO-


RARE L’ ERRORE CON UN GRADO ALTO DEL POLINOMIO
INTERPOLANTE

NELLE FORMULE DI QUADRATURA NON CONVIENE US-
ARE UN NUMERO ELEVATO DI NODI

NELL’ INTERPOLAZIONE SI DIVIDE L’ INTERVALLO IN


SOTTOINTERVALLI E SI USANO POLINOMI DI GRADO
BASSO ⇒
NELLE FORMULE DI QUADRATURA SI PROCEDE ANALOGA-
MENTE CON LA SUDDIVISIONE DELL’ INTEGRALE

70
A45

FORMULE COMPOSTE
IDEA: SI DIVIDE L’INTERVALLO DI INTEGRAZIONE [a, b]
IN m SOTTOINTERVALLI DI AMPIEZZA UGUALE h̄
b−a
h̄ =
m

∫ b ∑ ∫ yi+1
m−1
f (x)dx = f (x)dx , yi = a + ih̄, i = 0, . . . , m
a i=0 yi

b−a
y0 = a , ym = a + m ·
=b
m
ALLORA SCELTA UNA FORMULA DI BASE, VIENE
APPLICATA AD OGNI SOTTOINTERVALLO
SIA Q(yi, yi+1, f ) LA FORMULA DI QUADRATURA APPLI-
CATA ALL’INTERVALLO [yi, yi+1]
ABBIAMO ∫ b ∑
m−1
f (x)dx ≃ Q(yi, yi+1, f )
a i=0

71
A46

FORMULE COMPOSTE
LE FORMULE COMPOSTE PIÙ USATE SONO QUELLE DEI
TRAPEZI E DI SIMPSON

FORMULA COMPOSTA DEI TRAPEZI


b−a b−a
CASO m = 2, h̄ = =
m 2

CON NODI
h̄ h̄
x0 , x1 , x2 IT = [f (x0) + f (x1)] + [f (x1) + f (x2)]
2 2

IN GENERALE
h̄ ∑ m−1
IT = [f (a) + 2 f (a + ih̄) + f (b)]
2 i=1

FORMULA COMPOSTA DI SIMPSON


b−a b−a
CASO n = 4 , m = 2, h̄ = =
m 2
CON NODI
x0 , x1 , x2 , x 3 , x4
h̄ h̄
IS = [f (x0) + 4f (x1) + f (x2)] + [f (x2) + 4f (x3) + f (x4)
6 6
IN GENERALE
[ ]
h̄ ∑
m−1 ∑m

IS = f (a) + 2 f (a + ih̄) + 4 f (a + (2i − 1) ) + f (b)
6 i=1 i=1
2

72
A47

FORMULE COMPOSTE
200 200

180 180

160 160

140 140

120 120

100 100

80 80

60 60
1 2 3 4 5 1 2 3 4 5

∫5
Figura 11: APPROSSIMAZIONE DI 1 (6x3 − 42x2 + 100x + 6sin(x))dx: FORMULE
COMPOSTE DI TRAPEZI E SIMPSON CON 5 NODI

73
A48

n IT |RT | IS |RS |
1 1.000000000000000 5.71e−01 1.666666666666667 9.59e−02
2 1.500000000000000 7.08e−02 1.566666666666667 4.13e−03
4 1.550000000000000 2.08e−02 1.570784313725490 1.20e−05
8 1.565588235294118 5.21e−03 1.570796251229353 7.56e−08
16 1.569494247245545 1.30e−03 1.570796325612411 1.18e−09
32 1.570470806020695 3.26e−04 1.570796326776418 1.85e−11
64 1.570714946587486 8.14e−05 1.570796326794607 2.89e−13
128 1.570775981742828 2.03e−05 1.570796326794892 4.22e−15

CONFRONTO TRA FORMULE COMPOSTE

∫ 1
1
2
dx ≃ 1.570796326794897.
−1 1 + x
L’ERRORE DELLA FORMULA DI SIMPSON DIMINUISCE
MOLTO PIÙ VELOCEMENTE DI QUELLO RELATIVO AL-
LA FORMULA DEI TRAPEZI
SE LA FUNZIONE f È SUFFICIENTEMENTE REGOLARE
POSSIAMO SFRUTTARE LE ESPRESSIONI DEGLI ERRORI
RELATIVI ALLE FORMULE DI BASE DATE IN PER DE-
TERMINARE QUELLE DI RT E RS
1 2
h (b − a)f ′′(η).
RT = − (10)
12
1 4
RS = − h (b − a)f iv (θ) (11)
180
PER h CHE TENDE A ZERO SIA RT CHE RS TENDONO A
ZERO, MA CON DIVERSE VELOCITÀ: RT È UN O(h2) E RS
È UN O(h4) PER QUESTO, E PER LA SUA SEMPLICITÀ,
LA FORMULA DI SIMPSON È ALLA BASE DELLE PRO-
CEDURE DI INTEGRAZIONE NUMERICA PIÙ COMUNE-
MENTE USATE, DISPONIBILI AD ESEMPIO IN MATLAB

74
A49

n I1,T |R1,T | I2,T |R2,T |


2 6.283185307179585 2.31e+00 1.324472005554721 1.05e−01
4 3.141592653589792 8.36e−01 1.404217767571056 2.56e−02
8 3.994661719911019 1.72e−02 1.423433227037202 6.34e−03
16 3.977463886350889 7.19e−07 1.428194056490323 1.58e−03
32 3.977463260506423 9.34e−08 1.429381606668820 3.96e−04

Tabella 1: FORMULA COMPOSTA DEI TRAPEZI E FUNZIONI PERIODICHE

FORMULA DEI TRAPEZI CON FUNZIONI


PERIODICHE

∫ 2π
I1[f ] = cos2(x)esin(2x)dx ≃ 3.977463167069391
0
E ∫ 1
I2[f ] = cos2(x)esin(2x)dx ≃ 1.429777357029912,
0
AL CRESCERE DI n R1,T DIMINUISCE MOLTO PIÙ VELO-
CEMENTE DI QUANTO SUGGERIREBBE L’ESPRESSIONE
DELL’ ERRORE
L’ERRORE DELLA FORMULA COMPOSTA DEI TRAPEZI
VA A ZERO PIÙ VELOCEMENTE CON h QUANDO LA
FUNZIONE INTEGRANDA È PERIODICA E L’INTERVAL-
LO DI INTEGRAZIONE COINCIDE CON L’INTERO PERI-
ODO (FONDAMENTALE)

75
A50

CONVERGENZA
AFFINCHÈ UNA FORMULA DI QUADRATURA DEFINIS-
CA UNA “BUONA” DISCRETIZZAZIONE DELL’ INTEGRALE
È NECESSARIO CHE

n ∫ b
lim wif (xi) = f (x)dx
n→∞ a
i=0

IN QUESTO CASO DICIAMO CHE LA FORMULA È CON-


VERGENTE
ESISTONO CONDIZIONI CHE ASSICURANO LA
CONVERGENZA PER INTERVALLI SIA FINITI
CHE INFINITI
PER INTERVALLI FINITI, [a, b], f ∈ C[a, b]
• LA CONVERGENZA È GARANTITA SE
∑n
|wi| ≤ k EQUILIMITATEZZA
i=0

k COSTANTE INDIPENDENTE DA n
• LA CONVERGENZA È GARANTITA SE
wi ≥ 0 ∀ i

76
A51

STABILITÀ
SUPPONIAMO CHE SIA, A CAUSA DEGLI ERRORI DI AR-
ROTONDAMENTO
fei = fe(xi) = fl(f (xi)) = f (xi) − ρi
∫ b
SIA I[f ] = f (x)dx
a


n
In+1[f ] = wif (xi)
i=0
En+1 = I[f ] − In+1[f ]
L’ ERRORE EFFETTIVAMENTE COMMESSO È
DATO DA

n
en+1 = I[f ] − Ien+1[f ] = I[f ] −
E wife(xi)
i=0

n ∑
n
= I[f ] − wif (xi) + ρiwi
i=0 i=0


n
en+1 = En+1 +
E ρiwi
i=0

SIA ρ = max |ρi|


i

n
DOBBIAMO STIMARE LA QUANTITÀ ρiwi
i=0

77
A52

STABILITÀ
NOTIAMO CHE

n ∑n ∫ b
wi = wi · 1 = 1dx (FORMULA DI GRADO 0)
i=0 i=0 a
∑n
wi = b − a
i=0
n


STIMIAMO ρiwi

i=0
n
∑ ∑ n ∑
n ∑
n

ρiwi ≤ |ρiwi| = |ρi||wi| ≤ ρ |wi|

i=0 i=0 i=0 i=0

SE wi > 0, i = 0, . . . , n

n ∑
n
|wi| = wi = b − a
i=0 i=0

∑n

ρiwi ≤ ρ(b − a)

i=0
QUINDI SE I COEFFICIENTI SONO POSITIVI
ABBIAMO UN CONTENIMENTO DEGLI ERRORI
QUINDI LE FORMULE SONO STABILI
QUINDI LE FORMULE COMPOSTE SONO STA-
BILI

78
A53

ESTRAPOLAZIONE DI RICHARDSON
LE ESPRESSIONI DEGLI ERRORI VISTE HANNO VALID-
ITÀ SOLTANTO TEORICA PERCHÉ DIPENDONO DA UNA
DERIVATA DELLA FUNZIONE INTEGRANDA: SE ANCHE
SI PUÒ CALCOLARE AGEVOLMENTE NON SI AVREBBE
IDEA DEL PUNTO IN CUI CALCOLARLA

PROBLEMA: FISSATA LA FORMULA COMPOSTA CHE SI


VUOLE USARE, COME SCEGLIERE h IN MODO DA OT-
TENERE UNA BUONA APPROSSIMAZIONE DI I[f ]?
IDEA
• SI CALCOLANO DUE APPROSSIMAZIONI I1 E I2 DI
I[f ] CON DUE DIVERSE SUDDIVISIONI DELL’INTER-
VALLO, CON SOTTOINTERVALLI DI AMPIEZZA h1 E
h2 CON h2 < h1
IN PRATICA CONVERRÀ SCEGLIERE h2 = h21 COSÌ
DA POTER UTILIZZARE NEL CALCOLO DI I2 VAL-
ORI DELLA FUNZIONE GIÀ USATI NEL CALCOLO DI
I1 .
• SE LA DIFFERENZA FRA I2 E I1 È MINORE DI UNA
TOLLERANZA FISSATA, SI ACCETTA I2 COME VAL-
ORE DELL’INTEGRALE, ALTRIMENTI SI DIMINUISCE
L’AMPIEZZA DEI SOTTOINTERVALLI E SI RIPETE IL
PROCEDIMENTO.

79
A54

ESTRAPOLAZIONE DI RICHARDSON
QUESTA STRATEGIA PUÒ ESSERE MIGLIORATA UTILIZ-
ZANDO UNA TECNICA NOTA COME ESTRAPOLAZIONE
DI RICHARDSON CHE, DATI I1 E I2, PERMETTE ANCHE
DI STIMARE L’ERRORE ASSOCIATO A I2 IN MODO AB-
BASTANZA ACCURATO

PRENDIAMO COME BASE LA FORMULA COMPOSTA DEI


TRAPEZI
IT,h IT,h/2 SIANO I RISULTATI OTTENUTI CON DUE DI-
VERSE SUDDIVISIONI DELL’INTERVALLO [a, b], UNA CON
SOTTOINTERVALLI DI AMPIEZZA h E L’ALTRA CON h2
RT,h RT,h/2 SIANO GLI ERRORI CORRISPONDENTI
CONSIDERIAMO GLI ERRORI
1
RT,h = − (b − a)f ′′(η1)h2 (12)
12
E ( )2
1 h
RT,h/2 = − (b − a)f ′′(η2) , (13)
12 2
CON η1, η2 ∈ (a, b)

80
A55

ESTRAPOLAZIONE DI RICHARDSON
IPOTESI DI LAVORO: f ′′ NON VARIA TROPPO IN [a, b]
QUINDI −→ f ′′(η1) ≃ f ′′(η2)

POSSIAMO SCRIVERE

1
RT,h/2 ≃ RT,h
4
CONSIDERIAMO

RT,h = I[f ] − IT,h


E
RT,h/2 = I[f ] − IT,h/2
OTTENIAMO

1 1 1
RT,h/2 ≃ (I[f ]−IT,h+IT,h/2−IT,h/2) = RT,h/2+ (IT,h/2−IT,h)
4 4 4
E QUINDI

IT,h/2 − IT,h
RT,h/2 ≃
3

81
A56

ESTRAPOLAZIONE DI RICHARDSON
UTILITÀ DELLA RELAZIONE PRECEDENTE:
• FORNISCE UNA STIMA EFFETTIVAMENTE CALCO-
LABILE DELL’ERRORE COMMESSO CON PASSO h/2
• FORNISCE UN’ALTRA APPROSSIMAZIONE I¯T DELL’IN-
TEGRALE

IT,h/2 − IT,h
RT,h/2 = I[f ] − IT,h/2 ≃
3
DA CUI
IT,h/2 − IT,h
I[f ] ≃ IT,h/2 +
3
E QUINDI
IT,h/2 − IT,h
ĪT = IT,h/2 +
3
È UN’ ALTRA APPROSSIMAZIONE

82
A57

n IT |RT | I¯T |R̄T |


1 1.000000000000000 5.71e−01
2 1.500000000000000 7.08e−02 1.666666666666667 9.59e−02
4 1.550000000000000 2.08e−02 1.566666666666667 4.13e−03
8 1.565588235294118 5.21e−03 1.570784313725490 1.20e−05
16 1.569494247245545 1.30e−03 1.570796251229354 7.56e−08
32 1.570470806020695 3.26e−04 1.570796325612411 1.18e−09
64 1.570714946587486 8.14e−05 1.570796326776417 1.85e−11
128 1.570775981742828 2.03e−05 1.570796326794608 2.89e−13

CONFRONTO TRA TRAPEZI E RICHARDSON


DATO L’ INTEGRALE
∫ 1
1
I[f ] = 2
dx
−1 1 + x
CONFRONTIAMO IT E I¯T PER n CRESCENTE

83
A58

ESTRAPOLAZIONE DI RICHARDSON
L’ESTRAPOLAZIONE DI RICHARDSON PUÒ ESSERE UTI-
LIZZATA ANCHE A PARTIRE DALLA FORMULA COM-
POSTA DI SIMPSON IN MODO ANALOGO A QUANTO
FATTO PER LA FORMULA COMPOSTA DEI TRAPEZI
INFATTI OTTENIAMO

IS,h/2 − IS,h
RS,h/2 ≃
15
E

IS,h/2 − IS,h
I¯S = IS,h/2 +
15

84
A59

CENNO:FORMULE ADATTATIVE
LE FORMULE COMPOSTE CON SUDDIVISIONE UNIFORME
DELL’ INTERVALLO DI INTEGRAZIONE SONO ORMAI SU-
PERATE TRANNE IN CASI PARTICOLARISSIMI (FUNZIONI
PERIODICHE, REGOLA DEI TRAPEZI)
SI USANO LE FORMULE DI TIPO ADATTATIVO
QUANDO LA FUNZIONE INTEGRANDA f (x) PRESENTA
DELLE “IRREGOLARITÀ” C’È LA NECESSITÀ DI ADDEN-
SARE I NODI NELLE VICINANZE DELLE “IRREGOLAR-
ITÀ”
MA
CON LA SUDDIVISIONE UNIFORME DELLE FORMULE
COMPOSTE VISTE VIENE IMPOSTO LO STESSO ADDEN-
SAMENTO IN TUTTO L’ INTERVALLO [a, b] ANCHE IN
QUELLE ZONE DOVE È DEL TUTTO SUPERFLUO
NELLE STRATEGIE DI TIPO ADATTATIVO L’ INTERVAL-
LO [a, b]
• VIENE SUDDIVISO IN SOTTOINTERVALLI DI
AMPIEZZA DIVERSA
• VIENE APPLICATA UNA FORMULA DI BASE
(NON CON MOLTI NODI) ADDENSANDO I
NODI LÀ DOVE LA f (x) PRESENTA “IRRE-
GOLARITÀ”, E COLLOCANDO POCHI NODI
DOVE f (x) È “REGOLARE”

85
A60
Plot of the function HUMPS(x)
100

CENNO:FORMULE ADATTATIVE
90

80

70

60

50

40

30

20

10

0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

86
A61

REALIZZAZIONE DI UNA QUADRATURA


ADATTATIVA
• SI PARTE CON UNA SUDDIVISIONE INIZIALE UNI-
FORME DELL’ INTERVALLO [a, b]
• SI STIMA L’ ERRORE SU CIASCUN INTERVALLO
• SI EFFETTUA UN CONTROLLO SULL’ ACCURATEZ-
ZA DELL’ ERRORE
• GLI INTERVALLI PER I QUALI IL TEST NON RISUL-
TA VERIFICATO VENGONO ULTERIORMENTE SUD-
DIVISI
• SI RIESEGUE IL CONTROLLO SUGLI INTERVALLI RIDI-
VISI
• SI PROCEDE COSÌ RICORSIVAMENTE FINO A QUAN-
DO IL TEST RISULTA SODDISFATTO IN TUTTI GLI
INTERVALLI

87
A62

FUNCTIONS MATLAB PER LE FORMULE DI


QUADRATURA
IN UNA DIMENSIONE
• quad: q= quad(’fun’,a,b) ; FORMULA ADATTATIVA
DI SIMPSON
• quadl: q=quadl(’fun’,a,b) ; FORMULA ADATTATIVA
DI LOBATTO
• quad: q=quad(’fun’,a,b,toll) ; FORMULA ADATTA-
TIVA DI SIMPSON CON PRECISIONE SCELTA DALL’
UTENTE
• quadl: q=quadl(’fun’,a,b,toll) ; FORMULA ADATTA-
TIVA DI LOBATTO CON PRECISIONE SCELTA DALL’
UTENTE
ATTENZIONE
LE FUNCTIONS quad E quadl LAVORANO SU VETTORI
E fun È IL NOME DI UNA FUNCTION SCRITTA DALL’
UTENTE

88
A63

CENNO:INTEGRALI IN PIÙ DIMENSIONI


L’ INTEGRAZIONE DI FUNZIONI IN PIÙ DIMENSIONI RISUL-
TA MOLTO PIÙÙ COMPLESSA DEL CALCOLO DI INTE-
GRALI IN UNA DIMENSIONE

PROBLEMI

• IL NUMERO DI PUNTI NECESSARIO PER APPROSSI-


MARE UNA FUNZIONE CRESCE AL CRESCERE DEL-
LA DIMENSIONE (N IN UNA DIMENSIONE N 2 IN DUE
DIMENSIONI N 3 IN TRE DIMENSIONI E COSÌ VIA)
• IN UNA DIMENSIONE IL DOMINIO DI INTEGRAZIONE
È SEMPRE UN INTERVALLO (FINITO O INFINITO)
IN PIÙ DIMENSIONI IL DOMINIO PUÒ VARIARE CON
UNA CASISTICA MOLTO AMPIA
CASO PIÙ SEMLICE
• PRODOTTO CARTESIANO E REGOLE PRODOT-
TO

89
A64

CENNO:INTEGRALI IN PIÙ DIMENSIONI


SI DEVE APPROSSIMARE

f (x, y)dxdy
B

• SE IL DOMINIO DI INTEGRAZIONE È B = [a, b] × [c, d],


∑n
• In[f ] = i=0 wif (xi) È UNA FORMULA DI QUADRATU-
RA PER L’ INTERVALLO [a, b]

• Iem[f ] = m ej f (yj ) È UNA FORMULA DI QUADRATU-
j=0 w
RA PER L’ INTERVALLO [c, d]
UNA FORMULA DI QUADRATURA IN DUE DIMENSIONI
SI OTTIENE COME PRODOTTO CARTESIANO DELLE DUE
FORMULE IN UNA DIMENSIONE
∫ b∫ d ∑
n ∑
m
f (x, y)dxdy ≃ In × eIm = e jf (xi, yj)
wiw
a c i=0 j=0

90
A65

CENNO:INTEGRALI IN PIÙ DIMENSIONI


• COME IN UNA DIMENSIONE ANCHE IN PIÙ DIMEN-
SIONI SI FA RICORSO ALLE FORMULE COMPOSTE
• CIÒ PREVEDE UNA SUDDIVISIONE DEL DOMINIO IN
SOTTODOMINI DISGIUNTI CIOÈ IL DOMINIO VIENE
SUDDIVISO MEDIANTE UNA GRIGLIA
– RETTANGOLARE
–O
– TRIANGOLARE
1

0.9

0.8

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

0.9

0.8

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

91
A66

FUNCTIONS MATLAB PER LE FORMULE DI


QUADRATURA IN PIÙ DIMENSIONI
DOMINIO RETTANGOLARE [a, b] × [c, d]
• dblquad: q= dblquad(’fun’,a,b,c,d) ; FORMULA IN
DUE DIMENSIONI USANDO quad
• dblquad: q=dblquad(’fun’,a,b,c,d,toll); FORMULA IN
DUE DIMENSIONI USANDO quad CON PRECISIONE
SCELTA DALL’ UTENTE
• dblquad: q=dblquad(’fun’,a,b,c,d,toll,nome metodo);
FORMULA IN DUE DIMENSIONI USANDO UN METO-
DO CREATO DALL’ UTENTE O DI MATLAB:
• q=dblquad(’fun’,a,b,c,d,toll,’quadl’) USA IL METO-
DO DI LOBATTO
ATTENZIONE
LE FUNCTIONS quad E quadl LAVORANO SU VETTORI
E fun È IL NOME DI UNA FUNCTION SCRITTA DALL’
UTENTE

92
A67

FUNCTIONS MATLAB PER LA SUDDIVISIONE


DEL DOMINIO
• PER LA SUDDIVISIONE IN SOTTORETTANGOLI
LE FUNCTIONS DEVONO ESSERE FORNITE DALL’
UTENTE
• PER LA SUDDIVISIONE IN TRIANGOLI:
• TRI = delaunay(X,Y) DOVE X E Y SONO PUNTI
DEL DOMINIO
• L’ INSIEME DEI TRIANGOLI CHE RESTITUISCE POS-
SONO ESSERE VISTI CON
• LA FUNCTION triplot(X,Y,TRI)

93
A67

EQUAZIONI DIFFERENZIALI ORDINARIE


(CENNO)
EQ.ni DIFFERENZIALI:
EQ.ni CHE ESPRIMONO UN LEGAME TRA FUNZIONI E
DERIVATE
ORDINARIE:
UNA SOLA VARIABILE INDIPENDENTE
EQ.ne DIFFERENZIALE DI ORDINE n È DELLA FORMA
′ ′′
F (t, y(t), y (t), y (t), ..., y (n)(t)) = 0

SE PUÒ ESSERE ESPLICITATA RISPETTO A y (n) È IN FOR-


MA NORMALE
′ ′′
y (n) = f (t, y(t), y (t), y (t), ..., y (n−1)(t))

LA SOLUZIONE DIPENDE DALLE CONDIZIONI (INIZIALI)


IN UN UNICO PUNTO t = a


 y(a) = y1,0

 ′
y (a) = y2,0
 ...


 y n−1(a) = y
n,0

94
A67

LE EQ.ni DIFFERENZIALI DI ORDINE n POS-


SONO ESSERE RICONDOTTE A SISTEMI DEL
TIPO
 ′

 y1(t) = f1(t, y1(t), ..., yn(t))
...

 y ′ (t) = f (t, y (t), ..., y (t))
n n 1 n

CON CONDIZIONI

 y1(a) = y1,0
...

yn(a) = yn,0

PONENDO z1(t) = y(t), z2(t) = y (t), ..., zn(t) = y n−1(t) ⇒
 ′

 z (t) = z2(t)


1
...


 z (t) = zn(t)
 n−1
 z (t) = f (t, z (t), z (t), ..., z (t))

n 1 2 n

CON CONDIZIONI


 z1(a) = y1,0

 ...

 zn−1(a) = yn−1,0

 z (a) = y
n n,0

95
A67

ESEMPIO
 ′′ ′

 y (t) = −y (t)
y(0) = 1

 y ′ (0) = 0

CON LE TRASFORMAZIONI
z1(t) = y(t)

z2(t) = y (t)

SI OTTIENE IL SEGUENTE SISTEMA DI PRIMO GRADO:


 ′

 z1(t) = z2(t)

 ′
z2(t) = −z2(t)

 z1(0) = 1

 z (0)
2 = 0

96
A67

CONSIDEREREMO EQ.ni DEL TIPO


y = f (t, y(t))

pensando, eventualmente, y(t) ed f (t) COME VETTORI

{ ′
y (t) = f (t, y(t))
PROBLEMA DI CAUCHY
y(a) = y0
(VALORI INIZIALI)
ESEMPIO
{ ′ 2
y (t) = − 10−t
1+t4 y(t)
y(0) = 1

{ ′
y (t) = f (t, y(t))
PROBLEMA AI LIMITI
g(y(a), y(b)) = 0

ESEMPIO
{ ′′
−y (t) + sin(t)y(t) = (1 − cos2(t) − 2cos(t))et
y(0) = y(π) = 0.

97
A67

METODI NUMERICI PER PROBLEMI DI


CAUCHY
APPROSSIMAZIONE NUMERICA DEL PROBLEMA
{ ′
y (t) = f (t, y(t))
t ∈ [t0, ...]
y(t0) = y0
IDEA DI BASE

• SI DISCRETIZZA L’ INTERVALLO DI INTEGRAZIONE


CON L’ INSIEME DI “NODI”
tn+1 = tn + hn, n = 0, ...
DOVE hn SONO I PASSI DI DISCRETIZZAZIONE.
PER SEMPLICITÀ CONSIDEREREMO I PASSI COSTAN-
TI, MA NELLA PRATICA È OPPORTUNO VARIARE IL
PASSO IN FUNZIONE DEL COMPORTAMENTO DEL-
LA SOLUZIONE.
• IN CORRISPONDENZA AI NODI {tn} UN PARTICO-
LARE METODO GENERA UNA SEQUENZA DI
VALORI {un} CHE DEFINISCONO LA SOLUZIONE
DISCRETA E RAPPRESENTANO LE APPROSSIMAZIONI
DEI VALORI y(tn) DELLA SOLUZIONE
• UNA VOLTA NOTA LA SOLUZIONE PER PUNTI SI RI-
COSTRUISCE L’ APPROSSIMAZIONE SU TUTTO L’ IN-
TERVALLO RICORRENDO ALL’ INTERPOLAZIONE
I VARI METODI DIFFERISCONO PER IL MO-
DO PARTICOLARE CON CUI VENGONO CAL-
COLATI I VALORI un
98
A67

METODI ONE-STEP: IL VALORE un+1 VIENE CALCO-


LATO UTILIZZANDO UNICAMENTE IL VALORE un
un+1 = un + hΦ(tn, un; h, f ) ESPLICITO
un+1 = un + hΦ(tn, un, un+1; h, f ) IMPLICITO

METODI MULTI-STEP: IL VALORE un+1 VIENE CAL-


COLATO UTILIZZANDO PIÙ APPROSSIMAZIONI PRECE-
DENTI un, un−1, ..., un−k+1
un+1 = Ψ(tn, un, un−1, ..., un−k+1; h, f ) ESPLICITO
un+1 = Ψ(tn, un+1, un, un−1, ..., un−k+1; h, f ) IMPLICITO

IL METODO VIENE CHIAMATO METODO MULTISTEP A


k PASSI

ESEMPIO
un+1 = un−1 + 2hf (tn, un), n = 1, 2, ...
MULTISTEP ESPLICITO
un+1 = un + h2 [f (tn, un), +f (tn+1, un+1)], n = 1, 2, ...
ONE-STEP IMPLICITO

99
A67

IL METODO DI EULERO ESPLICITO


SIA I UN INTERVALLO DI R, DATA f : I × R → R,
TROVARE y : I → R DERIVABILE TALE CHE

{ ′
y (t) = f (t, y(t))
t∈I
y(t0) = y0
CONSIDERIAMO LA PARTIZIONE DELL’ INTERVALLO
I = [t0, T ]
IN UN NUMERO FINITO DI INTERVALLI [tn, tn+1] PER n =
0, ..., N
CON hn = tn+1 − tn.

IN OGNI PUNTO tn SI CERCA UN VALORE un CHE AP-


PROSSIMI IL VALORE DI yn = y(tn).
CONSIDERAZIONE
CERCARE LA SOLUZIONE AL PROBLEMA DI CAUCHY
SIGNIFICA CERCARE UNA FUNZIONE CHE PASSI PER
IL PUNTO (t0, y0) E CHE PER OGNI PUNTO (t, y(t)) AB-
BIA UNA PENDENZA PARI A f (t, y(t)).
=⇒

100
A67

IL METODO DI EULERO ESPLICITO


SUPPONIAMO h = maxn hn, QUINDI PASSO DI DISCRETIZ-
ZAZIONE COSTANTE
POSSIAMO
• PRENDERE LA RETTA CHE PASSA PER (t0, y0)
CON PENDENZA f (t0, y(t0)), CIOÈ LA RETTA TAN-
GENTE ALLA CURVA SOLUZIONE IN (t0, y0)
• CALCOLARE IL VALORE DELLA RETTA IN
(t1) u1 = y(t0) + hf (t0, y0)
• PRENDERE COME APPROSSIMAZIONE DEL
VALORE DELLA SOLUZIONE IN (t1), IL VAL-
ORE DELLA RETTA
• RAGGIUNTO IL PUNTO (t1, u1) POSSIAMO ITERARE
IL PROCEDIMENTO OTTENENDO
IL METODO DI EULERO ESPLICITO

un+1 = un + hf (tn, un), n = 0, 1, ..., N.

101
A67

3.5

3 soluzione esatta

2.5

approssimazione con 10 passi di Eulero


2

1.5

approssimazione con 3 passi di Eulero


1

0.5

0
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

ESEMPIO
{ ′
y = −y + t, t ∈ [0, 1]
y(0) = 1

y(t) = t − 1 + 2e−t; t0 = 0; tn = 1

tn −t0
SCEGLIAMO IL PASSO h = 5 = 0.2
t0 = 0; t1 = 0.2; t2 = 0.4; t3 = 0.6; t4 = 0.8; t5 = 1.

ui+1 = ui + hf (ti, ui)


ui+1 = ui + 0.2f (ti, ui)
= ui + 0.2(−ui + ti)
= 0.8 ui + 0.2 ti; i = 0, 1, 2, 3, 4

FISSIAMO 3 CIFRE DECIMALI PER ARROTONDARE


102
A67

u0 = y(0) = 1
u1 = 0.8 u0 + 0.2 t0 = 0.8
u2 = 0.8 u1 + 0.2 t1 = 0.680
u3 = 0.8 u2 + 0.2 t2 = 0.624
u4 = 0.8 u3 + 0.2 t3 = 0.619
u5 = 0.8 u4 + 0.2 t4 = 0.655

103
A67

ESEMPIO
tn −t0
QUESTA VOLTA SCEGLIAMO IL PASSO h = 10 = 0.1
t0 = 0; t1 = 0.1; t2 = 0.2; t3 = 0.3; ... t9 = 0.9; t10 = 1.
ui+1 = ui + hf (ti, ui)
ui+1 = ui + 0.1f (ti, ui)
= ui + 0.1(−ui + ti)
= 0.9 ui + 0.1 ti; i = 0, 1, 2, 3, ..., 9
FISSIAMO 3 CIFRE DECIMALI PER ARROTONDARE
u∗0 = y(0) = 1
u∗1 = 0.9 u∗0 + 0.1 t0 = 0.900
u∗2 = 0.9 u∗1 + 0.1 t1 = 0.820 (da confrontare con u1 per h = 0.2)
u∗3 = 0.9 u∗2 + 0.1 t2 = 0.758
u∗4 = 0.9 u∗3 + 0.1 t3 = 0.712 (da confrontare con u2 per h = 0.2)
...
u∗6 = ...
...

0.95

0.9

0.85

0.8

0.75

verde=soluzione esatta
0.7
blue=eulero con passo h=0.1

0.65
rosso=eulero con passo h=0.2

0.6

0.55
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

104
A67

VARIANTI DEL METODO DI EULERO


CONSIDERAZIONI
EULERO SI BASA SULLA PENDENZA DELLA RETTA
TANGENTE IN (tn, un)
SE PRENDIAMO LA PENDENZA DELLA SECANTE PER
I PUNTI (tn, un) E (tn+1, un+1) E LA APPROSSIMIAMO CON
IL VALORE DELLA f NEL PUNTO DI MEZZO DI (tn, tn+1),
CIOÈ f (t̄, ū) CON t̄ = tn + h2 E ū = un + h2 f (tn, un) OTTE-
NENDO LA FORMULA
h h
un+1 = un + hf (tn + , un + f (tn, un))
2 2
CHE PRENDE IL NOME DI EULERO MODIFICATO
UN’ ALTRA IDEA È QUELLA DI PRENDERE UNA ME-
DIA DELLE PENDENZE IN tn E tn+1 OTTENENDO
1
un+1 = un + h(f (tn, un) + f (tn + h, un + hf (tn, un)))
2
CHE PRENDE IL NOME DI METODO DI HEUN

105
A67

IL METODO DI EULERO ESPLICITO


IL METODO DI EULERO ESPLICITO

un+1 = un + hf (tn, un)


PUÒ ESSERE OTTENUTO IN MODI DIVERSI:

• SOSTITUENDO LA DERIVATA PRIMA CON IL RAP-


PORTO INCREMENTALE IN AVANTI
y(tn+1) − y(tn)
y (tn) ∼

= ;
h
• APPLICANDO LA FORMULA DEI RETTANGOLI IN AVAN-
TI ALLA FORMULA INTEGRALE
∫t ′
y(tn+1) = y(tn) + tnn+1 y (τ )dτ
∫ tn+1
= y(tn) + tn f (τ, y(τ ))dτ


= y(tn) + hf (tn, y(tn))
DA CUI
un+1 = un + hf (tn, un)

106
A67

IL METODO DI EULERO MODIFICATO

( )
h h
un+1 = un + hf tn + , un + f (tn, un)
2 2
SI OTTIENE DALLA FORMULA DI QUADRATURA DEL
PUNTO MEDIO APPLICATA A

∫ tn+1
y(tn+1) = y(tn) + tn f (t, y(t))dt

≈ y(tn) + hf (tn + h2 , y(tn + h2 )).

PER VALUTARE y(tn + h2 ) SI USA EULERO ESPLICITO CON


PASSO h2 :

( )
h h
y tn + ≈ un + f (tn, un)
2 2
DA CUI
( )
h h
un+1 = un + hf tn + , un + f (tn, un)
2 2

107
A67

IL METODO DI HEUN

1
un+1 = un + h(f (tn, un) + f (tn + h, un + hf (tn, un)))
2
SI OTTIENE DALLA FORMULA DI QUADRATURA DEI
TRAPEZI APPLICATA A

∫ tn+1
y(tn+1) = y(tn) + tn f (t, y(t))dt

≈ y(tn) + h2 (f (tn, y(tn)) + f (tn+1, y(tn+1)))

= y(tn) + h2 (f (tn, y(tn)) + f (tn+1, y(tn) + hf (tn, y(tn))))

DA CUI
1
un+1 = un + h(f (tn, un) + f (tn + h, un + hf (tn, un)))
2

108
A67

METODI DI RUNGE KUTTA


IL METODO DI EULERO MODIFICATO PUÒ ESSERE
RISCRITTO NELLA FORMA
k1 = f (t0, u0)

k2 = f (t0 + h/2, u0 + (h/2)k1)

u1 = u0 + hk2

IL METODO DI HEUN PUÒ ESSERE RISCRITTO NELLA


FORMA
k1 = f (t0, u0)

k2 = f (t0 + h, u0 + hk1)

u1 = u0 + h2 (k1 + k2)
QUINDI LA FORMA GENERALE È
k1 = f (t0, u0)

k2 = f (t0 + Ch, u0 + hak1)

u1 = u0 + h(w1k1 + w2k2)

UNO SCHEMA DI QUESTO TIPO È DETTO SCHEMA DI


RUNGE-KUTTA ESPLICITO A DUE LIVELLI
TALE SCHEMA PUÒ ESSERE GENERALIZZATO AUMEN-
TANDO I LIVELLI IMPONENDO CONDIZIONI DI AC-
CURATEZZA

109
A67

ERRORI
SVILUPPIAMO IN SERIE LA SOLUZIONE y(t) NELL’ IN-
TORNO DI t0
′ 1 ′′ 1 ′′
y(t1) = y(t0) + hy (t0) + y (ξ)h2 = y0 + hf (t0, y0) + y (ξ)h2
2 2
CONFRONTANDO LO SVILUPPO CON LA FORMULA DI
EULERO
u1 = u0 + hf (t0, u0) = y0 + hf (t0, y0)
DEDUCIAMO CHE L’ ERRORE CHE SI COMMETTE CON
UN PASSO DEL METODO È
1 ′′
y(t1) − u1 = y (ξ)h2
2
QUESTA DIFFERENZA PRENDE IL NOME DI ERRORE
LOCALE DI TRONCAMENTO ED È FONDAMEN-
TALE PER LO STUDIO DELL’ ACCURATEZZA E PER LE
PROPRIETÀ DI CONVERGENZA DEI METODI

110
A67

ERRORI
• ERRORE (LOCALE) DI TRONCAMENTO IN
(tn)
en = un
|{z} − y(tn)
| {z }
soluzione calcolata soluzione esatta

È LA DIFFERENZA TRA IL VALORE VERO ED IL VAL-


ORE APPROSSIMATO SENZA CONSIDERARE GLI ER-
RORI PRECEDENTI
RAPPRESENTA UNA MISURA DELL’ ACCURATEZZA
DELLA FORMULA

• ERRORE GLOBALE
en = un
|{z} − y(tn)
| {z }
soluzione calcolata soluzione esatta

DERIVA DALLA CREAZIONE AD OGNI PASSO DEGLI


ERRORI LOCALI E DALLA LORO PROPAGAZIONE (CON-
SIDERA GLI ERRORI AI PASSI PRECEDENTI)
• ERRORE DI ARROTONDAMENTO
ρn = un − u˜n
|{z}
valore calcolato

DERIVA DALL’ ARITMETICA FINITA


IL PROBLEMA CENTRALE NELLO STUDIO DEI METODI
NUMERICI RIGUARDA IL CONTROLLO DELL’ ER-
RORE GLOBALE CHE COMPRENDE TUTTI GLI ER-
RORI

111
A67

LA RICHIESTA È CHE TALE ERRORE POSSA ESSERE


FATTO “PICCOLO” QUANTO SI VUOLE PER h “SUFFI-
CIENTEMENTE PICCOLO” (CONCETTO DI CONVERGEN-
ZA))

0.95

0.9

0.85

0.8

0.75

0.7 errore di troncamento

errore globale
0.65
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

PER LA CONVERGENZA DI UN METODO OCCORRE


CHE
• L’ ERRORE DI TRONCAMENTO SIA INFINITESIMO
CON h
• L’ ACCUMULO DEGLI ERRORI LOCALI “NON ESPLO-
DA” QUANDO h DIVENTA PICCOLO

112

Potrebbero piacerti anche