You are here: Home » Study Plan » Subject


Subject: NUMERICAL CALCULUS (A.A. 2021/2022)

degree course in COMPUTER SCIENCE

Course year 2
Teaching units Unit Calcolo numerico
A11 (lesson)
  • TAF: Supplementary compulsory subjects SSD: MAT/08 CFU: 9
Teachers: Silvia BONETTINI, Fittizio DOCENTE
Exam type oral
Evaluation final vote
Teaching language Italiano
Contents download pdf download




The course aims to provide the knowledge, skills, and tools necessary to tackle basic mathematical analysis problems through numerical techniques and develop computing codes in the Matlab programming environment.
For a more complete understanding of the training objectives, please refer to the reading of the expected learning outcomes following the completion of this training course.

Admission requirements

- Differential calculus for real functions of real variables.
- Integral calculus for real functions of one real variable.
- Basics of linear algebra.
- Basics of computer programming.

Course contents

Computer representation of numbers: rounding errors and floating-point arithmetic.
Systems of linear equations: stability analysis, Gaussian elimination and matrix decompositions (LU, Crout, Cholesky, QR and SVD); iterative methods (Jacobi and Gauss-Seidel), convergence analysis.
Nonlinear equations and systems of nonlinear equations: the bisection method, the Newton method, secant method, fixed point iterations, convergence analysis, stopping rules.
Data and functions approximation: basic functions for approximation, polynomial interpolation, interpolation by splines, least-squares approximation.
Numerical integration: interpolatory numerical integration, Newton-Cotes formulas, errors of quadrature formulas, composite rules for numerical integration.
Eigenvalues computation: power method, inverse power method, iterative QR.
Introduction to computer programming in the MATLAB environment, implementation of numerical algorithms.

Teaching methods

The course is delivered through face-to-face lectures and exercises that are carried out with the aid of a blackboard, audiovisual means (slides), and the computational environment Matlab. Attendance to face-to-face lessons is not compulsory. The course is delivered in Italian.

Assessment methods

Examination: oral exam. The candidate must demonstrate a thorough knowledge of: - the course content and teaching training, including both the institutional part, i.e. frontal lessons/classroom activities, and the laboratory practices; - the memorization and the operations of and between real numbers on the computer; - the main techniques for the solution of a linear system or a nonlinear equation, and the computation of eigenvalues and eigenvectors of a matrix; - the main notions on the data fitting problem, as the difference between interpolation and regression, the numerical strategies to design and compute an optimal model and the application to the numerical computation of the integral of a function; - the MATLAB syntax for the implementation of an elementar algorithm. The verification is integral with respect to the course's content; it is also verified the student's ability to relate specific subject content with the knowledge listed as pre-requisite. The oral exam consists in the implementation of one of the algorithms analyzed during the class in a Matlab environment and in the in-depth analysis of some topics treated during the lectures. The score of the oral exam, in a scale of thirty, is divided in: 5 points for the communicative skills; 5 points for multidisciplinary skills; 20 points for the knowledge of the contents. The result will be communicated to the individual student at the end of the oral exam.

Learning outcomes

1) Knowledge and understanding.
At the end of the course and through classroom lessons and individual study, it is hoped that the students will be able to orient themselves within the main concepts of numerical analysis relating to the machine numbers, solution of linear systems and nonlinear equations, and the problem of data approximation, recognizing and knowing how to rigorously describe the main definitions, properties and theorems seen in class.

2) Applied knowledge and understanding.
At the end of the course and through classroom exercises and individual work, it is hoped that the students will be able to model and solve mathematical problems using the techniques of numerical analysis with accuracy.

3) Autonomy of judgment.
At the end of the course, it is hoped that the students will be able to:
a) verify their degree of learning and understanding of the concepts exposed thanks to the possibility of intervention in class;
b) reorganize the knowledge learned and implement one's own ability to critically and independently evaluate what has been learned;
c) mastering a methodological approach that leads to verifying the statements and methods presented by means of rigorous arguments.

4) Communication skills.
At the end of the course, it is hoped that the students will be able to:
a) express their knowledge correctly and logically, recognizing the required topic and responding in a timely and complete manner to the exam questions.
b) face a dialectical confrontation in a timely and coherent way, arguing with precision.

5) Learning skills
At the end of the course, it is hoped that the students will be able to:
a) acquire computational knowledge as one's own heritage, which can be used at any other moment of one's cultural path;
b) have developed an aptitude for a methodological approach that leads to an improvement of the study method with consequent deepening of the ability to learn.


Il materiale di riferimento del corso saranno le dispense e le slides del docente, che verranno fornite agli studenti prima dell'inizio del corso.

Eventuali testi consigliati per approfondire le tematiche sviluppate nel corso sono i seguenti:

[1] A. Mazzia: Laboratorio di calcolo numerico. Applicazioni con Matlab e Octave, Pearson, 2014.
[2] G. Naldi, L. Pareschi, G. Russo: Introduzione al Calcolo Scientifico - Metodi e applicazioni con Matlab, McGraw-Hill, Milano 2001.
[3] A. Quarteroni, R. Sacco, F. Saleri: Matematica Numerica (3a edizione), Springer, 2008.
[4] A. Quarteroni, F. Saleri, P. Gervasio: Scientific Computing with MATLAB and Octave, Springer, 2010.