LABORATORY OF COMPUTATIONAL PHYSICS
academic year 2015/16
NEW: for the academic year 2016/17
see
moodle2.units.it
Teacher:
Maria Peressi
GENERAL INFO ON THE COURSE:
FORMAT OF THE COURSE:
It's a Lab course of
6 European-Credits-Transfer-System points (ETCS, or
"Crediti Formativi Universitari", CFU, in Italian) for the
"Laurea Magistrale" in Physics
(equivalent to an advanced
Master Degree in Physics in the Anglo-Saxon system).
It is proposed in particular, but not exclusively, for students from the Condensed Matter training track,
and does not requires particular knowledge of Condensed Matter beyond that acquired during the Bachelor Degree.
It amounts to a total of about
72 hours: about 24 of lectures
and about 48 of assisted sessions in Computer Lab.
Participation is mandatory (see:
"Regolamento
didattico 2015/16" (Italian only), Art. 11);
in case of problems (e.g. schedule of other courses, or students who are working) contact the teacher.
TIME SCHEDULE:
The Course is scheduled for the II SEMESTER (February 29 - June 1, 2016).
Lectures will be given at the Physics Department, Via Valerio 2, typically
1 "Unit" (0.5 CFU (credits)) per week,
consisting in:
- 2 hours of lecture (Wed., 4:00-6:00 p.m., Room B) and
- 4 hours of hands-on session in
the Computer Lab (Fri., 9:00-12:45, Lab. "Poropat", II floor)
Possible variations will be announced on this Web page.
LANGUAGE:
Lectures are given in English if attended by foreign students
from the
INTERNATIONAL STUDY PROGRAM IN PHYSICS
under the agreement ICTP-University of Trieste,
or from other international programmes.
Students can give the exam either in English or in Italian.
Labs are equipped with personal computers in a Linux cluster
named
INFIS. Ask for an account
(Modulo account INFIS)
if you do not have one; it's important to have access to course
material not publicly available on the web.
Use of personal laptops is of course allowed.
CONTACTS:
Maria Peressi:
Dept. Physics, Miramare Campus, Strada Costiera 11, I-34151 Trieste,
phone: +39 040 2240242;
PREREQUISITES
:
- Basic knowledges about the use of computers, an operative system,
a scientific programming language, computational methods.
In particular, basic notions of Fortan 77/Fortran 90 and Linux OS are
assumed (refer for instance to the Course of
"Laboratorio di Calcolo" by G. Pastore).
-
Standard knowledges in Classical Physics, Quantum Mechanics, Statistical
Mechanics as obtained with a
Bachelor degree in Physics or with the first three years of the New European
Educational System equivalent to 180 ECTS points
(European-Credits-Transfer-System points).
GENERAL PROGRAM:
- Properties and generation of Random Numbers with different distributions.
- Monte Carlo simulation of Random Walks.
- Numerical integration in 1 dimension: deterministic and stochastic algorithms;
- Monte Carlo algorithms.
- Error estimate and reduction of the variance methods.
- Metropolis algorithm for arbitrary random number generation.
- Metropolis method in the canonical ensamble.
- Ising model and Metropolis-Monte Carlo simulation.
- Classical fluids: Monte Carlo and Molecular Dynamics simulation of hard
spheres and Lennard-Jones fluids.
- Microstates and macrostates: efficient algorithm for the numerical
calculation of entropy.
- Variational Monte Carlo in quantum mechanics (basics).
- Lattice gas: vacancy diffusion in a solid.
- Fractals: diffusion and aggregation, models for surface growth simulation.
Percolation.
- Chaos and determinism: classical billiards and chaotic billiards, logistic maps;
Lyapunov exponents.
Hands-on Lab. sessions include:
- simple introductory exercises (with implementation and use of
several basic algorithms of numerical analysis) to recover a few
basic expertises of Fortran 90, use of computers, error handling;
- exercises for specific applications and simulations, collection
and analysis of data, visualization;
- comprehension, use, and rewriting of "old" codes
(draft sources in Fortran 90 available)
- personal implementation of new codes
LECTURES (schedule and detailed contents)
- academic year 2015/16:
- - Introduction. Errors and uncertainties in computations. Fortran
compilers on INFIS.
(I
Unit - March 2-4, 2016)
- - (Pseudo)random numbers (generators; properties;
uniform distributions)
(II
Unit - March 9-11, 2016)
- - (Pseudo)random numbers with non uniform distributions
inverse
transformation method and other algorithms for specific distributions.
Random processes: radioactive decay.
(III
Unit - March 16-18, 2016)
- - Introduction to the Random walks; properties;
Monte Carlo simulation of 1D and 2D RWs.
RW to simulate diffusion processes.
(IV
Unit - March 23 - April 1, 2016)
- - Numerical integration in 1 dimension:
deterministic algorithm and error estimate;
Monte Carlo algorithms
(acceptance-rejection, sample mean, importance sampling) and error handling
(reduction of variance: standard deviations of the mean, blocking; demonstration of the relationships involving the variance).
(V
Unit - April 6-8, 2016)
- - Multidimensional numerical integration: comparison between
deterministic and Monte Carlo methods.
One-dimensional numerical integration: gaussian quadrature;
use of subroutines from Numerical Recipes (e.g. "Gauleg")
Random numbers with Gaussian distribution:
ad-hoc algorithm; the central limit theorem.
(VI
Unit - April 13-15, 2016)
- -
Metropolis Monte Carlo method for generating arbitrary nonuniform
probability distributions and for importance sampling.
(VII
Unit - April 20-22, 2016)
- -
Basic concepts of statistical mechanics, review. Order/disorder,
macro/microstates, entropy (with example of
an efficient computational algorithm).
The Metropolis method in the canonical ensemble.
The Boltzmann distribution as a result of the Metropolis method.
(VIII
Unit - April 20-29, 2016)
- - The Ising model: introduction. Simulation with the Metropolis method.
Equilibration. The Ising phase transition:
Critical Temperature. Magnetic susceptibility
and specific heat. Further details about the Ising model.
Critical exponents, finite size analysis (basics).
(IX
Unit - May 4-6, 2016)
- - Lattice gas; example of vacancy diffusion on a solid or similar examples. Fractals: diffusion and aggregation.
Model for surface growth. Percolation.
(X
Unit - May 11-13, 2016)
- - Classical fluids: Monte Carlo simulation.
Basic concepts of Molecular dynamics simulations.
(XI
Unit - May 18-20, 2016)
- - Monte Carlo in Quantum Mechanics: variational MC
(XII
Unit - May 25-27, 2016)
- - Chaos and determinism. Logistic maps. Lyapunov exponents.
Roundoff errors and unpredictability.
Chaos and classical billiards.
(XIII
Unit - June 1-3, 2016)
NOTES, TEXTBOOKS AND USEFUL LINKS
:
Useful links on: operative system, compiler, graphic utilities
- A short list of the main UNIX/LINUX commands
- Fortran 90/95:
A short but good tutorial of F by Harvey Gould
- Another one on Fortran 90/95:
Introduction to Fortran (for Physics Computations),
by Phil Duxbury (Michigan State University, Dept. of Physics and Astronomy, USA);
- Another one on Fortran 90/95:
Fortran 90 for the Fortran 77 Programmer by
Bo Einarsson and Yurij Shokin; detailed, useful in the comparison
Fortran77/Fortran90/95
- List and detailed description of
INTRINSIC FUNCTIONS
in Fortran 90/95 from
Fortran90/95 for Scientists and Engineers, di S.J. Chapman
- A short list of the main gnuplot commands
and the
official gnuplot manual
Main textbooks:
-
"An Introduction to Computer Simulation Methods:
application to Physical Systems",
H. Gould, J. Tobochnik and W. Christian, Addison-Wesley (2006),
III edition;
H. Gould and J. Tobochnik, Addison Wesley (1995), II edition;
or Part 2 of the 1st edition.
Some draft chapters of the III edition are available on the Web (COMPADRE website)
; also some
programs (only a few are in Fortran).
This is the main texbook
of the Course.
-
"Statistical and Thermal Physics with computer applications", H. Gould and J. Tobochnik , Princeton University Press (2010).
On line text,
java simulations
and other material
are on line.
-
"Computational physics - Fortran Version", S. E. Koonin and D. C.
Meredith, Perseus Books (1998);; some
programs are available on the web.
- "Computational Physics: problem solving with computers", R.H.
Landau, M.J. Paez, J. Wiley & Sons (1997, I ed.;
2007, II ed., enlarged, M.J. Paez and C.C. Bordeianu); and the most recents
"A Survey of Computational Physics:
Introductory Computational Science",
R.H. Landau, M.J. Paez and C.C. Bordeianu, Princeton University Press (2008);
"A First Course in Scientific Computing", R.H. Landau,
Princeton University Press (2005);
see Web page of R.H. Landau
.
- "Introduction to modern
statistical mechanics", D. Chandler, Oxford University Press (1987)
- "Fortran 90/95 explained" by M. Metcalf and J. Reid
(Oxford University Press)
Some other useful books:
-
"Understanding Molecular Simulations: From Algorithms to
Applications", by Daan Frenkel and Berend Smit, Academic Press, 2001.
-
"Computational Physics - An Introduction", by F. J. Vesely,
Plenum Press, New York, 1994; Second Edition, Kluwer, 2001.
- "Computational Physics", by J. M. Thijssen,
Cambridge University Press.
- "An introduction to Computational Physics",
by Tao Pang
Cambridge University Press (New York, 1997).
- "Computer Simulation of Liquids", by
M.P. Allen and D. Tildesley, Clarendon Press (1987);
program library of the book (mainly in Fortran-77)
Other useful links:
- Lecture notes and exercises of the course of prof. Giorgio Pastore
(Laboratorio di Calcolo) for the
I Year of Bachelor (Laurea) Degree in Physics
- Lecture notes by prof. Chiaruttini (Dept. of Math & Comp. Science)
(in Italian: "Il Fortran 90/95 per esempi") with examples
- Numerical Recipes: home page; see also
the
specific link to the Second Edition (1996) in Fortran 90
(Obsolete edition, no longer supported) (newest: Third Edition (2007) in C++)
EXAMS (NEW !!!!) :
-
Date and project: to be agreed with the teacher
(the report has to be given in about 1 week from the assignment)
- Committee for exames:
Peressi Maria,
Pastore Giorgio,
Smargiassi Enrico
- The exam consists in:
- a personal project assigned by the teacher
one week before the exam: it is required a written report
(to be given at least the day before the exam - by e-mail) containing:
introduction - method - verification of the program - data - analysis
(plots are welcome! do not forget to indicate what you plot,
legend, axis labels,...) - interpretation, discussion, conclusions;
provide separately the code(s) source. Read carefully the
guidelines for the report.
- revision of 2 exercises on a different subject,
also assigned by the teacher one week before -
typically chosen among those done during
the course (for these two exercises it is NOT required a written report, but only the relevant tables, plots... answers to questions)
- oral exam: discussion of the project and exercises, with related
questions spanning over the contents of the course.
- List of available projects for exams (projects can change!)
Last update: June 2016