This course has two main goals: (1) to introduce some key models from condensed matter physics; and (2) to introduce some numerical approaches to studying these (and other) models. As a precursor to these objectives, we will carefully understand many-body states and operators from the perspective of condensed matter theory. (However, I will cover only spin models. We will not discuss or use second quantization.)

Once this background is established, we will study the method of exact diagonalization and write simple python programs to find ground states, correlation functions, energy gaps, and other properties of the transverse-field Ising model. We will also discuss the computational limitations of exact diagonalization. Finally, I will introduce the concept of matrix product states, and we will see that these can be used to study ground state properties for much larger systems than can be studied with exact diagonalization.

Each 90-minute session will include substantial programming exercises in addition to lecture. Prior programming experience is not expected or required, but I would like everyone to have python (version 3) installed on their computer prior to the first class, including Jupyter notebooks; see “Resources” below.