Skip to main content

Open source library for hafnian calculation

Project description

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

The fastest exact hafnian library for real and complex full rank 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.1.tar.gz (43.9 kB view hashes)

Uploaded Source

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