Packages with External Libraries

Some LAMMPS packages are (often thin) wrappers around an external library that must be present before — or downloaded during — compilation. To build any of the packages below, the corresponding library has to be compiled first. In most cases the CMake build can download and build the library automatically, but an automated install usually omits the extra tools that ship with the library and make it most useful. For real work — not just running a finished simulation — a local installation of the library is recommended, especially for KIM, PLUMED, and the machine-learning packages.

Each card links to the external library’s own website (where you can get the full toolset); the package name is the LAMMPS package you enable in the build. Want to add one? Drop a file in content/download/libraries/ (or email the developers).

Machine-learning packages

Packages that interface LAMMPS to an external machine-learning potential library.

ML-PACE

Atomic Cluster Expansion (ACE) potentials via the libpace evaluator.

The ML-PACE package adds support for Atomic Cluster Expansion (ACE) interatomic potentials, evaluated with the performant libpace library developed at ICAMS. The library is fitted with the companion pacemaker tool, which is the practical entry point for training ACE potentials and is part of the broader ACE ecosystem. CMake can download and build libpace automatically when ML-PACE is enabled. The APIP package (adaptive-precision interatomic potentials) is layered on top of ML-PACE and uses the same library.

ML-HDNNP

Behler-Parrinello high-dimensional neural-network potentials via n2p2.

The ML-HDNNP package interfaces LAMMPS to n2p2, a C++ library implementing Behler-Parrinello high-dimensional neural-network potentials (HDNNPs, the “RuNNer-type” symmetry-function approach). n2p2 provides the prediction code used during MD as well as tools for training and analyzing these potentials. CMake can download and build the required n2p2 version automatically when the package is enabled, but a local n2p2 installation gives access to its full training toolchain.

ML-QUIP

QUIP/GAP interatomic potentials (incl. Gaussian Approximation Potentials).

The ML-QUIP package provides access to the interatomic potentials implemented in the QUIP library (from the libAtoms project), most notably Gaussian Approximation Potentials (GAP). QUIP is a substantial code base for fitting and evaluating these potentials; the LAMMPS package wraps its evaluation routines. CMake can download and build QUIP automatically when ML-QUIP is enabled, but a local QUIP/GAP installation is needed for fitting potentials and for the library’s additional tools.

Other library packages

Packages that wrap an external library for I/O, sampling, solvers, or analysis.

ADIOS

High-performance, parallel binary I/O for dumps and restarts via ADIOS2.

The ADIOS package adds dump and restart styles that use the ADIOS2 library for high-performance, parallel, self-describing binary I/O — useful for large simulations and in-situ/streaming workflows on HPC systems. The ADIOS2 library must be installed before building the package (CMake detects an existing installation rather than downloading it).

KIM

Load curated OpenKIM interatomic models through the KIM API.

The KIM package lets LAMMPS run any interatomic model archived in OpenKIM through the standardized KIM API, and gives access to the KIM query and property tools. CMake can download and build the KIM API automatically (DOWNLOAD_KIM), but a local KIM API installation is recommended so you can install and manage models and use the full set of KIM command-line tools. (OpenKIM itself is described under Ecosystem → ML & Interoperability.)

MBX

Many-body energies and forces (MB-pol family) via the MBX library.

The MBX package interfaces LAMMPS to the MBX many-body energy library from the Paesani group, which provides high-accuracy many-body potentials such as the MB-pol family of water models and related systems. The MBX library must be built and is then linked into LAMMPS so these potentials can be used in MD.

MDI

Couple LAMMPS to other codes as driver or engine via the MolSSI MDI Library.

The MDI package uses the MDI Library (MolSSI Driver Interface) to let LAMMPS act as a driver or as an engine in coupled simulations — for example QM/MM, machine-learning workflows, or multi-code calculations where LAMMPS exchanges data with another program at run time. CMake can download and build the MDI Library automatically (DOWNLOAD_MDI).

NETCDF

Portable, self-describing trajectory output via the NetCDF library.

The NETCDF package adds dump styles that write trajectories in the portable, self-describing NetCDF format (AMBER-style and generic), which is convenient for analysis tools and long-term archiving. The NetCDF library must be installed before building the package (CMake detects an existing installation).

PLUMED

Free-energy methods and enhanced sampling via the PLUMED library.

The PLUMED package couples LAMMPS to the PLUMED library, a widely used plugin for free-energy calculations and enhanced-sampling methods (metadynamics, umbrella sampling, collective variables, and many more). CMake can download and build PLUMED automatically (DOWNLOAD_PLUMED), but a local installation is recommended to get PLUMED’s full set of modules and command-line tools. (PLUMED is also listed, as a method/tool, under Ecosystem → External Tools.)

SCAFACOS

Scalable long-range Coulomb solvers via the ScaFaCoS library.

The SCAFACOS package gives LAMMPS access to the ScaFaCoS library, a collection of scalable solvers for long-range Coulomb interactions (e.g. FMM, P2NFFT, and others) as an alternative to the built-in long-range methods. CMake can download and build ScaFaCoS automatically when the package is enabled.

VORONOI

Per-atom Voronoi tessellation via the Voro++ library.

The VORONOI package adds a compute that performs Voronoi tessellation of the simulation, using the Voro++ library to obtain per-atom cell volumes, neighbor counts, and face areas — useful for structural and free-volume analysis. CMake can download and build Voro++ automatically when the package is enabled.

VTK

Dump output in VTK formats for visualization via the VTK library.

The VTK package adds dump styles that write per-atom data in VTK file formats, which can be loaded directly by VTK-based visualization tools such as ParaView. The VTK library must be installed before building the package (CMake detects an existing installation).