LAMMPS website

Latest Features and Bug Fixes in LAMMPS

This page is a continuous listing of new features and bug fixes for the LAMMPS molecular dynamics package. It also lists periodic "stable" versions which have undergone more testing.

See the unfixed bug page for info on how to report bugs or issues you find wtih LAMMPS.

In some cases, new features change the syntax or operation of an existing input script command, which can cause LAMMPS output to change, or even "break" an earlier working script. These cases are highlighted below with a "BACKWARD COMPATIBILITY" note.

To stay up-to-date with the current LAMMPS, you have two choices:

This page contains a year's worth of new features and bug fixes.

Past years of features/fixes are here: 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004

Periodic summaries of major new features added to LAMMPS are on the history page.

What version of LAMMPS do you have?

A LAMMPS "version" is the date when it was released, such as 1 Oct 2020. LAMMPS is updated continuously. Each time we fix a bug or add a feature, we make it immediately available in the LAMMPS git repository hosted on GitHub in the "develop" branch. Every 4-6 weeks we publish a feature release, as listed below. Each dated feature release of LAMMPS contains all the new features and bug-fixes in the develop branch up to and including the version date. The version date of the code you are running is printed to the screen and logfile every time you run LAMMPS. It is also on the first page of the HTML version or PDF version of the manual you are reading. It is also in the file src/version.h and in the LAMMPS directory name created when you unpack a tarball.

Stable versions

These are past "stable" versions of LAMMPS, which have successfully passed a suite of build and run tests. This is more testing than is done for the incremental development feature releases listed below.

If you don't want to track the bleeding edge of LAMMPS development, you can download a tarball of the most recent stable version on the download page or from GitHub. A summary of what is in each stable release is provided on the LAMMPS GitHub site.

Earlier stable versions are also available as tarballs on the LAMMPS web site, at this link, using the appropriate date from the list above.

You can use Git to check out a specific stable version in one of two ways, using the tag listed above:

(1) If you do not have an existing checkout:

git clone -b stable_4Nov2016 mylammps 

(2) If you already have an existing checkout:

git fetch origin
git checkout -b release-4Nov16 stable_4Nov2016 

which will create a branch with the name "release-4Nov16", with all the files for that specific stable release.

Likewise, you can use SVN to check out a specific stable version, using the tag listed above:

svn checkout mylammps 

Additional info on how to track other branches (stable, maintenance, release, develop) of the GitHub LAMMPS repository via Git or SVN are linked to on the download page.

27 Jun 2024

Details on what changed in this feature release are here and details for all past releases are here.

Only new features or notable changes are highlighted here:

Add generalized algorithm for the replicate command to correctly replicate molecules which span a periodic simulation box (Jacob Gissinger, Stevens Institute of Technology) PR #3118

Add overlap keyword to the create_atoms command which searches for overlaps on an atom-by-atom basis when inserting molecules (Jacob Gissinger, Stevens Institute of Technology) PR #3810

Add coefficient of restitution based damping in granular models (Dhairya Vyas, Northwestern University) PR #4068

Make compute stress/mop and stress/mop/profile compatible with 2D systems (Evangelos Voyiatzis, Novamechanics Ltd) PR #4159

Add special variable functions sort() and rsort() for sorting vectors by value (Axel Kohlmeyer, Temple U) PR #4171

Add support for extracting a few more properties and access to the Atom::map() function via the library interface (Axel Kohlmeyer, Temple U) PR #4174

Add KOKKOS package support for bond_style hybrid (Stan Moore, SNL) PR #4167

Updates to ML-POD package and port of pair_style pod to KOKKOS (Ngoc Cuong Nguyen, MIT) PR #4168

New option for the CG-DNA package to read potential parameters from a potential file and support for "real" units in addition to "lj" units (Kierran Falloon and Oliver Henrich, University of Strathclyde) PR #4169

New pair style dpd/coul/slater/long, including a GPU package version (Eddy Barraud, IFPEN/Sorbonne) PR #4188

New ML-UF3 package with pair style uf3 implementing the ultra-fast forcefield (uf3) machine learned interatomic potential. A KOKKOS version is included as well. Ajinkya C Hire (University of Florida), Hendrik KraƟ (University of Constance), Matthias Rupp (Luxembourg Institute of Science and Technology), Richard Hennig (University of Florida) PR #4110

New pair style hybrid/molecular which allows different pair styles (or pair_coeffs) for inter- and intra-molecular interactions (Axel Kohlmeyer, Temple U) PR #4191

Add KOKKOS package version of pair_style soft (Stan Moore, SNL) PR #4184

Add support for type labels to a whole lot of commands and styles (Jake Gissinger, Stevens Institute of Technology) PR #4145


When using fix qeq/reaxff and fix qeq/shielded, more thorough checks are applied so that QEq is not used on atoms in the fix group without parameters being provided. This primarily applies to simulations using ReaxFF as sub-style of pair style hybrid.

The i-PI distribution was removed from tools folder. It can be downloaded using pip instead

17 Apr 2024

Details on what changed in this feature release are here and details for all past releases are here.

Only new features or notable changes are highlighted here:

New rebomos pair style for MoS2 which was provided as external source for over a decade (multiple authors see PR) PR #4087

New fix wall/flow command which provides flow boundary conditions (Vladislav Galigerov, Higher School of Economics and Daniil Pavlov, The Moscow Institute of Physics and Technology) PR #4069

New fix deform/pressure command for expanded deformation controls specifically aimed at mesoscopic and discrete element models (Joel Clemmer, SNL and Kevin Hanley, U. Edinburgh and Jose Salomon, Imperial College) PR #4017

New angle and dihedral styles cosine/squared/restricted for use with the MARTINI force field (Evangelos Voyiatzis) PR #4113

New pair style pedone for the non-Coulomb part of the Pedone (PMMCS) potential (Axel Kohlmeyer, Temple U) PR #4129

Update bundled Kokkos library to version 4.3.00 (Stan Moore, SNL and the Kokkos developers) PR #4096, PR #4124

Add option to package command that selects building the atom map on the CPU instead of the GPU device. This can lead to significant speedups for runs of large molecular systems (billions of molecules) with a very large number of MPI ranks (> 1000) during initialization (up to 100x at 4096 ranks) and during the run (up to 2x with 4096 ranks) (Stan Moore, SNL) PR #4079

Add support for general triclinic simulation boxes and systems (Steve Plimpton) PR #3984

Add support for ACE descriptors to the ML-IAP package (James Goff, SNL) PR #4078

Add support for a conical shape to fix indent (Evangelos Voyiatzis, NovaMechanics Ltd) PR #3989


The zlo, zhi value of a box for a 2d system may no longer be exactly zero. zlo must be less than zero, zhi must be greater.

The dump style custom/cfg/yaml etc. keywords "temperature" and "heatflow" are no longer available directly, they must be accessed via compute property/atom now (like other atom style properties)

7 Feb 2024

Details on what changed in this feature release are here and details for all past releases are here.

Only new features or notable changes are highlighted here:

New compute pace command for evaluating ACE descriptors which functions similar to compute snap (James Goff, Drew Rohskopf, Aidan Thompson SNL) PR #3869

New "ternary()" function for variables (Steve Plimpton) PR #3987

New compute rattlers/atom to identify under-coordinated particles (rattlers) and a new fix nonaffine/displacement to measure the nonaffine displacement of particles (Joel Clemmer, SNL) PR #3858

New compute reaxff/atom command to get access to local bond information for ReaxFF (Richard Berger, LANL) PR #3938

Add feature to compute sna/atom to use a fixed number of neighbors, and a new compute slcsa/atom for supervised learning structural analysis, (Paul Lafourcade, CEA) PR #3996

Add ZBL core-repulsion to ML-PACE, automatic conversion of supported potential file formats (Yury Lysogorskiy, RUB) PR #3985

Several new pair styles for the GPU package including coul/long/slater/gpu (Trung Nguyen, U Chicago) PR #4009

Add KOKKOS package versions of fix temp/rescale and fix temp/berendsen (Stan Moore, SNL) PR #4012

Add KOKKOS package versions of pair style lj/charmmfsw/coul/long and dihedral style charmmfsw, (Mitch Murphy) PR #4030

Add support for heFFTe library to do FFTs (Miroslav Stoyanov, ORNL) PR #3963

Use C++ templating to reduce the number of NPair and NStencil classes and improve code re-use (Joel Clemmer, SNL) PR #3430

Add Born matrix support to more potentials & inclusion of angle and dihedral contribution to compuite stress/mop and stress/mop/profile (Evangelos Voyiatzis, NovaMechanics Ltd.) PR #3833

HowTo tutorial for using Moltemplate (Otello Roscioni, MaterialX Ltd), PR #4002

Add support for a "Dipoles" section to molecule files (Axel Kohlmeyer, Temple U) PR #4046


The "reax/c" alias to provide backward compatibility for "reaxff" commands and keywords has been (finally) removed. Now using "reaxff" is required.

The format of binary restart files has changed in an incompatible way for cases where bond style lepton or angle style lepton are used.