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 as-yet unresolved bugs.

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 3 choices:

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

Past years of features/fixes are here: 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 2010. LAMMPS is updated continuously. Every time we fix a bug or add a feature, we release it immediately, as listed below. Each dated copy of LAMMPS contains all the features and bug-fixes up to and including that version date. The version date is printed to the screen and logfile every time you run LAMMPS. It is on the first page of the HTML version of the manual. 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 recently released "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 patches listed below.

If you don't want to track the bleeding edge of LAMMPS development, you can always download a tarball of the most recent stable version on the download page. 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 https://github.com/lammps/lammps.git 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 https://github.com/lammps/lammps.git/tags/stable_4Nov2016 mylammps 

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



19 Sep 2019

Details on what is changed by this patch are here and details for all releases are here.

Highlights include:

New pair style cosine/squared, (Eugen Rozic, UCL), PR #1626

New pair style local/density for a generalized density dependent potential, (Tanmoy Sanyal, UCSB), PR #1666

Support for minimization with KOKKOS (min_style cg with quadratic line search only), (Stan Moore, SNL) PR #1650

New compute hma for faster or higher precision computation of certain thermodynamic properties of solids, (A Schultz, A Purohit, D Kofke, U Buffalo), PR #1503

This patch file can be applied to the 7 Aug 2019 version. This is the list of changed files.


7 Aug 2019

This is a stable release.

Details on what is changed by this patch (compared to the previous stable release) are here and details for all releases are here.

This includes small changes to the previous patch to create a new stable release.

This patch file can be applied to the 2 Aug 2019 version. This is the list of changed files.


2 Aug 2019

Details on what is changed by this patch are here and details for all releases are here.

Highlights include:

Implement native LAMMPS support for KIM simulator models and multiple improvements in the KIM package. Update to KIM API 2.1.x, Ryan Elliot, Ellad Tadmor (UMN) Axel Kohlmeyer (Temple U), PR #1440

New keyword hybrid/pair for compute pressure, Alain Dequidt Julien Devemy (U Clermond-Ferrand) PR #1511

New compute gyration/shape to compute eigenvalues and shape parameters from gyration radius tensor. Evangelos Voyiatzis (Royal DSM), PR #1583

New compute momentum command, Rupert Nash (EPCC), PR #1529

This patch file can be applied to the 19 Jul 2019 version. This is the list of changed files.


19 Jul 2019

Details on what is changed by this patch are here and details for all releases are here.

Highlights include:

Optimized version of SNAP potential in KOKKOS package, Rahul Gayatri (NERSC), Stan Moore (SNL), Aidan Thompson (SNL), Sarah Anderson (Cray), Evan Weinberg (NVIDIA): PR #1571, PR #1540

Refactor handling of nested input file handling and single command execution; this allows to use the include keyword inside of if/then/else and results in the correct order of commands, when LAMMPS commands request reading of include files; limit level of include file nesting, Axel Kohlmeyer (Temple U): PR #1537

Updates for USER-CGDNA package, Oliver Henrich (U Strathclyde): PR #1573

This patch file can be applied to the 18 Jun 2019 version. This is the list of changed files.


18 Jun 2019

Details on what is changed by this patch are here and details for all releases are here.

Highlights include:

Added logfreq3() function for another variant of generating logarithmic spaced output, PR #1476 (Vishnu V. Krishnan, Tata Institute of Fundamental Research)

Added support for building neighbor lists on the GPU with hybrid pair styles containing some '/gpu' styles, PR #1430 (Trung Nguyen, Northwestern U)

This patch file can be applied to the 5 Jun 2019 version. This is the list of changed files.


5 Jun 2019

This is a stable release.

Details on what is changed by this patch (compared to the previous stable release) are here and details for all releases are here.

This includes small changes to the previous patch to create a new stable release.

This patch file can be applied to the 31 May 2019 version. This is the list of changed files.


31 May 2019

Details on what is changed by this patch are here and details for all releases are here.

Highlights include:

More meaningful error messages when a style is not found. Now LAMMPS will report, which package an unrecognized style belongs to, and will also notify if a package has been installed, but the style is missing because it depends on another package, which is not installed. PR #1419 (Axel Kohlmeyer)

Add option to compute coord/atom to restrict the coordination number by allowing only members of a specific group to be counted. PR #1464 (Axel Kohlmeyer, Temple U)

This patch file can be applied to the 15 May 2019 version. This is the list of changed files.


15 May 2019

Details on what is changed by this patch are here and details for all releases are here.

Highlights include:

New pair style drip for dihedral-angle-corrected registry-dependent interlayer potential (DRIP): PR #1453 (Mingjian Wen, U Minnesota)

New pair style e3b for adding option to model the E3B water potential: PR #1428 (Steven E. Strong, U Chicago)

Bugfix/refactoring of REBO pair style to correctly implement what is advertised in the documentation for REBO (as opposed to the AIREBO potential). Added consistency check on potential files for AIREBO, REBO, AIREBO-M: PR #986, (Cyril Falvo Université Paris Sud) PR #1452 (Axel Kohlmeyer, Temple U)

Add option to use variable computed time steps for fix print: PR #1449 (Axel Kohlmeyer, Temple U)

This patch file can be applied to the 30 Apr 2019 version. This is the list of changed files.


30 Apr 2019

Details on what is changed by this patch are here and details for all releases are here.

Highlights include:

New fix style electron/stopping for modeling energy loss through interactions high speed atoms with electrons: PR #1399, K. Avchaciov (Tartu U and U Helsinki), Risto Toijala (University of Helsinki), and others

GNEB implementation via a neb/spin command, fix setforce/spin, and various updates and fixes for SPIN package: PR #1421 and PR #1424 (Julien Tranchida, SNL)

New examples, doc updates, and bugfixes for the GRANULAR package: PR #1420 (Dan S. Bolintineanu, SNL)

Bugfix for neighborlist access in selected cases in pair style kim: PR #1413 via PR #1413, Ryan Elliot (UMN)

Support for Plumed 2.5.1 and some bugfixes in Install.py script: PR #1409

Address some 64-bit issues: PR #1405 and PR #1406

This patch file can be applied to the 29 Mar 2019 version. This is the list of changed files.


29 Mar 2019

Details on what is changed by this patch are here and details for all releases are here.

Highlights include:

New generalized granular pair style granular, with more flexible parameter settings: PR #1342 (Dan Bolintineanu, Ishan Srivastava, Jeremy Lechman, SNL)

Use rendezvous protocol instead of ring communication for setup of special neighbors, fix shake clusters, and small rigid bodies. Works much faster for large systems on large processor counts: PR #1384 (Steve Plimption, SNL, Chris Knight, ANL)

Upgrade and bug fix to hyperdynamics commands: PR #1379 (Steve Plimpton, SNL)

New kim_query command and updates to KIM package to conform to version 2.0.2 of the KIM API library: PR #1358, PR #1371, PR #1392 (Axel Kohlmeyer, Temple U, Ryan Elliot, UMN)

Bugfixes and extensions (spin minimizer) to the SPIN package: PR #1355, PR #1372, PR #1380 (Julien Tranchida, SNL)

This patch file can be applied to the 28 Feb 2019 version. This is the list of changed files.


28 Feb 2019

Details on what is changed by this patch are here and details for all releases are here.

Highlights include:

Ryan Elliot (UMinn). Update of the KIM package to use KIM-API v2.0. See PR #1297 and PR #1351.

Norbert Podhorszki (ORNL). New USER-ADIOS package to provide Exascale compatible I/O support for dump files through the ADIOS v2.x library. See PR #1317.

Charles Sievers (UC Davis). New dynamical_matrix command added to the USER-PHONON package, that computes the dynamical matrix from finite differences. See PR #1314.

This patch file can be applied to the 8 Feb 2019 version. This is the list of changed files.


8 Feb 2019

Details on what is changed by this patch are here and details for all releases are here.

The main purpose of this patch was to remove some altered code which introduced a bug in create_atoms when used with the region option and a rotated lattice. We'll add it back when the bug is fixed.

This patch file can be applied to the 1 Feb 2019 version. This is the list of changed files.


1 Feb 2019

Details on what is changed by this patch are here and details for all releases are here.

Highlights include:

Steven Vandenbrande (Ghent University). New USER-YAFF package for force fields for QuickFF using for modeling MOFs; See PR #1297 and PR #1301.

Andew Jewett, Axel Kohlmeyer (Temple U). Removed moltemplate tool from LAMMPS distro. Up-to-date versions are more readily available from moltemplate.org; See PR #1270.

Evangelos Voyatsis, Agilio Padua, Axel Kohlmeyer (Temple U). Added soft versions of CLASS2 pair style to the USER-FEP package; See PR #1302.

Lars Pastewka (University of Freiburg). Added support for writing data of computes and fixes with arbitrary number of columns to NetCDF format dump files; See PR #1303.

This patch file can be applied to the 4 Jan 2019 version. This is the list of changed files.


4 Jan 2019

Details on what is changed by this patch are here and details for all releases are here.

Highlights include:

Ability to read dump files in parallel via the read_dump and rerun commands. See PR #1179.

Zbigniew Kozioł (National Center for Nuclear Research, Otwock-Świerk, Poland). New pair_style lebedeva/z command for an interlayer potential. See PR #1230.

Old versions of the MEAM and ReaxFF pair styles have been removed. See PR #1254.

Jake Gissinger (U Colorado). Added option to delete atoms with fix bond/react. See PR #1239.

Aidan Thompson (Sandia). Issues with incorrect volume fluctuations for some modes of Nose-Hoover barostat fixes have been resolved. They were due to inconsistencies with how the barostat was thermostatted depending on the number of degrees of freedom for the barostat. See PR #1259.

This patch file can be applied to the 12 Dec 2018 version. This is the list of changed files.