LABORATORIO DI FISICA COMPUTAZIONALE

Crediti: 
6
Settore scientifico disciplinare: 
FISICA SPERIMENTALE (FIS/01)
Anno accademico di offerta: 
2016/2017
Semestre dell'insegnamento: 
Primo Semestre
Lingua di insegnamento: 

Italiano o inglese

Obiettivi formativi

Il corso si propone di fornire agli studenti le conoscenze di base di fisica computazionale. Particolare attenzione verrá data allo studio dei principali algoritmi per la soluzione di sistemi lineari, root finding, per la rappresentazione di funzioni, derivate ad integrali, per interpolazione, e per la soluzione di ODEs, e PDEs. Le lezioni teoriche saranno alternate ad esercitazioni pratiche in cui gli studenti implementeranno gli algoritmi per risolvere problemi semplici di fisica. Ogni settimana saranno assegnati compiti a casa che verranno poi presentati in classe la settimana successiva con l'intento di stimulare la discussione sui metodi e sull'implementazione.

Prerequisiti

Algebra lineare, ODEs, PDEs, metodi matematici per la fisica, nozioni di base per il calcolo computazionale

Contenuti dell'insegnamento

* Introduzione a basic tools
- Linux and bash
- Version control, software repositories, git
- LaTeX, BibTeX and a simple Makefile

* Introduzione a Python
- Basics: language, variables, functions, import, scripts, notebooks ...
- Modules: matplotlib, scipy, numpy

* Numeri e aritmetica sul computer
- floating point (FP) representation, machine precision
- FP arithmetics

* Ricerca di zeri
- Bisection, Secant, Newthon-Raphson

* Sistemi lineari
- Direct methods: Gauss and Gauss-Jordan elimination, LU, tridag
- Iterative methods: Jacobi, Gauss-Seidel, SOR algorithms
- Ideas about SVD and sparse system

* Rapresentazione di funzioni, interpolazione e integrali
- Polynomial approximations, interpolant and spectral representation
- Integrals: Simple formulas, Gauss quadrature
- Interpolation: Lagrangian polynomial and spline

* Derivate
- Finite differencing: Taylor, interpolating polynomial, Fornmberg formula
- Spectral differentiation
- Comparison: Spectral, Finite Element, Finite Differencing (FD) methods

* ODE Initial Value Problems (IVPs)
- Euler and error analysis, Euler backwards
- Explicit/implicit, stiff equations
- Stability analysis
- Runge-Kutta methods
- Cenni su symplectic methods

* Fast Fourier transform
- The FFT algorithm
- Applications: time series analysis and spectral methods

* PDEs
- Idee generali, esempi di equazioni, Bounday Value Problem (BVP), IVP, IVBP
- Truncation error and convergence

* Elliptic PDEs
- FD and Spectral methods
- linear and nonlinear system

* Hyperbolic PDEs
- FD methods, stability analysis and CFL limit.
- Method of lines
- Ideas about Finite Volume (FV) and spectral methods

* Parabolic PDEs
- CLF stability, implicit/semi-implicit algorithms.

Bibliografia

* Numerical Recipes, the Art of Scientific Computing

* Spectral Methods in Matlab, Lloyd N. Trefethen

* Chebyshev and Fourier Spectral Methods, John, P. Boyd

* Evans, Lawrence C., Partial differential equations Graduate Studies in Mathematics 19 (2nd ed.), Providence,

* Numerical Approximation of Partial Differential Equations,
A .Quarteroni, A. Valli

* Lectures for VII Mexican school for Gravitation and Mathematical Physics, 2006, Matthew W.Choptuik

* Spectral Methods for Numerical Relativity http://relativity.livingreviews.org/Articles/lrr-2009-1/

* NIST Digital Library of Mathematical Functions
http://dlmf.nist.gov/

Metodi didattici

Lezioni frontali e lavoro al computer

Modalità verifica apprendimento

Esercizi ogni settimana e progetto finale

Altre informazioni

Gli studenti interessati sono invitati a contattarmi al piu presto per discutere modifiche al programma in base alla preparazione ed eventualli interessi