Skip to main content

A library for analysis of coordination polyhedra from molecular dynamics trajectories

Project description

polyhedral-analysis

Build Status Coverage Status Documentation Status

polyhedral-analysis is a Python module for analysing coordination polyhedra in crystal structures and molecular dynamics trajectories. Built on top of pymatgen, it works with any structure that pymatgen can read.

Features

  • Coordination polyhedron construction from distance cutoffs, nearest neighbours, or closest-centre assignment
  • Continuous symmetry measures (CSM) against reference geometries (tetrahedron, octahedron, cube, etc.)
  • Best-fit geometry identification across all reference polyhedra for a given coordination number
  • Bond lengths, angles, volumes, and edge connectivity graphs
  • Corner-, edge-, and face-sharing neighbour analysis
  • Off-centre displacement and radial distortion parameters
  • Vertex vector orientation analysis with orientation distribution plotting
  • Trajectory analysis for tracking polyhedral distortions over molecular dynamics runs

Installation

pip install polyhedral-analysis

Requirements

  • Python 3.11+
  • numpy
  • pymatgen >= 2024.7.18
  • scipy
  • bsym

Quick start

from pymatgen.io.vasp import Poscar
from polyhedral_analysis.configuration import Configuration
from polyhedral_analysis.polyhedra_recipe import PolyhedraRecipe

# Define a recipe for octahedral coordination
recipe = PolyhedraRecipe(
    method='distance cutoff',
    coordination_cutoff=3.0,
    central_atoms='Ti',
    vertex_atoms=['O', 'F'],
)

# Load a structure and build polyhedra
structure = Poscar.from_file('POSCAR').structure
config = Configuration(structure=structure, recipes=[recipe])

# Inspect a polyhedron
poly = config.polyhedra[0]
print(poly.coordination_number)     # 6
print(poly.best_fit_geometry)       # {'geometry': 'Octahedron', 'symmetry_measure': ...}
print(poly.volume)                  # polyhedral volume
print(poly.coordination_distances())  # list of bond lengths

Documentation

Full documentation — including a getting started guide, core concepts, and guides for recipes, symmetry measures, neighbour analysis, and trajectory analysis — is available at polyhedral-analysis.readthedocs.io.

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

polyhedral_analysis-0.6.1.tar.gz (49.2 kB view details)

Uploaded Source

Built Distribution

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

polyhedral_analysis-0.6.1-py3-none-any.whl (35.7 kB view details)

Uploaded Python 3

File details

Details for the file polyhedral_analysis-0.6.1.tar.gz.

File metadata

  • Download URL: polyhedral_analysis-0.6.1.tar.gz
  • Upload date:
  • Size: 49.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for polyhedral_analysis-0.6.1.tar.gz
Algorithm Hash digest
SHA256 6f9727aa4bc8b6aed25783addef00fed313c946091bd3064b82c08001055a14f
MD5 f0dbfbe48bc2061fda4eda5a3eb59662
BLAKE2b-256 d6ef492d3cd2e160cdf18336dd3d321f4a182fb875bfb4ec804fd0801928367e

See more details on using hashes here.

Provenance

The following attestation bundles were made for polyhedral_analysis-0.6.1.tar.gz:

Publisher: publish.yml on bjmorgan/polyhedral-analysis

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

File details

Details for the file polyhedral_analysis-0.6.1-py3-none-any.whl.

File metadata

File hashes

Hashes for polyhedral_analysis-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 afa75512f1723004d77f5e4d1d47391cd55381a78b4fe8d1772eae3fdbdb0e63
MD5 649f8b151c04ac5d0369719ce7ce4c2f
BLAKE2b-256 ea892f2209b5f50bd1aa4e31db97bae9f7129dcc4ccae9608de1922abbe7f0d2

See more details on using hashes here.

Provenance

The following attestation bundles were made for polyhedral_analysis-0.6.1-py3-none-any.whl:

Publisher: publish.yml on bjmorgan/polyhedral-analysis

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