Skip to main content

Documentation Status Tests for GEMDAT Coverage PyPI - Python Version PyPI DOI Zenodo

GEMDAT banner GEMDAT banner

GEMDAT

Gemdat is a Python library for the analysis of diffusion in solid-state electrolytes from Molecular Dynamics simulations. Gemdat is built on top of Pymatgen, making it straightforward to integrate it into your Pymatgen-based workflows.

With Gemdat, you can:

  • Explore your MD simulation via an easy-to-use Python API
  • Load and analyze trajectories from VASP, LAMMPS, GROMACS, and ASE simulation data
  • Find jumps and transitions between sites
  • Effortlessly calculate tracer and jump diffusivity
  • Easily perform kinisi diffusion analysis
  • Characterize and visualize diffusion pathways
  • Plot main structural and diffusion properties

To install:

pip install gemdat

Optional Dependencies

GOAC (Global Optimization of Atomistic Configurations by Coulomb)

GOAC is an optional dependency for global optimization of atomistic configurations. It can be installed directly from GitHub:

pip install GOAC --find-links https://github.com/GEMDAT-repos/GOAC/releases/expanded_assets/0.1.1

The source code is available from Github.

Suggestions, improvements, and edits are most welcome.

Usage

The following snippet to analyze the diffusion trajectory from VASP data.

from gemdat import Trajectory

trajectory = Trajectory.from_vasprun('../example/vasprun.xml')

trajectory.plot_displacement_per_element()

diff_trajectory = trajectory.filter('Li')

diff_trajectory.plot_msd_per_element()
diff_trajectory.plot_displacement_per_atom()
diff_trajectory.plot_displacement_histogram()
diff_trajectory.plot_frequency_vs_occurence()
diff_trajectory.plot_vibrational_amplitudes()

Characterize transitions and jumps between sites:

from gemdat.io import load_known_material

sites = load_known_material('argyrodite', supercell=(2, 1, 1))

transitions = trajectory.transitions_between_sites(
    sites=sites,
    floating_specie='Li',
)

jumps = transitions.jumps()

jumps.plot_jumps_vs_distance()
jumps.plot_jumps_vs_time()
jumps.plot_collective_jumps()
jumps.plot_jumps_3d()

jumps.jump_diffusivity(dimensions=3)

To calculate different metrics, such as tracer diffusivity:

from gemdat import TrajectoryMetrics

metrics = TrajectoryMetrics(diff_trajectory)

metrics.tracer_diffusivity(dimensions=3)
metrics.haven_ratio(dimensions=3)
metrics.tracer_conductivity(dimensions=3)
metrics.particle_density()
metrics.vibration_amplitude()

Development

Check out our Contributing Guidelines to get started with development.

How to Cite

  • A.K. Lavrinenko, T. Famprikis, V. Landgraf, J.R. Heringa, S. Smeets, V. Azizi, S. Ciarella, M. Wagemaker & A. Vasileiadis. GEMDAT: a Python toolkit for site-resolved diffusion analysis in solid-state molecular dynamics. npj Comput Mater (2026). doi: 10.1038/s41524-026-02133-7

Dissemination

Credits

Some parts of the code in this repository are based on Matlab code to analyse Molecular Dynamics simulations.

For background information on how some of the properties are calculated, check out the accompanying paper:

  • Niek J.J. de Klerk, Eveline van der Maas and Marnix Wagemaker, ACS Applied Energy Materials, (2018), doi: 10.1021/acsaem.8b00457

Release files for GEMDAT 1.8.1

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

Source distribution (sdist)

Source distribution for GEMDAT 1.8.1
File Size Uploaded
gemdat-1.8.1.tar.gz 566.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for GEMDAT 1.8.1
File Interpreter ABI Platform
gemdat-1.8.1-py3-none-any.whl Python 3 none any Details

Total release size: 1.2 MB

Release files / gemdat-1.8.1.tar.gz

Download URL gemdat-1.8.1.tar.gz
Size 566.9 kB
Tags Source
SHA-256 checksum
How to use checksums
78dd7d55666c2070282afc2855f6e1703dd3c2a16d9d9a1ac4fe6432baeac3af
BLAKE2b-256 checksum
How to use checksums
81c6b13508583edddb50536128ccb1fd66dc8afd894e094b312f3858f4d38d6a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 24, 2026.

Transparency log

Release files / gemdat-1.8.1-py3-none-any.whl

Download URL gemdat-1.8.1-py3-none-any.whl
Size 593.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ef2080e6aa1aeb0d33a37648e5a39f3b167f395870a1678e59dfb62d5fb8e794
BLAKE2b-256 checksum
How to use checksums
d8c71a4e43311845db08251772ee59acc703ba3bc588a5dc05a9562049cd1158
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 24, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.8.1 This release

2 release files

1.8.0

2 release files

1.7.3

2 release files

1.7.2

2 release files

1.7.1

2 release files

1.7.0

2 release files

1.6.3

2 release files

1.6.2

2 release files

1.6.1

2 release files

1.6.0

2 release files

1.5.1

2 release files

1.5.0

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.1

2 release files

1.1.0

2 release files

1.0.0

2 release files

0.9.4

2 release files

0.9.3

2 release files

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.0.1

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