Metadata-Version: 2.4
Name: quimb
Version: 1.13.0
Summary: Quantum information and many-body library.
Project-URL: Documentation, https://quimb.readthedocs.io/
Project-URL: Repository, https://github.com/jcmgray/quimb/
Project-URL: Issues, https://github.com/jcmgray/quimb/issues
Project-URL: Changelog, https://quimb.readthedocs.io/en/latest/changelog.html
Author-email: Johnnie Gray <johnniemcgray@gmail.com>
License: Apache-2.0
License-File: LICENSE.txt
Keywords: dmrg,mera,networks,peps,physics,quantum,tebd,tensor,tensors
Classifier: Development Status :: 3 - Alpha
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Requires-Python: >=3.11
Requires-Dist: autoray>=0.8
Requires-Dist: cotengra>=0.7.1
Requires-Dist: cytoolz>=0.8.0
Requires-Dist: numba>=0.39
Requires-Dist: numpy>=1.17
Requires-Dist: psutil>=4.3.1
Requires-Dist: scipy>=1.16.0
Requires-Dist: tqdm>=4
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: astroid; extra == 'docs'
Requires-Dist: doc2dash>=2.4.1; extra == 'docs'
Requires-Dist: furo; extra == 'docs'
Requires-Dist: ipython!=8.7.0; extra == 'docs'
Requires-Dist: myst-nb; extra == 'docs'
Requires-Dist: setuptools-scm; extra == 'docs'
Requires-Dist: sphinx-autoapi; extra == 'docs'
Requires-Dist: sphinx-copybutton; extra == 'docs'
Requires-Dist: sphinx-design; extra == 'docs'
Requires-Dist: sphinx>=2.0; extra == 'docs'
Provides-Extra: recommended
Requires-Dist: autograd; extra == 'recommended'
Requires-Dist: cmaes; extra == 'recommended'
Requires-Dist: cotengrust; extra == 'recommended'
Requires-Dist: kahypar; extra == 'recommended'
Requires-Dist: matplotlib; extra == 'recommended'
Requires-Dist: networkx; extra == 'recommended'
Requires-Dist: plotly; extra == 'recommended'
Requires-Dist: pygraphviz; extra == 'recommended'
Provides-Extra: tests
Requires-Dist: coverage; extra == 'tests'
Requires-Dist: pytest; extra == 'tests'
Requires-Dist: pytest-cov; extra == 'tests'
Description-Content-Type: text/markdown

![quimb logo](https://github.com/jcmgray/quimb/blob/HEAD/docs/_static/logo-banner.png?raw=true)

[![Tests](https://github.com/jcmgray/quimb/actions/workflows/tests.yml/badge.svg)](https://github.com/jcmgray/quimb/actions/workflows/tests.yml)
[![Code Coverage](https://codecov.io/gh/jcmgray/quimb/branch/main/graph/badge.svg)](https://codecov.io/gh/jcmgray/quimb)
[![Documentation Status](https://readthedocs.org/projects/quimb/badge/?version=latest)](http://quimb.readthedocs.io/en/latest/?badge=latest)
[![PyPI](https://img.shields.io/pypi/v/quimb?color=teal)](https://pypi.org/project/quimb/)
[![Anaconda-Server Badge](https://anaconda.org/conda-forge/quimb/badges/version.svg)](https://anaconda.org/conda-forge/quimb)
[![DOI](https://joss.theoj.org/papers/10.21105/joss.00819/status.svg)](https://doi.org/10.21105/joss.00819)
[![Pixi Badge](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/prefix-dev/pixi/main/assets/badge/v0.json)](https://pixi.sh)


[`quimb`](https://github.com/jcmgray/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](https://cotengra.readthedocs.io), 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/), including symmetries and fermions via [symmray](https://github.com/jcmgray/symmray)
- run specific MPS, PEPS, MERA and quantum circuit algorithms, such as DMRG & TEBD

![tensor pic](https://github.com/jcmgray/quimb/blob/HEAD/docs/_static/rand-tensor.svg?raw=true)

---

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

![matrix pic](https://github.com/jcmgray/quimb/blob/HEAD/docs/_static/rand-herm-matrix.svg?raw=true)

---

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).