A01
128
Ezio Venturino
Appunti ragionati
di calcolo numerico
Copyright © MMIX
ARACNE editrice S.r.l.
www.aracneeditrice.it
[email protected]
via Raffaele Garofalo, 133 A/B
00173 Roma
(06) 93781065
ISBN
978–88–548–2357–0
I diritti di traduzione, di memorizzazione elettronica,
di riproduzione e di adattamento anche parziale,
con qualsiasi mezzo, sono riservati per tutti i Paesi.
Non sono assolutamente consentite le fotocopie
senza il permesso scritto dell’Editore.
I edizione: marzo 2009
Per Anna
Indice
1 CONCETTI FONDAMENTALI
1.1 Introduzione . . . . . . . . . . . . . . . . . . . . .
1.1.1 Obiettivi del corso . . . . . . . . . . . . .
1.1.2 L’analisi numerica nella scienza . . . . . .
1.1.3 Classificazione dei problemi . . . . . . . .
1.1.4 Problemi lineari e non lineari . . . . . . .
1.2 Il sistema numerico del calcolatore . . . . . . . . .
1.2.1 Sistemi di numerazione . . . . . . . . . . .
1.2.2 Cambiamenti di base di numerazione . . .
1.2.3 Valutazione di polinomi . . . . . . . . . .
1.2.4 Altri sistemi di numerazione . . . . . . . .
1.2.5 Rappresentazione dei numeri in macchina .
1.2.6 Serie . . . . . . . . . . . . . . . . . . . . .
1.2.7 Implementazione del segno . . . . . . . . .
1.3 Errore . . . . . . . . . . . . . . . . . . . . . . . .
1.3.1 Somme . . . . . . . . . . . . . . . . . . . .
1.3.2 Errore di cancellazione . . . . . . . . . . .
1.3.3 Backward error analysis . . . . . . . . . .
2 PROBLEMI DIRETTI
2.1 Problemi base . . . . . . . . . . . . .
2.1.1 Un problema di interpolazione
2.2 Interpolazione . . . . . . . . . . . . .
2.2.1 Interpolazione di Lagrange . .
2.2.2 Interpolazione di Newton . . .
5
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
11
11
11
12
15
16
20
20
20
28
29
31
36
37
39
43
43
47
.
.
.
.
.
53
53
54
56
56
64
Indice
2.2.3 Interpolazione di Hermite . . . . . . . .
2.2.4 Interpolazione polinomiale a tratti. . . .
2.2.5 Splines . . . . . . . . . . . . . . . . . . .
2.3 Teoria dell’approssimazione . . . . . . . . . . .
2.3.1 Metodo di Frobenius . . . . . . . . . . .
2.3.2 Alcuni risultati importanti . . . . . . . .
2.3.3 Matrice di Hilbert . . . . . . . . . . . . .
2.4 Polinomi ortogonali . . . . . . . . . . . . . . . .
2.4.1 Minimi quadrati nel continuo . . . . . .
2.4.2 Condizionamento di un problema . . . .
2.4.3 Algoritmo di Gram-Schmidt nel discreto
2.4.4 Procedimento di Gram-Schmidt . . . . .
2.4.5 Equioscillazione dell’errore . . . . . . . .
2.4.6 Proprietà dei polinomi di Chebyshev . .
2.5 Quadrature . . . . . . . . . . . . . . . . . . . .
2.5.1 Metodi statistici . . . . . . . . . . . . . .
2.5.2 Metodi numerici classici . . . . . . . . .
2.5.3 Regola di Simpson . . . . . . . . . . . .
2.5.4 Formule di Newton - Cotes . . . . . . . .
2.5.5 Errore asintotico . . . . . . . . . . . . .
2.5.6 Estrapolazione di Aitken . . . . . . . . .
2.5.7 Estrapolazione di Richardson . . . . . .
2.5.8 Implementazione di quadrature . . . . .
2.5.9 Il metodo di Romberg . . . . . . . . . .
2.5.10 Integrazione Gaussiana . . . . . . . . . .
3 PROBLEMI INDIRETTI
3.1 Calcolo di zeri di funzioni . . . . . .
3.1.1 Linearizzazione analitica . . .
3.1.2 Adimensionalizzazione . . . .
3.1.3 Radici di funzioni non lineari
3.1.4 Algoritmo di divisione . . . .
3.1.5 Zeri di funzioni non lineari . .
3.1.6 Bisezione . . . . . . . . . . .
3.1.7 Algoritmo di bisezione . . . .
6
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
69
69
72
77
78
79
82
84
84
85
89
92
95
97
99
99
100
103
105
106
106
108
109
110
112
.
.
.
.
.
.
.
.
117
117
117
119
122
123
123
124
125
Indice
3.2
3.3
3.4
3.5
3.1.8 Convergenza per bisezione. . . . . . . . . . .
3.1.9 Metodi iterativi . . . . . . . . . . . . . . . .
3.1.10 Convergenza del metodo di Newton . . . . .
3.1.11 Criteri di arresto . . . . . . . . . . . . . . .
3.1.12 Convergenza per il metodo della secante . .
3.1.13 Costruzione di equazioni differenziali . . . .
3.1.14 Equazione alle differenze . . . . . . . . . . .
3.1.15 Velocità di convergenza . . . . . . . . . . . .
3.1.16 Metodi di ordine più elevato . . . . . . . . .
3.1.17 Altri metodi . . . . . . . . . . . . . . . . . .
3.1.18 Metodo dei punti fissi . . . . . . . . . . . . .
3.1.19 Radici multiple . . . . . . . . . . . . . . . .
Autovalori . . . . . . . . . . . . . . . . . . . . . . .
3.2.1 Un’idea che non funziona . . . . . . . . . . .
3.2.2 Digressione sulle norme . . . . . . . . . . . .
3.2.3 Metodo delle potenze . . . . . . . . . . . . .
3.2.4 Metodo delle potenze inverse . . . . . . . . .
Algebra lineare . . . . . . . . . . . . . . . . . . . .
3.3.1 Metodo di Gauss - Jacobi . . . . . . . . . .
3.3.2 Metodo di Gauss - Seidel . . . . . . . . . . .
3.3.3 Metodo del rilassamento . . . . . . . . . . .
3.3.4 Metodo di eliminazione . . . . . . . . . . . .
3.3.5 Implementazione dell’algoritmo di Gauss . .
3.3.6 Condizionamento . . . . . . . . . . . . . . .
3.3.7 Il teorema fondamentale . . . . . . . . . . .
3.3.8 Costo dell’algoritmo di riduzione . . . . . .
3.3.9 Interpretazione matriciale . . . . . . . . . .
3.3.10 Metodi di decomposizione diretta . . . . . .
3.3.11 Analisi dell’errore . . . . . . . . . . . . . . .
Derivazione numerica . . . . . . . . . . . . . . . . .
3.4.1 Metodo dei coefficienti indeterminati . . . .
3.4.2 Il problema dell’asta . . . . . . . . . . . . .
3.4.3 Problema della piastra . . . . . . . . . . . .
Equazioni differenziali . . . . . . . . . . . . . . . .
3.5.1 Equazioni alle derivate parziali: classificazione
7
126
126
128
129
130
130
132
133
135
136
137
138
139
141
142
146
152
153
154
154
155
156
158
162
164
165
168
172
174
177
179
183
186
190
191
Indice
3.5.2 Separazione delle variabili . . . . . . . . .
3.5.3 Trasformata rapida di Fourier . . . . . . .
3.6 Equazioni differenziali ordinarie . . . . . . . . . .
3.6.1 Equazioni evolutive . . . . . . . . . . . . .
3.6.2 Il metodo di Euler . . . . . . . . . . . . .
3.6.3 Altre derivazioni del metodo di Euler . . .
3.6.4 Errore locale e globale . . . . . . . . . . .
3.6.5 Stabilità . . . . . . . . . . . . . . . . . . .
3.6.6 Trasformata di Laplace . . . . . . . . . . .
3.6.7 Metodi a un passo. . . . . . . . . . . . . .
3.6.8 Metodi Runge Kutta. . . . . . . . . . . . .
3.6.9 Metodi Multistep . . . . . . . . . . . . . .
3.6.10 Confronto dei vari metodi . . . . . . . . .
3.6.11 Cenni sull’analisi di stabilità . . . . . . . .
3.6.12 Problemi sul bordo a 2 punti . . . . . . . .
3.6.13 Metodo di shooting . . . . . . . . . . . . .
3.7 Equazioni alle derivate parziali . . . . . . . . . . .
3.7.1 Differenze finite . . . . . . . . . . . . . . .
3.7.2 Metodi di collocazione e Galerkin . . . . .
3.7.3 Una prospettiva più generale . . . . . . . .
3.7.4 Problemi multidimensionali . . . . . . . .
3.7.5 Equazioni paraboliche . . . . . . . . . . .
3.7.6 Sistemi di grandi dimensioni non lineari .
3.7.7 Metodo di Newton nel multidimensionale .
3.7.8 Metodi numerici per equazioni paraboliche
3.7.9 Equazioni alle derivate parziali iperboliche
3.7.10 Metodi numerici . . . . . . . . . . . . . .
3.7.11 Shocks . . . . . . . . . . . . . . . . . . . .
4 PROBLEMI INVERSI
4.1 Esempi . . . . . . . . . . . . . . . . . . . . . . .
4.2 Metodi numerici . . . . . . . . . . . . . . . . . .
4.2.1 Metodo dei nuclei degeneri . . . . . . . .
4.2.2 Metodo di regolarizzazione di Tichonov .
4.2.3 Metodo iterativo di Landweber-Fridman
8
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
193
201
208
208
209
210
212
213
217
218
220
223
230
230
231
232
235
235
236
240
251
255
259
263
264
267
272
276
.
.
.
.
.
277
277
285
285
288
289
Indice
4.2.4
Una considerazione finale . . . . . . . . . . . 290
5 ESERCITAZIONI
5.1 Esempi svolti . . . . . . . . . . . . . .
5.1.1 Minimi quadrati . . . . . . . . .
5.1.2 Aritmetica di macchina . . . . .
5.1.3 Interpolazione . . . . . . . . . .
5.1.4 Quadrature . . . . . . . . . . .
5.1.5 Approssimazione . . . . . . . .
5.1.6 Zeri di funzioni . . . . . . . . .
5.1.7 Algebra Lineare . . . . . . . . .
5.1.8 Autovalori . . . . . . . . . . . .
5.1.9 Derivazione numerica . . . . . .
5.1.10 Equazioni differenziali ordinarie
5.1.11 Equazioni alle derivate parziali
5.2 Esercizi proposti . . . . . . . . . . . .
5.2.1 Aritmetica di macchina . . . . .
5.2.2 Interpolazione . . . . . . . . . .
5.2.3 Quadrature . . . . . . . . . . .
5.2.4 Approssimazione . . . . . . . .
5.2.5 Zeri di funzioni . . . . . . . . .
5.2.6 Algebra Lineare . . . . . . . . .
5.2.7 Autovalori . . . . . . . . . . . .
5.2.8 Derivazione numerica . . . . . .
5.2.9 Equazioni differenziali ordinarie
5.2.10 Equazioni alle derivate parziali
9
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
291
291
291
294
297
307
315
323
327
337
339
342
357
385
385
387
388
390
391
391
392
393
393
395
Prefazione
Queste note contengono una rassegna, che non ha la pretesa di
essere completa, di alcuni argomenti di analisi numerica. Di questi
non si nascondono gli aspetti da cui originano. Per questo a volte si
affronta anche la presentazione di qualche argomento di matematica
applicata. Sono appunti, come dice il titolo, con tutte le limitazioni
di questa affermazione.
Nella presentazione ho privilegiato l’aspetto costruttivo nella soluzione dei problemi, rinunciando spesso a dettagliare l’implementazione degli algoritmi e la formalità delle dimostrazioni. Non sono
completamente soddisfatto del risultato, in quanto avrei voluto più
tempo per rivedere ulteriormente la presentazione, ma l’imminenza dell’inizio del corso mi ha impedito una rielaborazione più dettagliata. In una seconda edizione, con più tempo a disposizione,
mi riservo di riesaminare questo materiale e correggerne gli errori,
certamente presenti.
Desidero ringraziare tutti coloro che mi sono stati di guida, a cominciare dall’insegnamento elementare e superiore, in particolare
R. Freccero e D. Palladino, per continuare con chi mi ha introdotto all’analisi numerica e alla matematica applicata, e a cui diverse
delle idee qui presentate risalgono: W. Gautschi, B. Conolly, J. Lyness, E. Beltrami, J.C. Frauenthal, R.P. Srivastav, R. Tewarson;
o da cui più avanti ho imparato molto interagendo: K.E. Atkinson, H. Hethcote, F. Potra, C. Grabbe, V. Didenko, W. Sprössig,
G. Chandler, D. Elliott, D. Paget, J.C. Mason, P. Graves-Morris,
A. Medvinsky, S. Petrovskii, H. Malchow, U.Feudel. Ringrazio infine i colleghi G. Allasia, C. Dagnino, B. Gabutti, G. Monegato;
V. Demichelis, R. Besenghi, I. Cravero, A. De Rossi, P. Lamberti,
D. Delbosco; e ancora P. Lepora, G. Pittaluta, L. Sacripante. Un
ringraziamento particolare per il supporto tecnico a G. Ghibò.
Torino, 31 gennaio 2009
10
Capitolo 1
CONCETTI
FONDAMENTALI
1.1
1.1.1
Introduzione
Obiettivi del corso
Il corso ha come scopo la costruzione di algoritmi per la risoluzione
di problemi concreti. Ciò implica lo studio di alcuni aspetti di base
1. La definizione di un metodo, che deve funzionare e comporta
l’analisi del problema che si deve risolvere.
2. L’analisi dell’errore insito nel metodo, che essendo approssimato, non può fornire la soluzione analitica; in questo contesto si deve dimostrare la convergenza di ciascun algoritmo.
3. Per risolvere uno stesso problema è possibile avere diverse
idee, che portano a metodologie differenti; è allora importante poter e saper confrontare i metodi sulla base di proprietà
quali velocità di esecuzione, legata al numero di operazioni da svolgere, occupazione di memoria, precisione del risultato. In generale non esiste il metodo migliore in assoluto,
ma tra i tanti disponibili nella situazione contingente occorre
determinare quello che meglio serve allo scopo.
11