Skip to main content

Open-source database of programmatically generated and experimentally validated superconducting quantum device designs, accessible through a user-friendly interface.

Project description

SQuADDS Logo

Superconducting Qubit And Device Design and Simulation Database Version Pepy Total Downloads Build Status License arXiv Alpha Version

:warning: This project is an alpha release and currently under active development. Some features and documentation may be incomplete. Please update to the latest release.

The SQuADDS (Superconducting Qubit And Device Design and Simulation) Database Project is an open-source resource aimed at advancing research in superconducting quantum device designs. It provides a robust workflow for generating and simulating superconducting quantum device designs, facilitating the accurate prediction of Hamiltonian parameters across a wide range of design geometries.

Paper Link: SQuADDS: A Database for Superconducting Quantum Device Design and Simulation

Docsite Link: https://lfl-lab.github.io/SQuADDS/

Hugging Face Link: https://huggingface.co/datasets/SQuADDS/SQuADDS_DB

Contribution Portal Link: https://squadds-portal.vercel.app

Chat with the Codebase: https://deepwiki.com/LFL-Lab/SQuADDS/1-overview

Table of Contents


Citation

If you use SQuADDS in your research, please cite the following paper:

@article{Shanto2024squaddsvalidated,
  doi = {10.22331/q-2024-09-09-1465},
  url = {https://doi.org/10.22331/q-2024-09-09-1465},
  title = {{SQ}u{ADDS}: {A} validated design database and simulation workflow for superconducting qubit design},
  author = {Shanto, Sadman and Kuo, Andre and Miyamoto, Clark and Zhang, Haimeng and Maurya, Vivek and Vlachos, Evangelos and Hecht, Malida and Shum, Chung Wa and Levenson-Falk, Eli},
  journal = {{Quantum}},
  issn = {2521-327X},
  publisher = {{Verein zur F{\"{o}}rderung des Open Access Publizierens in den Quantenwissenschaften}},
  volume = {8},
  pages = {1465},
  month = sep,
  year = {2024}
}

Installation

SQuADDS uses uv for fast, reliable Python package management.

Prerequisites

Install uv (if you don't have it already):

curl -LsSf https://astral.sh/uv/install.sh | sh

Install from Source (Recommended for Development)

git clone https://github.com/LFL-Lab/SQuADDS.git
cd SQuADDS
uv sync

Verify the installation:

uv run python -c "import squadds; print(squadds.__file__)"

Install using pip

pip install SQuADDS

Optional Dependencies

Install GDS processing tools:

uv sync --extra gds

Install documentation tools:

uv sync --extra docs

Install development tools:

uv sync --extra dev

Install contribution tools (for contributing data to SQuADDS):

uv sync --extra contrib

Install all optional dependencies:

uv sync --all-extras

Setting up Jupyter Notebook

To use SQuADDS in Jupyter notebooks (including VS Code/Cursor), register the kernel:

uv sync --extra dev  # Installs ipykernel
uv run python -m ipykernel install --user --name squadds --display-name "SQuADDS (uv)"

Then select "SQuADDS (uv)" as your kernel in Jupyter/VS Code/Cursor.

Run using Docker:

Click to expand/hide Docker instructions

We provide a pre-built Docker image that contains all dependencies, including Qiskit-Metal and the latest SQuADDS release.

Pull the Latest Docker Image

You can pull the latest image of SQuADDS from GitHub Packages:

docker pull ghcr.io/lfl-lab/squadds_env:latest

If you'd like to pull a specific version (support begins from v0.3.4 onwards), use the following command:

docker pull ghcr.io/lfl-lab/squadds_env:v0.3.4

You can find all available versions and tags for the squadds_env Docker image on LFL-Lab Packages.

Run the Docker Container

After pulling the image, you can run the container using:

docker run -it ghcr.io/lfl-lab/squadds_env:latest /bin/bash

This will give you access to a bash shell inside the container.

Activate the Conda Environment

Inside the container, activate the squadds-env environment:

conda activate squadds-env

Run SQuADDS

Once the environment is active, you can run SQuADDS by executing your Python scripts or starting an interactive Python session.


Tutorials

The following tutorials are available to help you get started with SQuADDS:


Contributing

We welcome contributions from the community! Here is our work wish list.

You can use our web portal to contribute your files - https://squadds-portal.vercel.app

Please see our Contributing Guidelines for more information on how to get started and absolutely feel free to reach out to us if you have any questions.


License

This project is licensed under the MIT License - see the LICENSE file for details.


FAQs

Check out our FAQs for common questions and answers.


Contact

For inquiries or support, please contact Sadman Ahmed Shanto.


Contributors

Name Institution Contribution
Clark Miyamoto New York University Code contributor
Madison Howard California Institute of Technology Bug Hunter
Evangelos Vlachos University of Southern California Code contributor
Kaveh Pezeshki Stanford University Documentation contributor
Anne Whelan US Navy Documentation contributor
Jenny Huang Columbia University Documentation contributor
Connie Miao Stanford University Data Contributor
Malida Hecht University of Southern California Data contributor
Daria Kowsari, PhD University of Southern California Data contributor
Vivek Maurya University of Southern California Data contributor
Haimeng Zhang, PhD IBM Data contributor
Elizabeth Kunz University of Southern California Documentation and Code contributor
Adhish Chakravorty University of Southern California Documentation and Code contributor
Ethan Zheng University of Southern California Data contributor and Bug Hunter
Sara Sussman, PhD Fermilab Bug Hunter
Priyangshu Chatterjee IIT Kharagpur Documentation contributor

Developers


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

squadds-0.4.0.tar.gz (99.2 kB view details)

Uploaded Source

Built Distribution

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

squadds-0.4.0-py3-none-any.whl (118.3 kB view details)

Uploaded Python 3

File details

Details for the file squadds-0.4.0.tar.gz.

File metadata

  • Download URL: squadds-0.4.0.tar.gz
  • Upload date:
  • Size: 99.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for squadds-0.4.0.tar.gz
Algorithm Hash digest
SHA256 c2bfdabb154877b9b88dfde7df638f59c128469e295ed4a2472fcc6d3994a0b5
MD5 5c65d397efdd84bb1c281b08dfdca1e6
BLAKE2b-256 32a618a35159b4a0cce5ad16b9e5bdcd68fef9fb5d431f447c494b9e2de9d64e

See more details on using hashes here.

Provenance

The following attestation bundles were made for squadds-0.4.0.tar.gz:

Publisher: pypi.yml on LFL-Lab/SQuADDS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file squadds-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: squadds-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 118.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for squadds-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3899fef58c60743f283ba3d1d4a1bd02e5ee3b6a1759879de6429e41e79dd28c
MD5 3bb7292144f58fef3392a6bbbee609d1
BLAKE2b-256 517994abeac3a161375e46815579e68618954909cfe6a5a22a8be47be4d9df68

See more details on using hashes here.

Provenance

The following attestation bundles were made for squadds-0.4.0-py3-none-any.whl:

Publisher: pypi.yml on LFL-Lab/SQuADDS

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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