Skip to content

jcmgray/cotengra

cotengra

tests codecov Docs PyPI Anaconda-Server Badge Pixi Badge

cotengra is a python library for contracting tensor networks or einsum expressions involving large numbers of tensors - the main docs can be found at cotengra.readthedocs.io. Some of the key feautures of cotengra include:

  • drop-in einsum and ncon replacement
  • an explicit contraction tree object that can be flexibly built, modified and visualized
  • a 'hyper optimizer' that samples trees while tuning the generating meta-paremeters
  • dynamic slicing for massive memory savings and parallelism
  • simulated annealing as an alternative optimizing and slicing strategy
  • support for hyper edge tensor networks and thus arbitrary einsum equations
  • paths that can be supplied to numpy.einsum, opt_einsum, quimb among others
  • performing contractions with tensors from many libraries via autoray, even if they don't provide einsum or tensordot but do have (batch) matrix multiplication

cotengra

About

Hyper optimized contraction trees for large tensor networks and einsums

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages