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.1016a0.tar.gz (242.3 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.1016a0-py3-none-any.whl (277.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: qwak_sim-2025.1016a0.tar.gz
  • Upload date:
  • Size: 242.3 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.1016a0.tar.gz
Algorithm Hash digest
SHA256 f93818bc47a4e33f974a9676d02713e95f02ff376b4107c85a048cc2ccded720
MD5 9401a1cc111531e0dd834cb498594065
BLAKE2b-256 2e1496cfb0f1a416b5898373e1ea0ae08b188dea122a7f483e3bdd6de5581593

See more details on using hashes here.

File details

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

File metadata

  • Download URL: qwak_sim-2025.1016a0-py3-none-any.whl
  • Upload date:
  • Size: 277.4 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.1016a0-py3-none-any.whl
Algorithm Hash digest
SHA256 8fedef074d39f6a1a644b5d0108db1d60828d5e466878d58c2a610ca6f810031
MD5 4a131fd5bee63b3949a009dbf62a64af
BLAKE2b-256 104645357b4d176c1593546b022e571ba1b99254fcbbf36c048a613161e79d2c

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