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: 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 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.



18 Feb 2020

This patch release is a candidate for becoming a stable release. if no further changes are needed, it will become the next stable release.

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

GPU kernel optimizations for pair style lj/cut/tip4p/long/gpu (Vsevolod Nikolskiy, HSE Univ. Moscow) PR #1876

Update of USER-PLUMED to support Plumed 2.6 (Axel Kohlmeyer, Temple U) PR #1879

Further refactoring of the manual by converting external math expressions to be embedded math in .rst files (Axel Kohlmeyer and Richard Berger, Temple U) PR #1869

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


4 Feb 2020

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

Improved version of the FIRE minimizer option with better convergence and more options to adapt its behavior (Julien Guénolé, RWTH Aachen and Erik Bitzek, FAU Erlangen-Nuernberg) PR #1052

Update Colvars library to version 2020-01-27 (Giacomo Fiorin and multiple Contributors to the Colvars project) PR #1859

New SNAP potential parameter files for single element systems containing Cu, Ge, Li, Mo, Ni, or Si (Yunxing Zuo, UCSD) PR #1866

Support threaded FFTs with MKL and refactoring of FFT support in KOKKOS (Axel Kohlmeyer, Temple U and Stan Moore, SNL) PR #1858

Add support to run NWChem along with LAMMPS in client/server mode (Jeff Boschen, Iowa State) PR #1703

Remove all legacy documentation sources. From now on writing reStructuredText is the only option. The txt2rst tool remains available, though. (Axel Kohlmeyer, Temple U), PR #1855

Cleanup of the ReStructuredText source for the manual, convert more .tex file to embedded math, and corrections for issues due to inconsistencies in the conversion from the original txt2html markup or due to undetected errors in the original txt2html sources. (Axel Kohlmeyer, Temple U), PR #1861, PR #1864, PR #1867

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


24 Jan 2020

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

New pair style mesocnt for mesoscopic modeling of (carbon) nanotubes (Philipp Kloza, U Cambridge), PR #1841

New fix npt/cauchy for improved handling of variable cells with large deformation (Ronald Miller, Carlton U, Fabio Pavia, and Subrahmanyam Pattamatta, UMN) PR #1096

New fix propel/self for self-propelling particles (Stefan Paquay, Brandeis U) PR #1847

New fix wall/reflect/stochastic for multiple variants of stochastic reflecting walls (Quy-Dong To, Université Paris Est Marne la Vallée), PR #1691 , PR #1838

Added support for threaded FFTW3 in all versions of pppm and support for using cuFFT or KISSFFT on the GPU with KOKKOS when CUDA is enabled (Stan Moore (SNL), Sam Mish (U.C. Davis)), PR #1520

New orient option to fix deposit (Tongtong Shen), PR #1685

New quit option to message command for client/server coupling with the MESSAGE package (Steve Plimption, SNL), PR #1835

New examples for using rerun and read_dump (Steve Plimpton, SNL) PR #1829

New options ratio and subset for create_atoms plus type/ratio and type/subset for set to populate an exact ratio or exact number of lattice points of atoms when creating atoms or change the atom type with set. This also includes a significant performance improvement when creating a very large number of atoms with create_atoms (Jake Gissinger, UC Boulder and Steve Plimpton, SNL), PR #603

Add support for read_dump and rerun to USER-ADIOS package (Norbert Podhorszki, ORNL) PR #1820

Updated ILP potential files and new files for bulk systems, improve energy conservation of ILP pair styles with dangling bonds (Wengen Ouyang, Tel Aviv U) PR #1843

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


9 Jan 2020

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

Highlights include:

Expose LAMMPS neighbor lists to the library interface and to the Python wrapper (Richard Berger, Temple U) PR #1674

Addition of oxRNA2 model for RNA to the USER-CGDNA package (Oliver Henrich, Strathclyde U) PR #1772 , PR #1804 , PR #1812

New compute snap command to support training SNAP package potentials (Aidan Thompson, SNL) PR #1779 , PR #1796

New pair style lj/cut/tip4p/long/gpu for the GPU package (Vsevolod Nikolskiy, Vladimir Stegailov, Higher School of Economics, Moscow) PR #1776

Build the documentation directly from .rst files. Various updates to the process and integration of formula as direct rendered graphics via MathJAX (Richard Berger, Temple U) PR #1786

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