Skip to main content

Post-processing tools for particle simulations

Project description

Postprocessing

pypi version license Binder pipeline coverage report

A Python package to compute static and dynamic correlation functions from simulations of interacting particles, such as molecular dynamics or Monte Carlo simulations. Based on atooms.

Quick start

Postprocessing works on trajectories. Any trajectory format recognized by atooms can be processed, for instance most "xyz" files should work fine. If you use a custom trajectory format, it is easy to add it.

As an example, we compute the structure factor S(k) from the file trajectory.xyz in the data/ folder.

From the command line

pp.py --norigins 0.2 msd data/trajectory.xyz

We just used 20% of the available time frames to compute the averages using the --norigins flag. Without it, atooms-pp applies an heuristics to determine the number of time frames required to achieve a reasonable data quality. The results of the calculation are stored in the file data/trajectory.xyz.pp.sk.

From Python

The same calculation can be done from Python:

from atooms.trajectory import Trajectory
import atooms.postprocessing as pp

with Trajectory('data/trajectory.xyz') as t:
     p = pp.StructureFactor(t)
     p.do()

Features

Available correlation and distribution functions

  • Real space
    • radial distribution function
    • mean square displacement
    • velocity auto-correlation function
    • self overlap functions
    • collective overlap functions
    • dynamic susceptibility of the self overlap function
    • non-Gaussian parameter
    • bond-angle distribution
    • self van Hove distribution function
    • distinct van Hove distribution function
    • orientational time-dependent correlation functions
    • orientation-angle distribution
  • Fourier space
    • structure factor
    • spectral density
    • self intermediate scattering functions
    • collective intermediate scattering functions
    • four-point dynamic susceptibility

Most correlation functions admits a center-of-mass variant suitable for the molecular centers of mass.

Documentation

Check out the tutorial for more examples and the public API for full details.

Org-mode and jupyter notebooks are available under docs/. You can run the tutorial interactively on Binder.

Installation

Install with pip

pip install atooms-pp

Or clone the project repository

git clone https://framagit.org/atooms/postprocessing.git
cd postprocessing
make install

Contributing

Contributions to the project are welcome. If you wish to contribute, check out these guidelines.

Authors

Daniele Coslovich: https://www.units.it/daniele.coslovich/

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

atooms_pp-4.2.1.tar.gz (78.3 kB view details)

Uploaded Source

Built Distribution

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

atooms_pp-4.2.1-py3-none-any.whl (81.2 kB view details)

Uploaded Python 3

File details

Details for the file atooms_pp-4.2.1.tar.gz.

File metadata

  • Download URL: atooms_pp-4.2.1.tar.gz
  • Upload date:
  • Size: 78.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.12

File hashes

Hashes for atooms_pp-4.2.1.tar.gz
Algorithm Hash digest
SHA256 47d0b0c585c113507a61c5da8d59f129cc6e29b2c60ad185c122b95ffb6602a0
MD5 fa835c48f960f079d2555619c19cf81b
BLAKE2b-256 d59114ebe00aa0527f12075c91cd3fc9497cb64bc50d07af779e20016a806791

See more details on using hashes here.

File details

Details for the file atooms_pp-4.2.1-py3-none-any.whl.

File metadata

  • Download URL: atooms_pp-4.2.1-py3-none-any.whl
  • Upload date:
  • Size: 81.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.12

File hashes

Hashes for atooms_pp-4.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e506a7bbb298b6a1faaaa2e682c7b3ced01675e067eec7ce62e5d2d9d00ca121
MD5 c9ff5cb4908e1582568b509c43848007
BLAKE2b-256 a920105c7462591a08c48cefd7df638e39b782f9c5dfd81ac55c277e18fb20c4

See more details on using hashes here.

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