QCircuitHEOM
Authors: Kiyoto Nakamura, Dennis Herb
QCircuitHEOM is a Python package for simulating quantum circuits in non-Markovian environments using free-pole hierarchical equations of motion (FP-HEOM) and tensor-train (TT) compression.
The package is designed for superconducting-qubit simulations and connects circuit-level Qiskit input with microscopic open-system dynamics.
Installation
Install QCircuitHEOM from PyPI with
pip install qcheom
Basic usage
A typical workflow is:
- Define a Qiskit quantum circuit.
- Specify system, bath, and numerical parameters.
- Run the QCircuitHEOM simulation.
from qiskit import QuantumCircuit
from qcheom import calcTimeEvo
qc = QuantumCircuit(1)
qc.h(0)
# expected runtime: 1 min
calcTimeEvo(
fileName="result",
qc=qc,
numQ=1,
freqQ=[5.0], # GHz
rhoIni=[[1,0],[0,0]],
gateTime=[0.16], # ns
idlingTime=0.01, # ns
T=30, # mK
T1=32, # µs
omegaC=20,
exp=1/8,
tol=1e-6,
dtFB=0.1, # ps
depth=[1],
bondDim=5,
strideTime=0.01, # ns
)
- Analyze the pulse sequence, reduced density matrix, and fidelity. For multiple qubits, also analyze concurrence and logarithmic negativity.
import os
from qcheom import *
directory = os.getcwd()
fileName = 'result'
# load kwargs from QPY file
kwargs = getKwargs(directory, fileName)
# load result from CSV file
t_list, rdo_list = getResult(directory, fileName)
# Post-processing
plotQC(**kwargs)
plotPulseSeq(**kwargs)
plotFidelity(t_list, rdo_list, **kwargs)
plotConcurrence(t_list, rdo_list, **kwargs)
plotLogNeg(t_list, rdo_list, **kwargs)
plotRDO(t_list, rdo_list, **kwargs)
Graphical interface
QCircuitHEOM also provides a graphical user interface:
from qcheom import GUI
GUI().mainloop()
Documentation
The documentation is available on Read the Docs: https://tensorheom.readthedocs.io/en/latest/
References
Recent papers from our group:
- K. Nakamura and J. Ankerhold, Entanglement dynamics and performance of two-qubit gates for superconducting qubits under non-Markovian effects. Physical Review Research 8, 013337 (2026).
- K. Nakamura and J. Ankerhold, Impact of time-retarded noise on dynamical decoupling schemes for qubits. Physical Review B 111, 064503 (2025).
License
QCircuitHEOM is distributed under the BSD 3-Clause License.
Support
For questions or support, please contact Dennis Herb at dennis.herb@uni-ulm.de.
Metadata
Release files for qcheom 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| qcheom-0.1.0.tar.gz | 1.5 MB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| qcheom-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 3.1 MB
Release files / qcheom-0.1.0.tar.gz
| Download URL | qcheom-0.1.0.tar.gz |
|---|---|
| Size | 1.5 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
dcd0cf15cb061b4b31951b61a917800eedfc79188c390db9839674df2a25cf42
|
|
BLAKE2b-256 checksum How to use checksums |
243095295299799ad48dcce82d002fb854c7eb389d39019a7677f34ff52d9b70
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.9
|
Release files / qcheom-0.1.0-py3-none-any.whl
| Download URL | qcheom-0.1.0-py3-none-any.whl |
|---|---|
| Size | 1.6 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5f4b0781735e215a638e6dda9f1152af0b0fde755d090d2761f25e6a6bee0775
|
|
BLAKE2b-256 checksum How to use checksums |
ce6c8ed40e60ddb0e82bda9fa4acbd2d25ae2ea712baccdd0f1c0f1ca097c2f9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.9
|
Security for qcheom 0.1.0
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.