CALCOLO NUMERICO

Insegnamento
CALCOLO NUMERICO
Insegnamento in inglese
NUMERICAL CALCULUS
Settore disciplinare
MAT/08
Corso di studi di riferimento
MATEMATICA
Tipo corso di studio
Laurea
Crediti
6.0
Ripartizione oraria
Ore Attività frontale: 42.0
Anno accademico
2017/2018
Anno di erogazione
2018/2019
Anno di corso
2
Lingua
ITALIANO
Percorso
PERCORSO COMUNE
Docente responsabile dell'erogazione
SGURA Ivonne

Descrizione dell'insegnamento

ANALISI I e II, GEOMETRIA I e II, ALGEBRA, PROGRAMMAZIONE

 Il corso consiste nello studio di metodi numerici per la risoluzione di alcuni problemi matematici relativi ad argomenti dei primi anni del corso di Laurea. A tal fine, oltre a fornire gli algoritmi di calcolo, si dà rilievo all’analisi delle problematiche connesse all’uso della aritmetica finita. Si prevedono esercitazioni al calcolatore per sperimentare i vari concetti visti nella parte teorica del corso e per l’implementazione dei metodi numerici studiati. Per tale scopo l’ambiente di lavoro sarà il programma di Calcolo Scientifico Matlab.

Numerical Computing is the branch of mathematics that develops, analyzes and applies algorithms to solve with the aid of computer several problems included in basic courses of Mathematics (such as analysis, linear algebra, geometry). In this course, the focus is on numerical techniques for the solution of linear systems of any dimension and for rootfinding of nonlinear equations. Questions arising by the use of finite arithmetic on a computer, that is stability, accuracy and computational complexity, will be carefully analysed. Part of the course consists in the implementation of the methods, in order to demonstrate their performances on examples and counterexamples on a computer. For this goal, the students will learn the MatLab program for scientific calculus.

Conoscenze e comprensione. Possedere una solida preparazione con un ampio spettro di conoscenze di base di tipo numerico.

Capacità di applicare conoscenze e comprensione: # Essere capaci di implementare alcuni metodi in un linguaggio di programmazione in ambito scientifico # essere in grado di produrre semplici programmi al calcolatore, applicarli con senso critico anche a problemi semplici di tipo applicativo # essere capaci di leggere e comprendere, in modo autonomo, testi di base di Calcolo Numerico

Autonomia di giudizio. Il corso sarà svolto in modo da favorire e  sviluppare nello studente capacità di: problem solving, rappresentazione grafica di dati, discussione e confronto di risultati numerici.

Abilità comunicative. La presentazione degli argomenti sarà svolta in modo da consentire l’acquisizione di una buona capacità di comunicare problemi, idee e soluzioni.

Capacità di apprendimento. Saranno indicati argomenti da approfondire, strettamente correlati con l’insegnamento, al fine di stimolare la capacità di apprendimento autonomo dello studente.

Lezioni frontali in aula ed in Laboratorio Informatico. Circa metà del corso si svolge al calcolatore, con interazione continua fra studenti e docente.

L’esame consiste di norma in una prova scritta ed una prova orale. La prova scritta consiste in tre tracce, due su argomenti teorici del corso che includono ognuna un esercizio da svolgere carta e penna, la terza riguarda argomenti svolti in Laboratorio e la programmazione di semplici pezzi di codice. Il compito è da svolgere in tre ore. La prova orale, che verte essenzialemente sullo scritto, verifica l’abilità di esporre in modo chiaro e rigoroso alcuni contenuti del corso. Se lo studente non supera la prova orale è tenuto a rifare la prova scritta.

Sono, inoltre, previste due prove di valutazione intermedia (esoneri) da svolgersi al calcolatore in Laboratorio Informatico, di norma si svolgeranno una verso fine Aprile e  la seconda subito dopo la fine del corso. Gli studenti che ottengono in queste prove una media del 24 sono esonerati dal sostenere la prova scritta fino alla sessione di settembre e potranno presentarsi al più due volte alla prova orale, utilizzando l’esonero.

Gli studenti dovranno prenotarsi sia all'esame utilizzando esclusivamente le modalità on-line previste dal sistema VOL

Teoria degli errori: Insieme dei numeri di macchina. Rappresentazione dei numeri sul calcolatore: semplice e doppia precisione. Troncamento e Arrotondamento. Errore assoluto e relativo. Condizionamento di un problema. Propagazione degli errori e fenomeno di cancellazione. Analisi del costo computazionale. Metodo di Ruffini-Horner.
Elementi di algebra lineare: Operazioni fra matrici. Definizioni e proprietà di: matrici simmetriche, ortogonali e ortonormali; matrici a predominanza diagonale, matrici definite positive. Autovalori e autovettori: cenni. Norme vettoriali e norme indotte su matrici. Numero di condizionamento di una matrice.

Risoluzione di sistemi lineari: Studio del condizionamento di un sistema lineare. Teorema di perturbazione.

Metodi diretti: Fattorizzazioni di una matrice. Risoluzione di sistemi triangolari (inferiori e superiori). Aspetti implementativi. Matrici elementari. Metodo di eliminazione di Gauss e fattorizzazione LU. Pivot parziale e pivot totale. Analisi dell’errore e della stabilità degli algoritmi. Complessità del metodo di Gauss. Calcolo della matrice inversa. Risoluzione di sistemi tridiagonali: metodo di Thomas. Fattorizzazione di Cholesky. Cenni sulla risoluzione di sistemi sovradeterminati: le equazioni normali e il problema lineare dei minimi quadrati.
Metodi iterativi: definizioni e teoremi di convergenza per metodi iterativi lineari. Stime dell’errore. Criteri di stop e loro validità. Metodi di Jacobi e di Gauss-Seidel: risultati di convergenza. Metodo di rilassamento e stima del parametro ottimale
Calcolo degli zeri di funzioni non lineari: Metodo delle bisezioni: convergenza, criteri di stop. Metodi di iterazione funzionale o di punto fisso: studio della convergenza; criteri di arresto e stime dell'errore; ordine di convergenza. Metodo delle corde e metodo di Newton: interpretazione geometrica, proprietà e ordine di convergenza. Aspetti computazionali.
Per il Laboratorio: Principali comandi di manipolazione di vettori e matrici in ambiente Matlab; Elementi di grafica. Principali funzioni predefinite del Matlab (es: lu, qr, svd, eig, chol, etc). Cenni di programmazione: uso dei comandi for e while; M-file di tipo function e di tipo script. Algoritmi e programmi dei metodi implementati durante le lezioni in Laboratorio.

Programma delle lezioni (in English):

Foundations of Numerical Mathematics. Sources of Error in Computational Models; machine representation of numbers; the Floating-Point Number System: simple and double precision; rounding and truncating a real number; machine Floating-Point Operations.
Elements of matrix analysis. Operations with Matrices; trace, determinant, rank; special matrices: triangular, tridiagonal, banded, diagonally predominant, positive definite; eigenvalues and eigenvectors; spectral radius of a matrix; the Singular Value Decomposition (SVD); vector and matrix norms and their properties.
Solution of Linear Systems. Stability analysis of linear systems and the condition number of a matrix.
Direct Methods: Factorizations of a matrix. Solution of triangular systems and their implementation. The Gaussian Elimination Method (GEM) and LU Factorization: partial and total pivoting; stability analysis and computational complexity. Calculation of the inverse. Tridiagonal systems: Thomas algorithm. Symmetric and Positive Definite Matrices: Cholesky Factorization. Solution of rectangular systems: normal equations and the linear least square problem, QR factorization and SVD solution.
Iterative Methods: definitions and convergence of Linear Iterative Methods. Stopping criteria. Jacobi, Gauss-Seidel and Relaxation Methods: convergence results, estimate of relaxation optimal parameter; convergence results for some class of matrices.
Rootfinding methods for Nonlinear Equations. Bisection method: algorithm and convergence result. Fixed-Point Iterations for Nonlinear Equations: theorems of convergence, rate of convergence. Stopping Criteria and their validity. Methods of Chord, Secant and Newton: geometric meaning, properties and convergence order. Computational aspects.
For Computer Laboratory: Main commands in the Matlab environment for manipulating vectors and matrices and graphical representations. Main built-in functions in Matlab (eg: lu, qr, svd, eig, chol, etc..). How to write and apply M-files like “script” and “function”. Implementation of most of the methods studied in the theory.

  • D. Bini, M. Capovani, O. Menchi. Metodi Numerici per l’algebra lineare. Zanichelli, 1993. (Cap 1-2-3 Cenni, Cap.4, par.1—10,16—18, Cap.5, escluso par.5 e 7)
  • A. Quarteroni, R. Sacco, F. Saleri, Matematica Numerica, Springer Italia, 2000.(Cap. 1-2-3 parti indicate a lezione; Cap.4, par.1,2; Cap.6,par. 2,3,7.)
  • Appunti forniti dal docente
  • PER MATLAB: Quarteroni-Saleri: Introduzione al Calcolo Scientifico, Esercizi e problemi risolti con Matlab, Springer – CAP 1 e appunti del docente.

Semestre
Secondo Semestre (dal 25/02/2019 al 31/05/2019)

Tipo esame
Obbligatorio

Valutazione
Orale - Voto Finale

Orario dell'insegnamento
https://easyroom.unisalento.it/Orario

Scarica scheda insegnamento (Apre una nuova finestra)