qtt


Nameqtt JSON
Version 1.4.0 PyPI version JSON
download
home_pagehttps://qutech.nl
SummaryPython-based framework for analysis and tuning of quantum dots
upload_time2023-05-08 09:13:49
maintainerPieter Eendebak
docs_urlNone
authorPieter Eendebak
requires_python
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            [![Documentation Status](https://readthedocs.org/projects/qtt/badge/?version=latest)](https://qtt.readthedocs.io/en/latest/?badge=latest)
[![PyPI version](https://badge.fury.io/py/qtt.svg)](https://badge.fury.io/py/qtt)

# 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](http://qutech.nl) 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](https://www.tudelft.nl/en) (TU Delft) and
the Netherlands Organisation for Applied Scientific Research ([TNO](https://www.tno.nl/en)).

For usage of QTT see the detailed [documentation](https://qtt.readthedocs.io/en/latest/) on readthedocs.io.

QTT is the framework on which you can base your measurement and analysis scripts. QTT is based
on [QCoDeS](https://github.com/qdev-dk/Qcodes) (basic framework such as instrument drivers, DataSet) and the [SciPy](https://www.scipy.org/) 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](https://git-scm.com/downloads) and [python](https://www.python.org/downloads/)
are already installed on your system.

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

```bash
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:

```bash
mkdir qtt
cd qtt
```

Now activate the virtual environment. On Linux do:

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

or

```bash
source ./env/bin/activate
```

On Windows do:

```bash
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:

```bash
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:

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

For QTT development install QTT in editable mode:

```bash
pip install -e .
```

For non-editable mode do:

```bash
pip install .
```

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

```bash
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:

```bash
pip install . -r requirements_lock_py310.txt
```

or for development

```bash
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:

```bash
pytest
```

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

```bash
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:

```bash
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:

```bash
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](https://pandoc.org/installing.html) and follow the instructions found there to install pandoc.
To build the 'readthedocs' documentation do:

```bash
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:

```bash
pip install . --upgrade
```

## Usage

See the [documentation](https://qtt.readthedocs.io/en/latest/) and the example notebooks in the [docs/notebooks](docs/notebooks) directory.

For a general introduction also see
* [Introduction to Github](https://guides.github.com/activities/hello-world/)
* [Scientific python lectures](https://github.com/jrjohansson/scientific-python-lectures)

If you use [Spyder](https://github.com/spyder-ide/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](CONTRIBUTING.md) for information about bug/issue reports, contributing code, style, and testing

## License

See [License](LICENSE.txt)

            

Raw data

            {
    "_id": null,
    "home_page": "https://qutech.nl",
    "name": "qtt",
    "maintainer": "Pieter Eendebak",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "pieter.eendebak@tno.nl",
    "keywords": "",
    "author": "Pieter Eendebak",
    "author_email": "pieter.eendebak@tno.nl",
    "download_url": "https://files.pythonhosted.org/packages/c4/ca/bd9af1acf5dc533c4ac4a9d4290b49d8333cd9dd4c3d3c884a41807133c9/qtt-1.4.0.tar.gz",
    "platform": null,
    "description": "[![Documentation Status](https://readthedocs.org/projects/qtt/badge/?version=latest)](https://qtt.readthedocs.io/en/latest/?badge=latest)\r\n[![PyPI version](https://badge.fury.io/py/qtt.svg)](https://badge.fury.io/py/qtt)\r\n\r\n# Welcome\r\n\r\nWelcome 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!\r\n\r\n# Quantum Technology Toolbox\r\n\r\nQuantum Technology Toolbox (QTT) is a Python-based framework developed initially by QuTech for the tuning and calibration of\r\nquantum dots and spin qubits. [QuTech](http://qutech.nl) is an advanced research center based in Delft, the Netherlands, for quantum\r\ncomputing and quantum internet, a collaboration founded by the [University of Technology Delft](https://www.tudelft.nl/en) (TU Delft) and\r\nthe Netherlands Organisation for Applied Scientific Research ([TNO](https://www.tno.nl/en)).\r\n\r\nFor usage of QTT see the detailed [documentation](https://qtt.readthedocs.io/en/latest/) on readthedocs.io.\r\n\r\nQTT is the framework on which you can base your measurement and analysis scripts. QTT is based\r\non [QCoDeS](https://github.com/qdev-dk/Qcodes) (basic framework such as instrument drivers, DataSet) and the [SciPy](https://www.scipy.org/) ecosystem.\r\n\r\n## Installation\r\n\r\nQTT is compatible with Python 3.8+. QTT can be installed as a pip package to be used in a (virtual) Python environment.\r\nWe assume that software packages like [git](https://git-scm.com/downloads) and [python](https://www.python.org/downloads/)\r\nare already installed on your system.\r\n\r\nNote: when running Ubuntu Linux, installing these packages is done via:\r\n\r\n```bash\r\nsudo apt install git gcc python3.11 python3.11-venv python3.11-dev\r\n```\r\n\r\nfor Python 3.11.x. Other Linux distributions require similar steps.\r\n\r\n### Setting up a virtual environment\r\n\r\nTo create a clean virtual Python environment for your QTT development do:\r\n\r\n```bash\r\nmkdir qtt\r\ncd qtt\r\n```\r\n\r\nNow activate the virtual environment. On Linux do:\r\n\r\n```bash\r\npython3 -m venv env\r\n. ./env/bin/activate\r\n```\r\n\r\nor\r\n\r\n```bash\r\nsource ./env/bin/activate\r\n```\r\n\r\nOn Windows do:\r\n\r\n```bash\r\npython -m pip install virtualenv\r\npython -m virtualenv --copies env\r\nenv\\Scripts\\activate.bat\r\n```\r\n\r\nNow we are ready to install QTT.\r\n\r\n### Installation from PyPI\r\n\r\nTo use QTT, install it as a pip package:\r\n\r\n```bash\r\npip install qtt\r\n```\r\n\r\nor install QTT from source.\r\n\r\n### Installing from source\r\n\r\nThe source for QTT can be found at Github.\r\nFor the default installation from the QTT source directory execute:\r\n\r\n```bash\r\ngit clone https://github.com/QuTech-Delft/qtt.git\r\ncd qtt\r\npip install wheel\r\n```\r\n\r\nFor QTT development install QTT in editable mode:\r\n\r\n```bash\r\npip install -e .\r\n```\r\n\r\nFor non-editable mode do:\r\n\r\n```bash\r\npip install .\r\n```\r\n\r\nWhen (encountered on Linux) PyQt5 gives an error when installing try upgrading pip\r\n\r\n```bash\r\npip install --upgrade pip\r\n```\r\n\r\nand rerun the respective install command.\r\n\r\n### When incompatibility problems arise\r\n**Note: This step is not meant for python >=3.11**\r\nSometimes the default installation does not work because of incompatible dependencies between the used packages\r\non your system. To be sure you use all the right versions of the packages used by QTT and its dependencies do:\r\n\r\n```bash\r\npip install . -r requirements_lock_py310.txt\r\n```\r\n\r\nor for development\r\n\r\n```bash\r\npip install -e . -r requirements_lock_py310.txt\r\n```\r\n\r\nThis will install a tested set of all the packages QTT depends on.\r\n\r\n### Testing\r\n\r\nTests for the QTT packages are contained in the subdirectory `tests`. To run the tests run the following command:\r\n\r\n```bash\r\npytest\r\n```\r\n\r\nWhen integration tests fail because of errors in plotting try downgrading opencv-python to 4.2.0.34:\r\n\r\n```bash\r\npip install opencv-python==4.2.0.34\r\n```\r\n\r\nWhen running on Windows Sysbsystem for Linux (WSL) you may need to uninstall opencv and install the headless version:\r\n\r\n```bash\r\npip uninstall opencv-python\r\npip install opencv-python-headless\r\n```\r\n\r\n### Installing for generating documentation\r\n\r\nTo install the necessary packages to perform documentation activities for QTT do:\r\n\r\n```bash\r\npip install -e .[rtd]\r\n```\r\n\r\nThe documentation generation process is dependent on pandoc. When you want to generate the\r\ndocumentation and pandoc is not yet installed on your system navigate\r\nto [Pandoc](https://pandoc.org/installing.html) and follow the instructions found there to install pandoc.\r\nTo build the 'readthedocs' documentation do:\r\n\r\n```bash\r\ncd docs\r\nmake html\r\n```\r\n\r\n### Vandersypen research group\r\n\r\nFor the Vandersypen research group there are more detailed instructions, read the file INSTALL.md in the spin-projects\r\nrepository.\r\n\r\n### Updating QTT\r\n\r\nTo update QTT do:\r\n\r\n```bash\r\npip install . --upgrade\r\n```\r\n\r\n## Usage\r\n\r\nSee the [documentation](https://qtt.readthedocs.io/en/latest/) and the example notebooks in the [docs/notebooks](docs/notebooks) directory.\r\n\r\nFor a general introduction also see\r\n* [Introduction to Github](https://guides.github.com/activities/hello-world/)\r\n* [Scientific python lectures](https://github.com/jrjohansson/scientific-python-lectures)\r\n\r\nIf you use [Spyder](https://github.com/spyder-ide/spyder) then use the following settings:\r\n  - 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`\r\n  - In `Tools->Preferences->Console->Advanced settings` uncheck the box `Enable UMR`\r\n\r\n## Contributing\r\n\r\nSee [Contributing](CONTRIBUTING.md) for information about bug/issue reports, contributing code, style, and testing\r\n\r\n## License\r\n\r\nSee [License](LICENSE.txt)\r\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Python-based framework for analysis and tuning of quantum dots",
    "version": "1.4.0",
    "project_urls": {
        "Homepage": "https://qutech.nl"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c4cabd9af1acf5dc533c4ac4a9d4290b49d8333cd9dd4c3d3c884a41807133c9",
                "md5": "65d32ff85398462803d60a87fe427596",
                "sha256": "03cf94e143d7607d55a9b7590163d957a4e30a72497751e201ce8243ba2c5017"
            },
            "downloads": -1,
            "filename": "qtt-1.4.0.tar.gz",
            "has_sig": false,
            "md5_digest": "65d32ff85398462803d60a87fe427596",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 42839999,
            "upload_time": "2023-05-08T09:13:49",
            "upload_time_iso_8601": "2023-05-08T09:13:49.214259Z",
            "url": "https://files.pythonhosted.org/packages/c4/ca/bd9af1acf5dc533c4ac4a9d4290b49d8333cd9dd4c3d3c884a41807133c9/qtt-1.4.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-05-08 09:13:49",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "qtt"
}
        
Elapsed time: 0.06191s