LAMMPS website
LAMMPS History
LAMMPS development began in the mid 1990s under a cooperative research
& development agreement (CRADA) between two DOE labs (Sandia and LLNL)
and 3 companies (Cray, Bristol Myers Squibb, and Dupont). The goal
was to develop a large-scale parallel classical MD code; the coding
effort was led by Steve Plimpton at Sandia.
After the CRADA ended, a final F77 version, LAMMPS 99, was released.
As development of LAMMPS continued at Sandia, its memory management
was converted to F90; a final F90 version was released as LAMMPS 2001.
The current LAMMPS is a rewrite in C++ and was first publicly released
as an open source code in 2004. It includes many new features beyond
those in LAMMPS 99 or 2001. It also includes features from older
parallel MD codes written at Sandia, namely ParaDyn, Warp, and
GranFlow (see below).
In late 2006 we began merging new capabilities into LAMMPS that were
developed by Aidan Thompson at Sandia for his MD code GRASP, which has
a parallel framework similar to LAMMPS. Most notably, these have
included many-body potentials - Stillinger-Weber, Tersoff, ReaxFF -
and the associated charge-equilibration routines needed for ReaxFF.
Since the 19 March 2020 version, LAMMPS requires a compiler that is
at least compatible with the C++-11 standard.
Major features added to LAMMPS since its initial Sept 2004 release
are listed here:
All versions of LAMMPS are available for download from the download
page. ParaDyn is available from Steve Plimpton's
download page.
ParaDyn is a parallel implementation of the popular serial DYNAMO
code. DYNAMO was developed by Stephen Foiles and Murray Daw to model
metals with their embedded atom method (EAM) metal potentials.
ParaDyn uses atom- and force-decomposition algorithms to run in
parallel. Warp is a spatial-decomposition MD code with EAM
potentials, with boundary conditions specific to shearing solids in
varying geometries. GranFlow is a granular materials code, written
with Leo Silbert and Gary Grest, that includes potentials and boundary
conditions specific to granular systems.
More recent releases
Info on code releases after 2016 were documented on GitHub. Click on
the links in the table above for details.
4th Quarter 2016
These are the most significant features added in the fourth quarter of
2016. Feature notes posted when the feature was released are listed on
this page. People who contributed to the features are
listed in parentheses:
3rd Quarter 2016
These are the most significant features added in the third quarter of
2016. Feature notes posted when the feature was released are listed on
this page. People who contributed to the features are
listed in parentheses:
- allow for multiple procs per replica with the neb command
- options for weighted load balancing via the balance and fix balance commands (Axel Kohlmeyer, Temple U & Iain Bethune, EPCC)
- fix cmap for CHARMM ff 5-body crossterms (Xiaohu Hu, ORNL; David Hyde-Volpe & Tigran Abramyan & Robert Latour, Clemson U; Chris Lorenz, Kings College, London)
- pair_style vashishta/table (Anders Hafreager, U Oslo)
- Kokkos support for kspace_style pppm (Stan Moore, Sandia)
- fix flow/gauss (Steve Strong & Joel Eaves, U Colorado)
- fix controller (Aidan Thompson, Sandia)
- wildcard syntax for specifying multiple vector values or multiple array columns for input to other commands (compute, fix, dump, thermo output)
- dihedral_style spherical (Andrew Jewett)
2nd Quarter 2016
These are the most significant features added in the second quarter of
2016. Feature notes posted when the feature was released are listed on
this page. People who contributed to the features are
listed in parentheses:
- Kokkos version of pair_style reax/c (Ray Shan, Materials Design & Stan Moore, Sandia))
- timeout option for timer command
- fix orient/bcc (Tegar Wicaksono, UBC)
- compute rigid/local
- fix spring/chunk
- fix ehex (Peter Wirnsberger, U Cambridge)
- reactive models for the USER-DPD package (James Larentzos, ARL; Timothy Mattox, Engility Corp; John Brennan, ARL; Christopher Stone, Computational Science & Engineering, LLC)
- USER-MANIFOLD package (Stefan Paquay, Eindhoven U of Tech, The Netherlands)
- restructuring of doc dir with new tools for building the doc pages (Richard Berger, Temple U)
- write_coeff (Axel Kohlmeyer, Temple U)
- pair morse/soft (Stefan Paquay, Eindhoven U of Tech, The Netherlands)
- compute dipole/chunk (Axel Kohlmeyer, Temple U)
1st Quarter 2016
These are the most significant features added in the first quarter of
2016. Feature notes posted when the feature was released are listed on
this page. People who contributed to the features are
listed in parentheses:
- pair morse/smooth/linear (Stefan Paquay, Eindhoven U of Tech, The Netherlands)
- pair_style airebo/morse
- compute bond, compute angle, compute dihedral, compute improper
- vector-style variables
- dump custom/vtk (Richard Berger, JKU & Daniel Queteschiner, DCS Computing)
- fix nvt/body, fix npt/body, fix nph/body, compute temp/body (Trung Nguyen, Northwestern U)
- USER-DPD package (James Larentzos, ARL; Timothy Mattox, Engility Corp; John Brennan, ARL)
- variety of new styles added to the USER-INTEL package (Mike Brown, Intel)
- dump image options for line, triangle, body particles
4th Quarter 2015
These are the most significant features added in the fourth quarter of
2015. Feature notes posted when the feature was released are listed on
this page. People who contributed to the features are
listed in parentheses:
- pair_style mgpt (Tomas Oppelstrup and John Moriarty, LLNL)
- pair_style smtbq (Nicolas Salles, Emile Maras, Olivier Politano, Robert Tetot, LAAS-CNRS)
- pair_style vashishta (Aidan Thompson, Sandia and Yongnan Xiong, HNU)
- fix ave/correlate/long (Jorge Ramirez, UPM) and Alexei Likhtman, U Reading)
- compute hexorder/atom (Aidan Thompson, Sandia)
- compute orientorder/atom (Aidan Thompson, Sandia)
- pair_style lj/mdf (Paolo Raiteri, Curtin University)
- pair_style lennard/mdf (Paolo Raiteri, Curtin University)
- pair_style buck/mdf (Paolo Raiteri, Curtin University)
- improper_style distance (Paolo Raiteri, Curtin University)
- compute chunk/atom bin sphere/cylinder options
- fix qeq/fire (Ray Shan, Sandia)
3rd Quarter 2015
These are the most significant features added in the third quarter of
2015. Feature notes posted when the feature was released are listed on
this page. People who contributed to the features are
listed in parentheses:
- new HTML format for doc pages with search option (Richard Berger, JKU)
- USER-DIFFRACTION package (Shawn Coleman, ARL)
- USER-QTB package (Yuan Shen, Stanford U)
- USER-DRUDE package (Alain Dequidt, U Blaise Pascal Clermont-Ferrand; Julien Devemy, CNRS; Agilio Padua, U Blaise Pascal Clermont-Ferrand)
- USER-SMD package (Georg Ganzenmuller, Ernst Mach Institute, Germany)
- COMPRESS package (Axel Kohlmeyer, Temple U)
- USER-TALLY package (Axel Kohlmeyer, Temple U)
- dump h5md (Pierre de Buyl, KU Leuven)
- read_data for multiple data files
- pair_style polymorphic (Xiaowang Zhou and Reese Jones, Sandia)
- timer (Axel Kohlmeyer, Temple U)
- run_style respa hybrid option (Sam Genheden, U of Southampton)
2nd Quarter 2015
These are the most significant features added in the second quarter of
2015. Feature notes posted when the feature was released are listed on
this page. People who contributed to the features are
listed in parentheses:
- new version of the KOKKOS package and library (Stan Moore, Ray Shan, Christian Trott, Sandia)
1st Quarter 2015
These are the most significant features added in the first quarter of
2015. Feature notes posted when the feature was released are listed on
this page. People who contributed to the features are
listed in parentheses:
4th Quarter 2014
These are the most significant features added in the fourth quarter of
2014. Feature notes posted when the feature was released are listed
on this page. People who contributed to the features are
listed in parentheses:
3rd Quarter 2014
These are the most significant features added in the third quarter of
2014. Feature notes posted when the feature was released are listed
on this page. People who contributed to the features are
listed in parentheses:
2nd Quarter 2014
These are the most significant features added in the second quarter of
2014. Feature notes posted when the feature was released are listed
on this page. People who contributed to the features are
listed in parentheses:
1st Quarter 2014
These are the most significant features added in the first quarter of
2014. Feature notes posted when the feature was released are listed
on this page. People who contributed to the features are
listed in parentheses:
4th Quarter 2013
These are the most significant features added in the fourth quarter of
2013. Feature notes posted when the feature was released are listed
on this page. People who contributed to the features are
listed in parentheses:
3rd Quarter 2013
These are the most significant features added in the third quarter of
2013. Feature notes posted when the feature was released are listed
on this page. People who contributed to the features are
listed in parentheses:
- pair nb3b/harmonic (Todd Zeitler, Sandia)
- allow poly-disperse granular systems to have widely varying neighbors/particle
- atomfile-style variables
- fix property/atom to add new user-defined attributes to atoms
- fix gld (Stephen Bond and Andrew Baczewski, Sandia)
- compute basal/atom (Christopher Barrett, Mississippi State)
- pair tersoff/mod (Vitaly Dozhdikov, JIHT of RAS)
- pair peri/ves (Rezwan Rahman, U Texas San Antonio)
- new version of USER-ATC package (Reese Jones, Jon Zimmerman, Jeremy Templeton, Sandia).
- new version of GPU package (Mike Brown and Trung Nguyen, ORNL) including a GPU version of the 3-body Stillinger-Weber pair style
- fix wall/lj1043 (Jonathan Lee, Sandia)
- pair nm/cut, pair nm/cut/coul/cut, pair nm/cut/coul/long (Julian Devemy, ICCF)
- compute ke/rigid
- compute erotate/rigid
- example dirs ASPHERE, KAPPA, VISCOSITY
- pair zbl (Aidan Thompson and Stephen Foiles, Sandia)
- xmgrace tool (Vikas Varshney)
2nd Quarter 2013
These are the most significant features added in the second quarter of
2013. Feature notes posted when the feature was released are listed
on this page. People who contributed to the features are
listed in parentheses:
- dump modify nfile and fileper for improved parallel I/O performance (Christopher Knight)
- write_data
- triclinic support for PPPM/MSM/Ewald long-range solvers (Stan Moore, Sandia)
- delete_atoms mol
- pair list (Axel Kohlmeyer, ICTP, Italy)
- pair lj/cut/dipole/long and lj/long/coul/long
- long-range dipole support in kspace_style ewald/disp (Stan Moore, Sandia and Pieter in 't Veld, BASF)
- fix langevin gjf (Aidan Thompson, Sandia)
- fix tune/kspace (Paul Crozier, Sandia)
- significant upgrade to the USER-COLVARS package (Axel Kohlmeyer, ICTP, Italy)
- kspace_style pppm/stagger (Stan Moore, Sandia)
1st Quarter 2013
These are the most significant features added in the first quarter of
2013. Feature notes posted when the feature was released are listed
on this page. People who contributed to the features are
listed in parentheses:
4th Quarter 2012
These are the most significant features added in the last quarter of
2012. Feature notes posted when the feature was released are listed
on this page. People who contributed to the features are
listed in parentheses:
- file-style variables
- compute inertia/molecule
- pair_style mie/cut (Cassiano Aimoli Petrobras, U Notre Dame)
- enhanced fix gcmc for molecules (Paul Crozier, Sandia)
- pair_style mean/sw/spline (Robert Rudd, LLNL)
- angle_style fourier (Loukas Peristeras, Scienomics)
- angle_style fourier/simple (Loukas Peristeras, Scienomics)
- angle_style quartic (Loukas Peristeras, Scienomics)
- dihedral_style fourier (Loukas Peristeras, Scienomics)
- dihedral_style nharmonic (Loukas Peristeras, Scienomics)
- dihedral_style quadratic (Loukas Peristeras, Scienomics)
- improper_style fourier (Loukas Peristeras, Scienomics)
- various improvements to the new kspace_style msm (Stan Moore, Sandia)
- extension of kspace_style pppm to enable grid communication even when running on tiny sub-domains per processor
- kspace_style pppm/disp for long-range LJ interactions (Rolf Isele-Holder, Aachen University)
- moltemplate molecular pre-processing package (Andrew Jewett, UCSB)
3rd Quarter 2012
These are the most significant features added in the third quarter of
2012. Feature notes posted when the feature was released are listed
on this page. People who contributed to the features are
listed in parentheses:
2nd Quarter 2012
These are the most significant features added in the second quarter of
2012. Feature notes posted when the feature was released are listed
on this page. People who contributed to the features are
listed in parentheses:
- option for both kinds of restart file output simultaneously
- compute group/group with kspace option (Stan Moore, BYU)
- pair_style lcbop (Dominik Wojt, Wroclaw University of Technology)
- fix restrain for bonds and angles (Andres Jaramillo-Botero, Caltech)
- improper_style cossq (Georgios Vogiatzis, CoMSE, NTU Athens)
- improper_style ring (Georgios Vogiatzis, CoMSE, NTU Athens)
- fix colvars command and a USER-COLVARS package (Axel Kohlmeyer, U Temple)
- read_dump command (Tim Sirk, ARL)
- added optional variable dependence to many commands
- rerun command
- USER-MOLFILE package and dump molfile command (Axel Kohlmeyer, U Temple)
- faster TIP4P water potential
- fix balance
- fix rigid input of user-defined moments of inertia for overlapped rigid bodies
- granular rigid bodies with the correct effective mass in the GRANULAR package
- pair_style bop (Don Ward and Xiaowang Zhou, Sandia)
1st Quarter 2012
These are the most significant features added in the first quarter of
2012. Feature notes posted when the feature was released are listed
on this page. People who contributed to the features are
listed in parentheses:
- pair_style lj/smooth/linear (Jon Zimmerman, Sandia)
- fix reax/c/bonds (Tzu-Ray Shan, Sandia)
- angle_style dipole (Mario Orsi)
- dihedral_style table (Andrew Jewett, UCSB)
- more GPU-enabled pair styles in the GPU package (Trung Dac Nguyen and Mike Brown, ORNL)
- quit command
- pair_style kim (Valeriu Smirichinski, Ryan Elliott, Ellad Tadmor, U Minn)
- pair_style meam/spline (Alex Stukowski, LLNL)
- pair_style beck (Jon Zimmerman, Sandia)
- new forcezero linesearch method for minimization (Asad Hasan, CMU)
- change_box command
- balance command
- per-atom energy and virial tabulation for KSpace solvers (German Samolyuk, ORNL; Stan Moore, BYU)
- reworking of the accuracy criteria for Kspace solvers (Paul Crozier, Sandia)
- general capability for building for Windows with packages, using Visual Studio (Ilya Valuev, Joint Institue for High Temperatures, Moscow, Russia)
4th Quarter 2011
These are the most significant features added in the last quarter of
2011. Feature notes posted when the feature was released are listed
on this page. People who contributed to the features are
listed in parentheses:
- per-atom energy/stress with pair style reax/c (Ray Shan, Sandia)
- USER-OMP package (Axel Kohlmeyer, Temple)
- atom_style line and tri for aspherical particles
- pair_style line/lj
- pair_style tri/lj
- FLD package for Fast Lubrication Dynamics (Amit Kumar and Michael Bybee, UIUC)
- pair_style gauss/cut (Axel Kohlmeyer, Temple)
- pair_style coul/diel (Axel Kohlmeyer, Temple)
- OpenCL support in the GPU package (Mike Brown, ORNL)
- run_style verlet/split (Yuxing Peng and Chris Knight, U Chicago)
- partition command
- processors part, grid, numa options (Mike Brown, ORNL)
- pair_style coul/wolf (Yongfeng Zhang, INL)
- pair_style born/coul/wolf (Ray Shan, Sandia)
3rd Quarter 2011
These are the most significant features added in the third quarter of
2011. Feature notes posted when the feature was released are listed
on this page. People who contributed to the features are
listed in parentheses:
- broader 3rd-party FFT support including KISSFFT as a native LAMMPS FFT (Axel Kohlmeyer, Temple)
- single-precision FFTs for PPPM (Axel Kohlmeyer, Temple) and Phil Blood (PSC)
- fix addtorque (Laurent Joly, U Lyon)
- compute temp/rotate (Laurent Joly, U Lyon)
- bond_style harmonic/shift (Carsten Svaneborg)
- bond_style harmonic/shift/cut (Carsten Svaneborg)
- angle_style cosine/shift (Carsten Svaneborg)
- angle_style cosine/shift/exp (Carsten Svaneborg)
- dihedral_style cosine/shift/exp (Carsten Svaneborg)
- pair_style lj/sf (Laurent Joly, U Lyon)
- USER-CUDA package (Christian Trott, U Tech Ilmenau)
- package command
- doc/Developer.pdf
- fix restrain (Craig Tenney, Sandia)
- fix gcmc (Paul Crozier, Sandia)
- USER-SPH package (Georg Ganzenmuller, Ernst Mach Institute)
- pair_style lj/cubic (Aidan Thompson, Sandia)
- fix nphug (Aidan Thompson and Matt Lane, Sandia)
- pair_style edip (Luca Ferraro, CASPUR)
2nd Quarter 2011
These are the most significant features added in the second quarter of
2011. Feature notes posted when the feature was released are listed
on this page. People who contributed to the features are
listed in parentheses:
1st Quarter 2011
These are the most significant features added in the first quarter of
2011. Feature notes posted when the feature was released are listed
on this page. People who contributed to the features are
listed in parentheses:
- 64-bit integers for atom and timestep count
- temperature-accelerated dynamics (Aidan Thompson, Sandia)
- pair_style lj/charmm/coul/long/gpu (Mike Brown, ORNL)
- -var variables with multiple strings on command-line,
- ReaxFF examples (Aidan Thompson, Sandia)
- upgrade to COMB (Tzu-Ray Shan, U Florida)
- upgrade to MEAM (Greg Wagner, Sandia)
- upgrade to PeriDynamics (Mike Parks, Sandia)
- upgrade to eFF (Andres Jaramillo-Botero, Caltech)
- upgrade to AIREBO (Steve Stuart group, Clemson)
- compute cluster/atom
- option to calculate neighbors of ghost atoms
- fix langevin zero (Aidan Thompson, Sandia)
4th Quarter 2010
These are the most significant features added in the last quarter of
2010. Feature notes posted when the feature was released are listed
on this page. People who contributed to the features
are listed in parentheses:
- reading restart files in parallel
- dump_modify sort
- coupling dir for coupling LAMMPS to other codes via its library interface
- nudged elastic band (NEB)
- min_style fire and quickmin
- stochastic rotation dynamics (SRD) (Jeremy Lechman (Sandia) and Pieter in 't Veld (BASF))
- pair_style born k(Sai Jayaraman, Sandia)
- pair_style gauss (Sai Jayaraman, Sandia)
- variables as args to various commands like fix wall
- gmask()/rmask()/grmask() options for atom-style variables
- compute pair
- compute atom/molecule
- enhanced fix adapt for thermodyanmic integration
- support for DREIDING force field (Tod Pascal, Caltech)
- pair_style hbond/drieding (Tod Pascal, Caltech)
- angle_style cosine/periodic (Tod Pascal, Caltech)
- improper_style umbrella (Tod Pascal, Caltech)
- C-based version of the ReaxFF as pair_style reax/c (Metin Aktulga, LBNL)
- fix ave/spatial for 2d and 3d binning
- fix wall/srd
- Python wrapper on LAMMPS in python dir enabling real-time viz, plotting, GUI interaction
- enhanced if/then/elif command
- fix external
- enhanced GPU/CUDA support (Mike Brown, ORNL)
10 Sept 2010
207,018 lines of code in src dir with all packages included (but no
library source files).
These are the most significant features added or enhanced since the 15
Jan 2010 version. People who contributed to the features are listed
in parentheses:
- Parinello-Rahman dynamics for general triclinic boxes (Aidan Thompson, Sandia)
- charge-optimized many-body (COMB) potential (Tzu-Ray Shan, U Florida)
- compute centro atom for non-fcc lattices (Michel Perez, U Lyon, France)
- create_atoms random
- delete_atoms compress
- dump frequency variables using ramp(), stagger(), logfreq()
- dump modify first
- electron force field (eFF) user package (Andres Jaramillo-Botero, Caltech)
- embedded ion method (EIM) potential (Xiaowang Zhou, Sandia)
- fix adapt
- fix ave/correlate (Benoit Leblanc, Dave Rigby, and Paul Saxe (Materials Design) and Reese Jones (Sandia))
- fix ave/time and fix ave/histo on arrays
- fix evaporate molecule
- fix heat region
- fix msst (Lawrence Fried (LLNL) and Evan Reed (LLNL, Stanford))
- fix rigid/nve (Tony Sheh and Trung Dac Nguyen, U Michigan)
- fix rigid/nvt (Tony Sheh and Trung Dac Nguyen, U Michigan)
- fix store/state
- fix viscosity and fix thermal/conductivity for atom swaps of unequal mass (Craig Tenney, U Notre Dame)
- fix wall reflect for moving walls
- if and run every options using multiple commands
- logical math operators in variables
- major reworking of fix nvt/npt/nph commands (Aidan Thompson, Sandia)
- pair_style dpd/stat
- pair_style peri/lps (Mike Parks, Sandia)
- processors command wildcard (Axel Kohlmeyer, Temple U)
- reformulation of compute heat/flux (German Samolyuk (ORNL) and Mario Pinto (Computational Research Lab, Pune, India))
- region delete
- special_bonds angle
- upgraded GPU package (Mike Brown (ORNL) and Paul Crozier (Sandia))
- variable option added to many commands, e.g. fix setforce, fix addforce, fix indent, fix efield
15 Jan 2010
173,838 lines of code in src dir with all packages included (but no
library source files).
IMPORTANT:
- The following commands have been deprecated, because they
are now replaced by new commands, mostly computes
which are more powerful or allow for more flexbility in output: fix
com, fix gyration, fix msd, fix rdf, fix coord/original.
- There is a new atom_modify sort option, which
is enabled by default, which sorts atoms spatially every so many
timesteps. This can improve cache performance for soft materials,
e.g. liquids. It means that the order of atoms owned by each
processor will change over time, and can thus lead to round-off
differences versus simulations with sorting turned off.
- The mechanisms for building LAMMPS via Makefiles and packages have
been simplified which has changed the format of the lo-level
src/Makefile.* files. See this section of
the manual for details. The mechanism for adding new styles/classes
to LAMMPS has also been simplified to avoid the need for users to edit
style*.h files. Thus if you have your own add-on files, you will need
to make a small change to the *.h files to enable them to work with
the new system. See this section of the
manual for details.
These are the most significant features added or enhanced since the 7
Jul 2009 version. People who contributed to the features are listed
in parentheses:
- Nose/Hoover chains in fix nvt (Andy Ballard, U Maryland)
- angle_style table (Chuanfu Luo)
- atom_modify sort
- atom_style colloid
- bond_style table (Chuanfu Luo)
- communicate vel
- compute angle/local
- compute bond/local
- compute com
- compute com/molecule
- compute dihedral/local
- compute gyration
- compute gyration/molecule
- compute improper/local
- compute msd
- compute msd/molecule
- compute pair/local
- compute property/atom
- compute property/local
- compute property/molecule
- compute rdf
- dump cfg (Liang Wan, Chinese Academy of Sciences)
- dump local
- dynamic regions
- fix ave/histo
- fix move
- fix store/coord
- fix store/force
- fix wall/colloid (Jeremy Lechman, Sandia)
- fix wall/harmonic
- fix wall/region
- min_style htfn (Todd Plantenga, Sandia)
- pair_style dsmc (Paul Crozier, Sandia)
- pair_style gayberne/gpu (Mike Brown, Sandia)
- pair_style lj/cut/gpu (Mike Brown, Sandia)
- pair_style lj96/cut (Chuanfu Luo)
- pair_style yukawa/colloid (Randy Schunk, Sandia)
- prd (Mike Brown, Sandia)
- user atc package (Reese Jones, Jon Zimmerman, Jeremy Templeton, Sandia)
- user cd-eam package (Alexander Stukowski, Technical University of Darmstadt)
- user-imd package (Axel Kohlmeyer, Temple Univ)
7 Jul 2009
148,035 lines of code in src dir with all packages included (but no
library source files).
IMPORTANT: The output format of dump files in the native
LAMMPS format has changed slightly. The BOX BOUNDS field adds "xy xz
yz" for triclinic boxes which quantities are appended to the following
3 lines of lo/hi box bounds. The ATOMS field adds per-atom column
descriptors such as "id type x y z". These are so the dump file is
self-describing and can be more easily post-processed.
These are the most significant features added or enhanced since the 9
Jan 2009 version. People who contributed to the features are listed
in parentheses:
- improvements to the energy minimizer (Aidan Thompson, Sandia)
- per-type and per-atom mass and size/shape
- more general fix rigid allowing for rigid bodies containing finite-size particles
- compute heat/flux for Green-Kubo thermal conductivity (Reese Jones, Sandia; Philip Howell, Siemens; Vikas Varsney, AFRL)
- compute cna/atom (Liang Wan, Chinese Academy of Sciences)
- pair_style reax (Aidan Thompson, Sandia; Hansohl Cho, MIT)
- fix box/relax (Aidan Thompson and David Olmsted, Sandia)
- group delete
- fix deform wiggle
- fix evaporate
- fix ttm (Paul Crozier, Sandia; Carolyn Phillips, U Michigan)
- compute reduce/region
- compute temp/profile
- pair_style born/coul/long (Ahmed Ismail, Sandia)
- fix reax/bonds (Aidan Thompson, Sandia)
9 Jan 2009
138,720 lines of code in src dir with all packages included (but no
library source files).
IMPORTANT: The syntax of the following commands has changed:
pair_style gran/hooke, pair_style
gran/hooke/history, pair_style
gran/hertz/history, and
special_bonds. The keyword "tag" in the
dump custom command has been changed to "id". The
default for specifying layer thicknesses in the fix
ave/spatial command has been changed from
box units to lattice units.
These are the most significant features added or enhanced since the 21
May 2008 version. People who contributed to the features are listed
in parentheses:
21 May 2008
133,864 lines of code in src dir with all packages included (but no
library source files).
IMPORTANT: For 2d problems using extended spherical particles (as
opposed to point particles), such as granular or colloidal particles,
the particles are now treated as 3d spheres moving in a 2d space. As
opposed to 2d circular disks moving in a 2d space. This is simply a
change in their moment of inertia, but will affect their dynamics when
rotating due to an applied torque. Likewise it affects their
temperature.
IMPORTANT: For 2d problems, the default for subtracting the system
center-of-mass degrees-of-freedom when computing temperature was
changed from 3 dof to 2 dof (for the entire system). This means you
might see a slight change in reported temperature and subsequent
dynamoics in a 2d simulation.
These are the most significant features added or enhanced since the 22
Jan 2008 version. People who contributed to the features are listed
in parentheses:
22 Jan 2008
125,009 lines of code in src dir with all packages included (but no
library source files).
IMPORTANT: Velocity initialization via the
velocity command using the loop geom option now
uses a new random number generation scheme, as do certain options of
the set and displace_atoms
commands. Hence an input script using these commands will initialize
a system differently (i.e. statistically the same, but with a
different set of random velocities). The following commands are
deleted in this version, since they have been replaced by more general
output options: "fix gran/diag",
"compute epair/atom", "compute ebond/atom", "compute variable/atom",
"compute variable", "compute sum/atom", and "compute attribute/atom".
These are the most significant features added or enhanced since the 5
Oct 2007 version. People who contributed to the features are listed
in parentheses:
5 Oct 2007
118,521 lines of code in src dir with all packages included (but no
library source files).
IMPORTANT: The syntax of the fix ave/spatial,
fix ave/time, and fix
gravity commands has changed. The "compute
etotal/atom" command was deleted and replaced by the more general
compute sum/atom command. Some keywords
for the dump custom command have been removed: epair,
ke, etotal, centro, stress. These are now invoked by creating a
compute of the appropriate style and referencing it
in the dump custom command.
These are the most significant features added since the 22 Jun 2007
version. People who contributed to the features are listed in
parentheses:
22 Jun 2007
106,005 lines of code in src dir (with all packages included).
IMPORTANT: The format of restart files was changed to make it easier
to add new atom info in the future. Thus this version will not read
restart files created by older versions. For hybrid atom styles, the
format of atom lines in input data files was changed. The syntax of
the create_atoms command was changed. The fix
volume/rescale and fix uniaxial commands were deleted since their
functionality is now present in the fix deform
command.
These are the most significant features added since the 12 Feb 2007
version. People who contributed to the features are listed in
parentheses:
- static and dynamic non-orthogonal simulation boxes (Pieter in 't Veld, SNL)
- fix heat (Paul Crozier, SNL)
- input script if command
- new Finnis/Sinclair EAM potentials (Mikhail Mendelev, Ames Lab)
- displace_atoms random
- new set command options
- create_atoms single
- compute coord/atom
- fix ave/time (Pieter in 't Veld, SNL)
- fix ave/spatial (Pieter in 't Veld, SNL)
- variable atom
- COLLOID package with pair colloid potential (Pieter in 't Veld, SNL)
- neighbor multi option (Pieter in 't Veld, SNL)
- communicate multi option (Pieter in 't Veld, SNL)
- DIPOLE package for point-dipole particles with pair dipole/cut
- ASPHERE package for ellipsoidal particles with a GayBerne potential (Mike Brown, SNL)
- aspherical particle integrators (Mike Brown, SNL)
- NEMD simulations via fix deform and fix nvt/sllod and compute temp/deform (Pieter in 't Veld, SNL)
- PyMol viz converter pymol_asphere for ellipsoidal particles (Mike Brown, SNL)
12 Feb 2007
95,029 lines of code in src dir (with all packages included).
IMPORTANT: The temperature command was replaced by the
compute command in this release, which is now a
more flexible way to define global calculations (temp, pressure, etc)
and per-atom calculations (energy, stress, etc) which can be output as
thermodynamic and dump info or
be accessed by input script variables.
There were also minor changes in the hi-level code structure to make
LAMMPS more library-friendly.
These are the most significant features added since the 1 Oct 2006
version. People who contributed to the features are listed in
parentheses:
- Tersoff potential (Aidan Thompson, SNL)
- Stillinger-Weber potential (Aidan Thompson, SNL)
- MEAM (modified EAM) potential (Greg Wagner, SNL)
- non-orthogonal lattices
- fix wall/lj126 (Mark Stevens, SNL)
- fix deposit
- uloop variables
- removal of global variables so LAMMPS can be instantiated multiple times (Ben FrantzDale, RPI)
- optimized versions of lj/cut, eam, morse, and lj/charmm/coul/long pair potentials (James Fischer; High Performance Technologies), David Richie and Vincent Natoli (Stone Ridge Technologies)
- compute command
- new options for thermo_style custom
- new options for dump custom
- new options for variable equal
- higher-precision real/metal units (Paul Crozier, SNL)
1 Oct 2006
85,559 lines of code in src dir (with all packages included).
IMPORTANT: The storage of periodic box image flags in restart files
changed with this release. The current version will still read old
restart files, but the values of the image flags will be wrong if you
use them in a computation or subsequently output them (e.g. in a dump
file).
There were also changes in the hi-level code structure and in pair
style routines. These were for the purpose of making LAMMPS more
library friendly and in anticipation of new many-body potentials we
hope to release soon (Stillinger-Weber, Tersoff, REBO, etc).
These are the most significant features added since the 17 Jul 2006
version. People who contributed to the features are listed in
parentheses:
- dihedral_style opls (Mark Stevens, SNL)
- allow 2d granular simulations
- allow per-processor restart files to be written
- shell command for using cd, mkdir, mv, rm, rmdir in input scripts
- lattice diamond style
- several new options for run command
- fix gyration (Naveen Michaud-Agrawal, JHU)
- fix recenter (Naveen Michaud-Agrawal, JHU)
- fix momentum (Naveen Michaud-Agrawal, JHU)
- new set command options for atom attributes
- multi-letter variables in input scripts (Naveen Michaud-Agrawal, JHU)
- equal style variables can compute group properties (Naveen Michaud-Agrawal, JHU)
- read_restart can read latest restart file
- LJ tail corrections via pair_modify option (Paul Crozier, SNL)
17 Jul 2006
82,729 lines of code in src dir (with all packages included).
These are the most significant features added since the 12 Apr 2006
version. People who contributed to the features are listed in
parentheses:
- fix wall/reflect command
- fix spring/self, and fix spring/rg commands (Naveen Michaud-Agrawal, Johns Hopkins U and Paul Crozier, SNL)
- enhanced fix langevin command to include a region option
- pair_style lj/smooth potential (Craig Maloney, UCSB)
- fix orient/fcc command for driving grain boundary motion (Koenraad Janssens and David Olmsted, SNL)
- dump dcd and dump xtc styles (Naveen Michaud-Agrawal, Johns Hopkins U)
- temperature region style for computing temperatures on geometric regions of atoms
- thermo_style custom t_ID option for printing one or more user-defined temperatures as thermodynamic output
- bond_style quartic (Mark Stevens and Chris Lorenz, SNL)
- faster pair_style hybrid potential (James Fischer, High Performance Technologies, Inc; Vincent Natoli and David Richie, Stone Ridge Technology)
- angle_style hybrid, dihedral_style hybrid, improper_style hybrid potentials
- delete_atoms overlap option for deleting created atoms that are too close
- TIP4P water potential (Ahmed Ismail and Amalie Frischknecht, SNL)
- dumping of per atom energy, stress, centro parameters during energy minimization
- fix poems command which hooks to the POEMS library from RPI to simulate the motion of coupled rigid bodies (Rudranarayan Mukherjee, RPI)
12 Apr 2006
74,353 lines of code in src dir (with all packages included).
IMPORTANT: The syntax of these commands were changed. If you use
these commands, you will need to modify your existing input scripts:
- Atom_style eam no longer exists; atom_style atomic can be used instead.
- Pair_style eam was split into 2 styles. Style eam is for EAM funcfl files (single element); style eam/alloy is for EAM setfl files (alloy).
- The arguments for fix temp/rescale command were reordered so the N value comes first, to be consistent with similar fixes.
These are the most significant features added since the 10 Nov 2005
version. People who contributed to the features are listed in
parentheses:
- energy minimization via minimize, min_style, and min_modify commands
- dissipative particle dynamics (DPD) atom style and pair style potential (Kurt Smith, U Pitt and Frank van Swol, Sandia)
- time-averaged thermo output of several quantities
- Finnis/Sinclair variant of EAM pairwise potentials (Tim Lau, MIT)
- angle style cosine/squared and dihedral style helix (Naveen Michaud-Agrawal, JHU)
- dump options for creating per-snapshot, per-atom, and gzipped output files
- dump_modify options for outputting atoms within geometric regions and on threshhold criteria
- input script functionality: print command, fix print command, label command, jump command, more variable options, command-line argument -echo
- fix uniaxial command (Carsten Svaneborg, Max Planck Institute)
- more flexible thermo_style custom command; fixes can generate thermo output
- changes to fix npt to dilate around the box center more efficiently
Though previously advertised, TIP4P pairwise potentials and a
bond_style restrain potential are not part of this release. They
will be added as patches in the near future.
10 Nov 2005
68,545 lines of code in src dir (with all packages included).
These are the most significant features added since the 3 Jun 2005
version:
- new or enhanced fix efield, fix indent, fix spring, fix nph, and fix gravity commands
- new option for fix nvt, fix npt, fix nph commands to damp oscillations
- new union and intersect region styles for creating complex geometric regions
- release of Pizza.py Toolkit, a Python-based collection of tools for setup, analysis, plotting, and visualization of LAMMPS data
3 June 2005
66,806 lines of code in src dir (with all packages included).
The format of binary restart files changed with this version, due to
hybrid atom and pair styles and the changes to enable very large
simulations. Hence this version will NOT read older version's restart
files.
Also, starting with this version, a build of LAMMPS will NOT include
all optional packages by default. In particular the "granular" and
"class2" packages will not be included unless you request them. See
the Making LAMMPS section of the
documentation for more details or type "make package" when building
LAMMPS to see the options.
These are the most significant features added since the 17 Jan 2005
version:
- pair and intra-molecular potentials for class 2 interactions (the COMPASS force field of Accelrys) that were originally in LAMMPS 2001
- enable simulations with more than 2^31 (2 billion) atoms via memory and other changes
- simulation of mixed systems via a hybrid pair_style and hybrid atom_style
- read in pre-tabulated pair potential via the pair_style command
- Buckingham, Morse, Yukawa pair potentials for the pair_style command
- Morse bond potential for the bond_style command
- include command
- radial distribution functions (fix rdf)
- dump out tabulated pair potential file (pair_write)
- dump per-atom energy and stress (dump custom)
17 Jan 2005
56,612 lines of code in src dir (with all packages included). These
are the most significant features added since the 1 Sept 2004 version:
- better integrator for rigid bodies (fix rigid)
- centro-symmetry parameter via dump command (dump custom)
- targeted molecular dynamics option (fix tmd)
- code partitioned into optional packages (make)
- wild-carding enabled for several input script commands (mass, pair_coeff, bond_coeff, etc)
- pre-compute tables for pairwise portion of long-range Coulombic solvers (pair_modify)
- native FFT support for SGI machines via SCSL library
- new versions of post-processing tools for connecting LAMMPS to Accelrys Insight (tools)
- bond_style hybrid enables use of multiple bond styles (bond_style)
- generalized set_type command for atoms, bonds, etc (set)
There is also a new release of LAMMPS 2001 (F90 version), which
contains a few minor tweaks and bug fixes. These are included in the
2001 tar file now available from the download page.
1 Sept 2004
Initial public release of the C++ version of LAMMPS. 52,967 lines of
code in src dir. This version supersedes earlier versions, including
LAMMPS 2001 (F90) and LAMMPS 99 (F77).
Older codes
LAMMPS 2001
- F90 + MPI
- dynamic memory
- spatial-decomposition parallelism
- NVE, NVT, NPT, NPH, rRESPA integrators
- LJ and Coulombic pairwise force fields
- all-atom, united-atom, bead-spring polymer force fields
- CHARMM-compatible force fields
- class 2 force fields
- 3d/2d Ewald & PPPM
- various force and temperature constraints
- SHAKE
- Hessian-free truncated-Newton minimizer
- user-defined diagnostics
LAMMPS 99
- F77 + MPI
- static memory allocation
- spatial-decomposition parallelism
- most of the LAMMPS 2001 features with a few exceptions
- no 2d Ewald & PPPM
- molecular force fields are missing a few CHARMM terms
- no SHAKE
ParaDyn
- F77 + MPI
- atom- and force-decomposition parallelism
- embedded atom method (EAM) metal potentials
- lattice atom creation
- NVE, NVT, NPT integrators
- all serial DYNAMO features for controls and constraints