Use the Variational Quantum Eigensolver in QISKIT
to find the ground state of the quantum 2-matrix model with gauge group SU(2) at different 't Hooft couplings.
We consider a purely bosonic model and a supersymmetric model (minimal BMN).
Results are reported in the publication Rinaldi et al. (2021).
Consider the citation in Cite.
Install the conda
environment manager for python and create a new environment for this project:
conda env create -f environment.yml
This will install a new python environment with the dependencies needed to run QISKIT
and the scripts and notebooks of this repository.
Check that the environment exists
conda env list
and then activate it
conda activate qiskit-env
For making plots and datafiles, you can also use the python scripts in the scripts
folder.
The file qiskit.ini
contains QISKIT
setting. You can copy it to your default location usually found in ${HOME}/.qiskit/settings.conf
.
Running main scripts with -h
will let you see the command line options, e.g.
python script/01_bmn2_bosonic_VQE.py -h
or
python script/02_bmn2_mini_VQE.py -h
The data produced is saved in the data
folder using the binary HDF5
protocol (with one command line flag you can save in pickle
compressed format).
Note: You can run on multiple threads by using i.e.
export OMP_NUM_THREADS=6; python scripts/02_bmn2_mini_VQE.py --L=2 --N=2 --g2N=0.2 --optimizer='COBYLA' --varform=['ry','rz'] --depth=3 --nrep=10
The scripts/hokusai
folder is for scripts managing the submission of jobs on the RIKEN Hokusai cluster in Wako, Japan.
There are also utility scripts for making plots.
The notebooks in notebooks
can be used as a starting point to understand the code.
- The notebook QISKIT_HarmonicOscillator_VQE.ipynb gives an introduction to the VQE for a simple harmonic oscillator in the coordinate basis.
- The notebook QISKIT_bosonic_matrices_VQE.ipynb gives an introduction to the VQE for the bosonic quantum matrix model.
- The notebook QISKIT_susy_matrices_VQE.ipynb gives an introduction to the VQE for the supersymmetric quantum matrix model.
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"
}