Skip to main content

SEAMM Extract Clusters Plug-in

GitHub pull requests Build Status Code Coverage Code Quality Documentation Status Updates for Dependencies PyPi VERSION

A SEAMM plug-in for extracting molecular clusters (trimers, tetramers, … larger n-mers) from a condensed-phase, typically periodic, configuration as unwrapped, non-periodic structures – e.g. many-body training data and diagnostics for machine-learned force fields.

Features

  • Clusters are connected subgraphs of a molecular contact graph (molecules are in contact if their contact atoms are within a cutoff, minimum image), so chains, rings and stars all occur – not just the most compact cluster.

  • Any cluster size, and several sizes per frame (e.g. 3, 4).

  • Stratification so the set is flat in a spread coordinate (radius of gyration or largest centroid separation), with bin edges from equal quantiles of a pilot sample or given explicitly; optional balancing over the contact-graph motif.

  • Clusters are unwrapped across the periodic boundary, centred, non-periodic, with molecules and bonds intact.

  • Provenance on every configuration: unique names <frame>_<seed>_<m1-m2-...> and #ExtractClusters#scan properties (size, spread, motif, contacts, source molecules) that survive SDF/extxyz export; a clusters.csv summary per step.

  • Works on any cell (orthorhombic fast path via a periodic KD-tree; exact minimum image otherwise) and on non-periodic sources.

Acknowledgements

This package was created with Cookiecutter and the molssi-seamm/cookiecutter-seamm-plugin project template.

Developed by the Molecular Sciences Software Institute (MolSSI), which receives funding from the National Science Foundation under award ACI-1547580

History

2026.9.18 – Reproducible seeds and motif selection
  • The random seed actually used is now always printed and recorded in a new summary.json in the step directory (with the source, bin edges and counts by motif), so a run made with the seed set to “random” can be reproduced by entering the printed value.

  • A new “Restrict to motifs” option accepts only clusters with the given contact-graph topology, e.g. ring or ring, star. The dialog offers the motifs the requested cluster sizes can produce. Candidates rejected for their motif are counted and reported, since rare motifs use up the attempt budget.

2026.9.17.1 – Bugfix: a structure without bonds gave clusters of atoms
  • Molecules are identified from the bonds, so a configuration read from a format that carries no connectivity (extended XYZ without bond perception) was treated as one atom per molecule and the “clusters” were silently groups of atoms. The step now stops with a clear error pointing at the Read Structure “Perceive bonds” option. Configurations made only of noble-gas atoms or monatomic ions, which legitimately have no bonds, are still accepted.

2026.9.17 – Initial release of the Extract Clusters step
  • Extracts n-molecule clusters (trimers, tetramers, … larger n-mers) from the current, typically periodic, condensed-phase configuration as unwrapped, centred, non-periodic configurations in a new system, e.g. many-body training data and diagnostics for machine-learned force fields.

  • Clusters are connected subgraphs of a molecular contact graph (molecules are in contact if their contact atoms are within a cutoff, minimum image), so chains, rings and stars all occur; several sizes can be extracted from one frame.

  • Optional stratification so the set is flat in the radius of gyration or the largest centroid separation, with bin edges from equal quantiles of a pilot sample or given explicitly, and optional balancing over the contact-graph motif.

  • Provenance on every cluster: unique names <frame>_<seed>_<molecules> and #ExtractClusters#scan properties (size, spread, motif, contacts, bin, source molecules) that survive SDF/extxyz export, plus a clusters.csv per step.

Metadata

Release files for extract-clusters-step 2026.9.18

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for extract-clusters-step 2026.9.18
File Size Uploaded
extract_clusters_step-2026.9.18.tar.gz 69.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for extract-clusters-step 2026.9.18
File Interpreter ABI Platform
extract_clusters_step-2026.9.18-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 102.2 kB

Release files / extract_clusters_step-2026.9.18.tar.gz

Download URL extract_clusters_step-2026.9.18.tar.gz
Size 69.8 kB
Tags Source
SHA-256 checksum
How to use checksums
0cdf87b33543e189f243c9e0e40fcb554482b9680e02f83d1cf7430503530e01
BLAKE2b-256 checksum
How to use checksums
3bc86ab65de6ab4b411add4a382fb08db0a303163199ac674fbaefa020fa69a4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / extract_clusters_step-2026.9.18-py2.py3-none-any.whl

Download URL extract_clusters_step-2026.9.18-py2.py3-none-any.whl
Size 32.4 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
78c6bf62ff0cf817957ac56563e944cd03f83580ec737f14032643714eeab971
BLAKE2b-256 checksum
How to use checksums
806d187c23bb1ac0bf294ac6b59b6793f97b160543798f9ee4f0bd3f07e53a0e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

2026.9.18 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page