QAssemble: A Pure Python Package for Quantum Many-Body Theory
Abstract
QAssemble is a pure-Python package for the quantum many-body problem. It implements various functional approaches, such as tight-binding, Hartree-Fock, and GW approximations within a unified object-oriented architecture. Each physical concept--crystal structure, Hamiltonian, Green's function, self-energy, polarizability, screened Coulomb interaction--is represented as a distinct class. The modular design prioritizes code clarity and extensibility, leveraging NumPy, SciPy, and libdlr for numerical operations. Performance-critical kernels, including the polarizability bubble, Dyson equation inversion, and lattice Fourier transforms, are systematically vectorized and combined with the discrete Lehmann representation to achieve practical efficiency within a pure-Python environment. We validate QAssemble on the electronic structure of graphene with local and non-local interactions. Furthermore, benchmarks on a five-orbital extended Hund-Hubbard model demonstrate that this strategy delivers up to a 60x speedup over traditional loop-based Matsubara implementations. QAssemble supports both batch execution for production calculations and interactive workflows for method development.
Cite
@article{arxiv.2604.22223,
title = {QAssemble: A Pure Python Package for Quantum Many-Body Theory},
author = {Seongjun Mo and Dongming Li and Mancheon Han and Johan Jönsson and Byungkyun Kang and Hoonkyung Lee and Gabriel Kotliar and Sangkook Choi},
journal= {arXiv preprint arXiv:2604.22223},
year = {2026}
}
Comments
25 pages, 4 figures, 2 tables, 2 extended data figures