Sei sulla pagina 1di 172

ANALISI NUMERICA

Luciano Misici

LM
Luglio 2015

Indice
1 APPROSSIMAZIONE POLINOMIALE
1.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Approssimazione polinomiale uniforme o mini-max . .
1.3 Approssimazione polinomiale in media quadratica o L2
1.4 Polinomi ortogonali . . . . . . . . . . . . . . . . . . . .
1.5 Propriet`a dei polinomi ortogonali . . . . . . . . . . . .
1.6 Approssimazione polinomiale in L2w . . . . . . . . . . .
1.7 Approssimazione polinomiale quasi uniforme . . . . . .
1.8 Esercizi proposti . . . . . . . . . . . . . . . . . . . . .
2 INTEGRAZIONE NUMERICA
2.1 Introduzione . . . . . . . . . . . . . . . . . . .
2.2 La formula di quadratura dei trapezi . . . . .
2.3 La formula di quadratura di Cavalieri Simpson
2.4 Le formule di quadratura di Gauss . . . . . .
2.5 Formule adattative . . . . . . . . . . . . . . .
2.6 Integrali singolari . . . . . . . . . . . . . . . .
2.7 Esercizi proposti . . . . . . . . . . . . . . . .

2
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

2
9
12
15
21
24
26
29

31
.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

31
33
36
40
44
47
52

3 METODI NUMERICI PER LA SOLUZIONE DI PRO-

BLEMI DI CAUCHY PER EQUAZIONI DIFFERENZIALI ORDINARIE


3.1
3.2
3.3
3.4
3.5
3.6
3.7

57

Introduzione . . . . . . . . . . . . . . . . . . . . . . . .
Il metodo di Eulero esplicito . . . . . . . . . . . . . . .
Il metodo di Eulero implicito ed il metodo trapezoidale
Metodi a pi`
u passi . . . . . . . . . . . . . . . . . . . .
Il metodo del punto di mezzo . . . . . . . . . . . . . .
Convergenza e stabilit`a dei metodi a pi`
u passi . . . . .
I metodi di Adams . . . . . . . . . . . . . . . . . . . .

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

57
63
69
75
78
80
89

3.8
3.9

Metodi ad un solo passo e metodi Runge Kutta . . . . . . . . . . . . . 96


Esercizi proposti . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

4 APPROSSIMAZIONE DEGLI AUTOVALORI DI MA-

TRICI
4.1
4.2
4.3
4.4
4.5
4.6

104

Introduzione . . . . . . . . . . . . . .
Il metodo delle potenze . . . . . . . .
Trasformazioni ortogonali con matrici
Fattorizzazione QR . . . . . . . . . .
Il metodo QR . . . . . . . . . . . . .
Esercizi proposti . . . . . . . . . . .

. . . . . . . . .
. . . . . . . . .
di Householder
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .

.
.
.
.
.
.

.
.
.
.
.
.

5 SOLUZIONE DEGLI ESERCIZI PROPOSTI


5.1 Esercizi capitolo 1 . . . . . . . . . . . . . . . . . . . . . .
5.2 Esercizi capitolo 2 . . . . . . . . . . . . . . . . . . . . . .
5.3 Esercizi capitolo 3 . . . . . . . . . . . . . . . . . . . . . .
5.4 Esercizi capitolo 4 . . . . . . . . . . . . . . . . . . . . . .

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

104
110
112
115
116
118

121
.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

121
130
141
152

Appendice

161

A Polinomio interpolante di Hermite

161

B Equazioni alle differenze finite

164

C Polinomio interpolante sotto forma di differenze finite allindietro

167

Capitolo 1
APPROSSIMAZIONE POLINOMIALE

1.1

Introduzione

Relativamemte allapprossimazione prenderemo solo in esame lapprossimazione polinomiale nel continuo. In particolare ci soffermeremo sullapprossimazione polinomiale uniforme o mini-max e sullapprossimazione polinomiale in media quadratica
o L2 . Brevi cenni saranno forniti sullapprossimazione polinomiale quasi uniforme o
near mini-max. A livello introduttivo vanno ricordati due teoremi molto importanti
sullapprossimazione polinomiale, il teorema di Taylor ed il Teorema di Weierstrass.
Teorema 1 (di Taylor). Sia f (x) Cn+1 [a, b], allora per x, x0 [a, b] si ha
f (x) = pn (x) + Rn (x)

pn (x) =

n
X
f (k) (x0 )
k=0

1
Rn (x) =
n!

k!

(x x0 )k

(x t)n f (n+1) (t)dt =

x0

(x x0 )n+1 f (n+1) ()
(n + 1)!

(1.1)

(1.2)

con H{x0 , x} dove per H{x0 , x} si intende il pi`


u piccolo intervallo che contiene i
punti x0 ed x
Dimostrazione. La dimostrazione `e molto semplice, basta infatti utlizzare lidentit`a che
deriva dal teorema fondamentale del calcolo integrale
Z

f (x) = f (x0 ) +

f 0 (t)dt

(1.3)

x0

Utilizzando la regola di integrazione per parti si giunge a provare la tesi del teorema.
Infatti integrando per parti lintegrale nella (1.3) abbiamo
3

x0

x
f (t)dt = tf (t) x0
0

x
00

tf (t)dt = xf (x) x0 f (x0 )


x0

tf 00 (t)dt =

x0

= xf 0 (x) x0 f 0 (x0 ) xf 0 (x0 )

tf 00 (t)dt

x0

ora essendo
0

xf 00 (t)dt

x(f (x) f (x0 )) =


x0

si ottiene
Z

x
0

(x t)f 00 (t)dt

f (t)dt = (x x0 )f (x0 ) +
x0

x0

e quindi dalla (1.3) si ha


Z

f (x) = f (x0 ) + (x x0 )f (x0 ) +

(x t)f 00 (t)dt

x0

Continuando ad integrare per parti si ottiene (1.1) e (1.2) con lerrore scritto sotto forma di Peano. La formula dellerrore sotto forma di Lagrange si ottiene dalla
generalizzazione del teorema della media integrale.
Uno degli sviluppi pi`
u semplici `e
x

e =

n
X
xk
k=0

xn+1 X xk
1
+
e =
+
k! (n + 1)!
k! n!
k=0

(x t)n et dt

x0

Le due scritture dellerrore, una sotto forma di Peano e la seconda sotto forma di Lagrange nella (1.2) ci permettono fissato x: la prima una stima molto precisa dellerrore
mentre la seconda solo una maggiorazione dellerrore. Dal teorema si capisce che se
vogliamo approssimare in [a, b] la funzione f (x) con il polinomio di Taylor di grado n
`e necessario che la stessa funzione risulti molto regolare, cio`e derivabile con continuit`a
fino allordine n + 1 in [a, b]. A seguire vengono riportati alcuni grafici dove viene mostrato landamento della f (x) in nero, il polinomio di Taylor pn (x) di grado n (con n
specificato nella didascalia della figura) in rosso, lerrore nella forma di Peano in giallo
e lerrore calcolato come differenza f (x) pn (x) in blu. Si osserva come sopra detto che
lerrore nella forma di Peano rappresenta fedelmente lerrore commesso. Laltro dato
interessante `e che lerrore commesso non `e uniformemente distribuito in un intorno del
punto iniziale x0 ma `e tanto pi`
u grande quanto pi`
u ci allontaniamo dal punto iniziale
x0 .
Un altro teorema molto importante sullapprossimazione polinomiale di funzioni continue `e il teorema di Weirstrass. Di tale teorema non daremo la dimostrazione ma
4

-1.0

-0.5

0.5

1.0

-1

-2

-3

Figura 1.1: f (x) = ex

n=1

-3

-2

-1

-1

-2

-3

Figura 1.2: f (x) = sin(x)

n=5

solo lenunciato. Faremo invece alcune considerazioni relativamente alla dimostrazione


costruttiva in [0, 1] fatta con i polinomi di Bernstein.
Teorema 2 (di Weirstrass). Sia f(x) continua in [a, b] R ed  > 0. Esiste sempre
un polinomio p(x) tale che
max |f (x) p(x)| 
axb

Come sopra detto una dimostrazione `e quella fatta con i polinomi di


assume che [a, b] = [0, 1], tale ipotesi non `e una limitazione in quanto
tervallo limitato [a, b] pu`o sempre essere riportato nellintervallo [0, 1].
Bernstein relativi ad f (x), ovvero che approssimano f (x) in [0, 1], sono

Bernstein. Si
qualunque inI polinomi di
dati da

n  
X
n
k
Bn (x) =
f ( )xk (1 x)nk
n
k
k=0

(1.4)

Si prova che, se f (x) C0 [0, 1],


lim


max |f (x) Bn (x)| = 0

0x1

A seguire vengono approssimate con i polinomi di Bernstein le stesse due funzioni che
abbiamo approssimato con il polinomio di Taylor. Si sono considerate le funzioni in [a, b]
e poi si `e riportato [a, b] in [0, 1] utilizzando la trasformazione x = a+(ba)t , t [0, 1].
Pertanto si `e approssimato con tali polinomi la funzione g(t) = f (a + (b a)t) in [0, 1].
Come in precedenza nei grafici la funzione `e disegnata in nero, lerrore commesso, dato
come differenza tra la funzione ed il polinomio in blu ed il polinomio in rosso. Il grado
n del polinomio `e indicato nella didascalia della figura.
Come dal teorema la convergenza uniforme si ha anche quando la funzione f (x) `e una
funzione solo continua, in tal caso comunque la convergenza, nellintorno dei punti dove
la funzione `e solo continua, `e molto lenta. Possiamo osservare questo nei grafici relativi
alla funzione f (x) = |x|.
Come ultima considerazione possiamo dire che i polinomi di Bernstein convergono
uniformemente a funzioni continue nellintervallo chiuso [0, 1] ma molto lentamente
e questo anche nel caso in cui la funzione f (x) `e un polinomio. A seguire facciamo
vedere che il polinomio di Bernstein Bn (x), per n 2, non ci restituisce esattamente la
funzione f (x) = x2 cosa che invece succede per il polinomio di Taylor pn (x). Si prova
infatti che
n   2
X

x(x 1)
n k k
nk
2
x
(1

x)
=
x Bn (x) f =x2 = x
n
k n2
k=0
2

Si ha pertanto convergenza uniforme ma i due polinomi non coincidono, ovvero

(1.5)

0.2

0.4

0.6

0.8

1.0

-1

-2

-3

Figura 1.3: f (x) = ex x [1, 1] , g(t) = e1+2t

n=1

0.2

0.4

0.6

0.8

1.0

-1

-2

-3

Figura 1.4: f (x) = ex x [1, 1] , g(t) = e1+2t

n = 12

0.2

0.4

0.6

0.8

1.0

-1

-2

-3

Figura 1.5: f (x) = sin(x) x [, ] , g(t) = sin( + 2t)

n = 30

0.2

0.4

0.6

0.8

1.0

-1

-2

Figura 1.6: f (x) = |x| , x [2, 2] , g(t) = | 2 + 4t|

n = 10

0.2

0.4

0.6

0.8

1.0

-1

-2

Figura 1.7: f (x) = |x| , x [2, 2] , g(t) = | 2 + 4t|

max |x2 Bn (x)| = max |

0x1

0x1

n = 400

x(x 1)
1
|=
n
4n

Provare la (1.5) `e abbastanza semplice, si parte dal binomio di Newton


n  
X
n k nk
(p + q) =
p q
k
k=0
n

(1.6)

e si osserva banalmente che ponendo p = x e q = 1 x si ha


n  
X

n k
Bn (x) f =1 =
x (1 x)nk = (x + 1 x)n = 1
k
k=0

derivando la (1.6) rispetto a p si ha


n1

n(p + q)

n  
n  
X
X
n
n
k1 nk
=
kp q
=
kpk1 q nk
k
k
k=1
k=0

(1.7)

moltiplicando la (1.7) per p e dividendo per n si ottiene


n1

p(p + q)

n  
X
n k
k=0

k n

pk q nk

dalla (1.8) si vede facilmente che posto p = x e q = 1 x

(1.8)

n  
X

n k k

Bn (x) f =x =
x (1 x)nk = x(x + 1 x)n = x
k n
k=0

(1.9)

Derivando ulteriormente la (1.7) rispetto a p

n(n 1)(p + q)n2

n  
n  
X
X
n
n
=
k(k 1)pk2 q nk =
k(k 1)pk2 q nk (1.10)
k
k
k=2
k=0

moltiplicando per p2 entrambi i membri della (1.10) e ponendo p = x e q = 1 x si


ottiene
n  
X
n
n(n 1)x =
k(k 1)xk (1 x)nk
k
k=0
2

(1.11)

dividendo entrambi i membri della (1.11) per n2 e separando i due termini della somma
dopo aver eseguito il prodotto k(k 1) si ha
n  
n  
1X n k k
1 2 X n k2 k
nk
x (1 x)

x (1 x)nk
(1 )x =
2
k n
n
n k=0 k n
k=0

(1.12)

ora tenendo conto della (1.9) si vede che


2

n   2
X
n k
k=0

1.2

k n

xk (1 x)nk =
2

x2 x
x(x 1)
=
n
n
n

Approssimazione polinomiale uniforme o minimax

Ricordiamo che per una funzione f (x) C0 [a, b] si definisce norma uniforme o del
massimo la norma infinita
kf (x)k = max |f (x)|
axb

Vogliamo trovare, nella classe dei polinomi al pi`


u di grado n, il polinomio di migliore approssimazione uniforme. Sicuramente non pu`o essere il polinomio di Taylor perch`e, come si `e visto, non ha lerrore uniformemente distribuito e certamente non `e il polinomio
di Bernstein perch`e come visto la successione di tali polinomi non converge velocemente ad f (x). Dobbiamo pertanto definire che cosa si intende per polinomio di migliore

10

approssimazione uniforme o mini-max e poi vedere se `e anche facile determinarlo. Sia


qn (x) un generico polinomio di grado al pi`
un
qn (x) =

n
X

ak x k

k=0

definiamo come errore mini-max


n (f ) = inf kf (x) qn (x)k

(1.13)

qn (x)

Definizione 1 (Polinomio di migliore approssimazione uniforme). Si definisce polinomio di migliore approssimazione uniforme il polinomio qn? (x) tale che
kf (x) qn? (x)k = n (f )

(1.14)

Facciamo ora vedere, in un caso molto semplice, come `e possibile determinare il polinomio di migliore approssimazione uniforme utilizzando proprio la definizione.
Esempio: calcolo del polinomio di migliore approssimazione uniforme nella classe dei
polinomi di grado n 1, nellintervallo [1, 1], relativamente alla funzione f (x) = ex
3.0

2.5

2.0

1.5

1.0

0.5

-1

x1

x3

x2

Figura 1.8: Grafico di ex e q1? (x) in [1, 1]


Dal grafico si osserva che il polinomio mini-max, nella classe dei polinomi al pi`
u di grado
uno, non pu`o essere altro che un polinomio di grado uno che interseca la funzione in
11

due punti. In particolare sar`a quello in cui la differenza |ex q1 (x)| `e uguale nei punti
di ascissa 1, x3 ed 1. In tal modo si rende minima la massima distanza tra la funzione
ed il polinomio. Si ha pertanto che essendo:
1 = inf

a0 ,a1 R


max |ex a0 a1 x|

1x1

dovendo avere la pi`


u piccola massima distanza 1 in 1, x3 ed 1 si ottengono le seguenti
tre equazioni:

e1 a0 + a1 = 1

a0 + a1 x3 ex3 = 1

e a a =
0

(1.15)

Il sistema (1.15) `e un sistema non lineare di tre equazioni e quattro incognite a0 , a1 , x3


e 1 , pertanto per poterle determinare univocamente abbiamo bisogno di unulteriore
equazione. Sappiamo che la differenza tra la retta e la funzione assume il suo valore
massimo nellaperto (x1 , x2 ), esattamente nel punto x3 . Essendo la funzione differenza
derivabile in tale aperto, la derivata deve essere nulla nel punto x3 . poiche

d
q1 (x) ex = a1 ex
dx
la quarta equazione `e
a1 ex3 = 0

(1.16)

Risolvendo il sistema non lineare di quattro equazioni (1.15) + (1.16) in quattro


incognite si trova
e e1
' 1.1752
2
x3 = ln(a1 ) ' 0.1614

a1 =

1
x3
1 = e1 + (e e1 ) ' 0.2788
2
4
a0 = 1 + (1 x3 )a1 ' 1.2643
e pertanto q1? (x) = 1.2643 + 1.1752x.
A seguire riportiamo il grafico dellerrore che si commette approssimando ex con q1? (x).
Si osserva che lerrore massimo si ha nei tre punti 1, x3 ed 1 e che tale errore si annulla
in due punti appartenenti allintervallo aperto (1, 1).
Come si `e potuto notare la determinazione del polinomio di migliore approssimazione
uniforme non `e semplice e la definizione non ci permette di costruirlo se non in casi

12

0.2788

-1.0

-0.5

0.5

1.0

-0.2788

Figura 1.9: Grafico dellerrore ex q1? (x) in [1, 1]


molto particolari. Passiamo ora ad unaltra approssimazione, ritorneremo brevemente
sullapprossimazione uniforme quando parleremo di approssimazione quasi mini-max.

1.3

Approssimazione polinomiale in media quadratica o L2

Partiamo con la definizione della norma nello spazio delle funzioni f (x) : (a, b) > R
al quadrato integrabili.
Definizione 2 (Norma L2 ). Si definisce norma L2 per una funzione g(x) al quadrato
integrabile in (a, b) la
Z b
 21
2
(1.17)
|g(x)| dx
kg(x)k2 =
a

Sappiamo che la (1.17) `e una norma di funzioni al quadrato integrabili e rappresenta


una generalizzazione della norma euclidea in R2 . Per una nota funzione f (x) L2 (a, b)
ed n 0 indichiamo con
Mn (f ) = inf kf (x) rn (x)k2

(1.18)

rn (x)

dove rn (x) `e un generico polinomio di grado al pi`


u n e come abbiamo fatto per i polinomi di migliore approssimazione uniforme possiamo definire il polinomio di migliore
approssimazione in media quadratica.
Definizione 3 (Polinomio di migliore approssimazione L2 ). Si definisce polinomio di
migliore approssimazione in media quadratica della funzione f (x) L2 (a, b), tra tutti

13

i polinomi al pi`
u di grado n, il polinomio rn? (x) tale che
kf (x) rn? (x)k2 = Mn (f )

(1.19)

Pertanto se indichiamo con


n
X

rn (x) =

bk x k

k=0

un generico polinomio di grado n, per trovare il polinomio di migliore approssimazione


in media quadratica dobbiamo minimizzare la norma L2 della differenza tra la funzione
f (x) ed il polinomio rn (x) e poiche la norma `e non negativa si pu`o anche trovare il
minimo della norma al quadrato, cio`e se indichiamo con
2
Z b
n
X
k
f (x)
F (b0 , b1 , . . . , bn ) =
bk x
dx
a

k=0

dobbiamo trovare il minimo della funzione di n variabili reali b0 , b1 , . . . , bn . Sappiamo


che condizione necessaria perch`e F ammetta un estremo `e che
F (b0 , b1 , . . . , bn )
=0 ,
bi

i = 0, 1, . . . , n

(1.20)

Se effettivamente le (1.20) fossero anche sufficienti per avere il minimo basterebbe


risolvere tale sistema per ottenere i coefficienti bi , ma facciamo vedere che questo non
`e il modo pi`
u appropriato. Prendiamo (a, b) = [0, 1], in tal caso abbiamo

2
n
X
k
bk x
f (x)
dx

Z
F (b0 , b1 , . . . , bn ) =
0

(1.21)

k=0

quindi
F (b0 , b1 , . . . , bn )
= 2
bi
ed imponendo le condizioni
n
X

Z
bk

k=0

F
bi



n
X
xi f (x)
bk xk dx

k=0

= 0 , i = 0, 1, . . . , n si ottiene

i+k

xi f (x)dx ,

dx =

i = 0, 1, ..., n

ovvero
n
X
k=0

bk
=
i+k+1

xi f (x)dx ,

i = 0, 1, . . . , n

(1.22)

Come si nota il sistema lineare (1.22) ha come matrice dei coefficienti la matrice di
Hilbert di ordine n + 1 e sappiamo che linversione numerica di tale matrice `e un pro14

blema mal condizionato ed il numero di condizionamento di tale problema cresce molto


rapidamente al crescere di n. Lidea pertanto `e quella di precondizionare tale problema fornendo la rappresentazione del polinomio rn (x) non pi`
u sulla base dei monomi
{1, x, x2 , . . . } ma su unaltra base, cio`e sulla base dei polinomi ortogonali. Prima di
passare allo studio dei polinomi ortogonali si rende necessaria la generalizzazione della
norma L2 definita nella (1.17) introducendo una funzione peso w(x). Associato a tale
norma generalizzata, che indicheremo con k.k2w , avremo il problema dellapprossimazione in media quadratica con peso ovvero approssimazione nello spazio di funzioni al
quadrato integrabili rispetto alla funzione peso w(x), spazio che indicheremo con L2w .
Definizione 4 (Funzione peso). Una funzione non negativa w(x), definita in un
intervallo (a, b), che pu`o essere anche illimitato, `e definita funzione peso se
Z
1.

|x|n w(x)dx esiste ed `e finito n 0

w(x)g(x)dx = 0 per qualche funzione continua e non negativa g(x) allora

2. se
a

la funzione g(x) deve essere necessariamente nulla quasi ovunque in [a, b]


Esempi di funzione peso
A seguire riportiamo alcuni esempi di funzioni peso che permettono di definire anche
importanti famiglie di polinomi ortogonali.
w(x) = 1 x [a, b]
1
w(x) =
1 x2
w(x) = ex

w(x) = ex

x (1, 1)

x [0, +)

x (, +)

Diamo ora la definizione di prodotto scalare generalizzato e di norma due generalizzata


o con peso per funzioni reali di variabile reale.
Definizione 5 (Prodotto scalare). Sia w(x) una funzione peso ed f (x) e g(x) due
funzioni definite da (a, b) > R ed al quadrato integrabili, definiamo prodotto scalare
od interno delle due funzioni f (x) e g(x)
Z
(f, g) =

w(x)f (x)g(x)dx
a

15

(1.23)

Definizione 6 (Norma in L2w ). Sia f (x) L2w (a, b) si definisce norma generalizzata
 21

Z

kf (x)k2w =

w(x)f (x)dx

(1.24)

Si pu`o verifivare che (1.23) verifica le propriet`a di un prodotto scalare e che (1.24)
verifica le propriet`a di una norma, inoltre (1.24) `e la norma indotta dal prodotto
scalare (1.23), si ha infatti
(f, f ) = kf k22w
Diamo ora la definizione di ortogonalit`a di due funzioni f (x), g(x) L2w (a, b)
Definizione 7 (Ortogonalit`a di funzioni). Due funzioni f (x) e g(x) con f (x) =
6 g(x)
sono ortogonali se:
(f (x), g(x)) = 0
(1.25)

1.4

Polinomi ortogonali

La stessa definizione di ortogonali`a vale se f (x) e g(x) sono due polinomi. Possiamo
dire cio`e che due polinomi n (x) e m (x) sono ortogonali se
(n (x), m (x)) = 0 ,

per

n 6= m

(1.26)

Definizione 8 (Polinomi ortonormali). Si dice che due polinomi n (x) e m (x) sono
ortonormali se ortogonali e di norma unitaria, cio`e

(n (x), m (x)) = n,m

0 se n 6= m
=
1 se n = m

(1.27)

Possiamo anche dire che n (x) = n (x)/kn (x)k2w . In questi appunti per dire che
n (x) `e un polinomio che appartiene ad una famiglia di polinomi ortogonali in (a, b)
rispetto alla funzione peso w(x) useremo spesso la notazione


n (x) = (a, b), w(x)
Le quattro funzioni peso precedentemente introdotte consentono di definire quattro
importanti famiglie di polinomi ortogonali. Per tali famiglie daremo una descrizione
abbastanza sintetica. Riporteremo anche landamento dei primi polinomi di ogni famiglia, le formule compatte che li definiscono, lequazione differenziale che essi verificano
16

e la relazione di ortogonalit`a. Per la famiglia dei polinomi di Chebyshev entreremo nei


dettagli negli esercizi proposti.
Definizione 9 (Polinomi di Legendre). I polinomi di Legendre Pn (x) costituiscono una
famiglia di polinomi ortogonali in [1, 1] rispetto alla funzione peso w(x) = 1.


Pn (x) = [1, 1], w(x) = 1
Sono definiti da
1 dn 2
(1)n dn
2 n
(1

x
)
=
(x 1)n
2n n! dxn
2n n! dxn
hanno la seguente relazione di ortogonalit`a

(1.28)

Pn (x) =

Pn (x)Pm (x)dx =

(Pn , Pm ) =
1

2
2n+1

se n 6= m

(1.29)

se n = m

verificano lequazione differenziale



d
d
(1.30)
(1 x2 ) Pn (x) + n(n + 1)Pn (x) = 0
dx
dx
nel grafico che segue sono riportati il polinomi di Legendre Pn (x) , n = 1, 2, 3, 4, in
particolare P1 (x) in rosso, P2 (x) in verde, P3 (x) in celeste e P4 (x) in blu.
1.0

0.5

-1.0

-0.5

0.5

1.0

-0.5

-1.0

Figura 1.10: Polinomi di Legendre

Definizione 10 (Polinomi di Chebyshev di prima specie). I polinomi di Chebyshev di


prima specie Tn (x) costituiscono una famiglia di polinomi ortogonali in (1, 1) rispetto

17


alla funzione peso w(x) = 1/ 1 x2 .


1
Tn (x) = (1, 1), w(x) =
1 x2
Sono definiti da:
Tn (x) = cos(n arccos x)

(1.31)

hanno la seguente relazione di ortogonalit`a

(Tn , Tm ) =
1

Tn (x)Tm (x)

dx = 2

1 x2

se n 6= m
(1.32)

se n = m > 0
se n = m = 0

verificano lequazione differenziale


d2
d
T
(x)

x
Tn (x) + n2 Tn (x) = 0
(1.33)
n
2
dx
dx
A seguire vengono riportati i grafici dei polinomi di Chebyshev Tn (x) per n = 1, 2, 3, 4.
I colori sono gli stessi utilizzati per i polinomi di Legendre. Saranno utilizzati gli stessi
colori anche per i polinomi di Laguerre ed Hermite che vedremo in seguito.
(1 x2 )

1.0

0.5

-1.0

-0.5

0.5

1.0

-0.5

-1.0

Figura 1.11: Polinomi di Chebyshev

Definizione 11 (Polinomi di Laguerre). I polinomi di Laguerre Ln (x) costituiscono


una famiglia di polinomi ortogonali in [0, +) rispetto alla funzione peso w(x) = ex .


Ln (x) = [0, +), w(x) = ex
18

Sono definiti da
ex dn x n
[e x ]
n! dxn
hanno la seguente relazione di ortogonalit`a

(1.34)

Ln (x) =

Z
(Ln , Lm ) =
0

0 se n 6= m
x
Ln (x)Lm (x)e dx =
1 se n = m

(1.35)

verificano lequazione differenziale


d2
d
Ln (x) + nLn (x) = 0
(1.36)
L
(x)
+
(1

x)
n
dx2
dx
Il grafico dei polinomi di Laguerre Ln (x) per n = 1, 2, 3, 4 `e riportato nella figura che
segue.
x

30
20
10

10

-10
-20
-30

Figura 1.12: Polinomi di Laguerre

Definizione 12 (Polinomi di Hermite). I polinomi di Hermite Hn (x) costituiscono una


2
famiglia di polinomi ortogonali in (, +) rispetto alla funzione peso w(x) = ex .

2
Hn (x) = (, +), w(x) = ex
Sono definiti da
dn x2
Hn (x) = (1) e
[e ]
dxn
hanno la seguente relazione di ortogonalit`a
n x2

19

(1.37)

Hn (x)Hm (x)ex dx =

(Hn , Hm ) =

se n 6= m

2n n!

se n = m

(1.38)

verificano lequazione differenziale


d2
d
Hn (x) + 2nHn (x) = 0
(1.39)
H
(x)

2x
n
dx2
dx
Il grafico dei polinomi di Hermite Hn (x) per n = 1, 2, 3, 4 `e riportato nella figura che
segue.

20

10

-4

-2

-10

-20

Figura 1.13: Polinomi di Hermite


Una prima considerazione che possiamo fare, guardando i grafici delle varie famiglie
di polinomi ortogonali fino a qui descritte,`e che ogni polinomio di grado n ammette
sempre n radici reali nellintervallo aperto di ortogonalit`a. Ovviamente le famiglie di
polinomi ortogonali fino a qui descritte non sono le uniche esistenti infatti esiste il
seguente teorema sullortogonali`a dovuto a Gram-Schmidt.
Teorema 3 (Teorema di Gram-Schmidt). Dato un intervallo (a, b) ed una funzione
peso w(x) definita in tale intervallo `e sempre possibile costruire una famiglia di polinomi


n (x) nN ortogonali in (a, b) rispetto alla funzione peso w(x).
Se si sceglie il segno della potenza di grado massimo del polinomio e si richiede che la
famiglia di polinomi risulti ortonormale allora tale famiglia `e anche unica.
Dimostrazione. Il polinomio di grado zero della famiglia `e ovviamente costante, cio`e
0 (x) = c
se imponiamo che risulti ortonormale deve essere di norma unitaria e pertanto
20

0 (x)0 (x)w(x)dx = c

(0 , 0 ) =

w(x)dx = 1
a

da cui
c= 

1
Rb
a

 12
w(x)dx

se scegliamo il segno positivo. Costruiamo ora il polinomio di grado uno che `e ortogonale a 0 (x), scegliendo il segno positivo per la potenza di grado massimo. Cio`e
prendiamo
1 (x) = x a10 0 (x)
si vuole che 1 (x) risulti ortogonale a 0 (x) e quindi

(1 , 0 ) = (xa10 0 (x), 0 (x)) = (x, 0 (x))a10 (0 (x), 0 (x)) = 0 a10 = (x, 0 (x))
poiche la famiglia di polinomi la vogliamo ortonormale anche il polinomio di grado uno
della famiglia deve essere di norma unitaria, prendiamo allora come polinomio di grado
uno della famiglia il polinomio 1 (x) dato da
1 (x) =

1 (x)
k1 (x)k2w

ovviamente 1 (x) `e ortogonale a 0 (x) ed inoltre k1 (x)k2w = 1.


Procedendo allo stesso modo
n

n (x) = x

n1
X

ank k (x)

k=0

moltiplicando tale ultima relazione per i (x) , i = 0, 1, . . . , n 1 ed imponendo che


n (x) risulti ortogonale ai i (x) , i = 0, 1, . . . , n 1, abbiamo

(n (x), i (x)) = (x , i (x))

n1
X

ank (k (x), i (x)) = 0 ,

i = 0, 1, . . . , n 1

k=0

Essendo i polinomi i (x) i = 0, 1, . . . , n 1 ortonormali tra loro per costruzione si


ottiene
ani = (xn , i (x)) ,
21

i = 0, 1, . . . , n 1

n (x) =

n (x)
kn (x)k2w

Il teorema di Gram-Schmidt ci permette di osservare che un generico polinomio pn (x)


pu`o sempre essere rappresentato anche come combinazione di polinomi ortogonali o
ortonormali. Abbiamo infatti che il monomio xn , dal teorema di Gram-Schmidt, si
pu`o esprimere come combinazione di polinomi ortogonali e pertanto anche la combinazione dei monomi 1, x, , xn . Quindi il polinomio pn (x) pu`o avere le seguenti
rappresentazioni
pn (x) =

n
X
k=0

1.5

ak x =

n
X

bk k (x) =

k=0

n
X

ck k (x)

k=0

Propriet`
a dei polinomi ortogonali



Propriet`
a 1. Un polinomio di grado n, n (x) = (a, b), w(x) `e ortogonale ad un
qualunque polinomio di grado pi`
u basso.
Dimostrazione. Provare questa propriet`a `e molto semplice. Se prendiamo un generico
polinomio pm (x) di grado m, con m < n, da come detto alla fine del precedente
paragrafo, esso pu`o essere srcitto come combinazione di polinomi ortogonali
pm (x) =

m
X

bk k (x)

(1.40)

k=0

se si moltiplica scalarmente la (1.40) per n (x), sfruttando le propriet`a del prodotto


scalare, abbiamo
(pm (x), n (x)) =

m
X

bk (k (x), n (x))

k=0

e poiche k 6= n per k = 0, . . . , m, in quanto si `e supposto m < n, il prodotto scalare


(k (x), n (x)) = 0 , k = 0, . . . m, da cui (pm (x), n (x)) = 0, cio`e il generico polinomio


pm (x) `e ortogonale al polinomio n (x) = (a, b), w(x) se m < n.


Propriet`
a 2. [Zeri di polinomi ortogonali] Il polinomio n (x) = (a, b), w(x) , di
grado n, ammette sempre n zeri reali e distinti appartenenti allintervallo aperto (a, b).
Dimostrazione. La dimostrazione di tale propriet`a `e fatta utilizando un procedimento
per assurdo. Supponiamo che x1 , . . . , xm siano tutte le radici del polinomio n (x), con
22

molteplicit`a h1 , . . . , hm dispari, contenute nellaperto (a, b), con h1 + + hm = s < n.


Nellipotesi assunta `e compreso anche il caso in cui h1 + + hm = 0, cio`e non abbiamo
alcuna radice di molteplicit`a dispari nellaperto (a, b). Costruiamo il polinomio
B(x) = (x x1 )(x x2 ) (x xm )
Ricordiamo che se x1 , .., xm sono radici del polinomio n (x), con molteplicit`a h1 , h2 , .., hm ,
possiamo scrivere il polinomio n (x) nel seguente modo:
n (x) = (x x1 )h1 (x x2 )h2 (x xm )hm q(x)
dove q(x)`e un polinomio di grado n s che non cambia segno in (a, b) in quanto tutti
gli zeri dove cambia segno sono stati isolati. Analizziamo ora il seguente integrale
b

B(x)n (x)w(x)dx

I=
a

essendo I = (B(x), n (x)), per le ipotesi assunte, poiche il grado del polinomio B(x) `e
minore di n, per la propriet`a 1, esso `e ortogonale a n (x) e quindi I = 0.
La funzione integranda dellintegrale I pu`o anche essere letta in un altro modo, infatti
B(x)n (x) = (x x1 )h1 +1 (x x2 )h2 +1 (x xm )hm +1 q(x) = h(x)
tale funzione h(x)`e una funzione che non cambia segno in (a, b) in quanto h1 +1, . . . , hm +
1 sono interi pari e q(x) `e un polinomio che non cambia segno in (a, b), quindi
Z

h(x)w(x)dx 6= 0

I=
a

In tal modo siamo giunti ad un assurdo e pertanto lipotesi che si era fatta di s < n
non `e possibile. Allora deve essere necessariamente s n. Ora s > n non `e possibile
in quanto sarebbe contraddetto il teorema fondamentale sulle radici di polinomi e
quindi deve risultare s = n, inoltre non pu`o essere m < n in quanto rimarrebbe la
contraddizione e pertanto s = m = n ma ci`o implica che tutte le radici sono reali
semplici ed appartenenti allaperto (a, b)


Abbiamo provato che un polinomio n (x) = (a, b), w(x) ammette n zeri semplici
in (a, b). Se indichiamo con x1 , x2 . . . , xn tali radici il polinomio n (x) si pu`o scrivere:
n (x) = An (x x1 )(x x2 ) (x xn ) = An

n
Y

(x xk )

k=1

23

(1.41)

dove An `e il coefficiente della potenza di grado massimo del polinomio n (x). Per
comodit`a di lettura delle formule che seguono indichiamo lo stesso polinomio anche
nella forma
n (x) = An xn + Bn xn1 + . . .
inoltre indichiamo con an =

An+1
An

(1.42)

e con n = (n (x), n (x))

Propriet`
a 3. [Relazione di triplice ricorsione] Per ogni famiglia di polinomi ortogonali
vale sempre la seguente relazione di triplice ricorsione:
n+1 (x) = (an x + bn )n (x) + bn1 n1 (x)
dove:


b n = an
bn1 =

Bn+1 Bn

An+1 An

(1.43)


(1.44)

An+1 An1 n
A2n
n1

(1.45)

Dimostrazione. Provare che vale la relazione (1.43) `e abbastanza semplice, pi`


u laboriosa
nei passaggi algebrici `e la determinazione delle costanti bn e bn1 che saranno lasciate
come esercizi.
Introduciamo la seguente funzione:
G(x) = n+1 (x) an xn (x)
si nota che G(x) `e un polinomio di grado n, infatti

n+1 (x) an xn (x) = An+1 xn+1 + Bn+1 xn +


An+1 
x An xn + Bn xn1 + . . .
An

e come si pu`o vedere il coefficiente della potenza xn+1 si annulla. Scrivendo G(x) come
n
X
combinazione di polinomi ortogonali, G(x) =
bk k (x), abbiamo
k=0
n
X

bk k (x) = n+1 (x) an xn (x)

(1.46)

k=0

moltiplicando scalarmente ambo i membri della (1.46) per i (x) ed utilizzando le


propriet`a del prodotto scalare si ha
n
X

bk (k (x), i (x)) = (n+1 (x), i (x)) an (xk (x), i (x))

k=0

essendo i ortogonale a k , per k 6= i, (k , i ) = 0, pertanto


24

(1.47)

bi =


1
(n+1 (x), i (x)) an (xn (x), i (x))
i

(1.48)

ora se si fa variare i = 0, 1, . . . , n, ricordando che (xn (x), i (x)) = (n (x), xi (x)),


troviamo
bi = 0 ,

i = 0, 1, . . . , n 2

e allora dalla (1.46) abbiamo


n+1 (x) an xn (x) = bn1 n1 (x) + bn n (x)
da cui segue la (1.43).
Le costanti bn e bn1 sono date da
bn =

bn1 =

1.6

an
(n (x), xn (x))
n

an
(n (x), xn1 (x))
n1

(1.49)

(1.50)

Approssimazione polinomiale in L2w

In questo paragrafo torniamo sul polinomio di migliore approssimazione in media quadratica considerando il problema generalizzato, cio`e per funzioni f (x) L2w (a, b). Vogliamo trovare quel polinomio rn (x) che minimizza la kf (x) rn (x)k2w o equivalentemente kf (x) rn (x)k22w , essendo la norma un numero non negativo . Abbiamo gi`a
osservato che un generico polinomio pu`o essere scritto anche come combinazione lineare
di polinomi ortogonali o ortonormali, per semplicit`a scriviamo rn (x) come combinazione
di polinomi ortonormali
rn (x) =

n
X



ck k (x) , k (x) = (a, b), w(x) : kk (x)k2w = 1

(1.51)

k=0

dobbiamo pertanto minimizzare

kf (x)

rn (x)k22w

Z
=
a

n
X

2
w(x) f (x)
ck k (x) dx = G(c0 , c1 , . . . , cn )
k=0

25

(1.52)

Come gi`a precedentemente osservato si potrebbe imporre la condizione necessaria


perch`e la funzione G ammetta un estremo e poi verificare che questo estremo `e proprio
il minimo di G. Lasciamo la prima parte di questo procedimento come esercizio. Per
trovare il minimo utilizzeremo un altro procedimento che `e molto semplice e ci fornisce
un risultato completo.
0 kf (x)

rn (x)k22w

= f (x)

n
X

ck k (x), f (x)

k=0

n
X


ck k (x) =

k=0

n
n X
n
X

 X

= f (x), f (x) 2
ck f (x), k (x) +
ck cj k (x), j (x) =
k=0 j=0

k=0

kf (x)k22w

n
X

n
 X
ck f (x), k (x) +
c2k

k=0

sommando e sottraendo
kf (x)k22w

Pn

k=0

n
X

k=0

2
f (x), k (x) , nellultima espressione, si ottiene

n
2 X

2
f (x), k (x) +
ck f (x), k (x)
0

k=0

(1.53)

k=0

Lespressione in (1.53) assume il minimo valore se tutti i termini che dipendono dai ck
sono nulli, cio`e se i coefficienti ck sono dati da
ck = f (x), k (x)

(1.54)

ovvero, se i coefficienti ck sono proprio i coeffiecienti di Fourier. Possiamo quindi


concludere che lapprossimazione polinomiale in media quadratica di una funzione f (x)
esiste `e unica ed `e data da:
rn? (x)

n
X


f (x), k (x) k (x)

(1.55)

k=0

Se i coefficienti ck sono dati dalla (1.54), allora da (1.53) si ottiene


kf (x)k22w

n
X

2
f (x), k (x) = krn? (x)k22w

k=0

la (1.56) `e anche nota come disuguaglianza di Bessel

26

(1.56)

1.7

Approssimazione polinomiale quasi uniforme

Nel paragrafo 1.2 si `e vista la difficolt`a della determinazione del polinomio di migliore
approssimazione uniforme. In questo paragrafo mostreremo che si pu`o determinare
molto pi`
u facilmente un polinomio che si avvicina di molto al polinomio di migliore
approssimazione mini-max.
Va osservato innanzi tutto che il polinomio di migliore approssimazione uniforme va
determinato per funzioni continue in un intervallo chiuso e limitato [a, b] R e che
pertanto anche lapprossimazione in media quadratica pu`o essere fatta per tali funzioni,
essendo esse anche al quadrato integrabili in [a, b] rispetto a qualunque funzione peso
w(x). Altra osservazione `e che qualunque intervallo chiuso e limitato [a, b] pu`o essere
ricondotto allintervallo [1, 1] utilizzando la seguente trasformazione
a+b ba
+
t
(1.57)
2
2
si vede infatti che per t [1, 1], x [a, b]. Senza quindi perdere di generalit`a
possiamo prendere in considerazione il polinomio di migliore approssimazione in media
quadratica in [1, 1] fatta utilizzando sia i polinomi di Legendre che i polinomi di
Chebyscev e poi stimare la distanza in norma uniforme dalla funzione f (x). Ricordiamo
che nel paragrafo 1.2 si `e calcolato il polinomio di migliore approssimazione uniforme,
nella classe dei polinomi al pi`
u di grado uno, per la funzione ex nellintervallo [1, 1].
Calcoliamo anche tale polinomio, di grado uno, utilizzando lapprossimazione in L2w

prendendo come funzione peso sia w(x) = 1 sia w(x) = 1/ 1 x2 . Indichiamo tali
polinomi con R1? (x) e C1? (x) rispettivamente. Si trova
x=

R1? (x) = 1.1752 + 1.1036x

(1.58)

C1? (x) = 1.266 + 1.130x

(1.59)

Nella figura che segue riportiamo i grafici degli errori El1 = ex R1? (x) in rosso,
Ec1 = ex C1? (x) in blu e dellerrore commesso utilizzando il polinomio di migliore
approssimazione uniforme Eu1 = ex q1? (x) in nero.
Si nota che lerrore commesso utilizzando il polinomio C1? (x) `e molto simile allerrore che si commette utilizzando il polinomio di migliore approssimazione uniforme
q1? (x) ed in particolare si ha che kex q1? (x)k = 0.2788, kex R1? (x)k = 0.439 e
kex C1? (x)k = 0.32. Possiamo quindi dire che lapprossimazione in media quadratica

rispetto alla funzione peso w(x) = 1/ 1 x2 nellintervallo [1, 1] `e unapprossimazione che si avvicina molto a quella uniforme ed in particolare i valori massimi dellerrore
assoluto sono abbastanza vicini. Una serie di teoremi, che qui non riportiamo, hanno
27

0.439
0.32
0.2788

-1.0

-0.5

0.5

1.0

Figura 1.14: Errori El1 , Ec1 , Eu1


consentito di raffinare ulteriormente tale polinomio di quasi migliore approssimazione
uniforme. Si `e infatti provato che, nellintervallo [1, 1], il polinomio di grado n che pi`
u
si avvicina al polinomio di grado n di migliore approssimazione uniforme `e il polinomio,
costruito sulla base dei polinomi di Chebyshev, che ha la stessa distanza dalla funzione
nei punti in cui il polinomio di Chebyshev di grado n + 1, in valore assoluto, assume i
suoi valori massimi, cio`e dove
|Tn+1 (x)| = | cos((n + 1) arccos x)| = 1
e pertanto i punti sono dati da:
xj = cos

j 
n+1

j = 0, 1, . . . , n + 1

(1.60)

Vale infatti il seguente teorema


Teorema 4 (Oscillazioni forzate). Sia f (x) C 0 [1, 1], definiamo con:
Fn (x) =

n
X

cnk Tk (x)

(1.61)

k=0

Il polinomio di quasi migliore approssimazione uniforme per la funzione f (x) `e il polinomio Fn (x) che assume lo stesso errore assoluto En negli n + 2 punti xj in cui
|Tn+1 (x)| assume il valore massimo, pi`
u in particolare `e il polinomio Fn (x) che ha le
seguenti oscillazioni forzate:
f (xj ) Fn (xj ) = (1)j En

28

j = 0, 1, . . . .n + 1

dove gli xj sono dati dalla (1.60).


Utilizzando tale teorema si pu`o facilmente costruire il polinomio F1 (x) relativo alla
funzione ex nellintervallo [1, 1]:
F1 (x) = 1.2715 + 1.1752x

(1.62)

ed abbiamo che kex F1 (x)k = 0.286


In figura si vede molto chiaramente come lerrore commesso nellapprossimare ex con il
polinomio di primo grado, ottenuto utilizzando il teorema delle oscillazioni forzate, (in
rosso) ed il polinomio di primo grado di migliore approssimazione uniforme (in nero),
sia sostanzialmente identico.
0.2788

-1.0

-0.5

0.5

-0.286

Figura 1.15: Errori ex q1? (x) e ex F1 (x)

29

1.0

1.8

Esercizi proposti

Esercizio 1. Provare che la funzione ln(1/x) `e una funzione peso nellintervallo (0, 1).
Esercizio 2. Utilizzando il teorema di Gram costruire il primi due polinomi ortonormali in (0, 1) rispetto alla funzione peso ln(1/x).
Esercizio 3. Utilizzando le definizioni (1.28), (1.31), (1.34) ed (1.37) dire quali sono
i primi tre polinomi appartenenti alle quattro famiglie di polinomi ortogonali.
Esercizio 4. Utilizzando lequazione differenziale (1.30), verificata dai polinomi di
Legendre, provare che il prodotto scalare (Pn (x), Pm (x)) = 0 se n 6= m.
Esercizio 5. Utilizzando la definizione (1.28), relativa ai polinomi di Legendre, provare che il prodotto scalare (Pn (x), Pn (x)) = 2/(2n + 1)
Esercizio 6. Utilizzando lequazione differenziale (1.36), verificata dai polinomi di
Laguerre, provare che il prodotto scalare (Ln (x), Lm (x)) = 0 se n 6= m.
Esercizio 7. Utilizzando la definizione (1.31) provare che vale la relazione di ortogonalit`a per i polinomi di Chebyshev di prima specie definita nella (1.32).
Esercizio 8. Utilizzando la definizione (1.31) provare che vale la seguente relazione
di triplice ricorsione
Tn+1 (x) = 2xTn (x) Tn1 (x)
Esercizio 9. Utilizzando la definizione (1.31) provare che il polinomio di Chebyshev
di grado n, Tn (x), ammette n zeri reali e distinti tutti appartenenti allintervallo aperto
(1, 1).
Esercizio 10. Ricordando che an = An+1
dove An `e il coefficiente della potenza di
An


grado massimo di n (x) = (a, b)), w(x) , n = (n (x), n (x)), utilizzando la legge
di triplice ricorsione (1.43) , provare che vale la seguente identit`a, nota come identit`a
di Christoffel-Darboux
n

n+1 (x)n (y) n (x)n+1 (y) X k (x)k (y)


=
, x 6= y
an n (x y)

k
k=0
Esercizio 11. Utilizzando la forma (1.42) per la scrittura del polinomio n (x) e
le definizioni date in (1.49) e (1.50) provare che i coefficienti bn e bn1 , relativi alla
relazione di triplice ricorsione, assumono esattamente i valori dati nelle (1.44) e (1.45).
Esercizio 12. Provare che se il polinomio di grado n si scrive come combinazione di
polinomi ortonormali, imponendo la condizione necessaria per uno estremo data dalla
(1.20), si ottiene che il polinomio di migliore approssimazione in media quadratica `e
quello i cui coefficienti sono proprio i coefficienti di Fourier.
30

Esercizio 13. Provare che il polinomio di primo grado, di migliore approssimazione in


media quadratica rispetto alla funzione peso w(x) = 1 per la funzione ex nellintervallo
[1, 1] `e dato dalla (1.58)
Esercizio 14. Utilizzando il teorema delle oscillazioni forzate, provare che il polinomio di primo grado F1 (x), di quasi migliore approssimazione uniforme per la funzione
ex nellintervallo [1, 1] `e dato dalla (1.62)
Esercizio 15. Sia f (x) C 2 [a, b] con f 00 (x) > 0 in [a, b]. Se q1? (x) = a0 + a1 x `e il
polinomio lineare di migliore approssimazione uniforme per la f (x) in [a.b], provare che
f (b) f (a)
a0 =
ba

f (b) + f (c)
a1 =

b+c
2



f (b) f (a)
ba

dove c `e la soluzione dellequazione f 0 (c) = (f (b) f (a))/(b a)


1 = kf (x)

q1? (x)k

f (b) f (c)

=
2

31

bc
2



f (b) f (a)
ba

Capitolo 2
INTEGRAZIONE NUMERICA

2.1

Introduzione

I metodi numerici per il calcolo approssimato di integrali per funzioni f (x) : [a, b] R
sono anche detti formule di quadratura. Le formule di quadratura pi`
u importanti sono
le formule di quadratura di Newton Cotes di tipo aperto e di tipo chiuso e le formule
di quadratura di Gauss. Nelle formule di quadratura di Newton Cotes la funzione
integranda viene approssimata con il polinomio interpolante di Lagrange in punti xj ,
detti anche punti nodali, uniformemente distribuiti nellintervallo [a, b]. Se tali punti
contengono entrambi gli estremi dellintevallo di integrazione allora sono dette chiuse
altrimenti, se non contengono gli estremi, sono dette di tipo aperto. In particolare in
quelle di tipo chiuso si approssima la funzione integranda con il polinomio interpolante
pn (x) nei punti xi = x0 + ih , i = 0, 1, . . . , n con h = (b a)/n ed x0 = a. Nelle
formule di tipo aperto si approssima la f (x) con il polinomio interpolante pn (x) nei
punti xi = x0 + ih , i = 1, 2, . . . , n + 1 con h = (b a)/(n + 2) ed x0 = a. Le
formule di quadratura di Gauss approssimano la funzione integranda con il polinomio
interpolante di Hermite in punti xj che sono gli zeri di particolari famiglie di polinomi
ortogonali. A seconda della famiglia di polinomi le formule prendono il doppio nome,
come ad esempio, Gauss-Chebychev, Gauss-Legendre, Gauss-Laguerre etc. In queste
dispense non affronteremo le formule di quadratura di Newton-Cotes in generale ma
vedremo alcune di esse. In particolare la formula di quadratura dei rettangoli nel punto
di mezzo di tipo aperto e le formule di quadratura dei trapezi e di Cavalieri-Simpson
che sono di tipo chiuso. In questa introduzione comunque diamo una definizione pi`
u
rigorosa di quanto sopra detto relativamente alle formule di quadratura di NewtonCotes di tipo chiuso. Presi i punti xj = x0 + j 4 x , j = 0, 1, . . . , m con x0 = a ed
4x = (b a)/m ci possiamo costruire il polinomio di grado m, pm (x), che interpola la
funzione integranda f (x) nei punti (xj , f (xj )) , j = 0, 1, . . . , m dato da

32


m Y
m
X
x xj
pm (x) =
f (xi )
x

x
i
j
j=0
i=0

(2.1)

j6=i

Sappiamo anche lerrore commesso in un generico punto x se la funzione f (x)


Cm+1 [a, b]. Tale errore espresso sotto forma di differenze divise `e dato da
m
Y
Rm (x) = f (x) pm (x) = f [x0 , x1 , . . . , xm , x] (x xj )

(2.2)

j=0

sappiamo che f (x) = pm (x) + Rm (x) pertanto possiamo scrivere che


Z

Z
a

Rm (x)dx = Im (f ) + Em (f )

pm (x)dx +

f (x)dx =

I(f ) =

dove:
Z
Im (f ) =

Z
pm (x)dx

Em (f ) =

Rm (x)dx
a

Il termine Im (f ) rappresenta la formula generica di Newton-Cotes di tipo chiuso mentre


Em (f ) lerrore che si commette.
Nella parte finale del capitolo analizzeremo anche metodi che ci consentono di affrontare
integrali singolari, sia impropri che generalizzati. In particolare vedremo le formule
adattative o adattive, il trattamento analitico delle sigolarit`a, il cambio di variabile
di integrazione e le formule prodotto di integrazione. Prima di passare a trattare in
dettaglio i vari argomenti diamo una definizione importante.
Definizione 13 (Grado di precisione di una formula di quadratura). Diciamo che
una formula di quadratura Im (f ) ha grado di precisione m se `e esatta per qualunque
polinomio qm (x) al pi`
u di grado m, cio`e se
1.

Im (f ) = I(f ) per tutti i polinomi f (x) di grado m

2.

Im (f ) 6= I(f ) per qualche polinomio f (x) di grado m + 1

Tale definizione, come vedremo quando si affronter`a le formule di quadratura di Gauss,


ci potrebbe consentire, utilizzando la tecnica dei coefficienti indeterminati, di derivare
le formule di quadratura. Un altra definizione molto importante `e quella relativa alla
stima asintotica dellerrore.
Definizione 14 (Stima asintotica dellerrore). Sia En (f ) la formula esatta dellerrore
e En (f ) una sua approssimazione. Diremo che En (f ) `e una stima asintotica dellerrore
se
En (f )
=1
n En (f )
lim

33

(2.3)

Utilizzeremo tale definizione per dare una stima asintotica dellerrore nelle formule
generalizzate dei trapezi e di Simpson.

2.2

La formula di quadratura dei trapezi

La formula di quadratura dei trapezi fa parte delle formule di Newton-Cotes di tipo


chiuso, in particolare si approssima la funzione integranda con il polinomio di primo
grado p1 (x) che interpola la funzione integranda nei punti (a, f (a)) e (b, f (b)). Abbiamo
quindi:
Z

Z
a

R1 (x)dx = I1 (f ) + E1 (f )

p1 (x)dx +

f (x)dx =

I(f ) =
dove in particolare

xa
xb
f (b) +
f (a)]dx
ba
ab

I1 (f ) =

(x a)(x b)f [a, b, x]dx

E1 (f ) =
a

Il valore approssimato dellintegrale I1 (f ) rappresenta larea del trapezio di base b a


ed altezze f (a) ed f (b) che `e evidenziato in figura.
Nellipotesi in cui la funzione f (x) C2 [a, b] si prova che

y=f HxL

f HbL

y=p1HxL

f HaL

Figura 2.1: Illustrazione del metodo dei trapezi

34

I1 (f ) = (b a)(f (a) + f (b))/2

(2.4)

(b a)3 00
E1 (f ) =
f () , [a, b]
(2.5)
12
La (2.4) `e proprio larea del trapezio e la stessa formula si ottiene se si calcola lintegrale
I1 (f ). Per derivare la formula dellerrore E1 (f ) dobbiamo ricorrere alla generalizzazione del teorema della media integrale. Infatti nellintegrale di E1 (f ) abbiamo che la
funzione (x a)(x b) non cambia segno in [a, b] mentre, per lipotesi fatta su f (x),
la differenza divisa f [a, b, x] `e una funzione continua in quanto la differenza divisa del
secondo ordine `e legata alla derivata seconda della funzione. Si ha pertanto
Z

(x a)(x b)dx =

(x a)(x b)f [a, b, x]dx = f [a, b, x ]

E1 (f ) =

f 00 ()
=
2

(x a)(x b)dx =
a

(b a)3 00
f () , [a, b]
12

Come si osserva dalla formua dellerrore la formula di quadratura dei trapezi ha grado di precisione uno, infatti, avendo nella formula la derivata seconda della funzione
integranda, lerrore `e nullo se la funzione integranda `e un polinomio di grado non superiore ad uno. Altra considerazione che possiamo fare dalla formula dellerrore `e che se
lampiezza dellintervallo [a, b] non `e piccola lerrore potrebbe essere grande. Pertanto,
sfruttando ladditivit`a degli integrali, possiamo passare alla formula composita o generalizzata dei trapezi. Se suddividiamo lintervallo [a, b] in n sotto intervalli di uguale
ampezza h = (b a)/n ed indichiamo gli estremi di tali sotto intervalli con xi = ih
S
dove x0 = a abbiamo: [a, b] = n1
i=0 [xi , xi+1 ] e pertanto
Z
I(f ) =

f (x)dx =
a

n1 Z
X
i=0

xi+1

f (x)dx

xi

se ora ad ogni singolo integrale nella somma applichiamo la formula dei trapezi si
ottiene
Z

xi+1

f (x)dx =
xi

h
h3
(f (xi ) + f (xi+1 ) f 00 (i ) ,
2
12

i [xi , xi+1 ]

pertanto
I(f ) =

n1
X
h
i=0

(f (xi ) + f (xi+1 )


h3 00
f (i )
12

Indichiamo la formula generalizzata dei trapezi con I1n (f ) e lerrore commesso con
E1n (f ).
35



n1
n1
hX
f (a) + f (b) X
I1n (f ) =
+
[f (xi ) + f (xi+1 )] = h
f (xi )
2 i=0
2
i=1

(2.6)

n1

h3 X 00
f (i ) ,
E1n (f ) =
12 i=0

i [xi , xi+1 ]

(2.7)

Ulteriori considerazioni possono essere fatte sulla formula dellerrore (2.7). Essendo,
per ipotesi, la derivata seconda di f (x) una funzione continua, quindi una funzione che
assume tutti i valori compresi tra il valore minimo ed il valore massimo in [a, b], si ha
Pn1 00
f (i ), essendo la
che sicuramente esiste un punto [a, b] tale che f 00 () = n1 i=0
media aritmetica di n valori di f 00 (x) una quantit`a certamente compresa tra il massimo
ed il minimo di f 00 (x) in [a, b]. Pertanto
 n1

nh3 1 X 00
(b a)h2 00
E1n (f ) =
f (i ) =
f () , [a, b]
12 n i=0
12
P
00
e una somma di RieImportante la stima asintotica dellerrore. poiche h n1
i=0 f (i ) `
mann fatta su n valori della derivata seconda nellintervallo [a, b], si ha che, essendo
f 00 (x) continua
 X
 Z b
n1
00
lim h
f (i ) =
f 00 (x)dx = f 0 (b) f 0 (a)

i=0

ed allora la stima asintotica dellerrore E1n (f ) `e data da


2

h
E1n (f ) = [f 0 (b) f 0 (a)]
12
` facile vedere che `e verificata la definizione (2.3). A seguire faremo vedere con un
E
esempio sia il tipo di convergenza che si ha utilizzando la formula generalizzata dei trapezi sia landamento della stima asintotica dellerrore. Prendiamo in esame il seguente
integrale
Z
0

e + 1
ex
= 12.07033
sin(x)e dx = [sin(x) cos(x)] 0 =
2
2
x

(2.8)

Nella tabella che segue riportiamo, al variare di n, il valore approssimato dellintegrale


I1n (f ) lerrore esatto commesso dato come differenza tra il valore esatto dellintegrale
ed il valore approsssimato, che indichiamo con Enes (f ), la stima asintotica dellerrore
E1n (f ) e la differenza tra il valore esatto dellerrore e la sua stima asintotica.
Come si pu`o notare dalla tabella la convergenza di I1n (f ) al valore esatto non `e molto
soddisfacente mentre la convergenza della stima asintotica dellerrore al valore vero

36

Tabella 2.1: Regola dei trapezi per il calcolo di (2.8)


n
4
8
16
32
64
128

I1n
10.8557
11.7617
11.9929
12.0510
12.0510
12.0691

Enes (f )
1.21460
0.30863
0.07746
0.01938
0.00485
0.00121

E1n (f ) Enes (f ) E1n (f )


1.24093
-0.026241
0.31023
-0.001606
0.07756
-0.000099
0.01939
-6.2106
0.00485
-3.8107
0.00121
-2.4108

I1n (f )
12.0966
12.0720
12.0704
12.0703
12.0703
12.0703

`e molto rapida. Questa osservazione ci consente di poter modificare la formula dei


trapezi generalizzata nel seguente modo:



n1
X
h2
f
(a)
+
f
(b)
+
f (xi ) [f 0 (b) f 0 (a)]
I1n (f ) = I1n (f ) + E1n (f ) = h
2
12
i=1

(2.9)

Il valore di I1n `e riportato nella tabella precedente e si vede che la formula modificata
migliora sensibilmente.

2.3

La formula di quadratura di Cavalieri Simpson

La formula di quadratura di Cavalieri-Simpson fa parte delle formule di Newton-Cotes


di tipo chiuso, in particolare si approssima la funzione integranda con il polinomio di
secondo grado p2 (x) che interpola la funzione integranda nei punti (a, f (a)), (b, f (b))
e (c, f (c)) con c = (a + b)/2. Abbiamo quindi
b

Z
I(f ) =

Z
f (x)dx =

R2 (x)dx = I2 (f ) + E2 (f )

p2 (x)dx +
a

con

Z b
I2 (f ) =
a


(x c)(x b)
(x a)(x b)
(x a)(x c)
f (a) +
f (c) +
f (b) dx
(a c)(a b)
(c a)(c b)
(b a)(b c)
Z

(x a)(x c)(x b)f [a, c, b, x]dx

E2 (f ) =
a

Il valore approssimato dellintegrale I2 (f ) rappresenta larea della regione sottesa alla


parabola, evidenziata in figura. Se nellintegrale di I2 (f ) utlizziamo il seguente cambio

37

y
y=f HxL

f HcL
f HaL

y=p2HxL

f HbL

Figura 2.2: Illustrazione del metodo di Simpson


di variabile xc = th con h = (ba)/2 si ha che per x = a , t = 1 e per x = b , t = 1
inoltre x a = h(t + 1) e x b = h(t 1) e pertanto

h
I2 (f ) = f (a)
2

h
t(t + 1)dt hf (c)
(t + 1)(t 1)dt + f (b)
2
1
1

(t + 1)tdt
1

e quindi
h
ba
[f (a) + 4f (c) + f (b)] =
[f (a) + 4f (c) + f (b)]
(2.10)
3
6
Per il calcolo di E2 (f ), nellipotesi in cui la funzione f (x) C4 [a, b] si ha che f [a, c, b, x]
`e una funzione continua ma la funzione che la moltiplica cambia segno in [a, b] quindi
non `e applicabile il teorema della media integrale immediatamente. Si procede allora
Rx
nel seguente modo. Introduciamo la funzione integrale (x) = a (t a)(t c)(t b)dt.
Si osserva che (a) = (b) = 0, che (x) non cambia segno per x [a, b] ed inoltre la
sua derivata prima `e 0 (x) = (x a)(x c)(x b). Possiamo allora riscrivere E2 (f ) ed
integrando per parti abbiamo
I2 (f ) =

Z
E2 (f ) =
a


Z b

 b
(x)f [a, c, b, x]dx = (x)f [a, c, b, x]
(x)f [a, c, b, x, x]dx
0

e poiche i termini di bordo si annullano per le propriet`a di

38

t=b

b
x=a

x=b

t=x

T
a

t=a

x=b

x=t

t=a

Figura 2.3: Dominio di integrazione

Z
E2 (f ) =

(x)f [a, c, b, x, x]dx


a

ora la funzione integranda `e formata dalla funzione (x), che non cambia segno in [a, b]
e dalla differenza divisa del quarto ordine f [a, c, b, x, x] che nellipotesi assunte per f (x)
`e una funzione continua. Possiamo applicare quindi il teorema della media integrale e
si ha:

Z
E2 (f ) = f [a, c, b, x , x ]
a

f (4) ()
(x)dx =
4!

(t a)(t c)(t b)dt

dx
a

Dobbiamo ora calcolare lintegrale doppio.


Come si nota dalla figura il dominio di integrazione `e il triangolo T opportunamente
evidenziato. Abbiamo quindi che il dominio `e normale ad entrambi gli assi e pertanto
possiamo applicare il teorema di Fubini invertendo lordine di integrazione. In figura si
vede come cambiano i limiti dintegrazione se invece di considerare il dominio normale
rispetto allasse x lo si considera normale rispetto allasse t.

f (4) ()
E2 (f ) =
4!

Z
dt

f (4) ()
(ta)(tc)(tb)dx =
4!

(bt)(ta)(tc)(tb)dt
a

ed utilizzando il cambio di variabile t c = sh con h = (b a)/2 otteniamo

39

h5 f (4) ()
E2 (f ) =
4!

s(s + 1)2 (s 1)ds =

1 b a 5 (4)
f () , [a, b] (2.11)
90 2

Come si `e fatto nella formula di quadratura dei trapezi possiamo generalizzare anche
quella di Simpson. Sia h = (b a)/(2n) ed xi = x0 + ih , i = 0, 1, . . . , 2n con x0 = a,
S
pertanto [a, b] = n1
a additiva degli integrali
i=0 [x2i , x2i+2 ]. Per la propriet`
Z

f (x)dx =
a

n1 Z
X
i=0

x2i+2

p2i (x)dx +

x2i

n1 Z
X
i=0

x2i+2

R2i (x)dx = I2n (f ) + E2n (f )

x2i

dove, tenendo conto delle (2.10) e (2.11)


n1

hX
I2n (f ) =
[f (x2i ) + 4f (x2i+1 ) + f (x2i+2 )]
3 i=0

(2.12)

n1

h5 X (4)
f (i ) , i [x2i , x2i+2 ]
E2n (f ) =
90 i=0

(2.13)

Se ora si tiene conto che:


lim 2h

n1
X

i=0

(4)

Z
(i ) =

f (4) (x)dx = f (3) (b) f (3) (a)

si vede immediatamente che la stima asintotica dellerrore nella formula di Simpson


generazzata `e data da:
h4 (3)

[f (b) f (3) (a)]


E2n (f ) =
180

(2.14)

Nella tabella che segue riportiamo, al variare di n, il valore approssimato dellintegrale


I2n (f ), lerrore esatto commesso, la sua stima asintotica E2n (f ) e la differenza tra errore
esatto e la sua stima asintotica, relativamente allintegrale in (2.8).
Tabella 2.2: Regola di Simpson per il calcolo di (2.8)
n
2
4
8
16

I2n
11.9554
12.0637
12.0699
12.0703

Enes (f )
0.114900
0.006605
0.000402
0.000025

E2n (f ) Enes (f ) E2n (f )


0.102063
0.012837
0.006379
0.000226
0.000398
3.6106
0.000025
5.7108

Si osserva come la formula di quadratura di Simpson generalizzata fornisce molto rapidamente una buona approssimazione dellintegrale. Anche in questo caso la stima
40

asintotica dellerrore si avvicina molto rapidamente allerrore vero commesso.

2.4

Le formule di quadratura di Gauss

Nei paragrafi precedenti si `e visto che una formula di quadratura `e una combinazione di
valori della funzione integranda calcolata in punti xj [a, b], dove gli estremi possono
essere compresi oppure no. In pratica, indichiamo con In (f ) la formula di quadratura,
detta anche formua di quadratura a n punti o n nodi
In (f ) =

n
X

wj f (xj )

(2.15)

j=1

dove i wj sono detti pesi mentre gli xj sono chiamati nodi della formula di quadratura.
Un modo quindi per derivare la formula potrebbe essere anche quello di immaginare
wj ed xj incognite e sfruttare la definizione di grado di precisione di una formula di
quadratura per determinarli. Sappiamo dalla definizione 13, data nel primo paragrafo
di tale capitolo, che In (f ) ha grado di precisione m se rappresenta esattamente il valore
dellintegrale per polinomi fino al massimo grado m. Imponendo quindi che In (f ) abbia
grado di precisione m abbiamo
Z

pm (x)dx =

m
X

wj pm (xj )

j=1

dove pm (x) `e un generico polinomio di grado m, pm (x) =


glianza precedente la possiamo scrivere:
m
X
k=0

Z
ak

b
k

x dx =
a

n
X
j=1

wj

m
X
k=0

ak xkj

m
X
k=0

ak

Pm

k=0

n
X

ak xk , allora lugua-

wj xkj

j=1

e poiche luguagliana precedente deve valere per ogni scelta dei coefficienti ak essa
risulter`a vera se vale per ogni k
n
X
j=1

wj xkj

Z
=

xk dx ,

k = 0, 1, . . . , m

(2.16)

La (2.16) costituisce un sistema non lineare di 2n incognite xj e wj in m + 1 equazioni


ed `e sperabile che tale sistema abbia soluzioni se m + 1 = 2n ossia m = 2n 1. Si
sta sostanzialmente affermando che il massimo grado di precisione della formula (2.15)
pu`o essere 2n 1.
Facciamo ora vedere quale `e la formula di quadratura che ha grado di precisione 3 per
n = 2 ed [a, b] = [1, 1]. Da (2.16) abbiamo il seguente sistema

41

w1 + w2 = 2

w x + w x = 0
1 1
2 2

w1 x21 + w2 x22 = 32

w x3 + w x3 = 0
1 1
2 2

(2.17)

Con semplici passaggi si trova che la soluzione del sistema `e la seguente: w1 = w2 = 1,

x1 = 3/3 e x2 = 3/3. E quindi in tal caso abbiamo che


b

Z
a

3
3
f (x)dx ' f (
) + f(
)
3
3

(2.18)

Vedremo pi`
u avanti che questa rappresenta anche la formula di quadratura a due punti
di Gauss-Legendre. Tale formula pu`o essere generalizzata come vedremo negli esercizi
proposti.
Come si pu`o immaginare, se in questo caso la soluzione del sistema `e stata semplice,
cos` non `e se n cresce, inoltre con tale tecnica, detta anche metodo dei coefficienti
indeterminati, `e praticamente impossibile dare una valutazione dellerrore. Un metodo
molto pi`
u efficiente per determinare una formula di quadratura del tipo (2.15) che abbia
grado di precisione massimo `e dovuto a Gauss. In particolare Gauss ci da un teorema
di esistenza ed unicit`
Z a della formula di quadratura con massimo grado di precisione
b

per il calcolo di

w(x)f (x)dx con w(x) funzione peso definita in [a, b]. Da notare
a

che la funzione f (x) = 1 `e una funzione peso in un intervallo limitato [a, b] e quindi il
Z b
teorema di Gauss consente di poter approssimare anche
f (x)dx
a

Teorema 5 (Teorema di Gauss). Per ogni n 1 esiste un unica formula di integrazione


numerica del tipo (2.15) che ha massimo grado di precisione 2n 1. Supposto f (x)
C2n [a, b] la formula In (f ) ed il suo errore sono dati da
Z

n
X

n
f (2n) () , (a, b)
(2.19)
2
A
(2n)!
a
n
j=1


dove gli xj sono gli zeri del polinomio n (x) = (a, b), w(x) mentre i pesi wj sono
dati da
w(x)f (x)dx =

wj =

wj f (xj ) +

an n
n+1 (xj )n0 (xj )

j = 1, 2, . . . , n

(2.20)

Dimostrazione. La dimostrazione `e divisa in due parti, nella prima parte faremo vedere
lesitenza e la formula dellerrore mentre nella seconda parte dimostreremo lunicit`a.
Esistenza e formula dellerrore

42

Si approssima la funzione f (x) con il polinomio di Hermite che interpola la funzione e


la sua derivata prima nei punti xj zeri del polinomio ortogonale n (x). (vedi Appendice
A)
f (x) = H2n1 (x) + R2n1 (x)
con H2n1 (x) dato da
H2n1 (x) =

n
X

hj (x)f (xj ) +

j=1

n
X

j (x)f 0 (xj )
h

(2.21)

j=1

dove
hj (x) = [1 2(x

xj )]lj2 (x)

j (x) = (x xj )l2 (x) , lj (x) =


, h
j

n
Y
x xk
xj xk
k=1
k6=j

mentre lerrore `e dato da

[n (x)]2 (2n)
f () , [x1 , xn ] (2.22)
R2n1 (x) = [n (x)] f [x1 , x1 , . . . , xn , xn , x] =
(2n)!
2

con
n
Y
n (x) =
(x xj )
j=1

Ricordando ora che gli xj sono gli zeri del polinomio ortogonale n (x) tale polinon
Y
mio lo possiamo scrivere come, n (x) = An (x xk ) e pertanto possiamo mettere il
k=1

j (x) ed R2n1 (x) e si ha


relazione n (x) con h
2
hj (x) = n (x)lj (x) , R2n1 (x) = [n (x)] f [x1 , x1 , . . . , xn , xn , x]
n0 (xj )
A2n

(2.23)

analogamente abbiamo
hj (x) = lj2 (x) 2

n (x)lj (x)
n0 (xj )

(2.24)

Passando ora alla formula di quadratura di Gauss

Z
w(x)f (x)dx =

Z
w(x)H2n1 (x)dx +

w(x)R2n1 (x)dx = I2n1 (f ) + E2n1 (f )


a

e ricordando le relazioni (2.23) ed (2.24) si ha


43

I2n1 (f ) =

n
X

f (xj )

w(x)hj (x)dx +
a

j=1

n
X
j=1

n
X
j=1

Z
f (xj )
a

n
X

E2n1 (f ) =
a

j (x)dx =
w(x)h

f (xj )
a

j=1

n
X
2
n (x)lj (x) 
dx +
w(x) lj (x) 2
f 0 (xj )
0
n (xj )
j=1

Z b
w(x)lj2 (x)dx
f (xj )

w(x)
a

n (x)lj (x)
dx =
n0 (xj )

n
X


2
f 0 (xj )
l
(x),

(x)
bigg]
+
l
(x),

(x)
j
n
j
n
n0 (xj )
n0 (xj )
j=1

[n (x)]2
w(x)
f [x1 , x1 , . . . , xn , xn , x]dx
A2n

Se ora teniamo conto che il polinomio n (x) `e ortogonale a qualunque polinomio di


grado pi`
u basso, essendo lj (x) un polinomio di grado n 1, si ottiene
I2n1 (f ) =

n
X

w(x)lj2 (x)dx

f (xj )
a

j=1

n
X

wj f (xj )

j=1

dove
Z
wj =

w(x)lj2 (x)dx

mentre, per quanto riguarda lerrore, essendo la differenza divisa di ordine 2n, per le
ipotesi del teorema, `e una funzione continua mentre la restante funzione allinterno
dellintegrale non cambia segno in [a, b]. Pertanto si pu`o applicare il teorema della
media integrale e si ha:

f [x1 , x1 , . . . , xn , xn , x ]
E2n1 (f ) =
A2n

w(x)n (x)n (x)dx =


a

n
f (2n) ()
2
An (2n)!

, (a, b)

Abbiamo quindi trovato una formula di quadratura del tipo(2.15) che sicuramente ha
massimo grado di precisione 2n 1. Per quanto riguarda i pesi wj lasceremo il loro
calcolo come esercizio. Una sola considerazione per semplificare la formula dei pesi.
Sappiamo che la formula ottenuta ha grado di precisione 2n 1 e pertanto `e esatta per
ogni polinomio di grado non superiore a 2n 1. Essendo li (x) un polinomio di grado
n 1 con li (xj ) = ij si ha
Z

w(x)li (x)dx =
a

n
X

wj li (xj ) = wj

(2.25)

j=1

e poiche, come vedremo fra poco, tale formula di quadratura `e unica, i pesi wj possono
esssere definiti in maniera pi`
u semplice dalla (2.25).

44

Unicit`
a
Supponiamo che esista una formula di quadratura del tipo (2.15) con pesi vj 6= wj e
nodi zj 6= xj che abbia grado di precisione 2n 1.
In (f ) =

n
X

vj f (zj )

j=1

j (x) sui nodi zj , sappiamo che, per


Se ora costruiamo il polinomio, di grado 2n 1, h
j (x).
lipotesi fatta su In (f ), tale formula `e esatta se la funzione integranda `e proprio h
i (zj ) = 0 , i, j = 1, 2, . . . , n. Allora
Sappiamo inoltre che h
Z

i (x)dx =
w(x)h

n
X

i (zj ) = 0 , i = 1, 2, . . . , n
vj h

j=1

Q
i (x) = n (x)li (x) cio`e `e dato da un polima, indicando con n (x) = nj=1 (x zj ), h
nomio di grado n i cui zeri sono gli zj per il polinomio li (x) di grado n 1. poiche
come sopra visto lintegrale `e nullo per ogni i = 1, 2, . . . , n questo significa che tale
integrale si annulla per ogni polinomio pn1 (x) di grado n 1, cio`e il prodotto scalare

n (x), pn1 (x) = 0, ossia il polinomio n (x) `e ortogonale ad un qualunque polinomio


di grado pi`
u basso. Questo `e possibile solo se n (x) = (a, b), w(x) e quindi deve
avere gli stessi zeri di n (x), pertanto zj = xj , j = 1, 2, . . . , n. Per far vedere che
coincidono anche i pesi, una volta visto che coincidono i nodi, basta prendere come
funzione integranda hi (x). poiche sappiamo che hi (x) `e un polinomio di grado 2n 1
e che hi (xj ) = ij
Z

w(x)hi (x)dx =
a

n
X

vj hi (xj ) = vi

j=1

cio`e vi ha la stessa definizione di wi .


Nelle soluzioni agli esercizi proposti vedremo la formula di quadratura a due nodi di
Gauss-Legendre e le formule di quadratura di Gauss-Chebyscev per ogni n 1.

2.5

Formule adattative

Prima di passare a vedere alcuni metodi per la risoluzione di integrali singolari vediamo
come le formule generalizzate fino ad ora viste possono essere adattate ad integrali in
cui la funzione integranda non soddisfa le propriet`a di regolarit`a richieste relativamente
` ovvio che se la funzione integranda non verifica le ipotesi di
allerrore commesso. E
continuit`a sulla fuzione e sulle sue derivate, cos` come richiesto, le formule dellerrore

45

non sono pi`


u valide e tale errore `e tanto pi`
u grande quanto pi`
u si `e vicini alla non
regolarit`a richiesta per la funzione integranda. Un esempio limite potrebbe essere
proprio quello in cui la funzione integranda ha una singolarit`a infinita in un pundo
x1 [a, b]. Nellintorno di tale punto la convergenza della formula generalizzata `e
molto lenta e pertanto se si suddivide lintervallo [a, b] in n sottointervalli di uguale
ampiezza e si confrontano le varie somme di Riemann, ottenute al crescere di n, per
vedere se si `e raggiunta la precisione  richiesta, si osserva che n deve crescere molto per
ottenere il risultato voluto e questo comporta un dispendio di tempo di elaborazione
visto il grande numero di valutazione di funzioni che si `e costretti ad eseguire. Il
modo migliore pertanto `e quello di adattare la formula generalizzata a tali tipi di
integrali. Lidea `e quella di avere sottointervalli sempre pi`
u piccoli nellintorno del
punto di non regolarit`a della funzione integranda distribuendo in maniera opportuna
lerrore richiesto su tutto lintervallo [a, b]. Per essere pi`
u chiari vediamo il tutto con
un esempio. Supponiamo di voler valutare numericamente il seguente integrale:
1

ex ln(x)dx

I(f ) =
0

ed utilizziamo la formula di quadratura dei rettangoli nel punto di mezzo. Utilizzando


la generalizzazione di tale formula di quadratura dobbiamo suddividere lintervallo
[a, b] in n1 = 2k sotto-intervalli e valutare il valore approssimato dellintegrale In1 (f ).
Suddividiamo poi in n2 = 2k+1 e valutiamo il nuovo valore della somma di Riemann
In2 (f ). Se
|In1 (f ) In2 (f )| 
ci fermiamo e diciamo che In2 (f ) `e il valore approssimato dellintegrale con la precisione
 richiesta, altrimenti si continua allo stesso modo incrementando k.
H* Metodo dei rettangoli del
punto di mezzo generalizzato *L
f@x_D := If@x 0, 0, Log@xD Exp@xDD;
a = 0.0; b = 1.0; imax = 20; NC = 0; eps = 0.00001; vint = 0;
Do@h = Hb - aL 2 ^ Hi - 1L; NC = NC + 2 ^ Hi - 1L;
vint1 =
h * Sum@f@a + H2 * k - 1L * Hh 2.LD, 8k, 1, 2 ^ Hi - 1L<D;
If@Abs@vint - vint1D eps, Break@DD;
vint = vint1, 8i, 2, imax<D;
Print@
" Valore approssimato dell'integrale= ", vintD;
Print@" Numero di valutazioni della funzione= ", NCD
Valore approssimato dell'integrale= -1.31789
Numero di valutazioni della funzione= 131

Il listato sopra riportato `e un semplice programma, scritto con il software Mathematica, dove viene programmata la formula dei rettangoli generalizzata. Alla fine del
46

listato viene stampato il valore approssimato dellintegrale ed il numero complessivo di


valutazioni della funzione integranda.
Il numero di valutazioni della funzione integranda pu`o essere sensibilmente ridotto se
la generalizzazione della formula `e fatta in modo adattato. Supponiamo che il valore
approssimato del nostro integrale sia soddisfacente se la differenza in modulo tra due
somme di Riemann `e minore di un  > 0 sufficientemente piccolo ed utilizziamo la
formula di quadratura dei rettangoli nel punto di mezzo per approssimare lintegrale.
c
Lalgoritmo adattato che si propone `e il seguente. Sia I01
[s, l] il valore approssimato
dellintegrale ottenuto con la formula di quadratura del punto di mezzo relativamente
c
[s, l] il valore approssimato ottenuto
allintervallo [s, l] senza alcuna suddivisione e I02
con lo stesso metodo ma con due suddivisioni dellintervallo [s, l]; indichiamo inoltre
con I0c (f ) il valore approssimato dellintegrale.
1. k = 0 ; I0c (f ) = 0 ;
c
c
2. se |I01
[a, b] I02
[a, b]|


STOP, altrimenti si procede
2k

3. k = k + 1 ;
4. si suddivide lintervallo [a, b] in 2k sotto-intervalli [xi , xi+1 ] di uguale ampiezza;
h = (b a)/2k , xi = x0 + ih , i = 0, .., 2k , con x0 = a. Per i = 0, 1, ..., 2k

c
c
1, considerando solo gli indici i utili, se |I01
[xi , xi+1 ] I02
[xi , xi+1 ]| k allora
2
c
[xi , xi+1 ] e si scarta tale intervallo, altrimenti si ritorna a 3. e si
I0c (f ) = I0c (f )+I02
procede allo stesso modo, prendendo solo in considerazione gli intervalli rimasti,
fino a quando non ci sono pi`
u intervalli da suddividere. Alla fine del procedimento
I0c (f ) conterr`a il valore approssimato dellintegrale con la precisione  richiesta.

A seguire riportiamo il listato del programma scritto con il software Mathematica ed


i risultati ottenuti: valore approssimato dellintegrale per la precisione scelta e numero complessivo di valutazioni della funzione integranda. Come si vede chiaramente il
numero di valutazioni `e sensibilmente inferiore a quelle che servono nel metodo generalizzato standard. Ovviamente tale tipo di tecnica pu`o essere applicata a qualunque
formula di quadratura. Come si pu`o notare, dal listato del programma, non abbiamo
bisogno di indicare dove si trova la non regolarit`a della funzione integranda ed inoltre
il programma funziona ugualmente anche se i punti di non regolarit`a nellintervallo di
integrazione sono pi`
u di uno.

47

H* METODO ADATTATIVO *L
H* Metodo dei rettangoli del punto di mezzo *L
f@x_D := If@x == 0, 0, Log@xD * Exp@xDD;
a = 0; b = 1.; imax = 50;
ES = Table@0, 8i, 1, 100 000<D;
EI = Table@0, 8i, 1, 100 000<D;
NES = Table@0, 8i, 1, 100 000<D;
NEI = Table@0, 8i, 1, 100 000<D;
NC = 0; VF = 0; NC1 = 1; SNC = 0;
vint = 0.; eps = 0.00001; EI@@1DD = a; ES@@1DD = b;
Do@h = Hb - aL 2 ^ Hi - 1L;
h2 = h 2.; For@k = 1, k <= NC1,
k ++, VI1 = h * f@HEI@@kDD + ES@@kDDL 2.D;
VI2 =
h2 * f@EI@@kDD + h2 2.D + h2 * f@ES@@kDD - h2 2.D;
If@Abs@VI2 - VI1D <= eps, vint = vint + VI2,
NC = NC + 2; NEI@@NC - 1DD = EI@@kDD;
NEI@@NCDD = EI@@kDD + h2;
NES@@NC - 1DD = NEI@@NCDD;
NES@@NCDD = ES@@kDDDD; NC1 = NC; SNC = SNC + NC;
Do@EI@@sDD = NEI@@sDD; ES@@sDD = NES@@sDD,
8s, 1, NC<D; eps = eps 2.; If@NC == 0, Break@DD;
NC = 0, 8i, 1, imax<D;
Print@
" Valore approssimato dell'integrale= ", vintD;
Print@" Numero di valutazioni della funzione= ",
SNCD
Valore approssimato dell'integrale= -1.3179
Numero di valutazioni della funzione= 4984

2.6

Integrali singolari

Nel paragrafo precedente abbiamo visto come adattare le formule di quadratura per
risolvere integrali di funzioni integrande che non soddisfano le propriet`a richieste nelle
formule dellerrore. In generale problemi pi`
u complessi si presentano quando la funzione
integranda ha delle singolarit`a nellintervallo di integrazione o lintervallo di integrazione `e illimitato. Casi particolari in cui esistono singolarit`a nellintervallo di integrazione
o integrali estesi ad intervalli illimitati sono gi`a stati affrontati nelle formule di quadratura di Gauss. Vedi, ad esempio, le formule di quadratura di Gauss-Chebyscev,
Gauss-Laguerre e Gauss-Hermite. In questo paragrafo vedremo alcune tecniche utili a

48

risolvere numericamente tali integrali.


Cambio della variabile di integrazione
Mostriamo come tale tecnica alcune volte risolve il problema con degli esempi. Prendiamo ad esempio il calcolo del seguente integrale

sin(x) 1 x2 dx

Z
I(f ) =
0

In tal caso la singolarit`a si presenta sulla derivata prima della funzione integranda

in x = 1. Se introduciamo il seguente cambio di variabile t = 1 x, x = 1 t2 ,


dx = 2tdt ed inolre per x = 0, t = 1 mentre per x = 1, t = 0. Pertanto lintegrale da
risolvere nella nuova variabile t `e il seguente
1

Z
I(f ) = 2

t2 2 t2 sin(1 t2 )dt

Tale integrale, nella nuova variabile t, ha un numero infinito di derivate in [0, 1] e quindi
possiamo applicare le formule standard e sappiamo che landamento dellerrore `e quello
provato nel teorema di convergenza della formula di quadratura utilizzata. Il cambio
della variabile di integrazione alcune volte si dimostra essere utile anche per integrali
estesi ad intervalli illimitati. Vediamolo con un secondo esempio. Supponiamo di voler
calcolare numericamente il seguente integrale
Z
I(f ) =
1

f (x)
dx ,
xp

p>1

con f (x) c 6= 0 per x . Supponiamo inoltre che la funzione f (x) sia regolare in
[1, ). Possiamo introdurre il seguente cambio di variabile
1

,
dx
=

dt , > 0
t
t1+
abbiamo inoltre che per x = 1, t = 1 e per x , t 0. Lintegrale nella nuova
variabile diventa
x=

Z
I(f ) =
0

1 dt
tp f ( ) 1+ =
t t

t(p1)1 f (

1
)dt
t

Bisogna massimizzare la regolarit`a della nuova funzione integranda in t = 0 scegliendo


in modo che (p 1) 1 risulti intero e possibilmente la funzione f ( t1 ) regolare
insieme alle sue derivate nellintorno di zero. Vediamo quanto detto in un esempio pi`
u
specifico.
Z

I(f ) =
1

49

f (x)
dx
x x

dove si suppone che la funzione f (x) abbia il seguente andamento per x


c2
c1
+ 2 + ....
x
x
Se utilizziamo il cambio di variabile proposto precedentemente, avendo in questo caso
p = 23 si ha che (p 1) 1 = 21 1. Prendendo pertanto = 2 dovremmo risolvere
il seguente integrale
f (x) = c0 +

Z
2
0

1
f ( 2 )dt
t

e la funzione integranda nellintorno di zero ha il seguente andamento:


1
f ( 2 ) = c0 + c1 t2 + c2 t4 + ....
t
Il cambio della variablile di integrazione ha molta efficacia anche nella risoluzione di
integrali del tipo
Z

f (x)
dx ,
xp

I(f ) =
0

0<p<1

Con f (x) regolare in [0, b]. In tal caso si utilizza il seguente cambio di variabile x = t
e valgono le stesse considerazioni fatte precedentemente. Vedremo questo cambio di
variabile in un caso particolare negli esercizi proposti.
Trattamento analitico delle singolarit`
a
Si divide lintervallo di integrazione in due parti, una contenente il punto singolare, che
deve essere trattato analiticamente. Come esempio consideriamo il seguente integrale

I(f ) =

f (x) ln(x)dx =
0

Z
f (x) ln(x)dx +

f (x) ln(x)dx = I1 (f ) + I2 (f )


Supposto f (x) sufficientemente regolare in [, b] si possono applicare formule standard


di quadratura per calcolare I2 (f ). Per f (x) nellintorno di zero supponiamo che essa
ammetta uno sviluppo in serie di Taylor in [0, ]. Allora
I1 (f ) =

Z X

aj x


ln(x)dx =

j=0

X
j=0

aj

j+1
1
[ln()
]
j+1
j+1

Ad esempio, se
Z
I(f ) =

cos(x) ln(x)dx
0

50

definiamo, prendendo  = 0.1, con


Z
I1 (f ) =
0

0.1

3
1
cos(x) ln(x)dx = (ln() 1) (ln() ) + ....
6
3

tale ultima `e una serie a segni alterni e quindi `e facile maggiorare il valore assoluto dellerrore commesso usando il primo termine della serie che si trascura potendo ottenere
un ottimo valore dellintegrale I1 (f ) con pochi termini della serie. Tecniche standard
di quadratura numerica possono essere applicate per valutare lintegrale nellintervallo
[, ].
Prodotto di integrazione
Z

Sia I(f ) =

w(x)f (x)dx, costituito cio`e da una funzione integranda data dal proa

dotto di una funzione regolare f (x) per una funzione w(x) che ammette singolarit`a
nellintervallo di integrazione. Nel prodotto di integrazione lidea base `e di costruire
una successione di funzioni fn (x) tale che
1. lim kf (x) fn (x)k = lim
n


max |f (x) fn (x)| = 0

axb

2. Gli integrali
Z

w(x)fn (x)dx

In (f ) =
a

possono essere facilmente valutati in modo esplicito.


Per quanto riguarda lerrore si ha
Z b



|I(f ) In (f )| =
w(x)(f (x) fn (x))dx
a

Z
|w(x)||f (x) fn (x)|dx kf (x) fn (x)k

|w(x)|dx
a

quindi I(f ) In (f ) per n e la velocit`a di convergenza `e dello stesso tipo della


velocit`a di convergenza uniforme di fn (x) ad f (x). Le formule prodotto generalmente
sono definite utilizzando linterpolazione polinomiale a tratti per la costruzione della
successione fn (x). A seguire mostriamo la formula prodotto trapezoidale per il calcolo
dellintegrale
Z
I(f ) =

f (x) ln(x)dx
0

se definiamo con (vedi figura)

51

1.0

0.5

0.5

1.0

1.5

2.0

2.5

3.0

-0.5

-1.0
Figura 2.4: Approssimazione di f (x) con fn (x)

fn (x) = {p1i (x) , x [xi , xi+1 ] , i = 0, 1, ..., n 1}


1
dove xi = ih, con h = b/n e p1i (x) = [(xi+1 x)f (xi ) + (x xi )f (xi+1 )]
h
abbiamo
b

Z
f (x) ln(x)dx '

n1

fn (x) ln(x)dx =
0

1X
=
h i=0

n1 Z
X
i=0

xi+1

fn (x) ln(x)dx =

xi

xi+1

[(xi+1 x)f (xi ) + (x xi )f (xi+1 )] ln(x)dx =


xi

n
X

vi f (xi )

i=0

dove
1
v0 =
h

1
vi =
h

xi

Z
0

1
(x1 x) ln(x)dx , vn =
h

1
(x xi1 ) ln(x)dx +
h
xi1

nh

(x xn1 ) ln(x)dx
(n1)h

xi+1

(xi+1 x) ln(x)dx , i = 1, 2, ..., n 1


xi

In modo agevole si possono calcolare tali integrali e quindi ottenere una formula di
quadratura prodotto che va bene per ogni funzione f (x) nellintervallo di integrazione
[0, b].

52

2.7

Esercizi proposti

Esercizio 1. Utilizzando lo stesso procedimento visto per la formula di quadratura dei trapezi, provare che la formula dei rettangoli nel punto a sinistra, cio`e quando si approssima la funzione con il polinomio di grado zero che interpola la funzione in (a, f (a)), vedi figura, `e la seguente I0s (f ) = (b a)f (a), lerrore commesso `e
(b a)2 0
s
f () , [a, b], la formula generalizzata `e data da
E0 (f ) =
2
s
I0n
(f )

=h

n1
X

f (xi )

i=0

h
s
e la stima asintotica dellerrore `e E0n
(f ) = [f (b) f (a)], dove xi = x0 + ih , i =
2
0, 1, . . . , n, x0 = a, h = (b a)/n.

y
y=f HxL
y=p0 HxL

f HaL

Figura 2.5: Illustrazione del metodo dei rettangoli nel punto a sinistra
Esercizio 2. Utilizzando lo stesso procedimento visto per la formula di quadratura di Simpson provare che la formula dei rettangoli del punto di mezzo (nota anche come formula di Newton Cotes di tipo aperto di ordine pi`
u basso), cio`e quando
si approssima la funzione con il polinomio di grado zero che interpola la funzione
stessa in (c, f (c)), con c = (a + b)/2, cos` come illustrato in figura, `e la seguente:
(b a)3 00
I0c (f ) = (b a)f (c), lerrore commesso `e E0c (f ) =
f () , [a, b], la formula
24
n1
X
xi + xi+1
c
generalizzata `e data da I0n (f ) = h
f(
) e la stima asintotica dellerrore `e
2
i=0
2
h
c
E0n
(f ) = [f 0 (b) f 0 (a)], dove xi = ih , i = 0, 1, . . . , n, x0 = a, h = (b a)/n.
24
53

f HcL

y=p0HxL

y=f HxL

Figura 2.6: Illustrazione del metodo dei rettangoli nel punto di mezzo
Esercizio 3. Utilizzando lo stesso procedimento visto per la formula di quadratura
di Simpson provare che la formula di Newton Cotes aperta per n = 2, cio`e quando si
approssima la funzione con il polinomio interpolante di grado due nei punti (x1 , f (x1 )),
(x2 , f (x2 )) ed (x3 , f (x3 )) dove x1 = a + h, x2 = a + 2h e x3 = a + 3h con h = (b a)/4,
come illustrato in figura, nellipotesi in cui f (x) C4 [a, b], `e la seguente
b

Z
a

4h
14h5 (4)
f (x)dx =
[2f (x1 ) f (x2 ) + 2f (x3 )] +
f () , [a, b]
3
45

f Hx1L
f Hx2L

y=f HxL

f Hx3L

y=p2HxL

x1

x2

x3

Figura 2.7: Illustrazione del metodo di Newton Cotes aperto (n=2)


54

Esercizio 4. Trovare w0 , w1 e x1 in modo che la formula di quadratura


Z

f (x)dx ' w0 f (0) + w1 f (x1 )


0

abbia il pi`
u alto grado di precisione.
Esercizio 5. Determinare w0 , w1 e w2 affinche la formula di quadratura
Z

f (x)dx ' w0 f (1) + w1 f (0) + w2 f (1)


1

sia esatta per tutti i polinomi di grado n 2. Dire se 2 `e il massimo grado di precisione
della formula ottenuta.
Esercizio 6. Data la formula di quadratura
Z

f (x)dx =
h

h
[f (h) + 4f (0) + f (h)] + kf (4) ()
3

Determinare il valore di k.
Esercizio 7. Determinare i pesi a0 , a1 ed i nodi x1 , x2 affinche la formula di quadratura
Z
0

1
1
f (x)dx ' a0 f (0) + f 0 (x1 ) + f 0 (x2 ) + a1 f (1)
6
6

abbia massimo grado di precisione.


Esercizio 8. Sfruttando la definizione di grado di precisione di una formula di quadratura provare che la formula di quadratura di Simpson


ba
a+b
I2 (f ) =
f (a) + 4f (
) + f (b)
6
2
ha almeno grado di precisione 3.
Esercizio 9. Provare che se si approssima la funzione f (x) con il polinomio di Hermite di terzo grado, che interpola la funzione e la sua derivata prima nei punti di ascissa
a e b, si ottiene una formula simile alla formula dei trapezi modificata (2.9) data da
Z
a

ba
(b a)2 0
f (x)dx '
[f (a) + f (b)]
[f (b) f 0 (a)]
2
12

Utilizzando la formula dellerrore, sotto forma di differenze divise, dellinterpolazione


polinomiale di Hermite, provare che lerrore `e dato da
E3 (f ) =

(b a)5 (4)
f () ,
720
55

[a, b]

Esercizio 10. Provare che la (2.18) `e proprio la formula di quadratura di GaussLegendre a due punti. Generalizzare tale formula di quadratura.
Esercizio 11. Utilizzando la tecnica dei coefficienti indeterminati trovare la formula
di quadratura ad un nodo, relativa allintervallo [0, 1] e funzione peso w(x) = ln(x)
esatta per polinomi al pi`
u di grado uno.
Esercizio 12. Utilizzando la formula di Simpson generalizzata e la formula di Gauss
Legendre a due punti generalizzata calcolare il seguente integrale

sin(x)ex dx

con n suddivisioni dellintervallo [0, ] per n = 2k , k = 1, 2, . . . , 6. Stampare


il valore esatto dellintegrale, il valore approssimato ottenuto con Simpson, il valore
approssimato ottenuto con Gauss-Legendre e gli errori che si commettono utilizzando
le due appossimazioni. Commentare i risultati ottenuti.
Esercizio 13. Determinare il valori di n ed h richiesti per approssimare con un errore
di 104 il seguente integrale
Z

I(f ) =
0

1
dx
1+x

utilizzando la formula generalizzata dei trapezi e la relativa stima asintotica dellerrore.


Esercizio 14. Utilizzando il teorema di Gauss provare che le formule di quadratura
di Gauss-Chebyschev ad n nodi, con n 1 ed il relativo errore sono
Z

2
f (x)
X

dx =
f (2n) () , (1, 1)
f (xjn ) + 2n
2
n
2
(2n)!
1x
j=1

dove gli xjn sono gli zeri del polinomio di Chebyshev Tn (x) di grado n.
Esercizio 15. Nellintegrale che segue eliminare la singolarit`a nella funzione integranda e massimizzare la regolarit`a della stessa utilizzando il cambio della variabile di
integrazione.
Z
I(f ) =

cos( x)
3

x4

dx

Esercizio 16. Derivare la formula di quadratura prodotto rettangolare di integrazione per il calcolo di integrali del tipo
Z

f (x) ln(x)dx
0

56

Per prodotto rettangolare si intende approssimare la funzione f (x) in [0, b] =

n1
[
i=0

dove x0 = 0 ed xi = x0 + ih, con h = b/n utilizzando la funzione semplice


Sm (x) = {f (

xi + xi+1
) , x [xi , xi+1 ] , i = 0, 1, ..., n 1}
2

57

[xi , xi+1 ],

Capitolo 3
METODI NUMERICI PER LA SOLUZIONE DI
PROBLEMI DI CAUCHY PER EQUAZIONI
DIFFERENZIALI ORDINARIE

3.1

Introduzione

In questo capitolo vogliamo dare un esposizione di metodi numerici che permettono di


determinare in modo approssimato la soluzione numerica di problemi di Cauchy per
equazioni differenziali ordinarie del primo ordine. Vogliamo cio`e trovare dei metodi
numerici che ci permettono di approssimare la soluzione del seguente problema

y 0 (x) = f (x, y(x)) , x x b


0
y(x ) = Y
0

(3.1)

Tali tecniche si estendono anche a problemi ai valori iniziali per sistemi di n equazioni
differenziali ordinarie del primo ordine e quindi anche a problemi ai valori iniziali per
equazioni differenziali ordinarie di ordine n. I metodi che noi considereremo non forniscono unapprossimazione continua della soluzione del problema ai valori iniziali ma
approssimazioni in un certo numero di punti specificati, generalmente equidistanziati.
Prima di passare allesposizione dei metodi numerici richiamiamo alcune definizioni e
risulati dalla teoria delle equazioni differenziali ordinarie ed introduciamo anche alcune
notazioni che saranno utilizzate nel resto del capitolo.
Definizione 15 (Condizione di Lipschitz). Una funzione f (x, y) si dice che soddisfa la
condizione di Lipschitz nella variabile y in un insieme D R2 se esiste una costante
K > 0 tale che
|f (x, y1 ) f (x, y2 )| K|y1 y2 |
con (x, y1 ) , (x, y2 ) D. La costante K `e detta costante di Lipschitz.
58

(3.2)

Teorema 6 (Esistenza ed unicit`a). Sia D = {(x, y) | x0 x b , < y < } ed


f (x, y) una funzione continua in D. Se f (x, y) soddisfa la condizione di Lipschitz in
D nella variabile y allora il problema ai valori iniziali (3.1) ammette una ed una sola
soluzione per x0 x b
Va osservato che se f (x, y) `e definita in un insieme convesso D R2 e se esiste una
costante K > 0 tale che


f (x, y)


y K , (x, y) D
allora f (x, y) soddisfa la condizione di Lipschitz in D nella variabile y con costante
di Lipschitz K. Spesso utilizzeremo questo teorema per determiare la costante di
Lipschitz.
Il problema di Cauchy (3.1) pu`o essere riformulato come unequivalente equazione
integrale:
x

Z
y(x) = Y0 +

f (t, y(t))dt

(3.3)

x0

Vediamo ora un primo esempio in cui forniamo la soluzione analitica ed un secondo


esempio dove, oltre a fornire la soluzione analitica, facciamo alcune considerazioni
geometriche che spesso sono utili per capire a livello teorico landamento della soluzione
di un generico problema di Cauchy. Nel primo esempio prendiamo in considerazione il
problema di Cauchy per un equazione differenziale del primo ordine lineare.
Esempio 1

y 0 (x) = y(x) + g(x) , 0 x <


y(0) = Y

(3.4)

con g(x) continua in [0, ). La soluzione di tale problema `e


x

Y (x) = Y0 e

Z
+

e(xt) g(t)dt ,

0x<

Infatti la soluzione Y (x) = YP (x)+YH (x) dove YP (x) `e una soluzione particolare mentre
0
`
YH (x) `e la soluzione
Z generale dellequazione differenziale omogenea y (x) = y(x). E
x

e(xt) g(t)dt `e una soluzione particolare YP (x), infatti

facile provare che


0

YP0 (x)

Z
= g(x) +

e(xt) g(t)dt

mentre la soluzione dellomogenea `e YH (x) = cex


ed imponendo che Y (0) = Y0 si trova che la costante c `e proprio Y0 .

59

Esempio 2
y 0 (x) = y(x) sin(x) , < x <

(3.5)

Vista la forma della funzione g(x) = sin(x) la soluzione particolare la ricerchiamo


tra le funzioni del tipo
YP (x) = c1 sin(x) + c2 cos(x)
imponendo che verifichi lequazione differenziale si trova che per essere soluzione particolare le costanti debbono valere c1 = c2 = 1/2. Abbiamo pertanto che la soluzione
generale dellequazione `e data da
1
Y (x) = cex + [sin(x) + cos(x)]
2
In questo caso non avendo fornito la condizione iniziale la soluzione generale dipende
dalla costante arbitraria c.
y
4

-4

-2

-2

-4

Figura 3.1: Illustrazione della direzione del campo indotto


Come abbiamo detto possiamo fare alcune considerazioni geometriche sullequazione
differenziale e la conoscenza della soluzione ci consente di capire meglio quanto an60

dremo a dire. In particolare ci vogliamo soffermare sulla direzione del campo indotto
dallequazione differenziale nel piano xy e sulle curve di livello. Se Y (x) `e una soluzione che passa per il punto (x0 , Y0 ) allora la pendenza di Y (x) in (x0 , Y0 ) `e proprio
Y 0 (x0 ) = f (x0 , Y0 ).
Allinterno di un dominio D R2 prendiamo un rappresentativo insieme di punti (x, y)
e disegniamo un piccolo segmento con pendenza f (x, y) che passa per (x, y), in questo
modo ci siamo costruiti la direzione del campo indotto dallequazione differenziale.
Nella figura 3.1 riportiamo quanto detto insieme a cinque grafici della soluzione per
cinque particolari valori iniziali Y (0) = 0, 1, 20, 1, 20
Per rendere pi`
u semplice lo studio del campo vettoriale di y 0 (x) = f (x, y(x)) possiamo
guardare le curve nel piano (x, y) dove f (x, y) `e costante. Disegnare le curve f (x, y) = c
per vari valori di c. Ogni soluzione Y (x) di y 0 = f (x, y) che interseca le curve f (x, y) = c
soddisfa Y 0 (x) = c nel punto di intersezione. Le curve f (x, y) = c sono dette curve di
livello. Nella figura 3.1 sono riportate le curve di livello per c = 0, 1, 2, 3 e la soluzione
esatta per i valori iniziali Y (0) = 0, 0.2, 10.
y

-4

-2

-1

Figura 3.2: Illustrazione delle curve di livello

61

Definizione 16 (Problema ben posto). Il problema di Cauchy (3.1) `e detto ben posto
se
1. esiste una ed una sola soluzione
2. dato il problema perturbato

y 0 (x; , ) = f (x, y(x; , )) + (x) , x x b


0
y(x ; , ) = Y + 
0

(3.6)

con ||, k(x)k < 0 tale problema ammette una sola soluzione ed esiste una
costante limitata positiva M tale che
|y(x; , ) y(x)| < M 0
` facile vedere che il problema di Cauchy `e anche un problema ben posto.
E
Ora dal punto di vista numerico siamo interessati non solo a problemi matematicamente
ben posti o stabili ma anche a problemi numericamente stabili o ben condizionati.
Ricordiamo che un problema `e ben condizionato se a piccole perturbazioni sui dati
corrispondono piccole perturbazioni sulla soluzione. A tale proposito prendiamo in
esame il seguente problema di Cauchy perturbato

y 0 (x; ) = f (x, y(x; )) , x x b


0
y(x ; ) = Y + 
0

sappiamo che tale problema ha la seguente formulazione integrale


Z

y(x; ) = Y0 +  +

f (t, y(t; ))dt


x0

Se indichiamo con z(x; ) = y(x; ) y(x) si ha che


Z

[f (t, y(t; )) f (t, y(t))]dt

z(x; ) =  +
x0

Ora, immaginando  sufficientemente piccolo approssimiamo


f (t, y(t; )) f (t, y(t)) '

f (t, y(t))
(y(t; ) y(t))
y

e quindi
Z

z(x; ) '  +
x0

f (t, y(t))
z(t; )dt
y
62

(3.7)

Tale ultima equazione rappresenta la formulazione integrale del seguente problema di


Cauchy

z 0 (x; ) = f (x,y) z(x; ) , x x b


0
y
z(x ; ) = 

(3.8)

La soluzione di tale problema `e data da


Rx

z(x; ) =  e

x0

f (t,y)
dt
y

(3.9)

f (t, y(t))
> 0 la perturbazione z(x; ) cresce
y
esponenzialmente quanto pi`
u ci allontaniamo dalla soluzione e pertanto il problema di
Cauchy diventa crescentemente mal condizionato. Pertanto nei metodi che vedremo,
visto che studiamo il problema dei valori iniziali a destra di x0 , supporremo che f /y
risulti negativa per x > x0 . Il problema test che prenderemo in esame per lo studio dei
vari metodi numerici sar`a il seguente
Dalla (3.9) si osserva che se x > x0 e

y 0 (x) = y(x) , x > 0


y(0) = 1

(3.10)

con C e Re() < 0. Se R allora < 0. La soluzione esatta del problema di


Cauchy (3.10) `e data da
Y (x) = ex
che per le ipotesi fatte su converge a zero per x +. Possiamo qui dare la
definizione di metodo numerico assolutamente stabile, definizione che utilizzeremo in
quasi tutti i metodi che saranno analizzati.
Definizione 17 (Assoluta stabilit`a). Diremo che un metodo numerico che consente
di determinare in modo approssimato la soluzione yn del problema di Cauchy (3.1)
`e assolutamente stabile se il comportamento di tale soluzione allinfinito `e analogo a
quello della soluzione analitica Y (x) del problema (3.10). Diremo cio`e che `e stabile se
lim yn = 0.
n

I valori del passo h per i quali il metodo `e stabile sono chiamati regione di assoluta
stabilit`a. Se la regione di assoluta stabilit`a `e illimitata allora il metodo si dice che `e
A-stabile.
Facciamo vedere ora, con un esempio, quanto espresso precedentemente relativamente
al mal condizionamento di un problema di Cauchy.

63

Esempio Consideriamo il seguente problema:


y 0 (x) = 100y(x) 101ex

y(0) = 1

(3.11)

La soluzione `e Y (x) = ex . Perturbando il valore iniziale con , cio`e


y 0 (x) = 100y(x) 101ex

y(0) = 1 + 

(3.12)

la soluzione del problema perturbato `e esattamente:


y(x) = ex + e100x

(3.13)

Dalla (3.13) si vede chiaramente come, per  6= 0 la soluzione perturbata si allontana


rapidamente dalla soluzione non perturbata. In tal caso avevamo f /y = 100.
A seguire utilizzeremo le seguenti notazioni. Indicheremo con y = Y (x) la soluzione
esatta del problema di Cauchy (3.1), con Yn = Y (xn ), e con yn = yh (xn ) la soluzione
ottenuta con il metodo numerico nel punto xn . Si ipotizzer`a che il problema di Cauchy
sia matematicamente ben posto e numericamente stabile. Indicheremo inoltre con
h > 0 il passo con cui si discretizza lequazione differenziale, cio`e xn = x0 + nh e con
N (h) il pi`
u grande valore di n tale che N (h)h (b x0 ) e (N (h) + 1)h > (b x0 )

3.2

Il metodo di Eulero esplicito

Incominciamo con uno dei metodi pi`


u semplici ma poco efficiente dal punto di vista
computazionale. Il metodo attribuito ad Eulero. Come gi`a detto nellintroduzione
indichiamo con Y (x) la vera soluzione del problema (3.1), cio`e Y (x) verifica

Y 0 (x) = f (x, Y (x)) ,


Y (x ) = Y
0

x0 x b

(3.14)

La soluzione approssimata la indichiamo con yn = yh (xn ) , 0 n N (h), dove


gli xn sono punti equidistanziati dati da xn = x0 + nh con h passo di integrazione.
Nei prossimi paragrafi analizzeremo anche metodi a passo variabile che consentono di
controllare lerrore di troncamento commesso.
Molti sono i modi per ottenere il metodo di Eulero esplicito. Noi qui ne analizzeremo
tre.
1. Interpretazione geometrica - Incominciamo dal pi`
u intuitivo che `e quello che
si ottiene da uninterpretazione geometrica (vedi figura).
Consideriamo il grafico della soluzione Y (x) come mostrato in figura. Si prende il
grafico della retta tangente alla curva Y (x) nel punto di ascissa x0 ed utilizziamo
64

y=Y0 +Y'Hx0LHx-x0L

yHx2L
yHx1L

Y=YHxL

YHx0L

h
x0

h
x1

x2

Figura 3.3: Illustrazione del metodo di Eulero


questa retta come unapprossimazione della curva soluzione in x0 x x1 .
Allora si ha
y1 Y0 = Y 0 (x0 )(x1 x0 ) = hf (x0 , Y0 )
quindi il metodo sar`a

y1 = Y0 + hf (x0 , Y0 )
A partire dal punto (x1 , y1 ), dove si `e giunti dopo il primo passo si continua
allo stesso modo per approssimare la soluzione nel punto di ascissa x2 . Va per`o
fatta unosservazione molto importante in quanto nel punto di ascissa x1 non
conosciamo il valore esatto della soluzione ma il suo valore approssimato y1 ,
pertanto a partire dal punto (x1 , y1 ) ci costruiamo la retta che questa volta non
`e parallela alla tangente alla curva nel punto di ascissa x1 ma ha una pendenza
f (x1 , y1 ). Quindi la soluzione approssimata nel puno di ascissa x2 `e data da
y2 = y1 + hf (x1 , y1 )
generalizzando si ottiene il metodo di Eulero esplicito

65

yn+1 = yn + hf (xn , yn ) ,

0 < n N (h) 1

(3.15)

2. Sviluppo in serie di Taylor - Si sviuppa la soluzione Y (x) nellintorno del


punto xn e si valuta in xn+1

Y (xn+1 ) = Y (xn ) + hf (xn , Y (xn )) +

h2 00
Y (n ) ,
2

xn n xn+1

(3.16)

Trascurando il termine dellerrore si ottiene il metodo di Eulero (3.15). Il termine


h2 00
Tn (Y ) = Y (n ) ,
2

xn n xn+1

(3.17)

`e detto errore di troncamento locale o errore di discretizzazione in xn+1 . Tale metodo `e detto metodo di Eulero esplicito in quanto la determinazione della
soluzione approssimata yn+1 `e ottenuta esplicitamente dalla (3.15), cio`e non compare come argomento della f . Tale metodo inoltre `e ad un solo passo in quanto
per poter determinare la soluzione nel passo xn+1 dobbiamo conoscere solo la
soluzione approssimata nel passo precedente.
3. Integrazione numerica - Si integra lequazione differenziale Y 0 (t) = f (t, Y (t))
in [xn , xn+1 ] e si approssima lintegrale con la formula sinistra dei rettangoli.
(Vedi esercizio N. 1 del capitolo 1).

xn+1

f (x, Y (x))dx = Y (xn ) + hf (xn , Y (xn ))+


Y (xn+1 ) = Y (xn ) +
xn


h2
h2 d
+
f (x, Y (x))
= Y (xn ) + hf (xn , Y (xn )) + Y 00 (n )
2 dx
2
x=n

(3.18)

e come prima, trascurando lerrore di troncamento, si giunge al metodo di Eulero


esplicito. In generale lapproccio 2. porta ai metodi ai metodi ad un solo passo
di ordine elevato mentre lapproccio 3. porta ai metodi di Adams ed altri metodi
particolari a pi`
u passi.
Ad ogni passo lerrore di troncamnto che commettiamo localmente si cumula con gli
errori commessi nei passi successivi, come si pu`o vedere bene dalla figura 3.2. Siamo
interessati allo studio di questo errore cumulativo che `e anche detto errore di troncamento globale. Prima di studiare come si propaga, in valore assoluto, lerrore di
troncamento diamo un lemma che ci servir`a.
66

Lemma 1. Per ogni x R


1 + x ex
mentre per ogni x 1
0 (1 + x)m emx
Dimostrazione. Utilizzando il teorema di Taylor,
x2
e , 0x
2
poiche il resto `e sempre positivo seguono banalmente le tesi del lemma.
ex = 1 + x +

Nel resto di tale capitolo assumeremo che la funzione f (x, y) soddisfa la condizione di
Lipschitz (3.2), con costante di lipschitzianit`a K e che inoltre il massimo intervallo,
nellintorno del punto iniziale, dove si ricerca la soluzione del problema di Cauchy, sia
tale che K < 1 in modo da aver garantita lesistenza e lunicit`a della soluzione.
Teorema 7. Supponiamo che la soluzione Y (x) di (3.1) abbia derivata seconda limitata
in [x0 , b]. Allora la soluzione yn = yh (xn ) con 0 xn b ottenuta con il metodo di
Eulero (3.15) soddisfa

 (bx0 )K


e

1
(h)
max Y (xn ) yh (xn ) e(bx0 )K |e0 | +
x0 xn b
K

(3.19)

dove
(h) =

h
h
max |Y 00 (x)| = kY 00 (x)k
2 x0 xb
2

(3.20)

ed e0 = Y0 yh (x0 ).
Dimostrazione. Sia en = Yn yn , n 0. Ricordando la definizione di N (h), data alla
fine del primo paragrafo, definiamo
n =

h 00
Y (n ) , 0 n N (h)
2

e pertanto, utilizzando la (3.20)


max |n | (h)

0nN (h)

Da (3.16), (3.14) e da (3.15) abbiamo


Yn+1 = Yn + hf (xn , Yn ) + hn

67

0 n N (h) 1

(3.21)

yn+1 = yn + hf (xn , yn ) ,

0 n N (h) 1

(3.22)

Sottraendo (3.22) da (3.21),


en+1 = en + h[f (xn , Yn ) f (xn , yn )] + hn

0 n N (h) 1

(3.23)

passando ai moduli in (3.23), utilizzando la Lipschitzianit`a di f si ha


|en+1 | (1 + hK)|en | + h (h)

(3.24)

Applicando la (3.24) ricorsivamente otteniamo


|en | (1 + hK)n |e0 | + [1 + (1 + hK) + ... + (1 + hK)n1 ]h (h)
Ricordando ora che la progressione geometrica
2

1 + q + q + ... + q

n1

qn 1
=
, q 6= 1
q1

otteniamo
|en | (1 + hK)n |e0 | +

(1 + hK)n 1
(h)
K

e poiche dal lemma


(1 + hK)n enhK = e(xn x0 )K e(bx0 )K
segue immediatamente la (3.19).
Il risultato di questo teorema `e molto importante in quanto ci consente di verificare che
se lerrore di troncamento locale `e un O(h2 ) , h 0 lerrore di troncamento globale
`e un O(h) , h 0. Riveste pertanto unimportanza rilevante il termine (h) come
vedremo pi`
u avanti. Qui osserviamo solo che (h) 0 e questo sta ad indicare che il
metodo di Eulero esplicito `e un metodo consistente.
Propagazione dellerrore di arrotondamento - Dal teorema precedente si `e visto
che quando il passo h 0 lerrore globale di troncamento tende a zero. Questo
comunque non vuol dire che scegliendo sempre passi pi`
u piccoli lerrore decresce sempre.
In realt`a lerrore di troncamento e la sua propagazione non `e lunico errore che si
commette, ad ogni passo si commette anche un errore di arrotondamento od anche
di macchina e la sua propagazione `e tanto pi`
u consistente quanto maggiori sono le
operazioni che facciamo. Pertanto quando h 0 tale errore pu`o esplodere tanto da
essere predominante rispetto allerrore di troncamento globale. Vediamo questo effetto

68

in dettaglio. Supponiamo di applicare il metodo di Eulero e di tener conto ad ogni


passo dellerrore di arrotondamento che chiameremo con n , quindi
yn+1 = yn + hf (xn , yn ) + n , 0 n N (h) 1

(3.25)

Sia (h) il massimo errore di arrotondamento n . Sappiamo che il massimo errore (h)
non decresce in un computer ma esso rimane pi`
u o meno costante ed `e proporzionale
allerrore di macchina u, ovvero u = (h)/kY k . Sottraendo la (3.16) dalla (3.25)
chiamando con en = Yn yn abbiamo:
en+1 = en + h[f (xn , Yn ) f (xn , yn )] + hn n

0 n N (h) 1

Procedendo come si `e visto nella dimostrazione del teorema precedente si giunge a



 (bx0 )K


(h)
e

1
(bx
)K
0
( (h) +
)
max Yn yn e
|
e0 | +
x0 xn b
K
h

(3.26)

In definitiva, trascurando il termine in e0 , si trova che




k2
= E(h)
max Yn yn k1 h +
x0 xn b
h
Come si vede tale limite E(h) `e una funzione in h che tende allinfinito per h
, ovviamente dovuto allerrore di troncamento globale. Purtroppo tale errore tende
allinfinito anche quando h 0 e questo `e dovuto alla propagazione dellerrore di
arrotondamento. In definitiva esiste un valore ottimale h? di h per il quale si ha errore
minimo. Al di sotto di tale valore lerrore ricresce.
Vediamo ora la convergenza del metodo relativamemte al problema test ed anche la
sua regione di assoluta stabilit`a.
Per analizzare la convergenza, dopo aver trovato la forma generale della yn in termini
del dato iniziale, si calcola il limite per h 0 ed n con nh = x.
Il metodo applicato al problema test (3.10) `e
yn+1 = (1 + h)yn , 0 n N (h) 1
Essendo y0 = Y0 = 1 iterando ricorsivamente abbiamo
y1 = (1 + h) , y2 = (1 + h)y1 = (1 + h)2 , ..., yn = (1 + h)n
nh

x

1
1
= lim (1 + h) h
= ex
lim yn = lim (1 + h)n = lim (1 + h) h

h0
nh=x

h0
nh=x

h0
nh=x

h0
nh=x

Dalla definizione di assoluta stabilit`a data nel primo paragrafo abbiamo che per
R < 0 il metodo `e assolutamente stabile se
69

|1 + h| < 1 ovvero 0 < h < 2/


In figura `e evidenziata la regione di assoluta stabilit`a per C, Re() < 0. (z = h)
ImHzL

ReHzL

-1

-2
-3

-2

-1

Figura 3.4: Eulero esplicito - Regione di assoluta stabilit`a

3.3

Il metodo di Eulero implicito ed il metodo trapezoidale

In tale paragrafo prendiamo in esame due metodi ad un solo passo di tipo implicito. In
particolare il metodo di Eulero implicito ed il metodo trapezoidale. Useremo lintegrazione numerica per ottenere questi due metodi ed analizzeremo, rispetto al problema
test, la convergena di entrambi i metodi e le regioni di assoluta stabilit`a.
Il metodo di Eulero implicito - Per ottenere tale metodo per integrazione numerica abbiamo bisogno della formula di quadratura destra dei rettangoli. Nella formula
di quadratura destra dei rettangoli si approssima la funzione integranda con il polinomio di grado zero che interpola la funzione integranda nellestremo superiore di
integrazione, pertanto
Z
I(f ) =

Z
(x b)g(b)dx +

g(x)dx =
a

70

(x b)g[b, x]dx = I0d (f ) + E0d (f )

e quindi
(b a)2 0
g () , [a, b]
2
Se ora integriamo lequazione differenziale Y 0 (x) = f (x, Y (x)) tra xn ed xn+1 ed
utilizziamo la formula di quadratura destra dei rettangoli si ha
I0d (f ) = (b a)g(b) ,

E0d (f ) =

xn+1

f (x, Y (x))dx = Y (xn ) + hf (xn+1 , Y (xn+1 ))+


Y (xn+1 ) = Y (xn ) +
xn


h2 d
h2 00

f (x, Y (x))
= Y (xn ) + hf (xn+1 , Y (xn+1 )) Y (n )
2 dx
2
x=n

(3.27)

Dalla precedente uguaglianza, trascurando lerrore, si trova il seguente metodo di Eulero


implicito
yn+1 = yn + hf (xn+1 , yn+1 ) , 0 n N (h) 1

(3.28)

In tal caso si commette un errore di troncamento locale pari a


h2 00
Tn (Y ) = Y (n ) ,
2

n [xn , xn+1 ]

(3.29)

Per tale metodo quindi (h) = h2 kY 00 (x)k pertanto 0 per h 0 e quindi il


metodo si dice consistente. Dalla formula inoltre si vede che `e ad un passo perch`e
anche in questo caso per poter trovare la soluzione nel punto xn+1 abbiamo bisogno
` inoltre di tipo
solo del valore della soluzione approssimata yn al passo precedente xn . E
implicito in quanto la yn+1 non `e fornita esplicitamente ma compare implicitamente ad
argomento della funzione f .
Convergenza e regione di assoluta stabilit`
a - Eulero implicito Per analizzare la convergenza rispetto al problema test (3.10) dobbiamo srivere la soluzione
generale ottenuta con il metodo (3.28).
1
yn , 0 n N (h) 1
1 h
Tenendo conto che y0 = 1, iterando a partire da n = 0 otteniamo:
yn+1 = yn + hyn+1

y1 =

yn+1 =

1
1
1
1
, y2 =
y1 =
,
...,
y
=
n
1 h
1 h
(1 h)2
(1 h)n

Possiamo sviluppare la yn in serie di Taylor nellintorno di h = 0 ed abbiamo:


yn = [1 + h + O(h2 )]n
Si ha pertanto che
71


n

n
lim yn = lim 1 + h + O(h2 ) = lim (1 + h) =

h0
nh=x

h0
nh=x

h0
nh=x



nh
x
1
1
= lim (1 + h) h
= lim (1 + h) h
= ex
h0
nh=x

h0
nh=x

Per la regione di assoluta stabilt`a deve risultare yn 0 per h fissato ed n .


Dobbiamo pertanto imporre che

1
<1
1 h

.
Ora se R con < 0 la disuguagliaza precedente `e soddisfatta qualunque sia h > 0,
mentre se prendiamo C con Re() < 0 la disuguagliaza `e verificata allesterno del
cerchio disegnato in figura 3.3. Abbiamo quindi che la regione di assoluta stabilit`a `e
illimitata e quindi il metodo di Eulero implicito `e A-stabile.
ImHzL
2

ReHzL

-1

-2
-1

Figura 3.5: Eulero implicito - Regione di assoluta stabilit`a


Il metodo trapezoidale - Anche per la derivazione del metodo trapezoidale ci serviremo dellintegrazione numerica. Si integra lequazione differenziale Y 0 (x) = f (x, Y (x))
tra xn ed xn+1 e si approssima il valore dellintegrale con la formula di quadratura dei
trapezi. Si ha quindi:

72

xn+1

Z
Y (xn+1 ) = Y (xn )+

xn

h
h3 000
f (x, Y (x))dx = [f (xn , Y (xn ))+f (xn+1 , Y (xn+1 )] Y (n )
2
12

Il metodo trapezoidale `e quindi


h
yn+1 = yn + [f (xn , yn ) + f (xn+1 , yn+1 )] , 0 n N (h) 1
2
e si commette un errore di troncamento locale pari a

(3.30)

h3 000
Y (n )
(3.31)
12
Considerazioni analoghe a quelle fatte per il metodo di Eulero implicito ci consentono
di dire che tale metodo `e consistente ad un solo passo e di tipo implicito.
Convergenza e regione di assoluta stabilit`
a - Metodo trapezoidale
Applicando il metodo al problema test (3.10) abbiamo
Tn (Y ) =

h
yn+1 = yn + [yn + yn+1 ] ,
2


yn+1

1+
=
1

h
2
h
2

0 n N (h) 1


yn

0 n N (h) 1

Tenendo conto che y0 = 1, se iteriamo la precedente relazione si trova




1+
y1 =
1
Possiamo sviluppare (1 +
1+
1

h
2
h
2

h
2
h
2

1+
, y2 =
1

h
)/(1
2

= (1 +

h
)
2

h
2
h
2

2

1+
, ..., yn =
1

h
2
h
2

n

in serie di Taylor nellintorno di h = 0

h
h h2 2
)(1 +
+
+ ....) = 1 + h + O(h2 )
2
2
4

quindi
yn = (1 + h + O(h2 ))n
cos` come nel metodo di Eulero implicito si trova che lim yn = ex .
h0
nh=x

Per determinare la regione di assoluta stabilit`a dobbiamo imporre che



1 +

1

h
2
h
2



<1

(3.32)

Per R, con < 0, si vede agevolmente che la (3.32) `e verificata per tutti gli
h > 0. Per C, con Re() < 0, si trova che la regione di assoluta stabilit`a `e tutto
73

il semipiano Re(z) < 0, z = h, come `e evidenziato in figura. Possiamo dire quindi


che anche il metodo trapezoidale `e A-stabile avendo una regione di assoluta stabilit`a
illimitata.
ImHzL

ReHzL

-1

-2

-3
-3

-2

-1

Figura 3.6: Metodo Trapezoidale - Regione di assoluta stabilit`a


Soluzioni ottenute con metodi iterativi - In generale i metodi di tipo implicito
vengono risolti con schemi di tipo iterativo simili al metodo delle iterate funzionali per
la determinazione del punto fisso di unapplicazione g(x). Tali schemi vengono anche
chiamati algoritmi predictor corrector quando il punto di partenza dello schema iterativo viene fornito da un metodo numerico di tipo esplicito. Vediamo ci`o relativamente
(0)
al metodo (3.30). Sia yn+1 un buon valore iniziale della soluzione yn+1 , possiamo allora determinare yn+1 utilizzando il metodo trapezoidale (3.30) con il seguente schema
iterativo
h
(j+1)
(j)
yn+1 = yn + [f (xn , yn ) + f (xn+1 , yn+1 )] , j = 0, 1, ...
(3.33)
2
Come gi`a detto il valore iniziale `e generalmente fornito da un metodo esplicito. Nel
caso specifico possiamo pensare di fornire tale valore con il metodo di Eulero esplicito,
cio`e
(0)

yn+1 = yn + hf (xn , yn ) , n = 1, 2, ..., N (h) 1


74

Per analizzare le iterate e vedere sotto quali condizioni lo schema iterativo converge
sottraiamo dalla (3.30) la (3.33) ed utilizziamo la condizione di Lipschitz.
(j+1)

yn+1 yn+1 =

h
(j) 
f (xn+1 , yn+1 ) f (xn+1 , yn+1 )
2

hK
(j)
|yn+1 yn+1 |
2
Se supponiamo che il passo h sia sufficientemente piccolo tale che hK/2 < 1 abbiamo
che lo schema iterativo converge linearmente, con velocit`a hK/2, alla soluzione nume(0)
rica yn+1 . In pratica il valore iniziale yn+1 `e scelto in modo tale che una sola iterata `e
(1)
sufficiente ad approssimare la soluzione yn+1 , cio`e yn+1 ' yn+1 . Nel caso specifico, del
metodo trapezoidale come correttore e del metodo di Eulero esplicito come predittore,
utilizzando una sola iterata si giunge al metodo di Euhn che analizzeremo in seguito.
(j+1)

|yn+1 yn+1 |

75

3.4

Metodi a pi`
u passi

Sia h > 0 il passo di integrazione, definiamo con xn = x0 + nh, n = 0, 1, ..., N (h). La


forma generale di un metodo a pi`
u passi o multistep `e data da
yn+1 =

p
X

p
X

aj ynj + h

j=0

bj f (xnj , ynj ) , n = p, p + 1, ..., N (h) 1

(3.34)

j=1

I coefficienti a0 , a1 , ..., ap , b1 , b0 , ..., bp sono costanti reali e p 0. Se ap 6= 0 o bp 6= 0


il metodo `e detto a p + 1 passi in quanto per determinate yn+1 dobbiamo conoscere
la soluzione approssimata in p + 1 passi precedenti. Se b1 6= 0 il metodo `e implicito
altrimenti avremo un metodo esplicito. I tre metodi che abbiamo analizzato fino ad ora
rientrano nella formulazione (3.34). In particolare per tutti e tre p = 0. Nel metodo
di Eulero esplicito: b1 = 0, a0 = 1, b0 = 1. Nel metodo di Eulero implicito: b1 = 1,
a0 = 1, b0 = 0. Nel metodo trapezoidale: b1 = 1/2, a0 = 1, b0 = 1/2.
Diamo ora la definizione di errore di troncamento locale, di consistenza e di ordine di
convergenza del metodo (3.34).
Definizione 18. Per ogni funzione differenziabile Y (x), soluzione del problema di
Cauchy (3.1), si definisce errore di troncamento locale
Tn (Y ) = Yn+1

X
p

aj Ynj + h

j=0

p
X

0
bj Ynj


, n = p, ..., N (h) 1

(3.35)

j=1

Se introduciamo la funzione n (Y ) = h1 Tn (Y ) possiamo dare la definizione di metodo


multistep consistente.
Definizione 19. Il metodo multistep (3.34) si dice consistente se
(h) =

max |n (Y )| 0 per h 0

(3.36)

0nN (h)

La condizione di consistenza `e una condizione necessaria per la convergenza di un


metodo multistep.
Definizione 20. Il metodo multistep (3.34) si dice che ha ordine di convergenza m 1
se
(h) = O(hm ) per h 0

(3.37)

Vediamo ora un teorema che ci fornisce delle relazioni sui coefficienti del metodo (3.34)
affinche lo stesso abbia ordine di convergenza m.
Teorema 8. Sia m 1 un dato indice. affinche il metodo multistep (3.34) abbia ordine
di convergenza m per tutte le funzioni Y (x) Cm+1 [x0 , b], soluzioni del problema di
Cauchy (3.1), `e necessario e sufficiente che
76

1.

p
X

aj = 1

j=0

2.

p
X

jaj +

j=0

3.

p
X
j=0

p
X

bj = 1

(3.38)

j=1
i

(j) aj + i

p
X

(j)i1 bj = 1 , i = 2, ..., m

j=1

Dimostrazione. Possiamo innanzi tutto osservare che loperatore Tn (Y ) `e lineare, cio`e


Tn (Y + W ) = Tn (Y ) + Tn (W )
per ogni scelta di , C e per tutte le funzioni derivabili Y (x) e W (x).
Utilizzando lo sviluppo in serie di Taylor della funzione Y (x) nellintorno del punto xn ,
essendo per ipotesi m + 1 volte differenziabile con continuit`a,
m
X
1 (i)
Y (x) =
Y (xn )(x xn )i + Rm+1 (x)
i!
i=0

(3.39)

Utilizzando la linearit`a di Tn abbiamo


m
X
1 (i)
Tn (Y ) =
Y (xn )Tn ((x xn )i ) + Tn (Rm+1 (x))
i!
i=0

Dobbiamo quindi calcolare Tn ((x xn )i ) per i 0.


1.

per i = 0
p
X

Tn (1) = 1

aj = c 0

j=0

2.

per i = 1

Tn (x xn ) = (xn+1 xn )

X
p

aj (xnj xn ) + h

j=0

p
X
j=1


X

p
p
X
Tn (x xn ) = h 1
jaj +
bj
= c1 h
j=0

3.

per i > 1

77

j=1


bj

Tn ((x xn ) ) = (xn+1 xn )

X
p

aj (xnj xn ) + h

Tn ((x xn ) ) = h 1

X
p

i(xnj xn )

i1


bj

j=1

j=0

p
X

(j) aj + i

j=0

p
X

(j)

i1


bj

= ci hi

j=1

Possiamo pertanto riscrivere Tn nel seguente modo:


Tn (Y ) =

m
X
ci
i=0

i!

hi Y (i) (xn ) + Tn (Rm+1 (x))

Se scriviamo il resto Rm+1 (x) nel seguente modo


(x xn )m+1 (m+1)
Y
(xn ) + .....
Rm+1 (x) =
(m + 1)!
Tn (Rm+1 (x)) =

cm+1
hm+1 Y (m+1) (xn ) + O(hm+2 )
(m + 1)!

poiche (h) = O(hm ) se Tn (Y ) = O(hm+1 ) il metodo ha ordine di convergenza m se


sono verificate le tre condizioni (3.38). Se sono verificate solo le prime due condizioni
allora (h) = O(h) e pertanto il metodo multistep `e solo consistente.
Tale teorema sullordine di convergenza di un metodo multistep ci permette anche di
determinare tali metodi. Basta imporre le condizioni (3.38). Vediamo qualche esempio.
Esempio 1 Si vuole trovare tutti i metodi multistep espliciti ad un solo passo che
risultino consistenti. In tal caso p = 0 e b1 = 0, quindi dobbiamo trovare solo a0 e b0 .
Imponendo le prime due condizioni delle (3.38) si ottiene a0 = 1 e b0 = 1. Possiamo
quindi concludere che esiste solo un metodo ad un passo esplicito che `e consistente,
tale metodo `e il metodo di Eulero esplicito.
Esempio 2 Si vogliono determinare tutti i metodi impliciti ad un solo passo che abbiano
ordine di convergenza due. Anche in questo caso p = 0 e dobbiamo imporre le prime
due condizioni sui coefficienti e la terza per i = 2.

a =1

0
b1 + b0 = 1

2b = 1
1

La soluzione del sistema `e: a0 = 1, b1 = 1/2 e b0 = 1/2. Anche in tal caso si trova
che esiste un solo metodo ad un passo che ha ordine di convergenza due ed `e il metodo
trapezoidale. Problemi simili saranno affrontati negli esercizi proposti.
78

3.5

Il metodo del punto di mezzo

Uno dei modi pi`


u immediati per ottenere il metodo del punto di mezzo `e lintegrazione
numerica. Si integra lequazione Y 0 (x) = f (x, Y (x)) nellintervallo [xn1 , xn+1 ] e si
approssima lintegrale della f con la formula di quadratura dei rettangoli nel punto di
mezzo (cfr. esercizo 2 del capitolo 2).
Z

xn+1

xn+1

f (x, Y (x))dx

Y (x)dx =
xn1

xn1

h3 000
y(xn+1 ) = Y (xn1 ) + 2hf (xn , Y (xn )) + Y (n ) , n [xn1 , xn+1 ]
3
Il metodo pertanto `e
yn+1 = yn1 + 2hf (xn , yn ) ,

n = 1, 2, ..., N (h) 1

(3.40)

e si commette un errore di troncamento locale Tn (y) dato da:


h2 000
h3 000
Tn (y) = Y (n ) con (h) = kY (x)k
(3.41)
3
3
Possiamo quindi dire che tale metodo `e esplicito a due passi ed ha ordine di convergenza
due. Analizziamo ora la stabilit`a e lassoluta stabilit`a rispetto al problema test (3.10).
Il metodo del punto di mezzo applicato a tale problema test `e
yn+1 = yn1 + 2hyn

(3.42)

La (3.42) rappresenta unequazione alle differenze omogenea, a coefficienti costanti,


del seondo ordine, la cui soluzione si trova come spiegato in appendice B. Lequazione
caratteristica associata alla (3.42) `e data da
r2 2hr 1 = 0

(3.43)

le cui radici sono


r0 (h) = h +

1 + h2 2

r1 (h) = h

1 + h2 2

e quindi la soluzione generale della (3.42) `e


yn = c0 [r0 (h)]n + c1 [r1 (h)]n

(3.44)

dove c0 e c1 possono essere determinate se si conoscono due valori di yn . Ricordiamo


che la regione di assoluta stabilit`a si trova per i valori di h per cui il comportamento
allinfinito della soluzione numerica `e dello stesso tipo della soluzione analitica del

79

problema test. Pertanto la soluzione numerica si comporta allinfinito come la soluzione


analitica se |r0 (h)| < 1 e |r1 (h)| < 1. Non esistono valori di h C che verificano
tale due ultime disuguaglianze. In figura la linea continua rappresenta i valori in cui
|r0 (h)| = 1 e |r1 (h)| = 1. Nel resto del piano complesso i valori di |r0 (h)| e |r1 (h)|
sono maggiori di uno.
ImHzL

ReHzL

-1

-2
-2

-1

Figura 3.7: Metodo del punto di mezzo - Regione di assoluta stabilit`a


Uno studio dettagliato della soluzione generale (3.44) ci permette di osservare che il
metodo del punto di mezzo presenta una forma di debole stabilit`a. Per piccoli valori
di h, allontanandoci dal punto iniziale, si hanno problemi di stabilit`a. Sappiamo che
la soluzione esatta del problema test `e Y (x) = ex , possiamo pertanto prendere y0 = 1
ed y1 = 1 + h e determinare le costanti c0 e c1 .

c + c = y = 1
0
1
0
c r + c r = y = 1 + h
0 0

1 1

La soluzione di tale sistema `e


eh r1
r0 eh
2
= 1 + O(h ) ,
c1 =
= O(h2 )
c0 =
2
2
2
2
2 1+h
2 1+h
inoltre per h 0 possiamo approssimare r0 e r1 con
80

r0 = 1 + h + O(h2 ) , r1 = h 1 + O(h2 )
e quindi la soluzione generale pu`o essere scritta come segue
yn = [1 + O(h2 )][1 + h + O(h2 )]n + (1)n O(h2 )[1 h + O(h2 )]n

(3.45)

Sappiamo che lim [1 + h + O(h2 )]n = ex , lim [1 h + O(h2 )]n = ex . Pertanto


h0
hn=x

h0
hn=x

se ad esempio R con < 0 si vede che il primo pezzo di soluzione converge verso la
soluzione esatta, che decresce esponenzialmente, mentre il secondo pezzo, a destra del
punto iniziale, cresce esponenzialmente al crescere di n con segni alterni. Questo sta
a significare che per piccoli valori di h la soluzione numerica si allontana, oscillando,
sempre di pi`
u dalla soluzione analitica. Questo comportamento sta ad indicare che il
metodo del punto di mezzo `e un metodo debolmente stabile e non ha regioni di assoluta
stabilit`a.

3.6

Convergenza e stabilit`
a dei metodi a pi`
u passi

Nel paragrafo 3.4 abbiamo analizzato lordine di convergenza di un metodo multistep


e la tecnica dei coefficienti indeterminati per poterli ricavare. In questo paragrafo
analizzeremo, in modo completo, la teoria della stabilit`a e convergenza di tali metodi.
Come detto un metodo a pi`
u passi ha la seguente formulazione generale
yn+1 =

p
X
j=0

aj ynj + h

p
X

bj f (xnj , ynj ) , n = p, p + 1, ..., N (h) 1

(3.46)

j=1

Facciamo innanzi tutto vedere che le condizioni di consistenza 1. e 2. di (3.38) sono indispensabili per la convergenza e stabilit`a del metodo (3.46). A tale proposito
prendiamo in esame due problemi di Cauchy molto semplici.
y 0 (x) = 0 , y(0) = 1

(3.47)

y 0 (x) = 1 , y(0) = 1

(3.48)

La soluzione del problema (3.47) `e Y (x) = 1. Si vede che se non `e verificata la


condizione 1. delle (3.38) il metodo (3.46) non converge alla soluzione esatta supposto
di partire da p + 1 valori esatti della soluzione, cio`e y0 = y1 = y2 = ... = yp = 1.
Dalla (3.46) abbiamo
yp+1 =

p
X

aj ypj =

j=0

p
X

aj

j=0

e pertanto yp+1 vale 1 se `e verificata la 1. delle (3.38).


81

Il problema (3.48) ha come soluzione esatta Y (x) = x. Se anche in questo caso supponiamo di assegnare i primi p + 1 valori esattamente, cio`e y0 = 0, y1 = h, ..., yp = ph
utilizzando il metodo multistep abbiamo che:
yp+1 =

p
X

p
X

aj h(p j) + h

j=0

p
p
p
X
X
 X

bj = h p
aj +
jaj +
bj

j=1

j=0

j=0

j=1

pertanto se sono verificate le condizioni 1. e 2. delle (3.38) si ottiene che yp+1 = (p+1)h.
Diamo ora le definizioni di stabilit`a o zero-stabilit`a e convergenza del metodo (3.46).
Definizione 21 (Stabilit`a di un metodo multistep). Per ogni h h0 , siano z0 , z1 , ..., zp
p + 1 valori perturbati di y0 , y1 , ..., yp tali che
max |zn yn | 

0np

0 < h h0

con  > 0 piccolo a piacere. Diciamo che il metodo multistep (3.46) `e stabile se esiste
una costante c limitata, indipendente da h, tale che:
max |zn yn | c

0nN (h)

0 < h h0

Con zn si `e indicata la soluzione numerica ottenuta con il metodo (3.46) a partire dai
valori perturbati z0 , z1 , ..., zp .
Definizione 22 (Convergenza di un metodo multistep). Supposto che i primi p + 1
valori y0 , y1 , ..., yp soddisfano

lim

h0


max |Yn yn | = 0

0np

il metodo multistep (3.46) `e convergente se



lim

h0


max |Yn yn | = 0

0nN (h)

Facciamo ora vedere un esempio di un metodo multistep consistente che non `e stabile.
yn+1 = 3yn 2yn1 +


h
f (xn , yn ) 3f (xn1 , yn1 )
2

` facile provare che il metodo `e un metodo del secondo ordine e quindi consistente. Se
E
prendiamo il seguente problema di Cauchy y 0 (x) = 0 , y(0) = 0 si ha che la soluzione
esatta `e Y (x) = 0. Se partiamo da due valori iniziali esatti y0 = y1 = 0 troviamo che,
applicando il metodo multistep, yn = 0 , 0 n N (h). Applichiamo ora a tale
problema il metodo multistep a partire da due valori perturbati z0 =  e z1 = 2 con
 > 0. Si trova quindi che

82

y2 = 6 2 = 4 = 22 
y3 = 12 4 = 8 = 23 
...........................
yn = 2n 
pertanto
max |zn yn | =

0nN (h)

max |2n | = 2N (h)


0nN (h)

Come si pu`o vedere non `e possibile trovare una costante c, indipendente da h h0 ,


per cui max |zn yn | c in quanto N (h) per h 0.
0nN (h)

La convergenza e la stabilit`a di un metodo multistep sono legate alle radici del primo
polinomio caratteristico
(r) = r

p+1

p
X

aj rpj

(3.49)

j=0

Da notare che se il metodo `e consistente dalla condizione 1. di (3.38) si ha che


p
X
(1) = 1
aj = 0, ovvero il polinomio ammette sempre come radice r0 = 1. Inj=0

dichiamo con r0 , r1 , ..., rp le radici di (r) = 0 ripetute secondo la loro molteplicit`a.


Definiamo ora la condizione sulle radici o root condition del polinomio (r).
Definizione 23 (Condizione sulle radici). Diciamo che il metodo multistep (3.46)
verifica la condizione sulle radici se
|rj | 1 , j = 0, 1, ..., p

(3.50)

0 (rj ) 6= 0

(3.51)

per |rj | = 1

La prima condizione richiede che tutte le radici di (r) siano nel cerchio unitario del
piano complesso {z : |z| 1}, la seconda condizione stabilisce che se una radice si
trova sulla frontiera del cerchio deve essere semplice.
La convergenza e la stabilit`a di un metodo multistep sar`a analizzata relativamente al
problema test (3.10). Tale analisi garantisce anche la convergenza e stabilit`a dei metodi
multistep per il generico problema di Cauchy (3.1) in un intorno del punto iniziale x0 .
Se applichiamo il metodo a pi`
u passi (3.46) al problema test (3.10) si ha

83

yn+1 =

p
X

aj ynj + h

p
X

bj ynj

(3.52)

j=1

j=0

La soluzione generale yn dellequazione lineare alle differenze (3.52) si ottiene considerando le radici del polinomio caratteristico cos` come indicato nellappendice B.
Scegliendo come soluzione yn = rn questa verifica lequazione (3.52) se
r

p+1

p
X

aj r

pj

indicando con (r) =

bj rpj = 0

j=1

j=0
p
X

p
X

bj rpj e ricordando la definizione (3.49) del primo polinomio

j=1

caratteristico possiamo riscrivere il polinomio caratteristico associato allequazione alle


differenze (3.52) nel seguente modo
(r) = (r) h(r)

(3.53)

Siano rj (h) , j = 0, 1, ..., p le radici del polinomio caratteristico (r). Vista la


dipendenza continua delle radici del polinomio dai suoi coefficienti si ha che le radici
rj (h) dipendono con continuit`a da h e pertanto
lim rj (h) = rj (0) = rj

h0

dove le rj sono le radici del polinomio (r).


Se le radici rj (h) sono tutte semplici lequazione alle differenze (3.52) ha come soluzione generale
yn =

p
X


n
j rj (h)

(3.54)

j=0

Se una radice rs (h) ha molteplicit`a allora [rs (h)]n , n[rs (h)]n , ..., n1 [rs (h)]n sono
soluzioni linearmente indipendenti di (3.52) e quindi si modifica la forma generale della
soluzione.
Possiamo ora dare il teorema di stabilit`a ed il teorema di convergenza per il metodo
multistep (3.46)
Teorema 9 (Teorema di stabilit`a). Supposto che il metodo a pi`
u passi (3.46) sia
consistente allora `e stabile se e solo se valgono le condizioni sulle radici (3.50) e (3.51).
Dimostrazione. 1. Necessit`
a - Incominciamo mostrando la necessit`a della condizione sulle radici. Supponiamo che esista una radice ri (0) = ri che non verifica la
prima condizione sulle radici, cio`e tale che |ri | > 1. Consideriamo il problema di Cau-

84

chy y 0 (x) = 0 , y(0) = 0 la cui soluzione `e Y (x) = 0. Il metodo applicato a tale


problema `e
yn+1 =

p
X

aj ynj

j=0

Se scegliamo come primi valori y0 = y1 = ... = yp = 0 allora chiaramente la soluzione


numerica yn = 0 , n = 0, 1, ..., N (h). Perturbando i primi valori con z0 = , z1 =
p
X
p
ri , ..., zp = ri abbiamo che zp+1 = 
aj ripj = rip+1 essendo ri zero del polinomio
j=0

(r) e pertanto zn = rin . Allora


max |zn yn | = |ri |N (h)

0nN (h)

ma in questo modo non `e possibile trovare una costante c indipendente da h < h0 per
cui max |zn yn | c in quanto N (h) per h 0 ed essendo, per ipotesi,
0nN (h)

|ri | > 1 anche |ri |N (h) .


La necessit`a per la stabilit`a della seconda condizione sulle radici `e lasciata come
esercizio.
2. Sufficienza - Come gi`a detto la dimostrazione sar`a fatta relativamente al problema test (3.10). Siano yn e zn la soluzione numerica di (3.10) ottenuta con il metodo multistep (3.46) e zn sempre la soluzione numerica di (3.10) ma con dati iniziali
perturbati, supponiamo cio`e che
max |zn yn |  ,  > 0

0np

Se indichiamo con en = zn yn si ha che en verifica luguaglianza


en+1 =

p
X

aj enj + h

j=0

p
X

bj enj

, n = p, ..., N (h) 1

(3.55)

j=1

La dimostrazione della sufficienza sar`a fatta nel caso in cui le radici rj (h) del polinomio
caratteristico (r) risultino tutte semplici. Con ragionamenti simili si dimostra la
stabilit`a nel caso in cui qualche radice sia multipla. Sotto tali ipotesi la soluzione
generale en di (3.55) `e
en =

p
X


n
j rj (h)
, n = 0, 1, ..., N (h)

j=0

I coefficienti j debbono essere scelti in modo che

85

(3.56)

0 + 1 + ... + p = e0

r (h) + r (h) + ... + r (h) = e


0 0
1 1
p p
1

...............................

r (h)p + r (h)p + ... + r (h)p = e


0 0
1 1
p p
p
Essendo il determinante associato alla matrice dei coefficienti il determinante di Wandermonde Wp+1 di ordine p + 1 ed essendo per ipotesi rj (h) 6= ri (h) per j 6= i si ha
che Wp+1 6= 0 abbiamo pertanto che esiste una sola soluzione del sistema lineare e che
questa `e limitata essendo |e0 |, |e1 |, ..., |ep | . Abbiamo cio`e che esiste una costante
c1 , indipendente da 0 < h h0 , per cui
max |j | c1 

0jp

Per completare la dimostrazione resta da far vedere che per j = 0, 1, ..., p anche le

n
rj (h) sono limitate per 0 n N (h) con 0 < h h0 . Sia h = u, consideriamo
lo sviluppo
rj (u) = rj (0) + urj0 () ,

0u

(3.57)

Per determinare rj0 (u) deriviamo lidentit`a (rj (u)) u(rj (u)) = 0 rispetto ad u
0 (rj (u))rj0 (u) (rj (u)) u 0 (r( u))rj0 (u) = 0
per cui
rj0 (u) =

(rj (u))
u 0 (rj (u))

0 (rj (u))

(3.58)

Dallipotesi che rj (0) = rj sia una radice semplice di (r) = 0 per j = 0, 1, ..., p segue
che 0 (rj (0)) 6= 0 e per la continuit`a anche 0 (rj (u)) 6= 0 per u sufficientemente piccolo.
Il denominatore di (3.58) quindi `e non nullo e pertanto possiamo limitare rj0 (u), cio`e
|rj0 (u)| c2 , |u| u0 per qualche u0 > 0. Utilizzando tale risultato unitamente
allo sviluppo (3.57) e alla condizione sulle radici (3.50) abbiamo
|rj (h)| |rj (0)| + c2 |h| 1 + c2 |h|




rj (h) n 1 + c2 |h| n ec2 n|h| ec2 (bx0 )||
ricordando lespressione di en e la limitatezza dei j `e provato che

86

max |en | c3 ec2 (bx0 )||

0nN (h)

0 < h h0

Teorema 10 (Teorema di convergenza). Supposto che il metodo a pi`


u passi (3.46) sia
consistente allora `e convergente se e solo se valgono le condizioni sulle radici (3.50) e
(3.51).
Dimostrazione. 1. Necessit`
a - Anche in questo caso incominciamo a provare la
necessit`a delle condizioni sulle radici e come per la stabilit`a prendiamo in esame il
problema di Cauchy y 0 (x) = 0, y(0) = 0 la cui soluzione `e Y (x) = 0. Il metodo
multistep (3.46) per tale problema divnta
yn+1 =

p
X

aj ynj , n p

j=0

dove y0 , ..., yp debbono verificare la seguente condizione:


lim

h0


max |yn | = 0

0np

Supponiamo che non sia verificata la prima condizione sulle radici (3.50) ma che esista
una radice ri = ri (0) il cui modulo |ri | > 1. Prendiamo i primi p + 1 valori yn =
hrin , n = 0, 1, ..., p, applicando il metodo multistep abbiamo
yp+1 = h

p
X

aj ripj = hrip+1

j=0

essendo ri radice del polinomio (r), pertanto yn = hrin , n = 0, 1, ..., N (h). Quindi
max |Y (xn ) yn | = h|ri |N (h)

0nN (h)

Se scegliamo h tale che h = b/N (h) si ha che


lim

h0

b
|ri |N (h) =
h0 N (h)


max |Y (xn ) yn | = lim

0nN (h)

in quanto N (h) per h 0 e |ri | > 1. Provare la necessit`a della seconda


condizione sulle radici la lasciamo come esercizio.
2. Sufficienza - Anche in questo caso proveremo la sufficienza per il problema test
(3.10). Supponiamo che siano verificate le condizioni sulle radici e che le radici rj (h)
siano tutte semplici, allora la soluzione ottenuta con il metodo multistep del problema
test `e

87

yn =

p
X

j [rj (h)]n

j=0

Dimostriamo come prima cosa che il termine 0 [r0 (h)]n converge alla soluzione esatta
Y (x) = ex . Ricordiamo che abbiamo indicato con r0 (0) = r0 = 1 essendo r0 = 1
sempre radice di (r) se `e verificata la prima condizione di consistenza per il metodo
multistep. Lo sviluppo di r0 (h) in serie di Taylor nellintorno di h = 0 `e
r0 (h) = r0 (0) + hr00 (0) + O(h2 )
Dalla (3.58) r00 (0) = (1)/0 (1) ed utilizzando le condizioni di consistenza abbiamo che
r0 (0) = 1. Allora
r0 (h) = 1 + h + O(h2 ) e

lim [1 + h + O(h2 )]n = ex

h0
nh=x

Dobbiamo ora far vedere che 0 1 per h 0. Imponendo le condizioni iniziali i


coefficienti 0 , 1 , ..., p debbono verificare il seguente sistema di equazioni lineari

0 + 1 + ... + p = y0

r (h) + r (h) + ... + r (h) = y


0 0
1 1
p p
1

...............................

r (h)p + r (h)p + ... + r (h)p = y


0 0
1 1
p p
p
per la definizione di convergenza di un metodo multistep i valori iniziali y0 , y1 , ..., yp
debbono essere scelti in modo che:
lim

h0


max |exn yn | = 0

0np

e questo implica che lim yn = 1 , n = 0, 1, ..., p. Il coefficiente 0 pu`o essere ottenuto


h0
usando la regola di Cramer.

y
1
0

y1 r1 (h)

..
..


yp r1p (h)

...
...
...
...

0 =
1
1


r0 (h)
r1 (h)


..
..


[r0 (h)]p [r1 (h)]p
Per h 0 abbiamo che
88



1


rp (h)

..


p
rp (h)
...
1
... rp (h)
...
..
... [rp (h)]p


1
1


1 r1 (0)

..
..


1 [r1 (0)]p

...
1
... rp (0)
...
..
... [rp (0)]p

lim 0 =
1
1

r0 (0)
r1 (0)

..
..


[r0 (0)]p [r1 (0)]p

h0

...
1
... rp (0)
...
..
... [rp (0)]p

=1








essendo r0 (0) = r0 = 1.
Abbastanza semplice provare che gli altri termini j [rj (h)]n , j = 1, 2, ..., p , detti
anche soluzioni parassite, tendono a 0 per h 0.

Essendo, per un metodo multistep consistente, le condizioni sulle radici condizioni


necessarie e sufficienti per la stabilit`a e la convergenza possiamo anche dare il seguente
corollario
Corollario - Se il metodo multistep (3.46) `e consistente esso converge se e solo se `e
stabile.
Stabilit`
a relativa e debole stabilit`
a - Nel precedente teorema si `e stabilito
che le soluzioni parassite j [rj (h)]n , j = 1, 2, ..., p convergono a zero per h 0.
Ma per h piccolo e non zero al crescere di xn vorremmo che tali soluzioni parassite
rimangano relativamente piccole rispetto al termine principale 0 r0 [(h)]n . Questo
pu`o essere vero solo se le radici caratteristiche verificano la condizione
|rj (h)| r0 (h) , j = 1, 2, ..., p

(3.59)

per h sufficientemente piccolo. Questo ci porta a dare la definizione di stabilit`a relativa.


Definizione 24 (Relativa stabilit`a). Diciamo che il metodo multistep (3.46) `e relativamente stabile se le radici caratteristiche rj (h) verificano la condizione (3.59) per h
sufficientemente piccolo ma non zero.
Definizione 25 (Condizione forte sulle radici). Diciamo che il metodo multistep (3.46)
soddisfa la condizione forte sulle radici se
|rj (0)| < 1 , j = 1, 2, ..., p

(3.60)

La condizione forte sulle radici implica anche la stabilit`a relativa. Possiamo ora dare
la definizione di metodo multistep debolmente stabile.

89

Definizione 26 (Debole stabilit`a per metodi multistep). Si dice che il metodo multistep
(3.46) `e debolmente stabile se `e stabile (o zero stabile) ma non relativamente stabile.
Nei paragrafi precedennti abbiamo analizzato e definito lassoluta stabilit`a e le regioni di
assoluta stabilit`a per alcuni metodi particolari. Ricordiamo che un metodo multistep
`e assolutamente stabile se la soluzione numerica, per h fissato, allinfinito tende a
zero. Ricordando quindi la forma generale della soluzione del metodo multistep (3.46)
possiamo dare la seguente definizione
Definizione 27 (Assoluta stabilit`a). Il metodo multistep (3.46) `e assolutamente stabile
se le radici rj (h) verificano la condizione:
|rj (h)| < 1 , j = 0, 1, ..., p

(3.61)

I valori di h che permettono di verificare la condizione (3.61) forniscono la regione di


assoluta stabilit`a e se tale regione `e illimitata il metodo `e detto A-Stabile.

3.7

I metodi di Adams

Nei paragrafi precedenti si `e visto come ottenere metodi particolari per la soluzione del
problema di Cauchy utilizzando lintegrazione numerica. Diamo qui lidea generale di
come ottenere metodi multistep per integrazione numerica.
Metodi espliciti - Si integra lequazione differenziale Y 0 (x) = f (x, Y (x)) fra xnq
ed xn+1 si approssima poi la funzione f (x, Y (x)) con il polinomio Pp (x) che interpola
la funzione f nei punti nodali xj = xn jh , j = 0, 1, ..., p, dove h `e il passo di
integrazione.
Z

xn+1

xn+1

Y (x)dx =
xnq

xn+1

f (x, Y (x))dx =
xnq

xn+1

Pp (x)dx +
xnq

Rp (x)dx
xnq

con Rp (x) lerrore che si commette nellinterpolazione. Quindi se ad esempio utilizziamo


il polinomio interpolante sotto forma di Lagrange si ha
Pp (x) =

p
X

lj (x)f (xnj , Ynj )

j=0
p
Y
x xnk
, mentre lerrore espresso sotto forma di differenze divise
dove lj (x) =
xnj xnk
k=0
k6=j

`e

90

Rp (x) = Y [xn , xn1 , ..., xnp , x]

p
Y

(x xnk )

k=0

Il metodo esplicito che si ottiene sar`a quindi


yn+1 = ynq + h

p
X

cj f (xnj , ynj )

j=0

1
con cj =
h

xn+1

lj (x)dx e si commette un errore di troncamento locale dato da


xnq

xn+1

Y [xn , xn1 , ..., xnp , x]

Tn (Y ) =
xnq

p
Y

(x xnk )dx

k=0

In tal caso si ottiene un metodo esplicito a p + 1 passi se p q o un metodo esplicito


ad q + 1 passi se q > p.
Metodi impliciti - Si integra lequazione differenziale Y 0 (x) = f (x, Y (x)) fra xnq
ed xn+1 si approssima poi la funzione f (x, Y (x)) con il polinomio Pp (x) che interpola
la funzione f nei punti nodali xj = xn+1 jh , j = 0, 1, ..., p. In tal caso otteniamo un
metodo multistep implicito a p passi se q p 1 o ad q + 1 passi se q > p 1
In particolare vogliamo ottenere i metodi di Adams sia espliciti (Adams-Bashforth) che
impliciti (Adams-Moulton).

Metodi di Adams-Bashforth Per ottenere i metodi di Adams-Bashforth si integra


lequazione differenziale tra xn ed xn+1 e si approssima, come sopra detto, la funzione
f (x, Y (x)) con il polinomio interpolante Pp (x) nei punti xnj = xn jh , j = 0, 1, ..., p.
Per ottenere delle formule semplici utilizziamo come forma del polinomio interpolante
quella espressa con le differenze finite allindietro fornita in Appendice C.

xn+1

xn+1

Y (x)dx =
xn

xn

xn+1

5p f n
5fn
+ ... + (x xn ) ... (x xnp+1 ) p ]dx+
[5 fn + (x xn )
h
h p!
0

Y [xn , xn1 , ..., xnp , x]


xn

p
Y

(x xnk )dx = Ip (Y ) + Ep (Y )

k=0

dove con fn si `e indicato f (xn , Y (xn )) = Y 0 (xn ).


Ip (Y ) =

Z
p
X
5j f n
j=0

hj j!

j1
xn+1 Y

xn

(x xnk )dx

k=0

intendendo che la produttoria vale uno se j = 0. Se introduciamo il cambio di variabile


x xn = th abbiamo che: x xnj = x xn + xn xnj = h(t + j), dx = hdt inoltre
91

per x = xn , t = 0 mentre per x = xn+1 , t = 1. con tale cambio di variabile abbiamo


p
X

Ip (Y ) = h

j 5j fn

(3.62)

(t + k))dt

(3.63)

j=0

dove
1
j =
j!

j1
1Y

0 k=0

anche in questo caso la produttoria vale uno se j = 0. Nella tabella che segue sono
riportati i primi valori di j .

Tabella 3.1: Coefficienti j


0
1

1
2
3
4
5
1/2 5/12 3/8 251/720 95/288

Per quanto riguarda lerrore di troncamento locale


Z

xn+1

Tn (Y ) = Ep (Y ) =

Y [xn , xn1 , ..., xnp , x]


xn

p
Y

(x xnk )dx

k=0

se la soluzione Y (x) `e differenziabile p + 2 volte con continuit`a si pu`o applicare il


teorema della media integrale e si ha
Z

xn+1

Tn (Y ) = Y [xn , xn1 , ..., xnp , n ]


xn

p
Y

(x xnk )dx , xn xn+1

k=0

ed utilizzando il cambio di variabile precedente, ricordando che la differenza divisa di


ordine p + 1 `e legata alla derivata di ordine p + 1 della funzione, abbiamo

hp+2 Y (p+2) (n )
Tn (Y ) =
(p + 1)!

p
Y

(t + k)dt = p+1 hp+2 Y (p+2) (n ) , xnp n xn+1

0 k=0

(3.64)
Come si vede il metodo di Adams-Bashforth a p + 1 passi `e anche un metodo di
ordine p + 1 in quanto (h) = O(hp+1 ). Possiamo ora scrivere la formula generale di
Adams-Bashforth a p + 1 passi
Yn+1 = Yn + h

p
X

j 5j Y 0 (xn ) + p+1 hp+2 Y (p+2) (n )

j=0

92

(3.65)

Ad esempio la formula per p = 1 `e data da

5
h
Yn+1 = Yn +h[0 Y 0 (xn )+1 5Y 0 (xn )]+2 h3 Y 000 (n ) = Yn + [3Y 0 (xn )Y 0 (xn1 )]+ h3 Y 000 (n )
2
12
ed il metodo `e il seguente
h
yn+1 = yn + [3f (xn , yn ) f (xn1 , yn1 )]
2
Nella tabella che segue riportiamo i primi metodi di Adams-Bashforth ed i relativi
errori locali di troncamnto. Per semplicit`a utilizziamo la notazione fn = f (xn , yn )

Tabella 3.2: Metodi di Adams-Bashforth

p = 0 yn+1 = yn + hfn


h
p = 1 yn+1 = yn +
3fn fn1
2 

h
p = 2 yn+1 = yn +
23fn 16fn1 + 5fn2
12 

h
p = 3 yn+1 = yn +
55fn 59fn1 + 37fn2 9fn3
24

1
Tn (Y ) = h2 Y 00 (n )
2
5
Tn (Y ) = h3 Y 000 (n )
12
3
Tn (Y ) = h4 Y (4) (n )
8
251 5 (5)
Tn (Y ) =
h Y (n )
720

Come si vede dal valore dellerrore di troncamento locale per ogni p 0, (h) =
O(hp+1 ), pertanto i metodi sono consistenti. Per vedere la stabilit`a e la convergenza
di tali metodi si deve quindi studiare le radici dellequazione caratteristica (r) = 0.
Qualunque sia p lequazione caratteristica `e r 1 = 0 che ammette come radice r = 1.
Essendo quindi verificata le condizioni sulle radici (3.50) e (3.51) tali metodi sono tutti
convergenti.
Per lo studio della stabilit`a assoluta dei metodi di Adams-Bashforth di ordine p + 1
dobbiamo imporre la condizione |rj (h)| < 1 , j = 0, 1, ..., p. Ad esempio per il metodo
di Adams-Bashforth del secondo ordine il polinomio (r) = (r) h(r) `e dato da
3
1
(r) = r2 (1 + h)r + h
2
2
le cui radici sono

1
3
r0 (h) = 1 + h +
2
2


9
1
3
1 + h + h2 2 ; r1 (h) = 1 + h
4
2
2

93


9
1 + h + h2 2
4

La regione di assoluta stabilit`a `e linsieme dei valori di h per i quali


|r0 (h)| < 1 ;

|r1 (h)| < 1

Per C la determinazione dei valori di h `e abbastanza complicata mentre per R


valori di h accettabili sono 1 < h < 0. Nella figura 3.6 sono evidenziate le regioni
di assoluta stabilit`a dei primi metodi di Adams-Bashforth per h C.
ImHzL

1.5

1.0

1.0

0.5

0.5

0.0

0.0

ReHzL

-0.5

-0.5

-1.0

-1.0

-1.5
-2.0

-1.5

-1.0
-0.5
0.0
HAdams-Bashforth a due passiL

0.5

-1.5
-2.0

1.0

ReHzL

-1.5

ImHzL

1.5

1.0

0.5

0.5

0.0

ReHzL

-0.5

-1.0

-1.0

-1.0
-0.5
0.0
0.5
HAdams-Bashforth a quattro passiL

1.0

0.5

0.0

-0.5

-1.5

-1.0
-0.5
0.0
HAdams-Bashforth a tre passiL

-1.5
-2.0

1.0

ImHzL

1.5

1.0

-1.5
-2.0

ImHzL

1.5

ReHzL

-1.5

-1.0
-0.5
0.0
0.5
HAdams-Bashforth a cinque passiL

1.0

Figura 3.8: Metodi di Adams-Bashforth. Regioni di assoluta stabilit`a

Metodi di Adams-Moulton Per ottenere i metodi di Adams-Moulton si integra lequazione differenziale tra xn ed xn+1 e si approssima la funzione f (x, Y (x)) con il
polinomio interpolante Pp (x) nei punti xn+1j = xn+1 jh , j = 0, 1, ..., p. Con ragio-

94

namenti analoghi a quelli fatti per le formule esplicite si trova che la forma generale
dei metodi di Adams-Moulton `e data da

Yn+1 = Yn + h

p
X

j 5j Y 0 (xn+1 ) + p+1 hp+2 Y (p+2) (n ) ,

xn+1p n xn+1 (3.66)

j=0

i coefficienti j sono definiti da


1
j =
j!

j
Y

(t + k 2)dt ;

j1

(3.67)

0 k=1

con 0 = 1. Abbastanza agevolmente possono essere calcolate le costanti j che sono


riportate nella tabella che segue.

Tabella 3.3: Coefficienti j


0
1

1
2
3
4
5
1/2 1/12 1/24 19/720 3/160

Anche in questo caso quindi possiamo costruirci i metodi di Adams-Moulton. Per i


primi p sono riportati nella tabella che segue insieme allerrore di troncamento locale.

Tabella 3.4: Metodi di Adams-Moulton


p = 0 yn+1 = yn + hfn+1


h
p = 1 yn+1 = yn +
fn+1 + fn
2 

h
p = 2 yn+1 = yn +
5fn+1 + 8fn fn1
12 

h
p = 3 yn+1 = yn +
9fn+1 + 19fn 5fn1 + fn2
24

1
Tn (Y ) = h2 Y 00 (n )
2
1
Tn (Y ) = h3 Y 000 (n )
12
1
Tn (Y ) = h4 Y (4) (n )
24
19 5 (5)
Tn (Y ) =
h Y (n )
720

In questo caso i primi due metodi sono ad un solo passo e corrispondono al metodo
di Eulero implicito ed al metodo trapezoidale, inoltre, per p 1, un metodo a p passi
`e di ordine p + 1. Considerazioni, analoghe a quelle fatte per i metodi di AdamsBashforth, possono essere fatte per i metodi di Adams-Moulton sulla convergenza e
stabilit`a assoluta. In particolare in 3.7 sono riportate le regioni di assoluta stabilit`a
per p = 2, 3, 4, 5.
95

ImHzL

ImHzL

ReHzL

-2

-2

-4

-4

-8

-6

-4
-2
HAdams-Moulton a due passiL

-8

ReHzL

-6

-4
-2
HAdams-Moulton a tre passiL

ImHzL

ImHzL

ReHzL

-2

-2

-4

-4

-8

-6
-4
-2
HAdams-Moulton a quattro passiL

-8

ReHzL

-6
-4
-2
HAdams-Moulton a cinque passiL

Figura 3.9: Metodi di Adams-Moulton. Regioni di assoluta stabilit`a


Dai grafici `e chiaro che la regione di assoluta stabilit`a `e tanto pi`
u piccola quanto
maggiore `e lordine di convergenza. Inoltre per formule dello stesso ordine i metodi di
Adams-Moulton hanno una regione di assoluta stabilit`a significativamente pi`
u grande
dei metodi di Adams-Bashforth. Lestensione di tali regioni `e in generale accettabile
da un punto di vista pratico. Per esempio i valori reali di h per il metodo di AdamsMoulton del quarto ordine sono dati da 3 < h < 0. Questa non `e una seria restrizione
su h in moltissimi casi. Tali metodi possono avere serie difficolt`a per problemi in cui
`e negativo e molto grande in modulo, problemi che sono anche detti stiff.

96

3.8

Metodi ad un solo passo e metodi Runge Kutta

I metodi ad un solo passo per risolvere il problema di Cauchy (3.1) richiedono la conoscenza della soluzione yn per poter calcolare il valore successivo yn+1 . Sono anche
detti metodi autopartenti in quanto `e sufficiente conoscere il valore iniziale della soluzione Y (x0 ). Questo `e ovviamente un vantaggio rispetto ai metodi a (p + 1) passi
che debbono usare p + 1 valori della soluzione yn , yn1 , ..., ynp per poter valutare yn+1
oltre ad aver bisogno di p + 1 valori iniziali. I metodi pi`
u noti, ad un solo passo, sono
i metodi Runge-Kutta ed essi sono anche utilizzati per fornire i primi p valori y1 , ..., yp
ai metodi a p + 1 passi. Si `e escluso y0 in quanto `e il dato iniziale del problema di
Cauchy. I metodi Runge-Kutta sono abbastanza semplici da implementare ed inoltre
ci sono tecniche abbastanza buone per controllare ad ogni step lerrore di troncamento
locale. Lo svantaggio di tali metodi `e che, per la loro formulazione, si debbono valutare
molte derivate della funzione f (x, y(x)) e per ordini molto elevati la loro formulazione
diventa quasi proibitiva a differenza dei metodi di Adams dove la formulazione `e molto
semplice anche per ordini di convergenza molto elevati. I metodi Runge-Kutta che
tratteremo in questo paragrafo saranno solo i metodi espliciti.
Il pi`
u semplice metodo esplicito ad un solo passo `e quello che utilizza lo sviluppo di
Taylor. Lo abbiamo gi`a visto nella formulazione del metodo di Eulero esplicito. Supposto che la soluzione del problema di Cauchy sia derivabile r + 1 volte con continuit`a
in [x0 , b] allora possiamo sviluppare Y (x) nellintorno di xn e valutarla poi in xn+1
ottenendo
Y (xn+1 ) = Y (xn ) +

r
X
hk
k=1

k!

(k)

hr+1
(xn ) +
Y (r+1) (n ) , n [xn , xn+1 ]
(r + 1)!

Tenendo conto che Y 0 (x) = f (x, Y (x)) possiamo esprimere le derivate di Y (x) in termini
di derivate totali rispetto ad x della funzione f (x, Y (x)). Per semplicit`a di esposizione
ometteremo largomento (x, Y (x)) della funzione f ed indicheremo con fx , fy , fxx e
cos` via le derivate parziali di f .
Y 0 (x) = f (x, Y (x)
d
d
Y 00 (x) =
f (x, Y (x)) = fx + fy Y (x) = fx + f fy
dx
dx
d
000
Y (x) =
(fx + f fy ) = fxx + 2f fxy + fx fy + f fy2 + f 2 fyy
dx
Pertanto il metodo di Taylor del terzo ordine `e
h3
h2
[fx + f fy ]n + [fxx + 2f fxy + fx fy + f fy2 + f 2 fyy ]n
2
6
dove il pedice n sta ad indicare che la funzione f e le sue derivate parziali sono calcolate
yn+1 = yn + h[f ]n +

97

in (xn , yn ). Se volessimo ottenere il metodo di Taylor del quarto ordine saremmo in


difficolt`a nel calcolare formalmente le derivate parziali, immaginiamo poi la difficolt`a
che si incontra nel valutare le derivate parziali di una f assegnata che generalmente
non `e molto semplice. Per questo motivo si sono introdotti i metodi Runge-Kutta che
eliminano il calcolo delle derivate parziali di f sostituendole con valori di f in punti
intermedi tra xn ed xn+1 . Lidea dei metodi Runge-Kutta espliciti `e stata fornita dal
metodo di Euhn introdotto nel paragrafo relativo al metodo trapezoidale.
Metodo di Euhn - Tale metodo deriva dallalgoritmo predictor corrector dove come predittore si utilizza il metodo di Eulero esplicito e come correttore il metodo
trapezoidale senza iterazioni.

y (0) = y + hf (x , y )
n
n n
n+1

y
= y + h f (x , y ) + f (x
n+1

(0) 
n+1 , yn+1 )

pertanto il metodo di Euhn `e



h
f (xn , yn ) + f (xn+1 , yn + hf (xn , yn ))
2
Lerrore locale di troncamento di tale metodo `e
yn+1 = yn +

(3.68)


h
f (xn , Yn ) + f (xn+1 , Yn + hf (xn , Yn ))
2
come al solito Yn = Y (xn ) ovvero la soluzione esatta calcolata nel punto xn . Per
stimare lordine di tale errore locale di troncamento basta confrontarlo con il metodo
di Taylor. Dallo sviluppo di Taylor della soluzione esatta abbiamo
Tn (Y ) = Yn+1 Yn

h2
Yn+1 Yn = h[f ]n + [fx + f fy ]n + O(h3 )
2
mentre se sviluppiamo la funzione f (x, Y (x)) come funzione di due variabili nellintorno
di (xn , Yn ) e la valutiamo in (xn +h, Yn +hf (xn , Yn )) si vede che lerrore di troncamento
si pu`o scrivere come
h2
h2
[fx ]n [f fy ]n + O(h3 )
2
2
Sostituendo Yn+1 Yn ottenuto con lo sviluppo di Taylor della soluzione esatta si trova
immediatamente che Tn (Y ) = O(h3 ) e pertanto il metodo `e del secondo ordine.
Metodi Runge-Kutta del secondo ordine - Quanto visto precedentemente porta
a pensare che per ottenere un metodo Runge-Kutta del secondo ordine c`e bisogno della
combinazione di due valori di f . Pertanto lidea `e quella di cercare tali metodi nella
forma seguente
Tn (Y ) = Yn+1 Yn h[f ]n

98

yn+1 = yn + h[1 f (xn , yn ) + 2 f (xn + h, yn + hf (xn , yn ))] , n 0

(3.69)

Si debbono trovare le costanti 1 , 2 , e affinche lerrore di troncamento locale


Tn (Y ) sia un infinitesimo dellordine di h3 . Possiamo allora utilizzare il procedimento
visto per il metodo di Euhn e si trova che
1
1
Tn (Y ) = h(1 1 2 )[f ]n + h2 ( 2 )[fx ]n + h2 ( 2 )[f fy ]n + O(h3 )
2
2
3
affinche Tn (Y ) = O(h ) le costanti debbono verificare il seguente sistema

1 1 2 = 0

1
2 = 0
2

1 = 0
2

tale sistema `e un sistema non lineare di 3 equazioni in 4 incognite che per 2 6= 0,


ammette infinite soluzioni: 1 = 1 2 , = 1/(22 ), = 1/(22 ). Si vede che il
` possibile
metodo di Euhn rientra tra questi infiniti metodi, basta scegliere 2 = 1/2. E
provare, la dimostrazione `e lasciata come esercizio, che il metodo che rende minimo
lerrore di troncamento locale si ottiene per 2 = 3/4. In tal caso abbiamo = 2/3,
= 2/3 e 1 = 1/4. Con tali valori si ottiene il seguente metodo
2
2
h
(3.70)
yn+1 = yn + [f (xn , yn ) + 3f (xn + h, yn + hf (xn , yn ))] , n 0
4
3
3
Metodi Runge-Kutta - La forma generale dei metodi Runge-Kutta `e la seguente
yn+1 = yn +

p
X

j Vj

(3.71)

j=1

dove
V1 = f (xn , yn )
Vj = f xn + j h, yn + h

j1
X

ji Vi

, j = 2, ..., p

i=0

I coefficienti sono determinati imponendo che il termine principale dellerrore di troncamento locale sia nullo. Esiste ovviamente un legame tra il numero di combinazioni
della funzione f , chiamiamole p, ed il massimo possibile ordine che si pu`o ottenere. La
tabella che segue ce ne da unindicazione.
Il metodo Runge-Kutta del quarto ordine pi`
u utilizzato `e il seguente
yn+1 =

h
[V1 + 2V2 + 2V3 + V4 ]
6

99

(3.72)

Tabella 3.5: Massimo ordine dei metodi Runge-Kutta


Numero di combinazioni della funzione
Massimo ordine

1
1

2
2

3
3

4
4

5
4

6
5

7
6

8
6

1
1
V2 = f (xn + h, yn + hV1 )
2
2
1
1
V3 = f (xn + h, yn + hV2 ) ; V4 = f (xn + h, yn + hV3 )
2
2
Interessante `e anche lo studio dellassoluta stabilit`a di tali metodi. Anche se i metodi
di un dato ordine che si possono ottenere sono infiniti, fissato lordine, lequazione
caratteristica associata (r) = 0 `e sempre la stessa. La verifica, per i due metodi del
secondo ordine studiati, `e lasciata come esercizio. La figura 3.8 riporta le regioni di
assoluta stabilit`a dei metodi Runge-Kutta del secondo ordine e del quarto ordine.
V1 = f (xn , yn ) ;

ImHzL

ImHzL

ReHzL

-1

-1

-2

-2

-3

ReHzL

-3
-3

-2
-1
0
HRunge-Kutta del secondo ordineL

-3

-2
-1
0
HRunge-Kutta del quarto ordineL

Figura 3.10: Metodi Runge-Kutta. Regioni di assoluta stabilit`a


Metodi Runge-Kutta-Fehlberg - Questi sono metodi in cui lerrore di troncamento
locale `e calcolato confrontando il valore della soluzione numerica yn+1 ottenuta con
un metodo R-K di un dato ordine e quella ottenuta con il metodo R-K di ordine
immediatamente superiore. I pi`
u popolari metodi Runge-Kutta-Fehlberg sono RKF23
e RKF45. La possibilit`a di stimare facilmente lerrore di troncamento locale ad ogni
passo `e molto importante. Questo ci permette infatti, essendo tali metodi ad un solo
passo, di poter variare il passo h ad ogni step. Cio`e avere dei metodi a passo variabile.
Tale tecnica `e molto utile se la soluzione Y (x) del problema di Cauchy ha delle brusche
variazioni di pendenza. In particolare si fissa una tolleranza  > 0 per lerrore di
troncamento locale e quando si vede che lerrore di troncamento locale supera tale
100

tolleranza si dimezza il passo h fino a quando non si `e rientrati nella precisione richiesta.
Ovviamente superati i punti critici si riaumenta il passo h. Riportiamo il metodo
RKF45, come prima definiamo

V1 = f (xn , yn )

Vj = f xn + j h, yn + h

j1
X

ji Vi

, j = 2, ..., 6

i=0

yn+1 = yn + h

5
X

j Vj

j=1

?
yn+1

= yn + h

6
X

j? Vj

j=1

Tn (Y ) '

?
yn+1

yn+1 = h

6
X

cj V j

j=1

I coefficienti j , ji , j , j? e cj sono riportati nelle tabelle che seguono.


Tabella 3.6: Coefficienti j e ji per il metodo RKF45
j
2
3
4
5
6

j
j1
j2
j3
j4
j5
1/4
1/4
3/8
3/32
9/32
12/13 1932/2197 -7200/2197 7296/2197
1
439/216
-8
3680/513 -845/4104
1/2
-8/27
2
-3544/2565 1859/4104 -11/40

Tabella 3.7: Coefficienti j , j? e cj per il metodo RKF45


j
j
j?
cj

1
25/216
16/135
1/360

2
0
0
0

3
4
5
6
1408/2565
2197/4104
-1/5
6656/12825 28561/56430 -9/50 2/55
-128/4275 -2197/75240 1/50 2/55

101

3.9

Esercizi proposti

Esercizio 1. Utilizzando le relazioni (3.38) determinare tutti i metodi impliciti a due


passi che hanno ordine di convergenza 3.
Esercizio 2. Utilizzando le relazioni (3.38) determinare tutti i metodi espliciti a due
passi che hanno ordine di convergenza 2.
Esercizio 3. Dato il metodo a pi`
u passi
yn+1 = 4yn 3yn1 2hf (xn1 , yn1 )
si chiede:
1. quale `e lordine di convergenza del metodo
2. provare, con un esempio, che `e non convergente ed instabile
Esercizio 4. Data la seguente equazione alle differenze finite, lineare ed omogenea
1
yn+1 = yn + (yn1 yn2 ) ,
4

n2

si chiede:
1. trovare la soluzione nel caso in cui y0 = 4, y1 = 3/2, y2 = 7/4
2. quanto vale y1001
Esercizio 5. Provare che la seconda condizione sulle radici (3.51) `e necessaria per la
stabilit`a di un metodo multistep consistente.
Esercizio 6. Provare che la seconda condizione sulle radici (3.51) `e necessaria per la
convergenza di un metodo multistep consistente.
Esercizio 7. Dato il seguente metodo multistep
3
1
yn+1 = yn + 3yn1 yn2 + 3hf (xn , yn )
2
2
si chiede di:
1. stabilire quale `e lordine di convergenza del metodo
2. provare se il metodo `e convergente

102

Esercizio 8. Dato il seguente metodo multistep lineare implicito (BDF)


yn+1 =

9
2
6
18
yn yn1 + yn2 + hf (xn+1 , yn+1 )
11
11
11
11

si chiede di:
1. ottenre il metodo utilizzando le differenze finite allindietro
2. provare che ha ordine di convergenza tre
3. provare che il metodo `e convergente
NOTA: Un metodo ottenuto per Backward Differentiation Formula (BDF) `e un metodo
multistep implicito che si ottiene approssimando y 0 (x) in xn+1 con differenze finite
allindietro di ordine elevato. In particolare si pu`o approssimare la derivata prima
y 0 (x) con la derivata del polinomio interpolante scritto sotto forma di differenze finite
allindietro, con xn+1 punto pi`
u avanti.

Pp (x) = 50 yn+1 + (x xn+1 )

5p yn+1
5yn+1
+ ... + (x xn+1 ) ... (x xnp+2 ) p
h
h p!


y 0 (x)

xn+1



d
Pp (x)
'
dx
xn+1

Esercizio 9. Provare che tutti i metodi multistep del quarto ordine, espliciti, a tre
passi, della forma
yn+1 =

2
X

aj ynj + h

j=0

2
X

bj f (xnj , ynj )

j=0

sono non convergenti.


Esercizio 10. Dato il metodo multistep


a0
a0
yn+1 = a0 yn + (1 a0 )yn1 + h (2 )f (xn , yn ) f (xn1 , yn1 )
2
2
dire se esistono dei valori di a0 affinche il metodo risulti stabile.
Esercizio 11. Dato il metodo multistep
h
yn+1 = yn + (3f (xn , yn ) f (xn1 , yn1 ))
2
per R, < 0, dire quali sono i valori di h per i quali il metodo risulta relativamente
stabile.
103

Esercizio 12. Provare che i coefficienti j delle formule di Adams-Moulton, definiti


dalla (3.67), sono dati da
j = j j1

j1

dove i coefficienti j delle formule di Adams-Bashforth sono definiti dalla (3.63).


Esercizio 13. Dati i metodi della forma
yn+1 = ynq + h

p
X

bj f (xnj , ynj ) , q 1

j=1

Provare che non soddisfano la condizione forte sulle radici. Trovare un esempio, con
q = 1, che `e relativamente stabile.
Esercizio 14. Provare che tra tutti i metodi Runge-Kutta del secondo ordine il
metodo (3.70) `e quello che ha il minimo errore di troncamento locale.
Esercizio 15. Provare che il metodo di Euhn ed il metodo Runge-Kutta del secondo
ordine (3.70) hanno la stessa regione di assoluta stabilit`a.

104

Capitolo 4
APPROSSIMAZIONE DEGLI AUTOVALORI DI MATRICI

4.1

Introduzione

Il numero reale o complesso `e un autovalore della matrice quadrata A se esiste un


vettore non nullo x C tale che
Ax = x

(4.1)

Il vettore x `e detto autovettore corrispondente allautovalore .


poiche se det(AI) 6= 0 lunica soluzione del sistema omegeneo (4.1) `e x = 0 possiamo
anche dire che `e un autovalore di A se e solo se
det(A I) = 0

(4.2)

La (4.2) `e detta equazione caratteristica per la matrice A. Indichiamo con fA () =


det(A I) chiamato anche polinomio caratteristico di A. Se A `e di ordine n allora
fA () `e un polinomio di grado n. Abbiamo infatti che

a11
a12
...
a1n


a21
a22 ...
a2n
det(A I) = .
..
..
...
.
.
..

an1
an2
... ann

= (a11 )(a22 ) ... (ann ) + qn2 ()

fA () = (1)n n + (1)n1 (a11 + a22 + ... + ann )n1 + pn2 ()


fA (0) = det(A) mentre traccia(A) = a11 + a22 + ... + ann .
Si potrebbero pertanto determinare gli autovalori della matrice A risolvendo numericamente lequazione caratteristica associata ad A. Sappiamo per`o che la determinazione
105

numerica delle radici di unequazione polinomiale `e un problema mal condizionato ed


inoltre non `e semplice calcolare esplicitamente fA () per n grande.
poiche A `e di ordine n vi sono esattamente n autovalori di A se contiamo le radici
secondo la loro molteplicit`a. Ogni matrice ha almeno un autovalore a cui `e associato
un autovettore ed inoltre ogni matrice di ordine n pu`o avere al massimo n autovettori.
Ad un autovalore si associa la molteplicit`a algebrica e la molteplicit`a geometrica. La
molteplicit`a algebrica di un autovalore di una matrice A `e la molteplicit`a come radice
dellequazione caratteristica. La molteplicit`a geometrica di un autovalore `e il massimo
numero di autovettori, linearmente indipendenti, associati a . Se, come detto, la
somma delle molteplicit`a algebriche degli autovalori di una matrice di ordine n `e sempre
n la somma delle molteplicit`a geometriche pu`o essere anche uno. Facciamo vedere con
degli esempi quanto affermato sulle molteplicit`a algebrica e geometrica.
Esempio 1

2 1 0

A = 1 3 1
0 1 2


2

1
0




fA () = det(A I) = 1
3
1 = 3 + 72 14 + 8


0
1
2
Gli autovalori sono quindi 1 = 1, 2 = 2 e 3 = 4. Per determinare lautovettore
associato a 1 dobbiamo risolvere il sistema (A I)x = 0

x + x2 = 0

x1 + 2x2 + x3 = 0

x + x = 0
2

Come sapevamo gi`a la seconda equazione `e la somma della prima e della terza e pertanto
le soluzioni sono x1 = x2 e x3 = x2 . Quindi se scegliamo x2 = 1 si ha che x1 = 1 e
x3 = 1. Ogni altra scelta di x2 fornisce un vettore che `e linearmente dipendente a quello
trovato. Pertanto allautovalore 1 `e associato un solo autovettore x1 = [1, 1, 1]T .
Allo stesso modo si prova che a 2 `e associato lautovettore x2 = [1, 0, 1]T ed a 3
lautovettore x3 = [1, 2, 1]T . Da notare che i vettori trovati sono ortogonali tra loro,
quindi linearmente indipendenti e formano una base ortogonale di R3 . In tal caso
pertanto abbiamo che gli autovalori hanno molteplicit`a algebrica uno e molteplicit`a
geometrica uno. La somma delle molteplicit`a algebriche `e tre e di quelle geometriche
`e tre.
Esempio 2

106

1 0 0

A = 0 1 0
0 0 1
fA () = (1 )3
Abbiamo pertanto lautovalore 1 = 1 con molteplicit`a tre. A tale autovalore sono associati tre autovettori linearmente indipendenti x1 = [1, 0, 0]T , x2 = [0, 1, 0]T e
x3 = [0, 0, 1]T , quindi la somma delle molteplicit`a algebriche `e tre e la somma delle
molteplicit`a geometriche `e tre.
Esempio 3

1 1 0

A = 0 1 1
0 0 1
fA () = (1 )3
Anche in questo caso abbiamo lunico autovalore 1 = 1 con molteplicit`a algebrica 3. A
tale autovalore `e associato lunico autovettore linearmente indipendente x1 = [1, 0, 0]T .
Quindi la somma delle molteplicit`a algebriche `e tre mentre la somma delle molteplicit`a
geometriche `e uno.
Come abbiamo visto la somma delle molteplicit`a algebriche `e sempre pari ad n per
una matrice di ordine n anche se introduciamo delle piccole perturbazioni mentre la
somma delle molteplicit`a geometriche pu`o variare sensibilmente se si introducono delle
piccole perturbazioni. Questo ci consente di affermare che se la determinazione degli
autovalori non `e semplice quella degli autovettori `e molto pi`
u complicata.
Relativamente alla localizzazione degli autovalori esiste un teorema molto importante.
Definiamo con ri
ri =

n
X

|aij |

j=1
j6=i

e denotiamo con Zi il cerchio del piano complesso con centro aii e raggio ri
Zi = {z C : |z aii | ri } ,

i = 1, 2, ..., n

Teorema 11 (Teorema di Gerschgorin). Sia A una matrice di ordine n e un autovalore di A. Allora


1.

esiste sempre un cerchio Zi che contiene


107

2.

se m dei cerchi formano un insieme connesso S, disgiunto dai rimanenti n m


cerchi, allora S contiene esattamente m autovalori di A contati secondo la loro
molteplicit`a algebrica.

3.

Le tesi 1. e 2. sono valide anche se le somme sono fatte sulle colonne nella
definizione dei raggi dei cerchi di Gerschgorin.

Dimostrazione.
1.

Sia un autovalore di A e sia x il corrispondente autovettore. Sia inoltre k il


pedice della componente di x per cui
|xk | = max |xi | = kxk
0in

se prendiamo la k-esima equazione del sistema Ax = x


n
X

akj xj = xk

j=1

( akk )xk =

n
X

akj xj

j=1
j6=k

passando ai moduli e maggiorando |xj | con kxk

| akk ||xk |

n
X

|akj ||xj | rk kxk

j=1
j6=k

ed essendo |xk | = kxk si `e provato che | akk | rk e quindi esiste un cerchio


Zk che contiene lautovalore .
2.

Per provare la seconda parte del teorema definiamo con

D = diag[a11 , a22 , ..., ann ] ;

E =AD

Per 0  1 definiamo A() = D + E ed indichiamo i suoi autovalori con


1 (), 2 (), ..., n (). Si vede facilmente che A(1) = A, inoltre gli autovalori i ()
sono funzioni continue di  essendo zeri dellequazione caratteristica
fA() () = det[A() I] = 0

108

Abbiamo quindi che i (1) = i , che i (0) = aii ed inoltre i i () descrivono un
cammino continuo nel piano complesso al variare di  tra zero ed uno. Dalla
prima parte del teorema, preso un autovalore i () deve esistere un cerchio
Zi () = {z C : |z aii | ri }
che lo contiene. Ora, poiche per  = 0 gli autovalori i (0) sono i centri dei cerchi
di Gerschgorin della matrice A, se il cerchio `e isolato, lautovalore che conteneva,
per  = 0, deve rimanere allinterno di tale cerchio di Gerschgorin. Se invece m
cerchi della matrice A = A(1) formano un connesso S, disgiunto dagli altri cerchi,
poiche, per  = 0, tale connesso S conteneva m autovalori di A e poiche questi
non possono uscire da S, in quanto i () sono funzioni continue di , il connesso
S conterr`a esattamente m autovalori di A.
3.

poiche
det[A I] = det[A I]T = det[AT I]
gli autovalori di A coincidono con quelli di AT . Basta quindi applicare il teorema
sulle righe della matrice AT in modo da provare 1. e 2. per le colonne di A

Tale ultima parte del teorema `e abbastanza complessa da spiegare, molto pi`
u semplice
comprenderla con un esempio. Prendiamo la matrice A di ordine quattro

1 1 0
0
7

4 3

0
0

A=
0 0 2i

0 0 1 2i

(4.3)

La matrice A() `e pertanto

1  0
0
7

4 3
0
0

A() =
0 0 2i

0 0  2i
gli autovalori di A() si ottengono trovando le radici dellequazione caratteristica
7
[(1 )(3 ) + 2 ][(2i )(2i ) + 2 ] = 0
4

109

(4.4)

=0

=0.2

ImHzL

=0.6

ImHzL

ImHzL

ReHzL

ReHzL

-1

-1

-1

-2

-2

-2

-3
-2 -1

-3
0

-2 -1

-3
0

=0.72

-2 -1

ImHzL

ImHzL

ReHzL

ReHzL

-1

-1

-2

-2

-2

-3

-3

-3

-2 -1

=0.8

-2 -1

1
ReHzL

ReHzL

-1

-2

-2

-2

-3

-3
1

-2 -1

-1

-1

-2 -1

0
ImHzL

=1

ImHzL

ReHzL

=0.9

ImHzL

-1

ImHzL
3

=0.76

=0.74

-2 -1

ReHzL

ReHzL

-3
0

-2 -1

Figura 4.1: Autovalori e cerchi di Gersghorin per A ed A( definite in (4.3) e (4.4)
La figura 4.1 mostra come variano gli autovalori di A() per 0  1, rappresentati
con puntini colorati. In ogni frame sono riportati anche i cerchi di Gersghorin della
matrice A in nero e della matrice A(), con lo stesso colore dellautovalore per  = 0.
Come si vede molto chiaramente, preso un autovalore esiste sempre un cerchio che
lo contiene, inoltre quando i cerchi sono isolati ognuno contiene un autovalore, mentre
quando i due cerchi formano un connesso S `e S che contiene i due autovalori, infatti
in figura si vede che quando si forma il connesso S, ad un certo punto, il cerchio rosso
non contiene pi`
u alcun autovalore. Possiamo osservare anche che quando i cerchi sono
disgiunti contengono un solo autovalore. Per quanto riguarda gli autovalori che per
 = 0 sono reali questi debbono rimanere reali fin quando i cerchi che li contengono
sono disgiunti in quanto il polinomio di secondo grado che li fornisce `e a coefficienti
reali. Essendo il pezzo di equazione caratteristica a coefficienti reali se ammette una
radice complessa deve avere anche la sua coniugata e se i cerchi sono disgiunti vuol dire
che un cerchio dovrebbe contenere due autovalori, questo non `e possibile per il teorema

110

di localizzazione. Nellesempio specifico si vede che quando il cerchio rosso ed il cerchio


blu formano un connesso questo, dopo un p`o, contiene due autovalori complessi e
coniugati fino ad  = 1. I metodi che analizzeremo a seguire sono principalmente per
matrici quadrate a coefficienti reali.

4.2

Il metodo delle potenze

Questo `e un metodo classico utilizzato per trovare lautovalore dominante in modulo


e lautovettore associato ad esso. Non `e un metodo sempre applicabile ma utile in
` facile da implementare per speciali classi di matrici. In particolare
molte situazioni. E
matrici in cui la forma canonica di Jordan `e diagonale, cio`e matrici i cui autovettori
formano una base di Cn .
Metodo delle potenze Sia A una matrice quadrata di ordine n con n autovettori,
u1 , u2 , ..., un , linearmente indipendenti ed n autovalori, 1 , 2 , ..., n , tali che
|1 | > |2 | ... |n |
allora possiamo definire il seguente metodo diretto delle potenze.
n
X
Dato un generico vettore iniziale w0 =
k uk , 1 6= 0 definiamo la seguente
k=1

successione
wm+1 = Awm

m = 0, 1, 2, ....

(4.5)

Teorema 12. Sia A una matrice quadrata diagonalizzabile avente autovalori 1 >
2 , ..., n ed autovettori uk , cio`e
Auk = k uk
allora la successione definita dalla 4.5 converge ad un vettore
parallelo ad u1 ed il

T
w , Awm
w Aw
 converge a 1
coefficiente di Rayleigh (wm , A) = mT m = m
wm wm
wm , wm
Dimostrazione. Essendo la matrice A diagonalizzabile esistono n autovettori uk che
formano una base di Cn pertanto un qualunque vettore di Cn pu`o essere espresso come
combinazione lineare degli autovettori uk . Preso quindi un generico vettore
w0 =

n
X

k uk , 1 6= 0

k=1

essendo Auk = k uk abbiamo

111

X
 X
n
n
n
X
w1 = Aw0 = A
k uk =
k Auk =
k k uk
k=1

k=1

k=1

X
 X
n
n
n
X
w2 = Aw1 = A
k k uk =
k k Auk =
k 2k uk
k=1

k=1

k=1

pi`
u in generale
wm = Awm1 = A

X
n

k m1
uk
k


=

n
X

k=1

k m1
Auk
k

k=1

n
X

k m
k uk

k=1

essendo 1 6= 0 possiamo dividere lultima uguaglianza per

m
1

 m
n
wm X
k
=
uk
k
m
1

1
k=1
poiche

k
< 1 , k = 2, 3, ..., n
1
si ha che
lim

k m
= 0 , k = 2, 3, ..., n
1
wm
= 1 u1 . Per il
m m
1

e quindi la direzione di wm tende a quella di u1 , ovvero lim


coefficiente di Rayleigh abbiamo
lim (wm , A) = lim



m
wm , Awm
wm /m
1 , Awm /1
 = lim
 =
m
m
wm , wm
wm /m
,
w
/
m
1
1




1 u1 , A(1 u1 )
u1 , Au1
u1 , 1 u1
 =
 =
 = 1
=
1 u1 , 1 u1
u1 , u1
u1 , u1
Una piccola precisazione sulle notazioni. Con wm si `e inteso literata m-esima del vettore w, con uk il vettore k-esimo della base mentre m
e la potenza k-esima dellautovalore
k `
k . I vettori inoltre sono intesi come vettori colonna.
` abbastanza intuitivo vedere che la velocit`a di convergenza dipende principalmente
E
(m)
dal rapporto 2 /1 , in particolare si ha che literata m-esima 1 `e circa
(m)
1

' 1 1 + O

2 m
1



Pertanto se il secondo autovalore `e abbastanza pi`


u piccolo in modulo del pi`
u grande la
convergenza `e molto rapida.
112

4.3

Trasformazioni ortogonali con matrici di Householder

Iniziamo il paragrafo introducendo una particolare classe di matrici ortogonali note


come matrici di Householder. Ricordiamo che una matrice A Rnn `e detta ortogonale
se AT = A1 mentre A Cnn `e detta unitaria se A? = A1 , A? `e la trasposta coniugata
di A. I vettori che useremo sono sempre intesi come vettori colonna. Pertanto preso
un vettore w = [w1 , w2 , ..., wn ]T Cn abbiamo che

w1

w2

w? , w = kwk22 = w? w = [w1 , w2 , ..., wn ]
..
.

= |w1 |2 + |w2 |2 + ... + |wn |2

wn
mentre

w1

w2
w w? =
..
.
wn

|w1 |2 w1 w2 . . . w1 wn

w w |w2 |2 . . . w2 wn

[w1 , w2 , . . . , wn ] = 2. 1
..
..
..
.

.
.
.
.

wn w1 wn w2 . . . |wn |2

Definizione 28 (Matrici di Householder). Sia w Cn tale che kwk2 =


Definiamo matrice di Householder la matrice U data da

1 2|w1 |2 2w1 w2 . . .

2w2 w1 1 2|w2 |2 . . .
?
U = I 2w w =
..
..
...

.
.

2wn w1

2wn w2

...

2w1 wn
2w2 wn
..
.
1 2|wn |2

w? w = 1.

Per la matrice di Householder U valgono le seguenti propriet`a:


1. U `e hermitiana, ovvero U ? = U .
Dimostrazione.
U ? = (I 2w w? )? = I 2(w w? )? = I 2(w? )? w? = I 2w w? = U

2. U `e unitaria, ovvero U ? = U 1 .
Dimostrazione. Basta provare che il prodotto U ? U = I
113

(4.6)

U ? U = U 2 = (I2w w? )2 = I4w w? +4(w w? )(w w? ) = I4w w? +4w(w? w)w? = I


essendo w? w = 1

3. Se il vettore w ha le prime r 1 componenti nulle, cio`e

0
.
..

0
w = [0, ..., 0, wr , wr+1 , ..., wn ]T =
v
1
.
..

vnr

= [0, vT ]T

allora
..
Ir1
.
0

U =

..
0
. Inr+1 2v v?

Pertanto moltiplicando U a sinistra di una matrice A (premoltiplicando) lascia le prime r 1 righe di A inalterate mentre moltiplicando U a destra di
A (postmoltiplicando) lascia le prime r 1 colonne di A inalterate.
Trasformazione di un vettore di Rn con matrici di Householder
Le matrici di Householder possono essere usate per trasformare un vettore non nullo
in un vettore che ha molte componenti nulle. Sia b Rn con b 6= 0, si vuole trovare la
matrice di Householder U della forma 4.6 tale che U b abbia le prime r 1 componenti
inalterate e nulle da r + 1 fino ad n per un dato r 1. Per semplificare le notazioni
indichiamo con m = n r + 1.
Dobbiamo quindi trovare un vettore w di norma unitaria che ci consente di costruire
la matrice di Householder U che premoltiplicata a b lo trasforma nel modo desiderato.
"

0
w = r1
v

"

c
b=
d

dove v, d Rm e c Rr1 . Per la propriet`a 3. delle matrici di Householder sappiamo


che premoltiplicando U a b rimane inalterato il vettore c. Pertanto basta trovare un
vettore v di norma due unitaria tale che
114

(I 2v vT )d = [, 0, ..., 0]T

(4.7)

poiche (I 2v vT ) `e ortogonale la lunghezza di d `e conservata (vedi esercizio 8), cio`e


|| = kdk2
q
= d21 + d22 + ... + d2m

(4.8)

Sia p = vT d allora dalla 4.7 si ha


d 2pv = [, 0, ..., 0]T

(4.9)

moltiplicando per vT si ha
vT d 2pvT v = vT [, 0, ..., 0]T
ed utilizzando kvk2 = 1
p = v1
uguagliando componente per componente lequazione 4.9 abbiamo
d1 2pv1 =

dj 2pvj = 0 , j = 2, ..., m
e tenendo conto del valore di p si trova
d1 + 2v12 = v12 =
r
v1 =

d1 
1
1
2

1
d1 
1
2

(4.10)

vj = dj /(2v1 ) , j = 2, ..., m
per v1 possiamo scegliere sia il segno positivo che negativo mentre per avere il radicando
sempre positivo si sceglie il segno di tale che segno() = segno(d1 ).

115

4.4

Fattorizzazione QR

Data una matrice reale A esiste sempre una matrice ortogonale Q ed una matrice
triangolare superiore R tali che
A = QR
Sia
(1) (1)
(1)
a11 a12 . . . a1n
(1) (1)
a21 a22 . . . a(1)
2n
=
..
..
..
..
.
.
.
.
(1)
(1)
(1)
an1 an2 . . . ann

A = A(1)

con n 1 premoltiplicazioni con matrici di Householder si vuole rendere la matrice A(1)


triangolare superiore. Quindi servono n 1 passi.
1.

Al primo passo ci costruiamo la matrice di Householder P1 che permette di trasformare la prima colonna di A(1) nel vettore [1 , 0, ..., 0]T , ovvero determiniamo
la matrice P1 in modo che

(1)

P1 A

2.

al secondo passo ci costruiamo la matrice di Householer P2 in modo che premoltiplicata a P1 A(1) consente di trasformare la seconda colonna di P1 nel vettore
(2)
[a12 , 2 , 0, ..., 0]T e quindi

P 2 P1 A

3.

(2)
(2)
1 a12 . . . a1n

(2)
0 a(2)
. . . a2n
22
=
..
..
...
..
.
.
.
(2)
(2)
0 an2 . . . ann

(1)

(2)
(2)
1 a12 . . . a1n

0 2 . . . a(3)
2n
=
..
..
..
..
.
.
.
.
(3)
0
0 . . . ann

al passo n 1 ci costruiamo la matrice di Householder Pn1 in modo che


premoltiplicata a Pn2 ... P2 P1 A(1) consente di trasformare la (n 1)-colonna
(2)
(3)
(n1)
di Pn2 ... P2 P1 A(1) nel vettore [a1,n1 , a2,n1 , ..., an2,n1 , n1 , 0]T , e pertanto
si giunge alla seguente configurazione finale

116

Pn1 Pn2 ... P2 P1 A(1)

(2)
1 a12

0 2

.
..
= ..
.

0
0

0
0

(2)

. . . a1,n1
(3)
. . . a2,n1
..
.
...
...

n1
0

(2)

a1n
(3)
a2,n
....
..
(n)

an1,n
(n)
ann

Se pertanto indichiamo con R la matrice triangolare superiore

(2)
1 a12

0 2

.
..
R = ..
.

0
0

0
0

(2)

. . . a1,n1
(3)
. . . a2,n1
..
.
...
...

n1
0

(2)

a1n
(3)
a2,n
....
..
(n)

an1,n
(n)
ann

abbiamo che
Pn1 Pn2 ... P2 P1 A = R
poiche il prodotto di matrici ortogonali `e ancora una matrice ortogonale (vedi es. N.
11), se indichiamo con QT = Pn1 Pn2 ... P2 P1 si giunge alla fattorizzazione QR di
A, infatti abbiamo
QT A = R ;

A = QR

essendo QT una matrice ortogonale.

4.5

Il metodo QR

Nel paragrafo precedente abbiamo visto come una matrice A Rnn pu`o essere fattorizzata nel prodotto di una matrice ortogonale per una matrice triangolare superiore.
Il metodo QR consente di determinare tutti gli autovalori della matrice A ed `e un
metodo semplicissimo.
Sia A = A1 sappiamo che `e possibile trovare una matrice ortogonale Q1 ed una matrice
triangolare superiore R1 tali che
A1 = Q1 R1
ora poch`e il prodotto di matrici non `e commutativo, indichiamo con
A2 = R1 Q1

117

in tal modo si `e costruito il metodo QR, cio`e


Am = Qm Rm

Am+1 = Rm Qm

m1

La prima cosa che possiamo osservare `e che le matrici Am per ogni m hanno gli stessi
autovalori di A = A1 . Infatti essendo Qm una matrice ortogonale Rm = QTm Am e quindi
Am+1 = QTm Am Qm = Q1
e simile alla matrice Am+1 ed
m Am Qm pertanto la matrice Am `
allora hanno gli stessi autovalori. Per quanto riguarda la convergenza della successione
delle matrici Am diamo solo lenunciato del teorema nellipotesi in cui A Rnn .
Teorema 13 (Convergenza del metodo QR). Sia A una matrice reale di ordine
n.
1.

Se gli autovaori di A soddisfano


|1 | > |2 | > ... > |n | > 0

(4.11)

allora le iterate Am , del metodo QR, convergono ad una matrice triangolare superiore che ha gli autovalori di A sulla diagonale principale. Se A `e simmetrica
la successione {Am } converge ad una matrice diagonale dove nella diagonale ci
sono gli autovalori di A.
2.

Se gli autovalori della matrice A non soddisfano la (4.11) allora, se la matrice


A `e simmetrica, la successione {Am } converge ad una matrice D diagonale a
blocchi

B1
0

B2
Am D =
..

0
Br

(4.12)

dove i blocchetti Bi hanno ordine uno o due. Se di ordine uno rappresenta un


autovalore di A, se di ordine due allora gli autovalori del blocco di ordine due
sono gli autovalori di A.
Se la matrice A non `e simmetrica e gli autovalori non soddisfano la (4.11) la
successione {Am } converge ad una matrice simile alla (4.12). In tal caso la
forma non `e diagonale a blocchi ma ti tipo misto. Diagonale a blocchi e triangolare superiore con elementi non nulli nella sotto diagonale principale solo in
corrispondenza di autovalori complessi e coniugati.

118

4.6

Esercizi proposti

Esercizio 1. Calcolare gli autovalori ed autovettori della seguente matrice

0
A=
0

Esercizio 2.

1.

1
1
0
0

0
1
2
0

0
0
0
2

Dato il polinomio
pn () = n + an1 n1 + ... + a0

provare che
pn () = det(I A)
dove A `e la seguente matrice

0
1
0

0
0
1

A=
..
..
..

0
0
0
a0 a1 a2
2.

...
0
0
...
0
0
...
..
..
...
0
1
... an2 an1

Utilizzando il punto 3. del teorema di Gerschgorin fornire una limitazione degli


autovalori di A.

Esercizio 3. Utilizzando il teorema di Gerschgorin localizzare gli autovalori della


seguente matrice

1 1 0

A= 1
5 1
2 1 9
Stabilire inoltre se gli autovalori sono reali o complessi.

119

Esercizio 4. Localizzare gli autovalori della matrice

1
A=
1

1
5
0
0

0 0
1 0
8 1
0 11

utilizzando i cerchi di Gerschgorin di A e AT .

Esercizio 5. Utilizzando trasformazioni per similitudine ed il teorema di Gerschgorin


localizzare gli autovalori della seguente matrice

1
1 0 0

1 100 1 0
A=
0 1 2 1

0
0 1 101

NOTA: Si ricorda che la matrice A `e simile alla matrice B se esiste una matrice non
singolare P tale che B = P AP 1 o equivalentemente B = P 1 AP . Matrici simili
hanno gli stessi autovalori.
1 2 2
Esercizio 6. Costruire la matrice di Householder generata dal vettore w = [ , , ]T
3 3 3
Esercizio 7. Provare che se si moltiplica un vettore b Rn per una matrice ortogonale U il vettore risultante ha la stessa lunghezza di b, cio`e
kU bk2 = kbk2
Esercizio 8. Utilizzando un qualunque linguaggio di programmazione scrivere un
programma che, utilizzando il metodo delle potenze, permette di calcolare il pi`
u grande
autovalore in modulo della matrice di Hilbert di ordine 2,3,4,5,6.

Esercizio 9. Trovare la matrice di Householder U che premoltiplicata al vettore b =


[2, 2, 1]T mi restituisce un vettore che ha la seconda e la terza componente nulle.

Esercizio 10. Utlizzando matrici di Householder determinare la fattorizzazione QR


della seguente matrice

120

1 2 1

A = 0 3 2
0 4 1
Esercizio 11. Provare che il prodotto di matrici ortogonali `e ancora una matrice
ortogonale
Esercizio 12. Provare che il determinante della trasposta AT `e uguale al determinante di A.

Esercizio 13. Data la matrice

3 0 1 0

0 11 1 1
A=
1 1 10 2

0 1 2 20
provare che ha un autovalore reale maggiore di 20.

121

Capitolo 5
SOLUZIONE DEGLI ESERCIZI PROPOSTI

5.1

Esercizi capitolo 1

ESERCIZIO N. 1
La funzione ln(1/x) = ln x e quindi in (0, 1] risulta essere non negativa.
Z

ln(1/x)|x| dx =

xn ln xdx

integrando per parti si ottiene


1

Z 1
n+1 1

xn+1
1
x
1
=

xn dx =
ln x +
< , n0

2
n+1
n+1 0
(n + 1) 0 (n + 1)2
0
`e banale osservare che se g(x) `e una funzione non negativa in (0, 1)

g(x) ln xdx 0 vale zero se e solo se g(x) = 0 quasi ovunque in (0, 1)


0

ESERCIZIO N. 2
Imponendo che il polinomio di grado zero 0 (x) = c risulti di norma unitaria e
scegliendo il segno positivo si ha


c2 ln xdx

21

=1

c= 

R1
0

ln xdx

12

ora visto che


Z
0

1
ln xdx = x ln x x 0 = 1

c=1

scegliendo il polinomio di grado uno come 1 (x) = x a10 0 (x) ed imponendo che
risulti ortogonale a 0 (x) si trova che

122

Z
a10 = (x, 0 (x)) =
0

1
x2
x2
1
x ln xdx = ln x + =
2
4 0 4

1 (x) = x

1
4

ora va determinato 1 (x), polinomio ortonormale a 0 (x), cio`e 1 (x) = 1 (x)/k1 (x)k2w

k1 (x)k2w =

1
(x )2 ln xdx
4

 12

Z
=
0

x
1
(x + ) ln xdx
2 16
2

 12
=

1  1
x 3 x2
7
x
x3 x2
x 2
1 1
1  21
= ( +
=
) ln x +

+
=
+
3
4
16
9
8
16 0
9 8 16
12


e pertanto

7
1
(x )
1 (x) =
12
4
ESERCIZIO N. 3
Dalla definizione (1.28) si ha
1 d0 2
P0 (x) = 0
(x 1)0 = 1
0
2 0! dx
P1 (x) =

P2 (x) =

21 1! dx

(x2 1) = x

1 d
1
12
4
3
1
1 d2 2
(x 1)2 =
4x(x2 1) = [(4(x2 1)+4x2x] = x2 = x2
2
2
2 2! dx
8 dx
8
8
8
2
2

Dalla definizione (1.31) si ha


T0 (x) = cos 0 = 1

T1 (x) = cos(arccos x) = x

T2 (x) = cos(2 arccos x) = 2 cos2 (arccos x) 1 = 2x2 1


Dalla definizione (1.34) si ha
L0 (x) =

L1 (x) =

ex d0 x 0
[e x ] = ex ex = 1
0! dx0

ex d x
[e x] = ex [ex x + ex ] = x + 1
1! dx

123

ex d2 x 2
ex 2 x
1 2
ex d
x
2 x
x
x
L2 (x) =
[2xe
x
e
]
=
[x
e
4xe
+2e
=
x 2x+1
[e
x
]
=
2! dx2
2 dx
2
2
Dalla definizione (1.37) si ha
H0 (x) = (1)0 ex

H1 (x) = (1)1 ex

d0 x2
[e ] = 1
dx0

d x2
2
2
[e ] = ex (2xex ) = 2x
dx

d2 x2
2
2
2
2
x2 d
[2xex ] = ex [2ex + 4x2 ex ] = 4x2 2
H2 (x) = (1) e
[e
]
=
e
2
dx
dx
2 x2

ESERCIZIO N. 4
Si deve prendere (1.30) verificata dal polinomio Pn (x) e moltiplicarla per il polinomio
Pm (x), prendere poi lequazione differenziale (1.30) verificata dal polinomio Pm (x) e
moltiplicarla per Pn (x) farne la differenza ed integrare in [1, 1], cio`e
1



d
2 d
(1 x ) Pn (x) + n(n + 1)Pn (x) Pm (x)dx+
dx
1 dx

Z 1

d
2 d

(1 x ) Pm (x) + m(m + 1)Pm (x) Pn (x)dx = 0


dx
1 dx
Z

integrando per parti la prima parte dei due integrali


1
Z 1




d
d
d
(1 x2 ) Pn (x) Pm (x)
(1 x2 ) Pn (x)
Pm (x)dx+
dx
dx
dx
1
1
1
Z 1



d

d
2 d
(1 x ) Pm (x) Pn (x) +
Pn (x)dx+
(1 x2 ) Pm (x)
dx
dx
dx
1
1
Z

+[n(n + 1) m(m + 1)]

Pn (x)Pm (x)dx = 0
1

ora essendo lintegrale di bordo nullo ed eliminandosi i primi due integrali si conclude
banalmente che se n 6= m deve risultare
Z

Pn (x)Pm (x)dx = (Pn (x), Pm (x)) = 0


1

124

ESERCIZIO N. 5
Per n = 0 il risultato `e banale, per n 1 dalla definizione (1.28) si ha che
1

1
(Pn (x), Pn (x)) = 2n
2 (n!)2

n
dn
2 n d
(1 x )
(1 x2 )n dx
n
n
dx
dx

Se si integra per parti n volte, tenendo conto che i termini di bordo si annullano si
ottiene
1

d2n
(1 x )
(1 x2 )n dx
2n
dx
1

(1)n
(Pn (x), Pn (x)) = 2n
2 (n!)2

2 n

ed essendo (1 x2 )2n un polinomio di grado 2n con coefficiente della potenza di grado


massimo pari a (1)n si ha che
d2n
(1 x2 )n = (1)n (2n)!
dx2n
quindi
(2n)!
(Pn (x), Pn (x)) = 2n
2 (n!)2

(1 x2 )n dx

dobbiamo ora provare che


1

2 22n (n!)2
(1 x ) dx =
(2n + 1)!
1

2 n

(5.1)

in tal caso infatti si avrebbe


1

(2n)!
2 22n (n!)2
2
(1 x ) dx = 2n

=
2 (n!)2 (2n + 1)!
2n + 1
1

(2n)!
(Pn (x), Pn (x)) = 2n
2 (n!)2

2 n

Posto
Z

(1 x2 )n dx

In =
1

`e abbastanza facile provare che


In =

2n
In1
2n + 1

(5.2)

abbiamo infatti che:


Z

In1 In =

2 n1

(1 x )

[1 (1 x )]dx =

x(1 x2 )n1 xdx =

1
Z 1
(1 x2 )n x
1
1
=
+
(1 x2 )n dx =
In

2n
2n 1
2n
1

125

da cui segue immediatamente la (5.2). Ora dalla (5.2) iterativamente si ha che


2n1 n!
22 n(n 1)
In2 = =
I1
(2n + 1)(2n 1)
(2n + 1)(2n 1) 7 5

In =

ed essendo I1 = 4/3, come si pu`o facilmente verificare, con facili operazione algebriche
si prova che `e verificata la relazione (5.1).
ESERCIZIO N. 6
Procedendo come nellesercizio 4, dopo aver moltiplicato lequazione differenziale per
ex , si ottiene

Z
0

Z
+
0

 x

d2
d2
x
(xe Lm (x)) 2 Ln (x) (xe Ln (x)) 2 Lm (x) dx+
dx
dx



d
d
(1 x)ex Lm (x) Ln (x) (1 x)ex Ln (x) Lm (x) dx+
dx
dx
Z
+(n m)

ex Ln (x)Lm (x)dx

integrando ora per parti il primo integrale


d2
d2
x
(xe Lm (x)) 2 Ln (x) (xe Ln (x)) 2 Lm (x) dx =
dx
dx
x





d
d
x
(xe Lm (x)) Ln (x) (xe Ln (x)) Lm (x) +
dx
dx
0
0
x



d
d
(1 x)ex Lm (x) Ln (x) (1 x)ex Ln (x) Lm (x) dx
dx
dx

in tale ultima uguaglianza si ha che i termini di bordo si annullano mentre lintegrale a


secondo membro `e esattamente il secondo integrale dellespressione iniziale con il segno
opposto. Si ha pertanto che
Z
(n m)

ex Ln (x)Lm (x)dx = (n m)(Ln (x), Lm (x)) = 0

quindi per n 6= m deve risultare (Ln (x), Lm (x)) = 0, cio`e i polinomi sono ortogonali.
ESERCIZIO N. 7
Z

cos(n arccos x) cos(m arccos x)

dx
1 x2
1

posto x = cos t, ovvero t = arccos x, essendo dx = sin tdt, 1 x2 = 1 cos2 t =


sin t e modificando i limiti di integrazione si ottiene
(Tn (x), Tm (x)) =

126

cos(nt) cos(mt)dt

(Tn (x), Tm (x)) =


0

pertanto, per n = m = 0
Z

dt =

(T0 , T0 ) =
0

per n = m 6= 0

Z
(Tn (x), Tn (x)) =


1 cos(2nt)
1
sin(2nt) 

dt = t
=

2
2
2n
2
0

cos (nt)dt =
0

per n 6= m, dalle formule di addizione


1
(Tn (x), Tm (x)) =
2

[cos((n + m)t) + cos((n m)t)]dt =


0


1  sin((n + m)t) sin((n m)t) 
=
+
=0
2
n+m
nm
0
ESERCIZIO N. 8
Posto arccos x = t, Tn (cos(t)) = cos(nt) = Cn (t) da cui
Cn+m (t) + Cnm (t) = 2 cos(nt) cos(mt)
se in tale ultima espressione prendiamo m = 1
Cn+1 (t) = 2 cos(nt) cos(t) Cn1 (t)
ovvero, tornando alla variabile x e ricordando che cos nt = cos(n arccos x) = Tn (x) e
che cos(t) = cos(arccos x) = x
Tn+1 (x) = 2xTn (x) Tn1 (x)
ESERCIZIO N. 9
Per trovare gli zeri si deve risolvere lequazione
Tn (x) = cos(n arccos x) = 0 ,

0 n arccos x <

ora, poiche il coseno si annulla per multipli dispari di /2, si ha che


n arccos xj =

2j + 1

127

j = 0, 1, . . . , n 1

ovvero
2j + 1 
,
2n

xj = cos

j = 0, 1, . . . , n 1

ESERCIZIO N. 10
Tale identit`a si prova con un procedimento iterativo. Come suggerito, utilizzando la
legge di triplice ricorsione si ha
n+1 (x)n (y) n (x)n+1 (y)
=
an n (x y)

[(an x + bn )n (x) + bn1 n1 (x)]n (y) n (x)[(an y + bn )n (y) + bn1 n1 (y)]


=
an n (x y)

n (x)n (y)
n (x)n1 (y) n1 (x)n (y)
bn1
n
an n (x y)

ed essendo
bn1 =

An1 An+1 n
A2n
n1

an =

An+1
An

si ottiene
n+1 (x)n (y) n (x)n+1 (y)
=
an n (x y)
=

n (x)n (y) n (x)n1 (y) n1 (x)n (y)


+
n
an1 n1 (x y)

iterando tale procedimento, utilizzando sempre la legge di triplice ricorsione, abbiamo


n+1 (x)n (y) n (x)n+1 (y)
=
an n (x y)
=

n
X
k (x)k (y)

k=1

1 (x)0 (y) 0 (x)1 (y)


a0 0 (x y)

ora se si tiene conto che


1 (x) = A1 x + B1

1 (y) = A1 y + B1

segue banalmente lidentit`a di Christoffel-Darboux.


ESERCIZIO N. 11
Nella (1.50) abbiamo definito
128

0 (x) = A0

0 (y) = A0

bn1 =

an
(n (x), xn1 (x))
n1

cio`e
bn1 =


An+1
n (x), An1 xn + p1n1 (x)
An n1

e poiche il polinomio n (x) `e ortogonale a qualunque polinomio di grado inferiore ad


n, si ha
bn1 =


An+1 An1
n

(x),
A
x
n
n
A2n n1

1
(x) = Bn xn1 + . . . , cio`e la parte del polinomio n (x) fino alla potenza n 1,
sia qn1
sommando e sottraendo nel prodotto scalare tale polinomio, si ottiene

bn1 =


An+1 An1
1
(x)

(x),

(x)

q
n
n
n1
A2n n1

sfruttando le propriet`a del prodotto scalare e lortogonalit`a di n (x) al polinomio


1
qn1
(x), segue immediatamente la (1.50). Un procedimento analogo ci consente di
ottenere che

b n = an

Bn+1 An+1

Bn
An

ESERCIZIO N. 12
kf (x)

rn (x)k22w

Z
=


2
n
X
ck k (x) dx = G(c0 , c1 , . . . , cn )
w(x) f (x)

G
= 2
ci

k=0



n
X
w(x) f (x)
ck k (x) i (x)dx

k=0

imponendo che tali derivate parziali risultino nulle si ottiene


n
X
k=0

Z
ck

Z
w(x)k (x)i (x)dx =

w(x)i (x)f (x)dx


a

ovvero
n
X



ck k (x), i (x) = f (x), i (x)

k=0


e poiche k (x), i (x) = 0 per k 6= i e vale uno se k = i in quanto ortonormali, si ha

immediatamente, ci = f (x), i (x)

129

ESERCIZIO N. 13
2
Nellesercizio 5 si `e provato chekPn (x)k22 = 2n+1
mentre nellesercizio 3 si `e visto che
i primi due polinomi di Legendre sono: P0 (x) = 1 e P1 (x) = x pertanto i primi due
polinomi ortonormali di Legendre sono
1
0 (x) =
2

3
1 (x) = x
2

pertanto il polinomio di migliore approssimazione in media quadratica, per la funzione


ex , nellintervallo [1, 1] rispetto alla funzione peso w(x) = 1 `e dato da
R1? (x) =

1 x  3 x 
e ,1 + e ,x x
2
2

ora
x


e ,1 =


e ,x =

1
ex dx = ex 1 = 2.3504

1
xex dx = [xex ex ] 1 = 2e1 = 0.735759

pertanto R1? (x) = 1.1752 + 1.1036x


ESERCIZIO N. 14
Il polinomio F1 (x) = c10 + c11 x relativo alla funzione ex nellintervallo [1, 1] `e il
polinomio per cui
exj F1 (xj ) = (1)j E1

con xj = 1, 0, 1

pertanto imponendo tali condizioni nei tre punti si ottiene il seguente sistema lineare

E + c10 c11 = e1

1
E1 + c10 = 1

E + c + c = e
1

10

11

pertanto
c11 = sinh(1) = 1.1752 ,

c10 = (cosh(1) + 1)/2 = 1.27154

ESERCIZIO N. 15
La soluzione `e molto semplice. Essendo la funzione f (x) con derivata seconda positiva
il polinomio di migliore approssimazione uniforme nella classe dei polinomi di primo
grado si determina esattamente come si `e visto per la funzione ex . Cio`e tale polinomio

130

`e la retta che interseca la funzione f (x) in due punti ed in particolare quella in cui le
massime distanze 1 dalla funzione sono uguali. Tali massime distanze sono assunte
nei punti a, b e c interno ad [a, b]. Pertanto dobbiamo risolvere il seguente sistema

f (a) a0 a1 a = 1

f (b) a a b =
0

a0 + a1 c f (c) = 1

a = f 0 (c)
1
La soluzione di questo sistema porta esattamente ai risultati richiesti.

5.2

Esercizi capitolo 2

ESERCIZIO N. 1
Se si interpola la funzione f (x) nel punto a sinistra dellintervallo di integrazione
(a, f (a)) abbiamo
f (x) = f (a) + (x a)f [a, x]
pertanto, se la funzione f (x) C1 [a, b]

Z
a

(x a)dx =

(x a)f [a, x]dx = (b a)f (a) + f [a, x ]

f (a)dx +

f (x)dx =
a

(b a)2 0
= (b a)f (a) +
f () , [a, b]
2
Per la generalizzazione della formula suddividiamo lintervallo [a, b] in n sottointervalli
S
di uguale ampiezza. [a, b] = n1
i=0 [xi , xi+1 ], con h = (b a)/n, xi = x0 + ih , i =
0, 1, . . . , n ed x0 = a.

f (x)dx =
a

n1 Z
X
i=0

=h

n1
X
i=0

xi+1

f (x)dx =

xi

n1 Z
X
i=0

xi+1

f (xi )dx +

xi

n1 Z
X
i=0

n1
h2 X 0
s
s
f (i ) = I0n
(f ) + E0n
(f ) ,
f (xi ) +
2 i=0

Se teniamo conto che lim h


n

n1
X
i=0

f (i ) =

xi+1

(x xi )f [xi , x]dx =

xi

i [xi , xi+1 ]

f 0 (x)dx = f (b) f (a)

s
si trova che la stima asintotica dellerrore E0n
(f ) `e data da

131

h
s
(f ) = [f (b) f (a)]
E0n
2
Osservazione: tale stima asintotica non va bene se f (b) = f (a) = 0
ESERCIZIO N. 2
Sia c = (a + b)/2 il punto di mezzo dellintervallo [a, b], interpolando la funzione f (x)
con il polinomio di grado zero che passa in (c, f (c)) abbiamo
f (x) = f (c) + (x c)f [c, x]
e quindi
b

(x c)f [c, x]dx = I0c (f ) + E0c (f )

f (c)dx +

f (x)dx =

I0c (f ) = (b a)f (c), per quanto riguarda lerrore E0c (f ), poiche la funzione xc cambia
segno in [a, b] dobbiamo procedere come nella formula di quadratura
di Simpson. Si
Z
x

(t c)dt. Si ha che

introduce pertanto la seguente funzione integranda, (x) =


a

0 (x) = x c, (a) = (b) = 0 e che (x) 0 per x [a, b]. Pertanto, nellipotesi in
cui la funzione f (x) C2 [a, b]

E0c (f )

f 00 ()
(x)f [c, x, x]dx =
2

(x)f [c, x]dx =

=
a

(t c)dt

dx
a

Ora, scambiando lordine di integrazione, come si `e fatto nel metodo di Simpson, si


prova che
(b a)3 00
f ()
24
Per la generalizzazione della formula suddividiamo lintervallo [a, b] in n sottointervalli
S
di uguale ampiezza. [a, b] = n1
i=0 [xi , xi+1 ], con h = (b a)/n, xi = x0 + ih , i =
0, 1, . . . , n ed x0 = a. Indicando con xi+ 1 = (xi +x2 i+1 )
E0c (f ) =

f (x)dx =
a

n1 Z
X
i=0

=h

n1
X
i=0

xi+1

xi

f (x)dx =

n1 Z
X
i=0

xi+1

n1 Z
X
f (xi+ 1 )dx+
2

xi

i=0

n1

xi+1

xi

(xxi+ 1 ) f [xi+ 1 , x]dx =


2

h3 X 00
c
c
f (xi+ 1 ) +
f (i ) = I0n
(f ) + E0n
(f ) i [xi , xi+1 ]
2
24 i=0

132

Ricordando che lim h


n

asintotica dellerrore

n1
X

00

f 00 (x)dx = f 0 (b) f 0 (a) si trova che la stima

f (i ) =

i=0
c

E0n (f )

`e data da
h2
c
(f ) = [f 0 (b) f 0 (a)]
E0n
24

ESERCIZIO N. 3
Sia xi = x0 + ih , i = 0, 1, 2, 3, 4 con x0 = a ed h = (b a)/4. Il polinomio di secondo
grado che interpola la f (x) in (x1 , f (x1 )), (x2 , f (x2 )) e (x3 , f (x3 )) `e dato da


(x

x
)(x

x
)
(x

x
)(x

x
)
(x

x
)(x

x
)
1
3
1
2
2
3
f (x1 )+
f (x2 )+
f (x3 )
pa2 (x) =
(x1 x2 )(x1 x3 )
(x2 x1 )(x2 x3 )
(x3 x1 )(x3 x2 )


mentre lerrore `e
R2a (x) = (x x1 )(x x2 )(x x3 )f [x1 , x2 , x3 , x]
e quindi essendo
Z

Z
f (x)dx =

pa2 (x)dx

Z
+

R2a (x)dx = I2a (f ) + E2a (f )

Utilizzando il cambio di variabile xx2 = th si ha che xx1 = h(t1), xx3 = h(t+1),


dx = hdt, ed inoltre per x = a = x0 , t = 2 e per x = b = x4 , t = 2. Pertanto

I2a (f )

Z b
=
a


(x x2 )(x x3 )f (x1 ) (x x1 )(x x3 )f (x2 ) (x x1 )(x x2 )f (x3 )
+
+
dx =
(x1 x2 )(x1 x3 )
(x2 x1 )(x2 x3 )
(x3 x1 )(x3 x2 )

= hf (x1 )

(t 1)(t + 1)dt + hf (x3 ))

t(t + 1)dt + hf (x2 ))


2

t(t 1)dt =
2


4h 
2f (x1 ) f (x2 ) + 2f (x3 )
3
Per lerrore, come in Simpson, si introduce la funzione integranda
=

(t x1 )(t x2 )(t x3 )dt

(x) =
a

Essendo la funzione integranda dispari rispetto al punto di mezzo x2 si vede che (a) =
(b) = 0 ed inoltre (x) 0 per x [a, b] e 0 (x) = (x x1 )(x x2 )(x x3 ). Pertanto,
integrando per parti ed eliminando i termini di bordo, in quanto si annullano, abbiamo

133

E2a (f )

Z
(x x1 )(x x2 )(x x3 )f [x1 , x2 , x3 , x]dx =

=
a

0 (x)f [x1 , x2 , x3 , x]dx =

Z
Z x
f (4) () b
=
(x)f [x1 , x2 , x3 , x, x]dx =
dx
(t x1 )(t x2 )(t x3 )dt =
4!
a
a
a
Z b
Z
14h5 (4)
f (4) () b
dt
(t x1 )(t x2 )(t x3 )dx =
f () , [a, b]

4!
45
a
t
Z

ESERCIZIO N. 4
Il massimo grado pensabile per una formula di quadratura del genere `e 2 in quanto
nella formula compaiono 3 incognite. Infatti se la formula `e esatta per polinomi al pi`
u
di grado 2 si deve avere che

R1

w0 + w1 = 0 dx = 1

R1
w1 x1 = 0 xdx = 12

w x2 = R 1 x2 dx = 1
1 1

La soluzione di tale sistema `e data da


w0 =

3
2
1
, w1 =
, x1 =
4
4
3

ESERCIZIO N. 5
Se imponiamo che la formula abbia grado di precisione 2 si deve risolvere il seguente
sistema

R1

w0 + w1 + w2 = 1 dx = 2

w + w = R 1 xdx = 0
0
2
1
R1 2

w0 + w2 = 1 x dx = 32

Si trova facilmente che la soluzione del sistema `e data da


1
4
, w1 =
3
3
Per vedere se il massimo grado di precisione della formula `e proprio 2 dobbiamo vedere
se tale formula `e non esatta per f (x) = x3 . Se imponiamo che abbia grado di precisione
3 dobbiamo verificare anche la seguente equazione
w0 = w2 =

134

x3 dx = 0

w0 + w2 =
1

Tale ultima equazione `e verificata visti i valori ottenuti per w0 e w2 pertanto la formula ha grado di precisione almeno 3. Potevamo giungere immediatamente a questa
conclusione in quanto la formula di quadratura ottenuta `e proprio quella di Simpson.
ESERCIZIO N. 6
Per determinare il valore di k basta applicare la formula di quadratura alla funzione
f (x) = x4 . In tal caso si ha
Z

x4 dx =

h 4
[h + h4 ] + k4!
3

cio`e
( 25 23 )h5
2 5
2 5
h + k4! = h k =
3
5
4!

k=

1 5
h
90

ESERCIZIO N. 7
Poiche nella formula di quadratura proposta ci sono 4 incognite `e sperabile che possa
avere come massimo grado di precisione tre. Cio`e la formula esatta per f (x) = xk ,
k = 0, 1, 2, 3. Imponendo che sia esatta per tali polinomi otteniamo un sistema
disaccoppiato, e cioe per f (x) = 1 ed f (x) = x si ha
a0 + a1 =
a1 =

1
2

1
6

e pertanto a0 = 65 ed a1 = 16 .
Se ora imponiamo che la formula sia esatta per f (x) = x2 ed f (x) = x3 , tenendo conto
dei valori gi`a ottenuti per a1 , abbiamo
1
2
1
x21 + x22 =
6

la soluzione di tale ultimo sistema `e x1 = (3 3)/12 ed x2 = (3 + 3)/12


x 1 + x2 =

ESERCIZIO N. 8
Dobbiamo provare che lerrore

135

Z
E2 (f ) =
a



ba
a+b
f (x)dx
f (a) + 4f (
) + f (b)
6
2

si annulla se f (x) = xr per r = 0, 1, 2, 3. Abbiamo infatti che


b

dx

E2 (1) =
a
b

xdx

E2 (x) =
a

E2 (x ) =

 b 2 a2 b a 

b a
a+b
a+4
+b =

3(b + a) = 0
6
2
2
6

 b 3 a3 b a  2

b a 2
(a + b)2
2
x dx
a +4
+b =

2(a + ab + b2 ) = 0
6
4
3
6
2

E2 (x ) =

ba
[1 + 4 + 1] = (b a) (b a) = 0
6

x3 dx


b a  3 (a + b)3 3  b4 a4 b a  3 3 2
+b =

(a +b a+ba2 +b3 ) =
a +4
6
8
4
6 2


(b a)(b + a)(b2 + a2 ) b a  2

a(a + b2 ) + b(a2 + b2 ) = 0
4
4

ESERCIZIO N. 9
Il polinomio di Hermite, che interpola la funzione e la derivata prima nei punti di
ascissa a e b `e dato da (cfr. Appendice A)
a (x)f 0 (a) + h
b (x)f 0 (b)
H3 (x) = ha (x)f (a) + hb (x)f (b) + h
dove


x a  (x b)2
x b  (x a)2
ha (x) = 1 2
;
h
(x)
=
1

2
b
a b (a b)2
b a (b a)2
2
2
a (x) = (x a) (x b) ; h
b (x) = (x b) (x a)
h
(a b)2
(b a)2

mentre lerrore, espresso sotto forma di differenze divise, `e dato da


R3 (x) = (x a)2 (x b)2 f [a, a, b, b, x]
quindi
Z

Z
f (x)dx =

Z
H3 (x)dx +

R3 (x)dx = I3 (f ) + E3 (f )
a

con
136

Z
I3 (f ) = f (a)

ha (x)dx + f (b)
a

E3 (f ) =

a (x)dx + f 0 (b)
h

hb (x)dx + f (a)
a

b (x)dx
h

(x a)2 (x b)2 f [a, a, b, b, x]dx

se ora poniamo h = b a, x a = ht, si ha che per x = b , t = 1 e per x = a , t = 0


inoltre dx = hdt e x b = h(t 1), quindi
b


x a  (x b)2
dx = h
12
a b (a b)2

ha (x)dx =
a

a
1

Z
=h
0


x b  (x a)2
dx = h
12
b a (b a)2

hb (x)dx =
a

=h
0

[1 2(t 1)]t2 dt =

1
t4
ba
h
[3t 2t ]dt = h[t ] = =
2 0 2
2
2

a (x)dx =
h

Z 1
(x b)2
dx = h
t(t 1)2 dt =
(x a)
2
(a

b)
0
a

1
t4 2t3 t2
h
ba
h[
+ ] =
=
4
3
2 0 12
12

(1 + 2t)(t 1)2 dt =

1
4

t
h
ba
[2t3 3t2 + 1]dt = h[ t3 + t] = =
2
2
2
0

Z 1
2
(x

a)
b (x)dx =
h
(x b)
dx = h
(t 1)t2 dt =
2
(b a)
a
0
1
t4 t3
h
ba
= h[ ] = =
4
3 0
12
12
Z

e quindi
ba
ba 0
[f (a) + f (b)]
[f (b) f 0 (a)]
2
12
Per quanto riguarda lerrore E3 (f ), essendo per ipotesi la funzione f (x) C4 [a, b] si ha
che la differenza divisa f [a, a, b, b, x] `e una funzione continua, mentre (x a)2 (x b)2
non cambia segno in [a, b], quindi si pu`o applicare il teorema della media integrale ed
utilizzando il cambio di variabile precedente si ha
I3 (f ) =

b
2

5f

(x a) (x b) f [a, a, b, b, x]dx = h

E3 (f ) =
a

137

(4)

()
4!

Z
0

h5 f (4) ()
t (t 1) dt =
720
2

ESERCIZIO N. 10

3 2 1
Il polinomio di Legendre di grado due `e P2 (x) = 2 x 2 e quindi gli zeri sono: x1 = 33

ed x2 = 33 . Dalla definizione dei polinomi di Legendre si vede che il polinomio di terzo


grado `e P3 (x) = 52 x3 32 x e pertanto il coefficiente della potenza di grado massimo del
A3
= 35 inoltre 2 = (P2 (x), P2 (x)) = 52
polinomio di grado tre `e A3 = 52 e quindi a2 = A
2
e P20 (x) = 3x. Essendo
wj =

a2 2
0
P2 (xj )P3 (xj )

, j = 1, 2

si vede immediatamente che w1 = w2 = 1 e pertanto la (2.18).


Per la generalizzazione estendiamo anche il procedimento ad un generico intervallo
[a, b] limitato. Suddividiamo lintervallo [a, b] in n sottointervalli di uguale ampiezza.
S
[a, b] = n1
i=0 [xi , xi+1 ], con h = 2/n, xi = x0 + ih , i = 0, 1, . . . , n ed x0 = a.
Z

f (x)dx =

n1 Z
X

i=0

xi+1

f (x)dx

xi

(xi + xi+1 ) (xi+1 xi )


+
t, si vede
2
2
inoltre dx = (xi+12xi ) dt, pertanto

se ora utilizziamo il seguente cambio di variabile x =


che per t = 1 x = xi e per t = 1 x = xi+1
b

f (x)dx =
a

'


n1
X
(xi+1 xi )
i=0

Z
n1
X
(xi+1 xi )
2

i=0

f(

(xi + xi+1 ) (xi+1 xi )


+
t)dt '
2
2


(xi + xi+1 ) (xi+1 xi ) 3 
(xi + xi+1 ) (xi+1 xi ) 3 
f

+f
+
2
2
3
2
2
3

ESERCIZIO N. 11
La formula di quadratura ad un nodo `e I1 (f ) = w1 f (x1 ) Se imponiamo che sia esatta
per polinomi al pi`
u di grado uno si deve avre che

w = R 1 ln(x)dx = 1
1
0
w x = R 1 x ln(x)dx =
1 1

1
4

La soluzione del sistema `e w1 = 1 e x1 = 14 e quidi la formula di quadratura ad un


punto che ha grado di precisione uno `e data da
Z
0

1
ln(1/x)f (x)dx ' f ( )
4

138

` facile verificare che tale formula di quadratura ha grado di precisione uno. Basta
E
prendere
un generico polinomio di primo grado p1 (x) = a0 + a1 x e far vedere che
Z 1
1
ln(1/x)p1 (x)dx = p1 ( ).
4
0
ESERCIZIO N. 12
a = 0.;
b = Pi;
nc = 6;
nmax = 64;
Vs = Table@80, 0, 0, 0, 0, 0, 0<, 8n, 1, nmax<D;
f@y_D = Sin@yD * Exp@yD;
g@y_D = D@f@yD, 8y, 3<D;
Vesatto = N@Integrate@f@yD, 8y, a, b<D, 9D;
Print@" N
", " ESATTO ", "GAUSS_LEG ",
"SIMPSON
", "ERR_GAUSS
", "ERR_SIMPSON
"D;
n = 2;
s = 1;
While@n nmax, h = Hb - aL n;
m = 2 * n;
x = Table@a + i * h 2, 8i, 0, m<D;
H* GAUSS LEGENDRE GENERALIZZATO *L
r1 = -Sqrt@3D 3.0;
r2 = Sqrt@3D 3.0;
V1 = 0.0;
Do@V1 =
V1 + Hh 2L * Hf@Hh 2L * r1 + Hx@@ 2 * i - 1DD + x@@2 * i + 1DDL 2D +
f@Hh 2L * r2 + Hx@@ 2 * i - 1DD + x@@2 * i + 1DDL 2DL ,
8i, 1, n<D;
H* SIMPSON GENERALIZZATO *L
V2 = 0.0;
Do@V2 = V2 + h * Hf@ x@@2 * i - 1DD D +
4 * f@ x@@2 * iDD D + f@ x@@2 * i + 1DD DL 6, 8i, 1, n<D;
ErGL = Vesatto - V1;
ErCS = Vesatto - V2;
Print@" ", N@n, 3D, "
", Vesatto,
" ", N@V1, ncD, "
", NumberForm@V2, ncD,
"
", ScientificForm@ErGL, ncD, "
",
ScientificForm@ErCS, ncDD; s = s + 1; n = 2 ^ sD;
N

ESATTO

GAUSS_LEG

SIMPSON

ERR_GAUSS

ERR_SIMPSON

2.00

12.0703

12.1475

11.9554

-7.71519 10-2

1.149 10-1

4.00

12.0703

12.0748

12.0637

-4.41354 10-3

6.60531 10-3

8.00

12.0703

12.0706

12.0699

-2.68369 10-4

4.02312 10-4

16.0

12.0703

12.0704

12.0703

-1.66523 10-5

2.49747 10-5

32.0

12.0703

12.0703

12.0703

-1.03887 10-6

1.55825 10-6

64.0

12.0703

12.0703

12.0703

-6.48996 10-8

9.73485 10-

139

Si nota che landamento dellerrore nella formula generalizzata di Gauss-Legendre a due


punti `e simile a quello della formula di Simpson generalizzata. In effetti entrambe le
formule hanno nellespressione dellerrore un O(h5 ) come si pu`o desumere dalla formula
dellerrore del teorema di Gauss.

ESERCIZIO N. 13
La stima asintotica dellerrore nella formula di quadratura dei trapezi `e
2

h
En (f ) = [f 0 (b) f 0 (a)]
12
Dobbiamo scegliere h in modo che


En (f ) < 104
poiche
f 0 (x) =

1
(1 + x)2

f 0 (1) f 0 (0) =

3
4

quindi
4
1
h2 3
< 104 , h2 < 16 104 , h <
=
= 0.04
12 4
100
25
Basta quindi scegliere n > 25.

ESERCIZIO N. 14
Si deve utilizzare la (2.19). Dove i pesi wj =
nodi xjn = cos

an n
Tn+1 (xj )Tn0 (xj )

j = 1, 2, . . . , n i

(2j + 1) 
, j = 0, 1, ..., n 1 e lerrore `e dato da
2n

Tn (x), Tn (x) (2n)
En (f ) =
f () (1, 1)
A2n (2n)!

Ora, tenendo conto della legge di triplice ricorsione per i polinomi di Chebyscev, abbiamo che An = 2n1 per n 1, quindi an = An+1 /An = 2, sappiamo inoltre che

Tn (x), Tn (x) = /2 per n 1. Ricordando la definizione dei polinomi di Chebyscev
di prima specie abbiamo:
Tn+1 (xjn ) = cos((n + 1) arccos(xjn )) = cos(n arccos(xjn )) cos(arccos(xjn ))+
1

sin(n arccos(xjn )) sin(arccos(xjn )) = [1cos2 (n arccos(xjn ))] 2 [1cos2 (arccos(xjn )) 2


tenendo sempre conto che Tn (xjn ) = cos(n arccos(xjn )) = 0 si trova che
140

Tn+1 (xjn ) = [1 x2jn ] 2


1

Tn0 (x) = n sin(n arccos(x))/[1 x2 ] 2


1

Tn0 (xjn )

n[1 cos2 (n arccos(xjn ))] 2

[1 x2jn ]

1
2

n
1

[1 x2jn ] 2

e pertanto
wj =

2 2
[1 x2jn ]

1
2

n
1

[1x2jn ] 2

Per quanto riguarda lerrore abbiamo


En (f ) =

/2
2
(2n)
f
()
=
f (2n) ()
2n2
2n
2
(2n)!
2 (2n)!

ESERCIZIO N. 15
Il cambio di variabile `e il seguente, x = t , > 0. Avremo dx = t1 , inoltre per
x = 0, t = 0 e per x = 1, t = 1. Pertanto nella nuova variabile si ha
Z
I(f ) =

1 1

cos( t )
3

dt =

t 4 1 cos( t )dt

t4
0
Prendendo quindi = 4 si `e regolarizzato al massimo la funzione integranda, avendo
0

I(f ) = 4

cos(t2 )dt

Se risolviamo lintegrale senza cambio della variabile di integrazione, utilizzando la


formula di quadratura del punto di mezzo adattata, si debbono fare circa 500.000
valutazioni di funzione per un  = 103 . Utilizzando la stessa formula di quadratura
adattata ma applicandola allintegrale in cui si `e eliminata la singolarit`a con il cambio
di variabile, il numero di valutazioni di funzione `e di circa 350 per un  = 105 .

ESERCIZIO N. 16
Si ha che
Z

f (x) ln(x)dx =
0

n1 Z
X
i=0

141

xi+1

xi

f (x) ln(x)dx

La formula prodotto rettangolare sar`a quindi


In (f ) =

n1
X
i=0

xi + xi+1
)
f(
2

xi+1

ln(x)dx =
xi

n1
X

wi f (

i=0

xi + xi+1
)
2

dove
h

ln(x)dx = h ln(h) h

w0 =
0

(i+1)h

ln(x)dx = (i + 1)h ln((i + 1)h) ih ln(ih) h , i = 1, 2, ..., n 1

wi =
ih

5.3

Esercizi capitolo 3

ESERCIZIO N. 1
I metodi che si debbono determinare, essendo a due passi, hanno p = 1 ed inoltre
dovendo essere del terzo ordine debbono verificare le 1. e 2. della (3.38) e la 3. per
i = 2, 3. Dobbiamo quindi risolvere il seguente sistema di equazioni lineari

a0 + a1 = 1

a + b + b + b = 1
1
1
0
1

a1 + 2b1 2b1 = 1

a + 3b + 3b = 1
1
1
1
Il sistema `e un sistema di 4 equazioni in 5 incognite che ammette un numero infinito
di soluzioni. Possiamo esprimere ciascun coefficiente in termini di a1 e si ottiene

a0 = 1 a1

b = 5a1
1
12
2+2a1

b0 = 3

b = 5a1 1
1
12
Se scegliamo a1 = 1 si trova che: a0 = 0, b1 = 1/3, b0 = 4/3 e b1 = 1/3. Il metodo
quindi `e il seguente
h
yn+1 = yn1 + [yn1 + 4yn + yn+1 ]
3
che `e il metodo di Simpson.

142

ESERCIZIO N. 2
In questo caso abbiamo p = 1, b1 = 0. Dobbiamo inoltre verificare la 1. la 2. e la 3.
per i = 2 delle condizioni (3.38). Dobbiamo pertanto risolvere il seguente sistema di
equazioni lineari

a + a1 = 1

0
a1 + b0 + b1 = 1

a 2b = 1
1

Il sistema `e formato da tre equazioni e quattro incognite ed ammette infinite soluzioni.


Possiamo esprimere il valore delle incognite in termini di a1 e si ottiene: a0 = 1 a1 ,
b0 = 3/2 + a1 /2 e b1 = 1/2 + a1 /2. In particolare se si sceglie a1 = 1 si ottiene a0 = 0,
b0 = 2, b1 = 0 cio`e il metodo del punto di mezzo
yn+1 = yn1 + 2hf (xn , yn )
ESERCIZIO N. 3
Il metodo `e un metodo a due passi, quindi p = 1 ed esplicito b1 = 0. Vediamo quali
delle condizioni (3.38) sono verificate
1. di (3.38) a0 + a1 = 4 3 = 1 (verificata)
2. di (3.38) a1 + b0 + b1 = 3 2 = 1 (verificata)
3. di (3.38) per i = 2 a1 2b1 = 3 + 4 = 1 (verificata)
3. di (3.38) per i = 3 a1 + 3b1 = 3 6 6= 1 (non verificata)
il metodo quindi `e del secondo ordine.
Per verificare la convergenza prendiamo in considerazione il seguente problema di Cauchy: y 0 (x) = 0, y(0) = 0 la cui soluzione `e Y (x) = 0. La soluzione numerica ottenuta
con il metodo, nellipotesi in cui y0 = h e y1 = 3h, `e data da
y2 = 4y1 3y0 = 12h 3h = 9h = 32 h

y3 = 4y2 3y1 = 36h 9h = 27h = 33 h

y4 = 4y3 3y2 = 108h 27h = 81h = 34 h

..........................

yn = 4yn1 3yn2 = 3n h
143

pertanto
max |yn Yn | = 3N (h) h

0nN (h)


lim

h0


max |yn Yn | =

0nN (h)

Il metodo risulta divergente e quindi anche instabile.


ESERCIZIO N. 4
Lequazione caratteristica associata allequazione alle differenze `e data da
1
1
r3 r2 r + = 0
4
4
tale equazione si pu`o fattorizzare come segue
1
(r 1)(r2 ) = 0
4
pertanto le radici sono: r0 = 1, r1 = 1/2, r2 = 1/2. La soluzione generale dellequazione alle differenze `e quindi
1 n
1 n
+ c2 (1)n
2
2
Se imponiamo le condizioni iniziali si ha
y n = c0 + c1

c + c1 + c2 = 4

0
c0 + c21 c22 = 32

c + c1 + c2 = 7
0
4
4
4
La soluzione del sistema `e: c0 = 1, c1 = 2, c2 = 1 ed allora la soluzione dellequazione
alle differenze `e
yn = 1 +

1 n1
1 n
+ (1)n
2
2

Il valore per n = 1001 `e:


y1001 = 1 +

1 1000
1 1001
+ (1)n
'1
2
2

ESERCIZIO N. 5
Supponiamo che esista una radice ri di (r) tale che |ri | = 1 e 0 (ri ) = 0. Prendiamo
cone problema di Cauchy il seguente y 0 (x) = 0 , y(0) = 0 la cui soluzione `e Y (x) = 0.
La soluzione numerica ottenuta con il metodo multistep (3.46) `e yn = 0 se prendiamo

144

come primi valori y0 = y1 = ... = yp = 0. Perturbando il primi valori, prendendo


cio`e come valori iniziali zj = jrij , j = 0, 1, ..., p si trova che la soluzione numerica
perturbata zn `e data da zn = nrin . Abbiamo infatti che ri `e radice di (r) e quindi
p
X
aj ripj = rip+1 ed essendo |ri | = 1 sappiamo che ri 6= 0 quindi moltiplicando per ri
j=0

luguaglianza precedente si trova

p
X

aj rip+1j = rip+2 . Sappiamo inoltre, per ipotesi,

j=0
0

che (ri ) = 0.
0

(r) = (p + 1)r

p1
X

aj (p j)r

pj1

= (p + 1)r

p
X

aj (p j)rpj1

j=0

j=0

quindi
(p +

1)rip+1

p
X

aj (p

j)ripj

; (p +

1)rip+2

p
X

aj (p j)rip+1j

j=0

j=0

Se ora calcoliamo zp+1 e zp+2 utilizzando il metodo multistep abbiamo


zp+1 =

p
X

aj zpj = 

j=0

zp+2 = 

p
X

aj (p + 1

p
X

aj (p j)ripj = (p + 1)rip+1

j=0

j)rip+1j

j=0

p
p
X
X

p+1j
=
aj (p j)ri
+
aj rip+1j =
j=0

j=0



=  (p + 1)rip+2 + rip+2 = (p + 2)rip+2
Pertanto
N (h)

max |zn yn | = N (h)|ri

| = N (h)

0nN (h)

non `e quindi possibile trovare una costante c, indipendente da h, tale che


max |zn yn | c in quanto N (h) per h 0.
0nN (h)

ESERCIZIO N. 6
Come nellesercizio precedente prendiamo come problema di Cauchy y 0 (x) = 0 , y(0) =
0. Supponiamo che la seconda condizione sulle radici non sia verificata, cio`e che esiste
almeno una radice ri che ha modulo unitario ma non `e una radice semplice del polinomio
(r), cio`e 0 (ri ) = 0. Se prendiamo come primi p + 1 valori yj = hjrij , j = 0, 1, ..., p,
con ragionamenti analoghi a quelli fatti nellesercizio precedente si trova che yn =
hnrin , n = 0, 1, ..., N (h). Allora

145

N (h)

max |Y (xn ) yn | = hN (h)|ri

| = hN (h)

0nN (h)

scegliendo N (h) in modo che h = b/N (h) abbiamo


lim

h0


max |Y (xn ) yn | = b 6= 0

0nN (h)

ESERCIZIO N. 7
Il metodo `e un metodo esplicito a tre passi, quindi b1 = 0 e p = 2, inoltre si ha che
a0 = 3/2, a1 = 3, a2 = 1/2, b0 = 3, b1 = 0, b2 = 0. Per stabilire lordine di
convergenza dobbiamo vedere quante delle condizioni sui coefficienti sono verificate.
3
1
1. di (3.38) a0 + a1 + a2 = + 3 = 1
2
2
2. di (3.38) a1 2a2 + b0 + b1 + b2 = 3 + 1 + 3 = 1
3. di (3.38) per i = 2 a1 + 4a2 + 2(b1 2b2 ) = 3 2 = 1
3. di (3.38) per i = 3 a1 8a2 + 3(b1 + 4b2 ) = 3 + 4 = 1
3. di (3.38) per i = 4 a1 + 16a2 + 4(b1 8b2 ) = 3 8 6= 1
Il metodo quindi `e del terzo ordine. Analizziamo ora la convergenza. Utilizzando il
teorema di convergenza dei metodi multistep dobbiamo calcolare le radici del polinomio
caratteristico (r). Nel caso specifico il polinomio `e
1
5 1
3
(r) = r3 + r2 3r + = (r 1)(r2 + )
2
2
2 2
le radici sono

5
33
5
33
r0 = 1 ; r1 = +
; r2 =
4
4
4
4
abbiamo che |r2 | > 1 quindi il metodo non converge in quanto non `e verificata la prima
condizione sulle radici (3.50).
ESERCIZIO N. 8
Come suggerito in nota, approssimiamo la soluzione Y (x) del problema di Cauchy con
il polinomio di terzo grado, scritto sotto forma di differenze finite allindietro (vedi Appendice C), che interpola la Y (x) nei punti nodali xn+1 , xn , xn1 , xn2 che supponiamo
alla stessa distanza h.

Y (x) = P3 (x) + R3 (x) = 50 Yn+1 + (x xn+1 )

5Yn+1
52 Yn+1
+ (x xn+1 )(x xn )
+
h
2!h2

+(x xn+1 )(x xn )(x xn1 )

146

53 Yn+1
+
3!h3

+(x xn+1 )(x xn )(x xn1 )(x xn2 )Y [xn+1 , xn , xn1 , xn2 , x]
derivando abbiamo
5Yn+1
52 Yn+1
Y (x) =
+ [(x xn+1 ) + (x xn )]
+
h
2!h2
0

[(x xn+1 )(x xn ) + (x xn+1 )(x xn1 ) + (x xn )(x xn1 )]


+

1
1
X
Y
i=2

(x xn+j )Y [xn+1 , xn , xn1 , xn2 , x]+

j=2
j6=i

1
Y

53 Yn+1
+
3!h3

(x xn+j )Y [xn+1 , xn , xn1 , xn2 , x, x]

j=2

calcolando la derivata in xn+1 si ottiene


5Yn+1 52 Yn+1 53 Yn+1
+
+
+ 6h3 Y (5) ()
h
2h
3h
svolgendo le differenze finite allindietro abbiamo
Y 0 (xn+1 ) =


1  11
18
9
2
Yn+1 Yn + Yn1 Yn2 + 6h3 Y (5) ()
h 6
6
6
6
se ora teniamo conto che dal problema di Cauchy
Y 0 (xn+1 ) =

Y 0 (xn+1 ) = f (xn+1 , Yn+1 )


sostituendo ad Y 0 (xn+1 ) il valore precedentemente ottenuto, abbiamo

18
9
2
1  11
Yn+1 Yn + Yn1 Yn2 + 6h3 Y (5) () = f (xn+1 , Yn+1 )
h 6
6
6
6
pertanto
Yn+1 =

18
9
2
6
36
Yn Yn1 + Yn2 + hf (xn+1 , Yn+1 ) + h4 Y (5) ()
11
11
11
11
11

quindi, se trascuriamo lerrore di troncamento locale Tn (Y ) =


metodo

36 4 (5)
h Y ()
11

otteniamo il

18
9
2
6
yn yn1 + yn2 + hf (xn+1 , yn+1 )
11
11
11
11
ed essendo Tn (Y ) = O(h4 ) abbiamo che (h) = O(h3 ), quindi il metodo ottenuto `e del
terzo ordine.
Per provare che `e del terzo ordine si possono anche utilizzare le 1. 2. e 3 per i=2,3
di (3.38). Il metodo `e un metodo a tre passi implicito, quindi p = 2, con a0 = 18/11,
yn+1 =

147

a1 = 9/11, a2 = 2/11, b1 = 6/11, b0 = b1 = b2 = 0.


9
2
18

+
=1
11 11 11
9
4
6
2. di (3.38) a1 2a2 + b1 =

+
=1
11 11 11
9
8
12
3. di (3.38) per i = 2 a1 + 4a2 + 2b1 = +
+
=1
11 11 11
9
16 18
3. di (3.38) per i = 3 a1 8a2 + 3b1 =

+
=1
11 11 11
1. di (3.38)

a0 + a1 + a2 =

Per far vedere se converge, essendo il metodo consistente, basta provare che sono
verificate le condizioni sulle radici.
18 2
9
2
r + r
=0
11
11
11
come si vede la r0 = 1 `e radice, abbassando con Ruffini abbiamo
(r) = r3

(r 1)(11r2 7r + 2) = 0
le altre due radici pertanto sono r1 =

7+i 39
11

ed r2 =

7i 39
11

88
<1
121
sono pertanto verificate le condizioni sulle radici, quindi il metodo `e convergente.
|r1 | = |r2 | =

ESERCIZIO N. 9
Dovendo essere un metodo esplicito del quarto ordine dobbiamo imporre le condizioni
(3.38) fino ad i = 4 con b1 = 0. Pertanto i coefficienti debbono verificare il seguente
sistema di equazioni lineari
a0

+a1
+a2
=1
a1 2a2 +b0 +b1
+b2
=1
a1
+4a2
2b1 4b2 = 1
a1 8a2
+3b1 +12b2 = 1
a1 +16a2
4b1 32b2 = 1
Il sistema `e formato da 5 equazioni e 6 incognite ed ammette infinite soluzioni. Possiamo esprimere tutti i coefficienti in termini di a0 . Per analizzare la convergenza dobbiamo studiare le radici rj del polinomio caratteristico (r) pertanto basta calcolare solo
gli aj e si ha: a1 = 9, a2 = 8 a0 .
(r) = r3 a0 r2 9r + 8 + a0 = (r 1)[r2 + (1 a0 )r 8 a0 ]

148

p



Le radici di (r) sono: r0 = 1, r1 = (a0 1) + (1 + a0 )2 + 32 /2, r2 = (a0 1)
p

(1 + a0 )2 + 32 /2. Si puo vedere che |r2 | > 1 per ogni a0 . Per la prima condizione
sulle radici (3.50) per la radice r2 si deve avere
p


(a0 1) (1 + a0 )2 + 32 /2 1
e tale disuguaglianza non `e verificata per alcun valore di a0 , infatti la disuguaglianza
[(a0 1)

p
p

(1 + a0 )2 + 32 /2 1 ovvero 1 + a0 (1 + a0 )2 + 32

non `e mai verificata.


ESERCIZIO N. 10
Per il teorema sulla stabilit`a dei metodi multistep si ha che il metodo, se consistente,
`e stabile se sono verificate le condizioni sulle radici. Dobbiamo quindi prima verificare
se il metodo `e consistente.
1. di (3.38) `e verificata a0 + a1 = a0 + (1 a0 ) = 1
2. di (3.38) `e verificata a1 + b0 + b1 = (1 a0 ) + 2 a20 a20 = 1
Il metodo `e consistente. Vediamo ora se sono verificate le (3.50) e (3.51).
(r) = r2 a0 r (1 a0 ) = 0
le soluzioni sono r0 = 1 e r1 = a0 1. affinche il metodo risulti stabile deve risultare
|a0 1| 1 e questo ci dice che 0 a0 2. Ma quando a0 = 2 la radice r1 = 1,
dunque doppia, pertanto la seconda condizione sulle radici non `e verificata. Quindi i
valori di a0 per cui il metodo multistep `e stabile sono 0 a0 < 2.
ESERCIZIO N. 11
Per la stabilit`a relativa deve risultare |r1 (h)| r0 (h)
h
3
(r) h(r) = r2 r(1 + h) +
2
2
quindi

1+
r0 (h) =

3
h
2

1 + h +
2

9 2 2
h
4

1+
; r1 (h) =

dove 1 + h + 94 h2 2 = (1 + 32 h)2 2h > 0 per < 0.


Per R con < 0 si deve avere che

149

3
h
2

q
1 + h + 94 h2 2
2

1 + 3 h

2

q
q
9 2 2
3
1 + h + 4 h 1 + 2 h + 1 + h + 94 h2 2


2
2

cio`e
1 + 32 h

q
1 + h + 94 h2 2
2

1+

3
h
2

q
1 + h + 94 h2 2

1 + 23 h +

2
dalla prima disuguaglianza si ottiene

q
1 + h + 94 h2 2

q
1 + h + 49 h2 2

3
h
2

9
1 + h + h2 2 0
4
che `e verificata per ogni h, mentre dalla seconda si ha
3
1 + h 0
2
pertanto i valori di h per i quali il metodo `e relativamente stabile sono h 2/(3)
ESERCIZIO N. 12
I coefficienti j definiti dalla (3.67) per j 1 sono dati da:
Z

1
j =
j!

j
Y

(t + k 2)dt

0 k=1

che possiamo anche scrivere


1
j =
j!

(t 1)
0

j
Y

(t + k 2)dt

k=2

se, nel binomio esterno alla produttoria, sommiamo e sottraiamo j

1
j =
j!

Z
0

j
Y

1
(t + j j 1) (t + k 2)dt =
j!
k=2
1

j!

Z
0

j
Y

1
j
(t + k 2)dt =
j!
k=2

(j 1)!

j2
1Y

(t + j 1)
0

j1
1Y

150

(t + k 2)dt+

k=2

(t + k)dt+

0 k=0

(t + k)dt = j j1

0 k=0

j
Y

dove la produttoria vale uno se lestremo superiore `e minore dellestremo inferiore.


ESERCIZIO N. 13
Per verificare la condizione forte sulle radici deve risultare
|rj (0)| = |rj | < 1 , j = 1, ..., q
Le radici rj sono tutte le soluzioni dellequazione
rq+1 1 = 0

rj =

q+1

1 = cos(

2j
2j
) + i sin(
) , j = 0, 1, ..., q
q+1
q+1

Pertanto |rj | = 1 , j = 1, 2, ..., q e quindi la condizione forte sulle radici non `e verificata.
Un metodo, con q=1, che certamente `e relativamente stabile `e il seguente
yn+1 = yn1 + 2hf (xn1 , yn1 )
Si ha infatti che
(r) h(r) = r2 (1 + 2h)

quindi r0 (h) = 1 + 2h ed r1 (h) = 1 + 2h, ma allora |r1 (h)| = r0 (h) ed `e


verificata la condizione di stabilit`a relativa (3.59).
ESERCIZIO N. 14
Si utilizza lo stesso procedimento visto per il metodo Runge-Kutta del secondo ordine
(3.70), solo che gli sviluppi contengono esplicitamente un termine in pi`
u.

1
1
1 2 2
Tn (Y ) = h(11 2 )[f ]n +h2 ( 2 )[fx ]n +h2 ( 2 )[f fy ]n +h3 (
)[fxx ]n +
2
2
6
2

1 2 2 2
1
1
1
+h3 (
)[f fyy ]n + h3 ( 2 )[f fxy ]n + h3 [fx fy ]n + h3 [f fy2 ]n + O(h4 )
6
2
3
6
6
Imponendo che il metodo risulti del secondo ordine, cio`e sceglendo le costanti in modo
che sia verificato il sistema

1 1 2 = 0

1
2 = 0
2

1 = 0
2

si ha che lerrore di troncamento locale `e dato da


151



1 1
1 1
1 1
1
1
2
Tn (Y ) = h (
)[fxx ]n +(
)[f fyy ]n +(
)[f fxy ]n + [fx fy ]n + [f fy2 ]n +O(h4 )
6 82
6 82
3 42
6
6
3

e se indichiamo con c1 (2 ) e c2 (f ) i vettori colonna




1 1
1 1
1 1 1
1

,
,
, ,
c1 (2 ) =
6 82 6 82 3 42 6 6


T

c2 (f ) = [fxx ]n , [f 2 fyy ]n , [f fxy ]n , [fx fy ]n , [f fy2 ]n

T

T 



Tn (Y ) = c1 (2 ) c2 (f ) + O(h4 ) = c1 (2 ), c2 (f ) + O(h4 )
utilizzando la disuguaglianza di Cauchy-Schwarz



Tn (y) c1 (2 ), c2 (f ) + O(h4 ) kc1 (2 )k2 kc2 (f )k2 + O(h4 )
pertanto si ha errore minimo di troncamento locale se kc1 (2 )k2 assume il minimo
valore. Essendo
r
1
1 2
1
1 2
1
1 2
1
kc1 (2 )k2 = (
) +(
) +(
) +
6 82
6 82
3 42
18
il minimo si ottiene per 2 = 3/4.
ESERCIZIO N. 15
Per far vedere che i due metodi hanno la stessa regione di assoluta stabilit`a `e sufficiente
mostrare che applicati al problema y 0 (x) = y(x) sono esattamente gli stessi. Se
utilizziamo il metodo di Euhn abbiamo
h
h2 2
yn+1 = yn + [yn + (yn + hyn )] = (1 + h +
)yn
2
2
Applicando il metodo Runge-Kutta del secondo ordine (3.70) si ha
h
2
h2 2
yn+1 = yn + [yn + 3(yn + h yn )] = (1 + h +
)yn
4
3
2

152

5.4

Esercizi capitolo 4

ESERCIZIO N. 1
Gli autovalori si ottengono risolvendo lequazione det(A I) = 0

1
1
0
0


0
1
1
0
det(A I) =
0
2
0
0

0
0
0
2






= (1 )2 (2 )2 = 0



Abbiamo quindi che gli autovalori sono 1 = 1 con molteplicit`a algebrica 2 e 2 = 2


con molteplicit`a algebrica 2. Per calcolare gli autovettori associati allautovalore = 1
dobbiamo trovare le soluzioni non nulle del sistema (A I)x = 0, ovvero

x2

x
3

x3

x
4

=0
=0
=0
=0

Il sistema ammette un unica soluzione linearmente indipendente ed `e x1 = [1, 0, 0, 0]T .


Per determinare gli autovettori associati allautovalore 2 = 2 dobbiamo trovare le
soluzioni non nulle del sistema (A 2I)x = 0, ovvero

x + x = 0
1
2
x + x = 0
2
3
dobbiamo avere cio`e x1 = x2 e x3 = x2 , le soluzioni linearmente indipendenti sono i due
vettori x1 = [1, 1, 1, 0]T ed x2 = [0, 0, 0, 1]T , tutte le altre soluzioni si possono esprimere
come combinazione lieare di x1 ed x2 . Pertanto 1 ha molteplicit`a geometrica uno
mentre 2 ha molteplicit`a geometrica due.
ESERCIZIO N. 2
1.

Il det(I A) `e dato da

1 0 ...
0
0


0 1 ...
0
0

.
..
.. . .
..
..
det(I A) = ..
.
.
.
.
.

0 0
0 ...

1


a0 a1 a2 ... an2 + an1
153

Sviluppando secondo la prima colonna si ha



1 0 ...
0
0


0 1 ...
0
0

..
..
.. . .
..
..
det(I A) = .
.
.
.
.
.

0 0
0 ...

1


a1 a2 a3 ... an2 + an1

1 0 0 ... 0
0


1 0 ... 0
0

.
.. .. . .
.
..
+(1)n+1 a0 ..
. ..
.
.
.

0
0 0 ... 1 0


0
0 0 ... 1

essendo la seconda matrice bidiagonale inferiore e di ordine n 1 si ha



1 0 ...
0
0


0 1 ...
0
0

..
..
.. . .
..
..
det(I A) = a0 + .
.
.
.
.
.

0 0
0 ...

1


a1 a2 a3 ... an2 + an1

Come si pu`o vedere il determinannte dellultima espressione `e simile a quello


iniziale ma di ordine n 1 si pu`o quindi risolvere allo stesso modo e si ottiene

1 0 ...
0
0


0 1 ...
0
0


.
..
.. . .
..
..
det(I A) = a0 + a1 + 2 ..
.
.
.
.
.

0 0
0 ...

1


a2 a3 a4 ... an2 + an1

continuando allo stesso modo si giunge a



1
2
n3
n2
det(I A) = a0 + a1 + a2 + ... + an3
+

an2 + an1

= a0 + a1 + a2 2 + ... + an3 n3 + n2 (2 + an1 + an2 ) = pn ()

154

2.

Gli autovalori della matrice A appartengono ai seguenti cerchi di Gerschgorin


|z| |a0 |

|z| 1 + |aj | , j = 1, ..., n 2

|z + an1 | 1

ESERCIZIO N. 3
I cerchi di Gerschgorin che contengono gli autovalori sono
|z 1| 1 ; |z 5| 2 ; |z 9| 3

ImHzL
6
4
2
0

ReHzL

-2
-4
-6
-2

10 12

Figura 5.1: Cerchi di Gerschgorin (raggi sulle righe)


Essendo la matrice a coefficienti reali lequazione caratteristica `e a coefficienti reali e
quindi se ammette una soluzione complessa deve avere anche la sua coniugata. Pertanto
il cerchio pi`
u piccolo, essendo isolato, come si nota in figura 5.1, deve necessariamente
contenere un autovalore reale, 1 [0, 2]. Gli altri due autovalori debbono essere
contenuti nel connesso formato dagli altri due cerchi.
Se si applica il punto 3 del teorema, prendendo i raggi sulle colonne, si trova che i
cerchi sono

155

|z 1| 3 ; |z 5| 2 ; |z 9| 1

ImHzL
6
4
2
0

ReHzL

-2
-4
-6
-2

10 12

Figura 5.2: Cerchi di Gerschgorin (raggi sulle colonne)


Con le stesse considerazioni precedenti troviamo che il cerchio pi`
u piccolo `e isolato,
come si vede in figura 5.2, pertanto deve contenere un autovalore reale, 3 [8, 10]. Ne
consegue che anche lautovalore 2 `e reale. Infatti se due autovalori sono reali il terzo
non pu`o essere complesso in quanto non pu`o avere il suo coniugato. In particolare dalla
figura 5.1 si vede che non pu`o essere pi`
u piccolo di 3, mentre dalla figura 5.2 si vede
che non pu`o essere pi`
u grande di 7, dunque 2 [3, 7].
ESERCIZIO N. 4
I cerchi di Gerschgorin della matrice A sono
Z1 = {z C : |z 1| 1}

Z2 = {z C : |z 5| 2}

Z3 = {z C : |z 8| 2}

Z4 = {z C : |z 11| 1}

156

pertanto il primo cerchio `e isolato e quindi contiene un autovalore reale 0 1 2.


Per gli altri cerchi si pu`o dire solo che contengono 3 autovalori in quanto formano un
connesso. I cerchi di Gerschgorin della matrice AT sono
Z1T = {z C : |z 1| 3}
Z2T = {z C : |z 5| 1}
Z3T = {z C : |z 8| 1}
Z4T = {z C : |z 11| 1}
I cerchi Z3T e Z4T sono isolati e quindi contengono ciascuno un autovalore reale, pertanto
7 3 9 e 10 4 12. Essendo tre autovalori reali anche il quarto deve essere
reale in quanto il polinomio caratteristico `e a coefficienti reali e se ammette una radice
complessa deve ammettere anche la sua coniugata, ma un polinomio di quarto grado
non pu`o avere cinque radici. Per la seconda parte del teorema inoltre i cerchi Z1T e Z2T
si toccano per  = 1 dunque lautovalore rimasto ha la seguente limitazione 4 3 6.
ESERCIZIO N. 5
Utilizzando i cerchi di Gerschgorin della matrice A poche sono le informazionini che
possiamo dare sugli autovalori di A. Se per`o utilizziamo la seguente trasformazione
simile D AD1 dove D `e la matrice diagonale D = diag[, 1, , 1] otteniamo la matrice

1

0
0

1/ 100 1/ 0

A() =
0


2


0
0 1/ 101
che ha gli stessi autovalori della matrice A. Ora prendendo in considerazione i cerchi
di Gerschgorin della matrice A()
Z1 = {z C : |z 1| }

Z2 = {z C : |z 2| 2}

Z3 = {z C : |z 100| 2/}

157

Z4 = {z C : |z 101| 1/}
si vede che i cerchi Z1 e Z2 sono disgiunti tra loro e dagli altri due cerchi se 1/48
 < 1/3, pertanto con tali limitazioni i cerchi Z1 e Z2 contengono un solo autovalore
che deve essere necessariamente reale. Analogamente i cerchi Z3 e Z4 sono disgiunti
tra loro e dagli altri due cerchi se 3 <  48 e pertanto anche Z3 e Z4 contengono
un autovalore reale. Possiamo quindi concludere che gli autovalori di A sono reali ed
hanno le seguenti limitazioni
1  1 1 +  ,

 = 1/48

2  2 2 +  ,

 = 1/48

100 2/ 3 100 + 2/ ,

 = 48

101 1/ 4 101 + 1/ ,

 = 48

In effetti gli autovalori di A sono: 1 = 1.01, 2 = 2.02041, 3 = 99.9796 e 4 = 100.99.


ESERCIZIO N. 6
1 2 2
La matrice generata dal vettore w = [ , , ]T `e la seguente
3 3 3

7 4 4
1

U = 4 1 8
9
4 8 1
ESERCIZIO N. 7
Abbiamo che
kU bk22 = (U b)T (U b) = bT U T U b = bT b = kbk22
essendo U T U = I in quanto U `e ortogonale.

158

ESERCIZIO N. 8
Il listato `e scritto con il software Mathematica

H* IL METODO DELLE POTENZE *L


n = 4; iter = 100; eps = 0.000001;
lambda = 0; nc = 0;
A = Table@0, 8i, 1, n<, 8j, 1, n<D;
Do@A@@i, jDD = 1 Hi + j - 1L,
8j, 1, n<, 8i, 1, n<D;
w = Table@Random@D, 8i, 1, n<D;
Do@w = A.w; lambda1 = Hw.A.wL Hw.wL;
If@Abs@lambda1 - lambdaD eps,
break@D, lambda = lambda1; nc = nc + 1D,
8i, 1, iter<D
Print@"Numero massimo di iterate= ",
ncD;
Print@"Massimo autovalore= ", lambdaD;
Numero massimo di iterate= 3
Massimo autovalore= 1.50021

ESERCIZIO N. 9
Vogliamo che
U [2, 2, 1]T = [, 0, 0]T

= 4 + 4 + 1 = 3
r

2
1
(1 )
2

Scegliendo il segno di negativo ed il segno di v1 positivo


v1 =

r
= 3 ; v1 =

5
; p=
6

2
1
v2 =
; v3 =
30
30
pertanto la matrice U `e

159

15
2


2
3 32 13

2
U = 23 11
15

15
2
14
31 15
15
mentre
U [2, 2, 1]T = [3, 0, 0]T
ESERCIZIO N. 10
Per rendere triangolare superiore la matrice A dobbiamo premoltiplicare la matrive A
per una matrice di Householder che consente di trasformare la seconda colonna della
matrice A nel vettore [2, , 0]T . Cio`e una matrice che conserva la prima componente e
rende nulla la terza componente. Pertanto il vettore w con cui costruire la matrice di
Householder deve essere del tipo w = [0, v1 , v2 ]T . La matrice di Householder quindi `e
..
1
.
0

U =

..
0
.
I2 2v vT

Si vuole che
(I2 2v vT )[3, 4]T = [, 0]T
e quindi
q

= 9 + 16 = 5 ; v1 = 12 (1 3 )
scegliendo il segno meno per ed il segno pi`
u per v1 otteniamo
v1 = 25 , v2 = 15
la matrice U da premoltiplicare ad A `e data da

U = 0
0

U A = 0
0

0
0

35 45
45 35

2
1

5 2
0 1

essendo U ortogonale sappiamo che U T = U 1 e quindi la fattorizzazione QR `e data


da

160

1 2
1
1 0
0

A = U T R = 0 53 45 0 5 2
0 54 35
0 0 1
ESERCIZIO N. 11
Se A e B sono due matrici ortogonali allora AT = A1 e B T = B 1 dobbiamo far
vedere che (AB)T = (AB)1 ovvero che (AB)(AB)T = I.
(AB)(AB)T = (AB)(B T AT ) = A(BB T )AT = AAT = I
ESERCIZIO N. 12
 
Il determinante della matrice A = ai,j i,j=1,...,n `e dato da
det(A) =

(1)s a1i1 a2i2 ... anin

dove indica tutte le possibili permutazioni i1 , i2 , ..., in di 1, 2, ..., n ed s vale 0 se la


permutazione `e pari ed 1 se la permutazione `e dispari. Poiche anche det(AT ) ha la stessa
forma con le stesse permutazioni i1 , i2 , ..., in di 1, 2, ..., n si ha che det(A) = det(AT ).
ESERCIZIO N. 13
I cerchi di Gerschgorin della matrice A sono
Z1 = {z : |z 3| 1} ;

Z2 = {z : |z 11| 2}

Z3 = {z : |z 10| 4} ;

Z4 = {z : |z 20| 3}

Il cerchio Z4 `e isolato quindi contiene un autovalore reale essendo la matrice A a


coefficienti reali. Pertanto la matrice A ha un autovalore reale 17 23. Per far
vedere che `e maggiore di 20 basta provare che lequazione caratteristica cambia segno
tra 20 e 23. Abbiamo infatti che det(A 20I) = 713 mentre det(A 23I) = 8125.

161

Appendice A
Polinomio interpolante di Hermite
Vogliamo qui prendere in esame un particolare tipo di interpolazione. Supponiamo di
conoscere la funzione f (x) in un numero n di punti nodali x1 , x2 , ..., xn e che in tali
punti `e nota anche la derivata prima della funzione. Si vuole vedere se esiste, in una
certa classe di polinomi, un polinomio pm (x) che nei punti nodali interpola la funzione
e la sua derivata prima. Cio`e
p0m (xj ) = f 0 (xj ) , j = 1, 2, ..., n
(A.1)
Pm
k
Dato pertanto un polinomio di grado m, pm (x) =
k=0 ak x se si impongono le
condizioni di interpolazione A.1 si ha
pm (xj ) = f (xj ) ,

m
X

ak xkj = f (xj ) , j = 1, 2..., n

k=0

m
X

kak xjk1 = f 0 (xj ) , j = 1, 2, ..., n

(A.2)

k=1

Come si vede la A.2 costituisce un sistema lineare di m+1 incognite ak , k = 0, 1, ..., m


in 2n equazioni. Questo ci porta a pensare che la classe di polinomi in cui ricercare
tale polinomio interpolatore sia quella dei polinomi al pi`
u di grado 2n 1. Esiste a
tale proposito un teorema, dovuto ad Hermite.
Teorema 14. Nella classe di polinomi al pi`
u di grado 2n 1 esiste ed `e unico il
polinomio che verifica le condizioni di interpolazione A.1. (Indicheremo tale polinomio
con H2n1 (x) ).
Dimostrazione.
Unicit`
a Supponiamo, per assurdo, che esistano due polinomi distinti, di grado 2n1,
H2n1 (x) e Q2n1 (x) che soddisfano le condizioni di interpolazione A.1. La differenza
tra i due polinomi R2n1 (x) = H2n1 (x) Q2n1 (x) `e ovviamente un polinomio il cui
grado massimo `e 2n 1 ed inoltre nei punti nodali si ha
162

R2n1 (xj ) = H2n1 (xj ) Q2n1 (xj ) = f (xj ) f (xj ) = 0 , j = 1, 2, ...n


0
0
R2n1
(xj ) = H2n1
(xj ) Q02n1 (xj ) = f 0 (xj ) f 0 (xj ) = 0 , j = 1, 2, ...n

Pertanto abbiamo che il polinomio R2n1 (x) nei punti nodali xj si annulla e negli stessi
punti si annulla anche la sua derivata prima. Questo significa che i punti xj , j =
1, 2, ..., n sono delle radici doppie del polinomio R2n1 (x). Ovvero si `e trovato che un
polinomio di grado al massimo 2n 1 ammette 2n zeri, ma ci`o non `e possibile per il
teorema fondamentale dellalgebra e quindi i due polinomi debbono necessariamente
coincidere.
Esistenza
La dimostrazione dellesistenza `e fatta costruendo direttamente tale
polinomio. Sia
H2n1 (x) =

n
X

hj (x)f (xj ) +

j=1

n
X

j (x)f 0 (xj )
h

(A.3)

j=1

j (x) sono dei polinomi di grado 2n 1. affinche il polinomio definito


dove hj (x) ed h
in A.3 verifichi le condizioni A.1 dobbiamo avere che
H2n1 (xi ) =

n
X

hj (xi )f (xj ) +

j=1

0
H2n1
(xi )

n
X

n
X

j (xi )f 0 (xj )
h

j=1

h0j (xi )f (xj )

j=1

n
X

0 (xi )f 0 (xj )
h
j

j=1

j (x) debbono verificare le seguenti condizioni


ovvero i polinomi hj (x) ed h

h (x ) = , h
j (xi ) = 0 , i, j = 1, 2..., n
j
i
ij
h0 (x ) = 0 , h
0 (xi ) = ij , i, j = 1, 2..., n
i
j
j

(A.4)

con ij simbolo di Kroneker. Se ora definiamo i polinomi lj (x), di grado n 1, nel


seguente modo
n
Y
x xi
lj (x) =
x xi
i=1 j

si vede che lj (xi ) = ij e pertanto possiamo scegliere


hj (x) = (a0 + a1 x)lj2 (x) ,

j (x) = (b0 + b1 x)l2 (x)


h
j

j (x) sono dei polinomi di grado 2n 1 ed inoltre verificano le


in tal modo hj (x) e h
condizioni A.4 per tutti gli i 6= j. Imponendo ora le condizioni per i = j si trova
163


h (x) = [1 2(x x )l0 (x )]l2 (x) , j = 1, 2, ..., n
j
j
j j
j
h
(x) = (x x )l2 (x) , j = 1, 2, ..., n
j

(A.5)

Vogliamo ora vedere quale `e lerrore che si commette in un generico punto x, diverso
dai punti di interpolazione, quando si approssima f (x) con il polinomio interpolante
di Hermite. A tale proposito diamo una formulazione del polinomio di Hermite sotto
forma di differenze divise.
Siano z1 , z2 , ..., z2n1 , z2n 2n punti in cui si conosce il valore della funzione f (x). Sappiamo allora costruire il polinomio interpolante di Lagrange ed il relativo errore sotto
forma di differenze divise.
L2n1 (x) = f [z1 ] + (x z1 )f [z1 , z2 ] + (x z1 )(x z2 )f [z1 , z2 , z3 ] + ....+
+(x z1 ) ... (z z2n1 )f [z1 , z1 , ..., z2n1 , z2n ]
2n
Y
R2n1 (x) = f [z1 , z2 , ..., z2n1 , z2n , x] (x zi )
i=1

Se ora facciamo coincidere i punti nodali a due a due z1 = z2 = x1 , z3 = z4 =


x2 , ..., z2n1 = z2n = xn si vede che il polinomio che si ottiene verifica le condizioni
di interpolazione di Hermite. Pertanto si `e ottenuta la formulazione del polinomio di
Hermite sotto forma di differenze divise ed il suo errore, data lunicit`a di tale polinomio.
n
Y
R2n1 (x) = f (x) L2n1 (x) = f [x1 , x1 , ..., xn , xn , x] (x xi )2
i=1

0
R2n1
(x)

= f (x)

L02n1 (x)

n
Y
= f [x1 , x1 , ..., xn , xn , x, x] (x xi )2 +
i=1

+2f [x1 , x1 , ..., xn , xn , x]

n 
X

(x xk )

k=1
0
e pertanto R2n1 (xj ) = R2n1
(xj ) = 0 , j = 1, 2, ..., n

164

n
Y
i=1
i6=k

(x xi )2

Appendice B
Equazioni alle differenze finite
In tale appendice riportiamo il metodo di soluzione delle equazioni alle differenze finite
lineari, omogenee ed a coefficienti costanti. Richiamiamo prima le definizioni di differenze finite in avanti, allindietro e centrali. Sia y(x) una funzione reale di variabile
reale nota in un insieme di punti discreto distribuiti uniformemete. Indichiamo tali
punti con (xn , y(xn )) , xn = x0 + h n , n = 0, 1, ..., N . Usiamo anche la notazione
yn = y(xn ).
Definizione 29 (Differenza finita in avanti). Si definisce differenza finita in avanti, e
la indichiamo con 4h (o semplicemente 4) la
4yn = yn+1 yn

(B.1)

Definizione 30 (Differenza finita allindietro). Si definisce differenza finita in allindietro, e la indichiamo con 5h (o semplicemente 5) la
5yn = yn yn1

(B.2)

Definizione 31 (Differenza finita centrale). Si definisce differenza finita centrale (per


i valori noti di y(x) la identificheremo di passo 2h), e la indichiamo con 2h (o semplicemente ) la
yn = yn+1 yn1

(B.3)

` facile verificare che tali operatori alle differenze finite sono degli operatori lineari ed
E
inoltre possamo definire anche le differenze di ordine superiore. Diamo qui la definizione
per le differenze in avanti, la stessa definizione vale anche per le altre differenze finite.
Definizione 32 (Differenza finita in avanti di ordine k). La differenza finita in avanti
di ordine zero `e data 40 yn = yn . La differenza finita in avanti di ordine k `e data da


4k yn = 4k1 4 yn = 4 4k1 yn
165

Se prendiamo quindi una differenza finita in avanti del secondo ordine si ha:

42 yn = 4 4 yn = 4(yn+1 yn ) = yn+2 2yn+1 + yn
Lequazione, combinazione lineare di p + 1 valori della funzione, data da:
p
X

aj ynj = 0 , aj R

(B.4)

j=0

`e detta equazione alle differenze finite, omogenea, a coefficienti costanti (in tal caso
` facile infatti vedere come tale combinazione pu`o essere espressa
reali) di ordine p. E
tramite differenze finite. Vediamo un esempio banale
0 = yn yn1 = 4yn1 = 5yn
La soluzione della B.4 si ottiene con un procedimento analogo a quello relativo alle
equazioni differenziali omogenee a coefficienti costanti. Tale soluzione `e data dalla
combinazione lineare di tutte le soluzioni, linearmente indipendenti, proposte come
potenze del tipo yn = rn con r C.
Pertanto nel caso dellequazione B.4 si ha
p
X

aj r

nj

=r

np

X
p

j=0

Il polinomio in r dato da
zione

Pp

j=0

aj r

pj


=0

j=0

aj rpj `e detto polinomio caratteristico mentre lequa-

p
X

aj rpj = 0

(B.5)

j=0

`e detta equazione caratteristica della B.4.


Se le soluzioni rj , j = 0, 1, ..., p 1 dellequazione caratteristica sono tutte semplici
allora la soluzione yn dellequazione alle differenze `e data da
yn =

p1
X

j rjn

j=0

Se una radice rs dellequazione caratteristica ha molteplicit`a allora le soluzioni linearmente indipendenti associate a tale radice sono e date da yn1 = rsn , yn2 =
n rsn , ..., yn = n1 rsn . In tal caso il pezzo di soluzione, che dipende dalla radice rs ,
1
X
relativo alla soluzione generale dellequazione alle differenze `e dato da
j nj rsj
j=0

166

Vediamo quanto detto con un esempio. Si vuole risolvere la seguente equazione alle
differenze:
yn 5yn1 + 8yn2 4yn3 = 0
Scegliendo yn = rn si ha da risolvere la seguente equazione caratteristica
r3 5r2 + 8r 4 = (r 2)2 (r 1) = 0
le radici pertanto sono r0 = 1 ed r1 = 2 con molteplicit`a due. Possiamo verificare
facilmente che yn0 = 1 , yn1 = 2n , yn2 = n 2n sono soluzioni dellequazione alle
differenze e quindi la soluzione generale `e data da
yn = 0 + 1 2n + 2 n 2n
Le costanti 0 , 1 , 2 possono essere determinate se si conoscono tre valori della
soluzione, ad esempio y0 , y1 , y2 .

167

Appendice C
Polinomio interpolante sotto forma
di differenze finite allindietro
Supponiamo di avere p + 1 punti xn , xn1 , ..., xnp , ugualmente distanziati xnj =
xn jh, dove sono noti i valori della funzione f (x). Vogliamo costruire il polinomio
interpolante sotto forma di differenze finite allindietro. La costruzione `e abbastanza
semplice in quanto si pu`o partire dal polinomio interpolante sotto forma di differenze
divise e poi sostituire le differenze divise con le differenze finite allindietro. A tale
proposito vediamo un lemma che mette in relazione le differenze divise con le differenze
finite allindietro quando i punti nodali sono uniformemente distribuiti.
Lemma 2. Dati i punti xnj = xn jh , j = 0, 1, ..., p, esiste la seguente relazione
tra differenze divise e differenze finite allindietro
f [xn , xn1 , ..., xnp ] =

5p f (xn )
hp p!

(C.1)

Dimostrazione. La dimostrazione `e fatta utilizzando il principio di induzione. Abbiamo


infatti che
f [xn ] = 50 f (xn ) , f [xn , xn1 ] = f [xn1 , xn ] =

f (xn ) f (xn1
5f (xn )
=
xn xn1
h

se tale relazione vale fino alle differenze di ordine p1 allora vale anche per le differenze
di ordine p.
f [xn , xn1 , ..., xnp ] =

f [xn1 , xn2 , ..., xnp ] f [xn , xn1 , ..., xnp+1 ]


xnp xn

poiche si `e ipotizzato che la relazione (C.1) `e valida per differenze fino allordine p 1
abbiamo

168

5p1 f (xn1 )
5p1 f (xn )
p1
hp1 (p 1)!
h (p 1)!
=
f [xn , xn1 , ..., xnp ] =
hp
=

5p1 [f (xn ) f (xn1 )]


5p f (xn )
=
hp p!
hp p!

Per scrivere il polinomio interpolante e lerrore sotto forma di differenze finite allindietro scriviamo il polinomio e lerrore sotto forma di differenze divise e poi utilizziamo il
risultato del lemma.

Pp (x) = f [xn ] + (x xn )f [xn , xn1 ] + ... + (x xn ) ... (x xnp+1 )f [xn , xn1 , ..., xnp ]

Rp (x) = (x xn ) ... (x xnp )f [xn , xn1 , ..., xnp , x]

(C.2)

usando la relazione (C.1) ed indicando f (xn ) = fn


Pp (x) = 50 fn + (x xn )

5p f n
5fn
+ ... + (x xn ) ... (x xnp+1 ) p
h
h p!

169

(C.3)

Indice analitico
Algoritmi predictor-corrector, 74

Equazione caratteristica di una matrice, 105

Assoluta stabilit`
a, 63

Equazioni alle differenze finite, 165

Assoluta stabilit`
a - Adams-Bashforth, 94

Errore con kernel di Peano, 4

Assoluta stabilit`
a - Adams-Moulton, 95

Errore di troncamento globale, 66

Assoluta stabilit`
a - Eulero esplicito, 70

Errore di troncamento globale - Eulero


esplicito, 67

Assoluta stabilit`
a - Runge-Kutta, 100

Errore di troncamento locale Eulero esplicito,


66

Assoluta stabilit`
a Eulero implicito, 72
Assoluta stabilit`
a di un metodo multistep, 90
Autovalori di una matrice, 105

Errore di troncamento locale di un metodo


multistep, 76

Binomio di Newton, 9

Errore formula dei trapezi, 35

Cambio della variabile di integrazione, 49

Errore formula dei trapezi generalizzata, 36

Cerchi di Gerschgorin, 107

Errore formula di Simpson, 37

Coefficienti di Fourier, 26

Errore formula di Simpson generalizzata, 40

Condizione di Lipschitz, 58

Errore mini-max, 11

Condizione forte sulle radici, 89

Errore nellinterpolazione di Hermite, 164

Condizione sulle radici, 83

Errore nellinterpolazione di Lagrange, 33

Condizioni sullordine di convergenza di un


metodo multistep, 76

Errore sotto forma di Lagrange, 4

Consistenza di un metodo multistep, 76

Forma generale metodi multistep, 76

Convergenza - Eulero esplicito, 69

Formula dei trapezi generalizzata, 36

Debole stabilit`
a di un metodo multistep, 90

Formula dei trapezi modificata, 37

Definizione di Stima asintotica dellerrore, 33

Formula di Newton-Cotes aperta n=2, 54

Definizione di convergenza di un metodo


multistep, 82

Formula di quadratura dei rettangoli centrale,


53

Definizione di grado di precisione di una


formula di quadratura, 33

Formula di quadratura dei rettangoli sinistra,


53

Definizione di stabilit`
a di un metodo
multistep, 82

Formula di quadratura dei trapezi, 35

Definizione di stabilit`
a relativa di un metodo
multistep, 89

Formula di quadratura di Gauss-Chebyscev,


56

Definizione errore formule Newton-Cotes, 33

Formula di quadratura di Simpson, 37

Definizione formule di Newton-Cotes, 33

Formula di quadratura di Simpson


Generalizzata, 40

Assoluta stabilit`
a metodo trapezoidale, 73

Fattorizzazione QR, 116

Formula di quadratura di Gauss, 42

Differenza finita allindietro, 165


Differenza finita centrale, 165
Differenza finita in avanti, 165

Formulazione integrale problema di Cauchy,


59

Disuguagliannza di Bessel, 26

Formule di quadratura adattative, 45

170

Funzione peso, 15
Funzioni ortogonali, 16
Identit`
a di Christoffel-Darboux, 30
Integrali singolari, 48
Matrice di Hilbert, 14
Matrici di Householder, 113
Matrici hermitiane, 113
Matrici ortogonali, 113
Matrici unitarie, 113
Metodi A-stabili, 63
Metodi Runge-Kutta-Fehlberg, 100
Metodi di Adams-Bashforth, 91
Metodi di Adams-Moulton, 94
Metodo QR, 117
Metodo RKF45, 101
Metodo Runge-Kutta del 20 ordine, 99
Metodo Runge-Kutta del 4o ordine, 99
Metodo del punto di mezzo, 79
Metodo delle Potenze, 111
Metodo di Euhn, 98
Metodo di Eulero esplicito, 65
Metodo di Eulero implicito, 71
Metodo di Taylor, 97
Metodo trapezoidale, 73
Molteplicit`
a algebrica di un autovalore, 106
Molteplicit`
a geometrica di un autovalore, 106
2
Norma L , 13
Norma in L2w , 16
Norma infinita di funzioni, 10
Norma uniforme di funzioni, 10
Ordine di convergenza di un metodo
multistep, 76
Polinomi di Bernstein, 6
Polinomi di Chebyshev di prima specie, 17
Polinomi di Hermite, 19

Polinomi di Laguerre, 18
Polinomi di Legendre, 17
Polinomi ortogonali, 16
Polinomi ortonormali, 16
Polinomio di migliore approssimazione L2 , 13
Polinomio di migliore approssimazione quasi
uniforme, 28
Polinomio di migliore approssimazione
uniforme, 11
Polinomio interpolante di Hermite, 43, 162
Polinomio interpolante di Lagrange, 33
Polinomio interpolante sotto forma di
differenze finite allindietro, 168
Problema di Cauchy, 58, 59
Prodotto di integrazione, 51
Prodotto di integrazione rettangolare, 142
Prodotto di integrazione trapezoidale, 51
Prodotto scalare di funzioni, 15
Regione di assoluta stabilit`a, 63
Relazione di triplice ricorsione, 24
Stima asintotica errore formula dei trapezi, 36
Stima asintotica errore formula di Simpson, 40
Teorema delle oscillazioni forzate, 28
Teorema di Gauss, 42
Teorema di Gerschgorin, 107
Teorema di Gram-Schmidt, 20
Teorema di Taylor, 3
Teorema di Weierstrass, 6
Teorema di convergenza del metodo QR, 118
Teorema di convergenza per metodi multistep,
87
Teorema di stabilit`a per metodi multistep, 84
Traccia di una matrice, 105
Trattamento analitico delle singolarit`a, 50
Zeri di polinomi ortogonali, 22

171