Post-processing tools for particle simulations
Project description
Postprocessing
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
- Fourier space
- structure factor
- spectral density
- self intermediate scattering functions
- collective intermediate scattering functions
- four-point dynamic susceptibility
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file atooms_pp-4.0.2.tar.gz
.
File metadata
- Download URL: atooms_pp-4.0.2.tar.gz
- Upload date:
- Size: 67.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | aa72c83708009239ce1ebb0277d2ddf6ac1260111244417b049c127f54a4047f |
|
MD5 | d7a82cc16103a8d7ea36ab01f36d70b7 |
|
BLAKE2b-256 | 3608e38a00a42f6ad508f271c118f6d8dceccddbb7ac317edbe32a625bda6492 |
File details
Details for the file atooms_pp-4.0.2-py3-none-any.whl
.
File metadata
- Download URL: atooms_pp-4.0.2-py3-none-any.whl
- Upload date:
- Size: 71.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bd2e12210ead71963d5e42fd0b4fbfa0a06854bbc3987bdcd4b87f18d1e3a34a |
|
MD5 | 25c327d692b6cc0ce37d19ad0e57e931 |
|
BLAKE2b-256 | 5e7c803e98d7bfc3b40a960f5ecafd608cd233512ca5e14805dd3f7630fd54ef |