Skip to main content

A SEAMM plug-in for LAMMPS, a forcefield-based molecular dynamics code.

Project description

GitHub pull requests Build Status Code Coverage Code Quality Documentation Status PyPi VERSION

SEAMM LAMMPS Plug-in

A SEAMM plug-in for LAMMPS, a forcefield-based molecular dynamics code.

This plug-in provides a graphical user interface (GUI) for setting up complex simulations using LAMMPS. It uses a sub-flowchart that provides steps such as constant pressure and temperature (NPT) dynamics which give access to the functionality in LAMMPS in a more consistent and understandable way than the inscrutable fixes that LAMMPS uses.

These sub-flowcharts mirror the main flowchart in form and function and can use the same variables such as temperature and pressure that are accessible anywhere in the flowcharts. This allows “programming” a LAMMPS workflow in the same familiar way that SEAMM uses to represent the overall workflow.

Features

  • Use of any forcefield supported by the forcefield plug-in:

    • PCFF

    • OpenKIM: EAM, MEAM, LJ, ReaxFF

  • Molecular statics: minimization

  • Molecular dynamics: NVE, NVT, and NPT with any of the approaches supported in LAMMPS

  • Automatic statistical analysis of averages from MD

    • Detection of equilibration

    • Mean and standard error of the mean for the sampling after equilibration

    • Autocorrelation function and time

    • Statistical inefficiency

    • Plotting of results in the Dashboard

  • Using property values to drive MD. Rather than running MD for a length of time, automatically run long enough to determine a set of properties within given error bars.

Acknowledgements

This package was created with Cookiecutter and the molssi-seamm/cookiecutter-seamm-plugin project template.

Developed by the Molecular Sciences Software Institute (MolSSI), which receives funding from the National Science Foundation under award ACI-1547580

History

2024.7.21.1 – Minor internal change for GUI
  • Switched to new functionality in the SEAMM widgets to simplify the layout of the trajectories panel.

2024.7.21 – Improved handling of trajectories and results
  • Improved control over the trajectories of positions, velocities, etc. to allow the user to give the number of points in the trajectory rather than the time interval of samples

  • Added volume of the cell to properties, and the cell lengths, density, and volume for NVE and NVT, where those parameters don’t vary but are nonetheless useful in subsequent analysis.

2024.6.28.1 – Internal release to fix issue making Docker image.

2024.6.28 – Added energy and forces to properties
  • Added ability to get the energy and forces from single point calculations to supprt e.g. energy scans.

  • Fixed issue with assigning atoms types if they have not been assigned but are None

  • Updated for change in the order of units in the new version of pint

  • Improved analsys based on the output file.

2024.3.22 – Corrected issue with e.g. heat flux calculations
  • Corrected an issue running LAMMPS via Python, introduced in the new scheme for executing. It ignored parallelism.

2024.3.21 – Switched to new installation scheme
  • Fully support ~/SEAMM/lammps.ini

  • Updated to new installer

  • Support for Conda and Docker installation.

2024.1.18 – Restructured to support running in containers.

2023.11.7 – Bugfix: properties that are constant
  • A property, such as the total energy, can be a constant over an MD run due to precision of the trajectory. This caused errors because the autocorrelation function is not defined. These cases are now detected and the ACF not calculated for them.

2023.11.6 – Bugfix in thermal conductivity
  • Due to change in input file name.

2023.9.6 – Corrected issues with final coordinates; added velocities
  • There was a problem with getting the final coordinates from a dump file.

  • Added saving and reusing velocities so now a second LAMMPS step will by default use the velocities from the previous step, which is what you would expect.

2023.8.31 – Bugfix: not reading structure correctly after dynamics

2023.8.27 – Added support for tabulated angle potentials.
  • Support for the CL&P-OPLSAA potential for octahedral PF6-

2023.8.21 – Bugfix: x-axes length on graphics incorrect
  • The size of the x-axes of the trajectory graphs were wrong, often much too large, compressing the actual data near the beginning of the graph.

  • Fixed an issue with systems with no non-bonds.

2023.6.17 – Bugfix: more centroid/stress/atom issues
  • Avoided using centroid/stress/atom for heat flux in standard NVE, NVT, … dynamics with Class 2 forcefield.

  • Added option to not use centroid/stress/atom for any forcefield.

2023.6.16 – Heat flux with PCFF
  • centroid/stress/atom does not work with Class 2 forcefields, so don’t use for PCFF.

2023.5.29 – Self diffusion and other improvements
  • Added trajectory panel to support diffusion, viscosity and simple thermal conductivity.

  • Added support for separate GPU versions of LAMMPS.

  • Added support for command-line arguments to LAMMPS, mainly used for accelerators.

  • Added support for using modules.

2023.4.24 – Support for thermal conductivity
  • Internal changes to support thermal conductivity with its embedded flowchart.

  • Added the heat flux substep.

  • Now delete output and reference files when rerunning, so the output is clean.

  • Internal changes to support running LAMMPS from a Python driver.

  • Corrected units of properties returned from LAMMPS when e.g. metal units used.

  • Added support for Buckingham potentials

  • Fixed issues with and cleaned up the use of hybrid types for bonds, angles, ….

  • Fixed issues with the alignment of some of the widgets in the GUI.

2023.4.9 – Hid the warning from pymbar
  • Importing pymbar timeseries writes a warning to the terminal about its proper usage. SEAMM already handles the warned case, so the message is simply confusing to users and hence this release hides it.

2023.4.6 – Better forcefield handling.
  • Added correct molecule numbers for valence forcefields.

  • Correctly handle ReaxFF from OpenKim

  • Updated for some minor changes in OpenKim

2023.2.6 – Added handling of OPLS-AA forcefield
  • Added handling of the OPLS-AA forcefield

  • Moved documentation to new MolSSI theme and diátaxis layout

  • Cleaned up internale dependencies and workflows for GitHub

2022.10.31 – Bugfix: properties with commas

Properties with commas in their name in data/properties.csv need to have quotes to protect the property name!

2022.10.27 – Added properties
  • Added properties to be saved in the database.

  • Updated calls to pymbar because the names of methods were changed.

  • Add the missing references for pymbar

2021.2.11 (11 February 2021)
  • Updated the README file to give a better description.

  • Updated the short description in setup.py to work with the new installer.

  • Added keywords for better searchability.

2021.2.4.1 (4 February 2021)

Internal patch to fix CI; no changes for users.

2021.2.4 (4 February 2021)

Updated for compatibility with the new system classes in MolSystem 2021.2.2 release.

2020.12.4 (4 December 2020)

Internal: switching CI from TravisCI to GitHub Actions, and in the process moving documentation from ReadTheDocs to GitHub Pages where it is consolidated with the main SEAMM documentation.

2020.11.2 (2 November 2020)

Updated to be compatible with the new command-line argument handling.

2020.10.13 (13 October 2020)

Added capability to run MD until a set of user-selected properties are converged to requested accuracy.

2020.9.25 (25 September 2020)

Updated to be compatible with the new system classes in MolSystem.

2020.8.2.1 (2 August 2020)

Bugfix: Fixed problem with nonbonds and charges just introduced.

2020.8.2 (2 August 2020)

Bugfix: Corrected the time units when using metal units with e.g. EAM potentials.

2020.8.1 (1 August 2020)

Added support for OpenKIM potentials.

0.9.4 (29 May 2020)

Cleaned up the output for the statistical analysis.

0.9.3 (29 May 2020)

Fixed issue with settings for bins in LAMMPS for small nonperiodic systems with just a few atoms.

0.9.2 (25 May 2020)

Switched to using PYMBAR for detecting covergence to equilibrium for MD runs. This is a more robust solution than the previous approach.

0.9.1 (24 May 2020)

Support for rigid water models, such as TIP-3P.

0.9 (15 April 2020)

Support for plots in the dashboard of properties from MD. Added option to produce local HTML for the above plots.

0.8.2 (2020-01-25)
  • No significant changes in functionality.

  • Incorporating changes to the SEAMM infrastructure, which simplify the code for plug-ins.

  • Updating the Travis CI to handle incompatible changes in Travis, and to use Conda environments in all steps.

0.7.1 (18 December 2019)

Fixed problem with assigning charges to the system.

0.7.0 (17 December 2019)

General clean-up of code and output.

0.6 (8 September 2019)
  • Switched to ConfigArgParse for handling command-line arguments.

  • Added the locations of LAMMPS executables to a configuration file for easier access.

0.5.2 (31 August 2019)

Defined the correct requirements for installation.

0.5.1 (30 August 2019)

Bugfix: corrected the name of the LAMMPS executable.

0.5.0 (30 August 2019)

Added ability to use serial or parallel versions of LAMMPS based on an environment variable.

0.3.1 (27 August 2019)

Added initial, fairly reasonable output.

0.2.1 (29 July 2019)

First release on PyPI.

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

lammps_step-2024.7.21.1.tar.gz (4.1 MB view details)

Uploaded Source

Built Distribution

lammps_step-2024.7.21.1-py2.py3-none-any.whl (103.8 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file lammps_step-2024.7.21.1.tar.gz.

File metadata

  • Download URL: lammps_step-2024.7.21.1.tar.gz
  • Upload date:
  • Size: 4.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for lammps_step-2024.7.21.1.tar.gz
Algorithm Hash digest
SHA256 f59f3ae54cefb1e584b2d0bb90bb1eeb72f44cecdd9ca2bc5d64376e815c3f0e
MD5 02ea7a1c90f49f6841c36676555c70e3
BLAKE2b-256 1119396c9cdc059a08f8e6a55bccacd492c8cd6fea8c17ef5f66485ccdef9514

See more details on using hashes here.

File details

Details for the file lammps_step-2024.7.21.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for lammps_step-2024.7.21.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 7c23d51dc872a8e731cd0c63b6722325000a44574c62e1b8d1ab9b8772f18601
MD5 0871bc073a5ef62f9b87e482375f70db
BLAKE2b-256 c08caf5c44a3cfdeef63cf1e77895b0a63e3a2478c5aafc5f0df98f4900d0739

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page