CFU
8
Length
14 Weeks
Semester DD
First
- scientific programming techniques
- fundamentals of parallel computing on CPU and GPU platforms
- the building blocks of numerical analysis
- systems of linear equations
- integration of functions
- minimization
- eigenvalues and eigenvectors
- Fourier transform and FFT
- systems of non-linear equations
- ill-posed inverse problems: the Laplace transform
- inversion of sparse matrices
- Monte Carlo methods for systems with many degrees of freedom
- generation of random numbers
- importance sampling and molecular dynamics
- Hybrid Monte Carlo
- kinetic approach to numerically solve the Navier-Stokes equations
The course aims to:
- consolidate students' knowledge of the algorithmic techniques underlying numerical analysis
- provide students with in-depth knowledge of modern scientific programming techniques and in particular parallel computing techniques
- provide students with the theoretical and numerical elements necessary for the numerical study of interacting systems with many degrees of freedom.
At the end of the course, students should be able to write correct and reasonably efficient numerical codes in C and/or FORTRAN to:
- invert sparse matrices and solve inverse problems (Fourier, Laplace, etc.);
- perform Monte Carlo simulations of systems with many degrees of freedom;
- solve stochastic differential equations (Langevin, Fokker-Plank)