Argomenti trattati a lezione


06.10.08

Presentazione del corso (programma, modalità dell'esame, tutorato ecc.). Testi consigliati: P. Ghelardoni, G. Gheri e P. Marzulli, Elementi di Calcolo Numerico. V. Comincioli, Analisi numerica: metodi, modelli, applicazioni, ApogeoEbook, 2005. Software consigliato: Octave - l'alternativa gratuita a MATLAB. Numeri finiti: richiami sui numeri reali, rappresentazione decimale di numeri razionali e irrazionali, algoritmi per la conversione della parte intera e della parte frazionaria di un numero decimale in un numero binario, forma scientifica o normalizzata di un numero, approssimazione della mantissa per troncamento e arrotondamento, range degli esponenti, memorizzazione dei numeri finiti (segno, esponente e mantissa), IEEE-754 floating-point standard.

07.10.08

Numeri finiti: rappresentazione in virgola mobile, troncamento e arrotondamento, insieme dei numeri finiti, sua cardinalità, numeri finiti di MATLAB/Octave, più piccolo e più grande numero finito positivo (realmax e realmin in MATLAB/Octave), unità di arrtondamento, errori di rappresentazione di un numero reale, teorema su maggiorazione dell'errore relativo. Aritmetica floating point: precisione di calcolo con i numeri finiti, non validità delle classiche proprietà delle operazioni aritmetiche.

13.10.08

Errore nel calcolo di una funzione: errore analitico o di troncamento, errore inerente o trasmesso dai dati, errore algoritmico ed errore totale, funzioni di più variabili reali e derivate parziali, formula di Taylor (cenno), coefficienti di amplificazione degli errori sui dati (indice di condizionamento), gli errori nelle quattro operazioni di macchina. Si consiglia la lettura di P. Ghelardoni, G. Gheri e P. Marzulli, Elementi di Calcolo Numerico, pagine 5-12.

14.10.08

Discussione di un esempio per l'analisi dell'errore nel calcolo di una funzione di più variabili: analisi in avanti per la divisione di due numeri reali (Ghelardoni, Gheri e Marzulli, pag. 10), richiami sulle derivate e il teorema del valor medio (o di Lagrange). I vari tipi di errore nel processo computazionale. Numeri complessi, piano dei numeri complessi, operazioni con i numeri complessi, uso del programma MATLAB/Octave per i calcololi con i numeri complessi, esercitazioni al computer. Esercizi consigliati: foglio del 14/10/2008.

20.10.08

Coordinate polari nel piano, numeri complessi in forma polare o trigonometrica, comandi MATLAB per il valore assoluto o modulo di un numero complesso e per l'argomento di un numero complesso, interpretazione geometrica della moltiplicazione di numeri complessi (trasformazioni di similitudine del piano), formule di addizione del seno e del coseno, formula di De Moivre, radici, esempi con MATLAB, sviluppo in serie di Taylor della funzione esponenziale e delle funzioni seno e coseno, funzione esponenziale complessa, formula di Eulero.

21.10.08

Matrici, definizione, uguaglianza di matrici, addizione e sottrazione di matrici, matrice nulla, moltiplicazione per uno scalare, prodotto di matrici, regole del calcolo con le matrici, matrice trasposta e matrice trasposta coniugata, alcune matrici particolari: matrice quadrata, matrice triangolare superiore o inferiore, matrice identità, matrice inversa, vettore riga o colonna. Esercitazione con MATLAB: numeri complessi, coordinate polari, polinomi (calcolo di valori e delle radici), operazioni con le matrici. Esercizi consigliati: foglio del 22/10/2008.

27.10.08

Operazioni con le matrici, matrici diagonali, matrici simmetriche, matrici hermitiane. Equazioni non lineari: metodo di bisezione, criterio di arresto, implementazione del metodo di bisezione come function di Octave/MATLAB: bisection.m. Esempio di applicazione della funzione bisection: calcolo del tasso medio di rendita di un fondo di investimento su più anni.

28.10.08

Metodo di Newton o metodo delle tangenti, teorema sulla convergenza del metodo di Newton, ordine di convergenza del metodo di Newton, confronto con il metodo di bisezione, criterio di arresto del metodo di Newton, iterazioni di punto fisso, condizione sufficiente per la convergenza dell'iterazione di punto fisso. Esercitazione con MATLAB: applicazione del metodo di bisezione specificando la funzione come inline function. Esercizi consigliati: foglio del 30/10/2008.

03.11.08

Esercitazione con MATLAB: operazioni precedute da un punto, funzioni inline, grafici di funzioni di variabile reale (plot, fplot, feval). Calcolo delle radici di un polinomio: comando MATLAB roots, il metodo di Horner (William George Horner, 1786 - 1837) per la valutazione efficiente di un polinomio in un punto assegnato, algoritmo di divisione sintetica, metodo di Newton-Horner per il calcolo di tutte le radici di un polinomio.

04.11.08

Calcolo del valore della derivata di un polinomio in un punto tramite l'algoritmo di Horner. Sistemi lineari: Algoritmo di Gauss per trasformare un sistema di equazioni lineari con matrice dei coefficienti piena in un sistema equivalente (cioè avente la stessa soluzione), ma con matrice dei coefficienti triangolare superiore. Fattorizzazione LU senza scambio delle righe. Soluzione del sistema mediante gli algoritmi delle sostituzioni in avanti e delle sostituzioni all'indietro. Esercitazione con MATLAB: calcolo di derivate e di integrali indefiniti con i comandi del toolbox symbolic, il comando diary, uso del programma lugauss.m per la fattorizzazione LU senza pivoting, i comandi MATLAB eye, tril, triu, \ (divisione dalla sinistra). Esercizi consigliati: foglio del 06/11/2008.

10.11.08

Esempio per la fattorizzazione LU, matrici di permutazione, tecnica del pivoting (pivoting per righe e scaled pivoting) ed esempio relativo. Esempio di una matrice che non ha una fattorizzazione LU. Esercitazione con MATLAB: funzione MATLAB lu, istruzioni MATLAB per scambiare le righe o le colonne di una matrice.

11.11.08

Determinante di una matrice quadrata, sviluppo di Laplace, definizione del determinante tramite assiomi secondo Weierstrass, definizione del determinante con la formula di Leibniz (Gottfried Wilhelm Leibniz), esempi, regola di Sarrus (Pierre-Frédéric Sarrus) per il calcolo di un determinante di ordine tre, alcune proprietà del determinante, calcolo dell'inversa di una matrice quadrata non singolare con il metodo della matrice dei cofattori (o dei complementi algebrici), regola di Cramer (Gabriel Cramer) per risolvere un sistema di equazioni lineari, esempi. Esercitazione con MATLAB: i comandi/operazioni MATLAB det, inv, eye, / (divisione dalla destra), \ (divisione dalla sinistra), exist, script M-file, function M-file. Esercizi consigliati: foglio del 13/11/2008.

17.11.08

Esercizi sul calcolo matriciale. Vettori: scalari e vettori, vettori geometrici, somma o risultante di vettori, poligono vettoriale, differenza di vettori, vettore nullo o vettore zero, moltiplicazione di un vettore per uno scalare, componenti di un vettore, vettori numerici nel piano o nello spazio, operazioni con i vettori numerici, lunghezza o norma di un vettore, esempio.

18.11.08

Prodotto scalare o prodotto interno, esempio introduttivo (lavoro meccanico in fisica) e definizione per vettori di R^n, proprietà del prodotto scalare, vettori ortogonali, versori, vettori ortonormalizzati, disuguaglianza di Cauchy-Buniakovskii-Schwarz. Autovalori e autovettori di un endomorfismo di uno spazio vettoriale (si veda anche la dispensa). Rotazione nel piano complesso e rotazione nel piano in forma matriciale, autovalori e autovettori della matrice di rotazione. Esercitazione con MATLAB: programma che calcola la somma dei quadrati dei primi n numeri naturali, diagramma di flusso.

24.11.08

Esercizi sul prodotto scalare, angoli tra vettori. Autovalori e autovettori di endomorfismi di spazi vettoriali di dimensione finita, polinomio caratteristico di una matrice quadrata, autospazio relativo a un autovalore, esempi in dimensione due. Gli autovalori di una matrice reale e simmetrica sono reali.

25.11.08

Norme vettoriali e norme matriciali, norme matriciali indotte dalle norme vettoriali, raggio spettrale, autovalori dell'inversa di una matrice, norma di Frobenius (o di Schur), analisi degli errori nel metodo di Gauss, condizionamento di un sistema lineare, stima dell'errore relativo della soluzione di un sistema lineare (teorema di Wilkinson), esempio di un sistema lineare mal condizionato. Lettura consigliata: P. Ghelardoni - G. Gheri - P. Marzulli, capitolo 3.5. Esercitazione con MATLAB: cicli condizionati e cicli incondizionati, realizzazione di un programma come function e come script. Esercizi consigliati: foglio del 27/11/2008.

01.12.08

Osservazioni sul numero di condizionamento e sul raggio spettrale, dimostrazione del teorema di Wilkinson nel caso di una perturbazione dei termini noti, discussione di un esempio, anche usando MATLAB. Definizione di matrice definita positiva ed esempio.

02.12.08

Matrici definite positive, esempio, condizioni equivalenti affinché una matrice hermitiana sia definita positiva (positività degli autovalori e positività dei determinanti delle sottomatrici principali di testa), fattorizzazione di Cholesky, costo computazionale, esempio, anche usando MATLAB. Metodi iterativi per la risoluzione di un sistema lineare: metodo di Jacobi e metodo di Gauss-Seidel, convergenza dei metodi per matrici a dominanza diagonale stretta per righe, esempio usando MATLAB. Esercizi consigliati: foglio del 09/12/2008.

09.12.08

Metodi iterativi per la risoluzione di sistemi lineari, condizioni sufficienti per la convergenza dei metodi di Jacobi e di Gauss-Seidel, due criteri di arresto: controllo del residuo della k-esima iterazione (se il sistema e' ben condizionata) o controllo del k-esimo incremento. Metodo delle potenze per il calcolo dell'autovalore di modulo massimo di una matrice quadrata, metodo delle potenze inverse per il calcolo dell'autovalore di modulo minimo, metodo delle potenze con shift, cerchi di Gershgorin (Gershgorin, 1901-1933). Esercitazione con MATLAB: calcolo di autovalori e autovettori, fattorizzazione QR, visualizzazione dei cerchi di Gershgorin.

15.12.08

Approssimazione di funzioni e dati: interpolazione polinomiale di Lagrange, esistenza e unicità del polinomio interpolatore, determinante della matrice di Vandermonde, quantificazione dell'errore che si commette sostituendo una funzione con un suo polinomio interpolatore, fenomeno di Runge, interpolazione di Chebyshev. Esercitazione con MATLAB: calcolo di polinomi interpolatori e rappresentazione di grafici di funzioni e loro polinomi interpolatori, in particolare esemplificazione del fenomeno di Runge, interpolazione di Chebyshev.

16.12.08

Interpolazione trigonometrica e trasformata rapida di Fourier, interpolazione lineare composita, approssimazione con funzioni splines, retta dei minimi quadrati o retta di regressione. Esercitazione con MATLAB: calcolo dell'interpolatore trigonometrico di un insieme di dati, rappresentazione dei grafici di funzioni e loro interpolatori trigonometrici, in particolare esemplificazione del fenomeno dell'aliasing e di una spline cubica oscillante che non preserva la proprietà di monotonia tra nodi adiacenti.

22.12.08

Differenziazione ed integrazione numerica: approssimazione delle derivate con differenze finite in avanti, differenze finite all'indietro e differenze finite centrate, discussione dell'errore, motivazione per l'integrazione numerica, cenno sull'integrale di Gauss, formula del punto medio (o formula del rettangolo), formula di quadratura composita del rettagolo, formula del trapezio, formula del trapezio composita, formula di Simpson.

23.12.08

Integrazione numerica: formula di quadratura composita di Simpson, cenno sulle formule di Newton-Cotes, calcolo di un integrale doppio su un dominio rettangolare con la formula di Simpson. Programmi MATLAB da preparare per l'esame sui seguenti argomenti: calcolo matriciale, sistemi di equazioni lineari, derivazione ed integrazione numerica, metodo del simplesso (downhill simplex method) di Nelder-Mead.


last updated 9th January 2009 Rüdiger Achilles