Skip to main content

Documentation Status PyPI version

Welcome

Welcome to the QTT framework. This README will shortly introduce the framework, and it will guide you through the structure, installation process and how to contribute. We look forward to working with you!

Quantum Technology Toolbox

Quantum Technology Toolbox (QTT) is a Python-based framework developed initially by QuTech for the tuning and calibration of quantum dots and spin qubits. QuTech is an advanced research center based in Delft, the Netherlands, for quantum computing and quantum internet, a collaboration founded by the University of Technology Delft (TU Delft) and the Netherlands Organisation for Applied Scientific Research (TNO).

For usage of QTT see the detailed documentation on readthedocs.io.

QTT is the framework on which you can base your measurement and analysis scripts. QTT is based on QCoDeS (basic framework such as instrument drivers, DataSet) and the SciPy ecosystem.

Installation

QTT is compatible with Python 3.8+. QTT can be installed as a pip package to be used in a (virtual) Python environment. We assume that software packages like git and python are already installed on your system.

Note: when running Ubuntu Linux, installing these packages is done via:

sudo apt install git gcc python3.11 python3.11-venv python3.11-dev

for Python 3.11.x. Other Linux distributions require similar steps.

Setting up a virtual environment

To create a clean virtual Python environment for your QTT development do:

mkdir qtt
cd qtt

Now activate the virtual environment. On Linux do:

python3 -m venv env
. ./env/bin/activate

or

source ./env/bin/activate

On Windows do:

python -m pip install virtualenv
python -m virtualenv --copies env
env\Scripts\activate.bat

Now we are ready to install QTT.

Installation from PyPI

To use QTT, install it as a pip package:

pip install qtt

or install QTT from source.

Installing from source

The source for QTT can be found at Github. For the default installation from the QTT source directory execute:

git clone https://github.com/QuTech-Delft/qtt.git
cd qtt
pip install wheel

For QTT development install QTT in editable mode:

pip install -e .

For non-editable mode do:

pip install .

When (encountered on Linux) PyQt5 gives an error when installing try upgrading pip

pip install --upgrade pip

and rerun the respective install command.

When incompatibility problems arise

Note: This step is not meant for python >=3.11 Sometimes the default installation does not work because of incompatible dependencies between the used packages on your system. To be sure you use all the right versions of the packages used by QTT and its dependencies do:

pip install . -r requirements_lock_py310.txt

or for development

pip install -e . -r requirements_lock_py310.txt

This will install a tested set of all the packages QTT depends on.

Testing

Tests for the QTT packages are contained in the subdirectory tests. To run the tests run the following command:

pytest

When integration tests fail because of errors in plotting try downgrading opencv-python to 4.2.0.34:

pip install opencv-python==4.2.0.34

When running on Windows Sysbsystem for Linux (WSL) you may need to uninstall opencv and install the headless version:

pip uninstall opencv-python
pip install opencv-python-headless

Installing for generating documentation

To install the necessary packages to perform documentation activities for QTT do:

pip install -e .[rtd]

The documentation generation process is dependent on pandoc. When you want to generate the documentation and pandoc is not yet installed on your system navigate to Pandoc and follow the instructions found there to install pandoc. To build the 'readthedocs' documentation do:

cd docs
make html

Vandersypen research group

For the Vandersypen research group there are more detailed instructions, read the file INSTALL.md in the spin-projects repository.

Updating QTT

To update QTT do:

pip install . --upgrade

Usage

See the documentation and the example notebooks in the docs/notebooks directory.

For a general introduction also see

If you use Spyder then use the following settings:

  • Use a IPython console and in Tools->Preferences->IPython console->Graphics set the IPython backend graphics option to Qt5. This ensures correctly displaying the ParameterViewer and DataBrowser
  • In Tools->Preferences->Console->Advanced settings uncheck the box Enable UMR

Contributing

See Contributing for information about bug/issue reports, contributing code, style, and testing

License

See License

Metadata

Release files for qtt 1.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for qtt 1.4.0
File Size Uploaded
qtt-1.4.0.tar.gz 42.8 MB Details

Release files / qtt-1.4.0.tar.gz

Download URL qtt-1.4.0.tar.gz
Size 42.8 MB
Tags Source
SHA-256 checksum
How to use checksums
03cf94e143d7607d55a9b7590163d957a4e30a72497751e201ce8243ba2c5017
BLAKE2b-256 checksum
How to use checksums
c4cabd9af1acf5dc533c4ac4a9d4290b49d8333cd9dd4c3d3c884a41807133c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.3

Release history Release notifications | RSS feed

This release

1.4.0 This release

1 release file

1.3.1

1 release file

1.3.0

1 release file

1.2.3

1 release file

1.2.2

1 release file

1.2.1

1 release file

1.2.0

1 release file

1.1.2

1 release file

1.1.0

1 release file

1.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page