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 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, maintenance, release, develop) of the GitHub LAMMPS repository via Git or SVN are linked to on the download page.



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

BACKWARD COMPATIBILITY:

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

BACKWARD COMPATIBILITY:

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.


21 Nov 2023

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 composition/atom command to calculate local atom type compositions (Megan McCarthy, SNL) PR #3871

New fix press/langevin command for a langevin based barostat (Germain Clavier, TU Eindhoven) PR #3791

New pair style nb3b/screened which computes a screened angle interactions compared to nb3b/harmonic (Federica Lodesani, University of Modena) PR #3960

New snap/intel pair style implementing AVX512 vectorization for use with Intel compiler and x86 CPUs (Mike Brown, Intel) PR #3921

Add support for numerical integrators without normal mode transformation to fix pimd/langevin (mode pimd). (Yifan Li, Princeton University) PR #3970

New KOKKOS versions of fix efield, fix spring/self, and pair style yukawa/colloid (Trung Nguyen, U Chicago) PR #3909

Add option to do anti-aliasing for better image quality with dump image and dump movie (Axel Kohlmeyer, Temple U), PR #3889

Refactoring of handing of references to computes and fixes to consistently index global and per-atom properties. (Steve Plimpton) PR #3896

BACKWARD COMPATIBILITY:

The MSCG package and thus fix mscg has been removed

The MPIIO package has been removed. The corresponding dump styles are no longer available and .mpiio restarts cannot be read anymore

CMake version 3.16 or later is now required to build LAMMPS with CMake

A C++17 capable compiler is now required to compile the KOKKOS package

Using a triclinic simulation cell now requires atom IDs due to changes in the neighbor list build algorithms

The refactoring of variable access to compute and fix data has the following consequences:

(1) the compute voronoi/atom peratom option was dropped; it now always produces peratom data. The local option is now used to also generate local data

(2) an inputs option was added to compute reduce to operation on peratom (default) or local data. You must use it to operate on local data

(3) the rules for equal, vector, atom-style variables changed a bit for how they access output from computes and fixes. An equal-style variable can access any kind of data, using C_ID, instead of c_ID (similar for fixes) to access per-atom data instead of global data.

(4) vector and atom-style varaiables can only access global vector and per-atom data directly. They can use an equal-style variable to access other kinds of data indirectly.


2 Aug 2023

This is a stable release.

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


15 Jun 2023

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:

The LATTE package was removed as it is superseded by the MDI package which provides a more generic interface to couple to quantum codes (Steve Plimpton) PR #3716

Updates to fix mdi/qm and fix mdi/qmmm to be compatible with quantum codes that do not support periodic boundaries (Taylor Barnes, MolSSI) PR #3727

Update COLVARS package to version 2023-05-01 (Giacomo Fiorin, NIH and Colvars developers) PR #3783

Update bundled Kokkos library to version 3.7.2 (Stan Moore, SNL, and the Kokkos developers) PR #3806

Add support for exchange communication for fixes to KOKKOS, this can provide significant speedups for certain simulations using GPUs (Stan Moore, SNL, based on work by Denis Taniguchi, Newcastle University) PR #1394

Multiple performance optimization for KOKKOS package with GPUs (Stan Moore, SNL): (1) Add support for performing the spatial sorting of atoms on GPU devices, PR #3740 (2) Fuse some Kokkos kernels to reduce launch latency for small systems, PR #3758 (3) Compute atom map (including hash style) on GPU devices, PR #3769

New pair styles lj/cut/sphere, lj/expand/sphere, and lepton/sphere which use the individual particle diameter from atom style sphere as a potential property instead of a per-type pair_coeff setting (Axel Kohlmeyer, Temple U) PR #3714

New pair style aip/water/2dm for interfaces between water and 2d materials (Wengen Ouyang, Wuhan University), optimized versions by (Xiaohui Duan, Shandong University, and Ping Gao ,National Supercomputing Center in Wuxi) PR #3787

New compute count/type command to efficiently count number of atoms or bonds of given types (Steve Plimpton) PR #3761

New fix pimd/langevin for path-integral simulations using a Langevin thermostat (instead of a massive Nose-Hoover) (Yifan Li, Princeton) PR #3660

Add support for setting and outputting vector style variables with a python-list-like format (Steve Plimpton) PR #3767

Add support for fix adapt to pair style kim (global scale factor only) (Ilia Nikiforov, U of Minnesota) PR #3777

Add support for bond and angle style contributions to compute stress/mop and compute stress/mop/profile (Evangelos Voyiatzis, NovaMechanics Ltd) PR #3792

Add support for bond style forces to compute stress/cartesian (Lars Veldscholte, University of Twente) PR #3797

Multiple bugfixes and enhancements for the INTEL package (Mike Brown, Intel) PR #3812

Enhancements for PyLammps (Richard Berger, LANL) PR #3811

BACKWARD COMPATIBILITY:

The LATTE package and fix latte command are no longer available


28 Mar 2023

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:

Support more pair, bond, and angle styles with compute born/matrix (Evangelos Voyiatzis) PR #3650, PR #3655, PR #3668

Refactor of the GRANULAR package to make it more modular and features more easily reusable (Joel Clemmer and Dan Bolintineanu, SNL) PR #3512

New fix wall/lepton and wall/table for custom wall potentials (Axel Kohlmeyer, Temple U) PR #3657

New bond style harmonic/restrain to restrain bonds to their current length (Axel Kohlmeyer, Temple U) PR #3671

New fix alchemy and compute pressure/alchemy commands for multi-partition alchemical transformations (Axel Kohlmeyer, Temple U) PR #3662

New fix mdi/qmmm style and examples for coupling LAMMPS to quantum codes (PySCF, NWChem, LATTE) via MDI for QM/MM simulations (Steve Plimpton) PR #3628

GPU package performance improvements (Mike Brown, Intel) PR #3675

New pair style born/gauss which is used as example in new programmer's guide section on developing pair styles (Axel Kohlmeyer, Temple U), PR #3667

Refactor per-chunk compute styles to use a common base class and thus reduce replicated code, (Axel Kohlmeyer, Temple U), PR #3691


8 Feb 2023

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:

Port of the AMOEBA package code to the GPU package (Trung Nguyen, U Chicago) PR #3599

Port of pace/extrapolation pair style to KOKKOS (Yury Lysogorskiy (ICAMS, RUB) PR #3585, PR #3629

Port of pair styles lj/expand/coul/long and lj/cut/dipole/cut and atom style dipole to KOKKOS (Trung Nguyen, U Chicago) PR #3623

Port of the ML-IAP Python interface for PyTorch to KOKKOS (Matt Bettencourt, NVIDIA) PR #3577, PR #3606

New pair style meam/ms implementing the multi-state MEAM extension including port to KOKKOS (Drew Rohskopf and Aidan Thompson, SNL, and Mike Baskes, LANL, UNT) PR #3608

Remove mesont/tpm pair style and related styles as well as the corresponding Fortran library from MESONT package as they are superseded by the mesocnt pair and bond/angle styles. (Axel Kohlmeyer, Temple U) PR #3605

New LEPTON package that allows custom potential functions through evaluating expressions provided as string through the Lepton library written originally for OpenMM (Axel Kohlmeyer, Temple U) PR #3571, PR #3590

New angle_write and dihedral_write commands (Axel Kohlmeyer, Temple U) PR #3573

New compute efield/wolf/atom command that can approximate the electrostatic field at atom positions using Wolf summation (Axel Kohlmeyer, Temple U) PR #3551

Bugfix for DPD-BASIC pair styles and their accelerated versions when used with bonds and special_bonds factors that are not 0 or 1. (Axel Kohlmeyer, Temple U) PR #3575

Updates to the DIELECTRIC package that reverses the logic of how to store original and scaled charges and thus results in more consistent behavior of computes and fixes outside the DIELECTRIC package (Trung Nguyen, UChicago) PR #3576

Support for ABC-FIRE variant of FIRE minimizer (Sebastian Echeverri Restrepo, King's College London) PR #3591, PR #3594

Support for "equal" mode of NEB (Tom D Swinburne, CNRS), PR #3596