Skip to content
Python library written in C++ for calculation of local atomic structural environment
C++ Python CMake Perl TeX Shell Other
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/ISSUE_TEMPLATE
conda-recipe
docs
examples
joss
lib
src/pyscal
tests
.gitignore
CMakeLists.txt
CODE_OF_CONDUCT.md
CONTRIBUTING.rst
LICENSE
README.rst
apt.txt
azure-pipelines.yml
makefile
requirements.txt
requirements_dev.txt
setup.py

README.rst

https://dev.azure.com/sarathrmenon/pyscal/_apis/build/status/srmnitc.pyscal?branchName=master https://readthedocs.org/projects/pyscal/badge/?version=latest

pyscal - python Structural Environment Calculator

complete documentation with examples available here.

pyscal is a python module for the calculation of local atomic structural environments including Steinhardt's bond orientational order parameters [1] during post-processing of atomistic simulation data. The core functionality of pyscal is written in C++ with python wrappers using pybind11 which allows for fast calculations with possibilities for easy expansion in python.

Steinhardt's order parameters are widely used for identification of crystal structures [2]. They are also used to identify if an atom is solid or liquid [3]. pyscal is inspired by BondOrderAnalysis code, but has since incorporated many additions and modifications. pyscal module includes the following functionality-

Highlights

  • fast and efficient calculations using C++ and expansion using python.
  • calculation of Steinhardt's order parameters and their averaged version [4].
  • links with Voro++ code, for calculation of Steinhardt parameters weighted using face area of Voronoi polyhedra [3].
  • classification of atoms as solid or liquid [4].
  • clustering of particles based on a user defined property.
  • methods for calculating radial distribution function, voronoi volume of particles, number of vertices and face area of voronoi polyhedra and coordination number.
[1]Steinhardt, P. J., Nelson, D. R., & Ronchetti, M. (1983). Physical Review B, 28.
[2]Lechner, W., & Dellago, C. (2008). The Journal of Chemical Physics, 129.
[3](1, 2) Mickel, W., Kapfer, S. C., Schröder-Turk, G. E., & Mecke, K. (2013). The Journal of Chemical Physics, 138.
[4](1, 2) Auer, S., & Frenkel, D. (2005). Advances in Polymer Science, 173.

Installation

For python 3

pyscal can be installed directly using Conda from the conda-forge channel by the following statement-

conda install -c conda-forge pyscal

For python 2

Python 2 version of pyscal can be installed using-

conda install -c pyscal pyscal

From repository

pyscal can be built from the repository by-

git clone https://github.com/srmnitc/pyscal.git
cd pyscal
python setup.py install --user

complete documentation with examples available here.

Citing the work

If you use pyscal in your work, the citation of the following article will be greatly appreciated:

Sarath Menon, Grisell Díaz Leines and Jutta Rogal (2019). pyscal: A python module for structural analysis of atomic environments. Journal of Open Source Software, 4(43), 1824, https://doi.org/10.21105/joss.01824

Citation in bib format can be downloaded here.

You can’t perform that action at this time.