Elementi di calcolo numerico: metodi e algoritmi



Documenti analoghi
Il Leasing per le Piccole e Medie Imprese

AICA Gruppo di sviluppo M2 EUCIP IT Administrator - Modulo 2 SISTEMI OPERATIVI

Introduzione alle tecnologie informatiche e ai sistemi informativi aziendali

ESERCIZI SVOLTI DI CALCOLO NUMERICO

collana di istruzione scientifica serie di informatica

collana di istruzione scientifica serie di automatica

Gabriella Bretti Paolo Emi lio Ricci. Breve corso di Analisi numerica

Metodi e analisi statistiche nella revisione dei bilanci

Dal catalogo McGraw-Hill: E. WATRALL, Dreamweaver MX Disegno e Tecnica HandBook K. IVENS, C. CARLBERG, Excel 2002 Uso avanzato HandBook M.

Calcolo Numerico Informatica Manolo Venturin A.A Guida all esame

Introduzione al Calcolo Scientifico

Programma del corso di: Laboratorio di Programmazione e Calcolo Corso di laurea in Matematica a.a Proff. B. Paternoster, D.

Il governo locale in Italia

Meccanica razionale per l ingegneria

Corso di laurea in Matematica Laboratorio di Programmazione e Calcolo Prof. A. Murli. Esercizi di riepilogo - LABORATORIO

Economia delle organizzazioni

Esercizi proposti di Analisi Numerica

Governo d impresa e analisi dei costi Corporate governance e cost accounting

Corso di Matematica per la Chimica

Raccolta di compiti degli appelli precedenti

Diario delle lezioni di Analisi Numerica laurea Magistrale in Statistica e Informatica A.A

collana di istruzione scientifica serie di matematica

Corso di laurea in Informatica Calcolo Numerico Prof.ssa L. D Amore 12 Dicembre 2008 Esercizi di riepilogo tipo prova d esame

Silvia Briccoli Bati, Stefano Galassi, Giovanna Ranocchiai. Elementi di calcolo automatico delle strutture intelaiatae

Autorevolezza personale e leader nella professione

Quali condizionisi si possono richiedere sulla funzione interpolante?

Programma del corso di: Calcolo Numerico Corso di laurea in Matematica a.a Prof. B.Paternoster

Capitolo 1. Esercizi a.a Esercizi. Esercizio 1.1 Dimostrare che il metodo iterativo

Alessio Russo Numeri, gruppi, polinomi. Un introduzione all Algebra Nuova edizione

APPUNTI DI MODELLI NUMERICI PER I CAMPI

Introduzione ai sistemi informatici

Introduzione alla meccanica strutturale

Derivazione numerica. Introduzione al calcolo numerico. Derivazione numerica (II) Derivazione numerica (III)

Prefazione alle precedenti edizioni

MATEMATICA. G. Bonola I. Forno E T EORIA SERCIZI. Il mio Quaderno INVALSI. S. Lattes & C. Editori SpA - Vietata la vendita e la diffusione

Indice. 5 Basi di Gröbner Ideali monomiali Basi di Gröbner... 22

CALCOLO NUMERICO INSEGNAMENTO 2015/2016 ANNO ACCADEMICO INFORMATICA L.T. FELICE IAVERNARO CORSO DI LAUREA IN DOCENTE

Introduzione al Calcolo Scientifico

Matematica Numerica Esercizi, Laboratori e Progetti

Raccolta di esercizi di Calcolo Numerico Prof. Michela Redivo Zaglia

Esercizi su algebra lineare, fattorizzazione LU e risoluzione di sistemi lineari

Corso di Calcolo Numerico

Raccolta di Esercizi d esame ( di Calcolo Numerico) Prof. Laura Pezza. Equazioni non lineari

Equazioni a derivate parziali Complementi ed esercizi

TEMPUS PECUNIA EST COLLANA DI MATEMATICA PER LE SCIENZE ECONOMICHE FINANZIARIE E AZIENDALI

MATEMATICA. G. Bonola I. Forno E T EORIA SERCIZI. Il mio Quaderno INVALSI. S. Lattes & C. Editori SpA - Vietata la vendita e la diffusione

Daniela Lera A.A

Corso di Analisi Numerica

Presentazione del corso di Calcolo Numerico, canale A Ing. dell Energia.

Esame di Calcolo Numerico per Informatica A.A. 2010/11: testo soluzioni Proff. S. De Marchi e M. R. Russo 12 luglio 2011

A.A Prof. R. Morandi

Registro di Matematica Applicata /18 - Dott.ssa L. Fermo 2

Corso di Calcolo Scientifico

La didattica universitaria

Esame di Calcolo Numerico per Informatica Prof. S. De Marchi Padova, 11 dicembre x k 1 x k 2

Elaborazione numerica dei segnali

E T MATEMATICA EORIA SERCIZI. Il mio Quaderno INVALSI G. Bonola I. Forno. esercizi effettivi! esercizi per il recupero

Esercizi Elaborato (versione )

APPUNTI DI ALGEBRA 1

Esame di Calcolo Numerico per Informatica A.A. 2010/11 Proff. S. De Marchi e M. R. Russo 20 giugno 2011

G. C. Barozzi - C. Corradi Matematica ( per le scienze economiche e statistiche. il Mulino

Esame di Calcolo Numerico per Informatica A.A. 2010/11 Proff. S. De Marchi e M. R. Russo 19 settembre 2011

Introduzione a Matlab (e al Calcolo Numerico)

CALCOLO NUMERICO. Rappresentazione virgola mobile (Floating Point)

Transcript:

Elementi di calcolo numerico: metodi e algoritmi

Maria Grazia Gasparo, Rossana Morandi Elementi di calcolo numerico: metodi e algoritmi McGraw-Hill Milano New York San Francisco Washington D.C. Auckland Bogotá Lisboa London Madrid Mexico City Montreal New Delhi San Juan Singapore Sydney Tokyo Toronto

Copyright 2011, 2008 The McGraw-Hill Companies, S.r.l. Publishing Group Italia Via Ripamonti, 89 20139 Milano McGraw-Hill A Division of the McGraw-Hill Companies I diritti di traduzione, di riproduzione, di memorizzazione elettronica e di adattamento totale e parziale con qualsiasi mezzo (compresi i microfilm e le copie fotostatiche) sono riservati per tutti i Paesi. Date le caratteristiche intrinseche di Internet, l Editore non è responsabile per eventuali variazioni negli indirizzi e nei contenuti dei siti Internet riportati. Nomi e marchi citati nel testo sono generalmente depositati o registrati dalle rispettive case produttrici. Publisher: Paolo Roncoroni Produzione: Donatella Giuliani Realizzazione print on demand: Ilovebooks, Fara Gera d Adda (Bergamo) Stampa: Prontostampa, Fara Gera d Adda (Bergamo) ISBN 978-88-386-6616-2 Printed in Italy

Nello infinito accadono cose che non accadono nello finito Galileo Galilei Solo perché alcuni di noi sanno leggere e scrivere e far di conto, questo non vuol dire che meritiamo di conquistare l Universo. Kurt Vonnegut, Jr.

Indice Prefazione xi 1 ALGORITMI 1 1.1 Introduzione... 1 1.2 Istruzioni fondamentali... 2 1.2.1 Istruzionielementari... 3 1.2.2 Istruzionidiscelta... 3 1.2.3 Istruzionidiripetizione... 4 1.3 Esempi... 5 1.4 Confronto fra algoritmi... 9 1.4.1 Costocomputazionale... 10 2 ARITMETICA DEL CALCOLATORE ELETTRONICO 13 2.1 Memorizzazione dei numeri..... 13 2.1.1 Numeriinteri... 14 2.1.2 Numerireali... 16 2.1.3 Errori di arrotondamento e precisione di macchina.... 20 2.2 Operazioni di macchina... 22 2.2.1 Un altra definizione della precisione di macchina..... 26 2.3 Propagazione degli errori. Condizionamento e stabilità... 27 2.3.1 Cancellazionenumerica... 31 2.3.2 Condizionamento di un problema.... 35 2.3.3 Stabilità di un algoritmo... 37 3 EQUAZIONI NON LINEARI 39 3.1 Introduzione... 39 3.2 Metodo di bisezione..... 41 3.2.1 Convergenza del metodo di bisezione... 42 3.3 MetododiNewton... 46 3.3.1 ConvergenzadelmetododiNewton... 48 3.3.2 VariantidelmetododiNewton... 53 3.4 Metodo delle secanti.... 55 3.5 Criteri di arresto... 58 3.5.1 Un criterio di salvaguardia... 59 3.5.2 Un criterio di arresto generale...... 59 3.5.3 Un criterio di arresto per il metodo di bisezione... 60

viii Indice 3.5.4 Un criterio di arresto per metodi a convergenza almeno superlineare..... 61 3.6 Algoritmi.... 62 3.6.1 Algoritmo di bisezione.... 63 3.6.2 Algoritmo di Newton..... 64 3.6.3 Algoritmo delle secanti.... 66 3.7 Cenno alla risoluzione di sistemi non lineari (*)... 66 4 SISTEMI LINEARI 71 4.1 Introduzione... 71 4.2 Condizionamento dei sistemi lineari... 72 4.2.1 Analisiaposteriori... 77 4.3 Risoluzione di sistemi triangolari... 78 4.4 MetododieliminazionediGauss... 80 4.4.1 Strategiadelpivotingparziale... 83 4.4.2 Algoritmi...... 86 4.4.3 ErrorenelmetododiGaussconpivotingparziale... 90 4.5 Metodo di Householder (*)... 92 4.5.1 Matrici di Householder.... 93 4.5.2 Riduzione di una matrice in forma triangolare mediante matrici di Householder.... 97 4.5.3 Algoritmi...... 98 4.5.4 ErrorenelmetododiHouseholder...100 4.6 Metodiiterativistazionari...101 4.6.1 Metodo di Jacobi...103 4.6.2 MetododiGauss-Seidel...105 4.6.3 Convergenzadeimetodiiterativistazionari...106 4.6.4 Criteri di arresto...108 4.6.5 Algoritmi ed esempi.....110 4.7 Metodi per sistemi con matrice dei coefficienti simmetrica definita positiva (*)...113 4.7.1 MetododiCholesky...113 4.7.2 Metododelgradienteconiugato...116 5 APPROSSIMAZIONE DI DATI E FUNZIONI 125 5.1 Introduzione...125 5.2 Interpolazionepolinomiale...129 5.2.1 Esistenza e unicità del polinomio interpolante....... 129 5.2.2 Polinomio interpolante nella formulazione di Lagrange.. 132 5.2.3 Condizionamento del problema di interpolazione polinomiale...135 5.2.4 Polinomio interpolante nella formulazione di Newton... 137 5.2.5 Algoritmi......142 5.2.6 Errore nell interpolazione polinomiale...143 5.3 Interpolazione mediante funzioni spline (*)...148 5.3.1 Funzionispline...149

Indice ix 5.3.2 Funzionisplineinterpolanti...151 5.3.3 Splines cubiche interpolanti nei nodi...155 5.3.4 Algoritmi per il calcolo di splines cubiche interpolanti nei nodi...160 5.4 Miglioreapprossimazioneaiminimiquadrati...161 5.4.1 Rettadimiglioreapprossimazione...163 5.4.2 Problemadeiminimiquadratilineare...166 5.4.3 Metodo di Householder per il problema dei minimi quadrati lineari (*)...168 5.5 Calcolo numerico di integrali definiti...169 5.5.1 Formulediquadraturainterpolatorie...169 5.5.2 Formulediquadraturacomposite...173 5.5.3 EstrapolazionediRichardson...176 A Appendice: RICHIAMI DI ALGEBRA LINEARE 181 Bibliografia 191

Prefazione Il Calcolo numerico, o Analisi numerica, è la disciplina che si occupa della cosiddetta risoluzione numerica di problemi di natura matematica, ovvero della loro risoluzione mediante il calcolatore elettronico. La necessità di ricorrere al calcolatore può nascere per due motivi: perché non esistono formule o procedimenti espliciti per risolvere il problema o perché i dati e le variabili in gioco sono troppi per poter essere facilmente gestiti a mano. Un esempio della prima situazione è rappresentato dalle equazioni non lineari: tutti sanno risolvere l equazione 3x 2 +5x 2=0, ma nessuno conosce una formula per calcolare le soluzioni di e x cos(x) sin(x) =3. Per quanto riguarda la seconda situazione, basta pensare ad un sistema lineare: se si tratta di 2 o 3 equazioni in altrettante incognite non è difficile fare i conti con carta e penna, ma se le equazioni sono 10, 100 o 1000 bisogna necessariamente usare uno strumento più veloce. Una volta che un problema è stato correttamente formulato, si deve individuare un metodo per risolverlo numericamente, ovvero un metodo che, realizzato sul calcolatore, fornisce la soluzione del problema o una sua approssimazione. Questi metodi sono detti metodi numerici. Affinché un metodo numerico possa essere usato in pratica, esso deve essere descritto tramite un algoritmo, che è una sequenza di istruzioni non ambigue che si conclude sicuramente entro un tempo finito. Lo studio dei metodi numerici e la formulazione dei corrispondenti algoritmi rientrano fra le prerogative del Calcolo numerico. Spesso si possono individuare diversi metodi numerici per risolvere uno stesso problema. È ancora compito del Calcolo numerico confrontarli, fondamentalmente in base a due criteri: il costo, ovvero la quantità di risorse di memoria e di tempo che ciascuno di essi richiede, e la sensibilità a tutti i possibili errori che possono influenzare il risultato. Mentre il primo aspetto è fortemente dipendente dal tipo di calcolatore che si ha a disposizione, il secondo aspetto è in qualche modo oggettivo e particolarmente importante dal momento che il calcolatore stesso, qualunque esso sia, è una fonte certa di errore: a causa delle sue caratteristiche fisiche, esso genera automaticamente errori sia nella memorizzazione dei numeri che nell esecuzione delle operazioni aritmetiche, tanto che l aritmetica del calcolatore ha un nome specifico (aritmetica floating point) per distinguerla dall aritmetica che si usa abitualmente in matematica, in cui virtualmente si possono eseguire algoritmi anche complessi senza introdurre errori. I primi due capitoli del libro sono dedicati rispettivamente agli algoritmi e all aritmetica floating point. Nei capitoli successivi si trattano metodi numerici per

xii Prefazione la risoluzione di alcune classi di problemi: equazioni non lineari, sistemi lineari e approssimazione di dati e funzioni. Le caratteristiche più importanti dei metodi numerici presentati sono illustrate da numerosi esempi, con figure e tabelle. I risultati numerici che riportiamo nelle tabelle sono stati ottenuti realizzando gli algoritmi del testo in linguaggio FORTRAN e/o in linguaggio MATLAB. Le note storiche che accompagnano il testo sono tratte spesso da Internet e, quando possibile, verificate in articoli e libri. Citiamo a questo proposito i due libri molto interessanti di J.L. Chabert [8] e H.H. Goldstine [19] di storia degli algoritmi e dell Analisi numerica. Il testo è rivolto principalmente a studenti dei corsi di base di Calcolo numerico delle Facoltà di Ingegneria e Scienze matematiche, fisiche e naturali. Gli argomenti sono trattati in modo da richiedere soltanto prerequisiti elementari di Analisi matematica e Geometria. Alcune nozioni di Algebra lineare sono comunque raccolte in Appendice. Abbiamo incluso anche alcuni argomenti che richiedono un po più di maturità matematica e possono essere eventualmente omessi in un contesto di introduzione al Calcolo numerico. Questi argomenti sono contrassegnati nell indice da un asterisco (*). Nonostante tutta l attenzione che abbiamo messo nella stesura del libro e le innumerevoli riletture, siamo sicure che alcuni errori, speriamo solo di stampa, sono rimasti. Ce ne assumiamo tutta la responsabilità e siamo grate fin da ora a chiunque ci aiuterà ad individuarli. Desideriamo ringraziare molte persone: Aldo e Ferruccio che tanti anni fa ci hanno fatto appassionare al Calcolo numerico; tutti gli studenti che hanno seguito i nostri corsi e ci hanno fatto capire cosa insegnare e come; i nostri consorti che hanno dimostrato un infinita pazienza accettando di buon grado che lavorassimo perfino durante le vacanze; un grazie speciale a Linda e Lorenzo che, avendo studiato Calcolo numerico senza un libro di testo di riferimento, hanno spinto perché questo libro fosse finalmente scritto. Infine, vogliamo ringraziare la nostra pluridecennale amicizia in virtù della quale il lavoro non è stato solo faticoso ma anche divertente. Come diceva Aristotele, si decide in fretta di essere amici, ma l amicizia è un frutto chematura lentamente. Firenze, gennaio 2008 Maria Grazia Gasparo e Rossana Morandi