Fondamenti dell'analisi numerica. Risoluzione di sistemi lineari. Approssimazione delle soluzioni di equazioni e sistemi di equazioni non lineari. Interpolazione e integrazione numerica. Equazioni differenziali ordinarie: metodi a passo singolo per problemi ai valori iniziali, metodi alle differenze finite per problemi ai limiti.
Apprendimento del linguaggio Matlab (solo per gli studenti di Analisi Numerica e Programmazione (CIVILE) e Metodi numerici per l'ingegneria (AMBIENTE)).
M.G. Gasparo, R. Morandi, Elementi di Calcolo Numerico, McGraw Hill, 2008.
A.Quarteroni, R. Sacco, F. Saleri : Matematica Numerica. Springer-Verlag Italia,1998
W. Palm III : Matlab7 per l'Ingegneria e le scienze. Mc-Graw Hill, 2005.
C.F. Van Loan Introduction to Scientific Computing, Prentice Hall
Obiettivi Formativi
Fornire una conoscenza operativa dei procedimenti più comunemente usati per risolvere classi di problemi di largo interesse applicativo.
Inoltre, limitatamente ai corsi di Analisi Numerica e Programmazione (CIVILE) e Metodi numerici per l'ingegneria (AMBIENTE), vengono forniti gli elementi essenziali del supporto software Matlab, sia come ambiente di lavoro che come evoluto linguaggio di programmazione
Prerequisiti
Elementi di algebra lineare: vettori, matrici, determinanti, soluzione di sistemi lineari algebrici. Elementi di analisi matematica: successioni e loro convergenza, limiti e continuità delle funzioni reali, concetti fondamentali del calcolo differenziale per funzioni di una e più variabili, sviluppo accorciato di Taylor.
Metodi Didattici
Il corso si articola in lezioni ed esercitazioni . Lezioni ed esercitazioni sono strettamente correlate e ugualmente fondamentali per la conoscenza dei metodi e la stesura degli algoritmi. Limitatamente ai corsi di Analisi Numerica e Programmazione (CIVILE) e Metodi numerici per l'ingegneria (AMBIENTE) vengono svolte esercitazioni in laboratorio informatico.
Altre Informazioni
Il corso di Analisi Numerica (Ingegneria Edile) mutua 6 crediti dal corso di Metodi Numerici per l'Ingegneria (Ambiente). Il corso di Analisi Numerica e Programmazione (Ingegneria civile) mutua dal corso di Metodi Numerici per l'Ingegneria (Ambiente).
Modalità di verifica apprendimento
Prova scritta (voto minimo 18/30) e colloquio orale (facoltativo)
Programma del corso
Concetti fondamentali - Buona posizione e condizionamento di un problema, stabilità e convergenza di un metodo numerico, sorgenti di errore nei modelli computazionali. Algoritmi: definizione, istruzioni fondamentali, costo computazionale, accuratezza, affidabilità, efficienza. Aritmetica in precisione finita: rappresentazione floating-point dei numeri, precisione di macchina, operazioni aritmetiche in precisione finita, errori di arrotondamento.
Approssimazione di funzioni e dati - Interpolazione polinomiale: posizione del problema. Polinomio interpolante nella forma di Lagrange. Convergenza e condizionamento. Interpolazione composita: funzioni spline monodimensionali, spline cubiche interpolatorie. Data fitting: posizione del problema e tecnica dei minimi quadrati.
Integrazione e derivazione numerica - Calcolo approssimato di integrali: la regola dei trapezi e quella di Cavalieri-Simpson; formule basate su interpolazione polinomiale a tratti; estrapolazione di Richardson. Approssimazione delle derivate di una funzione: metodi alle differenze finite classiche, applicazioni.
Problemi differenziali - Richiami su equazioni e sistemi di equazioni differenziali ordinarie; problemi ai valori iniziali e problemi ai limiti: soluzione analitica e soluzione numerica. Problemi di Cauchy: metodi a passo singolo di Runge-Kutta espliciti; errore di troncamento locale; metodi a passo e ordine variabile. Problemi ai limiti: metodi alle differenze finite per problemi lineari e non lineari; schemi alle differenze centrali e metodi upwind; convergenza e aspetti computazionali. Equazioni alle derivate parziali: introduzione e classificazione delle equazioni lineari del secondo ordine; cenni sui metodi alle differenze finite.
Sistemi lineari - Numero di condizionamento di una matrice. Matrici di permutazione e soluzione di sistemi triangolari; fattorizzazione LU e utilità della tecnica pivoting; fattorizzazione di Cholesky; analisi degli errori.
Equazioni e sistemi di equazioni non lineari - Caso scalare: individuazione grafica delle radici. Metodi di approssimazione numerica: bisezione, tangenti; interpretazione geometrica, convergenza, criteri di arresto, algoritmi e applicazioni. Caso vettoriale: il metodo di Newton e Newton stazionario, convergenza e criteri di arresto.
Limitatamente ai corsi di Analisi Numerica e Programmazione (CIVILE) e Metodi numerici per l'ingegneria (AMBIENTE):
Ambiente di calcolo Matlab - Regole generali di utilizzo: comandi di avvio, le variabili, operazioni elementari. Rappresentazione e salvataggio dei dati. Regole sintattiche, operazioni e funzioni matematiche di base, creazione e gestione di vettori e matrici. Programmare con Matlab: la frase di assegnazione, operatori relazionali, operatori logici e funzioni, istruzioni di scelta e di ripetizione (cicli). Funzioni definite dall'utente: scripts e functions. Funzioni grafiche e funzioni disponibili in Matlab relative agli argomenti trattati nel corso: definizione, utilizzo e applicazioni.