Skip to main content

Quantum Color Centers Analysis Toolbox

Logo

DOI Documentation PyPI Conda Version PyPI Downloads

Pylint Ruff Tests

QuaCCAToo is a Python library for simulating and analyzing spin dynamics of color centers for quantum technology applications. The library provides several predefined pulsed sequences, analysis methods and quantum systems divided into four integrated modules: qsys, pulsed_sim, analysis and exp_data. The systems' time evolution under pulsed experiments are calculated through quantum master equations based on the provided Hamiltonian, with realistic pulses in the laboratory frame without rotating frame approximations. The software is built on top of QuTip, inheriting its object-oriented framework and the Qobj class. The code is continuously improved and maintained using pytest, ruff, pylint and ty.

For learning more about the package, we recommend first checking the tutorials section.

If you used QuaCCAToo in your work, please cite Digital Twin Simulations Toolbox of the Nitrogen-Vacancy Center in Diamond.

Links

Installation

We strongly recommend using a virtual environment using whichever tool like venv/conda/uv that you prefer so that the system Python remains untouched. For example, with conda:

conda create --name quaccatoo-env python
conda activate quaccatoo-env

The package can then be installed from pip:

pip install quaccatoo

Or from conda-forge:

conda install -c conda-forge quaccatoo

Finally, to check installation:

conda list quaccatoo

Check here for detailed installation instructions.

Note for Windows/macOS Users

QuaCCAToo is best optimized to run on GNU/Linux systems. More specifically, the parallel_map method from QuTip, which QuaCCAToo heavily relies on, does not work properly on Windows. This leads to severe slow downs in simulations and even crashes in some hardware. macOS machines have not been tested by us.

Featured In

  • L. Tsunaki, A. Singh, S. Trofimov, & B. Naydenov. (2025). Digital Twin Simulations Toolbox of the Nitrogen-Vacancy Center in Diamond. Advanced Quantum Technologies, e00691. doi: 10.1002/qute.202500691.
  • L. Tsunaki, A. Singh, K. Volkova, S. Trofimov, T. Pregnolato, T. Schröder, & B. Naydenov. (2025). Ambiguous resonances in multipulse quantum sensing with nitrogen-vacancy centers. Physical Review A, 111(2), 022606. doi: 10.1103/PhysRevA.111.022606.
  • L. Tsunaki, M. Dotan, K. Volkova, & B. Naydenov. (2025). Quantum gates via dynamical decoupling of a central qubit on IBMQ and 15N-vacancy centers in diamond. Physical Review A, 113, 042627. doi: 0.1103/6st7-qh12.
  • S. Trofimov, C. Thessalonikios, V. Deinhart, A. Spyrantis, L. Tsunaki, K. Volkova, K. Höflich, & B. Naydenov. (2026). Local nanoscale probing of electron spins using NV centers in diamond. 10.1016/j.diamond.2026.113530.

If you used QuaCCAToo in your work, please let us know so we can add it to the list!

Class Hierarchy

QuaCCAToo is an object-oriented package organized with the following classes:

  • QSys defines the quantum system of the problem. It has an obligatory intrinsic internal Hamiltonian $H_0$, optional initial state, observable and a set of collapse operators. On QSys, calculates the eigenstates and eigenvalues of the system and has methods for truncating the systems and adding other spins. QuaCCAToo provides NV as a predefined system for nitrogen vacancy centers in diamonds, more systems will be provided soon.
  • PulsedSim contains the logic for performing the simulation of pulsed experiments upon a QSys object. It has attributes of a pulse sequence containing a set of pulses and free evolutions, control Hamiltonian $H_1$, experiment variable and simulation results. Many predefined common pulse sequences are given in predef_seqs and predef_dd_seqs modules. Different pulse shapes are predefined in the pulse_shapes module.
  • ExpData is a class to load experimental data and perform basic data processing, such as rescaling, subtracting columns or performing polynomial baseline corrections.
  • Analysis can be used either on simulation or experimental results, with a series of methods like for fitting (based on lmfit), Fourier transforms and data comparison. The class can also used for plotting the results in multiple forms, including density matrix histograms and Bloch spheres. Several fit models and functions relevant for analysis of color centers are provided in the fit_functions module.

Class diagram

Contribution guidelines

Any contribution or bug report are welcome.

  • To contribute, fork the main branch and make a pull request.
  • We use hatch/hatchling as the build backend. The other development dependencies include pytest, ruff, pylint and ty. They can be installed by running pip install -e '.[dev]' from within the cloned repository. See here for details.
  • Properly document everything in details following the numpy docstring format.
  • Test your branch by running pytest and the tutorial notebooks.
  • Add corresponding tests to every new method, function or functionality in general.
  • Run pylint quaccatoo within the directory to check for code quality and ensure no new warnings are introduced.
  • Please pay attention to linter warnings (ruff check) and format your code with ruff format. Also recommended is to run ty check for type hints.
  • Module level refactors require corresponding changes in the sphinx setup, too.
  • Use US-English, not British-English. Eg: analyze instead of analyse, color instead of colour, center instead of centre.

Release files for quaccatoo 1.3.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 quaccatoo 1.3.0
File Size Uploaded
quaccatoo-1.3.0.tar.gz 78.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for quaccatoo 1.3.0
File Interpreter ABI Platform
quaccatoo-1.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 147.2 kB

Release files / quaccatoo-1.3.0.tar.gz

Download URL quaccatoo-1.3.0.tar.gz
Size 78.4 kB
Tags Source
SHA-256 checksum
How to use checksums
ab0759d58b2608a0d461483598d34077988cf31fc19199eeffd86220e1e8c560
BLAKE2b-256 checksum
How to use checksums
88914c0bfcc06ac7df0a2588737bf317163820e0ff2be7f0cc1a4db42ddd487e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 30, 2026.

Transparency log

Release files / quaccatoo-1.3.0-py3-none-any.whl

Download URL quaccatoo-1.3.0-py3-none-any.whl
Size 68.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2f6f97510a310e357b54b6c842e6a35e04ed3258de29d3fe9526ce18975c9959
BLAKE2b-256 checksum
How to use checksums
6532d3177b73acd884e5e7aaaf75230e607e7e27cae181fef4b6ac8ea650ca42
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 30, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.3.0 This release

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.0

2 release files

0.7.0

2 release files

0.5.4

2 release files

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