LAMMPS Patch Release Overview

What is LAMMPS primarily used for?

LAMMPS has potentials for solid-state materials (metals, semiconductors) and soft matter (biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be used to model atoms or, more generically, as a parallel particle simulator at the atomic, meso, or continuum scale.

LAMMPS runs on single processors or in parallel using message-passing techniques and a spatial-decomposition of the simulation domain. Many of its models have versions that provide accelerated performance on CPUs, GPUs, and Intel Xeon Phis. The code is designed to be easy to modify or extend with new functionality.

Changes since the patch release 15 June 2020:

  • New MLIAP package providing a general framework for adding machine-learning based interatomic potentials to LAMMPS with SNAP as reference implementation (Aidan Thompson, SNL) PR #2174
  • Add option for chemical specificity to SNAP potentials (Aidan Thompson, SNL and Charles Sievers, UC Davis) PR #1971, PR #2168
  • GPU optimization for SNAP support in KOKKOS (Evan Weinberg, NVIDIA) PR #2172
  • Bugfix for computing virial with GPU accelerated TIP4P when energy is not tallied (Vsevolod Nikolskiy, HSE University Moscow) PR #2187
  • Update build system for the GPU package to be compatible with AMD ROCm 3.5 (Vsevolod Nikolskiy, HSE University Moscow) PR #2167
  • Flip the sign for spherical harmonic for odd values of “m” with compute orient/order to be consistent with standard conventions . Output remains unchanged. (Aidan Thompson, SNL) PR #2171
  • Updates to the dynamical matrix examples and scripts (Charles Sievers, UC Davis) PR #2179
  • Implement a feature to transparently convert potential parameters for selected manybody and tabulated potentials from metal to real units or vice versa, if the potential file has a UNITS: tag. This extends the functionality of PR #2159 (Axel Kohlmeyer, Temple U) PR #2183, PR #2198
  • Updates for existing tests and new tests in the unittest tree, bugfixes for issues detected by tests (Axel Kohlmeyer, Temple U) PR #2182
  • Simplify creation of fixes and computes by adding an overloaded convenience function for Modify::add_fix() and Modify::add_compute() that allows creating a fix from a single string instead of having to provide a list of strings and the length of that list. (Axel Kohlmeyer, Temple U) PR #2191, PR #2199, support for Group::assign (Jake Gissinger, CU Boulder) PR #2195
  • Continuing refactoring of output formatting and string handling using fmtlib, std::string and convenience functions in the utils namespace (Axel Kohlmeyer, Temple U) PR #2190, PR #2201
  • Various small updates and corrections (various authors) PR #2162, PR #2163, PR #2169, PR #2180, PR #2181, PR #2097, PR #2188, PR #2189, PR #2192, PR #2197

Backward compatibility notices:

  • the rotate option of create_atoms was incorrectly using radians instead of degrees (as stated in the documentation) due to a missing conversion. This patch implements the conversion from degrees to radians and thus all previous inputs using this option will produce different results.

This release has 2 assets:

  • Source code (zip)
  • Source code (tar.gz)

Visit the release page to download them.

New LAMMPS Patch released from Sandia


LAMMPS (Large-scale Atomic/Molecular Massiveley Parallel Simulator) is an open-source molecular dynamics simulator written in C++ from Sandia National Laboratories, and is designed for parallel machines. LAMMPS models an ensemble of particles in a liquid, solid or gaseous state. It can model atomic polymeric, biological, metallic, or mesoscale systems using a variety of force fields and boundary conditions and is easily extensible.