A Python package to efficiently simulate non-Markovian open quantum systems with process tensors.
This open source project aims to facilitate versatile numerical tools to efficiently compute the dynamics of quantum systems that are possibly strongly coupled to structured environments. It offers the convenient application of several numerical methods that combine the conceptional advantages of the process tensor framework [1], with the numerical efficiency of tensor networks.
OQuPy includes numerically exact methods (i.e. employing only numerically well controlled approximations) for the non-Markovian dynamics and multi-time correlations of ...
- quantum systems coupled to a single environment [2-4],
- quantum systems coupled to multiple environments [5],
- interacting chains of non-Markovian open quantum systems [6], and
- ensembles of open many-body systems with many-to-one coupling [7].
Furthermore, OQuPy implements methods to ...
- optimize control protocols for non-Markovian open quantum systems [8,9],
- compute the dynamics of an non-Markovian environment [10], and
- obtain the thermal state of a strongly couled quantum system [11].
- [1] Pollock et al., Phys. Rev. A 97, 012127 (2018).
- [2] Strathearn et al., New J. Phys. 19(9), p.093009 (2017).
- [3] Strathearn et al., Nat. Commun. 9, 3322 (2018).
- [4] Jørgensen and Pollock, Phys. Rev. Lett. 123, 240602 (2019).
- [5] Gribben et al., PRX Quantum 3, 10321 (2022).
- [6] Fux et al., Phys. Rev. Research 5, 033078 (2023).
- [7] Fowler-Wright et al., Phys. Rev. Lett. 129, 173001 (2022).
- [8] Fux et al., Phys. Rev. Lett. 126, 200401 (2021).
- [9] Butler et al., Phys. Rev. Lett. 132, 060401 (2024).
- [10] Gribben et al., Quantum, 6, 847 (2022).
- [11] Chiu et al., Phys. Rev. A 106, 012204 (2022).
- Github: https://github.com/tempoCollaboration/OQupy
- Documentation: https://oqupy.readthedocs.io
- PyPI: https://pypi.org/project/oqupy/
- Tutorial:
You can install OQuPy using pip like this:
$ python3 -m pip install oqupy
See the documentation for more information.
Click the launch binder
button above to start a tutorial in a browser based jupyter notebook (no installation required) or checkout the tutorial in the documentation.
Contributions of all kinds are welcome! Get in touch if you ...
- ... found a bug.
- ... have a question on how to use the code.
- ... have a suggestion, on how to improve the code or documentation.
- ... would like to get involved in writing code or documentation.
- ... have some other thoughts or suggestions.
Please, feel free to file an issue in the Issues section on GitHub for this. Also, have a look at CONTRIBUTING.md
if you want to get involved in the development.
See the files HOW_TO_CITE.md
, AUTHORS.md
and BIBLIOGRAPHY.md
.