- Docente: Lauro Moscardini
- Credits: 8
- SSD: FIS/05
- Language: Italian
- Moduli: Lauro Moscardini (Modulo 1) Federico Marinacci (Modulo 2)
- Teaching Mode: Traditional lectures (Modulo 1) Traditional lectures (Modulo 2)
- Campus: Bologna
- Corso: First cycle degree programme (L) in Astronomy (cod. 8004)
-
from Sep 23, 2024 to Nov 20, 2024
-
from Nov 25, 2024 to Dec 18, 2024
Learning outcomes
At the end of the course, the student will have the basic knowledge of the numerical algorithms commonly used in physical and astronomical applications. In particular the student will be able to write numerical codes using a high-level language (Fortran90) in order to:
- solve linear algebraic equations;
- interpolate, differentiate and integrate functions;
- find roots of non-linear equations;
- solve differential equations.
Course contents
- Introduction to the programming language Fortran90.
- Analysis and implementation of numerical algorithms for:
-roots of non-linear equations;
-systems of linear algebraic equations;
-statistical description of data;
-data interpolation;
-numerical differentiation and integration;
-generation of (pseudo-)random numbers;
-ordinary differential equations;
- Case studies in Fortran90.
Readings/Bibliography
Chapra, Canale , "Numerical Methods for Engineers, McGraw-Hill
Press et al. "Numerical Recipes", Cambridge University Press
Quarteroni et al. "Matematica Numerica", Springer
Lecture notes prepared by the teachers
Teaching methods
Part of the lectures (4 CFU) will be standard frontal lectures that will be delivered by making use of a blackboard and videoprojector.
Part of the lectures (4 CFU) will take place in the computing lab, where the students will carry out exercises implementing the algorithms discussed in class under the supervision of the teachers.
Assessment methods
The final exam is based on: 1) implementation of two numerical codes in Fortran90 to solve specific problems presented during the lectures; 2) written reports (one for each problem) on the results, discussing: the scientific problem, the numerical methods applied to solve it, the available data, the obtained results and their significance. The codes and the reports must be sent by email to the teachers at least 2 working days before the date fixed for the oral exams. The oral exam will include a discussion of the projects (codes and reports) and of the numerical algorithms analyzed in class. The level of knowledge of the programming language will also be verified.
Teaching tools
Programming techniques are illustrated by specific examples that are fully developed in class. Students can find, on the Virtuale learning environment (https://virtuale.unibo.it ), the material (e.g. analysis of the problem and implementation of the numerical techniques for its solution) related to such case studies. To improve their knowledge of numerical techniques students will be also asked, during laboratory hours, to independently solve problems connected to the main topics of the lectures.
Office hours
See the website of Lauro Moscardini
See the website of Federico Marinacci