Skip to main content

Faster simulations of fermionic quantum circuits.

Project description

ffsim

Faster simulations of fermionic quantum circuits.

What is ffsim?

ffsim is a software library for simulating fermionic quantum circuits that conserve particle number and the Z component of spin. This category includes many quantum circuits used for quantum chemistry simulations. By exploiting the symmetries and using specialized algorithms, ffsim can simulate these circuits much faster than a generic quantum circuit simulator.

Experimental disclaimer: ffsim is currently an experimental release. Breaking changes may be introduced without warning.

Documentation

Documentation is located at the project website.

Supported platforms

ffsim is supported on Linux, macOS, and the Windows Subsystem for Linux (WSL). It is not supported on Windows.

Installation

From PyPI

ffsim is available on PyPI. It can be installed by running the command

pip install ffsim

From source

Installing ffsim from source requires the following system dependencies:

  • A Rust compiler. See these instructions.
  • A BLAS implementation.
    • On macOS, ffsim uses the Accelerate framework that is included with the operating system, so no action is required.
    • On Linux, ffsim uses OpenBLAS. You may be able to install it using your system package manager:
      • Arch Linux:

        sudo pacman -S blas-openblas
        
      • Fedora:

        sudo dnf install openblas-devel
        
      • Ubuntu:

        sudo apt install libopenblas-dev
        

Once these dependencies are satisfied, ffsim can be installed by running the command

pip install .

from the root directory of the code repository.

Development

To set up ffsim for development, install it from source in editable mode along with the development requirements:

pip install -e ".[dev]"

If you add or modify any Rust modules, rebuild them by running the command

maturin develop

If you are benchmarking the code, then pass the --release flag:

maturin develop --release

Tests and other code checks are managed using tox. To run the default tox environments, simply run

tox

To run a specific environment, for example, to run the lint checks, do

tox run -e lint

You can also use pytest to run the tests directly. For example,

pytest tests/

Cite ffsim

You can cite ffsim using the following BibTeX:

@software{ffsim,
  author = {{The ffsim developers}},
  title = {ffsim},
  url = {https://github.com/qiskit-community/ffsim}
}

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

ffsim-0.0.18.tar.gz (104.3 kB view details)

Uploaded Source

Built Distributions

ffsim-0.0.18-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.0 MB view details)

Uploaded CPython 3.8+ manylinux: glibc 2.17+ x86-64

ffsim-0.0.18-cp38-abi3-macosx_10_12_x86_64.whl (533.6 kB view details)

Uploaded CPython 3.8+ macOS 10.12+ x86-64

File details

Details for the file ffsim-0.0.18.tar.gz.

File metadata

  • Download URL: ffsim-0.0.18.tar.gz
  • Upload date:
  • Size: 104.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.7

File hashes

Hashes for ffsim-0.0.18.tar.gz
Algorithm Hash digest
SHA256 e8d78646aa8bc0e7e18278950ffd9ec76cc30be4b9147dbff9686ed90be5d871
MD5 1e8d8521cc66ec27dd67f3ce5c1d1879
BLAKE2b-256 27316d98dfd5af8ca98e558de2a8afa0c5af8e3ccb19ebbc946435741adaca05

See more details on using hashes here.

Provenance

File details

Details for the file ffsim-0.0.18-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ffsim-0.0.18-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 44e5bd1818b9bcb5d4623852931a44704eeeb46b5946280e95572303cd3c7ec1
MD5 d1f31ba7b6057b56b4cb6879e347c2aa
BLAKE2b-256 8000beb5ecf6c54192a9a03c21d1de92ba29ec291932a142dffa5a2b65178a00

See more details on using hashes here.

Provenance

File details

Details for the file ffsim-0.0.18-cp38-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for ffsim-0.0.18-cp38-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 730d349c3b6c40e89070fffa3de8d935317427366616ec0e7fe2889792d92d78
MD5 c5dd3c9eb373154109901c365dca64e2
BLAKE2b-256 925382d83dedf29ec35c4dc55f7762b078fa4970f0b5dcc9a3a06ce46422d132

See more details on using hashes here.

Provenance

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