
Computational Methods in Many-Body Physics
Lecturers: Michael Knap, Frank Pollmann
Teaching Assistant: Johannes Hauschild
Summer Term
Lectures: Tue 14:00-15:30, seminar room 3343
Practicals: Fri 14:00-18:00, seminar room CIP1/2
This course provides an introduction to numerical techniques used for solving quantum many-body problems. It covers (Quantum) Monte Carlo, Exact Diagonalization, Matrix Product States, Tensor Networks, and Non-Equilibrium Quantum Field Theory. This course is highly interactive. It consists of two hours lectures per week accompanied by four hours of practicals in which the newly acquired techniques will be applied to problems that directly touch upon current research in our groups.
Outline:
I. Introduction [PDF]
Lattice models
II. Classical Monte Carlo simulations [PDF]
Metropolis algorithm
Critical slowing down: cluster and loops algorithm
III. Finite size scaling analysis [PDF]
IV. Exact diagonalization [PDF]
Exact diagonalization
Sparse matrices and the Lanczos method
Symmetries
Dynamical properties
V. Entanglement and matrix product states [PDF]
Area law
Scaling in critical systems
AKLT model
Canonical form
VI Matrix product state based algorithms [PDF]
Time Evolving Block Decimation
Density Matrix Renormalization Group
VII. Tensor product states [PDF]
Tensor Renormalization
Boundary theories
VIII. Machine Learning [PDF]
Neural networks
IX. Quantum Monte Carlo methods [PDF]
Stochastic Series Expansion
Exercises
You will be given time to solve them during the Friday tutorials.
To get a bonus for the final exam, show up to the Friday tutorials or send some codes/plots to Johannes to prove that you worked on the exercises.
Exercise sheet 1 [PDF] (metropolis.py)
Exercise sheet 2 [PDF]
Exercise sheet 3 [PDF] (data_ising_square.zip, generate_data.py, data_ising_triangular.zip)
Exercise sheet 4 [PDF]
Exercise sheet 5 [PDF] (ed_conserve.py)
Exercise sheet 6 [PDF] (lanczos.py)
Exercise sheet 7 [PDF]
Exercise sheet 8 [PDF] (a_mps.py, b_model.py, c_tebd.py, tfi_exact.py)
Exercise sheet 9 [PDF] (d_dmrg.py)
Exercise sheet 10 [PDF] (e_tps.py)
Exercise sheet 11 [PDF] (network.py, data_loader.py, generate_mc_data.py, mnist.pkl.gz)
Exercise sheet 12 [PDF] (sse.py)
Literature
Introduction to Python, www.scipy-lectures.org/
Lecture Notes by Anders W. Sandvik, arxiv.org/abs/1101.3281v1
Lecture Notes by Johannes Hauschild, Frank Pollmann, arxiv.org/abs/1805.00055
Review on DMRG by Ulrich Schollwoeck, arxiv.org/abs/1008.3477
Lecture Notes by Juergen Berges, arxiv.org/abs/1503.02907
Online book by Michael Nielsen, neuralnetworksanddeeplearning.com
Exam
We will give out numerical projects, which are extensions of the tutorials.
Students, who want to take the exam, need to choose and work on one of these projects.
In the oral exam, the students are asked to give a 10 minutes presentation on the basic ideas and results of the project, followed by 15 minutes of questions, which can be both about the project itself as well as general questions regarding other topics of the course.
List of projects: [PDF]
Write a short Email to Johannes stating the project you want.
The exam takes place on Thursday, July 26th, (individual times by E-mail) in the Room PH3344.