Skip to content

es 502 release notes

Jean-Noël Grad edited this page Jul 27, 2026 · 2 revisions

These are the draft release notes for ESPResSo 5.0.2 (milestone).

ESPResSo 5.0.2

This release provides a number of corrections for the ESPResSo 5.0 line. We recommend that this release be used for all production simulations. The interface has not been changed between ESPResSo 5.0.1 and 5.0.2. However, some bugs were discovered which can affect simulation results. Please find the list of changes below. The numbers in brackets refer to ticket numbers on https://github.com/espressomd/espresso

Bug fixes

  • The multiple tau correlator finalize() method no longer discards compression results (#5335).
  • The lattice-Boltzmann method now properly exchanges LB populations during ghost communication (#5382). A regression was introduced in release 5.0.0 that could lead to incorrect LB flux density profiles immediately after updating a LB node density from the Python interface.
  • FENE bonds compressed beyond their limit now throw an exception during energy calculation (#5352).
  • Zero-length vectors are now properly handled during vector normalization (#5349). The old behavior would lead to divisions by zero in the thermalized Stoner–Wohlfarth model for magnetodynamics.
  • Mass-related analysis functions now throw an exception when no particle is found (#5372).
  • ParticleSlice objects initialized with unsorted pids now return particle properties in the requested order, rather than in ascending order (#5336).
  • The DPD pressure tensor now includes the noise contribution (#5332). The DPD noise contribution was missing since release 4.1.0.
  • The DPD stress tensor was replaced with the DPD pressure tensor: system.analysis.dpd_stress() was removed in favor of system.analysis.dpd_pressure() and espressomd.observables.DPDStress was removed in favor of espressomd.observables.DPDPressure (#5398). The removed features were returning the negative of the transpose of the pressure tensor.
  • DPD force calculation is now skipped in excluded pairs (#5343).
  • The DipolarP3M method now requires a prefactor argument (#5378).
  • The SpheroCylinder shape no longer generates random constraint distances and forces when the direction argument is missing (#5344).
  • The Torus shape no longer random or NaN distances and forces when a particle lies on the torus symmetry axis, torus surface, or torus core circle (#5346).
  • hdf5 files can now write particle charges and forces independently of each other (#5366). Previously, selecting the forces would automatically select charges too, and vice-versa. The regression was introduced in March 2022 and affected all versions since the 4.2.0 release.
  • EK species added to an EK container must now have the same tau (#5383).
  • LB node populations must now be exactly 19 values (#5384).
  • LBVelocityProfile optional defaults are no longer ignored (#5375).
  • system.analysis.angular_momentum() and system.analysis.center_of_mass() now accept p_type=-1 as a sentinel value to select all non-virtual particles (#5373).
  • The cluster analysis fractal_dimension() method now generates a clear error message when argument dr is missing (#5374).
  • system.analysis.calc_rh() now reject chains shorter than 2 beads (#5371).
  • Tabulated potentials now support constant potentials with a single bin (#5369).
  • Checkpointing now works for systems without a time step (#5365).

Improved functionality

Improved performance

Improved documentation

Under the hood changes

  • Support for the nvc toolchain as C compiler and the nvc++ and nvcc toolchains as C++ host compilers was improved (#5394).
  • Relocatable device code and separable CUDA compilation are no longer enabled by default by the CMake project (#5394).
  • Deprecated C++20 features were removed to allow building the project in C++26 mode (#5397).
  • The Caliper and NLopt version requirements were increased (#5394, #5397).

Clone this wiki locally