A. Quarteroni • R. Sacco • R Saleri MATEMATICA NUMERICA Springer Indice Prefazione XIII 1. Elementi di analisi delle matrici 1.1 Spazi vettoriali 1.2 Matrici y 1.3 Operazioni su matrici ' 1.3.1 Inversa di una matrice 1.3.2 Matrici e trasformazioni lineari 1.3.3 Operazioni sulle matrici partizionate a blocchi 1.4 Traccia e determinante .' 1.5 Rango e nucleo di una matrice 1.6 Matrici particolari 1.6.1 Matrici diagonali a blocchi 1.6.2 Matrici trapezoidali e triangolari 1.6.3 Matrici a banda 1.7 Autovalori e autovettori 1.8 Trasformazioni per similitudine 1.9 La decomposizione in valori singolari (SVD) 1.10 Prodotto scalare tra vettori e norme vettoriali 1.11 Norme matriciali 1.11.1 Relazione tra le norme ed il raggio spettrale di una matrice 1.11.2 Successioni e serie di matrici 1.12 Matrici definite positive, a dominanza diagonale e M-matrici . . 1.13 Esercizi 1 1 3 4 7 8 8 9 10 11 11 12 12 13 14 17 18 22 27 28 29 32 2. Stabilità, condizionamento e analisi dell'errore 2.1 Buona posizione e numero di condizionamento di un problema . 2.2 Stabilità di metodi numerici 2.2.1 Le relazioni tra stabilità e convergenza 2.3 Analisi a priori ed a posteriori 35 35 39 42 43 VI Indice 2.4 2.5 Sorgenti di errore nei modelli computazionali Rappresentazione dei numeri 2.5.1 II sistema posizionale 2.5.2_ II sistema dei numeri floating-point 2.5.3 Distribuzione dei numeri floating-point 2.5.4 Aritmetica IEC/IEEE 2.5.5 Arrotondamento di un numero reale nella sua rappresentazione di macchina 2.5.6 Operazioni di macchina effettuate in virgola mobile 2.5.7 Operazioni floating-point fra matrici 2.6 Test d'accuratezza 2.7 Esercizi 3. 44 46 46 48 50 50 52 53 56 57 58 Risoluzione di sistemi lineari con metodi diretti 61 3.1 Analisi di stabilità per sistemi lineari 62 3.1.1 II numero di condizionamento di una matrice 62 3.1.2 Analisi a priori in avanti 64 3.1.3 Analisi a priori all'indietro 67 3.1.4 Analisi a posteriori 68 3.2 Risoluzione di sistemi triangolari 68 3.2.1 Aspetti implementativi dei metodi delle sostituzioni . . . . 69 3.2.2 Analisi degli errori di arrotondamento 71 3.2.3 Calcolo dell'inversa di una matrice triangolare 72 3.3 II metodo di eliminazione gaussiana (MEG) e la fattorizzazione LU 73 3.3.1 II MEG interpretato come metodo di fattorizzazione . . . . 76 3.3.2 L'effetto degli errori di arrotondamento 80 3.3.3 Aspetti implementativi della fattorizzazione LU 80 3.3.4 Forme compatte di fattorizzazione 82 3.4 Altri tipi di fattorizzazione 83 3.4.1 Fattorizzazione LDM T 83 -- ' 3.4.2 Matrici simmetriche e definite positive: fattorizzazione di Cholesky 84 3.4.3 Matrici rettangolari: fattorizzazione QR 86 3.5 Pivoting 89 3.6 II calcolo dell'inversa 92 3.7 Sistemi a banda 93 3.7.1 Matrici tridiagonali 94 3.7.2 Aspetti computazionali 95 3.8 Sistemi a blocchi 97 3.8.1 Fattorizzazione LU a blocchi 97 3.8.2 Inversa di una matrice a blocchi 98 3.8.3 Sistemi tridiagonali a blocchi 99 3.9 Matrici sparse 100 3.9.1 L'algoritmo di Cuthill-McKee 102 Indice 4. VII 3.9.2 Decomposizione in sottostrutture 3.9.3 Nested dissection 3.10 Accuratezza della soluzione generata dal MEG 3.11 Calcolo approssimato di K00(A) 3.12 Aumento dell'accuratezza 3.12.1 Scaling 3.12.2 Raffinamento iterativo 3.13 Sistemi indeterminati 3.13.1 Sistemi sovradeterminati 3.13.2 Sistemi sottodeterminati 3.14 Applicazioni 3.14.1 Analisi di una struttura iperstatica 3.14.2 Regolarizzazione di una griglia di discretizzazione 3.15 Esercizi 103 106 106 110 Ili Ili 112 113 113 116 117 117 119 122 Risoluzione di sistemi lineari con metodi iterativi 4.1 Generalità 4.2 Costruzione di metodi iterativi lineari 4.2.1 I metodi di Jacobi, di Gauss-Seidel e del rilassamento . . . 4.2.2 Risultati di convergenza per i metodi di Jacobi e di GaussSeidel 4.2.3 Risultati di convergenza per il metodo di rilassamento . . . 4.2.4 II caso di una matrice a blocchi 4.2.5 Forma simmetrica dei metodi di Gauss-Seidel e di SOR . . 4.2.6 Aspetti implementativi 4.3 Metodi iterativi stazionari e non stazionari 4.3.1 Analisi di convergenza per i metodi stazionari 4.3.2 Matrici di precondizionamento 4.3.3 II metodo del gradiente 4.3.4 II metodo del gradiente coniugato 4.3.4.1 II metodo del gradiente coniugato, precondizionato 4.4 Metodi di tipo gradiente per sistemi non simmetrici 4.5 Criteri di arresto 4.5.1 Un criterio basato sul controllo dell'incremento 4.5.2 Un criterio d'arresto basato sul controllo del residuo . . . . 4.6 Applicazioni 4.6.1 Analisi di urta .rete elettrica di resistori 4.6.2 Studio con differenze finite della flessione di una trave . . . 4.7 Esercizi 125 125 128 129 130 133 134 134 135 137 138 141 145 148 152 153 158 159 161 162 162 164 166 Vili Indice 5. Approssimazione di autovalori e autovettori 5.1 Localizzazione geometrica degli autovalori 5.2 Analisi di stabilità e condizionamento 5.2.1 Stime a priori 5.2.2 Stime a posteriori 5.3 II metodo delle potenze 5.3.1 Calcolo dell'autovalore di modulo massimo 5.3.2 Calcolo dell'autovalore di modulo minimo 5.3.3 Aspetti computazionali e di implementazione 5.4 Metodi basati sulle iterazioni QR 5.5 II metodo QR 5.6 II metodo QR per matrici in forma di Hessenberg 5.6.1 Matrici di trasformazione di Householder e di Givens . . . . 5.6.2 Riduzione di una matrice in forma di Hessenberg 5.6.3 Fattorizzazione QR di una matrice in forma di Hessenberg . 5.6.4 La tecnica dello shift 5.6.5 Aspetti di implementazione delle matrici di trasformazione . 5.7 Metodi per il calcolo di autovalori di matrici simmetriche . . . . 5.7.1 II metodo di Jacobi 5.7.2 II metodo delle successioni di Sturm 5.8 II metodo di Lanczos 5.9 Applicazioni 5.9.1 Calcolo delle frequenze naturali di una rete RLC 5.9.2 Determinazione del carico critico di una trave 5.10 Esercizi 169 169 172 173 176 178 178 181 181 185 186 188 189 191 193 194 197 199 199 202 205 207 207 209 211 6. Ricerca di radici di equazioni non lineari 6.1 Condizionamento di un'equazione non lineare 6.2 Un approccio geometrico per la ricerca delle radici 6.2.1 II metodo di bisezione 6.2.2 I metodi delle corde, secanti, Regula Falsi e Newton . . . . 6.2.3 II metodo di Dekker-Brent 6.3 II metodo delle iterazioni di punto fisso 6.3.1 Risultati di convergenza per alcuni metodi di punto fisso . . 6.4 Radici di polinomi algebrici 6.4.1 II metodo di Horner e la deflazione 6.4.2 II metodo di Newton-Horner 6.4.3 II metodo di Muller 6.5 Criteri d'arresto 6.6 Tecniche di post-processing per metodi iterativi 6.6.1 La tecnica di accelerazione di Aitken 6.6.2 Tecniche per il trattamento di radici multiple 6.7 Applicazioni 6.7.1 Analisi dell'equazione di stato di un gas reale 215 216 218 219 221 226 227 230 232 232 234 237 240 242 242 245 247 247 Indice 6.8 7. 8. 6.7.2 Analisi di un circuito elettrico non lineare Esercizi Metodi per sistemi non lineari e problemi di ottimizzazione 7.1 Risoluzione di sistemi di equazioni non lineari 7.1.1 II metodo di Newton e le sue varianti 7.1.2 Metodi di tipo secanti 7.1.3 Metodi di punto fisso 7.2 Ottimizzazione non vincolata 7.2.1 Metodi di tipo gradiente: caso generale 7.2.2 Metodi di tipo gradiente per funzioni quadratiche 7.2.3 Metodi di tipo Newton per la minimizzazione di funzioni . . 7.2.4 Metodi quasi-Newton 7.2.5 Metodi di tipo secanti 7.3 Ottimizzazione vincolata 7.3.1 II metodo di penalizzazione 7.3.2 II metodo dei moltiplicatori di Lagrange . .,7.4 Applicazioni 7.4.1 Risoluzione di un sistema non lineare nella simulazione di dispositivi a semiconduttore 7.4.2 Regolarizzazione di una griglia di discretizzazione con una procedura non lineare 7.5 Esercizi IX 248 250 253 254 255 260 262 264 266 267 269 270 274 276 278 279 281 281 284 286 Approssimazione polinomiale di funzioni e dati 289 8.1 Interpolazione polinomiale 289 8.1.1 L'errore di interpolazione 291 8.1.2 Limiti dell'interpolazione polinomiale su nodi equispaziati e controesempio di Runge 292 8.1.3 Stabilità dell'interpolazione polinomiale 293 8.2 Forma di Newton del polinomio interpolatore 294 8.2.1 Alcune proprietà delle differenze divise di Newton 296 8.2.2 L'errore di interpolazione usando le differenze divise . . . . 299 8.3 Interpolazione composita di Lagrange 299 8.4 Interpolazione di Hermite 301 8.5 L'estensione al caso bidimensionale 302 8.5.1 Interpolazione polinomiale semplice • 302 8.5.2 Interpolazione polinomiale composita 303 8.6 Funzioni spiine monodimensionali (univariate) 306 8.6.1 Spiine cubiche interpolatorie 307 8.6.2 B-spline. 311 8.7 Curve spiine di tipo parametrico 316 8.7.1 Curve di Bézier e B-spline parametriche 318 8.8 Applicazioni 321 Indice 8.8.1 Studio con elementi finiti della flessione di una trave incastrata322 8.8.2 Ricostruzione geometriche da TAC 325 8.9 Esercizi 327 9. Integrazione numerica 9.1 Formule di quadratura interpolatorie 9.1.1 La formula del punto medio o del rettangolo 9.1.2 La formula del trapezio 9.1.3 La formula di Cavalieri-Simpson 9.2 Formule di Newton-Cotes 9.3 Formule di Newton-Cotes composite 9.4 Formule di quadratura di Hermite 9.5 L'estrapolazione di Richardson 9.5.1 II metodo di integrazione di Romberg 9.6 Integrazione automatica 9.6.1 Algoritmi di integrazione non adattivi 9.6.2 Algoritmi di integrazione adattivi : 9.7 Integrali generalizzati (o impropri) 9.7.1 Integrali di funzioni con discontinuità di prima specie . . . . 9.7.2 Integrali di funzioni con discontinuità di seconda specie . . 9.7.3 Integrali su intervalli illimitati ,. . 9.8 Integrazione numerica in più dimensioni 9.8.1 II metodo della formula di riduzione 9.8.2 Quadrature composite bidimensionali 9.8.3 Metodi di integrazione di tipo Monte Carlo 9.9 Applicazioni 9.9.1 Calcolo della superficie di un ellissoide 9.9.2 Calcolo della forza del vento sull'albero di una barca . . . . 9.10 Esercizi 329 330 330 332 334 336 341 344 346 348 349 350 352 356 357 357 360 361 361 363 366 367 368 369 371 10. I polinomi ortogonali nella teoria dell'approssimazione 10.1 Approssimazione di funzioni con serie generalizzate di Fourier . . 10.1.1 I polinomi di Chebyshev . . . : 10.1.2 I polinomi di Legendre 10.1.3 I polinomi di Jacobi 10.2 Integrazione ed interpolazione Gaussiana 10.3 Integrazione ed interpolazione di Chebyshev 10.4 Integrazione ed interpolazione di Legendre 10.5 Integrazione Gaussiana su intervalli illimitati 10.6 Programmi per l'implementazione delle formule Gaussiane . . . . 10.7 Approssimazione-di una funzione nel senso dei minimi quadrati . 10.7.1 I minimi quadrati discreti 10.8 II polinomio di migliore approssimazione 10.9 I polinomi trigonometrici di Fourier 375 375 377 378 379 379 383 386 387 389 391 391 393 394 Indice 10.10 La trasformata rapida di Fourier 10.11 Approssimazione delle derivate di una funzione 10.11.1 Metodi alle differenze finite classiche 10.11.2 Differenze finite compatte 10.11.3 La derivata pseudo-spettrale 10.12 Applicazioni 10.12.1 Calcolo della radiazione da corpo nero 10.12.2 Risoluzione dell'equazione di Schrodinger 10.13 Esercizi XI 398 401 402 403 406 408 408 410 412 11. Risoluzione numerica di equazioni differenziali ordinarie 415 11.1 II problema di Cauchy 415 11.2 Metodi numerici ad un passo 418 11.3 Analisi dei metodi ad un passo 420 11.3.1 La zero-stabilità 421 11.3.2 Analisi di convergenza 423 11.3.3 L'assoluta stabilità 426 11.4 Le equazioni alle differenze :' 429 11.5 I metodi a più passi (o multistep) 433 11.5.1 I metodi di Adams 435 11.5.2 I metodi BDF 437 11.6 Analisi dei metodi multistep 437 11.6.1 Consistenza 437 11.6.2 Le condizioni delle radici 439 11.6.3 Analisi di stabilità e di convergenza per i metodi multistep 440 11.6.4 L'assoluta stabilità nei metodi multistep 444 11.7 I metodi predictor-corrector 448 11.8 Metodi di tipo Runge-Kutta 450 11.8.1 Derivazione di un metodo RK esplicito 453 11.8.2 Adattività del passo per i metodi RK 454 11.8.3 Metodi RK impliciti 456 11.8.4 Regioni di assoluta stabilità per i metodi RK 458 11.9 II caso dei sistemi di equazioni differenziali ordinarie 459 11.10 I problemi stiff 461 11.11 Applicazioni 463 11.11.1 Studio del movimento di un pendolo senza attrito 464 11.11.2 Un modello semplificato della turbolenza atmosferica . . . . 465 11.12 Esercizi 467 Bibliografìa 471 Indice dei programmi MATLAB 481 Indice analitico 483