NUMERICAL CALCULUS

Teaching in italian
CALCOLO NUMERICO
Teaching
NUMERICAL CALCULUS
Subject area
MAT/08
Reference degree course
MATHEMATICS
Course type
Bachelor's Degree
Credits
6.0
Teaching hours
Frontal Hours: 48.0
Academic year
2024/2025
Year taught
2025/2026
Course year
2
Language
ITALIAN
Curriculum
PERCORSO COMUNE

Teaching description

Teaching program is provisional and may be subject to changes

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 20 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

Il MATERIALE DIDATTICO sarà reperibile nella sezione File del Team previsto per il Corso di Calcolo Numerico

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.

Semester

Exam type
Compulsory

Type of assessment
Separate Written and Oral - Final grade

Course timetable
https://easyroom.unisalento.it/Orario

Download teaching card (Apre una nuova finestra)(Apre una nuova finestra)