HofstadterTools: A Python package for analyzing the Hofstadter model
Abstract
The Hofstadter model successfully describes the behavior of non-interacting quantum particles hopping on a lattice coupled to a gauge field, and hence is ubiquitous in many fields of research, including condensed matter, optical, and atomic physics. Motivated by this, we introduce HofstadterTools (https://hofstadter.tools), a Python package that can be used to analyze the energy spectrum of a generalized Hofstadter model, with any combination of hoppings on any regular Euclidean lattice. The package can be applied to compute key properties of the band structure, such as quantum geometry and topology, as well as plot Hofstadter butterflies and Wannier diagrams that are colored according to their Chern numbers.
Turn this paper into a full lesson
ArcXiv compiles a staged curriculum from this paper: 8-12 lessons across beginner → advanced, synthesised section guides, visuals, flashcards, a quiz, exercises, and on-demand deep dives per section. Grounded in the abstract, never invented.