66736 - METODI NUMERICI

Anno Accademico 2022/2023

  • Docente: Damiana Lazzaro
  • Crediti formativi: 6
  • SSD: MAT/08
  • Lingua di insegnamento: Italiano
  • Moduli: Damiana Lazzaro (Modulo 1) Damiana Lazzaro (Modulo 2)
  • Modalità didattica: Convenzionale - Lezioni in presenza (Modulo 1) Convenzionale - Lezioni in presenza (Modulo 2)
  • Campus: Cesena
  • Corso: Laurea in Ingegneria e scienze informatiche (cod. 8615)

Conoscenze e abilità da conseguire

Conoscenza degli aspetti fondamentali di metodologie dell'algebra lineare numerica e dell'analisi numerica utilizzabili nei sistemi informatici. Particolare attenzione sarà rivolta all'acquisizione di strumenti di base matematicocomputazionali tipici di alcune applicazioni come l'elaborazione di segnali ed immagini e l'analisi di dati strutturati.

Contenuti

1. Il Calcolo Numerico - Obiettivi e problemi nella risoluzione di problemi pratici al calcolatore.

2. Numeri Finiti - Rappresentazione dei numeri reali. I numeri finiti. Errori di rappresentazione. Aritmetica floating point. Analisi dell’errore nelle operazioni aritmetiche elementari. Propagazione degli errori: condizionamento di un problema e stabilità dell'algoritmo risolutivo.

3. Richiami di Algebra Lineare - Richiami su vettori, matrici e spazi vettoriali. Norme di vettori e norme di matrici.

4. Zeri di Funzioni - Formulazione del problema. Tecniche di Risoluzione. Metodi iterativi, convergenza e ordine dei metodi. Metodi a convergenza locale e a convergenza globale. Metodo di bisezione e altri metodi del primo ordine. Un metodo del secondo ordine: il metodo di Newton. Metodi quasi-Newton: il metodo delle secanti. Metodo di Newton-Raphson per la soluzione numerica di sistemi di equazioni non-lineari.

5. Soluzione numerica di Sistemi Lineari: Metodi diretti - Indice di condizionamento di una matrice e condizionamento del problema. Algoritmo di eliminazione Gaussiana e fattorizzazione LU di una matrice. Stabilità della fattorizzazione LU. Strategie pivotali. Fattorizzazione di Cholesky per matrici simmetriche e definite positive. Fattorizzazione QR e fattorizzazione SVD di matrici rettangolari. Proprietà.

6. Approssimazione ai minimi quadrati - Metodo delle equazioni normali, metodo QRLS (risoluzione del problema ai minimi quadrati utilizzando la fattorizzazione QR), metodo basato sulla fattorizzazione SVD della matrice.

7. Analisi dei dati-  Principal Component Analysis: fattorizzazione SVD della matrice di covarianza.

8. Interpolazione - Interpolazione polinomiale. Esistenza ed unicità del polinomio interpolatore. Forma di Lagrange e forma di Newton. Espressione dell'errore nell'interpolazione polinomiale. Problemi di convergenza. Condizionamento del problema di interpolazione polinomiale.

9. Integrazione Numerica - Formule di quadratura di Newton-Cotes. Formule semplici e formule composite. Errore delle formule di quadratura semplici e composite.


Testi/Bibliografia

Fondamentale sarà l’utilizzo degli appunti presi a lezione e del materiale informatico reso disponibile all'indirizzo https://virtuale.unibo.it/

Per ulteriori approfondimenti si consigliano:

[1] R. Johansson: Numerical Python - Scientific Computing and Data Science Applications with Numpy, SciPy and Matplotlib (2nd edition), Apress, 2019

[2] J. Kiusalaas: Numerical Methods in Engineering with Python 3, Cambridge University Press, 2013

[3] A. Quarteroni, R. Sacco, F. Saleri, P. Gervasio: Matematica Numerica (4a edizione), Springer Verlag, 2014

[4] R. Bevilacqua, D. Bini, M. Capovani, O. Menchi: Metodi Numerici, Zanichelli, Bologna, 1992

[5] D. Bini, M. Capovani, O. Menchi: Metodi numerici per l'algebra lineare, Zanichelli, Bologna, 1996

Metodi didattici

Il corso è strutturato in lezioni frontali ed esercitazioni in laboratorio. Più precisamente, alle lezioni frontali in aula in cui vengono presentati i metodi numerici di base per risolvere problemi classici della matematica mediante l'uso di un calcolatore, fanno seguito esercitazioni in laboratorio che mirano all'implementazione di tali metodi in Python e allo sviluppo di un'adeguata sensibilità e consapevolezza del loro utilizzo.

Modalità di verifica e valutazione dell'apprendimento

La prova d'esame mira a verificare il raggiungimento dei seguenti obiettivi didattici:

- conoscenza degli elementi fondamentali del calcolo numerico, illustrati durante le lezioni frontali;

- capacità di impiegare i metodi numerici di base per risolvere problemi reali mediante calcolatore.

L'esame di fine corso (la cui valutazione è in trentesimi) si svolgerà in un'unica prova che comprende, sia la realizzazione al calcolatore di codici Python per la risoluzione di problemi numerici, che la risposta scritta a domande teoriche sugli argomenti trattati nelle lezioni frontali.

Strumenti a supporto della didattica

Il corso prevede un'attività di laboratorio in cui si utilizzerà il linguaggio di programmazione Python. Il relativo materiale didattico verrà messo a disposizione dello studente in formato elettronico e sarà reperibile all'indirizzo https://virtuale.unibo.it/

Orario di ricevimento

Consulta il sito web di Damiana Lazzaro