quaccatoo

Quantum Color Centers Analysis Toolbox

https://github.com/qiss-hzb/quaccatoo

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 2 DOI reference(s) in README
  • Academic publication links
    Links to: arxiv.org, aps.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.2%) to scientific vocabulary
Last synced: 9 months ago · JSON representation ·

Repository

Quantum Color Centers Analysis Toolbox

Basic Info
Statistics
  • Stars: 12
  • Watchers: 1
  • Forks: 2
  • Open Issues: 0
  • Releases: 0
Created over 2 years ago · Last pushed 10 months ago
Metadata Files
Readme License Citation

README.md

Quantum Color Centers Analysis Toolbox

Logo

QuaCCAToo is a Python library for simulating and analyzing spin dynamics of color centers for quantum technology applications. 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. The software is built on top of QuTip, inheriting its object-oriented framework and the Qobj class.

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

If you used QuaCCAToo in your work, please cite arXiv:2507.18759.

Links

  • Repository: https://github.com/QISS-HZB/QuaCCAToo
  • Documentation: https://qiss-hzb.github.io/QuaCCAToo/
  • PyPI: https://pypi.org/project/QuaCCAToo/

Installation

We strongly recommend using a virtual environment (use whichever tool like venv/conda/uv that you prefer) so that the system Python remains untouched.

sh pip install quaccatoo

Check here for detailed installation instructions.

Featured In

  • L. Tsunaki, A. Singh, S. Trofimov, & B. Naydenov. (2025). Digital Twin Simulations Toolbox of the Nitrogen-Vacancy Center in Diamond. arXiv:2507.18759 quant-ph. 2507.18759.
  • 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.
  • S. Trofimov, C. Thessalonikios, V. Deinhart, A. Spyrantis, L. Tsunaki, K. Volkova, K. Höflich, & B. Naydenov. (2025). Local nanoscale probing of electron spins using NV centers in diamond. arXiv:2507.13295 quant-ph. 2507.13295.

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 $H0$, 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 $H1$, 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 and ruff. 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. Feel free to add more tests.
  • Please pay attention to linter warnings (ruff check) and format your code with ruff format.
  • 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.

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.

Owner

  • Name: QISS-HZB
  • Login: QISS-HZB
  • Kind: organization

Citation (CITATION.cff)

cff-version: 1.2.0

title: Quantum Color Centers Analysis Toolbox (QuaCCAToo)

message: >-
  If you use this software, please cite it using the
  metadata from this file.

type: software

authors:
  - given-names: Lucas
    family-names: Tsunaki
    email: lucas.tsunaki@helmholtz-berlin.de
    orcid: 'https://orcid.org/0009-0003-3534-6300'
    affiliation: 0

  - given-names: Anmol
    family-names: Singh
    email: anmol.singh@helmholtz-berlin.de
    orcid: 'https://orcid.org/0009-0000-1578-626X'
    affiliation: 0

  - given-names: Sergei
    family-names: Trofimov
    email: sergei.trofimov@helmholtz-berlin.de
    orcid: 'https://orcid.org/0000-0002-2850-5292'
    affiliation: 0

  - given-names: Kseniia
    family-names: Volkova
    email: kseniia.volkova@helmholtz-berlin.de
    affiliation: 0

  - given-names: Boris
    family-names: Naydenov
    email: boris.naydenov@helmholtz-berlin.de
    orcid: 'https://orcid.org/0000-0002-5215-3880'
    affiliation: [0,1]

affiliations:
  - name: Helmholtz-Zentrum Berlin für Materialien und Energie GmbH
    identifier: https://ror.org/02aj13c28
    department: Department Spins in Energy Conversion and Quantum Information Science (ASPIN)
    address: Hahn-Meitner-Platz, Berlin 14109, Germany

  - name: Fachbereich Physik, Freie Universität Berlin
    identifier: https://ror.org/046ak2485
    department: Berlin Joint EPR Laboratory
    address: Arnimallee 14, Berlin, 14195, Berlin, Germany

repository-code: 'https://github.com/QISS-HZB/QuaCCAToo'
repository-name: QuaCCAToo

license: GPL-3.0

GitHub Events

Total
  • Watch event: 13
  • Push event: 143
  • Pull request event: 5
  • Fork event: 3
  • Create event: 9
Last Year
  • Watch event: 13
  • Push event: 143
  • Pull request event: 5
  • Fork event: 3
  • Create event: 9

Issues and Pull Requests

Last synced: 10 months ago

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 88 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 5
  • Total maintainers: 1
pypi.org: quaccatoo

Quantum Color Centers Analysis Toolbox

  • Versions: 5
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 88 Last month
Rankings
Dependent packages count: 8.8%
Average: 29.3%
Dependent repos count: 49.7%
Maintainers (1)
Last synced: 10 months ago

Dependencies

setup.py pypi
  • matplotlib *
  • numpy *
  • qutip *
  • scipy *
.github/workflows/sphinx.yml actions
  • actions/checkout v4 composite
  • peaceiris/actions-gh-pages v3 composite
docs/requirements.txt pypi
  • numpydoc *
  • sphinx *
  • sphinxawesome-theme *