Molecular Dynamics

LAMMPS Patch Release 15 April 2020

April 15, 2020
13 min read
Blog-LAMMPS-patch_15Apr2020-585x372.jpg

LAMMPS Patch Release Overview

What is LAMMPS primarily used for?

LAMMPS has potentials for solid-state materials (metals, semiconductors) and soft matter (biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be used to model atoms or, more generically, as a parallel particle simulator at the atomic, meso, or continuum scale.

LAMMPS runs on single processors or in parallel using message-passing techniques and a spatial-decomposition of the simulation domain. Many of its models have versions that provide accelerated performance on CPUs, GPUs, and Intel Xeon Phis. The code is designed to be easy to modify or extend with new functionality.

Changes since the patch release 19 March 2020:

  • new HIP backend to the GPU package enabling to use AMD GPUs natively through the ROCm toolkit (Evgeny Kuznetsov, Vladimir Stegailov, Vsevolod Nikolskiy, National Research University Higher School of Economics, Russia) PR #1863
  • update of included Kokkos library to version 3.0 (Stan Moore and the Kokkos developers, SNL) PR #1870, PR #1968, PR #1969, PR #1974, PR #1986
  • more optimizations to the KOKKOS version of the SNAP code (Evan Weinberg, Nvidia, and Stan Moore SNL) PR #1958
  • bugfixes and improvements for the SPIN package and computing of the norm in minimizers, also documentation corrections for the latter (Julien Tranchida, SNL) PR #1967
  • major refactoring of CMake support to take advantage of features of newer, CMake versions now that we require at least version 3.10 (Christoph Junghans, LANL) PR #1956, PR #1983, PR #1995, PR #1996
  • simplification of the process to build LAMMPS. Always build a library and link the executable to the library. That reduces the choices to "static" and "shared" with "static" as default (like before). Add tutorials for creating stack traces with gdb or Valgrind and for using CMake (Axel Kohlmeyer, Temple U) PR #1981
  • improved error messages and related documentation for USER-MEAMC (Sebastian Huetter, OvGuericke U) PR #1965
  • extensions to fix restrain to allow for a growing or shrinking bond restraint, and a new lower bound only bond restraint with the same option (David Castillo and Marco Di Stefano, Structural Genomics Group, CNAG-CRG) PR #1957
  • new kim_property command in the KIM package (Yaser Afshar, Ellad Tadmor, Daniel S. Karls, Ryan Elliott, UMN) PR #1946
  • internal KIM command for matching symbolic to numeric atom types (Ron Miller, Carleton U and
    Ryan S. Elliott, UMN) PR #1999
  • use preprocessor macros to enable compatibility of OpenMP directives with otherwise incompatible OpenMP 3.x and OpenMP 4.x and later const variable sharing semantics (Michael Lamparski) PR #1651
  • new functions in Info class and library interface to query installed styles (Richard Berger, Temple U) PR #1966
  • added extract methods to several bond styles for use with fix adapt (Evangelos Voyiatzis, NovaMechanics Ltd) PR #1973
  • refactored and generalized the way how LAMMPS detects how multiple fixes change box data and whether there are conflicts. (Axel Kohlmeyer, Temple U) PR #1874
  • core-shell version of pair style lj/class2/coul/long (Evangelos Voyiatzis, NovaMechanics Ltd) PR #1978
  • added support for apply scale in fix adapt to diameter and charge, diameter/disc option for mass changes consistent with 2d systems (Jibril B. Coulibaly, Northwestern U) PR #1937
  • updated and additional singularity container definition files for developing/debugging LAMMPS (Richard Berger, Temple U) PR #1975
  • small fixes and updates to code and documentation (multiple authors) PR #1952, PR #1962, PR #1979 , PR #1988, PR #1992, PR #1993, PR #1998, PR #1889, PR #1997, PR #1994

Backward compatibility notice:

  • Kokkos 3.0 changes some of its internal CMake variables and how it is configured via CMake. This is handled transparently with the conventional make build but requires changes for CMake builds and is not compatible with existing build folders.
  • Custom makefiles for the conventional build need to be changed. All bundled makefiles have been updated. The changes are in the section that is not supposed to be customized, so updates should be straightforward.
  • In the conventional make build procedure, there are now only two build modes mode=static (the default) and mode=shared. The previous choices are still available and mapped to one of them (i.e. mode=exe and mode=lib will set mode=static, and mode=shexe and mode=shlib will set mode=shared).

This release has 2 assets:

  • Source code (zip)
  • Source code (tar.gz)

Visit the release page to download them.

New LAMMPS Patch released from Sandia

About LAMMPS

LAMMPS (Large-scale Atomic/Molecular Massively Parallel Simulator) is an open-source molecular dynamics simulator written in C++ from Sandia National Laboratories and is designed for parallel machines. LAMMPS models an ensemble of particles in a liquid, solid or gaseous state. It can model atomic polymeric, biological, metallic, or mesoscale systems using a variety of force fields and boundary conditions and is easily extensible.

Topics

Blog-LAMMPS-patch_15Apr2020-585x372.jpg
Molecular Dynamics

LAMMPS Patch Release 15 April 2020

April 15, 202013 min read

LAMMPS Patch Release Overview

What is LAMMPS primarily used for?

LAMMPS has potentials for solid-state materials (metals, semiconductors) and soft matter (biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be used to model atoms or, more generically, as a parallel particle simulator at the atomic, meso, or continuum scale.

LAMMPS runs on single processors or in parallel using message-passing techniques and a spatial-decomposition of the simulation domain. Many of its models have versions that provide accelerated performance on CPUs, GPUs, and Intel Xeon Phis. The code is designed to be easy to modify or extend with new functionality.

Changes since the patch release 19 March 2020:

  • new HIP backend to the GPU package enabling to use AMD GPUs natively through the ROCm toolkit (Evgeny Kuznetsov, Vladimir Stegailov, Vsevolod Nikolskiy, National Research University Higher School of Economics, Russia) PR #1863
  • update of included Kokkos library to version 3.0 (Stan Moore and the Kokkos developers, SNL) PR #1870, PR #1968, PR #1969, PR #1974, PR #1986
  • more optimizations to the KOKKOS version of the SNAP code (Evan Weinberg, Nvidia, and Stan Moore SNL) PR #1958
  • bugfixes and improvements for the SPIN package and computing of the norm in minimizers, also documentation corrections for the latter (Julien Tranchida, SNL) PR #1967
  • major refactoring of CMake support to take advantage of features of newer, CMake versions now that we require at least version 3.10 (Christoph Junghans, LANL) PR #1956, PR #1983, PR #1995, PR #1996
  • simplification of the process to build LAMMPS. Always build a library and link the executable to the library. That reduces the choices to "static" and "shared" with "static" as default (like before). Add tutorials for creating stack traces with gdb or Valgrind and for using CMake (Axel Kohlmeyer, Temple U) PR #1981
  • improved error messages and related documentation for USER-MEAMC (Sebastian Huetter, OvGuericke U) PR #1965
  • extensions to fix restrain to allow for a growing or shrinking bond restraint, and a new lower bound only bond restraint with the same option (David Castillo and Marco Di Stefano, Structural Genomics Group, CNAG-CRG) PR #1957
  • new kim_property command in the KIM package (Yaser Afshar, Ellad Tadmor, Daniel S. Karls, Ryan Elliott, UMN) PR #1946
  • internal KIM command for matching symbolic to numeric atom types (Ron Miller, Carleton U and
    Ryan S. Elliott, UMN) PR #1999
  • use preprocessor macros to enable compatibility of OpenMP directives with otherwise incompatible OpenMP 3.x and OpenMP 4.x and later const variable sharing semantics (Michael Lamparski) PR #1651
  • new functions in Info class and library interface to query installed styles (Richard Berger, Temple U) PR #1966
  • added extract methods to several bond styles for use with fix adapt (Evangelos Voyiatzis, NovaMechanics Ltd) PR #1973
  • refactored and generalized the way how LAMMPS detects how multiple fixes change box data and whether there are conflicts. (Axel Kohlmeyer, Temple U) PR #1874
  • core-shell version of pair style lj/class2/coul/long (Evangelos Voyiatzis, NovaMechanics Ltd) PR #1978
  • added support for apply scale in fix adapt to diameter and charge, diameter/disc option for mass changes consistent with 2d systems (Jibril B. Coulibaly, Northwestern U) PR #1937
  • updated and additional singularity container definition files for developing/debugging LAMMPS (Richard Berger, Temple U) PR #1975
  • small fixes and updates to code and documentation (multiple authors) PR #1952, PR #1962, PR #1979 , PR #1988, PR #1992, PR #1993, PR #1998, PR #1889, PR #1997, PR #1994

Backward compatibility notice:

  • Kokkos 3.0 changes some of its internal CMake variables and how it is configured via CMake. This is handled transparently with the conventional make build but requires changes for CMake builds and is not compatible with existing build folders.
  • Custom makefiles for the conventional build need to be changed. All bundled makefiles have been updated. The changes are in the section that is not supposed to be customized, so updates should be straightforward.
  • In the conventional make build procedure, there are now only two build modes mode=static (the default) and mode=shared. The previous choices are still available and mapped to one of them (i.e. mode=exe and mode=lib will set mode=static, and mode=shexe and mode=shlib will set mode=shared).

This release has 2 assets:

  • Source code (zip)
  • Source code (tar.gz)

Visit the release page to download them.

New LAMMPS Patch released from Sandia

About LAMMPS

LAMMPS (Large-scale Atomic/Molecular Massively Parallel Simulator) is an open-source molecular dynamics simulator written in C++ from Sandia National Laboratories and is designed for parallel machines. LAMMPS models an ensemble of particles in a liquid, solid or gaseous state. It can model atomic polymeric, biological, metallic, or mesoscale systems using a variety of force fields and boundary conditions and is easily extensible.

Topics