Skip to main content

Quantum Information Toolkit

Project description

Introduction

Quantum Information Toolkit (QIT) is a free, open source Python 3 package for various quantum information and computing -related purposes, released under GNU GPL v3. It is a descendant of the MATLAB Quantum Information Toolkit, and has considerably more functionality.

The latest version can be found on our website.

The toolkit is installed from the Python Package Index by

$ pip install qit

or by cloning the Git repository, and installing directly from there:

$ git clone https://git.code.sf.net/p/qit/code-python qit
$ cd qit
$ pip install .

For interactive use, we recommend the IPython shell.

To get an overview of the features and capabilities of the toolkit, run

$ python qit/examples.py

License

QIT is released under the GNU General Public License version 3. This basically means that you can freely use, share and modify it as you wish, as long as you give proper credit to the authors and do not change the terms of the license. See LICENSE.txt for the details.

Design notes

The main design goals for this toolkit are ease of use and comprehensiveness. It is primarily meant to be used as a tool for experimentation, hypothesis testing, small simulations, and learning, not for computationally demanding simulations. Hence the efficiency of the algorithms used is not a number one priority. However, if you think an algorithm could be improved without compromising accuracy or maintainability, please let the authors know or become a contributor yourself!

Contributing

QIT is an open source project and your contributions are welcome. To keep the code readable and maintainable, we ask you to follow these coding guidelines:

  • Fully document all the modules, classes and functions using docstrings (purpose, calling syntax, output, approximations used, assumptions made…). The docstrings may contain reStructuredText markup for math, citations etc. Use the Google docstring style.

  • Add relevant literature references to docs/refs.bib and cite them in the function or module docstring using sphinxcontrib-bibtex syntax.

  • Instead of using multiple similar functions, use a single function performing multiple related tasks, see e.g. qit.state.State.measure.

  • Raise an exception on invalid input.

  • Use variables sparingly, give them descriptive (but short) names.

  • Use brief comments to explain the logic of your code.

  • When you add new functions also add tests for validating your code. If you modify existing code, make sure you didn’t break anything by checking that the tests still run successfully.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qit-0.12.0.tar.gz (122.9 kB view details)

Uploaded Source

Built Distribution

qit-0.12.0-py3-none-any.whl (105.1 kB view details)

Uploaded Python 3

File details

Details for the file qit-0.12.0.tar.gz.

File metadata

  • Download URL: qit-0.12.0.tar.gz
  • Upload date:
  • Size: 122.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.4

File hashes

Hashes for qit-0.12.0.tar.gz
Algorithm Hash digest
SHA256 0620972924ce26fe50320be946996574fe03f30f601dfda6038d49f55d3a1928
MD5 740d7a10a1c4f736c716132069988bc2
BLAKE2b-256 e0551badc0c8f9c428fa55f897a4edeae68f30e59fff4bdd3345289a00dae8e3

See more details on using hashes here.

File details

Details for the file qit-0.12.0-py3-none-any.whl.

File metadata

  • Download URL: qit-0.12.0-py3-none-any.whl
  • Upload date:
  • Size: 105.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.4

File hashes

Hashes for qit-0.12.0-py3-none-any.whl
Algorithm Hash digest
SHA256 12da5a6ac5b429b35a0591830051f82ac8c5dfb8d2b42e8109367768faef9788
MD5 80c59ef1904650c0d4d1e401dccce9ac
BLAKE2b-256 bb98028bb3dc363c00334cd816849cf90ad75e895d7c4bd7b0e9bacc5f4a1495

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page