graspkit
English | 简体中文
graspkit is the stable foundation for reading, processing, and plotting
GRASP atomic-structure calculation results.
Package structure
graspkit.data_IO: typed GRASP text/binary loaders and stable CSF writers.graspkit.grasp_data_extractor: ASF, level, composition, transition, and mixing-coefficient post-processing.graspkit.CSFs_processor: CSF parsing, descriptors, and deterministic selection helpers.graspkit.utils: shared GRASP data models, environment detection, and quantum-number helpers.graspkit_plot: plotting and publication-style helpers.
Installation
Install graspkit-atomic from PyPI
with Python 3.14 or newer. The distribution name is graspkit-atomic;
its Python import packages are graspkit and graspkit_plot.
With uv
Use uv to manage the environment and dependencies of your own analysis project. For a new project:
uv init --python 3.14 atomic-analysis
cd atomic-analysis
uv add graspkit-atomic
uv run python -c "import graspkit; print(graspkit.__version__)"
For an existing uv project using Python 3.14 or newer, run uv add graspkit-atomic
in its directory. This records the dependency in pyproject.toml, updates
uv.lock, and installs it in the project's .venv. Use uv run python analysis.py
to run your own analysis script; manual environment activation is not required.
To pin a particular release, use uv add "graspkit-atomic==3.4.5".
You can also add the dependency to an existing pyproject.toml manually:
[project]
name = "atomic-analysis"
version = "0.1.0"
requires-python = ">=3.14"
dependencies = [
"graspkit-atomic==3.4.5",
]
Then run uv sync in that project's directory to resolve dependencies and
synchronize its environment. Commit pyproject.toml and uv.lock alongside
your analysis code to record the dependency choices.
With pip
To install into an existing Python environment:
python -m pip install graspkit-atomic
Both methods provide the same Python API, including plotting. If your project
also uses rCSFs, add it separately with uv add rcsfs.
See INSTALL.md for local-wheel installation details.
Imports
from graspkit.data_IO import EnergyFileLoader, MixCoefLoader
from graspkit.grasp_data_extractor import format_energy_configurations
from graspkit.CSFs_processor import select_csf_indices_by_ci_squared_cutoff
from graspkit_plot import configure_matplotlib_for_publication
Windows terminal encoding
On Windows terminals that use a legacy code page, Rich output from loaders
such as MixCoefLoader may raise UnicodeEncodeError when printing scientific
labels such as cm⁻¹. Run Python in UTF-8 mode:
python -X utf8 your_script.py
For a one-line loader check:
python -X utf8 -c "from graspkit.data_IO import MixCoefLoader; MixCoefLoader(r'path\to\file.m').load()"
This option changes terminal text encoding only; it does not change how GRASP files are parsed.
Release preparation
See the release guide for local wheel/source builds and artifact validation and the manual publishing workflow.
License
GNU GPL version 3 (GPL-3.0-only). See LICENSE.
Metadata
Release files for graspkit-atomic 3.4.5
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 | Actions |
|---|---|---|---|---|
| graspkit_atomic-3.4.5.tar.gz | 108.2 kB | With provenance | Details for graspkit_atomic-3.4.5.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| graspkit_atomic-3.4.5-py3-none-any.whl | Python 3 | none | any | Details for graspkit_atomic-3.4.5-py3-none-any.whl |
Total release size: 226.6 kB
Release files / graspkit_atomic-3.4.5.tar.gz
| Download URL | graspkit_atomic-3.4.5.tar.gz |
|---|---|
| Size | 108.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b0a359d9125359f295605fae98238b9df0570af9794a58b07f9b6d7396e22108
|
|
BLAKE2b-256 checksum How to use checksums |
89609dbddb6a11f954cd38207bf2a79363fb6e4dec58b3011732c77ff1291f54
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 28, 2026.
Transparency logRelease files / graspkit_atomic-3.4.5-py3-none-any.whl
| Download URL | graspkit_atomic-3.4.5-py3-none-any.whl |
|---|---|
| Size | 118.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0dc3b9f547e964c5d0a3b9797276708e1bdbdb57f9a61a49ff8a870ed2bf2793
|
|
BLAKE2b-256 checksum How to use checksums |
02ee732e8c61ca1371313fb128369418b30c7a28463c1e4b6989a99553b96440
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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 Oct 28, 2026.
Transparency logSecurity for graspkit-atomic 3.4.5
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.
Full provenance
Both files in this release have been uploaded with provenance metadata.
Attestation for graspkit_atomic-3.4.5.tar.gz
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 Oct 28, 2026.
Transparency logA 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.