Skip to content

A Python package to efficiently simulate non-Markovian open quantum systems with process tensors.

License

Notifications You must be signed in to change notification settings

tempoCollaboration/OQuPy

Repository files navigation

Open Quantum Systems in Python: OQuPy

A Python 3 package to efficiently compute non-Markovian open quantum systems.

Binder Build Status codecov Documentation Status Contributor Covenant DOI

Unitary Fund

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 allows to conveniently apply the so called time evolving matrix product operator method (TEMPO) [1], as well as the process tensor TEMPO method (PT-TEMPO) [2]. An extension to the methods described in [3] and [4] are work in progress and supported by the unitary fund.

  • [1] Strathearn et al., Efficient non-Markovian quantum dynamics using time-evolving matrix product operators, Nat. Commun. 9, 3322 (2018).
  • [2] Fux et al., Efficient exploration of Hamiltonian parameter space for optimal control of non-Markovian open quantum systems, Phys. Rev. Lett. 126, 200401(2021).
  • [3] Gribben et al., Using the Environment to Understand non-Markovian Open Quantum Systems, arXiv:2106.04212 (2021).
  • [4] Gribben et al., Exact dynamics of non-additive environments in non-Markovian open quantum systems, arXiv:2109.08442 (2021).

Up to versions 0.1.x this package was called TimeEvolvingMPO.

Links

Installation

You can install TimeEvolvingMPO using pip like this:

$ python3 -m pip install oqupy

See the documentation for more information.

Quickstart Tutorial

Binder

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.

Contributing

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.

Citing, Authors and Bibliography

See the files HOW_TO_CITE.md, AUTHORS.md and BIBLIOGRAPHY.md.