Algorithms and computation
Computational physics plays a central role in all fields of physics, from classical statistical physics, soft matter problems, and hard-condensed matter. Our goal is to cover the basic concepts underlying computer simulations in classical and quantum problems, and connect these ideas to relevant and contemporary research topics in various fields of physics. In the TD’s you will also learn how to set, perform and analyse the results of simple computer simulations by yourself, covering a wide range of topics. We will use Python, but no previous knowledge of this programming language is needed.
1) Introduction to computational physics
Brief history and examples
2) Monte Carlo methods
Markov chains, Metropolis algorithm
Statistical analysis of errors
3) Monte Carlo simulations of Ising models
Application to Ising models and non-equilibrium phenomena
4) Monte Carlo simulations for off-latice models
Some interesting details : Forces, neighbors, hard spheres
Application to classical fluids
5) Molecular Dynamics
Equations of motion, statistical ensembles
6) Complex and disordered systems
Interesting problems and solutions : simulated annealing, parallel tempering
7) More complex situations
Umbrella sampling, reweighting and phase transitions studies
8) Matrix diagonalisation in quantum physics
Lanczos or Density Matrix Renormalisation Group for quantum spin systems
9) Path integral approach to quantum problems
Quantum particles in arbitrary potentials
The lectures cover a broad range of topics, and basic knowledge of statistical and quantum physics is required. Connections are made to contemporary research topics.
Regarding computer and simulations themselves, the tutorials are an ideal place to learn how to use and implement python, and how to organise the simulations in a python notebook, but no previous knowledge of python is needed to be able to participate.
The evaluation is based on two steps: a homework exploring slightly more advanced topics compared to the tutorials will be given in the middle of the lectures. At the end of the lectures a formal exam will take place, with a fixed limited time with both questions regarding the lectures and practical ones related to the tutorials. The overall goal of the evaluation is to check whether the concepts, results, and tools developed in the tutorials have been understood.