Seguici su
Cerca

CALCOLO NUMERICO

Anno accademico 2019/2020 - 2° anno
Docente: Rosa Maria PIDATELLA
Crediti: 6
Organizzazione didattica: 150 ore d'impegno totale, 103 di studio individuale, 35 di lezione frontale, 12 di esercitazione
Semestre:

Obiettivi formativi

Conoscenza e capacità di comprensione (knowledge and understanding)

Acquisizione delle principali tecniche di approssimazione numerica con lo svolgimento di numerosi esercizi volti a chiarire i contenuti del corso. Durante un servizio di tutorato pomeridiano si implementeranno gli algoritmi presentati a lezione con il linguaggio Python (versione Enthought Canopy) relativi alla risoluzione numerica dei principali problemi dell’Analisi Numerica. In particolare lo studente familiarizzerà con le matrici e la risoluzione dei sistemi lineari con tecniche dirette ed iterative, soluzione del metodo dei minimi quadrati, tecniche di calcolo di autovalori ed autovettori, tecniche di quadratura e di ricerca degli zeri di funzioni non lineari.

Capacità di applicare conoscenza e comprensione (applying knowledge and understanding)

Durante il corso si risolveranno numerosi esercizi, svolti e commentati in classe e, qualora il tempo a disposizione non fosse sufficiente, verranno assegnati come compiti a casa e successivamente analizzati e corretti in classe. Analogamente ci saranno delle lezioni pratiche per l'implementazione sul calcolatore delle tecniche apprese.

Autonomia di giudizio (making judgements)

Lo studente sarà invitato, sia in classe che a casa, a svolgere degli esercizi e implementare dei codici in modo da rendersi conto del livello raggiunto nella comprensione della materia.

Abilità comunicative

Gli elaborati previsti saranno discussi e analizzati insieme allo studente. La docente esorterà gli studenti a svolgere gli esercizi collaborando in gruppo, sia in classe che a casa.

Capacità di apprendimento (learning skills)

Durante il corso sarà dato spazio alla discussione sulla distribuzione del carico didattico suddividendo in maniera proporzionata il lavoro svolto in classe e quello dedicato allo studio personale.


Modalità di svolgimento dell'insegnamento

L'insegnamento si avvarrà di slides, dello svolgimento di esercizi alla lavagna e di codici in Python da sviluppare su pc personali o in laboratorio.


Prerequisiti richiesti

Elementi di Analisi Matematica e di Algebra lineare.


Frequenza lezioni

Fortemente consigliata soprattutto per lo svolgimento degli esercizi in classe e della scrittura dei codici in laboratorio informatico


Contenuti del corso

Introduzione all'uso del calcolatore.

Introduzione all'uso del linguaggio Python. Enthought Canopy. Variabili ed istruzioni elementari. Cicli. Strutture dati. Moduli. Uso dei pacchetti matplotlib e numpy.

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

1. R. Sacco, A. Quarteroni, F. Saleri, “Matematica Numerica”, Springer, 2001.

2. G.Naldi, L.Pareschi, G.Russo, Introduzione al calcolo scientifico, McGraw-Hill, 2001.



Programmazione del corso

 ArgomentiRiferimenti testi
1Introduzione all'uso del calcolatore. Introduzione all'uso del linguaggio Python. Enthought Canopy. Variabili ed istruzioni elementari. Cicli. Strutture dati. Moduli. Uso dei pacchetti matplotlib e numpy.Un'ampia documentazione su Python si trova sia on line che su carta. Si consulti il sito: http://www.python.it/doc/libri/  
2Rappresentazione in virgola mobile. I numeri di macchina. Troncamento ed arrotondamento. Operazioni di macchina. Cancellazione numerica. Ordine di accuratezza.1,2 
3Algebra 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.1,2 
4Metodi diretti per la risoluzione dei sistemi lineari: sistemi triangolari, metodo di eliminazione di Gauss, pivoting. Fattorizzazioni A=LU e PA=LU.1,2 
5Metodi compatti, fattorizzazione di Choleski e loro implementazione in python. Condizionamento di un sistema lineare. Numeri di condizionamento. Matrici sparse e loro rappresentazione.1,2 
6Metodi iterativi per la soluzione di sistemi lineari: metodi di Jacobi, metodo di Gauss-Siedel e metodo SOR. Criteri d'arresto. Metodi iterativi per punti e per blocchi (cenni). Decomposizione in valori singolari (cenni).1,2 
7Autovalori ed autovettori: richiami. Localizzazione degli autovalori: i teoremi di Gershgorin-Hadamard. Calcolo degli autovalori: il metodo delle potenze, ed il metodo delle potenze inverse.1,2 
8Approssimazione 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 nelle forme di Lagrange e di Newton.1,2 
9Polinomi 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.1,2 
10Interpolazione mediante polinomi a tratti. Funzioni spline. Calcolo delle spline cubiche.1,2 
11Metodo dei minimi quadrati e applicazioni. Equazioni normali e loro interpretazione geometrica. 1,2 
12Soluzione 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.1,2 
13Formule 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).1,2 

Verifica dell'apprendimento

Modalità di verifica dell'apprendimento

L'esame consiste in una prova pratica ed in una prova orale.

Si può accedere all'esame orale solo dopo il superamento della prova pratica.

La prova pratica consiste nella risoluzione di alcuni esercizi proposti. A scelta dello studente gli esercizi possono essere svolti o con l'uso di una calcolatrice o con l'uso del calcolatore mediante la scrittura di un codice in Python.

Il superamento della prova pratica permette di accedere alla prova orale nella stessa sessione o anche in una sessione successiva, nell'arco di un anno.


Esempi di domande e/o esercizi frequenti

Velocità e complessità computazionale di un algoritmo, risoluzione di un sistema lineare con metodi diretti o iterativi, quadrature di Newton-Cotes, interpolazione.