Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Questa dispensa `e concepita per raccogliere in modo molto conciso solo gli
argomenti oggetto del corso, che pur essendo sicuramente trattati in ogni libro
istituzionale di Analisi Numerica, Calcolo Numerico, Introduzione al Calcolo
Scientico..., potrebbero esserlo con enfasi diversa da quella che viene loro assegnata allinterno di questa dispensa.
Un punto che deve essere chiaro a chi utilizza questa dispensa `e che essa
non `e assolutamente sostitutiva di un buon libro di testo. Si tratta infatti di
materiale privo di molti approfondimenti, presentato in modo molto sintetico,
spesso in forma schematica, e suciente a preparare lesame a patto di integrarlo
con la frequenza alle lezioni. Inoltre, ovviamente, molti contenuti dellAnalisi
Numerica non sono neppure trattati.
Utilizzare questo materiale didattico signica dunque assumersi la responsabilit`
a di integrarlo con gli appunti delle lezioni, con colloqui con il docente per
chiarimenti ed approfondimenti, ed eventualmente anche con altro materiale
reperibile su links segnalati e con testi adeguati, scelti per esempio fra quelli
indicati nella bibliograa del corso.
Introduzione al corso
Scopo del calcolo numerico.
La matematica numerica `e quel ramo della matematica che propone, sviluppa,
analizza ed applica metodi per il calcolo scientico nel contesto di vari campi,
quali lanalisi, lalgebra lineare, la geometria, la teoria dellapprossimazione, la
teoria delle equazioni funzionali, lottimizzazione, le equazioni dierenziali. Anche altre discipline, come la sica, le scienze naturali e biologiche, lingegneria,
leconomia e la nanza, frequentemente originano problemi che richiedono di
essere risolti ricorrendo al calcolo scientico.
La matematica numerica `e pertanto situata alla conuenza di diverse discipline di grande rilievo nelle moderne scienze applicate, e ne diventa strumento
essenziale di indagine qualitativa e quantitativa. Tale ruolo decisivo `e pure accentuato dallo sviluppo impetuoso ed inarrestabile di computer ed algoritmi,
che rendono oggi possibile arontare con il calcolo scientico problemi di dimensioni tanto elevate da consentire la simulazione di fenomeni reali, fornendo
risposte apprezzabili per accuratezza e tempo di calcolo. La corrispondente
proliferazione di software numerico, se per un verso rappresenta una ricchezza,
per laltro pone spesso lutilizzatore nella condizione di doversi orientare correttamente nella scelta del metodo (o dellalgoritmo) pi`
u ecace per arontare il
` infatti evidente che non esistono metodi o algoritmi
problema di suo interesse. E
ecaci ed accurati per ogni tipo di problema.
[A. Quarteroni, R. Sacco e F. Saleri, Matematica Numerica, Springer-Verlag
Italia, Milano 2000 - Prefazione]
Problema ben posto, numero di condizionamento di un problema,
problema numerico.
Problema sico
oppure,
Ph (dh , uh ) = 0, h > 0,
dipendenti da un certo parametro n (risp. h), con la speranza che un u per
n , (risp. uh u per h 0), ovvero la soluzione del problema numerico
sia convergente alla soluzione del problema matematico.
Si dice che il problema matematico P (d, u) = 0 `e ben posto se, per un certo
dato d, la corrispondente soluzione u esiste ed `e unica e dipende con continuit`a
dai dati. Useremo il termine ben posto e stabile in maniera intercambiabile e ci
occuperemo in questo corso solo di problemi ben posti.
La dipendenza continua dai dati signica che piccole perturbazioni (variazioni) sui dati d producono piccole perturbazioni nella soluzione u. Per quanticare la misura della dipendenza continua dai dati, introduciamo il concetto
di numero di condizionamento di un problema. Per semplicit`a ci riferiamo al
caso pi`
u semplice di problema matematico, che `e il calcolo di una funzione
f : [a, b] R in un punto x0 ssato. Dunque:
d := x0 , u := f (x0 ), d, u R.
Consideriamo lo sviluppo di Taylor, arrestato al primo ordine, della funzione
f in x con centro in x0 , ovviamente nelle opportune ipotesi di regolarit`a della
funzione assegnata:
f (x) = f (x0 ) + (x x0 )f (x0 ) + ...
f (x) f (x ) x0 f (x0 ) x x
0
0
x
0
f (x0 )
f (x0 )
Si osservi che le quantit`
a
f (x0 ) :=
f (x) f (x0 )
,
f (x0 )
x0 :=
x x0
x0
p 1,
p2 1.
x+ = p + p2 1, x = p p2 1
denito da
dx+
p
dp
K+ (p) =
,
x+
con
Si ottiene:
dx
p
dp
K (p) =
x
dx
p
.
=1
2
dp
p 1
dx+
p
,
=1+
2
dp
p 1
p2 1 + p
1
p
K+ (p) = p
;
=
2
2
2
p 1 p+ p 1
p 1
p2 1 p
1
p
K (p) = p
.
=
p2 1 p p2 1
p2 1
p1+
lim K(p) = 1,
p+
K (p) =
1
p2 1
< 0, p > 1.
lerrore globale pu`o essere visto come somma dellerrore del modello matematico
(prodotto nel passaggio dal problema sico al problema matematico) e dellerrore
del modello numerico-computazionale (prodotto nel passaggio dal problema matematico al problema numerico).
In generale possiamo pensare di classicare gli errori in quattro insiemi:
1) Errori sui dati, riducibili aumentando laccuratezza nelle misurazioni dei
dati.
2) Errori dovuti al modello, controllabili nella fase propria della modellistica
matematica, nel passaggio dal problema sico al problema matematico.
3) Errori di troncamento, dovuti al fatto che nel modello numerico le operazioni di passaggio al limite vengono approssimate con operazioni che
necessariamente richiedono un numero finito di operazioni (passaggio dal
continuo al discreto).
4) Errori di arrotondamento, dovuti alla rappresentazione nita dei numeri
reali sul calcolatore.
Lanalisi numerica si occupa dello studio e del controllo degli errori 3 e 4.
a2
a1
at
+ 2 + ... + t (mantissa).
L < 0, U > 0.
|oat(x)| [ 1 L , (1 t ) U ].
MATLAB: = 2; t = 53; L = 1021; U = 1024.
Osservazione.
Il risultato di unoperazione fra numeri macchina non `e necessariamente un
numero macchina.
a +1
| t{z }
) e }, se /2 at+1 1.
cifra tesima
Propriet`
a
Sia x un numero reale rappresentato in base :
x = {(.a1 a2 ...at at+1 at+2 ..) e } R,
a1 = 0,
e [L, U ].
0
4
+ 08 )
1
2
1
4
0
16
4
16
(.101)2 21 = ( 21 +
0
4
+ 18 )
1
2
1
4
1
16
5
16
(.110)2 21 = ( 21 +
1
4
+ 08 )
1
2
1
4
2
16
6
16
(.111)2 21 = ( 21 +
1
4
+ 18 )
1
2
1
4
3
16
7
16
e=0
(.100)2 20 = ( 21 +
0
4
+ 08 ) 1 =
1
2
0
8
4
8
(.101)2 20 = ( 21 +
0
4
+ 18 ) 1 =
1
2
1
8
5
8
(.110)2 20 = ( 21 +
1
4
+ 08 ) 1 =
1
2
2
8
6
8
(.111)2 20 = ( 21 +
1
4
+ 18 ) 1 =
1
2
3
8
7
8
(.100)2 21 = ( 21 +
0
4
+ 08 ) 2 = 1 +
0
4
4
4
(.101)2 21 = ( 21 +
0
4
+ 18 ) 2 = 1 +
1
4
5
4
(.110)2 21 = ( 21 +
1
4
+ 08 ) 2 = 1 +
2
4
6
4
(.111)2 21 = ( 21 +
1
4
+ 18 ) 2 = 1 +
3
4
7
4
(.100)2 22 = ( 21 +
0
4
+ 08 ) 4 = 2 +
0
2
4
2
(.101)2 22 = ( 21 +
0
4
+ 18 ) 4 = 2 +
1
2
5
2
(.110)2 22 = ( 21 +
1
4
+ 08 ) 4 = 2 +
2
2
6
2
(.111)2 22 = ( 21 +
1
4
+ 18 ) 4 = 2 +
3
2
7
2
e=1
e=2
Float(2,3,1,2)
1
0.8
0.6
0.4
0.2
0.2
0.4
0.6
0.8
0.5
1.5
2.5
3.5
n (xi ) = yi ,
10
di monomi 1, x, x2 , ..., xn :
n (x) =
cj xj ;
j=0
n (xi ) =
cj xji = yi ,
i = 0, ..., n;
j=0
V c = y,
con
Vij = xji ,
det(V ) =
(xj xi ).
0i<jn
Si osservi che se gli xi sono tutti distinti, allora det(V ) = 0, cio`e la matrice V
`e non singolare.
2) Costruzione del polinomio di interpolazione mediante il metodo di
interpolazione di Lagrange.
Si costruisce una nuova base per Pn , costituita dai polinomi di base di Lagrange
Li (x), i = 0, ..., n, che soddisfano le seguenti tre propriet`a:
() Li (x) Pn ;
() Li (xj ) = 0, i = 0, ..., n, i = j;
( ) Li (xi ) = 1, i = 0, ..., n;
[()+( ) Li (xj ) = ij , dove ij `e il simbolo di Kronecker]
x xj
Li (x) =
x
xj
j=0 i
j=i
yi Li (x)
i=0
Infatti, k = 0, ..., n:
n (xk ) =
i=0
11
i = 0, ..., n.
k 0 t.c. i + k n.
Teorema.
Posto
ak := f [x0 , ..., xk ],
k = 0, ..., n,
si ha
n (x) = a0 + a1 (x x0 ) + ... + an (x x0 )...(x xn1 )
[Numero operazioni
n(n+1)
]
2
Propriet`
a.
Data una nuova coppia di valori (xn+1 , yn+1 ), allora vale la relazione ricorsiva:
n+1 (x) = n (x) + an+1 (x x0 )...(x xn ),
dove n+1 (x) `e il polinomio di grado n + 1 che interpola i dati (xi , yi ),
i = 0, ..., n + 1.
Osservazione.
Per passare da n a n+1 , si richiede dunque solo il calcolo degli n + 1 nuovi
valori delle dierenze divise
f [xn , xn+1 ], f [xn1 , xn , xn+1 ], ..., f [x0 , x1 , ..., xn+1 ],
| {z }
|
{z
}
|
{z
}
2 nodi
3 nodi
(n+1) nodi
per ogni permutazione (i0 , i1 , .., ik ) dei (k + 1) indici (0, 1, ..., k).
Algoritmo di Horner.
Valutazione eciente del polinomio n (x) nel punto x (es.: n = 4).
4 (x) = a0 + a1 (x x0 ) + a2 (x x0 )(x x1 ) + a3 (x x0 )(x x1 )(x x2 ) +
a4 (x x0 )(x x1 )(x x2 )(x x3 )
(x) (n+1)
f
(),
(n + 1)!
con Ix e
(x) = (x x0 )(x x1 )...(x xn ) =
(x xi ).
i=0
Dimostrazione.
Sia x un generico punto distinto dai nodi di interpolazione. Deniamo
Rn (x) = f (x) n (x),
da cui
Rn (xi ) = f (xi ) n (xi ) = 0,
0 i n,
Rn (x)
Rn (x)
(z) = Rn (z)
(z),
(x)
(x)
13
Rn (x) (n+1)
(z).
(x)
In particolare si ha:
(n+1)
n
(z) = 0, essendo n un polinomio di grado n;
(n+1) (z) = (n + 1)!
Dunque, essendo G(n+1) () = 0 (per la scelta di ), si ha
f (n+1) ()
da cui la tesi
Rn (x) =
Rn (x)
(n + 1)! = 0,
(x)
f (n+1) ()
(x).
(n + 1)!
Corollario.
Nelle ipotesi del teorema precedente si ha
|Rn (x)|
Purtroppo in generale non si pu`o dedurre dal teorema e dal corollario che lerrore
tende a 0 per n . Infatti esistono funzioni f per le quali lerrore pu`o essere
innito, ossia
lim max |Rn (x)| = .
n xIx
(si veda [A. Quarteroni, F. Saleri, Introduzione al Calcolo Scientifico, 2a edizione, Springer-Verlag Italia, Milano, 2004 - Cap. 3, Esempio 3.2]).
14
Polinomi di Chebyshev
Il fenomeno di Runge richiamato nelle considerazioni conclusive della sezione
riguardante linterpolazione pu`o essere evitato utilizzando opportune distribuzioni di nodi. In particolare in questa sezione introduciamo i nodi di Chebyshev
che sono gli zeri dei polinomi di Chebyshev.
Denizione.
Sia (x) una funzione peso sullintervallo (a, b) tale che:
(x) 0,
(x)dx < +.
a
m (x)n (x)(x)dx = 0,
m = n.
Teorema.
Se {k , k = 0, 1, ...} `e una famiglia di polinomi ortogonali su (a, b) rispetto
al peso (x), allora il polinomio k ha k radici reali e distinte appartenenti
allintervallo aperto (a, b).
Polinomi di Legendre.
(x) = 1,
Formula ricorsiva:
P0 = 1, P1 (x) = x, (n + 1)Pn+1 (x) = (2n + 1)xPn (x) nPn1 (x), n 1.
Polinomi di Chebyshev.
15
nj = (2j 1) , j = 1, ..., n
2
(nj , j = 1, ..., n, sono i primi n archi che sono multipli dispari di /2):
(
)
2j 1
xj = cos j = cos
, j = 1, ..., n.
2n
Zeri del polinomio Tn (x) sullintervallo (a, b):
tj =
ba
b+a
xj +
, j = 1, ..., n
2
2
La formula si ottiene utilizzando lequazione della retta che passa per i punti di
coordinate (1, a), (1, b), e che trasforma quindi lintervallo [1, 1] nellintervallo
[a, b].
Teorema di Bernstein.
Se f C 1 [a, b], il polinomio n di grado n interpolante f negli n + 1 zeri del
polinomio di Chebyshev di grado n + 1 converge uniformemente a f su [a, b],
per n , cio`e:
lim max |f (x) n (x)| = 0.
n axb
16
1
1
1
1
1
1
dx = 0,
1 x2
se k = n
1
dx = ,
1 x2
se n = 0
1
dx = ,
2
2
1x
se n > 0
Tk (x)Tn (x)
Tn (x)Tn (x)
Tn (x)Tn (x)
k
k
, xk = cos
, k = 1, ..., n 1.
n
n
17
Splines interpolanti
Si `e osservato che per distribuzioni equispaziate di nodi di interpolazione,
non `e garantita la convergenza uniforme di n , polinomio di interpolazione,
alla funzione f . Tuttavia linterpolazione di Lagrange risulta ragionevolmente
accurata per gradi bassi, a patto di interpolare su intervalli sucientemente
` pertanto naturale suddividere lintervallo di interpolazione in un
piccoli. E
certo numero di sottointervalli e applicare su ogni sottointervallo linterpolazione
semplice di Lagrange con grado basso, ottenendo una funzione interpolatrice
che `e globalmente continua e localmente un polinomio algebrico. Allinterno
di ciascun sottointervallo si potr`a utilizzare la stima dellerrore dimostrata per
linterpolazione semplice.
Si possono denire poi interpolazioni composite che globalmente siano pi`
u
che continue. Infatti in molte applicazioni, come ad esempio in computer graphics, `e necessario utilizzare funzioni approssimanti che siano almeno derivabili
con continuit`
a. A questo scopo si introducono le funzioni splines.
Denizione.
Dato un insieme di punti (xi , yi ), i = 0, ..., n, con a = x0 < x1 , ... < xn = b, una
spline di grado p interpolante `e una funzione: x S p (x) tale che:
1) su ogni [xi1 , xi ] S p `e un polinomio di grado p, i = 1, ..., n;
2) S p e le sue prime (p 1) derivate sono continue, cio`e S p C p1 [a, b];
3) S p (xi ) = yi , i = 0, ..., n.
Dalla denizione discende che un qualunque polinomio di grado p su [a, b] `e una
spline. Tuttavia nella pratica una spline sar`a rappresentata da un polinomio
diverso su ciascun intervallo e, per questo motivo, potrebbe presentare una
discontinuit`
a della derivata pesima nei nodi interni x1 ,...,xn1 . I nodi per i
quali ci`o avviene eettivamente sono detti nodi attivi.
Gradi di libert`
a (d.o.f.: degrees of freedom)
Numero di incognite: Nx = n (p + 1), essendo n il numero di sottointervalli e
p + 1 il numero di coecienti necessari per rappresentare un polinomio di grado
p su ciascun intervallo.
Numero di condizioni: Nc = p(n1)+(n+1), essendo p il numero di condizioni
di continuit`
a che si devono imporre in ciascuno dei nodi interni xi , i = 1, ..., n1
e n + 1 il numero di condizioni di interpolazione.
d.o.f.: Nx Nc = n (p + 1) p (n 1) (n + 1) = p 1.
Nel caso di p > 1 si dovranno dunque introdurre condizioni aggiuntive per
eliminare i gradi di libert`a.
18
Splines lineari
p = 1 (d.o.f.=0).
Stima dellerrore. Teorema.
f C 2 ([a, b])
|f (x) S 1 (x)|
1 2
h M,
8
dove:
h=
max hi =
0in1
max (xi+1 xi ),
0in1
M = max |f (t)|.
atb
Dimostrazione.
Sia x [a, b], con x = xi , i = 0, ..., n. Sia [xi1 , xi ] lintervallo a cui appartiene
x. Poich`e su [xi1 , xi ] la funzione spline lineare S 1 (x) `e un polinomio di grado
1 si pu`o sfruttare la stima dellerrore di interpolazione:
f (x) S 1 (x) =
t [xi1 , xi ].
1
max |(x xi1 )(x xi )| max |f (2) (t)|
xi1 txi
2 xi1 xxi
hi := xi xi1 ,
h :=
i = 1, ..., n,
max1in hi ,
e osservando che
)(
)
(x + x
xi + xi1
hi hi
i
i1
max |(xxi1 )(xxi )| =
xi1
xi =
xi1 xxi
2
2
2 2
si ha
|f (x) S 1 (x)|
1 2
h max |f (2) (t)|.
8 x0 txn
Osservazione.
Le splines lineari sono ampiamente utilizzate nellapprossimazione della soluzione
di problemi ai limiti. In tale contesto le splines S 1 sono pi`
u comunemente indicate come elementi niti del primo ordine.
19
Splines cubiche
p = 3 : (d.o.f. : p 1 = 2).
Condizioni aggiuntive:
Nellultimo caso signica che x1 e xn1 non sono nodi attivi (not-a-knot), poich`e
lespressione della spline nel primo intervallo coincide con lespressione nel secondo intervallo, e analogamente per il penultimo e ultimo intervallo.
Stima dellerrore.
Sia f C 4 ([a, b]) e, per semplicit`a, sia h = hi , i = 1, ..., n. Allora esistono delle
costanti Ck indipendenti da h tali che:
max |f (k) (x) (S 3 )(k) (x)| Ck h(4k) max |f (4) (t)|,
axb
atb
k = 0, 1, 2,
20
a
j xj ,
j=0
i=0
[yi
i=0
aj xji ]2 ,
j=0
aj xj ,
j=0
di grado m.
Diremo che pm approssima linsieme di dati nel senso dei minimi quadrati.
Si pu`o dimostrare che il punto di minimo per la funzione E(a0 , a1 , ..., am ) si
ottiene imponendo le seguenti condizioni:
E(a0 , a1 , ..., am )
= 0,
a0
aj = costante j = 0
E(a0 , a1 , ..., am )
= 0, aj = costante j = 1
a1
...
E(a0 , a1 , ..., am )
= 0, aj = costante j = m
am
(= simbolo di derivata parziale).
Si osservi che se i nodi xi sono tutti distinti, per m = n si ha un classico
problema di interpolazione, con E(
a0 , a
1 , ..., a
m ) = 0.
Casi particolari
m = 0 p0 (x) = a0 ,
E(a0 ) =
(yi a0 )2 .
i=0
21
dE(a0 )
E(a0 )
1
=
=
2(yi a0 )(1) = 0 a
0 =
yi
da0
a0
n + 1 i=0
i=0
n
[(yi a0 a1 xi )]2 .
i=0
n
n
n
E(a0 , a1 )
=
2[(yi a0 a1 xi )](1) = 0 a0 (n + 1) + a1
xi =
yi
a0
i=0
i=0
i=0
n
n
n
n
E(a0 , a1 )
2
=
2[(yi a0 a1 xi )](xi ) = 0 a0
xi + a1
xi =
xi yi
a1
i=0
i=0
i=0
i=0
(n + 1)
n
i=0
xi
a
0
i=0 yi
=
n
n
2
x
a
x
y
1
i=0 i
i=0 i i
n
i=0
xi
Mx :=
1
yi .
n + 1 i=0
n
My :=
m>1
k = 0, ..., m:
E(a0 , a1 , ..., am )
= 0, aj = costante, j = k.
ak
Si ottiene il sistema delle equazioni normali A
a = z, con
Ak,j =
xk+j
,
i
k, j = 0, ..., m,
xki yi ,
k = 0, ..., m.
i=0
zk =
i=0
22
Per esteso:
(n + 1)
i=0 xi
...
n
m
i=0 xi
n
i=0
xi
2
i=0 xi
...
n
i=0
xm+1
i
...
...
n
i=0
a
0
n
i=0
yi
i=0 xi yi
...
...
n
m
y
x
a
m
i
i=0 i
m+1
1
i=0 xi
...
...
xm
i
...
n
i=0
x2m
i
23
Integrazione numerica
Approssimazione numerica di:
I(f ) =
f (x)dx.
a
Motivazioni.
Non sempre si riesce a trovare la forma esplicita della primitiva.
Valutazione costosa della primitiva.
La funzione da integrare pu`o essere data non in forma analitica, ma solo
per punti.
Formule di quadratura.
In generale: se f `e unapprossimazione di f I(f ) I(f).
) :=
f (x)dx I(f
I(f ) :=
a
f (xi )i
i=1
f Pr .
r=0
i = (b a).
i=1
n
n
I(f ) =
n1 (x)dx =
Li (x)f (xi ) dx =
f (xi )
a
i =
Li (x)dx
a
i=1
i=1
Li (x)dx
a
x xj
(Li =
: polinomi di Lagrange).
x
xj
j=1 i
j=i
24
Formule aperte: a < x1 < x2 < ... < xn1 < xn < b.
Formule chiuse: a = x1 < x2 < ... < xn1 < xn = b.
Formule di quadratura di Newton-Cotes (nodi equidistanti)
Formule aperte: h =
ba
n+1 ,
xi = a + ih, i = 1, ..., n.
Formule chiuse: h =
ba
n1 ,
(b a)3 (2)
f (t), t (a, b), se f C 2 [a, b].
12
(b a)5 (4)
f (t), t (a, b), se f C 4 [a, b].
2880
)
(
M
H
f ai
2
i=1
Errore:
(c)
I(f ) IP M =
(c)
I(f ) IP M =
ba 2 (2)
(),
24 H f
H 2 (1)
(b)
24 [f
f (1) (a)]
(formula asintotica).
[
]
M
M
1
H
H
=
[f (ai1 ) + f (ai )] =
f (a) + f (b) + 2
f (ai )
2 i=1
2
i=1
Errore:
(c)
I(f ) IT =
(c)
I(f ) IT =
2 (2)
ba
(), (a, b) (formula classica)
12 H f
H 2 (1)
(a)
12 [f
f (1) (b)]
(formula asintotica).
H
H
f (a) + f (b) + 2
f (ai ) + 4
f ai
6
2
i=1
i=1
Errore:
26
(c)
ba
I(f ) ICS = 2880
H 4 f (4) (), (a, b) (formula classica)
(c)
I(f ) ICS =
H4
(3)
(a)
2880 [f
f (3) (b)]
27
(formula asintotica).
f (x)dx
a
H
j=1
[f (aj1 + f (aj )] =
)
M (
H3
f (j ) , j [aj1 , aj ].
12
j=1
Da qui in poi si pu`o procedere in due diversi modi che portano alle due diverse
stime:
1. Stima classica.
M
M
M
H 3
1 (b a)3
1
1 (b a)2
(ba)
=
f (j ) =
f (j ) =
f (j )
12 j=1
12 M 3 j=1
12 M 2
M j=1
Si osserva:
x[a,b]
x[a,b]
f (j ) M max f (x)
x[a,b]
j=1
min f (x)
x[a,b]
M
1
f (j ) max f (x)
M j=1
x[a,b]
{z
}
|
F
Nellipotesi che f C [a, b], allora f C 0 [a, b], dunque [a, b] tale che
f () = F . Infatti grazie allipotesi di continuit`a di f , si ha che f assume in
almeno un punto dellintervallo (qui abbiamo denito il punto con la variabile
) un qualsiasi valore compreso fra il minimo e il massimo valore assunto da f
nellintervallo (che qui abbiamo denito con la variabile F ).
Concludendo si ha:
M
3
1
1 (b a)2
= 1 (b a) f () , [a, b]
(b
a)
f
(
)
j
12 M 2
M j=1
12 M 2
|
{z
}
2
28
2. Stima asintotica
)
M (
H3
H2
f (j ) =
12
12
j=1
j=1
Hf (j )
{z
somma di Riemann
Si ha:
f (x)dx,
per H 0
j=1
Ma
Hf (j )
Hf (j ) =
[f (a) f (b)] .
12 j=1
12
M
29
)=
f (x)dx I(f
I(f ) =
a
j f (xj )
j=1
j =
Lj (x)dx
a
(
j xkj
j=1
x dx
bk+1 ak+1
,0 k n 1
k+1
Il sistema A = f , con
Akj = xkj , 1 j n, 0 k n 1, fk =
bk+1 ak+1
, 0k n1
k+1
j =
Lj (x)dx,
a
essendo una soluzione che verica il sistema, cio`e tale per cui la formula di
quadratura ha grado di precisione n 1, `e lunica soluzione del sistema
A = f . Infatti, se per assurdo la soluzione fosse
j =
Lj (x)dx
a
esisterebbero due soluzioni distinte in corrispondenza delle quali si veri k ), 0 k n 1, e dunque la soluzione del sistema
cherebbe I(xk ) = I(x
con matrice A non singolare non sarebbe unica.
30
bk+1 ak+1
, 1kn
xkj =
k+1
j=1
che `e un SISTEMA NON LINEARE di n equazioni in n incognite.
3. Nel caso pi`
u generale ci si pone il problema di come determinare i pesi
j , j = 1, ..., n e i nodi xj , j = 1, ..., n di una formula di quadratura
in modo che la formula di quadratura abbia grado di precisione massimo.
Poich`e si pretende che il grado di precisione sia il massimo possibile, dovr`a
essere almeno n1, dunque la formula dovr`a esere di tipo interpolatorio,
cio`e, dati i nodi xj i pesi si dovranno calcolare mediante le formule
b
j =
Lj (x)dx.
a
I(g) = I(g),
g Pn1
Dunque si ottiene:
1
1
1
I(pn+m ) =
pn+m (x)dx =
w(x)pm (x)dx +
qn1 (x)dx =
| {z }
1
1
1
31
1
1
w(x)pm (x)dx +
j qn1 (xj ) =
j=1
w(x)pm (x)dx +
j=1
1
1
n+m )
w(x)pm (x)dx + I(p
| {z }
Avremmo quindi
n+m ),
I(pn+m ) = I(p
pn+m Pn+m
Si osservi che il massimo valore di m per cui lintegrale denito pu`o annullarsi `e n 1. Infatti, se per assurdo fosse m = n, potremmo scegliere
in particolare pm = w ed avere
1
w(x)w(x)dx = 0,
1
ck Pk (x), ck R, m n 1
k=0
si ha:
1
1
w(x)pm (x)dx =
m
k=0
ck
1
1
Pn (x)
ck Pk (x)dx =
k=0
Pn (x)Pk (x)dx = 0
CASI PARTICOLARI.
n = 1: x1 = 0, 1 = 2.
b+a
ba
x+
.
2
2
Integrazione di Gauss-Chebyshev.
1
dx =
j f (xj )
1 x2
1
j=1
(
)
2j 1
xj = cos
, j = , j = 1, ..., n
2n
n
1
f (x)
33
ba
2n
e
|en+1 | C|en |p ,
C > 0, n 0.
Condizione suciente perch`e il metodo sia di ordine p `e per esempio il fatto che
per una costante C1 opportuna si verichi:
lim
|en+1 |
= C1 , C1 > 0.
|en |p
34
f (xk )
, m costante.
m
5)/2).
f (xk )
(xk xk1 )
f (xk ) f (xk1 )
zk [xk , ],
f (xk )
2
f (xk )
2
f (xk )
35
f (z )
1
k
( xk )2
M ( xk )2 ,
2
f (xk )
con
M=
1 max{tI} |f (t)|
,
2 min{zI} |f (z)|
36
f (b)
f (b).
x1 = x0
con xk xk .
Dal momento che f (x) 0, si ha che f `e non crescente e quindi f (xk ) f (xk )
per xk xk , da cui
f (xk ) = ( xk )f (xk ) ( xk )f (xk )
Essendo f (xk ) > 0 si ha
f (xk )
xk
f (xk )
f (xk )
xk + ( xk ) =
f (xk )
f (xk+1 )
xk+1
f (xk+1 )
37
f (xk )
f (xk )
f ()
f ()
f (xk )
= xk ,
f (k )
k [, xk ].
f (xk )
f (xk )
= xk
f (xk )
f (k )
|xk+1 xk | | xk | = |ek |
Esercizio.
Data f (x) = a x1 , a > 0, si scriva il metodo di Newton per approssimare la
radice x = a1 .
Posto
xn a1
en =
,
1
a
38
y= x
soluzione di
y = g(x)
Per esempio:
f (x) = 0 x + f (x) = x; oppure, f (x) = 0 x + kf (x) = x, k = 0
| {z }
| {z }
g(x)
g(x)
xex2 = 0 x = |{z}
ex2 ln x = ln ex2 , x > 0 ln x = x2 x = 2 + ln x
| {z }
g1 (x)
g2 (x)
Metodo iterativo:
xn+1 = g(xn ) , n 0, x0 assegnato.
Esempio.
Data f (x) = x2 4 ( = 2); x0 = 3, xn+1 = gi (xn ), n 0, i = 1, 2, 3:
g1 (x) = x2 + x 4; x0 = 3, x1 = 8, x2 = 68, x3 = 4688, ... xn +
g2 (x) = x4 ; x0 = 3, x1 = 34 , x2 = 3, x3 = 43 , x4 = 3, ...
g3 (x) =
x
2
Dunque si osserva che non tutte le funzioni di iterazione garantiscono la convergenza al punto sso.
Propriet`
a.
Assegnato un procedimento iterativo ad un passo:
xn+1 = g(xn ), n 0, x0 assegnato,
g continua, i punti ssi della funzione di iterazione g sono tutti e soli i punti
limite delle successioni {xn }.
39
Teorema.
Si consideri la successione xk+1 = g(xk ), per k 0, x0 assegnato e si supponga
che valgano le seguenti ipotesi:
1) I = [a, b] tale che x I, g(x) I;
2) g C 1 (I);
3) K < 1 : x I, |g (x)| K.
Allora:
4) g ha un unico punto sso I;
5) la successione {xk , k 0} converge ad , x0 I;
6) limk
xk+1
xk
= g ().
Dimostrazione.
Si consideri la funzione G(x) = x g(x) e, sfruttando le ipotesi 1) e 2) si osservi
che G(a) = a g(a) 0, G(b) = b g(b) 0 e dunque la funzione G ammette
almeno una radice I, ovvero la funzione g ammette almeno un punto sso
I. Per quanto riguarda lunicit`a del punto sso , si supponga per assurdo
che esistano due punti ssi 1 e 2 I, cio`e 1 = g(1 ) e 2 = g(2 ). Per il
teorema del valor medio di Lagrange si ha:
2 1 = g(2 ) g(1 ) = g (t)(2 1 ),
tI
40
1
= log |g ()|.
|g ()|
Corollario.
Se |g (x)| > 1, x [a, b] il procedimento iterativo ad un passo:
xn+1 = g(xn ), n 0, x0 =
sar`
a localmente divergente, cio`e diverger`a a , oppure converger`a a un punto
sso [a, b].
Ordine di convergenza.
Sia g C[a, b], g C[a, b], g C[a, b],..., g (p) C[a, b], con
g() = , g () = ... = g (p1) () = 0, g (p) () = 0
Allora il metodo xn+1 = g(xn ), n 0, ha ordine p e
xn+1
g (p) ()
=
.
p
n (xn )
p!
lim
1
(xn )2 g () + ...
2!
1
(xn )2 g () + ...
2!
1
2
2 x2 , g3 (2) = 0
4
1
x3 , g3 (2) = 2 = 0
f (x)
g () = 0.
f (x)
41
Infatti:
g (x) = 1
e, in particolare,
=0
z }| {
[f ()] f () f ()
[f ()]2
g () = 1
=
1
= 0.
[f ()]2
[f ()]2
(x )p h(x)
h(x)
= x (x )
(x )p1 [ph(x) + (x )h (x)]
ph(x) + (x )h (x)
Derivando:
g (x) = 1
[
]
h(x)
d
h(x)
(x
a)
.
ph(x) + (x )h (x)
dx ph(x) + (x )h (x)
In particolare:
[
]
1
d
h(x)
= 1
g () = 1
( )
p
p h() + ( ) h () | {z } dx ph(x) + (x )h (x) x=
=0
| {z }
h()
=0
Dunque
g () = 1
1
= 0 p = 1
p
f (x)
,
f (x)
ha ordine 2.
Osservazione.
Se ha molteplicit`a p per f , allora ha molteplicit`a p 1 per f e ha
molteplicit`
a 1 per (x) := ff(x)
o applicare il metodo di Newton
(x) . Si pu`
classico alla funzione , ottenendo nuovamente un metodo di ordine 2.
42
Test darresto.
xn
1
(xn+1 xn )
1 g (xn )
Infatti:
xn+1 xn = xn+1 + xn =
g(xn ) g()
|
{z
}
+ xn =
| {z }
43
Norme vettoriali
Diciamo che lapplicazione da V = Rn in R+ {0} `e una norma vettoriale
se sono soddisfatte le seguenti condizioni:
1.) x 0, x V e x = 0 x = 0.
2.) x = ||x, R, x V .
3.) x + y x + y, x, y V .
Denizione di p e in V :
xp =
( n
) p1
|xi |
, 1 p < ;
i=1
x = max |xi |.
1in
Propriet`
a. x V , limp xp = x .
Disuguaglianza di Cauchy-Schwarz: |(x, y)| x2 y2 , x, y V .
Disuguaglianza di Minkowsky: x + yp xp + yp , x, y V .
Sfera unitaria: Sp = {x V : xp = 1}.
Casi particolari: Studio di S1 , S2 , S (in R2 ).
Propriet`
a di equivalenza fra norme.
Tutte le norme denibili su V sono equivalenti, cio`e, date due norme e ||| |||
su V , c1 , c2 > 0 tali che x V , si ha c1 |||x||| x c2 |||x|||.
Propriet`
a di continuit`
a.
Ogni norma vettoriale `e una funzione continua delle componenti del vettore.
44
Autovalori e autovettori
Sia A una matrice quadrata di ordine n. Il numero C `e detto autovalore di
A se esiste un vettore x = 0, tale che Ax = x. Il vettore x `e detto autovettore
associato allautovalore . Linsieme (A) degli autovalori di A `e detto spettro
di A. Lautovalore `e soluzione dell equazione caratteristica
pA () := det(A I) = 0,
dove pA () `e il polinomio caratteristico.
Una matrice `e singolare ha almeno un autovalore nullo.
det(A) =
tr(A) :=
n
i=1
n
i=1
i .
aii =
n
i=1
i (traccia).
Norme di matrici
x V, A Rnn .
{ Ax
x
}
, x Rn \{0}
45
Casi particolari.
A1 = max
1jn
|aij |; A = max
1in
i=1
|aij |; A2 =
(AT A)
j=1
dove
(B) = max |i (B)|, B Rnn
1in
xi
i=1
aij xj =
j=1
n
n
aij xi xj 0 , x V
i=1 j=1
(Ax, x) = 0 x = 0
Criterio di Sylvester.
Una matrice A simmetrica di ordine n `e d.p. det(Ak ) > 0, k = 1, 2, ...n, dove
Ak `e la sottomatrice principale di ordine k, cio`e formata dalle prime k righe e
k colonne.
A d.p. A non singolare.
A d.p. A simmetrica e i (A) > 0, i = 1, ..., n.
A d.p. aii > 0, i = 1, ..., n.
A d.p. |aik |2 < aii akk , i = k.
A d.p. Il massimo elemento della matrice A giace sulla diagonale principale
di A.
Ogni sottomatrice principale di una matrice d.p. `e d.p., quindi non singolare.
Matrici a dominanza diagonale (d.d.)
Una matrice A si dice a dominanza diagonale stretta o strettamente diagonalmente
dominante per righe se
|aii | >
|aij |, i = 1, ..., n.
j=1
j=i
46
|aij |, j = 1, ..., n.
i=1
i=j
Matrici sparse
Una matrice A si dice sparsa se ha un numero elevato di elementi aij = 0.
Quale sia la percentuale di elementi necessaria per far ritenere una matrice
sparsa dipende ovviamente dal contesto. Comunemente una matrice Rnn `e
ritenuta sparsa quando il numero di elementi diversi da zero `e di ordine O(n).
Le matrici a banda sono ritenute sparse se p, q n.
47
(1) (2)
1
A
x
b
{z
}
|
x
b
A A1
x
b
48
Denizione: K(A) := A A1
(numero di condizionamento della matrice A).
Teorema di Wilkinson.
Sia A non singolare, A e b perturbazioni di A e b, con A < 1/A1 .
Allora:
)
(
K(A)
x
A b
+
.
x
A
b
1 K(A) A
A
( ) Analisi a posteriori.
b una soluzione fornita da un metodo numerico e r = b Ab
Sia x
x il residuo
associato.
Si dimostra, con procedimento analogo a quello del caso (), la seguente disuguaglianza:
r
x
K(A)
x
b
Osservazioni su K(A).
Per ogni A non singolare e per ogni norma naturale di matrice si ha:
1 = I = AA1 A A1 = K(A).
max (A)
min (A)
:=
=(A)(A1 ) A A1 = K(A).
Se A `e simmetrica:
(A) = A2 ;
K2 (A) =
maxi=1,...,n |i (A)|
mini=1,...,n |i (A)| .
maxi=1,...,n i (A)
mini=1,...,n i (A) .
49
i1
1
Lx = b xi = bi
lij xj ,
l
ii
j=1
i = 1, ..., n
1
U x = b xi = bi
,
uij xj
uii
j=i+1
i = n, ..., 1
n(n+1)
]
2
= 0, i = k + 1, ..., n
50
Passo 1: i = 2, ..., n
(2)
Ri
(1)
= Ri
(1)
mi1 R1
(1)
(2)
(1)
(1)
(2)
(1)
(1)
aij = aij mi1 a1j , mi1 t.c. 0 = ai1 = ai1 mi1 a11 mi1 =
ai1
(1)
a11
Passo 2: i = 3, ..., n
(3)
Ri
(2)
= Ri
(2)
mi2 R2
(2)
(3)
(2)
(3)
(2)
(2)
(2)
aij = aij mi2 a2j , mi2 t.c. 0 = ai2 = ai2 mi2 a22 mi2 =
ai2
(2)
a22
..
.
Passo k: i = k + 1, ..., n
(k+1)
Ri
(k)
= Ri
(k)
mik Rk
(k)
(k+1)
aij
(k)
(k)
(k+1)
(k)
(k)
aik
(k)
akk
Algoritmo E.G.
k = 1, ..., n 1
i = k + 1, ..., n
(k)
(k)
mik = aik /akk
j = k + 1, ..., n
(k+1)
(k)
(k)
aij
= aij mik akj
(k+1)
n3
3 ]
Fattorizzazione LU.
Se L = {lii = 1, lij = mij , i = 1, ..., n, j < i} e U = A(n) , allora A = LU .
51
tr. inf.
L1
2 L1
U2 U11
(k)
(k)
(k)
52
a1 c1
0
b2 a2
c
2
...
...
...
A=
0 ... bn1
0 ...
...
...
...
...
an1
bn
0
0
...
cn1
an
1
2
L=
...
0
0
0
0
1
0
...
...
... n1
...
...
...
...
...
1
n
0
0
...
,
0
1
1
0
U =
...
0
0
1
2
...
...
...
0
2
...
0
...
...
...
...
n1
0
0
0
...
n1
n
bi
, i = ai i i1 , i = 2, ..., n
i1
Osservazioni
Metodo di Cholesky per matrici simmetriche denite positive A = LLT .
Fenomeno del llin.
53
Metodi iterativi
(0)
(0)
(0)
(k)
1 {
bi
aij xj ,
aii
j=1
n
xi =
aii = 0,
i = 1, ..., n
j=i
1 {
(k)
=
bi
aij xj ,
aii
j=1
n
k 0,
(k+1)
xi
i = 1, ..., n
j=i
(k+1)
xi
i1
n
}
1 {
(k+1)
(k)
=
bi
aij xj
aij xj ,
aii
j=1
j=i+1
i = 1, ..., n.
Osservazioni.
passo k di (J) e (GS): n2 flops.
(J): aggiornamenti simultanei (parallelo).
(GS): aggiornamenti successivi (sequenziale).
Alcuni risultati sullo studio della convergenza.
Teorema.
A diagonalmente dominante in senso forte = i metodi (J) e (GS) convergono.
` una condizione SOLO suciente).
(E
Dimostrazione [nel caso del metodo (J)].
(k+1)
Calcolando la dierenza fra xi e xi
si ottiene:
(k+1)
ei
(k+1)
= xi xi
n
n
aij (k)
1
(k)
e
aij (xj xj ) =
aii j=1
aii j
j=1
j=i
54
j=i
(k+1)
|ei
n
n
}
{
aij (k)
aij
|ej |
e(k)
aii
aii
j=1
j=1
j=i
j=i
Posto
= max i ,
1in
con i =
aij
,
aii
j=1
i = 1, ..., n
j=i
Propriet`
a.
Sia A simmetrica con aii > 0, i. Allora (GS) converge A `e denita
positiva.
Denizione.
Una matrice quadrata A si dice convergente se
lim [Ak ]ij = 0,
i, j = 1, ..., n,
Propriet`
a.
Sono condizioni equivalenti:
1) A `e una matrice convergente.
2) limk Ak = 0 per una norma di matrice.
3) (A) < 1.
Corollario.
A `e convergente se una norma di matrice tale che A < 1.
Contesto generale dei metodi iterativi.
Si cerca una decomposizione (splitting) di A nella forma: A = N P , con
det(N ) = 0, N y = f sistema facilmente risolubile e K(N ) << K(A). Allora:
Ax = b N x P x = b N x = P x + b.
55
Nx Nx
(k+1)
= P x+ b P x(k) b
N (x x
(k+1)
) = P (x x(k) )
(k+1)
= Be(k) .
Teorema.
Condizione necessaria e suciente per la convergenza `e che B sia una matrice
convergente.
Teorema.
Condizione necessaria e suciente per la convergenza `e che (B) < 1.
Corollario.
Condizione suciente per la convergenza `e che esista una norma naturale di
matrice tale che B < 1.
Dimostrazione.
Dalla relazione ricorsiva sullerrore si ha:
e(k+1) = Be(k) B e(k) B 2 e(k1) ...
B (k+1) e(0) B(k+1) e(0) ,
da cui si ottiene che, se B < 1, si ha
lim e(k) = 0,
ovvero:
lim e(k) = 0.
Si osservi che la convergenza `e garantita per ogni e(0) , cio`e per ogni scelta del
vettore iniziale x(0) .
56
BJ = D1 (L + U )
BGS = (D + L)1 U
det
D } det(L + U + D) = 0 det(L + U + D) = 0
| {z
=0
det{(D + L)
det[U + (D + L)] = 0
Denizione.
Si chiama velocit`a asintotica del metodo iterativo relativo ad una matrice diterazione B il numero:
R(B) = ln (B).
Proposizione.
Il numero di iterazioni m necessarie per ridurre lerrore di un fattore verica
la disuguaglianza
ln
.
m
R(B)
57
ln
,
R(B)
x x(m)
.
x x(0)
58
xi
n
i1
}
{
(k)
(k+1)
(k)
aij xj
bi
aij xj
+(1 )xi ,
aii
j=1
j=i+1
|
{z
}
i = 1, ..., n.
GaussSeidel
Casi particolari:
(k+1)
= 0: xi
(k)
= 1: Gauss-Seidel (Esiste una versione del metodo SOR anche a partire dal
metodo di Jacobi).
Forma matriciale del metodo SOR:
x(k+1) = D1 (b Lx(k+1) U x(k) ) + (1 )Ix(k) =
D1 Lx(k+1) + [(1 )I D1 U ]x(k) + D1 b
Matrice diterazione:
B = (I + D1 L)1 [(1 )I D1 U ]
det(B ) = det[(I + D1 L)1 ] det[(1 )I D1 U ]
Si osservi che I + D1 L `e una matrice triangolare inferiore con elementi uguali
a 1 sulla diagonale, mentre (1)I D1 U `e una matrice triangolare superiore
con elementi uguali a 1 sulla diagonale. Dunque si ha:
det(B ) = (1 )n
n
[
]n
|(1 )n | = | det B | =
i (B ) max |i (B )| = [(B )]n
i=1,...n
i=1
1 + 1 2 (BJ )
2
1 + n
60
n 1
.
n + 1
n
1
K2 (A) 1
.
K2 (A) + 1
(Ar(k) , r(k) )
(Ar(k) , Ar(k) )
(z(k) , r(k) )
(z(k) , z(k) )
r(k+1) 2
<
b2
61
Esercizio
Sia dato il sistema lineare Ax = b, con A Rnn matrice simmetrica denita
positiva. Siano i , i = 1, ..., n gli autovalori di A, con
0 < m = 1 2 ... n = M.
1) Fornire una condizione necessaria e suciente su m e M anch`e risulti
convergente il metodo iterativo
x(k+1) = Ax(k) + x(k) + b.
()
2) Fornire una condizione necessaria e suciente su anch`e risulti convergente il metodo iterativo
x(k+1) = [(I A)x(k) + b] + (1 )x(k) .
()
[ (B)]
Ix Ax = x
Ax = (1 )x
= 1 = 1 ,
[ (A)].
62
[ (B )]
Ix Ax = x
Ax = (I I)x
1
Ax = Ix
1
= = 1 , [ (A)].
CNS per la convergenza del metodo ():
2
2
|1 | < 1 0 < < 2, (A) 0 < < 0 < < M .
3) Il valore ottimale ott `e il valore di per cui (B ) `e minimo al variare
di (0, 2/M ):
min (B ) = (Bott ).
(0,2/M )
i=1,...,n
( 2 )
( 2 )
2
2
= i
1 < j
1 = fj
.
M
M
M
M
63
2
,
M +m
min
(0,2/M )
(B ).
Si ha inoltre:
(Bott ) = M ott 1 = M
M m
2
1=
=
M +m
M +m
M
m
M
m
1
,
+1
oppure,
(Bott ) = 1 mott = 1 m
2
M m
=
= ...
M +m
M +m
M
m
K2 (A) 1
.
K2 (A) + 1
Si osservi che per la velocit`a asintotica del metodo iterativo (), denita
da R(B ) = ln (B ), si ha:
lim
K2 (A)1+
lim
K2 (A)+
R(B ) = 0
64
(velocit`a nulla).
Figura 1
2
|11|
|12|
1.8
|13|
|1n|
1.6
1.4
(B)
1.2
0.8
0.6
ott
0.4
0.2
0.5
ott
1/n 1/3
1/2
65
1/1
1.5
Localizzazione di autovalori
Sia A una matrice quadrata di ordine n a coecienti reali; il numero C `e
detto autovalore di A se esiste un vettore x C non nullo tale che
Ax = x.
Il vettore x `e detto autovettore associato allautovalore e linsieme degli autovalori di A `e detto spettro di A ed `e denotato con il simbolo (A). E noto
che (A) = (AT ). Inoltre si denisce raggio spettrale della matrice A
(A) = max |i (A)|.
1in
Zi ,
Zi = {z C : |z aii |
i=1
|aij |},
j=1
j=i
| {z }
ri
66
akj xj = xk ,
j=1
n
akj xj + akk xk = xk ,
j=1
j=k
( akk )xk =
akj xj ,
j=1
j=k
| akk | |xk |
|akj | |xj |,
j=1
j=k
| akk |
j=1
j=k
|xj |
|akj | = rk ,
|xk |
|{z} jj=1
=k
n
|akj |
dunque Zk .
OSSERVAZIONE. Poich`e (A) = (AT ), applicando il teorema prima alla
matrice A e successivamente alla matrice trasposta AT , risulta che gli autovalori
di A appartengono allintersezione delle due regioni ottenute.
Secondo teorema di Gershgorin
Se lunione M1 di k cerchi di Gershgorin `e disgiunta dallunione M2 dei rimanenti
n k cerchi di Gershgorin, allora k autovalori (ciascuno contato con la propria
molteplicit`
a) appartengono a M1 e n k autovalori appartengono a M2 .
67
j xj .
j=1
j xj =
j=1
j Ak xj =
j=1
j kj xj =
j=1
k1 1 x1 + k2 2 x2 + ... + kn n xn =
( )k
( )k
( )k
2
3
n
k1 1 x1 +
2 x2 +
3 x3 + ... +
n xn
1
1
1
|
{z
}
0 se k
Dunque al crescere di k, zk
cio`e zk tende a disporsi nella direzione
dellautovettore x1 associato allautovalore 1 .
Consideriamo ora il quoziente di Rayleigh che fornisce in generale lautovalore
a partire da un autovalore associato x:
k1 1 x1 ,
68
(Ax, x)
(x, x)
(Ak1 1 x1 , k1 1 x1 )
(k+1
1 x1 , k1 1 x1 )
2k+1
12 (x1 , x1 )
(Azk , zk )
1
1
=
=
= 1 .
k
k
k
k
2k
(zk , zk )
(1 1 x1 , 1 1 x1 )
(1 1 x1 , 1 1 x1 )
1 12 (x1 , x1 )
zk
,
zk 2
e si pone
zk+1 = Ayk .
Di conseguenza si ha:
k =
(Ayk , yk )
= (zk+1 , yk ),
(yk , yk )
essendo (yk , yk ) = yk 2 = 1.
Lalgoritmo `e allora il seguente:
Inizializzazione: z0 = 0
k 0
zk
yk =
zk 2
zk+1 = Ayk
k = (zk+1 , yk )
k 0
zk
yk =
zk 2
zk+1 = A1 yk = Azk+1 = yk
)
(
1
k = (zk+1 , yk ),
n
.
k
70
x [x0 , T ]
y(x0 ) = y0
Formulazione integrale.
(condizione iniziale)
y (t)dt =
f (t, y(t))dt
x0
x0
y(x) y(x0 ) =
f (t, y(t))dt
x0
Approssimazione numerica.
Nodi di discretizzazione in [x0 , T ]:
h > 0, xj = x0 + jh, j = 0, 1, ..., N , xN T ;
[es.: h = (T x0 )/N ]
u0 = y0 ,
1
(x x0 )2 y (t0 ),
2!
x0 < t0 < x.
x0 < t0 < x1
xx0
y(x) y(x0 )
,
x x0
y(x1 ) y(x0 )
y(x1 ) y(x0 ) + hf (x0 , y(x0 ))...
x1 x0
x0
y(x1 ) y(x0 ) =
x1
f (t, y(t))dt
x0
Si ottiene:
y(x1 ) y(x0 ) hf (x0 , y(x0 )) y(x1 ) = y(x0 ) + hf (x0 , y(x0 ))....
72
1) Costruzione geometrica.
Si approssima il valore di y(x1 ) con il valore assunto dalla retta r passante
per il punto di coordinate (x0 , f (x0 )) e avente come coeciente angolare
y (x1 ) = f (x1 , y(x1 ))..
r( x = x1 ) = y(x0 ) + hf (x1 , y(x1 )),
2) Costruzione basata sullo sviluppo di Taylor (allindietro):
y(x) = y(x1 ) + (x x1 )y (x1 ) +
1
(x x1 )2 y (t0 ),
2!
x < t0 < x1 .
xx1
y(x) y(x1 )
x x1
y(x0 ) y(x1 )
y(x1 ) y(x0 ) + hf (x1 , y(x1 ))...
x0 x1
Si ottiene:
y(x1 ) y(x0 ) hf (x1 , y(x1 ) y(x1 ) = y(x0 ) + hf (x1 , y(x1 )....
73
h
[f (xn , un ) + f (xn+1 , un+1 )]
2
h
[f (x0 , y(x0 ) + f (x1 , y(x1 )]....
2
Il metodo di Heun.
Si ottiene a partire dal metodo di Crank-Nicolson sostituendo nella f (xn+1 , un+1 )
al posto di un+1 una sua approssimazione ottenuta con un passo del metodo di
Eulero esplicito a partire da un :
un+1 = un +
h
[f (xn , un ) + f (xn+1 , un + hf (xn , un ))]
|
{z
}
2
un+1
(
)
h
u0+ 12 y x0 +
2
h
h
u1 u0 = hf x0 + , u0 + f (x0 , u0 )
2 |
2 {z
}
u0+ 1
2
74
In generale:
h
h
un+1 = un + hf xn + , un + f (xn , un )
2 |
2 {z
}
un+ 1
2
x0
y(x2 ) y(x0 ) =
x2
f (t, y(t))dt,
x0
Si ottiene:
y(x2 ) y(x0 ) 2hf (x1 , y(x1 ) y(x2 ) y(x0 ) + 2hf (x1 , y(x1 )....
e quindi, dato u0 = y0 e calcolato u1 con un metodo a un passo, la formula del
punto medio `e data da:
un+1 = un1 + 2hf (xn , un )
n1
Sostituendo le soluzioni esatte y(xn ) e y(xn+1 ) nello schema numerico, esso sar`a
soddisfatto a meno di un residuo n+1 , avendo preteso che la soluzione esatta
verichi lo schema numerico:
u0 = y 0 ,
75
max
0nN 1
|n+1 (h)|.
Denizione.
Un metodo numerico si dice consistente se
lim (h) = 0,
h0
1 2
h y (tn ) = n+1 = hn+1 (h),
2
Dunque:
n+1 (h) =
(h) =
h
y (tn )
2
h
max |y (xn )| (h) = O(h).
2 0nN 1
Denizione di convergenza.
Un metodo numerico si dice convergente con ordine di convergenza p se
|un y(xn )| Chp ,
76
Concetto di zero-stabilit`
a (stabilit`a su intervalli limitati).
Si dice che un metodo numerico `e zero-stabile se, in un intervallo limitato e ssato (x0 , T ), a piccole perturbazioni sui dati corrispondono piccole perturbazioni
sulla soluzione, quando h 0.
Per una denizione rigorosa si veda: [A. Quarteroni, R. Sacco e F. Saleri,
Matematica Numerica, Springer-Verlag Italia, Milano 2000].
Assoluta stabilit`
a (stabilit`a su intervalli illimitati).
Il concetto di assoluta stabilit`a ha a che fare con il comportamento asintotico
della soluzione numerica un , per xn .
Consideriamo il problema modello
y (x) = y(x) x [0, ), > 0
(P m)
y(0) = 1
(condizione iniziale)
la cui soluzione esatta y(x) = ex tende a 0 per x .
Denizione.
Un metodo numerico per lapprossimazione di (P m) si dice assolutamente stabile
se
|un | 0 per xn +.
1) Assoluta stabilit`
a del metodo di Eulero esplicito.
2) Assoluta stabilit`
a del metodo di Eulero implicito.
1
un =
1 + h
1
1
1
un1 = ... =
u0 =
2
n+1
(1 + h)
(1 + h)
(1 + h)n+1
|un | 0 per xn +
1
< 1, h (h, > 0)
|1 + h|
77
3) Assoluta stabilit`
a del metodo di Heun.
h
h
un+1 = un + [un (un + hf (xn , un ))] = un + [un (un hun )] =
2
2
(
)
(
)2
h
h2 2
h2 2
2
un + [un un +h un ] = 1 h +
un = 1 h +
un1 =
2
2
2
)n+1
(
)n+1
(
h2 2
h2 2
u0 = 1 h +
... = 1 h +
2
2
2 2
h
h2 2
|un | 0 per xn + 1h+
<1
< 1 1 < 1h+
2
2
1 h +
1 + h +
h2 2
2
> 1
h2 2
2
<1
2 2
h 2h + 4 > 0
h2 2 2h < 0
78
0 < h < 2