lammps

Public development project of the LAMMPS MD software package

GPL-2.0 License

Downloads
9.7K
Stars
2.1K
Committers
311

Bot releases are visible (Hide)

lammps - Patch release 27 May 2021

Published by akohlmey over 3 years ago

Changes since the 14 May 2021 patch release:

  • New package USER-HDNNP which provides a new pair style hdnnp, which is an interface to the N2P2 library for Behler-Parinello neural network potentials (Andreas Singraber, U Vienna) PR #2626
  • New package USER-RANN which provides a new pair style rann and matching potential files for using "rapid atomistic neural network (RANN) potentials (Christopher Barrett and Doyl Dickel, Mississippi State) PR #2570
  • Update of the bundled Kokkos library to version 3.4.1 (Stan Moore, SNL and the Kokkos developers) PR #2783
  • Update references to the LAMMPS homepage to reference www.lammps.org and docs.lammps.org instead of lammps.sandia.gov and add tool to check for it and convert such links, also corresponding updates to the LAMMPS manual itself. (Axel Kohlmeyer and Richard Berger, Temple U) PR #2778, PR #2768
  • Various small bug fixes, coding style and formatting updates (multiple authors) PR #2640, PR #2770, PR #2771, PR #2772, PR #2773, PR #2775, PR #2776, PR #2777, PR #2781, PR #2782, PR #2784

Backward compatibility notes:

  • the LAMMPS home page has been moved from https://lammps.sandia.gov to https://www.lammps.org (please report cases where links need to be updated).
lammps - Patch release 14 May 2021

Published by akohlmey over 3 years ago

Changes since the patch release 8 April 2021:

  • New package USER-PACE which provides a new pair style pace computing interactions using the Atomic Cluster
    Expansion (ACE) (Yury Lysogorskiy and collaborators at ICAMS, Ruhr-Uni Bochum) PR #2699
  • New Package USER-BROWNIAN for Brownian dynamics time integration of point and extended particles plus updates for fix propel/self (Sam Cameron, U Bristol) PR #2511
  • New Package USER-MDI to enable client/server mode coupling of LAMMPS with other codes using the MolSSI Driver Interface (MDI) (Taylor Barnes, MolSSI) PR #2611
  • New fix style "charge/regulation" which implements Monte Carlo sampling of charge regulation (Tine Curk, Northwestern U and Jiaxing Yuan, Shanghai Jiao Tong U) PR #2585
  • New generalized DPD pair styles: dpd/ext and dpd/ext/tstat (Martin Svoboda, Karel Sindelka, and Martin Lisal, ICPF) PR #2710
  • Faster and more flexible support for multi style neighbor lists (Joel Clemmer, SNL) PR #2536
  • New pair style hybrid/scaled that allows combining contributions from different pair styles with constant or variable scaling factors (Axel Kohlmeyer, Temple U) PR #2702
  • Updated version of pair style bop with bugfixes and performance improvements (Xiaowang Zhou, SNL) PR #2750, PR #2753
  • New base class Command that all command styles are now derived from instead of the Pointers class (Axel Kohlmeyer, Temple U) PR #2707
  • GPU package version of pair style lj/smooth (Gurgen Melikyan, HSE University) PR #2706
  • Update of the bundled Kokkos library to version 3.4.0 (Stan Moore, SNL and the Kokkos developers) PR #2733
  • Support for atom style spin in the KOKKOS package (Julien Tranchida, Stan Moore, and Svetoslav Nikolov, SNL) PR #2693
  • New clang-format configuration file in src tree. All files in that tree are prepared so that clang-format can be applied without destroying functionality. (Axel Kohlmeyer, Temple U) PR #2762
  • Refactoring of core LAMMPS code and packages to increase code reuse and readability, simplify text parsing, improve thread safety (Richard Berger and Axel Kohlmeyer, Temple U) PR #2704, PR #2719, PR #2727, PR #2738, PR #2749
  • Bugfixes and updates for the GPU package addressing issues caused by the changes/improvements in PR #2603 (Mike Brown, Intel Corp., Trung Nguyen, Northwestern U, and Richard Berger, Temple U) PR #2711, PR #2720, PR #2723, PR #2744, PR #2745, PR #2756
  • More unit tests for MPI load balancing and file operations (Richard Berger and Axel Kohlmeyer, Temple U) PR #2642, PR #2725
  • Scripts to support building LAMMPS and its documentation on systems without direct internet access (Richard Berger, Temple U) PR #2742
  • Various small bug fixes, coding style and formatting updates (multiple authors) PR #2703, PR #2705, PR #2712, PR #2713, PR #2714, PR #2715, PR #2717, PR #2721, PR #2722, PR #2724, PR #2726, PR #2737, PR #2739, PR #2741, PR #2743, PR #2748, PR #2756, PR #2758, PR #2760, PR #2761, PR #2765, PR #2769

Backward compatibility notes:

  • using comm_modify multi now requires to also use neighbor multi. In case the new neighbor multi functionality causes problems, it is possible to revert to the previous implementation with neighbor multi/old. In that case comm_modify multi/old and comm_modify cutoff/multi/old need to be used for enabling and customizing multi-cutoff ghost atom communication.
  • binary restart files containing data for pair style coul/cut will be incompatible due to bugfixes (but they were broken anyway)
  • external packages that add command styles will have to be adapted to the changes to the class topology in PR #2707
lammps - Patch release 8 April 2021

Published by akohlmey over 3 years ago

Changes since the patch release 10 March 2021:

  • New PLUGIN package providing a "plugin" command that allows loading and unloading of LAMMPS styles from separately compiled shared object files at runtime (Axel Kohlmeyer, Temple U) PR #2650
  • Refactoring of core LAMMPS code and packages to increase code reuse and readability, simplify text parsing, simplify internal fix/compute generation, improve thread safety (Richard Berger and Axel Kohlmeyer, Temple U) PR #2655, PR #2657, PR #2674, PR #2678, PR #2683, PR #2685, PR #2694, PR #2700
  • Additional unit test tools and test inputs to increase coverage of automated testing (Richard Berger and Axel Kohlmeyer, Temple U) PR #2308, PR #2653, PR #2658, PR #2679, PR #2681, PR #2682, PR #2695
  • Updates and additions to PyLammps examples (Richard Berger, Temple U and Evangelos Voyiatzis, Royal DSM) PR #2662, PR #2664
  • Updates and bugfixes to the USER-REACTION package (Jake Gissinger, NASA) PR #2675
  • Updates and bugfixes to the KOKKOS package (Stan Moore, SNL) PR #2677
  • Updates and bugfixes to the GPU package (Mike Brown, Intel Corp. and Nicholas Curtis, AMD, and Richard Berger, Temple U) PR #2691, PR #2692
  • Improved error/exception detection and handling in the LAMMPS python module (Richard Berger, Temple U) PR #2668
  • Various small bug fixes, coding style and formatting updates (multiple authors) PR #2654, PR #2659, PR #2661, PR #2663, PR #2666, PR #2670, PR #2671, PR #2685, PR #2686, PR #2689, PR #2690, PR #2696, PR #2697, PR #2698

Backward compatibility notes:

  • there are more strict checks about the order of rigid fixes and fixes that change box dimensions. LAMMPS will now correctly error out where it previously would silently ignore some fixes.
  • checks for using run_style verlet versus run_style respa have been made consistent across the code and fully aware of suffixes
  • the meaning of the request ID argument for accessing neighbor lists through the library and python interface has changed. it will function the same for the typical case of having just a single neighbor lists, but see the manual for other cases.
lammps - Patch release 10 March 2021

Published by akohlmey over 3 years ago

Changes since the patch release 10 February 2021:

  • Major update of the GPU package with significant performance and compatibility improvements (Mike Brown and Nitin Dhamankar, Intel Corp.) PR #2603, PR #2610, use statically linked OpenCL driver loader with CMake (Axel Kohlmeyer, Temple U) PR #2617, HIP compilation fixes (Richard Berger, Temple U) PR #2622
  • New pair style lj/relres which allows fine-grained/coarse-grained simulations for lj/cut type interactions (Mark Chaimovich, Russian School of Mathematics, and Aviel Chaimovich, Drexel University) PR #2590
  • Refactoring of the KIM package commands. Instead of multiple kim_<something> commands there is now only the kim command which accepts <something> as subcommand. Additional cleanups and improvements to the kim commands (Yaser Afshar, Ryan S. Elliott, Ellad Tadmor UMN) PR #2620, PR #2625, PR #2649
  • Direct support for neural network (nn) models added to MLIAP package (Pedro Antonio Santos Florez, University of Nevada - Las Vegas) PR #2641
  • Multiple small improvements and bugfixes to the USER-REACTION package (Jake Gissinger, NASA) PR #2600, PR #2616, PR #2627
  • Reader classes for LAMMPS log files and fix ave/chunk output added to the LAMMPS Python module (Richard Berger, Temple U) PR #2631
  • Unit tester tools for dihedrals and impropers with inputs for most styles (Abhishek Shandilya, RPI and Axel Kohlmeyer, Temple U) PR #2290
  • Cleanup and small performance updates for SNAP support in KOKKOS on GPU (Evan Weinberg, Nvidia) PR #2599
  • Various small bug fixes, coding style and formatting updates (multiple authors) PR #2601, PR #2602, PR #2604, PR #2609, PR #2612, PR #2613, PR #2614, PR #2615, PR #2618, PR #2624, PR #2629, PR #2632, PR #2633, PR #2634, PR #2635, PR #2637, PR #2638, PR #2644, PR #2651, PR #2652

Backward compatibility notes:

  • The STUBS library is compiled with C++ so there are no symbol name collisions when a serial LAMMPS library and mpi4py are loaded into a Python interpreter at the same time
  • All KIM package commands of the kind kim_<command> are renamed to kim <command>
  • There are several changes to the package gpu command:
    • The Ngpu parameter to the package now accepts 0 (for automatic determination of number of GPUs)
    • The gpuID keyword now only takes 1 argument.
    • The device keyword is replaced with 'platform' and 'device_type'
    • The automatic OpenCL platform detection will choose the platform with the best GPU (in terms of compute cores)
    • OpenCL, device configuration parameters for NVIDIA, AMD, INTEL are automatically determined at runtime
      More details about this are in the manual
  • Since the changes to the GPU package were substantial, some remaining bugs and compatibility issues are to be expected
lammps - Patch release 10 February 2021

Published by akohlmey over 3 years ago

Changes since the patch release 24 December 2020:

  • Add support for machine learning potentials using python frameworks to the MLIAP package (Nicholas Lubbers, LANL, and Aidan Thompson, SNL) PR #2508
  • Add 'shift' keyword for multiple Tersoff pair style variants to allow adjusting lattice constants in the case of hetero materials (Wengen Ouyang, Tel Aviv University, Davide Mandelli, Istituto Italiano di Tecnologia, Aidan Thompson, SNL) PR #2514
  • New 'eam/he' pair style for modeling He bubbles in metals (Xiaowang Zhou, SNL) PR #2556
  • New Wang-Frenkel pair style ('wf/cut'), a smooth, short range Lennard-Jones like potential (Xipeng Wang and Simón Ramírez-Hinestrosa, Chinese Academy of Sciences, U Cambridge) PR #2435
  • New potential files in version 2 format for the AGNI pair style and support for reading/processing those potential files (James Chapman, Lawrence Livermore National Lab) PR #2479
  • Update of bundled Kokkos library to version 3.3.1 (Stan Moore, SNL, and the Kokkos developers) PR #2540
  • Optimizations for running SNAP potentials with KOKKOS on GPUs (Evan Weinberg, Nvidia) PR #2549
  • Add capability to fix bond/react to have reactions create atoms (Jake Gissinger, NASA) PR #2584
  • Standardize the way how contributions from fix styles to energy and virial are handled. Remove THERMO_ENERGY fix mask. (Steve Plimpton, SNL) PR #2560
  • Replace redundant 3-vector inline functions from pair styles and math_vector.h with calls to MathExtra namespace functions. Obsolete math_vector.h and math_complex.h header files that were using common c++ class names without a protecting namespace (Axel Kohlmeyer, Temple U) PR #2558
  • More granular control over communication for pair style and fixes with KOKKOS (Stan Moore, SNL) PR #2532
  • Refactor processing of embedded citation strings to make them more visible (Axel Kohlmeyer, Temple U and Steve Plimpton, SNL) PR #2545
  • Add introspection support for compile time settings of accelerator packages (Axel Kohlmeyer, Temple U), PR #2554
  • Add ArgInfo class for simpler processing of references to computes, fixes, variables and more. Refactor the code using those (Axel Kohlmeyer, Temple U) PR #2571
  • Add `utils::strdup()`` convenience function and apply it to many files to collapse repetitive multi-line code to a single line (Axel Kohlmeyer, Temple U) PR #2583
  • Detect non-ASCII characters in input and try to correct known cases where equivalent UTF-8 characters are used (Axel Kohlmeyer, Temple U) PR #2564
  • Add version check to the LAMMPS python module so that the version of the python module must match the version in the shared library. (Axel Kohlmeyer, Temple U) PR #2589
  • Change sign conventions for forward/reverse Fourier transforms in LAMMPS to be aligned with common conventions (Steve Plimpton and Stan Moore, SNL) PR #2506
  • Move definition of "INVOKED_*" bitmap constants to an enumerator in the compute.h header file for consistency (Axel Kohlmeyer, Temple U) PR #2572
  • Add to CI checks runs via GitHub Actions (instead of Jenkins on ci.lammps.org): Static code analysis for C++ and Python via CodeQL, and compilation and unit tests on MacOS. (Axel Kohlmeyer and Richard Berger, Temple U) PR #2401
  • Various small bug fixes, coding style and formatting updates (multiple authors) PR #2547, PR #2553, PR #2555, PR #2557, PR #2559, PR #2561, PR #2562, PR #2565, PR #2566, PR #2567, PR #2569, PR #2576, PR #2579, PR #2580, PR #2582, PR #2586, PR #2591, PR #2592, #2594, #2596

Backward compatibility notice:

  • the processing and meaning of fix_modify energy and fix_modify virial has been changed. It is now only available for fixes that contribute to the potential energy and the virial. The energy contributions from thermostats and similar fixes can be accessed with the thermo keyword ecouple and the conserved quantity (i.e. etotal + ecouple) is available as econserve. There are corresponding changes to the implementation, so external fixes will have to be adapted or they will no longer compile. All affected fixes in the LAMMPS distribution have been updated.
  • the LAMMPS python module now contains a version check: When installing the python module, the current LAMMPS version is stored in a __version__ module variable and upon initialization of a LAMMPS instance it is checked against the output from the lammps.version() method which returns the version of the loaded shared library. If they don't match an exception is raised. This helps to detect inconsistent installations of the shared library or module or incorrectly setting LD_LIBRARY_PATH or PYTHONPATH.
  • Arguments to LAMMPS commands that contain references to compute, fixes, or variables (c_ID, f_ID, v_ID with and without indices) are now more strictly checked for correctness. Inputs that are incorrect but have previously worked by chance will now cause failures.
  • the KOKKOS package option "cuda/aware" has been renamed to "gpu/aware" since Kokkos now also supports AMD GPUs via HIP.
  • this release has several "invasive" changes to core parts of LAMMPS, so there is an increased risk that something has been broken in a part of the code that is not (yet) covered by our automated tests (which currently cover about 1/3rd of the total code base).
lammps - Patch release 24 December 2020

Published by akohlmey almost 4 years ago

Changes since the patch release 30 November 2020:

  • Add temperature-grouped Nose-Hoover thermostat for Drude polarizable models (Zheng Gong, ENS de Lyon) PR #2483
  • Refactor installation of the LAMMPS python module to follow the Python package conventions more closely (Richard Berger, Temple U), PR #2521
  • Add multi style neighbor list support for granular particles (Joel Clemmer, SNL and Ishan Srivastava, LBL) PR # 2423
  • Performance tweaks for KOKKOS package (Stan Moore SNL) PR #2517
  • Add support for logical operators with constraints for fix bond/react (Jake Gissinger, NASA) PR #2504
  • Add a "pair/only" keyword to the package command (or command line flag) for the KOKKOS and GPU package to conveniently allow for more efficient use of accelerators in certain cases (Stan Moore, SNL and Axel Kohlmeyer, Temple U) PR #2533
  • Add support for KIM-API v2.2.1 and additional unittests for KIM package and tools (Yaser Afshar, Ryan Elliot, UMN) PR #2518 & PR #2522
  • Add support for Plumed v2.7.0 (Axel Kohlmeyer, Temple U) PR #2542
  • New preset and workarounds/adjustments for compiling LAMMPS with the PGI/Nvidia compilers (Axel Kohlmeyer, Temple U), PR #2520
  • Various small updates and corrections (multiple authors) PR #2502, PR #2505, PR #2507, PR #2510, PR #2515, PR #2523, PR #2530, PR #2539

Backward compatibility notice:

  • The LAMMPS python module is now a folder with multiple python files instead of a single lammps.py file. Setting of environment variables for in-place use should be unchanged. For other installation/use cases, please check the manual.
lammps - Patch release 30 November 2020

Published by rbberger almost 4 years ago

Changes since the patch release 29 October 2020:

New features:

  • Added an electronic stopping fix to USER-MISC, James Stewart (SNL), Remi Dingreville (SNL), PR #2391
  • Added bond & angle styles gaussian, E. Voyiatzis (Royal DSM), PR #2440
  • Added Kokkos support for fix shake and forward comm on Device for fixes, Stan Moore (SNL), PR #2441
  • Added pair style spin/exchange/biquadratic, Julien Tranchida (SNL), PR #2410
  • Added molecule keyword to bond react to optionally force reaction to be inter- or intramolecular, Jacob Gissinger (NASA), PR #2467

Updates & Bugfixes:

  • Fixed issue with C library interface function lammps_gather_atoms, Richard Berger (Temple U), PR #2466
  • Add CMake code to download and compile a suitable version of libyaml in case it is not found locally, Axel Kohlmeyer (Temple U), PR #2476
  • Bugfixes in USER-MESONT, Maxim Shugaev (UVA), PR #2464
  • Fix memory bug in Kokkos KISS FFT, which led to crashes, Stan Moore (SNL), PR #2482
  • Separate cut planes by neigh skin for balance shift, Steve Plimpton (SNL), PR #2492
  • Patched neighbor history restarts, Joel Clemmer (SNL), PR #2424
  • Added missing LAMMPS_LIB_MPI flag to COUPLE-fortran2 example, PR #2495
  • Various fixes and updates for the KIM package, including support for KIM API v2.2.0, Yaser Afshar (UMN), Ryan S. Elliott (UMN), PR #2469, PR #2477, PR #2488
  • Updated bundled fmtlib to version 7.1.3, Axel Kohlmeyer (Temple U), PR #2451, PR #2487
  • Kokkos ReaxFF tweaks, Stan Moore (SNL), PR #2485
  • Preserve molecule templates when using "replicate", Axel Kohlmeyer (Temple U), PR #2462
  • molecule: use user-provided IDs in molecule files, Jacob Gissinger (NASA), PR #2450
  • Introduces constants into code base for energy and virial flags, Richard Berger (Temple U), PR #2481
  • Added support to the library interface to extract sublo, subhi, sublo_lambda, and subhi_lambda globals, Richard Berger (Temple U), Axel Kohlmeyer (Temple U), PR #2420
  • Added support to the library interface to extract universe_size, universe_rank, world_size, and world_rank settings, Axel Kohlmeyer (Temple U) PR #2420
  • Added support to the library interface to extract the newton_bond and newton_pair settings, Axel Kohlmeyer (Temple U), PR #2487
  • Added new unit tests, Axel Kohlmeyer (Temple U), Richard Berger (Temple U), PR #2487, PR #2420, PR #2478
  • Added support for -in none argument so that multi-partition runs can be launched from the library interface without an (initial or dummy) input file, Axel Kohlmeyer (Temple U), PR #2420
  • Reset invalid image flags on read_data, Axel Kohlmeyer (Temple U), Steve Plimpton (SNL), PR #2419
  • Bugfix for NEB, Tom D Swinburne (CNRS / Aix-Marseille University), PR #2486
  • Bugfixes for bond react, Jacob Gissinger (NASA), PR #2467
  • Update Kokkos library in LAMMPS to v3.2.1, Stan Moore (SNL), PR #2497
  • Kokkos EAM tweaks for V100, Stan Moore (SNL), PR #2436

Backward compatibility

  • for runs containing pair spin/exchange interactions, older restart files will no longer be compatible
  • Old restart files may not work if they saved neighbor/history data.
  • fix bond/react: updates map file section title from 'BondingIDs' to 'InitiatorIDs'. Old section title still works for backward compatibility, with a printed warning that it has been deprecated
lammps - Stable release 29 October 2020

Published by akohlmey almost 4 years ago

This stable release corresponds to a significantly larger number of changes than between previous stable releases. There have been over 4000 commits added since the last stable release, while the two previous stable releases have been made after fewer than 2000 commits.

Below is a list of major changes since the last stable release 3 March 2020

General changes:

  • Significant refactoring of the core LAMMPS code to increase code reuse, simplify new additions, improve thread safety, and benefit from C++11 features. In particular the following changes were incorporated:
    • Refactoring of the AtomVec classes to simplify adding new atom styles to the code. Also adding support for writing complete data files for atom styles ellipsoid, line, tri, and body, which had been previously missing.
    • Implementation of string tokenizer and potential file reader classes to improve parsing of text files and avoid the strtok() function. This has lead to substantial reduction in the lines of code used for those cases.
    • Transferring of utility function from class members to standalone functions in the utils namespace. Several new additions of such convenience functions
    • Using const std::string & instead char * or const char * as function argument in many places to simplify string processing and replacing C style string functions with their equivalent or expanded functionality of std::string member functions
    • Incorporation of fmtlib to replace and simplify many cases of output formatting. This avoids many complications with printf() style functions since no special treatment is required for processing bigint or tagint arguments. Since fmtlib has been accepted as a C++20 feature, this is also future proofing the code base.
    • Avoiding use of temporary local buffers for output formatting and thus lowering the risk of buffer overflows. This was enabled by the previous two changed.
    • Replacing NULL with nullptr where applicable for better detection of incorrect use.
  • Major reorganization and significant expansion of the manual:
    • The manual is now split into two parts: a User Guide and a Programmer Guide
    • Most of the content related to using the library interfaces, the Python module (and Python in general) have been moved to the Programmer Guide
    • The content of the external Developer Guide PDF has been incorporated into the Programmer Guide section and expanded
    • The documentation of the C-library interface and Python module has been expanded and the documentation of the individual APIs are now imported from the source code by means of using doxygen (for C/C++) and docstrings (for Python).
    • Redundancies have been reduced, cross-links added, and links to external websites checked, updated or removed.
  • Addition of a unit test facility which is integrated into building LAMMPS with CMake and using the ctest tool that comes with CMake. Tests for a variety of features and styles are included with a code coverage close to 40%. The added tests have exposed a significant number of previously unknown bugs and inconsistencies (e.g. between plain pair styles and suffixed versions or between Pair::compute() and Pair::single()) in the code base, which have been fixed.
  • Significant refactoring of the LAMMPS C-library interface and Python module: several new functions were added, especially for introspection, ad-hoc numerical constants were replaced by symbolic constants defined in enumerators and synchronized betwee C and Python, where possible and needed. Most modifications were done in a backward compatible way.
  • Add support for a "UNITS:" metadata tag to potential and tabulation files and code to error out if the value does not match with the current setting. For some potentials, mainly manybody potentials, support for on-the-fly conversion between "metal" and "real" units was added, so that a file with parameters for "metal" units can be used in a simulation with "real" units, if the pair style supports it.
  • Ordering of #include "" statements has been revised and the lists updated where possible after analyzing with the IWYU tool.
  • Significant refactoring of CMake scripts enabled by moving the minimum required CMake version from 2.8.x to 3.10.x. CMake build support is more reliable, portable to different host operating systems and efficient.
  • Conventional build system now always builds the LAMMPS library and the executable, so the available modes are reduced from 4 to 2: mode=static and mode=shared. The CMake build behaves equivalently.
  • Use pre-processor macros (requiring C++11) to provide compatibility with OpenMP 4.x and later semantics
  • Many small fixes and improvements.
  • Removal of outdated or obsolete makefiles. Removal of obsolete files and folder in the bench folder.

Updates and new commands or styles or packages:

  • New MLIAP package providing a generalized framework for machine-learning potentials. This currently includes an implementation of the SNAP potential
  • New USER-MESONT package for mesoscale modeling of nanotubes.
  • New command reset_mol_ids
  • New fix widom for modeling Widom insertions
  • New fix pafi to perform langevin or brownian dynamics time integration constrained to a potential hyperplane. Intended to be coupled to the PAFI C++ code.
  • Bugfixes, improved documentation, and new functionality for fix bond/react in particular RMSD based constraints.
  • New fix accelerate/cos and compute viscosity/cos in USER-MISC as yet another method to compute viscosity.
  • New fix momentum/chunk to remove per chunk momentum
  • New bond style special to provide a mechanism to implement special bond exclusions beyond 1-4.
  • Ports of more functionality to the KOKKOS package and several performance optimizations. Support for AMD GPUs via HIP. Update of the bundled Kokkos library to version 3.2.
  • Support for triclinic cells when using "tiled" communication style.
  • New pair style for charge-dipole damping with Tang-Toennies function in the USER-DRUDE package
  • Updates, bugfixes and adjustments to LAMMPS requiring C++11 in the USER-COLVARS package (now at version 2020-09-17).
  • Support for building triclinic neighbor lists on the GPU in the GPU package. Bugfixes and performance improvements for GPU styles.
  • Updates to writing binary dump files and binary2atom tool to become consistent with current text mode custom dumps
  • Updates to the user supported examples/COUPLE/fortran and examples/COUPLE/fortran2 wrappers to become compatible with updates to the C-library interface. Also work on a new, "object oriented" Fortran interface has started.
  • New LAMMPS shell command as alternative to the regular LAMMPS executable for improved interactive use.
  • Interface file for use with SWIG to create bindings to the LAMMPS library interface for a wide variety of (mostly scripted) programming languages (like Java, JavaScript, Lua, Perl, Ruby, Tcl and more).
  • Improved support for cross-compiling binaries for Windows on Linux. This enables building a liblammps.dll file and loading the LAMMPS Python module also on Windows.
  • Improved CMake support for building with "ninja" instead of "make".

Backward compatibility notes:

  • A C++11 compatible compiler is now required
  • CMake 3.10 or later is required for configuring and building with CMake
  • The USER-MESO package was renamed to USER-MESODPD to avoid confusion
  • Fix bond/react has been moved from USER-MISC to its own USER-REACTION package
  • The command reset_ids was renamed to reset_atom_ids.
  • Binary restarts using pair styles ufm, buck/mdf, lennard/mdf, coul/shield, coul/diel, and morse/soft are not compatible with older versions of LAMMPS due to bugfixes in the restart handling of those pair styles.
  • The format of binary dump files has changed. binary2text can detect and convert the old and the new format
  • Fixes temp/berendsen, temp/csvr, temp/csld, temp/rescale, fix spring/chunk and fix spring/rg now store their state in binary restart files
lammps - Patch release 29 October 2019

Published by akohlmey almost 4 years ago

These are the final changes for the stable release.

Changes since the patch release 22 October 2020:

  • Bugfixes and updates related to using atom style template. With these changes the atom style becomes usable again and several small improvements were included and until now undetected bugs fixed. The distribution now includes examples demonstrating its use and comparing it to simulating the same system with atom style molecular. Axel Kohlmeyer (Temple U), PR #2447
  • Several minor changes, bugfixes, and clarifications to code, documentation and examples (various authors) PR #2442, PR #2444, PR #2445, PR #2448, PR #2452, PR #2453, PR #2455, PR #2456, PR #2460
lammps - Patch release 22 October 2020

Published by akohlmey almost 4 years ago

This is the second release candidate for a new stable release. Please test thoroughly and give feedback, so we can address bugs and issues in the stable release. We are particularly interested in issues with compiling LAMMPS on all kinds of platforms beyond what we usually test on.

Changes since the patch release 9 October 2020:

  • Further refactoring of the programmer guide and small clean-ups and corrections for the manual (Steve Plimption, SNL and Richard Berger & Axel Kohlmeyer, Temple U) PR #2418, PR #2425, PR #2429, PR #2433, PR #2437, PR #2439
  • A SWIG interface file to build script language wrappers for many languages via the C library interface (Axel Kohlmeyer, Temple U) PR # 2434, PR #2438
  • Bugfix to pair styles dpd/tstat/gpu and dpd/gpu so they can be used together with a hybrid pair style (Trung Nguyen, Northwestern U) PR #2402
  • Removal of outdated or obsolete files from the distribution #2421
  • A few tweaks and improvements to the LAMMPS shell (Axel Kohlmeyer, Temple U) PR #2416, PR #2427
  • A few small bugfixes and improvements PR #2418, PR #2427, PR #2432
lammps - Patch release 9 October 2020

Published by akohlmey about 4 years ago

This is the first release candidate for a new stable release. Please test thoroughly and give feedback, so we can address bugs and issues in the stable release. Since the last stable release the code base has seen some significant modernization and refactoring and also the documentation has been updated and partially reorganized to include more information aimed at developers either writing applications that use LAMMPS as a library or that are working on extending LAMMPS. Because of that we are particularly interested in problems with building LAMMPS on different platforms and formatting issues of the new parts of the manual, or problems building it. Matching singularity container images with tested toolchains have been uploaded to the Singularity container library.

Changes since the patch release 18 September 2020:

  • New pair style for charge-dipole damping with Tang-Toennies function in the USER-DRUDE package (Kateryna Goloviznina, Zheng Gong, Agilio Padua, ENS de Lyon) PR #2389
  • Significant reorganization of parts of the manual related to using LAMMPS with Python and Python with LAMMPS; expansions, corrections, and revisions to the "progammer guide" section of the manual; addition of a Bibliography section that contains references from the entire manual in a single page (Steve Plimpton, SNL, and Axel Kohlmeyer & Richard Berger, Temple U) PR #2398, PR #2412, PR #2413
  • New LAMMPS Shell tool (Axel Kohlmeyer, Temple U) PR #2408
  • Update to Fortran interface in "example/COUPLE/fortran2" (Karl Hammond, U Missouri) PR #2403
  • Various small bugfixes and cleanups (multiple authors) PR #2377, PR #2378, PR #2381, PR #2382, PR #2388, PR #2390, PR #2395, PR #2396, PR #2397, PR #2400, PR #2403, PR #2406, PR #2407, PR #2409, PR #2411

Backward compatibility note:

  • Applications using the C library interface that are calling lammps_open() now need to define LAMMPS_LIB_MPI, so that library.h can also be used in cases where there is no MPI library installed. Also it should be noted, that calling lammps_open_no_mpi() is equivalent to calling lammps_open() with MPI_COMM_WORLD, so lammps_open() is really only needed when running LAMMPS on a subset of the MPI ranks with a custom communicator created by MPI_Comm_split() as demonstrated in examples/COUPLE/simple/simple.c
lammps - Patch release 18 September 2020

Published by akohlmey about 4 years ago

This is the last patch release with new features before we will prepare for a stable release due in 2-3 weeks. Please test thoroughly and give feedback, so we can address bugs and issues in the stable release. The code base has seen some significant modernization and refactoring and also the documentation has been updated to include more information aimed at developers either writing applications that use LAMMPS as a library or that are working on extending LAMMPS.

Changes since the patch release 24 August 2020:

  • New fix pafi to perform langevin or brownian dynamics time integration constrained to a potential hyperplane. Intended to be coupled to the PAFI C++ code (Thomas Swinburne, CNRS /CINaM Marseille and Mihai-Cosmin Marinica, SRMP/CEA Saclay) PR #1472
  • Update of the Kokkos library to version 3.2 (Stand Moore, SNL and the Kokkos developers), PR #2311
  • Updates to KOKKOS package to improve usability with the HIP backend for AMD GPUs (Nick Curtis) PR #2371
  • Update of the USER-COLVARS package to version 2020-09-17 (Giacomo Fiorin, NIH and other Colvars developers) PR #2356, PR #2376
  • Change behavior of fix bond/react to update all charges by default which is the more intuitive behavior. Keywords have been updated to be more intuitive as well (Jake Gissinger, U Colorado) PR #2368
  • Update of dump styles in the COMPRESS package to be consistent with recent changes elsewhere, added support for Zstd compression and the option to set the compression level (Richard Berger, Temple U), PR #2331
  • Use eigensolver contributed to USER-REACTION package to replace the old "jacobi" function to avoid licensing issues. Implement wrapper functions around templated implementation (Andrew Jewett, Scripps), PR #2347
  • Small refactor of fix qeq/reax and its USER-OMP and KOKKOS variants to reduce code replication and allow to add features (Stan Moore, SNL) PR #2354
  • Replace the use of the C-style NULL with the C++11 nullptr keyword, where meaningful. (E. Anne Gunn, Sheridan College) PR #2358
  • Replace numeric constants in Atom and AtomVec classes by symbolic ones via enumerators (Axel Kohlmeyer, Temple U) PR #2360
  • Bugfixes for the GPU package and related CMake/make files (Vsevolod Nikolskiy, HSE University Moscow and Trung Nguyen, Northwestern U), PR #2307, PR #2313, PR #2322, PR #2326
  • Bugfix for Langevin thermostatting inside of multiple fix rigid variants (Trung Nguyen, Northwestern U) PR #2367
  • Refactoring of the C library interface and the Python wrapper for consistency and maintainability, unit test support for the interfaces, decoration of library functions with Doxygen comments for semi-automatic documentation in the manual (Axel Kohlmeyer and Richard Berger, Temple U) PR #2310, PR #2318, PR #2320, PR #2357, PR #2359, PR #2362
  • Update of documentation build system to include Doxygen processing and integration of that output via the "breathe" Sphinx extension inclusion of the Developer Guide in the manual, update and corrections to the CMake support (Axel Kohlmeyer and Richard Berger, Temple U) PR #2309, PR #2312, PR #2327
  • Update headers in the documentation of LAMMPS style commands to be more compact and check for missing index entries (Richard Berger, Temple U) PR #2335
  • Update the compilation related documentation to use the sphinx-tabs extension (in HTML mode only) to make it more compact (Axel Kohlmeyer, Temple U) PR #2348
  • Revised internal and external links in the documentation (Matt Mansell and others) PR #2341
  • Move more convenience functions from classes to the utils namespace, update the code to consistently use the new versions and remove the old, update the manual to include the documentation of those APIs into the developer guide (Axel Kohlmeyer, Temple U) PR #2319, PR #2349
  • Start of a new (and "official") Fortran library interface and corresponding sphinx API documentation in the programmer guide plus unit tests for implemented APIs (Axel Kohlmeyer, Temple U) PR #2325
  • Update include file conventions and update lists of include files accordingly, add make iwyu target to run the include-what-you-use tool (Axel Kohlmeyer, Temple U) PR #2338
  • Make internal memory usage reporting consistently use the same data type (Axel Kohlmeyer, Temple U) PR #2363
  • Add support to call reset_mol_ids internally from fix bond/react (Jake Gissinger, U Colorado), PR #2240
  • Add RMSD based constraint to fix bond/react (Jake Gissinger, U Collorado, and Andrew Jewett, Scripps, and Yuya Kurebayashi, Tohoku U) PR #2314
  • Refactor of USER-BOCS code to fix memory leaks and memory access issues (E. Anne Gunn, Sheridan College) PR #2274
  • Implementation of force history for Mindlin variants of the granular pair style (Jibril B. Coulibaly, Northwestern U), PR #2196
  • Updated singularity container description files to better support the upcoming stable release (Richard Berger, Temple U) PR #2340
  • Various small updates and corrections (multiple authors) PR #2315, PR #2317, PR #2336, PR #2344, PR #2353, PR #2364, PR #2366, PR #2373, PR #2369, PR #2375

Backward compatibility notice:

  • The default behavior of fix bond/react about how charges are updated is changed and the related keyword is renamed.
  • The LAMMPS C library interface has some modifications that are supposed to be backward compatible. The use of a void ** argument to lammps_open() and similar functions is deprecated and the void * return value should be used instead. Also it implements some symbolic constants that should replace the explicit numbers from previous revisions of the API (the values are unchanged).
  • The LAMMPS python module follows the changes of the C library interface. Data types and dimensions for "extract" functions are queried from the LAMMPS library and automatically applied, but the old style methods setting the data types explicitly should still work for the time being.
  • When using CMake and compiling with the KOKKOS package enabled, the CMakeCache.txt file needs to be removed due to deprecation of variables in the updated Kokkos library CMake scripts
lammps - Patch release 24 August 2020

Published by akohlmey about 4 years ago

This is a minor update to patch release 21 August 2020. It contains only bugfixes and updates to the documentation:

  • Configuration tweaks to the updated theme for the HTML version of the LAMMPS manual that massively reduces the size of the generated files (Richard Berger, Temple U) PR #2299
  • More unit tests and fixes for issues discovered through them (Axel Kohlmeyer, Temple U), PR #2304
  • Updates for more consistent typesetting of subsection headers in the manual (Axel Kohlmeyer, Temple U) PR #2302
  • Bugfix for off-by-one errors in the update binary2atom tool (Richard Berger, Temple U) PR #2303
lammps - Patch release 21 August 2020

Published by akohlmey about 4 years ago

Changes since the patch release 21 July 2020:

  • New bond style "special" providing an alternate mechanism to what the "special_bonds" command does. With this one can also handle 1-5, 1-6 and beyond exclusions or scaling factors. (David Nicholson, MIT) PR #1865
  • New fix style "momentum/chunk" to allow per-chunk removal of center of mass and/or angular momentum (Jiang Xiao, Hong Kong Polytechnic U) PR #2295
  • Update of {fmtlib} to version 7.0.2, also change its internal ABI to avoid clashes with other uses of that library (Richard Berger, Temple U), PR #2276
  • Update tools/phonon with current release from its github repo (Ling-Ti Kong, Shanghai Jiao Tong U) PR #2258
  • Updates and bugfixes to tiled communication style to make it work with triclinic cells including load balancing support and support for multi-cutoff communication and the PPPM KSpace styles (Adrian Diaz, U Florida and Steve Plimpton, SNL) PR #1296, PR #1426, PR #2259, PR #2280
  • Performance optimizations for the KOKKOS version of SNAP (Evan Weinberg, NVIDIA) PR #2286
  • Update of KOKKOS package to support the HIP Kokkos backend for AMD GPUs (Stan Moore, SNL) PR #2275
  • Additional unit test input decks for pair and kspace styles and fixes for bugs detected by the tests (Abhishek Shandilya, RPI and Axel Kohlmeyer, Temple U) PR #2265, PR #2267, PR #2270, PR #2271, PR #2273, PR #2282, PR #2283, PR #2297
  • New unit test tools for lattice and region commands as well as fixes and a first collection of test inputs for the latter (Axel Kohlmeyer, Temple U) PR #2284, PR #2287
  • Refactor value parsing in various parts of LAMMPS and update binary dump styles and binary2atom to be consistent with current text mode atom and custom dump styles. Unittests for dump related commands (Richard Berger, Temple U) PR #2136
  • Refactor file parsing in fix ttm and fix ttm/mod (Axel Kohlmeyer, Temple U) PR #2264
  • Updates to documentation theme files, Windows subsystem for Linux Howto, and refactoring to reduce redundant text as well as splitting overfull pages (Richard Berger, Temple U) PR #2246, PR #2247, PR #2248, PR #2250
  • Various small updates and corrections (multiple authors) PR #2107, PR #2252, PR #2253 , PR #2254, PR #2255, PR #2256, PR #2260, PR #2263, PR #2266, PR #2278, PR #2279, PR #2281, PR #2285, PR #2289, PR #2291, PR #2292, PR #2293, PR #2298

Backward compatibility notice:

  • Binary restarts using pair styles ufm, buck/mdf, lennard/mdf, coul/shield, coul/diel, and morse/soft are not compatible with older versions of LAMMPS due to bugfixes in the restart handling of those pair styles.
  • Fixes temp/berendsen, temp/csvr, temp/csld, temp/rescale, fix spring/chunk and fix spring/rg now store their state in binary restart files
lammps - Patch release 21 July 2020

Published by akohlmey about 4 years ago

Changes since the patch release 30 June 2020:

  • New compute style mliap for MLIAP package (Aidan Thompson, SNL) PR #2211, PR #2228
  • New fix style bond/create/angle for the MC package that restricts which bonds are created by the angle formed (Oliver Henrich, Strathclyde U), PR #2206
  • New command reset_mol_ids that will reassign molecule IDs based on topology data. This can be applied to the entire system or a subset. (Steve Plimpton SNL, Jake Gissinger U Colorado, Axel Kohlmeyer Temple U) PR #2218
  • Bugfixes and cleanups for several manybody styles in the GPU package which were giving inconsistent results for potential files with multiple elements (Trung Nguyen, Northwestern U), PR #2216
  • New fix style widom to model Widom insertions based on fix gcmc for MC package (Evangelos Voyiatzis, Royal DSM) PR #2230
  • Add feature to compute chunk/atom to return the number of chunks in scalar context (Axel Kohlmeyer, Temple U) PR #2212
  • Add support for writing complete data files for atom styles ellipsoid, line, tri, and body (Steve Plimpton, SNL and Axel Kohlmeyer, Temple U PR #2219
  • Add more unit tests and test inputs for commands, atom styles, pair styles, and kspace styles and change the reference output generator code to output forces sorted by atom ID (Axel Kohlmeyer, Temple U) PR #2205, PR #2214, PR #2234
  • Add pair style hybrid support for the KOKKOS version of the ReaxFF implementation (Stan Moore, SNL) PR #2231, PR #2236
  • Some refactoring in the KIM package to follow coding guidelines more closely and take advantage of C++11 and utility functions in LAMMPS (Yaser Afshar, UMN and Axel Kohlmeyer, Temple U) PR #2238
  • Documentation refactoring that splits overloaded pages into multiple pages (Richard Berger, Temple U) PR #2204
  • Various small updates and corrections (multiple authors) PR #2202, PR #2203 , PR #2205, PR #2210, PR #2220, PR #2226, PR #2227, PR #2229, PR #2237, PR #2239, PR #2241

Backward compatibility notices:

  • The shape parameters for ellipsoids are now output as diameters as documented. Previously it were radii so now their values are doubled.
  • The reset_ids command has been renamed to reset_atom_ids
  • The semantics of the compute fragment/atom have been changed due to significant performance optimizations. Please review the documentation for details.
lammps - Patch release 30 June 2020

Published by akohlmey over 4 years ago

Changes since the patch release 15 June 2020:

  • New MLIAP package providing a general framework for adding machine-learning based interatomic potentials to LAMMPS with SNAP as reference implementation (Aidan Thompson, SNL) PR #2174
  • Add option for chemical specificity to SNAP potentials (Aidan Thompson, SNL and Charles Sievers, UC Davis) PR #1971, PR #2168
  • GPU optimization for SNAP support in KOKKOS (Evan Weinberg, NVIDIA) PR #2172
  • Bugfix for computing virial with GPU accelerated TIP4P when energy is not tallied (Vsevolod Nikolskiy, HSE University Moscow) PR #2187
  • Update build system for the GPU package to be compatible with AMD ROCm 3.5 (Vsevolod Nikolskiy, HSE University Moscow) PR #2167
  • Flip the sign for spherical harmonic for odd values of "m" with compute orient/order to be consistent with standard conventions . Output remains unchanged. (Aidan Thompson, SNL) PR #2171
  • Updates to the dynamical matrix examples and scripts (Charles Sievers, UC Davis) PR #2179
  • Implement a feature to transparently convert potential parameters for selected manybody and tabulated potentials from metal to real units or vice versa, if the potential file has a UNITS: tag. This extends the functionality of PR #2159 (Axel Kohlmeyer, Temple U) PR #2183, PR #2198
  • Updates for existing tests and new tests in the unittest tree, bugfixes for issues detected by tests (Axel Kohlmeyer, Temple U) PR #2182
  • Simplify creation of fixes and computes by adding an overloaded convenience function for Modify::add_fix() and Modify::add_compute() that allows creating a fix from a single string instead of having to provide a list of strings and the length of that list. (Axel Kohlmeyer, Temple U) PR #2191, PR #2199, support for Group::assign (Jake Gissinger, CU Boulder) PR #2195
  • Continuing refactoring of output formatting and string handling using fmtlib, std::string and convenience functions in the utils namespace (Axel Kohlmeyer, Temple U) PR #2190, PR #2201
  • Various small updates and corrections (various authors) PR #2162, PR #2163, PR #2169, PR #2180, PR #2181, PR #2097, PR #2188, PR #2189, PR #2192, PR #2197

Backward compatibility notices:

  • the rotate option of create_atoms was incorrectly using radians instead of degrees (as stated in the documentation) due to a missing conversion. This patch implements the conversion from degrees to radians and thus all previous inputs using this option will produce different results.
lammps - Patch release 15 June 2020

Published by akohlmey over 4 years ago

Please note that this release contains several important bugfixes for recent refactoring changes included in the 2 June 2020 version. The 2 June 2020 version should not be used anymore and replaced with this version.

Changes since the patch release 2 June 2020:

  • Bugfixes for read_data and read_restart that were introduced during the recent refactoring of the AtomVec class. Additional bugfixes for case of using many fixes that store per-atom data, broken KIM package compilation, and a few minor issues. updates for some singularity definition files. (Axel Kohlmeyer, Temple U) PR #2132
  • New package USER-MESONT that adds the tubular potential model (TPM). This consist of a Fortran library, a pair_style and compute, and tools for generating force field files. Pair style mesocnt, which implements the same model in C++-only has been moved from USER-MISC to this package (Maxim V. Shugaev & Leonid V. Zhigilei, University of Virginia, Alexey N. Volkov, University of Alabama) PR #1873
  • New fix orient/eco to add an "energy conserving orientation" force, which is a superset of what fix orient/fcc and fix orient/bcc do. (Adrian Schratt and Volker Mohles, Ruhr-Uni Bochum)) PR #2126
  • Update to Nose-Hoover barostats to allow setting a barostat temperature if there is no temperature compute already included (Joel Clemmer, Ishan Srivastava, SNL) PR #2137
  • Document access to contact information for fix wall/gran and fix wall/gran/region and fix some issue with not deleting "expired" contacts (Richard Berger, Temple U) PR #2121
  • Remove extra large (potential) files from the distribution and instead download them on demand from downloads.lammps.org when the corresponding package is installed/configured. Apply to pair style mesocnt as first case (Axel Kohlmeyer, Temple U) PR #2139
  • Add a "UNITS:" metadata tag to (most) potential files in the potentials folder and code to file readers to check for these tags and report and error if there is a mismatch. Table files generated by pair_write and bond_write will add these as the first line when a file is newly created and all subsequent attempts to append a table will check for consistent units or error out (Axel Kohlmeyer, Temple U) #2159
  • Add a sort option to the reset_ids command to obtain consistent atom ids in parallel regardless of the number of MPI ranks (Steve Plimpton, SNL) PR #2142
  • Continued refactoring of string handling and output formatting by increasing the use of {fmt} and std::string, (Axel Kohlmeyer, Temple U) PR #2127, PR #2128, PR #2148
  • Continued refactoring and optimization of file readers to increase code reuse and become thread safe (Richard Berger, Temple U) PR #2122, PR #2144
  • Consolidate union ubuf definitions in lmptype.h header file instead of individual classes (Axel Kohlmeyer, Temple U) PR #2151
  • More tests and unittest updates (Axel Kohlmeyer, Temple U) PR #2123
  • Add clang-format support to the C++ sources in the unittest tree (Richard Berger and Axel Kohlmeyer, Temple U) PR #2157
  • Utilities to check and correct files in the distribution for whitespace and permission issues (Richard Berger, Temple U) PR #2154
  • Various small updates and corrections (various authors) PR #2121, PR #2124, PR #2129, PR #2133, PR #2135, PR #2140, PR #2141, PR #2143, PR #2147, PR #2149, PR #2152, PR #2155, PR #2156, PR #2160, PR #2161

Backward compatibility notices:

  • People that want to use the mesocnt pair style now need to install the USER-MESONT package instead of USER-MISC
  • The potential file C_10_10.mesocnt has been removed from the distribution due to its size. It will be downloaded automatically when the USER-MESONT package is installed for the first time.
lammps - Patch release 2 June 2020

Published by akohlmey over 4 years ago

Changes since the patch release 5 May 2020:

  • Support for building neighbor lists on the GPU with triclinic boxes in the GPU package (Trung Nguyen, Northwestern U) PR #2073
  • Major refactoring of AtomVec classes in order to simplify adding such classes in the future. (Steve Plimpton, Stan Moore, SNL) PR #1788 , PR #2080, PR #2092
  • Add new thread-safe and simpler to use tokenizer and word counter classes. Apply to file readers for manybody potentials and several other places. Richard Berger (Temple U) PR #2113
  • Integrate {fmt} to generate printf() style formatted C++ strings and thus make generating those less complex and safer. Also add utils::logmesg() convenience function to send string to both, screen and logfile, with one call. Axel Kohlmeyer (Temple U), PR #2103
  • Add the first step of a comprehensive integrated unittest library with support for testing a selection of pair, bond, and angle styles under various conditions and with multiple uses. (Axel Kohlmeyer and Richard Berger, Temple U) PR #2098 , PR #2100, PR #2101, PR #2108 , PR #2114, PR #2119
  • Add support for molecule fragments to fix bond/react (Jake Gissinger, CU Bolder), PR #2106
  • Partial cleanup of makefiles for conventional build (Mike Brown, Intel Corp), PR #2071
  • Update of Kokkos library to version 3.1.1 (Christoph Junghans, LANL and the Kokkos developers) PR #2070
  • Update default version of LATTE to 1.2.2 (Christoph Junghans, LANL) PR #2069
  • More tweaks and updates to CMake scripts (Christoph Junghans, LANL), PR #2068, PR #2069
  • Various small updates and corrections (various authors) PR #2074, PR #2077, PR #2080, PR #2082, PR #2091, PR #2093, PR #2094, PR #2095, PR #2105, PR #2110, PR #2111, PR #2116, PR #2118

Backward compatibility notices:

  • The refactoring of the AtomVec classes could possibly break any external packages that provide their own AtomVec classes or contain styles that depend on the name of per-atom properties that were renamed. All AtomVec derived classes bundled within LAMMPS have been updated.
  • The refactored reading and parsing of potential files will now be reporting an error on Fortran-style double precision floating-point numbers with a "d" exponent instead of silently ignoring the "d" and the exponent. Potential files bundled with LAMMPS have been corrected (their exponent was "d0", so it does - by chance - not affect any results).
  • The (unsupported) previous library of simple run tests for LAMMPS has been replaced by a more systematic and comprehensive unit test library which will be significantly expanded over time.
lammps - Patch release 5 May 2020

Published by akohlmey over 4 years ago

Changes since the patch release 15 April 2020:

  • update of the bundled Kokkos library to version 3.1 (Stan Moore and the Kokkos developers, SNL) PR #2004, PR #2054
  • new Kokkos styles compute orientorder/atom and coord/atom and some related bugfixes/improvements (Stan Moore, SNL) PR #1895, PR #1902, PR #1906, PR #2033
  • new fix accelerate/cos and compute viscosity/cos in USER-MISC as yet another method to compute viscosity (Zheng Gong, École normale supérieure de Lyon) PR #2019
  • update of the polymorphic pair style with bug fixes and a new feature (Xiaoweng Zhou, SNL) PR #2000
  • added option to create a dummy fix as a placeholder early in an input to guarantee placement at the top of the list of fixes. (Steve Plimpton, SNL) PR #1760
  • update to fix bond/react to allow using equal style variables a probability input (Wolfgang Verestek, U Stuttgart) PR #2013
  • small update to internal commands in kim_interactions to improve KIM simulator model handling (Ronald Miller Carleton U, Ryan S. Elliott U Minn), PR #2014
  • many small fixes and updates to source code (mainly for the KOKKOS package), cmake scripts, and documentation to address issues with recent changes and minor long-standing issues. (multiple authors) PR #2003, PR #2006, PR #2010, PR #2015, PR #2022, PR #2023, PR #2026, PR #2027, PR #2030, PR #2032, PR #2035, PR #2036, PR #2041, PR #2043, PR #2044, PR #2045, PR #2046, PR #2047, PR #2048, PR #2049, PR #2051, PR #2053, PR #2055

Backward compatibility notices:

  • no known issues
lammps - Patch release 15 April 2020

Published by akohlmey over 4 years ago

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).