Argomenti trattati a lezione


08.10.09

Presentazione del corso (programma, modalità dell'esame, tutorato ecc.). Testi consigliati: A. Quarteroni,e F. Saleri, Calcolo scientifico - Esercizi e problemi risolti con MATLAB e Octave, Springer-Verlag Italia, Milano, 4a ed., 2008. Software consigliato: Octave - l'alternativa gratuita a MATLAB. Numeri finiti, numeri floating-point: 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, esempi, in particolare esempi di numeri decimali finiti che necessitano infinite cifre binarie.
Function decbin.m per convertire un numero decimale in un numero binario.

09.10.09

Unità di misura dell'informazione, prefissi SI (kilo, mega, giga, ...) e prefissi binari (kibi, mebi, gibi, ...). Numeri finiti, approssimazione della mantissa per troncamento e arrotondamento, range degli esponenti, memorizzazione dei numeri finiti (segno, esponente e mantissa), IEEE-754 floating-point standard, cardinalità dell'insieme dei numeri finiti, numeri finiti di MATLAB/Octave, più piccolo e più grande numero finito positivo (realmax e realmin in MATLAB/Octave), errori di rappresentazione di un numero reale, teorema sulla maggiorazione dell'errore relativo, unità di arrtondamento. Aritmetica floating point: maggiorazione dell'errore relativo di una somma, effetto della cancellazione numerica. Esercizi consigliati: Quarteroni-Saleri, esercizi 1.1, 1.2; foglio del 14/10/2008, esercizi 1, 2.

15.10.09

Maggiorazione dell'errore relativo di un prodotto o di un quoziente eseguito con i numeri floating point (si veda C. Guerrini, Numeri finiti, pagine 38-40), vari tipi di errore nel processo computazionale, esempio di un problema malcondizionato (si veda loc. cit., pagine 48, 49). Numeri complessi, piano dei numeri complessi, operazioni aritmetiche con i numeri complessi, vettori nel piano (cenno), alcuni comandi MATLAB/Octave per i calcololi con i numeri complessi, esercitazione al computer: introduzione ad Octave, installazione ed eventuali operazioni preliminari.

16.10.09

Divisione di numeri complessi, numero complesso coniugato, valore assoluto o modulo di un numero complesso e comandi MATLAB/Octave relativi. Esercitazione al computer: operazioni aritmetiche, costruzione a : step : b, diversi formati di output, plot del grafico di una funzione, file della storia dei comandi, comando diary per salvare una sessione Octave. Esercizi consigliati: foglio del 14/10/2008, esercizi 4, 5 ed esercitazione al computer "esercitazione09-10-16.m".

22.10.09

Coordinate polari, conversione da coordinate polari a coordinate cartesiane e viceversa, comandi relativi di MATLAB/Octave. Numeri complessi in forma polare o trigonometrica, interpretazione geometrica della loro moltiplicazione (trasformazioni di similitudine del piano), formule di addizione del seno e del coseno, formula di De Moivre, radici ed esempi. Esercitazione al computer: calcolo delle radici n-esime di un numero complesso con MATLAB/Octave, calcolo delle radici di un polinomio.

23.10.09

Sviluppo in serie di Taylor della funzione esponenziale e delle funzioni seno e coseno, funzione esponenziale complessa, formula di Eulero. Definizione di matrice, matrici in MATLAB/Octave, il comando size. Esercitazione al computer: istruzione di scelta o alternativa if, definizione di una funzione attraverso un M-function file, esempio mycart2pol.m. Esercizi consigliati: foglio del 22/10/2008, esercizi 1-3.

29.10.09

Matrici, uguaglianza, addizione e sottrazione di matrici, matrice nulla, moltiplicazione per uno scalare, prodotto di matrici, regole del calcolo con le matrici, esempi numerici, alcune matrici particolari: matrice quadrata, matrice diagonale, matrice triangolare superiore o inferiore, matrice identità, matrice inversa, cenno ai sistemi di equazioni lineari, vettore riga o colonna, prodotto scalare di vettori, prodotto vettoriale di vettori dello spazio tridimensionale. Operazioni con le matrici e i vettori in MATLAB/Octave: somma, prodotto, comandi zeros, eye, diag, tril, triu, det, inv, eye, / (divisione dalla destra), \ (divisione dalla sinistra), dot, cross. Calcolo di coefficienti binomiali (comandi bincoeff, nchoosek) e delle radici di un polinomio (comando roots).

30.10.09

Cenno alle trasformazioni affini, applicazioni lineari tra spazi vettoriali e le matrici associate, esempio di rotazione nel piano in forma matriciale e attraverso la moltiplicazione di numeri complessi, rotazione nello spazio tridimensionale, determinante di una matrice quadrata, sviluppo di Laplace, esempi numerici, cenno alla definizione assiomatica del determinante secondo Weierstrass, il comando MATLAB/Octave det. Esercizi consigliati: foglio del 22/10/2008, esercizi 4, 6-9; foglio del 30/10/2008, esercizio 4.

05.11.09

Regola di Cramer ( Gabriel Cramer) per risolvere un sistema di equazioni lineari. Alcune proprietà del determinante, trasposta e trasposta coniugata di una matrice e relativi comandi MATLAB/Octave, matrici simmetriche, matrici hermitiane, calcolo del determinate di matrici triangolari mediante lo sviluppo di Laplace. Definizione del determinante con la formula di Leibniz (Gottfried Wilhelm Leibniz), permutazioni, inversioni, segno di una permutazione, comando perms di MATLAB/Octave, costo computazionale dell'algoritmo (funzione leibniz.m) che calcola il determinante secondo la formula di Leibniz, floating point operations per second (flops), central processing unit (CPU), comando cputime di MATLAB/Octave. Esercitazione al computer: estrarre elementi, righe, colonne e sottomatrici da una matrice (esercizio 8 del foglio del 22/10/2008).

06.11.09

Complessità computazionale del prodotto di matrici quadrate di dimensione n, O-grande (simbolo di Landau), cenno all'algoritmo di Strassen, complessità dell'algoritmo di Strassen, esperimento per esplorarne la complessità con la funzione ricorsivo Octave/MATLAB di Thomas F. Coleman e Charles F. Van Loan , altro esempio di una funzione recorsiva per il calcolo (non molto efficiente) del fattoriale (funzione fatt). Equazioni non lineari, il metodo di bisezione, errore assoluto del metodo, criteri di arresto, implementazione del metodo di bisezione come function di Octave/MATLAB: bisection.m. Esercizi consigliati: Quarteroni-Saleri, esercizi 1.4, 1.5, 1.13, 2.1, 2.2; foglio del 22/10/2008, esercizio 5; foglio del 30/10/2008, esercizio 2a.

12.11.09

Metodo di Newton o metodo delle tangenti, ordine di convergenza del metodo di Newton, confronto con il metodo di bisezione, metodo di Newton modificato per recuperare l'ordine di convergenza due nel caso di zeri con molteplicità maggiore di uno, criteri di arresto del metodo di Newton, cenno al metodo di Newton per sistemi di equazioni non lineari. Iterazioni di punto fisso. Esercitazione con Octave: applicazione della funzione bisection.m al calcolo del tasso medio di rendita di un fondo di investimento su più anni (Quarteroni-Saleri, 2.1).

13.11.09

Algoritmo delle iterazioni di punto fisso, condizione sufficiente per l'esistenza e l'unicità del punto fisso e per la convergenza della successione generata dal metodo di iterazione funzionale, condizioni sufficienti per la convergenza locale ( teorema di Ostrowski), esempi di divergenza, ordine di convergenza, locale convergenza del metodo di Newton. Esercizi consigliati: foglio del 30/10/2008.

19.11.09

Metodo di Horner (William George Horner, 1786 - 1837) per la valutazione efficiente di un polinomio e della sua derivata in un punto assegnato, algoritmo di divisione sintetica (horner.m), metodo di Newton-Horner (newtonhorner.m) per il calcolo di tutte le radici di un polinomio. Approssimazione di funzioni e dati: interpolazione polinomiale di Lagrange, esistenza e unicità del polinomio interpolatore, quantificazione dell'errore che si commette sostituendo una funzione con un suo polinomio interpolatore, fenomeno di Runge ( Carl Runge, 1856-1927). Esercitazione con Octave: calcolo di polinomi interpolatori e rappresentazione di grafici di funzioni e loro polinomi interpolatori, in particolare esemplificazione del fenomeno di Runge: history dei comandi.

20.11.09

Interpolazione polinomiale usando i nodi di Chebyshev ( P. L. Cebyshev, 1821-1894) e il codice Octave relativo, esempio di Runge. Interpolazione trigonometrica e trasformata rapida di Fourier, introduzione e impostazione del problema. Esercitazione con Octave: confronto del metodo di bisezione (bisection.m) col metodo di Newton (newton.m), ciclo while (esercizio 2 del foglio del 30/10/2008).

26.11.09

Interpolazione trigonometrica, trasformata rapida di Fourier e comandi Octave relativi, fenomeno dell'aliasing, interpolazione lineare composita, approssimazione con funzioni spline, in particolare la spline cubica interpolatoria naturale, retta dei minimi quadrati o retta di regressione e comandi Octave relativi.

27.11.09

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, formula del punto medio (o formula del rettangolo), formula di quadratura composita del rettagolo. Esercitazione con Octave: esempio di un'interpolazione polinomiale instabile (codice discusso in Aula 1 e in Aula 8), numeri (pseudo-)casuali, 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.

03.12.09

Formule di quadratura semplici e composite (formula del punto medio, formula del trapezio, formula di Simpson), loro errori (senza dimostrazione), loro gradi di esattezza e ordini di accuratezza delle formule composite. Cenno alle formule di Newton-Cotes, alla formula di Simpson adattiva e alle formule di Gauss-Legendre e di Gauss-Legendre-Lobatto, comando Octave quadl.

04.12.09

Sistemi lineari: algoritmo di Gauss per trasformare un sistema di equazioni lineari in un sistema equivalente (cioè avente le stesse soluzioni), ma con matrice dei coefficienti triangolare superiore. Fattorizzazione LU senza scambio delle righe, uso del programma lugauss.m per calcolarla. Esercitazione con Octave: confronto degli ordini di accuratezza delle formule di quadratura composite del punto medio (midpointc.m), del trapezio (comando trapz) e di Simpson (simpsonc.m), si veda anche http://www.dm.unibo.it/~incensi/download.htm. Esercizi consigliati: foglio del 06/11/2008, esercizi 6 e 7.

10.12.09

La fattorizzazione LU: costo computazionale, calcolo del determinante, soluzione di sistemi lineari mediante gli algoritmi delle sostituzioni in avanti e delle sostituzioni all'indietro, calcolo della matrice inversa di una matrice quadrata non singolare. Calcolo dell'inversa di una matrice quadrata non singolare con il metodo della matrice dei cofattori (o dei complementi algebrici). Errore algoritmico del metodo di Gauss, tecnica del pivoting ed esempio relativo (pivoting per righe), matrici di permutazione, comando Octave lu. Esempio di una matrice che non ha una fattorizzazione LU. Norme vettoriali ed esempi.

11.12.09

Norme matriciali indotte dalle norme vettoriali, raggio spettrale, norma di Frobenius (o di Schur), errore inerente del metodo di Gauss: stima dell'errore relativo della soluzione di un sistema lineare (teorema di Wilkinson), dimostrazione del teorema di Wilkinson nel caso di una sola perturbazione dei termini noti, condizionamento di un sistema lineare, esempio di un sistema lineare mal condizionato. Esercitazione con Octave: soluzione di un sistema lineare Ax = b mal condizionato con la fattorizzazione LU e la sostituzione in avanti e all'indietro (script sol.m), con la divisione dalla sinistra di Octave A\b e con il metodo iterativo di Gauss-Seidel (script itermeth.m), si veda anche http://www.dm.unibo.it/~incensi/download.htm e l'esercizio 4 del foglio del 09/12/2008.

17.12.09

Autovalori e autovettori di un endomorfismo di uno spazio vettoriale (si veda anche la dispensa) e di uno spazio vettoriale di dimensione finita, matrice contragrediente della matrice di trasformazione dei vettori di base, le matrici associate a un endomorfismo di uno spazio vettoriale di dimensione finita rispetto a due basi diverse dello spazio sono simili, polinomio caratteristico di un endomorfismo e di una matrice quadrata, autospazio relativo a un autovalore, matrici simili hanno lo stesso polinomio caratteristico, esempio in dimensione due.

18.12.09

Esempio del calcolo degli autovalori e degli autospazi in dimensione tre, gli autovalori di una matrice reale e simmetrica sono reali (senza dimostrazione), matrici ortogonali e matrici unitarie, diagonalizzazione di una matrice reale simmetrica. Il comando Octave eig. Progetti di calcolo numerico (da preparare per l'esame orale)


last updated 21st December 2009 Rüdiger Achilles