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.2.tar.gz (137.5 kB view details)

Uploaded Source

Built Distributions

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

Uploaded CPython 3.9+ Windows ARM64

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

Uploaded CPython 3.9+ Windows x86-64

bosing-2.4.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (692.5 kB view details)

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

bosing-2.4.2-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.2-cp39-abi3-macosx_11_0_arm64.whl (605.2 kB view details)

Uploaded CPython 3.9+ macOS 11.0+ ARM64

bosing-2.4.2-cp39-abi3-macosx_10_12_x86_64.whl (626.4 kB view details)

Uploaded CPython 3.9+ macOS 10.12+ x86-64

File details

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

File metadata

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

File hashes

Hashes for bosing-2.4.2.tar.gz
Algorithm Hash digest
SHA256 c726e46c3b4032bea4bbbf6d96e162c4092ba28d2024015b9abf820c9edf97d7
MD5 8095c2f31fd69f501f7035a5c31039ee
BLAKE2b-256 c25bf1c0a291ecef6a6c84f3f6001a71ec215d8a295308af8f96cbce956d46f6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: bosing-2.4.2-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.2-cp39-abi3-win_arm64.whl
Algorithm Hash digest
SHA256 14c30a84d98d760689b4f74f5e580a756b53dae4f5c45fea9eac2e24e496e694
MD5 c43a85918d784a28ef115c354e238da2
BLAKE2b-256 3a635ea117bdb859804b4306b9b6f530bbd0bbfe4d17a85644a1eb92a310138c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: bosing-2.4.2-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.2-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 b85d99f9c099151ce76cb2f95e731dd5276809adf11581ccbc324ce6d3248775
MD5 72461ae658b2fb3d6bab8ce4a59a65cb
BLAKE2b-256 792edc786834aa25cce4ce795f706695c6965a303d6f88704815e744bf18846d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for bosing-2.4.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 39146eb96448ca1b69f5d59883bb019683664bdf8cabfae07c5802b0c35d679e
MD5 a358f513553f63368db7eba1864354dc
BLAKE2b-256 d800ce158b952c0ae66407132aa488ef24149fa531705a8c2a10a350cb17d8b8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for bosing-2.4.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 931a3fa89b97a3e686a032d3bdeb2204da2fa4cf78e6053118c4978ebb654f81
MD5 9a1326be3f129fd6231932739ac8cd83
BLAKE2b-256 b2d4dc87e183df607531a7d788d3250e5e6f5f01b4093918809fc501849b7ad3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for bosing-2.4.2-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 baa6659773f6d9691da3899e7b57f53b4b497301c87536bd5c6e0dc91f250439
MD5 a18bf52a2aac62225263d554dc154ff6
BLAKE2b-256 4e2b853f27458fc2480183a0aa109b6374c330aa21814cc66d575729b0143949

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for bosing-2.4.2-cp39-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ba7dc72390afc9c61491911641c4f5ec7bdf090f09381ad8420e943513bd8786
MD5 54ad159990f64db26bc2213cfcd57294
BLAKE2b-256 49884c554b3f4e382bc582fb586d1f152f2d3cbed2eb6e7f78e5d22c7b1fbd8a

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