Skip to main content

The Chemical Core Class for Graph Theory Analysis.

Project description

graphatoms

Conda Version Conda Downloads Pypi version PyPI Downloads

The Chemical Core Class for Graph Theory Analysis.

Overview

The graphatoms is a Python library designed for chemical graph theory analysis. It provides core classes for representing chemical systems and reactions with graph-based data structures.

Features

  • Graph-based Chemical System Representation: Represent chemical systems, clusters, and gas molecules using graph theory
  • Reaction Modeling: Support for reaction classes, KMC (Kinetic Monte Carlo) events, and MC (Monte Carlo) moves
  • Geometry Operations: Bond lists, distance calculations, neighbor lists, rotations, MIC (Minimum Image Convention), and sampling
  • Data Storage: Support for HDF5 and SQLite databases for efficient data persistence
  • Dataclasses: Pydantic-based data models for type-safe data handling
  • Array API Compatibility: Support for array API standard for cross-framework compatibility

Module Structure

src/graphatoms/
├── arrayapi/        # Array API compatibility layer
├── dataclasses/     # Pydantic-based data models
├── geometry/        # Geometric operations
├── reaction/        # Reaction classes and KMC events
│   ├── base/        # Abstract base classes
│   ├── event/       # KMC events (adsorption, desorption, reaction)
│   ├── mcmove/      # Monte Carlo moves
│   ├── mdwarpper/   # MD wrapper
│   └── network/     # Reaction network
├── system/          # Core system classes
│   ├── atoms/       # Atomic structure handling
│   ├── database/    # Database storage backends
│   └── graph/       # Graph-based system representation
└── utils/           # Utility functions

Requirements

  • Python >= 3.12
  • ase
  • pymatgen > 2023.6
  • rdkit >= 2025
  • scikit-learn >= 1.5
  • array-api-compat >= 1.10
  • array-api-extra >= 0.10
  • pyarrow
  • igraph >= 0.11
  • h5py >= 3.16
  • hydra-core
  • numpy >= 2.0.0
  • numpydantic
  • ovld
  • pydantic >= 2.10
  • python-snappy >= 0.7.3
  • loguru

Installation

pip install graphatoms

Or with conda:

conda install -c conda-forge graphatoms

Development

For development setup with pixi:

pixi install
pixi run test

Running Tests

# Run all tests
pytest src/tests/ -v

# Run benchmark tests
pytest src/tests-benchmark/ -v

License

GPL-3.0-or-later

Authors

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

graphatoms-1.1.5.tar.gz (167.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

graphatoms-1.1.5-py3-none-any.whl (193.3 kB view details)

Uploaded Python 3

File details

Details for the file graphatoms-1.1.5.tar.gz.

File metadata

  • Download URL: graphatoms-1.1.5.tar.gz
  • Upload date:
  • Size: 167.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for graphatoms-1.1.5.tar.gz
Algorithm Hash digest
SHA256 08efecb61df195e503d9e7b4dee2ccf1a16cfb5b2d6d73debb3896b39ea48576
MD5 d0b5e7bba6e328635f608ab64e32711a
BLAKE2b-256 30af71ee37baf6743c966ccf3f539367f64dd02b757d770a5086511516d559f9

See more details on using hashes here.

Provenance

The following attestation bundles were made for graphatoms-1.1.5.tar.gz:

Publisher: publish.yml on LiuGaoyong/GraphAtoms

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file graphatoms-1.1.5-py3-none-any.whl.

File metadata

  • Download URL: graphatoms-1.1.5-py3-none-any.whl
  • Upload date:
  • Size: 193.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for graphatoms-1.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 904fa2bf9102364f96217a4a797f2cdee2b8a61f38c08d7fa25b5d02581f193f
MD5 5eaa50281e8760e38b04f06003b41aa2
BLAKE2b-256 7e364e21f342d29c347cdfb43baa7fc21a8f81017b5847def5c7bca53c6443d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for graphatoms-1.1.5-py3-none-any.whl:

Publisher: publish.yml on LiuGaoyong/GraphAtoms

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page