CALCOLO NUMERICO
Anno accademico 2024/2025 - Docente: Giovanni RUSSORisultati di apprendimento attesi
Il corso rappresenta una breve introduzione ai metodi numerici per la risoluzione di problemi di base. Indirizzato a studenti del secondo anno di Matematica, ha l'obiettivo di presentare alcune idee fondamentali dell'arte dell'approssimazione numerica, quali accuratezza, robustezza ed efficienza dei metodi, e le tecniche fondamentali per la soluzione di sistemi lineari, interpolazione e approssimazione di funzioni, soluzione di equazioni non lineari e calcolo di integrali. Durante il corso viene fornita un'introduzione all'uso di Matlab per il calcolo numerico. Gli aspetti implementativi dei metodi saranno illustrati in parte durante il corso, ed in parte durante l'attività integrativa pomeridiana (tutorato) legata al corso.
In maggiore dettaglio, vengono considerati i seguenti punti:
Conoscenza e capacità di comprensione (knowledge and understanding): uno degli obiettivi fondamentali del corso è l'apprendimento delle metodologie di base per la risoluzione numerica di alcuni problemi di matematica quali la soluzione di sistemi lineari, l'approssimazione di dati e funzioni, la soluzione di equazioni non lineari, l'approssimazione di integrali. Si mira ad una comprensione attiva e critica della disciplina, non limitata al mero apprendimento delle metodologie, ma anche e soprattutto ad una profonda comprensione delle idee di base che permeano trasversalmente le tecniche relative ai vari problemi considerati.
Capacità di applicare conoscenza e comprensione (applying knowledge and understanding): gli strumenti computazionali appresi dovranno essere padroneggiati ed applicati a problemi concreti. La verifica dell'apprendimento e della comprensione delle metodologie, infatti, si può effettuare solamente mediante l'applicazione pratica delle stesse a svariati problemi che vengono in parte assegnati per casa ed in parte svolti in classe.
Autonomia di giudizio (making judgments): gli studenti devono essere in grado di confrontare i diversi metodi appresi durante il corso, e capire quale sia il più indicato per svolgere un particolare problema, tenendo presente sia le caratteristiche del problema stesso (o della classe di problemi che si intende affrontare) sia le risorse disponibili o che si decide di impiegare (problema della efficienza computazionale)
Abilità comunicative (communication skills): i ragazzi sono invitati ad esporre con chiarezza gli argomenti trattati durante il colloquio orale, e ad illustrare esplicitamente i vari passaggi nella soluzione dei problemi. Anche a livello di programmazione, la chiarezza della scrittura dei codici è tenuta in conto nella valutazione degli elaborati.
Capacità di apprendimento (learning skills): l'apprendimento viene stimolato già durante le lezioni frontali mediante domande dirette da parte del docente. Tali domande hanno il triplice scopo di richiamare l'attenzione del discente, costringerlo a pensare rapidamente ad una risposta, e sondare il livello della classe, in modo da poter meglio regolare i ritmi della esposizione del docente, o da identificare ed affrontare insieme eventuali criticità.
Modalità di svolgimento dell'insegnamento
L'attività didattica consiste principalmente in lezioni frontali tenute dal docente, durante le quali vengono presentati gli argomenti del corso.
Le lezioni saranno in presenza.
Durante le lezioni verranno esposti gli argomenti del corso. Durante le ore di lezione il docente illustrerà implementazioni in Matlab di alcuni dei metodi esposti a lezione. Il corso è complementato da esercitazioni ed attività integrative di tutorato.
Durante le esercitazioni verranno svolti esercizi simili a quelli che saranno proposti nella prova pratica, ed eventuali complementi alle lezioni.
Si invitano gli studenti a chiarire eventuali dubbi durante la lezione o durante l'orario di ricevimento. Meglio chiarire i dubbi prima dell'esame piuttosto che dopo.
Prerequisiti richiesti
Viene richiesta una conoscenza dei concetti elementari di analisi (numeri reali e complessi, limiti, derivate e integrali di funzioni di una variabile, funzioni di più variabili, serie) e di algebra lineare (spazi vettoriali, algebra delle matrici). Per poter sostenere l'esame è necessario aver già superato Analisi 1 e Geometria 1.
Frequenza lezioni
La frequenza a lezione è di fondamentale importanza per la comprensione dei concetti di base del corso. Non c'è uno stretto obbligo di frequenza (non viene presa la presenza), ma la frequenza è fortemente consigliata. Si auspica una attiva partecipazione attiva in classe: un maggiore coinvolgimento da parte degli studenti facilita l'assimilazione della materia. Collaborazioni fra studenti nello studio della materia sono consigliate.
Contenuti del corso
Il corso consiste in 5 crediti di lezione, per un totale di 35 ore di didattica frontale, e 1 di esercitazione, per un totale di 12 ore di didattica frontale.
Contenuto del corso.
Introduzione all'uso del calcolatore. Introduzione all'uso del linguaggio Matlab. Variabili ed istruzioni elementari. Cicli. Strutture dati. Grafica.
Rappresentazione in virgola mobile. I numeri di macchina. Troncamento ed arrotondamento. Operazioni di macchina. Cancellazione numerica. Ordine di accuratezza.
Algebra lineare numerica. Richiami di algebra lineare: vettori, matrici, determinanti, matrice inversa. Norme di vettore e norme di matrice. Norme naturali e loro rappresentazione. Autovalori. Raggio spettrale e sue proprietà. Alcune matrici particolari. Metodi diretti per la risoluzione dei sistemi lineari: sistemi triangolari, metodo di eliminazione di Gauss, pivoting. Fattorizzazioni A=LU e PA=LU. Metodi compatti, fattorizzazione di Choleski e loro implementazione in python. Condizionamento di un sistema lineare. Numeri di condizionamento. Matrici sparse e loro rappresentazione. Autovalori ed autovettori: richiami. Metodi iterativi per la soluzione di sistemi lineari: metodi di Jacobi, metodo di Gauss-Siedel e metodo SOR. Criteri d'arresto. Metodi per punti e per blocchi (cenni). Decomposizione in valori singolari (cenni). Localizzazione degli autovalori: i teoremi di Gershgorin-Hadamard. Calcolo degli autovalori: il metodo delle potenze, ed il metodo delle potenze inverse.
Approssimazione di funzioni e dati. Interpolazione polinomiale. Forma di Lagrange. Operatore lineare di interpolazione. Calcolo del polinomi di interpolazione. Formula di Newton delle differenze divise. Il resto dell'interpolazione. Polinomi di Chebyshev: formula ricorsiva, zeri, proprietà di minima norma. Teorema di Weierstrass sulla approssimazione di una funzione continua mediante polinomi (enunciato). Polinomi di Bernstein. Problema della convergenza di una successione di schemi interpolatori. Interpolazione mediante polinomi a tratti. Funzioni spline. Calcolo delle spline cubiche. Metodo dei minimi quadrati e applicazioni. Equazioni normali e loro interpretazione geometrica.
Soluzione di equazioni non lineari. Concetti generali. Metodi di bisezione, delle secanti e di Newton. Teoria generale dei metodi iterativi per equazioni non lineari e problemi di punto fisso. Ordine di convergenza. Criteri d'arresto. Metodo di Aitken per metodi di ordine di convergenza uno e due.
Formule di quadratura. Integrali pesati. Forma generale di una formula di quadratura. Ordine polinomiale. Formule interpolatorie. Teorema di convergenza. Formule di Newton-Cotes. Formule Gaussiane. Formule composite: trapezi e Simpson. Metodo di Romberg. Quadratura adattiva (cenni).
Testi di riferimento
Libri consigliati:
Il libro di testo consigliato per il corso di Calcolo Numerico è il seguente:
G.Naldi, L.Pareschi, G.Russo, Introduzione al calcolo scientifico, McGraw-Hill, 2001.
Ulteriori approfondimenti si trovano sui testi:
- V.Comincioli, Analisi Numerica: metodi, modelli, applicazioni, McGraw-Hill, Milano, 1990.
- G. Monegato, Calcolo Numerico, Levrotto e Bella, Torino, 1985.
- A. Quarteroni, R. Sacco, F. Saleri, Matematica Numerica, Springer Italia, Milano, 1998.
Programmazione del corso
Argomenti | Riferimenti testi | |
---|---|---|
1 | Introduzione all'uso del calcolatore. Introduzione all'uso del linguaggio Matlab. Variabili ed istruzioni elementari. Cicli. Strutture dati.Grafica. | Appunti del docente.G.Naldi, L.Pareschi, G.Russo, Introduzione al calcolo scientifico, McGraw-Hill, 2001.Matlab tutorial online |
2 | Rappresentazione in virgola mobile. I numeri di macchina. Troncamento ed arrotondamento. Operazioni di macchina. Cancellazione numerica. Ordine di accuratezza. | G.Naldi, L.Pareschi, G.Russo, Introduzione al calcolo scientifico, McGraw-Hill, 2001. |
3 | Algebra lineare numerica. Richiami di algebra lineare: vettori, matrici, determinanti, matrice inversa. Norme di vettore e norme di matrice. Norme naturali e loro rappresentazione. Autovalori. Raggio spettrale e sue proprietà. Alcune matrici particolari. | Appunti del docente.V.Comincioli, Analisi Numerica: metodi, modelli, applicazioni, McGraw-Hill, Milano, 1990. |
4 | Metodi diretti per la risoluzione dei sistemi lineari: sistemi triangolari, metodo di eliminazione di Gauss, pivoting. | Appunti del docente. V.Comincioli, Analisi Numerica: metodi, modelli, applicazioni, McGraw-Hill, Milano, 1990. |
5 | Fattorizzazioni A=LU e PA=LU. | Appunti del docente. V.Comincioli, Analisi Numerica: metodi, modelli, applicazioni, McGraw-Hill, Milano, 1990. |
6 | Metodi compatti, fattorizzazione di Choleski e relativo algoritmo. | V.Comincioli, Analisi Numerica: metodi, modelli, applicazioni, McGraw-Hill, Milano, 1990. |
7 | Condizionamento di un sistema lineare. Numeri di condizionamento. | Eugene Isaacson, Herbert Bishop Keller ,Analysis of Numerical Methods (Dover Books on Mathematics) Revised Edition. |
8 | Matrici sparse e loro rappresentazione. | Appunti del docente |
9 | Metodi iterativi per la soluzione di sistemi lineari: metodi di Jacobi, metodo di Gauss-Siedel e metodo SOR. Criteri d'arresto. | V.Comincioli, Analisi Numerica: metodi, modelli, applicazioni, McGraw-Hill, Milano, 1990. |
10 | Metodi iterativi per punti e per blocchi (cenni). Decomposizione in valori singolari (cenni). | V.Comincioli, Analisi Numerica: metodi, modelli, applicazioni, McGraw-Hill, Milano, 1990. |
11 | Autovalori ed autovettori: richiami. Localizzazione degli autovalori: i teoremi di Gershgorin-Hadamard. Calcolo degli autovalori: il metodo delle potenze, ed il metodo delle potenze inverse. | Appunti del decente Eugene Isaacson, Herbert Bishop Keller ,Analysis of Numerical Methods (Dover Books on Mathematics) Revised Edition. |
12 | Approssimazione di funzioni e dati. Interpolazione polinomiale. Forma di Lagrange. Operatore lineare di interpolazione. Calcolo del polinomi di interpolazione. Formula di Newton delle differenze divise. | Appunti del docenteA. Quarteroni, R. Sacco, F. Saleri, Matematica Numerica, Springer Italia, Milano, 1998. |
13 | Il resto dell'interpolazione nelle forme di Lagrange e di Newton. | Appunti del docente |
14 | Polinomi di Chebyshev: formula ricorsiva, zeri, proprietà di minima norma. | Appunti del docente |
15 | Teorema di Weierstrass sulla approssimazione di una funzione continua mediante polinomi (enunciato). | Appunti del docente |
16 | Polinomi di Bernstein. Problema della convergenza di una successione di schemi interpolatori. | Appunti del docente |
17 | Interpolazione mediante polinomi a tratti. Funzioni spline. | A. Quarteroni, R. Sacco, F. Saleri, Matematica Numerica, Springer Italia, Milano, 1998. |
18 | Calcolo delle spline cubiche. | A. Quarteroni, R. Sacco, F. Saleri, Matematica Numerica, Springer Italia, Milano, 1998. |
19 | Metodo dei minimi quadrati e applicazioni. Equazioni normali e loro interpretazione geometrica. | Appunti del docente |
20 | Soluzione di equazioni non lineari. Concetti generali. Metodi di bisezione, delle secanti e di Newton. | Appunti del docente. |
21 | Teoria generale dei metodi iterativi per equazioni non lineari e problemi di punto fisso. Ordine di convergenza. Criteri d'arresto. | Appunti del docente |
22 | Metodo di Aitken per metodi di ordine di convergenza uno e due. | Appunti del docente |
23 | Formule di quadratura. Integrali pesati. Forma generale di una formula di quadratura. Ordine polinomiale. Formule interpolatorie. | G.Naldi, L.Pareschi, G.Russo, Introduzione al calcolo scientifico, McGraw-Hill, 2001. |
24 | Teorema di convergenza. Formule di Newton-Cotes. Formule Gaussiane. | G.Naldi, L.Pareschi, G.Russo, Introduzione al calcolo scientifico, McGraw-Hill, 2001. |
25 | Formule composite: trapezi e Simpson. | G.Naldi, L.Pareschi, G.Russo, Introduzione al calcolo scientifico, McGraw-Hill, 2001. |
26 | Metodo di Romberg. Quadratura adattiva (cenni). | G.Naldi, L.Pareschi, G.Russo, Introduzione al calcolo scientifico, McGraw-Hill, 2001. |
Verifica dell'apprendimento
Modalità di verifica dell'apprendimento
L'esame consiste in una prova scritta ed una prova orale.
Si può accedere all'esame orale solo dopo il superamento della prova scritta.
La prova scritta consiste nella risoluzione al calcolatore di alcuni esercizi proposti entro un tempo stabilito dal docente e comunque non superiore alle tre ore.
Il superamento della prova scritta permette di accedere alla prova orale nella stessa sessione o anche in una sessione successiva, nell'arco di un anno.
Tutte le prove sono valutate con voto in trentesimi. Il voto minimo conseguito nella prova scritta consigliato per l'accesso alla prova orale è 18/30. Il voto finale dell'esame è ottenuto come media ponderata fra i risultati della prova scritta e di quella orale.
Gli studenti con DSA certificata hanno diritto ad un tempo maggiore per lo svolgimento della prova scritta.
Esempi di domande e/o esercizi frequenti
Le prove scritte assegnate in alcuni precedenti appelli possono essere trovate ai seguenti indirizzi:
https://www.dropbox.com/scl/fo/bxy7mn9efsccnbfx3s2oq/h?rlkey=da5g75vw4iv3evyzkqufhc7py&dl=0
https://www.dropbox.com/scl/fo/6e8w6udat78d5ojher52k/APiyoXiy7CETBmu-nZEfBwk?rlkey=ptlbkk1pn6owhelkq8d7ylm73&dl=0
Esempi di domane orali sono:
Mi dimostri che il procedimento di eliminazione di Gauss naive è equivalente ad una fattorizzazione A=LU della matrice del sistema
Mi parli della interpolazione di Lagrange
Cosa sono le funzioni "spline" e quali sono quelle di uso più comune?
Cosa è l'ordine polinomiale di una formula di quadratura e che relazione ha con le formule di quadratura inteprolatorie?