The quantum mechanics of matrix models is solved using the Quantum Toolbox in Python (qutip). Results are reported in the publication Rinaldi et al. (2021). Consider the citation in Cite.
We select two matrix models to study:
- a bosonic 2-matrix model with gauge group SU(2)
- a supersymmetric 2-matrix model with gauge group SU(2)
Models with larger SU(N) groups can also be studied, but they require larger computational resources.
The Hilbert space of the bosonic 2-matrix model with SU(2) gauge group truncated to cutoff Λ (maximum number of modes for each boson) has dimension Λ⁶ because there are 6 bosonic degrees of freedom. With a regular desktop (64GB of RAM) it is possible to reach cutoffs Λ=14 or slightly larger.
There is a environment.yml
file that can be used to build a conda
python environment with all the dependencies needed to run the scripts and notebooks in this repository.
If you have conda
installed (see this link if you need help), you can run
conda env create -f environment.yml
and then check that the environement has been created
conda env list
If the environment appears in the output of the command above, you can activate it with
conda activate qutip-env
and then run the scripts and notebooks in this repository.
To generate the spectrum of the bosonic matrix model with a specific list of cutoffs and for a specific list of 't Hooft coupling constants you can run the scripts/bmn2_bos_su2.py script from the command line
For a list of options to pass on the command line, run
python scripts/bmn2_bos_su2.py --help
An example, you can run
python scripts/bmn2_bos_su2.py --num_eigs=20 --L_range=[3,5,7] --l_range=[0.2] --penalty=False
to get the first 20 eigenstates of the truncated Hamiltonian with cutoff Λ equal to 3, 5, and 7 at coupling constant 0.2 and without introducing a penalty term for the gauge non-singlet states.
Similarly, you can study the spectrum of the supersymmetric matrix model with the script scripts/bmn2_su2.py, which takes a similar list of arguments from the command line.
The rest of the scripts are just utilities for making plots.
Note: you can take advantage of multi-threading on a single node by changing the OMP_NUM_THREAD
environment variable before calling python
.
For example:
export OMP_NUM_THREADS=12 ; python scripts/bmn2_bos_su2.py --num_eigs=20 --L_range=[3,5,7] --l_range=[0.2] --penalty=False
will run the script using 12 cores.
The Jupyter notebooks QUTIP_bosonic_matrices and QUTIP_susy_matrices give an interactive explanation on how to build the regularized Hamiltonians of the matrix models using qutip
.
If you do not want to build the python environment to run them (see Installation) you can use Google Colaboratory to run them in your web browser. Use the two links below to open the notebooks in a new tab:
If you use this code (or parts of it), please consider citing our paper:
@article{Rinaldi:2021jbg,
author = "Rinaldi, Enrico and Han, Xizhi and Hassan, Mohammad and Feng, Yuan and Nori, Franco and McGuigan, Michael and Hanada, Masanori",
title = "{Matrix-Model Simulations Using Quantum Computing, Deep Learning, and Lattice Monte Carlo}",
eprint = "2108.02942",
archivePrefix = "arXiv",
primaryClass = "quant-ph",
reportNumber = "RIKEN-iTHEMS-Report-21, DMUS-MP-21/10",
doi = "10.1103/PRXQuantum.3.010324",
journal = "PRX Quantum",
volume = "3",
number = "1",
pages = "010324",
year = "2022"
}