Skip to main content

Simulate Continuous-Time Quantum Walks

Project description

QWAK

Quantum Walk Analysis Kit - A Python package for continuous-time quantum walk (CTQW) simulation.

Additionally, a fullstack web app built with Flask and PyMongo is available on Heroku.

This package supports python 3.10 or newer.

Table of Contents:

Funding

This work is financed by National Funds through the Portuguese funding agency, FCT - Fundação para a Ciência e a Tecnologia, within project UIDB/50014/2020. The project was also partially supported by Next Generation EU, in the context of the National Recovery and Resilience Plan, M4C2 investment 1.2. Project SOE0000098-ThermoQT.

Installation

You can install the package both through PyPi pip install qwak-sim or locally, by cloning the project, installing the requirements via pip followed by pip install . in the cloned folder. A virtual environment is highly recommended.

Dependencies

  • Numpy
  • Scipy
  • Sympy
  • matplotlib
  • networkx
  • QuTip
  • eel

Step-by-step installation instructions can be found in the documentation installation page.

Usage

A basic plot of the probability distribution for a CTQW with a walker starting in a superposition of central positions, in a cyclic graph, can be achieved via the following example:

import networkx as nx
import matplotlib.pyplot as plt
from qwak.qwak import QWAK

n = 100
t = 12
initState = [n//2,n//2 + 1]
graph = nx.cycle_graph(n)

qwak = QWAK(graph)
qwak.runWalk(t,initState)

probVec = qwak.getProbVec()
plt.plot(probVec)
plt.show()

Further examples exploring all the different components will be available once the usage documentation is complete.

Documentation

Documentation is a work in progress, and can be found in this page.

Contributing

Extra requirements

  • autopep8
  • pytest
  • sphinx

Contributing to the package follows a relatively simple workflow. After performing the necessary setup procedures, you will update your fork with the latest version of the QWAK project. You can now perform your changes, format them and test them. If a new feature is added, you will need to add docstrings to the new methods and update the existing documentation accordingly. If your contribution is directly to the documentation, you will follow a similar procedure.

Step-by-step instructions on how to setup all the required components for organized contribution can be found on the contributing documentation page.

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

qwak_sim-2025.1017a0.tar.gz (242.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qwak_sim-2025.1017a0-py3-none-any.whl (277.3 kB view details)

Uploaded Python 3

File details

Details for the file qwak_sim-2025.1017a0.tar.gz.

File metadata

  • Download URL: qwak_sim-2025.1017a0.tar.gz
  • Upload date:
  • Size: 242.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.2

File hashes

Hashes for qwak_sim-2025.1017a0.tar.gz
Algorithm Hash digest
SHA256 22d0e68dd38ed5853a96b65c0f86ff5c72b1794050a31c571b28bd2515939b5c
MD5 7d91abdabb5cb5a1d7a9737e13b52e4d
BLAKE2b-256 ccd1735f40165a3d01c050c65304107a004f4fb226d019637ac55789a4f0a012

See more details on using hashes here.

File details

Details for the file qwak_sim-2025.1017a0-py3-none-any.whl.

File metadata

  • Download URL: qwak_sim-2025.1017a0-py3-none-any.whl
  • Upload date:
  • Size: 277.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.2

File hashes

Hashes for qwak_sim-2025.1017a0-py3-none-any.whl
Algorithm Hash digest
SHA256 3887ed24e0b31e5779235f76273b0db3f761a10b5df209a87f4aeae5e789c8e4
MD5 9ab7fb61a62591ad97e8059527de4ce9
BLAKE2b-256 14b624fbeba9ecebdfc6dc5e174d59ebf84732059c0e92984ac484de3c1d5417

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page