Releases: lammps/lammps
Patch release 8 February 2023
Changes since the 22 December 2022 release:
- Port of the AMOEBA package code to the GPU package (Trung Nguyen, U Chicago) PR #3599
- Update the bundled Kokkos library to version 3.7.1 and some related code improvements also for upcoming changes in Kokkos 4.0 (Stan Moore and Christian Trott, SNL) PR #3532 and PR #3568
- 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 - Converted "linalg" library from Fortran to C++ so that no longer a Fortran compiler is required if a package requires BLAS/LAPACK and no suitable library is present (Axel Kohlmeyer, Temple U) PR #3579
- Remove
mesont/tpm
pair style and related styles as well as the corresponding Fortran library from MESONT package as they are superseded by themesocnt
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
anddihedral_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
- Additional functions to access topology data in the C-library interface with support in all derived wrappers and interfaces (Evangelos Voyiatzis) PR #3614
- Fall back to download external libraries from download.lammps.org instead of their original location in case that server is unavailable, the URL changed or the checksum changed (Axel Kohlmeyer, Temple U) PR #3630
- Many small bug fixes, minor code improvements and refactoring, and coding style, build system, documentation, formatting updates (multiple authors) PR #3561, PR #3569, PR #3570, PR #3572, PR #3574, PR #3581, PR #3582, PR #3587, PR #3588, PR #3589, PR #3592, PR #3597, PR #3598, PR #3601, PR #3602, PR #3603, PR #3604, PR #3607, PR #3610, PR #3613, PR #3615, PR #3617, PR #3620, PR #3621, PR #3624, PR #3631, PR #3635, PR #3636, PR #3637, PR #3638
Backward compatibility notes:
- the obsolete legacy Fortran 77 wrapper for the LAMMPS library interface has been removed from examples/COUPLE
- the obsolete fire/old variant of the FIRE minimizer was removed
- pair style mesont/tpm, compute style mesont, and atom style mesont were removed
Patch release 22 December 2022
Changes since the 3 November 2022 release:
- new package ML-POD with a pair style for machine learning potentials using "proper orthogonal descriptors" (POD) and a command for training (Ngoc Cuong Nguyen, MIT and Andrew Rohskopf, SNL) PR #3449
- new command
reset_atoms
that is a front end forreset_atom_ids
andreset_mol_ids
and the new sub-commandreset_atoms image
to reset image flags consistently for molecule fragments (Axel Kohlmeyer, Temple U) PR #3530 - new features and updates to the ELECTRODE package (Ludwig Ahrens-Iwers and Robert Meißner, Hamburg U of T and Shern Tee, U of Queensland) PR #3544
- new fix sgcmc command in the MC package imported from the external USER-VCSGC package (Aidan Thompson, SNL and Axel Kohlmeyer, Temple U) PR #3556
- add KOKKOS versions of fix viscous and fix dt/reset (Michal Kanksi, Jagiellonian University) PR #3522
- refactored distributed grids code to be more general and add new commands that can access those grids or compute/process/output grid properties (Steve Plimpton) PR #3405
- new Python classes and functions to build tables for pair style, bond style, angle style, and dihedral style table (Axel Kohlmeyer, Temple U) PR #3559
- updates, bugfixes, and a few new features for fix bond/react (Jake Gissinger, NASA Langley) PR #3514
- some more updates to the LAMMPS Fortran interface module (Karl Hammond, U of Missouri) PR #3547
- remove style suffixes when writing binary restart files allowing to restart non-accelerated runs from accelerated runs (Axel Kohlmeyer, Temple U and Stan Moore, SNL) PR #3538
- Many small bug fixes, minor code improvements and refactoring, and coding style, build system, documentation, formatting updates (multiple authors) PR #3516, PR #3517, PR #3521, PR #3524, PR #3525, PR #3527, PR #3529, PR #3533, PR #3534, PR #3539, PR #3541, PR #3548, PR #3550, PR #3552, PR #3553, PR #3555, PR #3558, PR #3560, PR #3562, PR #3566
Backward compatibility notices:
- The checks for valid floating-point and integer numbers have been improved and are more strict now. This can lead to old inputs failing because of invalid numbers
- The
Si.b.meam.sw.spline
had to be corrected for an invalid floating-point number (see previous note. here the "e" in the exponent was missing and thus the exponent was incorrectly ignored). Most calculations, but not all, will be unaffected since this only concerned the spline coefficients at the very beginning of the table. - The syntax for the
python source
command has changed slightly to be more consistent with the other features of the command. - The commands
reset_atom_ids
andreset_mol_ids
have been renamed toreset_atoms id
andreset_atoms mol
, respectively. When the original commands are used, a warning is printed and the commands changed to the new versions. - The
box
command has been removed. The error check that it was used for to disable has been changed to a warning. If the box command is used, it is ignored and a warning is printed. - Binary restarts written with KOKKOS enabled for older versions of LAMMPS may not read back correctly with this version due an inconsistency in the restart output. Those restarts must be converted into data files using the old executable to be readable.
Update 2 for Stable release 23 June 2022
This is an update to the 23 June 2022 stable release that fixes a few bugs that have been reported since then and updates some libraries, dependencies, and build system support. There is no new functionality added.
The following individual fixes and changes are included:
- restore consistent handling of dump output frequency
- backport corrections to the DIELECTRIC package
- update/correct documentation for building the ELECTRODE package with the traditional make procedure
- avoid race condition when downloading potential files in CMake
- adapt VTK support in CMake to be compatible with VTK 9.0 and later
- correct/improve OpenMP detection for CMake 3.10+
- relax minimum required OpenMP version for KOKKOS package (based on improved OpenMP detection)
- prefer versioned cythonize command over unversioned if it matches the selected python version
- update default downloaded plumed library version to 2.8.1
- adjustments for correct HTML output of the manual with sphinx 5.1+
- add workaround for activate inactive hyperlinks for Fortran functions in manual
- correctly report mixing for CLASS2 pair styles
- increase buffer for internal regex function to accommodate larger strings
- correctly apply offsets to shake types in molecule files
- correct outdated neighborlist issues when calling delete_atoms or create_bonds multiple times
- fix buffer allocation issue for atom style dumps
- avoid segmentation faults when using the
clear
command with atomfile variables andpair/only
package flags - update broken URLs in the manual
- add support to detect Windows 10 22H2 in OS version info
Patch release 3 November 2022
Changes since the 15 September 2022 patch release:
- New ML-IAP package unified python interface (Steven Anaya and Nicholas Lubbers, LANL) PR #3458
- Partial Kokkos support for the ML-IAP package, (Matt Bettencourt and Markus Hrywniak, NVIDIA) PR #3487
- New pair style ylz (Mehdi Baghaee,SUSTech Shenzhen) PR #3491
- Updates and fixes to the BPM package (Joel Clemmer, SNL) PR #3448
- Updates to the ML-PACE package introducing extrapolation grade / active learning (Yury Lysogorskiy, Ruhr-Uni Bochum) PR #3315, PR #3479, PR #3490, PR #3501
- Updates and corrections to the SPIN package (Julien Tranchida, CEA) RP #3461
- Updates to the Fortran module (Karl Hammond, U Missouri) PR #3396, PR #3470, PR #3508
- Update bundled Kokkos library to version 3.7.0 (Stan Moore, SNL and the Kokkos developers) PR #3474
- Performance improvements/consistency for the KOKKOS versions of SNAP and Tersoff (Evan Weinberg, NVIDIA) PR #3465, PR #3488
- GPU package initialization improvements (Mike Brown, Intel) PR #3478
- Support for quartic interaction in pair style list (Tiedong Sun) PR #3473
- Support requesting a full neighbor list with pair style zero (Drew Rohskopf, SNL) PR #3471
- Integrate Peridynamics user guide PDF as Howto into the LAMMPS manual (Axel Kohlmeyer, Temple U) PR #3462
- Many small bug fixes, minor code improvements and refactoring, and coding style, build system, documentation, formatting updates (multiple authors) PR #3450, PR #3454, PR #3455, PR #3456, PR #3459, PR #3463, PR #3468, PR #3475, PR #3477, PR #3480, PR #3482, PR #3485, PR #3489, PR #3495, PR #3497, PR #3498, PR #3500, PR #3502, PR #3503, PR #3504, PR #3507, PR #3510
Backward compatibility notes:
- the default setting for neighbor list rebuilds has been changed from
delay 10
todelay 0
to guarantee correctness at some modest performance loss. This can lead to more frequent neighbor list rebuilds or neighbor list rebuilds on different timesteps and thus diverging trajectories. - Unlike other variables, atomfile style variables are now deleted with the
clear
command. This avoids segmentation faults due to trying to access a deleted fix store/peratom instance.
Patch release 15 September 2022
Changes since the 3 August 2022 patch release:
- Add basic support for symbolic types aka type labels (Jake Gissinger, NASA, Yaser Afshar, UMN, Steve Plimpton, SNL, Axel Kohlmeyer, Temple U) PR #2531
- New
fix pair
command to access per-atom quantities computed by pair styles, alsodump_modify skip
option to skip writing dump frames depending on a condition (Steve Plimpton, SNL) PR #3369 - Major update of the
mesocnt
pair style with addition ofmesocnt
bond and angle styles and more to complete the functionality (Philipp Kloza, U Cambridge) PR #3421 - Updates and corrections for plugin handling in LAMMPS and the MDI package (Christian Negre, LANL, and Taylor Barnes, MOLSSI, and Steve Plimpton, SNL) PR #3366
- Add support for using
fix shake
andfix rattle
during minimization by replacing the constraints with strong restraints (Axel Kohlmeyer, Temple U) PR #3244 - Remove some bias from the operation of fix bond/swap caused by how LAMMPS stores neighbors and bonds (Steve Plimpton, SNL) PR #3444
- Add support to
fix latte
so it can be used in combination withfix gcmc
and similar (Steve Plimpton, SNL) PR #3436 - Split internal fix STORE command into fix STORE/GLOBAL and fix STORE/PERATOM (Axel Kohlmeyer, Temple U) PR #3379
- Update embedded fmtlib code to version 9.1.0 (Axel Kohlmeyer, Temple U) PR #3381, PR #3418
- Tune INTEL package code for better performance with the new LLVM based Intel compiler (Michael Brown, Intel) PR #3410
- Various contributions from participants at the LAMMPS Code Clinic event (multiple authors).
- Project 1: Improved error messages: PR #3394, PR #3403, PR #3408, PR #3428
- Project 2: Refactor for new APIs: PR #3391, PR #3398, PR #3399, PR #3401
- Project 4: Modernize documentation: PR #3411, PR #3427
- Project 5: Add expand and new tests: PR #3400, PR #3407, PR #3438
- Many small bug fixes, minor code improvements and refactoring, and coding style, build system, documentation, formatting updates (multiple authors) PR #3378, PR #3380, PR #3382, PR #3383, PR #3384, PR #3387, PR #3388, PR #3389, PR #3390, PR #3392, PR #3393, PR #3395, PR #3406, PR #3409, PR #3414, PR #3419, PR #3420, PR #3422, PR #3425, PR #3432, PR #3433, PR #3440, PR #3442 , PR #3443
Compatibility with external tools:
- TopoTools in VMD must be at least version 1.9 to be compatible with type labels. To update your VMD TopoTools plugin, you can download it from the TopoTools release page on GitHub
- OVITO is going to be compatible with data files containing type labels soon
Backward compatibility notes:
- external LAMMPS code that uses fix STORE will need to be updated
- the update of the mesocnt styles is not backward compatible
- comments in data and data files must have a blank between the last valid input and the comment character '#'
- the mandatory fourth argument (
NULL
) forfix latte
is no longer required. Its function is moved to thecoulomb
keyword
Update 1 for Stable release 23 June 2022
This is an update to the 23 June 2022 stable release that fixes a few bugs that have been reported since then and updates some libraries, dependencies and the CMake support for plugins on Windows.
The following individual changes are included:
The following individual fixes and changes are included:
- Fix corner case with if-then-else Boolean logic where there is just a single string argument.
- Also remove references to comparing strings with Boolean operaters like "<" or ">=" in the documentation.
- Add missing atom->grow() to Kokkos unpack_exchange to avoid segmentation fault
- Fix small memory leak in ML-SNAP
- Avoid possible out-of-bounds data access in ML-RANN
- Bugfixes to fix bond/react
- Bugfixes to pair style mgpt
- Avoid segfault in dump vtk when used without a region
- Allow ramp(x,y) variable function to be used in between runs (returning x) and avoid division by zero when used with run 0.
- Allow vdisplace(), swiggle(), and cwiggle() functions to be used in between runs and disallow using them with fix dt/reset.
- Prevent view bounds error when building the Kokkos neigh list and a proc has no atoms
- Add missing GPU <--> CPU data transfer in Kokkos minimize, gave wrong results when using
comm no
orcomm/reverse no
running on the GPU - fixes for CMake scripts used for building plugins to cross-compile with MPI on Windows
- CMake scripting updates to fix multiple issues building the n2p2 library on Ubuntu 18.04LTS and 20.04LTS
- add CMake script code to provide a "make package" target when cross-compiling plugins to Windows
- mention dump style cfg/uef in the main dump manual page
- add missing support for
dump_modify colname
to local dumps - add more unit tests to improve test coverage of boolean evaluations
- must not search for MPI package when MPI is disabled to avoid issues with testing the LAMMPS Fortran module
- update embedded Kokkos library to bugfix release version 3.6.1
- update googletest library from a snapshot to release version 1.12.1
- update the Viscosity howto input script example to simulate liquid argon as advertised
- avoid deprecation warnings when building the manual
- update python package version requirements for building the manual
Patch release 3 August 2022
Changes since the 23 June 2022 patch release:
- New AMOEBA package with an implementation of the AMOEBA and HIPPO polarizable force fields from the Tinker MD code (Josh Rackers and Steve Plimpton, SNL and Trung Nguyen U Chicago) PR #2898
- New compute styles
sna/grid
andsna/grid/local
for the ML-SNAP package (Aidan Thompson, SNL and Lenz Fiedler, HZDR) PR #3305 - New pair style
srp/react
in the MISC package (Vaibhav Palkar, Clemson) PR #3337 - Enhancements to the MDI Package with expanded functionality (Steve Plimpton, SNL and Taylor Barnes, MolSSI) PR #3307, PR #3336
- Rename CG-SDK package to CG-SPICA and rename all related commands, new functional form LJ12-5 (in addition to LJ12-6 and LJ12-4, and LJ9-6) (Yusuke Miyazaki, Okayama U) PR #3343
- Add KOKKOS package version of the MEAM package (Naga Vydyanathan, NVIDIA and Stan Moore, SNL) PR #3328
- Update bundled Kokkos library to version 3.6.1 (Stan Moore, SNL and the Kokkos developers) PR #3329
- New "threebody on/off" keyword for pair style sw that allows turning off the three-body term calculation and enabling performance optimizations for that case (Jackson Elowitt, U Utah) PR #3316
- Optimizations for reading large blocks of input (Steve Plimpton, SNL) PR #3323
- Corrections and enhancements to how groups are processed in
compute contact/atom
(Joel Clemmer, SNL) PR #3339 - Add "pair_modify neigh/trim yes/no" option to allow to build optimized, trimmed neighbor lists for hybrid/overlay (Stan Moore, SNL) PR #3341
- Add "timestep yes/no" option to the
read_dump
command to simplify simulation loops where atoms are added from a dump file (Axel Kohlmeyer, Temple U) PR #3344 - Improved detection of Python interpreter and libraries in CMake to be more consistent across platforms, CMake versions and better honor the documented ways to override the automatic choice (Axel Kohlmeyer, Temple U) PR #3355
- Update of bundled linalg library to LAPACK version 3.10.1 plus adding ZHEEVD and dependencies and a new CMake setting
-DUSE_INTERNAL_LINALG
to allow preferring the bundled library over external ones (Axel Kohlmeyer, Temple U) PR #3360 - Many small bug fixes, minor code improvements and refactoring, and coding style, build system, documentation, formatting updates (multiple authors) PR #3317, PR #3319, PR #3322, PR #3327, PR #3298, PR #3330, PR #3331, PR #3340 , PR #3342, PR #3346, PR #3349, PR #3350, PR #3358, PR #3359, PR #3361, PR #3364, PR #3365, PR #3370, PR #3372, PR #3374, PR #3377
Backward compatibility notes:
- the command
fix mdi/aimd
has been renamed tofix mdi/qm
- the new
pair_modify neigh/trim
option defaults to yes. Use it with no in case simulations with hybrid/overlay fail and report the details in a new issue here - the CG-SDK package has been renamed CG-SPICA, all style have been renamed accordingly, but backward compatibility to the old names is included
Stable release 23 June 2022
Below is a list of major changes since the last stable release 29 September 2021
This stable release adds about 3000 commits since the previous stable release. This includes many contributions from beyond the core LAMMPS developers, but also continues the internal refactoring of the code base to make it more consistent and reliable yet also take more advantage of C++ features where they help to simplify the code and easier to modify, maintain, and contribute to.
With this release we will remove the previously used branches master
and unstable
and use the current equivalents develop
and release
. The stable
keeps its name, but since we published bugfix updates to the last stable release it will now run parallel to develop
and be explicitly synchronized with it (technically speaking, the patch_23Jun2022 and the stable_23Jun2022 tags will point to different commit hashes due to the difference in their histories, but the content will be identical).
General Changes
- Continued refactoring of the core LAMMPS code and many packages to increase code reuse, simplify new additions, improve consistency, and benefit from C++11 features. Several convenience functions and classes were added in the process.
- New
platform
namespace with abstractions for platform specific operations or getting information about platforms and tools. This includes dynamic loading of shared objects and file and directory operations. - start ongoing project to change how errors and warnings are reported and documented
- Improved portability, especially to Windows. It is now possible to build most of LAMMPS (including unit testing) natively on Windows with Visual Studio 2022 and MSVC++ compilers or Clang or Intel OneAPI compilers. Settings for Visual Studio are included.
- Improved plugin mechanism and option to automatically load custom plugins that are either not distributed with LAMMPS or depend on libraries that have licensing terms or technical requirements preventing linking them into LAMMPS directly. Examples for how to build such plugins for the KIM and the ML-PACE package are included. For the latter also a NSIS script to build an installer for Windows.
- Semi-automatic refactoring with clang-tidy: this has updated the coding style to take advantage of C++11 features and make things more explicit, so the compiler can warn more easily about problems. Also, clang-format is now applied to more files.
- update force style unit tests to work with Kokkos + OpenMP
- Refactor handling of thermodynamic output for better readability and add new thermo_style "yaml"
- Automatically load plugins in folders listed in the LAMMPS_PLUGIN_PATH environment variable
- More content and improvements for the Programmer Guide section of the Manual
Updates and new commands or styles or packages:
- New fix acks2/reaxff for ACKS2 charge equilibration and updates to fix qeq/reaxff that add support for fix efield to both charge equilibration methods.
- New fix mol/swap for swapping of atom types within a single, randomly selected molecule
- Add support for multi-species potentials to ML-PACE package
- Allow GPU package pair styles to be used with
newton_pair on
- New pair style sw/mod providing an empirically modified Stillinger-Weber potential suitable for compounds like MoS2
- New pair style nm/cut/split and bond style fene/nm for coarse grain polymer models
- Support for binary native dump files for read_dump and rerun
- Updated singularity/apptainer definition files
- New compute ave/sphere/atom to compute averaged properties in a sphere around atoms
- Support writing to dump files at regular time interface for variable timestep simulations
- Add centroid atomic stress support for shake, rattle and rigid/small fixes
- Add new pair style harmonic/cut providing a repulsive-only harmonic potential
- Add new fix numdiff/virial for deriving virial stress from potential energy via numerical differences
- Add two new interlayer pair styles ilp/tmd and saip/metal
- new option for multi-file dumps to have files that are more evenly sized to address post-processing and visualization issues for simulations of very large systems
- accelerator support (including KOKKOS) and improvements for dynamical_matrix and third_order commands
- re-implementation of the tools/eam_database Fortran code in Python
- update setup.py and install.py for python module to use setuptools instead of deprecated distutils and build a binary wheel file
- Add computes for local components of the pressure tensor in cartesian and spherical coordinates
- Major update of the LATBOLTZ package
- Code optimization for several KOKKOS styles
- Add fixes for damping of rotational and translational energy for extended particles
- Add support for an inner cutoff switching function to SNAP related commands that smoothly turns of SNAP descriptors at short range
- Memory usage optimization and bugfix for mesocnt pair style
- new BPM package for bonded particle models
- new ELECTRODE package
- updates and additions to the DIELECTRIC package
- new compute fep/ta for the FEP package implementing test-area perturbation
- new pair styles ilp/graphene/hbn/opt, ilp/tmd/opt, and saip/metal/opt for the OPT package with 2x speedup
- new pair styles smatb and smatb/single for the SMTBQ package
- new dump_style yaml command in the EXTRA-DUMP package
- add Kspace support to the PLUGIN package
- enhancements and additions for the MDI package. This obsoletes the MESSAGE package.
- additions to the BROWNIAN package to support different rotational and translational temperatures and option to constrain rotation in a plane in 3d
- additions to PyTorch support in ML-IAP packge
- new compute born/matrix command to compute elastic stress
- add KOKKOS package versions of the pair styles from the DPD-BASIC package
- add KOKKOS package version of pair style adp
- new colname option for dump_modify and thermo_modify to replace the column header strings for thermo output or in dump files
- add support for writing yaml format files to fix ave/time and also support fix_modify colname similar to thermo and dump
- add support for angle styles to fix adapt and add or update "extract()" methods to some angle/bond styles and make the extract arguments more consistent
- add region style ellipsoid
- add "aveabs" and "sumabs" options to compute reduce
- add "variable" option to delete_atoms command
- bugfix for DOF handling in compute temp/profile
- more consistent behavior of dynamic groups through moving the invocation of the internal fix to a later time in the timestep
- make time thermo property restartable and implement a reset_timestep time option to set it manually
- remove support for legacy GPU hardware and CUDA toolkits in the GPU package
- Update of the bundled Kokkos library to version 3.6.0
- Update of the bundled Colvars library to version 2022-05-24
- Add KOKKOS package version of the pace pair style from the ML-PACE package
- New pair styles "sw/angle/table" and "threebody/table" for the MANYBODY package
- Add support for GPU accelerated FFTs with HIP and KOKKOS
- Add support for SO3 descriptors to the ML-IAP package
- New "overlap" option for
create_atoms random
that will avoid close contacts - New "mesh" option for create_atoms to approximate meshes from STL files with atoms
- Add timer style variables for measuring wall time in seconds from the input script
Backward compatibility notices:
delete_atoms porosity
has been renamed todelete_atoms random
and uses/supports different options- The CC.Lebedeva interlayer potential file has been updated. It now uses by default parameters for "normal" conditions. The previous default parameters are tuned for high-pressure conditions and are still available when using "C1" instead of "C" as element.
- Using the PyLammps python module now requires the presence of numpy
- The new version of make install-python will not install a package over an existing package as the old version did. Instead, it will attempt to uninstall the old package and then install the new version. Packages installed with distutils, like the old version of make install-python, must be manually uninstalled (they don't store a suitable manifest). This should only be needed once, since from then on uninstall should be possible.
- The update to the LATBOLTZ package is a significant update that changes the syntax of the fix lb/fluid command in a way that is not backward compatible. Inputs must be updated accordingly. Also fixes lb/pc and lb/pc/rigid/sphere have been removed and fixes nve and rigid should be used in their stead.
- The thermodynamic output format is slightly changed. This may break parser implementations for analysis of LAMMPS log files that are not indifferent to whitespace changes and width of fields.
- the MESSAGE package has been removed. its functionality is provided in a more general way by the MDI package
- the GPU package using CUDA now requires CUDA toolkit version 8 or later and GPU architector 3.0 (aka Kepler or later). When compiling for OpenCL, driver support for OpenCL 1.2 is required. OpenCL can provide support for GPUs not supported by the CUDA toolkit anymore.
- the bug fix to the DOF calculation in compute temp/profile changes the results (usually by a small margin)
Patch release 23 June 2022
This patch contains the final changes to update the 2 June 2022 release to the 23 June 2022 stable release.
There are no substantial new features in this patch, only a variety of small updates and bug fixes for reported issues and based on extended testing. Notable changes are:
- Refactoring of the plugin examples and a new example building the ML-PACE package as plugin including creating a windows installer. (Axel Kohlmeyer, Temple U) PR #3290
- Bugfix for atom style dielectric
- Bugfix for dump style xtc on Windows (Issue #3292)
- Bugfix for dump style yaml when running in parallel PR #3309
- Change "remap semantics" for the read_restart command to always use the remap option by default and offer an "noremap" option to be able to change to the old behavior. (Issue #3078)
- Bugfix for accessing local computes in Python via NumPy, support LMP_SIZE_VECTOR as alias for LMP_SIZE_ROWS with local computes PR #3309
- Updates and bugfixes for the "Fortran2" and "Fortran_dftb" Fortran interfaces, PR #3312
- Improvements to compute ave/sphere/atom (Stan Moore, SNL) PR #3293
- Fix integer overflow bug in Kokkos version of ReaxFF (Stan Moore, SNL) PR #3295
- Updates to singularity/apptainer container definition files PR #3290
- GitHub actions updates PR #3299, PR #3301, PR #3303, PR #3304
- Recover building binary python wheel file after upgrade to use venv instead of virtualenv. When running with an active virtual environment, the wheel will be installed into the virtual environment as to be expected instead of the system or user site-packages folder PR #3306
- Various small improvements and small corrections to build system, compiler settings, and documentation. PR #3296, PR #3300
Patch release 2 June 2022
This is the first release candidate for the next stable release of LAMMPS. Please test thoroughly and report bugs immediately.
Changes since the 4 May 2022 patch release:
- Update of the bundled Kokkos library to version 3.6.0 (Stan Moore, SNL and the Kokkos developers) PR #3251
- Update of the bundled Colvars library to version 2022-05-24 (Giacomo Fiorin, NIH and the Colvars deverlopers) PR #3260, PR #3286
- Add KOKKOS package version of the pace pair style from the ML-PACE package (Stan Moore, SNL) PR #3264, PR #3278
- New pair styles "sw/angle/table" and "threebody/table" for the MANYBODY package (Christoph Scherer, Max Planck Institute for Polymer Research Mainz) PR #3279
- Add support for GPU accelerated FFTs with HIP and KOKKOS (Emily Kahl, The University of Queensland) PR #3237
- Add support for SO3 descriptors to the ML-IAP package (Aloïs Castellano, University of Liège) PR #3263
- New "overlap" option for
create_atoms random
that will avoid close contacts (Eugen Rožić, Institute Ruđer Bošković, and Steve Plimpton, SNL) PR #3119 - New "mesh" option for
create_atoms
to approximate meshes from STL files with atoms (Axel Kohlmeyer, Temple U and Joel Clemmer, SNL) PR #3258 - Add timer style variables for measuring wall time in seconds from the input script (Steve Plimpton, SNL) PR #3255
- Optimizations for
compute orientorder/atom
(Tomas Oppelstrup, LLNL and Stan Moore, SNL) PR #2988 - Many small bug fixes, minor code improvements and refactoring, and coding style, build system, documentation, formatting updates (multiple authors) PR #3250, PR #3259, PR #3262, PR #3267, PR #3268, PR #3269, PR #3271, PR #3272, PR #3275, PR #3276, PR #3277, PR #3280, PR #3281, PR #3284, PR #3285, PR #3288, PR #3289
Backward compatibility notices:
- The
delete_atoms porosity
option has been renamed torandom
and generalized to support multiple sub-styles that have adjustable behavior with respect to exactness and performance of the deletion.