Skip to main content

Package to simulate hybrid superconducting qubits

Project description

HybridSuperQubits 🌀⚡

PyPI Version License Documentation Status

A Python framework for simulating hybrid semiconductor-superconductor quantum circuits.

Key Features ✨

  • Hybrid Circuit Simulation 🔬
    Unified framework for semiconductor-superconductor systems.

  • Advanced Noise Analysis 📉

    • Capacitive losses (t1_capacitive).
    • Inductive losses (t1_inductive).
    • Flux noise (tphi_1_over_f_flux).
    • Coherence Quantum Phase Slip (tphi_CQPS).
  • Professional Visualization 📊

    • Wavefunction plotting (plot_wavefunction).
    • Matrix element analysis (plot_matelem_vs_paramvals).
    • Spectrum vs parameter sweeps.
  • SC-Qubits Compatibility 🔄
    API-inspired interface for users familiar with scqubits

🚀 Installation

Follow these steps to install or contribute to the HybridSuperQubits library.

For End Users

If you only plan to use HybridSuperQubits (i.e., you do not need to modify or extend its functionality), you can install it directly from PyPI:

  1. (Optional) Create a Virtual Environment

    Conda example:

    conda create --name hsq_env python=3.10
    conda activate hsq_env
    

    Or using venv:

    python3 -m venv hsq_env
    source hsq_env/bin/activate  # macOS/Linux
    hsq_env/Scripts/activate     # Windows
    
  2. Install HybridSuperQubits via pip:

    pip install hybridsuperqubits
    

    To upgrade:

    pip install --upgrade hybridsuperqubits
    

    Note (macOS M1/M2/M3): If you run into issues with SciPy on Apple Silicon, install OpenBLAS first:

    brew install openblas
    pip install scipy
    

For Contributors or Developers

If you want to contribute to the project or modify the code:

  1. Fork and Clone the repository from GitHub (see detailed steps in CONTRIBUTING.md).

  2. Create a new branch for your feature or bug fix.

  3. (Optional) Set up a development environment:

    conda create --name hsq_dev python=3.10
    conda activate hsq_dev
    
  4. Install in Editable Mode:

    pip install -e .
    

    This lets you test changes locally without reinstalling the package each time.

  5. Run Tests (if applicable):

    pytest tests/
    

For more details on contributing guidelines, code style, testing, and pull requests, please read our CONTRIBUTING.md.

Basic Usage 🚀

Supported Qubit Types

  1. Andreev
  2. Gatemon
  3. Gatemonium
  4. Fermionic bosonic qubit

Initialize a hybrid qubit

from HybridSuperQubits import Andreev, Gatemon, Gatemonium, Ferbo

# Fermionic-Bosonic Qubit (Ferbo)
qubit = Ferbo(
    Ec=1.2,          # Charging energy [GHz]
    El=0.8,          # Inductive energy [GHz]
    Gamma=5.0,       # Coupling strength [GHz]
    delta_Gamma=0.1, # Asymmetric coupling [GHz]
    er=0.05,         # Fermi detuning [GHz]
    phase=0.3,       # External phase (2 pi Φ/Φ₀)
    dimension=100    # Hilbert space dimension
)

# Andreev Pair Qubit
andreev_qubit = Andreev(
    EJ=15.0,        # Josephson energy [GHz]
    EC=0.5,         # Charging energy [GHz]
    delta=0.1,      # Superconducting gap [GHz]
    ng=0.0,         # Charge offset
    dimension=50
)

# Gatemonium
gatemonium = Gatemonium(
    EJ=10.0,        # Josephson energy [GHz]
    EC=1.2,         # Charging energy [GHz]
    ng=0.0,         # Charge offset
    dimension=100
)

Documentation 📚

Full API reference and theory background available at: hybridsuperqubits.readthedocs.io

Contributing 🤝

We welcome contributions! Please see:

CONTRIBUTING.md for development guidelines

License

This project is licensed under the MIT License. However, it includes portions of code derived from scqubits, which is licensed under the BSD 3-Clause License.

For more details, please refer to the LICENSE file.

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

hybridsuperqubits-0.1.4.tar.gz (23.7 kB view details)

Uploaded Source

Built Distribution

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

HybridSuperQubits-0.1.4-py3-none-any.whl (31.0 kB view details)

Uploaded Python 3

File details

Details for the file hybridsuperqubits-0.1.4.tar.gz.

File metadata

  • Download URL: hybridsuperqubits-0.1.4.tar.gz
  • Upload date:
  • Size: 23.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for hybridsuperqubits-0.1.4.tar.gz
Algorithm Hash digest
SHA256 91e8d3c3b7d978eeae5831fafc62e476bd9472821ded22cacaec890037942f74
MD5 772c465b3a420fe7b52b33e3353bfa13
BLAKE2b-256 ea692690815601ed2376553e340814f15ece2bab2c58c02f2f6ba2e51fab9c04

See more details on using hashes here.

File details

Details for the file HybridSuperQubits-0.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for HybridSuperQubits-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 d0bf4c0fc9bf145a9a030fa453e8ded892b87dfe884bead515b22c2064f16d38
MD5 87a9b726eac99ee8d7fb2f738e89a39a
BLAKE2b-256 687455210c77b776cee311726a977c09591e7b97938e5c6e610ee73858b19dc3

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