LAMMPS: A Case Study For Applying Modern Software Engineering to an Established Research Software Package
Axel Kohlmeyer, Richard Berger

TL;DR
This paper examines how modern software engineering practices have been applied to LAMMPS, a long-established research software, improving its maintainability, quality, and user accessibility, which contributed to its increased popularity.
Contribution
It provides a case study of integrating modern software engineering methods into an existing research software package to enhance development, maintenance, and user engagement.
Findings
Improved code quality and maintainability.
Enhanced ease of extending the software.
Increased popularity among researchers with limited software skills.
Abstract
We review various changes made in recent years to the software development process of the LAMMPS simulation software package and the software itself. We discuss how those changes have impacted the effort and workflow required to develop and maintain a software package that has been in existence for more than 30 years and where a significant part of the code base is contributed by external developers. We also look into how those changes have affected the code quality and ease of modifying and extending the software while at the same time its audience has changed from a cohort with a generally strong software development background to a group containing many researchers with limited software development skills. We explore how this contributes to LAMMPS' significant growth in popularity in that time. We close with an outlook on future steps.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSimulation Techniques and Applications · Scientific Computing and Data Management · Modeling and Simulation Systems
