Analisi Numerica e Programmazione (A.A.2010/11) Il corso si

Analisi Numerica e Programmazione (A.A.2010/11)
Il corso si articola in:
1. Lezioni sugli argomenti trattati (v. Programma del Corso );
2. Esercitazioni e verifica numerica (in ambiente Matlab) dei risultati illustrati durante
le lezioni.
Lezioni ed esercitazioni sono strettamente correlate e fondamentali.
L’esame consiste in una prova orale nella quale vengono verificate le capacità acquisite.
Prima dell’esame deve essere presentata una relazione scritta sulla risoluzione numerica
di almeno due problemi uno dei quali viene proposto dal docente e l’altro (gli altri) a
scelta libera dello studente (v. Modalità di verifica dell’apprendimento)
Programma del corso
Richiami di algebra lineare e nozioni introduttive - Norme di vettori e matrici,
prodotto scalare, autovalori e autovettori, matrici definite positive, a dominanza
diagonale, triangolari, tridiagonali. Algoritmi: istruzioni fondamentali ed esempi.
Confronto fra algoritmi: costo computazionale, efficienza. Aritmetica in virgola mobile:
memorizzazione dei numeri in un elaboratore elettronico, errori di arrotondamento,
precisione di macchina. Operazioni aritmetiche in precisione finita. Operazioni fra
matrici. Propagazione degli errori, stabilità di un algoritmo e condizionamento di un
problema.
Ambiente Matlab - Regole generali di utilizzo: comandi di avvio, le variabili, operazioni
elementari. Regole sintattiche e funzioni matematiche di base. Rappresentazione e
salvataggio dei dati. Creazione e gestione di vettori e matrici. Programmare con Matlab:
operatori relazionali, operatori logici e funzioni. Istruzioni condizionali. Cicli. Funzioni
definite dall'utente. Funzioni grafiche principali.
Sistemi lineari - Generalità sui sistemi lineari e condizionamento. Metodi diretti: matrici
di permutazione e soluzione di sistemi triangolari. Fattorizzazione LU e utilità della
tecnica pivoting. Fattorizzazione di Cholesky. Risoluzione di sistemi con matrici sparse:
il caso di sistemi a banda. L’operatore Matlab backslash. Analisi degli errori. Metodi
iterativi: costruzione di metodi iterativi lineari, convergenza criteri di arresto. Metodi di
Jacobi, Gauss-Seidel e rilassamento. Convergenza e criteri di arresto. Algoritmi ed
esempi
Equazioni e sistemi non lineari - Metodo della bisezione, metodo di Newton e sue
varianti per la ricerca di zeri di funzioni. Estensione alla risoluzione di sistemi non
lineari. Convergenza e criteri di arresto.
Approssimazione di funzioni e dati - Interpolazione polinomiale: polinomio interpolante
di Lagrange, interpolazione polinomiale a tratti, spline cubica. Approssimazione di dati
nel senso dei minimi quadrati lineari.
Integrazione e derivazione numerica - Calcolo approssimato di integrali: la regola dei
trapezi e di Simpson. Integrazione di dati discreti. Approssimazione delle derivate di
una funzione: metodi alle differenze finite classiche.
Problemi differenziali - Equazioni differenziali ordinarie: problemi ai valori iniziali e
problemi ai limiti, soluzione analitica e soluzione numerica. Metodi a passo singolo per
problemi ai valori iniziali: metodo di Eulero e metodi di Runge-Kutta; errore di
troncamento locale; metodi a passo e ordine variabile. Metodi alle differenze finite e
metodi upwind per problemi ai limiti lineari. I risolutori Matlab di equazioni differenziali
ordinarie. Equazioni alle derivate parziali: introduzione e classificazione delle equazioni
lineari del secondo ordine . Cenni sui metodi alle differenze finite: rappresentazione
matriciale e stabilità numerica.
Modalità di verifica dell'apprendimento
Prova orale sugli argomenti del programma e discussione dei risultati ottenuti negli
elaborati Matlab.
Il primo giorno dell’appello viene fissato il calendario delle prove orali e gli studenti che
intendono sostenere l’esame dovranno presentare una relazione scritta sugli elaborati
realizzati in ambiente Matlab. Nella relazione saranno illustrati, motivandoli, i risultati
ottenuti. La valutazione della relazione concorrerà alla determinazione del voto finale.
Testi consigliati
W. Palm III : Matlab7 per l'Ingegneria e le scienze. Mc-Graw Hill, 2005.
C.B. Moler : Numerical computing with Matlab, Published by the Society for Industrial
and Applied Mathematics (SIAM), 2004 Edizione web :
http://www.mathworks.com/moler
T.A. Driscoll : Learning Matlab, Published by the Society for Industrial and Applied
Mathematics (SIAM), 2009
A.Quarteroni, R. Sacco, F. Saleri : Matematica Numerica. Springer-Verlag Italia,1998