Computational Statistical Mechanics — Lectures and labs

Material of the course (academic year 2026-27): lecture notes and slides, and the slides of the lab sessions, where we write, from scratch, simple C++ codes for Monte Carlo and Molecular Dynamics simulations.
Lectures
Lecture notes
- Monte Carlo — part 1 (PDF, 13.1 MB)
- Monte Carlo — part 2 (PDF, 12.5 MB)
Lecture notes (LaTeX)
- Lecture notes (typeset) — work in progress: updated as the course goes on (PDF, 2.3 MB)
Slides
- Introduction to the course (PDF, 5.1 MB)
- Interaction potentials: from first principles to machine learning (PDF, 1.8 MB)
Downloads
- C++ examples: the examples shown in the labs so far (folder
examples/). - Project classes: the classes of the project you are writing (
project/; for nowpvector.hppand its testpvector.cpp).
Both archives grow as the labs go on.
Labs
| Lab | Topic |
|---|---|
| Lab 1 | Development environment (WSL 2), introduction to C++ (part I), a first vector class |
| Lab 2 | Introduction to C++ (part II): protected members, function overloading; new constructor and operators for pvector |
| Lab 3 | Introduction to C++ (part III): dynamic memory (new, delete), namespaces; operator() and friend functions for pvector |