LABORATORY FOR COMPUTATIONAL PHYSICS
cod. 1005897

Academic year 2015/16
2° year of course - Second semester
Professor
Academic discipline
Fisica sperimentale (FIS/01)
Field
Attività formative affini o integrative
Type of training activity
Related/supplementary
62 hours
of face-to-face activities
6 credits
hub: PARMA
course unit
in - - -

Learning objectives

The objective of the course is to familiarize with implementation of numerical methods for scientific calculus using some programming languages such as Fortran, Matlab and Python.
At the end of the course the student should be able to understand and develop some proposed numerical algorithms, proving his ability with the acquired notions in understanding and solving some problems in classical physics.

Prerequisites

Basic notions of mathematical calculus and of classical physics.

Course unit content

The basic contents of the course concern the elements of numerical analysis aimed to solve elementary problems in classical physics in both experimental and theoretical fields, such as data analysis, numerical simulation of physics experiments, comparison between numerical calculus and analytic solution of elementary problems in classical physics in order to test numerical accuracy, calculus of planetary orbits, stability of hamiltonian systems.

Full programme

Elements of Programming in Fortran, Matlab and Python.
Numerical algoritms: root finding, solution of linear algebraic equations, polynomial interpolation, least squares problem, formulas of numerical integration, random numbers, Monte Carlo method, integration of ordinary differential equations, introduction on partial differential equations.
Numerical codes: data analyses and least squares method, numerical calculus in one or more dimensions and comparison between different algorithms, Monte Carlo simulation of a physics experiment, solution of ordinary differential equations and comparison between different algorithms in the case of easy problems of classical physics (simple pendulum with friction variable length pendulum, gravitational two -body problem, three-body problem (Sun,Earth,Moon), n-body problem; stability of hamiltonian systems, solution of heat equation in some simple cases.

Bibliography

The teacher distributes his lecture notes.

Teaching methods

Both lectures and computer exsercises in laboratory in order to develop numerical codes in Matlab, Fortran and Python.

Assessment methods and criteria

Final evaluation relies on developing and discussing numerical algorithms introduced during the course; moreover the student is required to develop an original code which solve a physics problem weekly discussed with the teacher during laboratory activities.

Other information

- - -