QC Lab: a python package for quantum-classical modeling.
Project description
QC Lab is a Python package designed for implementing and executing quantum-classical (QC) dynamics simulations. It offers an environment for developing physical models and QC algorithms which enables algorithms and models to be combined arbitrarily. QC Lab comes with a variety of already implemented models and algorithms which we hope will encourage new researchers to explore the field of quantum-classical dynamics. Users that implement their own models and algorithms will have the opportunity to contribute them to QC Lab to form a growing library of quantum-classical dynamics tools.
As of QC Lab v1.1.0, QC Lab comes with the ability to simulate on-the-fly ab initio nonadiabatic dynamics.
QC Lab is developed and maintained by the Tempelaar Team in the Chemistry Department of Northwestern University in Evanston, Illinois, USA.
The documentation for QC Lab can be found at https://tempelaar-team.github.io/qclab/.
Capabilities
Dynamics Algorithms
The following algorithms are implemented making use of the complex-classical coordinate formalism established in [1].
Mean-field (Ehrenfest) dynamics [2]
Fewest-switches surface hopping (FSSH) dynamics [3]
Ab Initio Mean-Field dynamics
Ab Initio FSSH dynamics
Model Systems
Spin-boson model [4]
Holstein lattice model [5]
Fenna-Matthews-Olson (FMO) complex [6, 7]
Tully problems I, II, & III [8]
Atomistic Ab Initio model
Installing QC Lab
QC Lab can be installed from the Python Package Index (PyPI) by executing:
pip install qclab
To install QC Lab without h5py, numba, or ASE support, execute:
pip install qclab --no-deps pip install numpy tqdm
to install the remaining required dependencies manually.
QC Lab can be installed from source by downloading the latest release, unpacking it, and executing:
pip install ./
from inside its topmost directory (where the pyproject.toml file is located).
QC Lab doesn’t enforce third-party dependencies. If you hit resolver conflicts or install errors, the quickest fix is to install in a clean Python environment (via venv or conda). Alternatively, reconcile package versions in your existing environment until the requirements are satisfied.
Bibliography
Miyazaki, K.; Krotz, A.; Tempelaar, R. Mixed Quantum–Classical Dynamics under Arbitrary Unitary Basis Transformations. J. Chem. Theory Comput. 2024, 20 (15), 6500–6509. https://doi.org/10.1021/acs.jctc.4c00555.
Tully, J. C. Mixed Quantum–Classical Dynamics. Faraday Discuss. 1998, 110 (0), 407–419. https://doi.org/10.1039/A801824C.
Hammes‐Schiffer, S.; Tully, J. C. Proton Transfer in Solution: Molecular Dynamics with Quantum Transitions. J. Chem. Phys. 1994, 101 (6), 4657–4667. https://doi.org/10.1063/1.467455.
Tempelaar, R.; Reichman, D. R. Generalization of Fewest-Switches Surface Hopping for Coherences. J. Chem. Phys. 2018, 148 (10), 102309. https://doi.org/10.1063/1.5000843.
Krotz, A.; Provazza, J.; Tempelaar, R. A Reciprocal-Space Formulation of Mixed Quantum–Classical Dynamics. J. Chem. Phys. 2021, 154 (22), 224101. https://doi.org/10.1063/5.0053177.
Fenna, R. E.; Matthews, B. W. Chlorophyll Arrangement in a Bacteriochlorophyll Protein from Chlorobium Limicola. Nature 1975, 258 (5536), 573–577. https://doi.org/10.1038/258573a0.
Mulvihill, E.; Lenn, K. M.; Gao, X.; Schubert, A.; Dunietz, B. D.; Geva, E. Simulating Energy Transfer Dynamics in the Fenna–Matthews–Olson Complex via the Modified Generalized Quantum Master Equation. J. Chem. Phys. 2021, 154 (20), 204109. https://doi.org/10.1063/5.0051101.
Tully, J. C. Molecular Dynamics with Electronic Transitions. J. Chem. Phys. 1990, 93 (2), 1061–1071. https://doi.org/10.1063/1.459170.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file qclab-1.1.1.tar.gz.
File metadata
- Download URL: qclab-1.1.1.tar.gz
- Upload date:
- Size: 72.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b181958c38fc23cc553f2605cbf3c4b28b4e4bc2ad270ec3f7fd5c3f710bd5eb
|
|
| MD5 |
07ef42106f8f324d6bc39f89b44d59fc
|
|
| BLAKE2b-256 |
a830f2c17baa85cf22c2ea7e21a93c747fbaba5c5211948d6299360d8c824274
|
Provenance
The following attestation bundles were made for qclab-1.1.1.tar.gz:
Publisher:
publish_pypi.yml on tempelaar-team/qclab
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
qclab-1.1.1.tar.gz -
Subject digest:
b181958c38fc23cc553f2605cbf3c4b28b4e4bc2ad270ec3f7fd5c3f710bd5eb - Sigstore transparency entry: 1076908732
- Sigstore integration time:
-
Permalink:
tempelaar-team/qclab@4bb3c6dacfaaa37e5fe809cdfdc4154d3dd2a9bd -
Branch / Tag:
refs/tags/v1.1.1 - Owner: https://github.com/tempelaar-team
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_pypi.yml@4bb3c6dacfaaa37e5fe809cdfdc4154d3dd2a9bd -
Trigger Event:
release
-
Statement type:
File details
Details for the file qclab-1.1.1-py3-none-any.whl.
File metadata
- Download URL: qclab-1.1.1-py3-none-any.whl
- Upload date:
- Size: 80.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ac7f0beef39ba64ff671dffb43c09e42d234d182948b444c7400ef309301699a
|
|
| MD5 |
79e7d60b98220b89cc3f9a446f47c455
|
|
| BLAKE2b-256 |
4ff53b35ab3c0aadba356f1876de4c7c6bf740aa435219d0daac6ff18a05ef73
|
Provenance
The following attestation bundles were made for qclab-1.1.1-py3-none-any.whl:
Publisher:
publish_pypi.yml on tempelaar-team/qclab
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
qclab-1.1.1-py3-none-any.whl -
Subject digest:
ac7f0beef39ba64ff671dffb43c09e42d234d182948b444c7400ef309301699a - Sigstore transparency entry: 1076908735
- Sigstore integration time:
-
Permalink:
tempelaar-team/qclab@4bb3c6dacfaaa37e5fe809cdfdc4154d3dd2a9bd -
Branch / Tag:
refs/tags/v1.1.1 - Owner: https://github.com/tempelaar-team
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_pypi.yml@4bb3c6dacfaaa37e5fe809cdfdc4154d3dd2a9bd -
Trigger Event:
release
-
Statement type: