This repository is an archive for the code used in:
Simulating quantum repeater strategies for multiple satellites
J. Wallnöfer, F. Hahn, M. Gündoğan, J. S. Sidhu, F. Wiesner, N. Walk, J. Eisert, J. Wolters
Commun Phys 5, 169 (2022); DOI: 10.1038/s42005-022-00945-9
Preprint: arXiv:2110.15806 [quant-ph]
This repository contains two main parts (that are however not completely separated yet in this version of the simulation code):
- The core of the simulation consisting of the .py files in the repository root and the
libsdirectory. - Multiple simulation setups with files that set up, run and evaluate the scenarios in the
scenariosdirectory
If you wish to run the scenarios yourself, we recommend recreating the same virtual environment we used to develop the code via pipenv. This assumes a version of Python 3.8 is available on your system.
pip install pipenv
pipenv syncThe scenario files are expected to be called from the main directory, e.g. to run an example configuration that outputs runtime and event stats use the following in the main directory:
pipenv run python scenarios/three_satellites/twolink_downlink.pyThe scenario files that begin with run_ are meant to be run on a cluster computer with multiple processors. If that is not your usecase please adjust them accordingly.
If you want to use the plot files use pipenv sync --dev instead (separate because some graphic libraries may not be available on HPC systems).
An updated version of the core part of the simulation code has since been released separately and is available as a Python package: https://github.com/jwallnoefer/requsim