Skip to main content

Open source library for hafnian calculation

Project description

Travis Codecov coverage Codacy grade Read the Docs PyPI PyPI - Python Version

The fastest exact hafnian library for real and complex matrices. For more information, please see the documentation.

Features

  • Provides the fastest calculation of the hafnian and loop hafnian.

  • The algorithms in this library are what Ryser’s formula is to the permanent.

Dependencies

Hafnian depends on the following Python packages:

These can be installed using pip, or, if on linux, using your package manager (i.e. apt if on a Debian-based system.)

Note that the C extension may need to be compiled; you will need the following libraries:

  • BLAS

  • LAPACKe

  • OpenMP

On Debian-based systems, this can be done via apt before installation:

$ sudo apt install liblapacke-dev

Installation

Installation of Hafnian, as well as all required Python packages mentioned above, can be done using pip:

$ python -m pip install hafnian

Software tests

To ensure that the Hafnian library is working correctly after installation, the test suite can be run by navigating to the source code folder and running

make test

Documentation

The Hafnian documentation is built automatically and hosted at Read the Docs. To build it locally, you need to have the following packages installed:

They can be installed via a combination of pip and apt if on a Debian-based system:

$ sudo apt install pandoc
$ pip3 install sphinx sphinxcontrib-bibtex nbsphinx --user

To build the HTML documentation, go to the top-level directory and run the command

$ make doc

The documentation can then be found in the docs/_build/html/ directory.

Authors

Nicolás Quesada, Brajesh Gupt, and Josh Izaac.

If you are doing research using Hafnian, please cite our paper:

Andreas Björklund, Brajesh Gupt, and Nicolás Quesada. A faster hafnian formula for complex matrices and its benchmarking on the Titan supercomputer arXiv, 2018. arxiv:1805.12498

Support

If you are having issues, please let us know by posting the issue on our Github issue tracker.

License

Hafnian is free and open source, released under the Apache License, Version 2.0.

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

Hafnian-0.1.0.tar.gz (40.9 kB view details)

Uploaded Source

File details

Details for the file Hafnian-0.1.0.tar.gz.

File metadata

  • Download URL: Hafnian-0.1.0.tar.gz
  • Upload date:
  • Size: 40.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for Hafnian-0.1.0.tar.gz
Algorithm Hash digest
SHA256 3cc97952ffdbd6538133594dc7c69169a7b34656c4824e6fa1b2a93fb9fd2208
MD5 fac1063f723cd157858a176150778042
BLAKE2b-256 fe0fdd394adfc0f93cc239d0c0f3eb63c116fa92d14031ad3b05e8d4cffcba6b

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