Skip to main content

Waveform generator for pulse sequences in quantum computing

Project description

Bosing

Documentation Status PyPI - Version

Waveform generator for superconducting circuits.

Installation

pip install bosing

Documentation

Docs are hosted on Read the Docs

Usage

Examples can be found in examples.

import matplotlib.pyplot as plt

from bosing import Barrier, Channel, Hann, Play, Stack, generate_waveforms

channels = {"xy": Channel(30e6, 2e9, 1000)}
shapes = {"hann": Hann()}
schedule = Stack(duration=500e-9).with_children(
    Play(
        channel_id="xy",
        shape_id="hann",
        amplitude=0.3,
        width=100e-9,
        plateau=200e-9,
    ),
    Barrier(duration=10e-9),
)
result = generate_waveforms(channels, shapes, schedule)
w = result["xy"]
plt.plot(w[0], label="I")
plt.plot(w[1], label="Q")
plt.legend()
plt.show()

Performance

examples/schedule_stress.py (0.15 s) vs benches/naive.py (1.4 s)

CPU: AMD Ryzen 5 5600

Development

Prerequisites

  • Rustup for rust toolchain management.
  • maturin 1.7+.
  • uv for python project management.
git clone https://github.com/kahojyun/Bosing.git
cd Bosing
uv sync
uv run task makedocs # build docs
uv run task format # format rust and python code
uv run task lint # lint rust and python code
uv run task test # run cargo test and pytest

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

bosing-2.4.1.tar.gz (133.7 kB view details)

Uploaded Source

Built Distributions

bosing-2.4.1-cp39-abi3-win_arm64.whl (451.9 kB view details)

Uploaded CPython 3.9+ Windows ARM64

bosing-2.4.1-cp39-abi3-win_amd64.whl (487.3 kB view details)

Uploaded CPython 3.9+ Windows x86-64

bosing-2.4.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (692.1 kB view details)

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

bosing-2.4.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (677.8 kB view details)

Uploaded CPython 3.9+ manylinux: glibc 2.17+ ARM64

bosing-2.4.1-cp39-abi3-macosx_11_0_arm64.whl (605.6 kB view details)

Uploaded CPython 3.9+ macOS 11.0+ ARM64

bosing-2.4.1-cp39-abi3-macosx_10_12_x86_64.whl (626.7 kB view details)

Uploaded CPython 3.9+ macOS 10.12+ x86-64

File details

Details for the file bosing-2.4.1.tar.gz.

File metadata

  • Download URL: bosing-2.4.1.tar.gz
  • Upload date:
  • Size: 133.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.7.4

File hashes

Hashes for bosing-2.4.1.tar.gz
Algorithm Hash digest
SHA256 025d99d5a1bb06c16353aa9f0fb1d6715672b1c39642835c362e9851f0adb9c5
MD5 816801a9e338f0c138530f1eaf968dd6
BLAKE2b-256 ef7e6f5d7a02d29d732b5806be4df10cd07ee60d100e8979ee329e1a6f75c179

See more details on using hashes here.

File details

Details for the file bosing-2.4.1-cp39-abi3-win_arm64.whl.

File metadata

  • Download URL: bosing-2.4.1-cp39-abi3-win_arm64.whl
  • Upload date:
  • Size: 451.9 kB
  • Tags: CPython 3.9+, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.7.4

File hashes

Hashes for bosing-2.4.1-cp39-abi3-win_arm64.whl
Algorithm Hash digest
SHA256 1a22dc7f02921bb050ada2b46daf011a59959c2303bee4a4dce99da63f042d67
MD5 3c9482517ae287e6784f10c4d47f38d8
BLAKE2b-256 b026b37aac404449438659f4cf9c02a01e4c1065a861efa7a838171b16dbda2b

See more details on using hashes here.

File details

Details for the file bosing-2.4.1-cp39-abi3-win_amd64.whl.

File metadata

  • Download URL: bosing-2.4.1-cp39-abi3-win_amd64.whl
  • Upload date:
  • Size: 487.3 kB
  • Tags: CPython 3.9+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.7.4

File hashes

Hashes for bosing-2.4.1-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 3af9c3be8059710da288aa5ee4b70f974b4f8ef18d56146f41c7cba4758587bf
MD5 c441b4beb910d02369117b2d4208920e
BLAKE2b-256 80ed94e9ab15d7d50a2bd2ff4407ce16c8194e79093849410f20e782ff7c7ac5

See more details on using hashes here.

File details

Details for the file bosing-2.4.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for bosing-2.4.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2d164b5fab15eaed129c83916ac7e8c73a8b1b6098d3eea238b69a08e706c955
MD5 5945e819a9dfb23b2181c18d037649f0
BLAKE2b-256 e16216fa18beb930eaffa55ea7b78b216ba9fd6873256444c2d503bc68c120e5

See more details on using hashes here.

File details

Details for the file bosing-2.4.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for bosing-2.4.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 07f7b28b1721bf23446dca35d0a6ec460030b362bbfa042597613a2f464543f0
MD5 b6acbab0a79133490e95ebd7309e0b60
BLAKE2b-256 f7f421fe1c5be8a1c0c5748025c6ecbf11f8bf3753bfc82770b87b54534b1860

See more details on using hashes here.

File details

Details for the file bosing-2.4.1-cp39-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for bosing-2.4.1-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1f75c0c3aef0cd0bf4c648e1836513e147043958ecd5956decccc70e0e76da99
MD5 998a9e1ba0650ffa71c74852f6d855e1
BLAKE2b-256 44a63ce7d2317c37dab9a169e175bfefe2edc4245026f869d731fb2b89d17819

See more details on using hashes here.

File details

Details for the file bosing-2.4.1-cp39-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for bosing-2.4.1-cp39-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ce695ce68d63dbae276b2805ad76bdbe3b5e77c057d07ce20be0cd991686f47c
MD5 d1292486a0999fc2f804c453f772f841
BLAKE2b-256 b1a40144fdae27e9e50380c1c8f63a7f76d8acc24013b0ae45914903637eae40

See more details on using hashes here.

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