Skip to content

An efficient Julia framework for Hierarchical Equations of Motion (HEOM) in open quantum systems

License

Notifications You must be signed in to change notification settings

qutip/HierarchicalEOM.jl

Fancy logo Fancy logo

HierarchicalEOM.jl

Release Release License arXiv
Runtests Runtests Coverage
Code Quality Code Quality Aqua QA JET
Documentation Doc-Stable Doc-Dev

HierarchicalEOM.jl is a numerical framework written in Julia. It provides a user-friendly and efficient tool based on hierarchical equations of motion (HEOM) approach to simulate complex open quantum systems, including non-Markovian effects due to non-perturbative interaction with one (or multiple) environment(s). It is built upon QuantumToolbox.jl.

Installation

Note

HierarchicalEOM.jl requires Julia 1.10+.

To install HierarchicalEOM.jl, run the following commands inside Julia's interactive session (also known as REPL):

using Pkg
Pkg.add("HierarchicalEOM")

Alternatively, this can also be done in Julia's Pkg REPL by pressing the key ] in the REPL to use the package mode, and then type the following command:

(1.10) pkg> add HierarchicalEOM

More information about Julia's package manager can be found at Pkg.jl.

To load the package and check the version information, use either HierarchicalEOM.versioninfo() or HierarchicalEOM.about(), namely

using HierarchicalEOM
HierarchicalEOM.versioninfo()
HierarchicalEOM.about()

Documentation

The documentation can be found in :

  • STABLE : most recently tagged version.
  • DEVELOP : in-development version.

Cite HierarchicalEOM.jl

If you like HierarchicalEOM.jl, we would appreciate it if you starred the repository in order to help us increase its visibility. Furthermore, if you find the framework useful in your research, we would be grateful if you could cite our publication [ Communications Physics 6, 313 (2023) ] using the following bibtex entry:

@article{HierarchicalEOM-jl2023,
  doi = {10.1038/s42005-023-01427-2},
  url = {https://doi.org/10.1038/s42005-023-01427-2},
  year = {2023},
  month = {Oct},
  publisher = {Nature Portfolio},
  volume = {6},
  number = {1},
  pages = {313},
  author = {Huang, Yi-Te and Kuo, Po-Chen and Lambert, Neill and Cirio, Mauro and Cross, Simon and Yang, Shen-Liang and Nori, Franco and Chen, Yueh-Nan},
  title = {An efficient {J}ulia framework for hierarchical equations of motion in open quantum systems},
  journal = {Communications Physics}
}

License

HierarchicalEOM.jl is released under the BSD 3-Clause License.

Contributing to HierarchicalEOM.jl

You are most welcome to contribute to HierarchicalEOM.jl development by forking this repository and sending pull requests (PRs), or filing bug reports at the issues page. You can also help out with users' questions, or discuss proposed changes in the QuTiP discussion group.

For more information about contribution, including technical advice, please see the Contributing to QuantumToolbox.jl section of the QuantumToolbox.jl documentation.