Metadata-Version: 2.1
Name: quimb
Version: 1.5.0
Summary: Quantum information and many-body library.
Home-page: http://quimb.readthedocs.io
Author: Johnnie Gray
Author-email: johnniemcgray@gmail.com
License: Apache
Keywords: quantum physics tensor networks tensors dmrg tebd
Classifier: Development Status :: 3 - Alpha
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Requires-Python: >=3.8
Description-Content-Type: text/x-rst
License-File: LICENSE.txt
Requires-Dist: numpy (>=1.17)
Requires-Dist: scipy (>=1.0.0)
Requires-Dist: numba (>=0.39)
Requires-Dist: psutil (>=4.3.1)
Requires-Dist: cytoolz (>=0.8.0)
Requires-Dist: tqdm (>=4)
Requires-Dist: opt-einsum (>=3.2)
Requires-Dist: autoray (>=0.5.1)
Provides-Extra: advanced_solvers
Requires-Dist: mpi4py ; extra == 'advanced_solvers'
Requires-Dist: petsc4py ; extra == 'advanced_solvers'
Requires-Dist: slepc4py ; extra == 'advanced_solvers'
Provides-Extra: docs
Requires-Dist: sphinx (>=2.0) ; extra == 'docs'
Requires-Dist: sphinx-autoapi ; extra == 'docs'
Requires-Dist: sphinx-copybutton ; extra == 'docs'
Requires-Dist: sphinx-design ; extra == 'docs'
Requires-Dist: myst-nb ; extra == 'docs'
Requires-Dist: furo ; extra == 'docs'
Requires-Dist: setuptools-scm ; extra == 'docs'
Requires-Dist: ipython (!=8.7.0) ; extra == 'docs'
Requires-Dist: autoray (>=0.2.0) ; extra == 'docs'
Requires-Dist: opt-einsum (>=3.2) ; extra == 'docs'
Requires-Dist: doc2dash (>=2.4.1) ; extra == 'docs'
Provides-Extra: random
Requires-Dist: randomgen (>=1.18) ; extra == 'random'
Provides-Extra: tensor
Requires-Dist: matplotlib (>=2.0) ; extra == 'tensor'
Requires-Dist: networkx (>=2.3) ; extra == 'tensor'
Requires-Dist: diskcache (>=3.0) ; extra == 'tensor'
Provides-Extra: tests
Requires-Dist: coverage ; extra == 'tests'
Requires-Dist: pytest ; extra == 'tests'
Requires-Dist: pytest-cov ; extra == 'tests'


.. image:: https://github.com/jcmgray/quimb/actions/workflows/tests.yml/badge.svg
  :target: https://github.com/jcmgray/quimb/actions/workflows/tests.yml
  :alt: Tests
.. image:: https://codecov.io/gh/jcmgray/quimb/branch/main/graph/badge.svg
  :target: https://codecov.io/gh/jcmgray/quimb
  :alt: Code Coverage
.. image:: https://app.codacy.com/project/badge/Grade/3c7462a3c45f41fd9d8f0a746a65c37c
  :target: https://www.codacy.com/gh/jcmgray/quimb/dashboard?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=jcmgray/quimb&amp;utm_campaign=Badge_Grade
  :alt: Code Quality
.. image:: https://readthedocs.org/projects/quimb/badge/?version=latest
  :target: http://quimb.readthedocs.io/en/latest/?badge=latest
  :alt: Documentation Status
.. image:: http://joss.theoj.org/papers/10.21105/joss.00819/status.svg
  :target: https://doi.org/10.21105/joss.00819
  :alt: JOSS Paper
.. image:: https://img.shields.io/pypi/v/quimb?color=teal
   :target: https://pypi.org/project/quimb/
   :alt: PyPI

``quimb`` is an easy but fast python library
for *'quantum information many-body'* calculations, focusing primarily on **tensor
networks**. The code is hosted on `github <https://github.com/jcmgray/quimb>`_,
and docs are hosted on `readthedocs <http://quimb.readthedocs.io/en/latest/>`_.
Functionality is split in two:

----------------------------------------------------------------------------------

The ``quimb.tensor`` module contains tools for working with **tensors
and tensor networks**. It has a particular focus on automatically
handling arbitrary geometry, e.g. beyond 1D and 2D lattices. With this
you can:

* construct and manipulate arbitrary (hyper) graphs of tensor networks
* automatically contract, optimize and draw networks
* use various backend array libraries such as
  `jax <https://jax.readthedocs.io>`_ and
  `torch <https://pytorch.org/>`_ via
  `autoray <https://github.com/jcmgray/autoray/>`_
* run specific MPS, PEPS, MERA and quantum circuit algorithms, such as DMRG &
  TEBD

----------------------------------------------------------------------------------

The core ``quimb`` module contains tools for reference
**'exact'** quantum calculations, where the states and operator are
represented as either ``numpy.ndarray`` or ``scipy.sparse``
**matrices**. With this you can:

* construct operators in complicated tensor spaces
* find groundstates, excited states and do time evolutions, including
  with `slepc <https://slepc.upv.es/>`_
* compute various quantities including entanglement measures
* take advantage of `numba <https://numba.pydata.org>`_ accelerations
* stochastically estimate $\\mathrm{Tr}f(X)$ quantities

----------------------------------------------------------------------------------

The **full documentation** can be found at:
`quimb.readthedocs.io <https://quimb.readthedocs.io>`_.
Contributions of any sort are very welcome - please see the
`contributing guide <https://github.com/jcmgray/quimb/blob/main/.github/CONTRIBUTING.md>`_.
`Issues <https://github.com/jcmgray/quimb/issues>`_ and
`pull requests <https://github.com/jcmgray/quimb/pulls>`_ are hosted on
`github <https://github.com/jcmgray/quimb>`_.
For other questions and suggestions, please use the
`discussions page <https://github.com/jcmgray/quimb/discussions>`_.
