Numerical calculus and programming

Course objectives

The course is an introduction to the numerical methods used for the solution of some basic problems arising in applied sciences and engineering. The course serves as a link between the basic courses of Calculus I and II and Geometry, delivered at the first year of B.Sc. and the engineering courses delivered at the following years. The main focus of the course is in the study of the methods and their implementation in a numerical computing environment (Matlab or Python). To this end, the course will take place in two ways, lectures and lab exercises. During the lectures, the main features of numerical methods will be outlined. During lab exercises, algorithms will be coded and used to solve simple test problems. 1. Knowledge and understanding: To know and to have understood the basic concepts of numerical analysis and the main features of numerical methods used to solve problems arising in the applied sciences. 2. Applying knowledge and understanding: To learn how to translate a numerical method into an algorithm, to code it by Matlab or Python, to use the code to solve test problems. 3. Making judgments: To learn how to identify the correct numerical method to solve a given problem, to analyze its performance through numerical tests. 4. Communication skills: To explain basic mathematical concepts, to explain a code, to describe the results of numerical tests. 5. Learning skills: To use numerical methods; to code them by a programming language; to numerically solve an applied problems

Channel 1
FRANCESCA PITOLLI Lecturers' profile

Program - Frequency - Exams

Course program
The course unit consists of 90 hours duration, with lectures and exercises, for a total of 9 ECTS. Arguments of the teaching modules are the following. Finite precision and accumulation of round-off errors; truncation errors; conditioning of a mathematical problem; numerical stability (2 hours). Introduction to the solution of non linear equations and non linear systems of equations by iterative methods (14 hours). Numerical linear algebra: direct and iterative methods for linear systems (8 hours). Introduction to approximation theory: polynomial interpolation, Lagrange formula, interpolation error; least squares approximation by algebraic and trigonometric polynomials; splines, linear interpolating splines (14 hours). Numerical integration: elementary and composite Newton-Cotes formulas, error and convergence, method of trapezes, Simpson’s composite rule (4 hours). Numerical methods for initial value problems: discretization error, consistency, stability; one-step methods, Euler method, Heun method, classical Runge-Kutta method, convergence. Finite difference methods for boundary value problems (20 hours). Introduction to Matlab (28 hours).
Prerequisites
Knowledge of fundamentals of calculus, geometry and linear algebra
Books
L. Gori, Calcolo Numerico, Ed. Kappa, 2006 L. Gori, M.L. Lo Cascio, F. Pitolli, Esercizi di Calcolo Numerico, Ed. Kappa, 2007 Course Slides (to be downloaded)
Teaching mode
The course includes both lectures and lab exercises. During the lectures, the teacher will outline and discuss the main features of the numerical methods listed in the program. During lab exercises, firstly the teacher will give an introduction to programming in Matlab, then the teacher will show how to code algorithms. During the course the teacher will also provide guided exercises on numerical methods and programming and will assign homeworks to students.
Frequency
Attending of the course is warmly recommended.
Exam mode
Assessment is based on two components: • solution of exercises (55%): students should identify the numerical method suitable to solve a given problem and discuss numerical issues (accuracy, convergence, stability); • computer implementation of numerical algorithms (45%): students should implement a numerical algorithm on the computer, realize numerical tests and critically analyze the results. The oral part is not compulsory.
Bibliography
V. Comincioli, Analisi numerica: metodi, modelli, applicazioni, Mcgraw-Hill Libri Italia s.r.l., Milano, 1990 A. Quarteroni, R.Sacco, F, Saleri. Matematica numerica. Springer, Milano, 2008 F. Fontanella, A. Pasquali, Calcolo numerico: Metodi e algoritmi, Vol. 1, Pitagora Editrice, Bologna. F. Fontanella, A. Pasquali, Calcolo numerico: Metodi e algoritmi, Vol. 2, Pitagora Editrice, Bologna.
Lesson mode
The course includes both lectures and lab exercises. During the lectures, the teacher will outline and discuss the main features of the numerical methods listed in the program. During lab exercises, firstly the teacher will give an introduction to programming in Matlab, then the teacher will show how to code algorithms. During the course the teacher will also provide guided exercises on numerical methods and programming and will assign homeworks to students.
FRANCESCA PITOLLI Lecturers' profile

Program - Frequency - Exams

Course program
The course unit consists of 90 hours duration, with lectures and exercises, for a total of 9 ECTS. Arguments of the teaching modules are the following. Finite precision and accumulation of round-off errors; truncation errors; conditioning of a mathematical problem; numerical stability (2 hours). Introduction to the solution of non linear equations and non linear systems of equations by iterative methods (14 hours). Numerical linear algebra: direct and iterative methods for linear systems (8 hours). Introduction to approximation theory: polynomial interpolation, Lagrange formula, interpolation error; least squares approximation by algebraic and trigonometric polynomials; splines, linear interpolating splines (14 hours). Numerical integration: elementary and composite Newton-Cotes formulas, error and convergence, method of trapezes, Simpson’s composite rule (4 hours). Numerical methods for initial value problems: discretization error, consistency, stability; one-step methods, Euler method, Heun method, classical Runge-Kutta method, convergence. Finite difference methods for boundary value problems (20 hours). Introduction to Matlab (28 hours).
Prerequisites
Knowledge of fundamentals of calculus, geometry and linear algebra
Books
L. Gori, Calcolo Numerico, Ed. Kappa, 2006 L. Gori, M.L. Lo Cascio, F. Pitolli, Esercizi di Calcolo Numerico, Ed. Kappa, 2007 Course Slides (to be downloaded)
Teaching mode
The course includes both lectures and lab exercises. During the lectures, the teacher will outline and discuss the main features of the numerical methods listed in the program. During lab exercises, firstly the teacher will give an introduction to programming in Matlab, then the teacher will show how to code algorithms. During the course the teacher will also provide guided exercises on numerical methods and programming and will assign homeworks to students.
Frequency
Attending of the course is warmly recommended.
Exam mode
Assessment is based on two components: • solution of exercises (55%): students should identify the numerical method suitable to solve a given problem and discuss numerical issues (accuracy, convergence, stability); • computer implementation of numerical algorithms (45%): students should implement a numerical algorithm on the computer, realize numerical tests and critically analyze the results. The oral part is not compulsory.
Bibliography
V. Comincioli, Analisi numerica: metodi, modelli, applicazioni, Mcgraw-Hill Libri Italia s.r.l., Milano, 1990 A. Quarteroni, R.Sacco, F, Saleri. Matematica numerica. Springer, Milano, 2008 F. Fontanella, A. Pasquali, Calcolo numerico: Metodi e algoritmi, Vol. 1, Pitagora Editrice, Bologna. F. Fontanella, A. Pasquali, Calcolo numerico: Metodi e algoritmi, Vol. 2, Pitagora Editrice, Bologna.
Lesson mode
The course includes both lectures and lab exercises. During the lectures, the teacher will outline and discuss the main features of the numerical methods listed in the program. During lab exercises, firstly the teacher will give an introduction to programming in Matlab, then the teacher will show how to code algorithms. During the course the teacher will also provide guided exercises on numerical methods and programming and will assign homeworks to students.
CHIARA SORGENTONE Lecturers' profile

Program - Frequency - Exams

Course program
The course unit consists of 90 hours duration, with lectures and exercises, for a total of 9 ECTS. Arguments of the teaching modules are the following. Finite precision and accumulation of round-off errors; truncation errors; conditioning of a mathematical problem; numerical stability (2 hours). Introduction to the solution of non linear equations and non linear systems of equations by iterative methods (14 hours). Numerical linear algebra: direct and iterative methods for linear systems (8 hours). Introduction to approximation theory: polynomial interpolation, Lagrange formula, interpolation error; least squares approximation by algebraic and trigonometric polynomials; splines, linear interpolating splines (14 hours). Numerical integration: elementary and composite Newton-Cotes formulas, error and convergence, method of trapezes, Simpson’s composite rule (4 hours). Numerical methods for initial value problems: discretization error, consistency, stability; one-step methods, Euler method, Heun method, classical Runge-Kutta method, convergence. Finite difference methods for boundary value problems (20 hours). Introduction to Matlab (28 hours).
Prerequisites
Knowledge of fundamentals of calculus, geometry and linear algebra
Books
L. Gori, Calcolo Numerico, Ed. Kappa, 2006 L. Gori, M.L. Lo Cascio, F. Pitolli, Esercizi di Calcolo Numerico, Ed. Kappa, 2007 Course Slides (to be downloaded)
Frequency
Attending of the course is warmly recommended.
Lesson mode
The course includes both lectures and lab exercises. During the lectures, the teacher will outline and discuss the main features of the numerical methods listed in the program. During lab exercises, firstly the teacher will give an introduction to programming in Matlab, then the teacher will show how to code algorithms. During the course the teacher will also provide guided exercises on numerical methods and programming and will assign homeworks to students. Attending of the course is warmly recommended.
CHIARA SORGENTONE Lecturers' profile

Program - Frequency - Exams

Course program
The course unit consists of 90 hours duration, with lectures and exercises, for a total of 9 ECTS. Arguments of the teaching modules are the following. Finite precision and accumulation of round-off errors; truncation errors; conditioning of a mathematical problem; numerical stability (2 hours). Introduction to the solution of non linear equations and non linear systems of equations by iterative methods (14 hours). Numerical linear algebra: direct and iterative methods for linear systems (8 hours). Introduction to approximation theory: polynomial interpolation, Lagrange formula, interpolation error; least squares approximation by algebraic and trigonometric polynomials; splines, linear interpolating splines (14 hours). Numerical integration: elementary and composite Newton-Cotes formulas, error and convergence, method of trapezes, Simpson’s composite rule (4 hours). Numerical methods for initial value problems: discretization error, consistency, stability; one-step methods, Euler method, Heun method, classical Runge-Kutta method, convergence. Finite difference methods for boundary value problems (20 hours). Introduction to Matlab (28 hours).
Prerequisites
Knowledge of fundamentals of calculus, geometry and linear algebra
Books
L. Gori, Calcolo Numerico, Ed. Kappa, 2006 L. Gori, M.L. Lo Cascio, F. Pitolli, Esercizi di Calcolo Numerico, Ed. Kappa, 2007 Course Slides (to be downloaded)
Frequency
Attending of the course is warmly recommended.
Lesson mode
The course includes both lectures and lab exercises. During the lectures, the teacher will outline and discuss the main features of the numerical methods listed in the program. During lab exercises, firstly the teacher will give an introduction to programming in Matlab, then the teacher will show how to code algorithms. During the course the teacher will also provide guided exercises on numerical methods and programming and will assign homeworks to students. Attending of the course is warmly recommended.
  • Lesson code1019479
  • Academic year2024/2025
  • CourseEnvironmental Engineering
  • CurriculumCurriculum unico
  • Year2nd year
  • Semester2nd semester
  • SSDMAT/08
  • CFU9
  • Subject areamatematica, informatica e statistica