Giter Site home page Giter Site logo

data_extraction_lammps's Introduction

LAMMPS Data Extraction Tool

This tool gathers diffusivity, rdf, uncertainties, and settling data for CCT curves in LAMMPS. A specific file format is needed along with directory structure for this tool to work. For a detailed description of this tool, visit the following link:

https://www.overleaf.com/read/wpbkywczbcvv

Getting Started

To attain all analysis scripts run

git clone [email protected]:leschultz/data_extraction_LAMMPS.git

Prerequisites

Python 3.6.6 along with standard packages is required. This includes PyQt5 (pip install PyQt5). Anaconda is NOT recomended. The following packages are required:

numpy
scipy
pandas
PyQt5
matplotlib

Additionally, Ovito 3.0.0 is used for self diffusion and RDF calcualtions. Make sure to install Ovito and modify PYTHO NPATH to point to the following directory:

ovito/lib/ovito/plugins/python

Any data analysed must have the following format (note that trajectories are unwrapped):

./testdata
└── runnamefolder
    ├── dep.in
    ├── test.out
    └── untraj.lammpstrj

Installing

Clone the repository. For instance,

git clone [email protected]:leschultz/data_extraction_LAMMPS.git

Modify PYTHONPATH to point to the directory cloned. It is preferable to modify environment variables in the .bashrc or .zshrc files in the home directory. For instance,

export PYTHONPATH=/home/myname/tools/data_extraction_LAMMPS:$PYTHONPATH

Running

There are three main scripts for this tool that can be run independelty or together. Within the tool, there is a samplefile directory that containts a sample run. The commands in the following sections should work to create a sample export if they are run in the tool directory.

Ovito Data Collection

This tool calculates the mean squared displacement (MSD), diffusion, and radial distribution function (RDF), for a trajectory file exported by LAMMPS. Additionally, error propagation of data is done using various methods on multiple origins data on diffusion from MSD. Methods to determine when data is settled for analysis is also implemented. The following line can be used to gather self diffusion and RDF data from Ovito:

The following line can be used to run the tool:

python3 -m runtypes.runsteps -i ./samplefiles/sampledata -o ./samplefiles/sampleexport -p ./samplefiles/templateinputfile.txt

The option -i points to the folder where data was collected from LAMMPS. Option -o points to the folder where data is to be exported. Option -p points to a file that has certain parameters for analysis. A template is provided under samplefiles.

Coding Style

Python scripts follow PEP 8 guidelines. A usefull tool to use to check a coding style is pycodestyle.

pycodestyle script.py

Authors

Acknowledgments

  • The Computational Materials Group (CMG) at the University of Wisconsin - Madison
  • Dr. Dane Morgan for computational material science guidence
  • Dr. Izabela Szlufarska for computational material science guidence

data_extraction_lammps's People

Contributors

leschultz avatar

Stargazers

Janex avatar  avatar  avatar  avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.