REGISTRO DELLE LEZIONI DI
CALCOLO NUMERICO
CORSO DI LAUREA MAGISTRALE IN INGEGNERIA CIVILE
6 CFU - A.A. 2021/2022
DOCENTE: PROF. GIUSEPPE RODRIGUEZ
ULTIMO AGGIORNAMENTO: 16. dicembre 2021
1.
Lunedì 27/9/2021, 15–18. ore:
3(3)
Introduzione al corso. Applicazioni dell'analisi numerica. Problemi ben posti.
Esempi di problemi mal posti. Numero di condizionamento. Algoritmi. Algoritmi:
stabilità, complessità computazionale, occupazione di memoria. Spazi
vettoriali. Sottospazi. Esempi. Gli spazi e . Lo spazio dei
polinomi. Combinazioni lineari. Sottospazio generato da vettori.
Indipendenza lineare. Basi e dimensione. Spazi a dimensione infinita.
2.
Giovedì 30/9/2021, 15–18. ore:
3(6)
Spazi normati. Norme vettoriali con indice 1, 2 e . Principali norme
utilizzate per le funzioni. Normalizzazione. Spazi metrici. Norme equivalenti.
Convergenza di successioni di vettori. Successioni di Cauchy. Spazi completi.
Spazi di Hilbert. Norma indotta da un prodotto scalare. Ortogonalità.
Prodotti scalari canonici di
e di . Matrici. Matrice trasposta
e aggiunta. Somma di matrici e prodotto per uno scalare. Prodotto matriciale e
sue proprietà. Matrice identità. Matrice potenza. Relazione del prodotto
matriciale col prodotto scalare di
e con la norma-2. Esempi. Matrici
invertibili e proprietà. Determinante: proprietà e formula di Laplace.
Rango.
3.
Lunedì 4/10/2021, 15–18. ore:
3(9)
Autovalori e autovettori. Polinomio caratteristico, spettro e raggio spettrale.
Proprietà degli autovalori. Matrici difettive. Matrici con struttura e loro
proprietà: matrici Hermitiane, simmetriche, unitarie, ortogonali,
triangolari, diagonali. Cenni sulle matrici sparse. Norme matriciali e loro
proprietà. Norme naturali indotte dalle norme vettoriali con indice 1, 2 e
. Sistemi di numerazione. Origine degli errori. Numeri di macchina.
Virgola fissa e virgola mobile. Underflow e overflow. Troncamento,
arrotondamento ed errori ad essi associati. Errore di memorizzazione. Variabili
in singola e doppia precisione. Operazioni di macchina. Condizionamento della
somma algebrica, cancellazione.
4.
Giovedì 7/10/2021, 15–18. ore:
3(12)
Riepilogo propagazione degli errori. Esempi. Sistemi lineari. Notazione. Numero
di condizionamento e proprietà. Sistemi lineari diagonali, ortogonali e
triangolari. Algoritmi, complessità e occupazione di memoria. Schema di
calcolo del metodo di triangolarizzazione di Gauss. Fattorizzazione e
suo impiego per la risoluzione di un sistema, il calcolo del determinante e il
calcolo della matrice inversa.
5.
Lunedì 11/10/2021, 15–18. ore:
3(15)
Riepilogo algoritmo di Gauss. Schematizzazione del passo ed espressione dei
moltiplicatori. Pivoting parziale per evitare il breakdown dell'algoritmo e la
propagazione degli errori. Esempi. Matrici di permutazione e di scambio.
Fattorizzazione . Risoluzione di sistemi e calcolo di determinante e
matrice inversa. Fattorizzazione di Cholesky per matrici simmetriche definite
positive e suo impiego per la risoluzione di un sistema e il calcolo di un
determinante. Algoritmo per il calcolo della fattorizzazione. Complessità e
considerazioni numeriche.
6.
Giovedì 14/10/2021, 15–18. ore:
3(18)
Riepilogo fattorizzazioni matriciali. Fattorizzazione QR: confronto con la
fattorizzazione LU. Matrici elementari di Householder. Costruzione ottimizzata,
vantaggi in termini di complessità e stabilità, algoritmo. Dimostrazione
del calcolo su Matlab. Algoritmo di fattorizzazione QR di Householder: analisi
dei primi due passi e del passo generico. Espressione della matrice .
7.
Lunedì 18/10/2021, 15–18. ore:
3(21)
Fattorizzazione QR di una matrice rettangolare. Laboratorio.
Implementazione in Matlab della fattorizzazione QR di Householder.
Realizzazione di una sperimentazione numerica al variare della dimensione sulla
risoluzione di sistemi lineari. Lezione. Sistemi lineari quadrati,
sovradeterminati e sottodeterminati a rango pieno. Problemi ai minimi quadrati.
Risoluzione mediante la fattorizzazione QR. Cenni sulla risoluzione mediante
equazioni normali e fattorizzazione di Cholesky.
8.
Venerdì 22/10/2021, 9–12. ore:
3(24)
Metodi iterativi per sistemi lineari. Vantaggi per sistemi di grandi
dimensioni. Convergenza e consistenza. Metodi lineari, stazionari, del
prim'ordine. Condizioni per la consistenza e per la convergenza. Costruzione di
metodi iterativi mediante splitting additivo. I metodi di Jacobi e di
Gauss–Seidel. Criteri di arresto. Precondizionamento. Espressione del metodo
mediante il residuo. Precondizionamento mediante fattorizzazioni LU e Cholesky
incomplete. Metodi di Richardson. Introduzione al metodo del gradiente. Calcolo
del gradiente di espressioni matriciali e vettoriali. Metodi di discesa.
Calcolo del passo ottimale.
9.
Lunedì 25/10/2021, 15–18. ore:
3(27)
Matrici sparse in Matlab. Riepilogo metodi di discesa e calcolo del passo
ottimale. Il metodo del gradiente. Calcolo ottimizzato del residuo. Algoritmo.
Cenni sul precondizionamento. Ottimalità di un punto rispetto ad una
direzione. Condizione necessaria e sufficiente per l'ottimalità. Direzioni
-coniugate. Calcolo di direzioni coniugate. Il metodo del gradiente
coniugato. Algoritmo. Condizione di stop. Precondizionamento mediante
fattorizzazione di Cholesky incompleta. Applicazione alle equazioni normali: il
metodo CGLS. Cenni sui metodi di Krylov.
10.
Giovedì 28/10/2021, 15–18. ore:
3(30)
Autovalori e autovettori. Matrici simili, diagonalizzabili, unitariamente
diagonalizzabili. Fattorizzazione spettrale. Forma di Schur. Proprietà delle
matrici Hermitiane. Matrici normali. Cenni sulla forma di Jordan e sulla SVD.
Principal component analysis: approssimazione di una matrice mediante uno
sviluppo troncato. Applicazione all'analisi di reti. Introduzione agli
algoritmi numerici. Teorema di Bauer–Fike. Il metodo delle potenze. Ipotesi
del metodo e dimostrazione della convergenza. Implementazione con
normalizzazione. Condizione di stop.
11.
Giovedì 4/11/2021, 15–18. ore:
3(33)
Riepilogo metodo delle potenze. Algoritmo. Il metodo delle potenze inverse per
il calcolo dell'autovalore più piccolo in modulo, l'autovalore più vicino
ad una stima prefissata, e per trovare l'autovettore corrispondente ad un
autovalore noto. Algortimo QR per il calcolo degli autovalori. Invarianti QR:
similitudine e simmetria. Costruzione della forma di Schur, o della
fattorizzazione spettrale nel caso di una matrice simmetrica. Condizioni per la
convergenza e stratagemma da seguire in caso di non convergenza. Trasformazione
di similitudine di una matrice in forma di Hessenberg. Vantaggi per l'algoritmo
QR. Introduzione alla soluzione di equazioni nonlineari. Convergenza e ordine
di un metodo iterativo. Radici multiple e criterio analitico per la loro
identificazione.
12.
Lunedì 8/11/2021, 15–18. ore:
3(36)
Laboratorio. Costruzione di un sistema lineare con matrice simmetrica,
definita positiva e sparsa. Uso di matrici sparse e loro visualizzazione con la
funzione spy. Sperimentazione numerica sull'uso del gradiente
coniugato con o senza precondizionamento. Construzione di una matrice con
autovalori assegnati. Lezione. Serie di Taylor. Funzioni nonlineari
con radici multiple. Condizionamento del problema in presenza di una radice
semplice o doppia. Calcolo delle radici di un polinomio come autovalori della
matrice compagna. Il metodo di bisezione. Studio della convergenza. Scrittura
dell'algoritmo.
13.
Giovedì 11/11/2021, 15–18. ore:
3(39)
Il metodo di Newton. Formulazione geometrica e analitica del metodo.
Dimostrazione della convergenza e determinazione dell'ordine di convergenza nel
caso di una radice semplice. Condizione di stop. Metodi quasi-Newton. Il metodo
delle corde. Il metodo delle secanti e confronto col metodo di Newton. Funzioni
di iterazione. Punti fissi. Varie funzioni di iterazione per l'equazione di
Fibonacci. Definizione di contrattività. Teorema sulla convergenza dei metodi
basati su una funzione di iterazione contrattiva.
14.
Giovedì 18/11/2021, 15–17. ore:
2(41)
Riepilogo funzioni di iterazione e teorema di convergenza. Condizione perché
il metodo sia del second'ordine. Analisi del metodo di Newton nel caso di una
radice doppia. Sistemi di equazioni nonlineari. Formulazione vettoriale.
Matrice Jacobiana. Sviluppo di Taylor troncato di una funzione vettoriale. Il
metodo di Newton multidimensionale. Implementazione mediante risoluzione di un
sistema lineare a ogni passo. Metodi quasi-Newton: approssimazione dello
Jacobiano. Discussione di alcune applicazioni. Teorema di Ostrowsky e teorema
sulla convergenza del metodo di Newton.
15.
Lunedì 22/11/2021, 15–18. ore:
3(44)
Introduzione alle equazioni differenziali. Il problema di Cauchy. Funzioni
Lipschitziane. Relazione con la derivabilità. Esistenza e unicità della
soluzione globale e locale di un problema di Cauchy. Esempi. Formule alle
differenze finite. Formule esplicite e implicite, monostep e multistep.
Complessità computazionale e numero degli stadi. Implementazione di una
formula alle differenze finite.
16.
Giovedì 25/11/2021, 15–18. ore:
3(47)
Riepilogo formule alle differenze finite. Applicazione di vari metodi ad un
esempio numerico. Errori nelle formule monostep. Errore globale e locale di
discretizzazione. Convergenza, stabilità, consistenza e ordine. Tutti i
metodi monostep sono stabili. Influenza degli errori di arrotondamento. Stima
automatica del passo ottimale: formule di Runge-Kutta-Fehlberg. Uso delle
routines ode23 e ode45 di Matlab.
17.
Giovedì 2/12/2021, 15–18. ore:
3(50)
Riepilogo problemi di Cauchy, metodi alle differenze finite, convergenza,
consistenza e ordine, stima adattiva del passo di integrazione. Implementazione
dei metodi impliciti. Scelta del passo in modo da garantire la convergenza
del metodo iterativo. Schemi predictor-corrector. Sistemi di equazioni del
prim'ordine ed equazioni di ordine superiore al primo. Esempio di soluzione
mediante il metodo di Eulero. Convergenza delle formule multistep. Errore
locale di discretizzazione per una formula a 2 passi, consistenza e ordine.
Stabilità, condizione delle radici e teorema di Dahlquist. Cenni sulla
A-stabilità e le equazioni stiff.
18.
Lunedì 6/12/2021, 15–18. ore:
3(53)
Problemi differenziali con condizioni agli estremi. Definizione della
discretizzazione. Costruzione, mediante sviluppo in serie di Taylor, di
un'approssimazione del second'ordine delle prime due derivate. Costruzione del
sistema lineare e studio della sua struttura. Condizioni sui coefficienti del
problema differenziale e sul passo di integrazione che garantiscono la non
singolarità e la dominanza diagonale della matrice del sistema. Esempi.
Implementazione in Matlab dell'algoritmo, facendo uso degli operatori
vettoriali.
19.
Giovedì 9/12/2021, 15–18. ore:
3(56)
Equazioni a derivate parziali. Ordine. Equazioni lineari, debolmente e
fortemente nonlineari. Informazioni aggiuntive per garantire l'unicità della
soluzione in alcuni casi particolari. Soluzione analitica di un'equazione del
primo ordine. Classificazione delle PDE del secondo ordine. Equazioni
ellittiche, paraboliche e iperboliche. Esempi: equazioni di Laplace, di
Poisson, del calore e delle onde. Condizioni di Dirichlet, di Neumann e miste.
Metodi alle differenze finite. Equazioni ellittiche: discretizzazione di un
dominio regolare. Schema a 5 punti e approssimazione delle prime due derivate
mediante differenze finite. Discretizzazione dell'equazione differenziale e
sistema lineare risultante.
20.
Lunedì 13/12/2021, 15–17. ore:
2(58)
Riepilogo risoluzione di un problema ellittico mediante differenze finite.
Studio di un particolare problema di piccole dimensioni. Ordinamento
lessicografico delle incognite. Scrittura esplicita di alcune equazioni del
sistema e deduzione della struttura della matrice dei coefficienti e del
vettore dei termini noti. Struttura del sistema lineare risultante nel caso
generale. Illustrazione di un problema numerico risolto con Matlab. Condizioni
che garantiscono la stretta dominanza diagonale della matrice e,
conseguentemente, la sua non singolarità. Definizione di un problema modello
di tipo parabolico.
21.
Giovedì 16/12/2021, 15–17. ore:
2(60)
Riepilogo risoluzione di un problema parabolico mediante differenze finite con
uno schema a 4 punti. Scrittura esplicita di alcune equazioni del sistema e
deduzione della struttura della matrice dei coefficienti e del vettore dei
termini noti. Illustrazione di un problema numerico risolto con Matlab.
Condizioni che garantiscono la stretta dominanza diagonale della matrice.
Cenni sulla discretizzazione di un problema iperbolico con uno schema a 7
punti. Inizializzazione dello schema mediante sviluppo in serie di Taylor della
soluzione al primo istante temporale. Idea alla base del metodo agli elementi
finiti. Discretizzazione di un dominio irregolare e funzioni test. Cenni sulla
costruzione del sistema lineare.
Totale ore: 60
Giuseppe Rodriguez
rodriguez@unica.it