Skip to main content

QFit: Interactive Parameter Fitting for Superconducting Circuits

Project description

QFit: Interactive Parameter Fitting for Superconducting Circuits

Conda Downloads Conda Version

Notice: This package is currently in beta testing. Bugs and issues are expected. We greatly appreciate your feedback and bug reports to help us improve.

Developers: Tianpu Zhao, Danyang Chen, Jens Koch

UI/UX designer: Tianying Lyu

Overview

QFit is your go-to Python application for extracting parameters of superconducting circuits from measured spectroscopy data. Following the four-step workflow, you can get your circuit parameters in no time:

  1. Calibration: QFit helps to establish the mapping from voltage (your experimental tunable input) to circuit parameters (your simulation ingredients).

  2. Point Extraction: With just a click, you can locate the resonance peak in the spectroscopy data with computer-assistance. The extracted data can be simply grouped as a transition and labeled. QFit even provides filters and coloring options for enhancing data visualization.

  3. Interactive Pre-fit: See your numerical model result and the data on the same plot for intuitive comparison. Adjust the numerical simulator with simple sliders to improve your fit.

  4. Automated Fitting: With one click, let the numerical optimizers do the work. You can easily configure your fitting: adjust which paramters are fixed or free, set their range, and more.

QFit supports a wide variety of circuit quantum electrodynamic systems, thanks to the powerful Python library scqubits as its backend simulator. Once you've extracted your parameters, you can pass them directly to scQubits for any further numerical simulations you need to do.

Join us in refining QFit during its beta phase! Your insights and reports are invaluable in making QFit a robust tool for this community. Dive in and explore what QFit can do for you, and let us know your experience!

Installation

Follow these steps to install QFit:

  1. (Optional but highly Recommended) Create a virtual environment with python (version >= 3.10). If you are using conda, run on terminal
    conda create -n <env name> python=3.10
    conda activate <env name>
  1. Then, install QFit by
    conda install conda-forge::qfit

Once done, the application can be launched in a jupyter notebook session via

    from qfit import Fit
    Fit(<HilbertSpace>)

where <HilbertSpace> is a scqubits.HilbertSpace object, the circuit model you want to fit against.

[!NOTE] While you can install QFit with pip install qfit, this application is unstable on machines with Apple silicons. This is due to compatibility issues with pip-installed scipy. As a workaround, you can run conda install scipy afterward, though using conda for the full installation is preferred.

Usage

Please check out the notebook QFit_Quick_Start.ipynb for a quick tutorial, and QFit_Advanced_Tips.ipynb for further information.

License

license

You are free to use this software, with or without modification, provided that the conditions listed in the LICENSE file are satisfied.

qfit uses Qt library under license GNU Lesser General Public License v3.0.

qfit uses CoreUI icons and Font Awesome icons licensed under CC BY 4.0, and SVG Reop icons licensed under the MIT license.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

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

qfit-3.0.2.tar.gz (87.8 MB view details)

Uploaded Source

Built Distribution

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

qfit-3.0.2-py3-none-any.whl (7.6 MB view details)

Uploaded Python 3

File details

Details for the file qfit-3.0.2.tar.gz.

File metadata

  • Download URL: qfit-3.0.2.tar.gz
  • Upload date:
  • Size: 87.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for qfit-3.0.2.tar.gz
Algorithm Hash digest
SHA256 447bd1ebf8b37a2a06c21f69b3771a3c8629999dbdc07cced89f55e16373ff01
MD5 42bc221721e9cd2ce918ed66b998cf6c
BLAKE2b-256 4f95396d4e85e979533563e220438e966e42d3c0e18061002913cab9c4a52cc8

See more details on using hashes here.

File details

Details for the file qfit-3.0.2-py3-none-any.whl.

File metadata

  • Download URL: qfit-3.0.2-py3-none-any.whl
  • Upload date:
  • Size: 7.6 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for qfit-3.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9e543faabcfee21b373619ce3eddf2238dc0e32be52e6606d9473a39ab186f52
MD5 b1f50c1d237e1841e913a7db38fff17e
BLAKE2b-256 b6520d08956e63ceea29b739a5e200aaecae3e38db7007105fc51cca8c1cf973

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