Skip to main content

Quantum information and many-body library.

Project description

Travis-CI Code Coverage Code Quality Documentation Status JOSS Paper Gitter

quimb is an easy but fast python library for quantum information and many-body calculations, including with tensor networks. The code is hosted on github, do please submit any issues or pull requests there. It is also thoroughly unit-tested and the tests might be the best place to look for detailed documentation.

The core quimb module:

  • Uses straight numpy and scipy.sparse matrices as quantum objects
  • Accelerates and parallelizes many operations using numba.
  • Makes it easy to construct operators in large tensor spaces (e.g. 2D lattices)
  • Uses efficient methods to compute various quantities including entanglement measures
  • Has many built-in states and operators, including those based on fast, parallel random number generation
  • Can perform evolutions with several methods, computing quantities on the fly
  • Has an optional slepc4py interface for easy distributed (MPI) linear algebra. This can massively increase the performance when seeking, for example, mid-spectrum eigenstates

The tensor network submodule quimb.tensor:

  • Uses a geometry free representation of tensor networks
  • Uses opt_einsum to find efficient contraction orders for hundreds or thousands of tensors
  • Can perform those contractions on various backends, including with a GPU
  • Can plot any network, color-coded, with bond size represented
  • Can treat any network as a scipy LinearOperator, allowing many decompositions
  • Can perform DMRG1, DMRG2 and DMRGX, in matrix product state language
  • Has tools to efficiently address periodic problems (transfer matrix compression and pseudo-orthogonalization)
  • Can perform MPS time evolutions with TEBD
  • Can optimize arbitrary tensor networks with tensorflow, pytorch, jax or autograd

The full documentation can be found at: Contributions of any sort are very welcome - please see the contributing guide. For ‘non-github-issue’ questions there is a gitter chat.

Project details

Download files

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

Files for quimb, version 1.3.0
Filename, size File type Python version Upload date Hashes
Filename, size quimb-1.3.0-py3-none-any.whl (216.2 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size quimb-1.3.0.tar.gz (214.2 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page