QArray: a GPU-accelerated constant capacitance model simulator for large quantum dot arrays
Barnaby van Straaten, Joseph Hickie, Lucas Schorling, Jonas Schuff, Federico Fedele, Natalia Ares
TL;DR
QArray tackles the computational bottleneck of simulating large quantum dot arrays under the constant capacitance model by reformulating ground-state charge selection as a two-stage problem: first compute a continuous minimum, then identify the nearest discrete charge states. It introduces two scalable algorithms, default and thresholded, and implements them across Python, Rust, and JAX with OSQP for constrained optimization, achieving GPU-accelerated performance that enables 100×100 pixel diagrams for 16-dot arrays in under a second. The package supports both open and closed regimes, includes realistic features such as charge sensors and thermal broadening, and provides tools for optimal gate voltages and virtual gates. Collectively, QArray enables large-scale dataset generation and potential real-time digital-twin interfacing with quantum dot devices, advancing tuning strategies and machine-learning applications. The work also outlines future directions toward more advanced solvers and community-driven extensions to broaden applicability and performance.
Abstract
Semiconductor quantum dot arrays are a leading architecture for the development of quantum technologies. Over the years, the constant capacitance model has served as a fundamental framework for simulating, understanding, and navigating the charge stability diagrams of small quantum dot arrays. However, while the size of the arrays keeps growing, solving the constant capacitance model becomes computationally prohibitive. This paper presents an open-source software package able to compute a $100 \times 100$ pixels charge stability diagram of a 16-dot array in less than a second. Smaller arrays can be simulated in milliseconds - faster than they could be measured experimentally, enabling the creation of diverse datasets for training machine learning models and the creation of digital twins that can interface with quantum dot devices in real-time. Our software package implements its core functionalities in the systems programming language Rust and the high-performance numerical computing library JAX. The Rust implementation benefits from advanced optimisations and parallelisation, enabling the users to take full advantage of multi-core processors. The JAX implementation allows for GPU acceleration.
