- Dr. Arnaud Buhot
SPrAM, INAC, CEA Grenoble.
Phone +33 4 38 78 38 68
With the advent of computers it became possible to carry out
simulations of models which were intractable using `classical'
theoretical techniques. In many cases computer have, for the first
time in history, enable physicists not only to invent new models for
various aspects of nature but also to solve those same models without
substantial simplification. In recent years computer power has
increased quite dramatically, with access to computers becoming both
easier and more common (e.g. with personal computers and
workstations), and computer simulation methods have also been steadily
refined. As a result computer simulations have become another way of
doing physics research. They provide another perspective, in some
cases simulations provide a theoretical basis for understanding
experimental results, and in other instances simulations provide
`experimental' data with which theory may be compared.
This 6-7 lecture course is intended to introduce graduate students to
numerical simulations in condensed matter. Special emphasis will be
given to the physics of the numerical algorithms and a vast range
of problems will be covered.
It will be assumed that students have a previous knowledge of
statistical mechanics. Some previous experience in programming is
needed. For those students who have not (or have forgot) basic
programming skills, a zero-lecture about FORTRAN programming
will be held.
At the end of the course students are encouraged to develop a project
If necessary a brief introduction to programming in FORTRAN will
be given before the course
In the main body of the course, it is hoped that the following
topics will be covered:
- Introduction to FORTRAN programming
- Central Limit Theorem.
- Fortran background (variable, operators, functions, Input/Output...).
- Random number generators.
- Some necessary background
- A quick reminder in thermodynamics and statistical mechanics.
- 1D Ising Model.
- Finite size scaling.
- Fluctuations and errors.
- Equilibrium Monte Carlo Simulations
- Ising Model.
- Important sampling.
- Metropolis, Glauber and Kawasaky algorithms.
- Cluster methods.
- Multicanonical methods.
- Non-equilibrium Monte Carlo Simulations
- Directed percolation.
- Kinetically constrained models.
- Continuous time Monte Carlo.
- Off-lattice simulations
- Hard sphere problems.
- Cluster algorithms.
- Molecular dynamics.
- Langevin Dynamics
- Brownian motion.
- Model A, model B, etc. equations.
- Kardar-Parisi-Zhang equation.
- Numerical simulation of stochastic differential equations.
- K. Binder and D. W. Heermann,
Monte Carlo Simulation in Statistical Physics.
Springer-Verlag, Berlin (1988).
- D. P. Landau and K. Binder,
A guide to Monte Carlo Simulations in Statistical
Cambridge University Press (2000).
- M. E. J. Newman and G. T. Barkema,
Monte Carlo Methods in Statistical Physics,
Clarendon Press, Oxford (1999).
- C. W. Gardiner,
Handbook of Stochastic Methods,
Springer-Verlag, Berlin, (1997).
- Daan Frenkel and Berend Smit,
Understanding Molecular Simulation: From Algorithms to
Academic Press Boston (1996).
- Werner Krauth,
Introduction to Monte Carlo Algorithms,
43 pages [pdf]
- K. P. N. Murthy,
Introduction to Monte Carlo Simulation of Statistical
45 pages [pdf]
Document files are in Postscript format
- Introduction to Fortran, Aleksandar Donev, 31 pages
- Professional Programmers's Guide to Fortran 77,
Clive G. Page, 122 pages [ps]
Notes on the 2nd Lecture
- 0th Lecture:
Background in Fortran and Central Limit Theorem
- 1st Lecture:
Background in thermodynamics and 1D Ising Model
- 2nd Lecture:
Equilibrium Monte-Carlo simulations and 2D Ising model
- 3rd Lecture:
Non-equilibrium Monte-Carlo simulations : directed
percolation and kinetically constrained models
- 4th Lecture:
Off-lattice simulations : cluster algorithm and molecular
- 5th Lecture:
Langevin dynamics and KPZ dynamics
Some codes are in ASCII format.
Ask A. Buhot
for the remaining ones but try to make your own ones
- 0th Lecture
- clt.f: Central Limit Theorem verification
- moment.f: moment calculation subroutine
- 1st Lecture
- ising1d.f: 1D Ising model (calculate
the partition function)
- eval.f: energy evaluation subroutine
- 2nd Lecture
- ising.f: 2D Ising model with
- kawa.f: 2D Ising model with Kawasaki
- wolff.f: 2D Ising model with Wolff
- 3rd Lecture
- dptrivial.f: 1D Directed Percolation using
trivial Monte Carlo algorithm
- dpwrong.f: 1D Directed Percolation using
wrong continuous time Monte Carlo
- dpright.f: 1D Directed Percolation using
correct continuous time Monte Carlo
- dpwrong.eps: Comparison of the three Monte-Carlo
- resp.f: Fluctuation-Dissipation Relations
in the 1D Constrained Ising chain.
- resp.dat: Contains the common
variables for resp.f
- 4th Lecture
- cluster.f: 2D monodisperse hard square
model using the cluster algorithm.
- cluster.dat: Contains the common
variables for cluster.f
- init.f: Create an initial condition for the
2D monodisperse hard square model.
- visu.f: Create a postscript file to
visualise the squares
- 5th Lecture
- ou.f: Simulate the Ornstein-Uhlenbeck
- ma.f: Simulate the -x^2+x^4 theory using
Model A dynamics
- mb.f: Simulate the -x^2+x^4 theory using
Model B dynamics
- kpz.f: Simulate the KPZ equition in 1D.