New LAMMPS-GUI beta release v2.0.5

Thanks to the improvements in AI coding agents, I’ve finally been able to complete the long overdue refactor and cleanup of LAMMPS-GUI. While there are very few functional changes, the code was made much more consistent and cleaner. Most importantly, the functionality for downloading files was shifted from the LAMMPS “geturl” command to a custom Qt class which also offers checking SHA-256 hashes for file integrity when available. This change allows to further improve the functionality to identify a suitable LAMMPS shared library for the LAMMPS-GUI version that loads it dynamically: now it is possible to (re-)download the (latest) pre-compiled library (in case it was deleted or the configuration changed so it cannot be found).

Also, this version removes a lot of backward compatibility workarounds and logic.
Qt 6.2+ is now the minimum requirement and the binary packages have been updated accordingly (as have been the build hosts). This is probably the most risky change that may cause segmentation faults and other crashes. On the other hand, this change is inevitable and could not be postponed forever.

You can find the new binaries and more information at LAMMPS Testing Download Repository: . and Release Version 2.0.5 · akohlmey/lammps-gui · GitHub

For the time being, I will keep a maintenance branch with the version v1.12 code around and backport bugfixes so that updates for that version will also be possible in case v2.0.3 has too many problems (it didn’t for me, but that doesn’t say much as the past has shown). I hope that all all portability issue will be resolved by the time the next stable LAMMPS release comes along this summer and then LAMMPS-GUI v2.x should become the only supported version.

v2.0.1 has further refactoring, mostly done by Claude Opus 4.6.
It also has brought back support for flatpak bundles since they can now download the LAMMPS library at runtime.

v2.0.2 adds a couple sequential colormaps, fixes bug where the imageviewer would not start when the input was edited, and reorganizes the code for creating the main window (mostly streamlining the refactor from the coding agent and merging in bits an pieces that were scattered across the constructor)

v2.0.3 fixes some inconsistencies in the charts window by blocking access to the plot range sliders and the raw/smooth plot selection while the simulation is running. It also favors the old QtCharts based chart display unless the module is not found. The alternate implementation based on QtGraphs is segfaulting for certain combinations of steps without an indication of the reason for it and thus a chance to correct it.

v2.0.4 adds a new dialog in the image viewer window where the per-type colors can be changed and the color settings can be saved to and loaded from a JSON file. Also further bugfixes, consistency improvements are included.

v2.0.5 adds a new entry in the About menu to check for an updated LAMMPS shared library and offers to download it, if found. Also the packages are now bundled with the most recent development version of LAMMPS which offers over 30 newly more styles that were ported to the OPENMP package and thus will make some more simulations run in parallel when run from LAMMPS-GUI (since it cannot work with MPI).

As always, bug reports and all kinds of positive or negative feedback are welcome.

5 Likes

Thank you very much for developing and sharing this excellent GUI for LAMMPS.

I am using the macOS multiarch v2.0.2 release on an Apple Silicon M1 Mac, together with my local LAMMPS version 20250722-update3. So far, it has been working very well on my side, and the overall user experience is excellent.

The GUI is intuitive, convenient, and genuinely helpful for daily use. I really appreciate the effort you put into this project.

1 Like