B8308 - NUMERICAL ANALYSIS

Academic Year 2025/2026

  • Docente: Serena Morigi
  • Credits: 6
  • SSD: MAT/08
  • Language: English

Learning outcomes

At the end of the course, the student knows the numerical-mathematical aspects and the main algorithmic methodologies underlying scientific calculation and data analysis. In particular, the student is able to use numerical linear algebra methods for data analysis, to solve large linear and non-linear systems, interpolation problems, least squares data approximation, numerical integration and differentiation, methods of optimization and regularization techniques. The course includes a laboratory activity which is an integral part of it and allows the student to implement and perform computer data analysis and apply the methodologies studied to test cases.

Course contents

The first part cover a first course in Numerical Analysis. Cover the basic techniques of the subject and provides a foundation for the efficient numerical solution of problems in science and engineering. Numerical methods to solve linear and nonlinear systems , numerical optimization, numerical derivative, numerical integration, interpolation, approximation. A brief introduction to inverse problems and regularization techniques.

This second part of the course presents numerical methods for the solution of problems modeled by both Ordinary Differential Equations (ODE) and Partial Differential Equations (PDE). The course discusses their analysis, applications, and computation of the solution (by first discretizing the equation, bringing it into a finite-dimensional subspace by a finite element method, or a finite difference method , and finally reducing the problem to the solution of an algebraic equations)

Numerical Analysis (6 CFU)

1. Linear algebra: matrices, vector and matrix norm, eigendecomposition, matrix algebra.

2. Basics of numerical computing: floating-point arithmetic, roundoff errors, algorithms, problem conditioning, numerical stability.

3. Introduction to programming using MATLAB.

4. Solving Linear Systems. Direct methods: LU factorization, pivoting, Gaussian elimination, Cholesky factorization, Thomas algorithm. Solving Linear Systems. Itarative methods:Gauss-Seidel, Conjugated Gradients, Preconditioning.

5. Numerical solution of nonlinear equations and systems: bisection method, Newton's method, secant, regula falsi.

6. Polynomial approximation of data by least squares: normal equations, method based on QR factorization and SVD. Polynomial interpolation and piecewise polynomial interpolation

7. Regularization methods for ill-posed problems, Principal Component Analysis.

8. Numerical integration: Newton Cotes quadrature formulas of simple and composite. Numerical differentiation

9. Numerical Optimization: gradient descent, stochastic gradient descent, optimization for machine learning, Newton's method , Gauss-Newton method.

Numerical Methods for Differential Equations (3 CFU)

1. Numerical Solution of Ordinary Differential Equations: One step methods; Control of error; Definition of the step-size and adaptive-step methods; stability; Methods for Stiff Problems;

2. Boundary value problems;

3. Numerical Solution of Partial Differential Equations; Classification; domain of dependence, boundary conditions; Finite difference methods for parabolic problems; transport equation, hyperbolic problems: Galerkin method for Parabolic Problems; Elliptic equations: finite difference method and basics on finite element methods.

Readings/Bibliography

A First Course in Numerical Methods, Uri M. Ascher Chen Greif, SIAM

Cleve Moler, Numerical Computing with MATLAB , Ed. SIAM, 2004.
Michael T. Heath, Scientific Computing: An Introductory Survey , 2nd ed., McGraw-Hill, 2002.

A.Quarteroni, F.Saleri, P.Gervasio, Scientific Computing with MATLAB and Octave, 2010

A. Quarteroni, Numerical Models for Differential Problems, 2014, ISBN 978-88-470-5522-3

Randall J. Leveque, Finite Difference Methods for Ordinary and Partial Differential Equations: Steady-State and Time-Dependent Problems, 2007

Teaching methods

class hours and computational exercises in lab.

Assessment methods

The exam consists of a written parts and an oral one:

Written exam (2h30) for NUMERICAL  ANALYSIS  

Oral exam for the second part Differential Equations.

An individual project is assigned at the end of the course for part B. It consists in a biomedical problem with a ODE/BVP/PDE formulation involved to be solved in MATLAB. A report on the proposed implementation and experiments has to be submitted before the oral part.

Teaching tools

Experience in Lab. is an essential part of the course. Matlab is used as problem solving environment, matrix-vector programming language, graphics.

Slides provided in the WEB site in the Platform virtuale.unibo.it

Office hours

See the website of Serena Morigi