Skip to content

Commit b592aff

Browse files
committed
Add 4.2.2 release notes
1 parent bb71ac9 commit b592aff

File tree

1 file changed

+123
-0
lines changed

1 file changed

+123
-0
lines changed

NEWS

Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,129 @@
22
= ESPRESSO NEWS =
33
=================
44

5+
ESPResSo 4.2.2
6+
==============
7+
8+
This release provides a number of corrections for the ESPResSo 4.2 line.
9+
We recommend that this release be used for all production simulations.
10+
The interface has not been changed between ESPResSo 4.2.1 and 4.2.2.
11+
However, some bugs were discovered which can affect simulation results.
12+
Please find the list of changes below. The numbers in brackets refer to
13+
ticket numbers on https://github.com/espressomd/espresso
14+
15+
Improved documentation
16+
----------------------
17+
18+
* Installation instructions now mention the FFTW3 MPI dependency
19+
of long-range solvers and provide recommended version numbers
20+
for Jupyter Notebook dependencies (#4790).
21+
22+
* Installation instructions now mention Python environments (#4922).
23+
24+
* Observables not properly document return values, array shapes,
25+
and use a more consistent mathematical notation (#4898).
26+
27+
Bug fixes
28+
---------
29+
30+
* Fatal runtime errors due to MPI global variables lifetime
31+
were addressed (#4858). Older ESPResSo releases built with
32+
Boost 1.84 or later might randomly crash when exiting
33+
the Python interpreter.
34+
35+
* Virtual sites no longer contribute to the kinetic energy
36+
of the system (#4839). The regression was introduced
37+
in April 2021 and affected the 4.2 branch of ESPResSo.
38+
39+
* Inertialess tracers are now integrated along the z-axis (#4714).
40+
The regression was introduced in February 2022 and affected
41+
the 4.2 branch of ESPResSo.
42+
43+
* Inertialess tracers now throw an exception when attempting to use
44+
LB GPU with 2 or more MPI ranks (#4714). Before, tracers on non-root
45+
MPI ranks would be silently ignored by the CUDA kernels,
46+
and would have a constant velocity, either 0 if the particle never
47+
visited the fluid domain on the root rank, or the last known velocity
48+
if the particle was once on the root rank. This bug affected all
49+
ESPResSo versions.
50+
51+
* Particles close to the faces of the simulation box are now properly
52+
coupled to the LB fluid (#4827). Due to numerical instability, it was
53+
previously possible for particles to be outside the box simulation by
54+
a tiny amount and skip LB particle coupling. The probability of this
55+
bug occurring was low, but could be enhanced in simulations that
56+
purposefully placed particle near the faces of the simulation box:
57+
polymers sheared by Lees-Edwards boundary conditions, raspberry
58+
particles (colloids, bacteria, etc.) when crossing a periodic
59+
boundary, or cell membranes placed close to a periodic boundary.
60+
61+
* Resizing the box now throws a runtime error if there are constraints
62+
present (#4778), since constraint preconditions might no longer be
63+
fulfilled. For example, a wall constraint might end up outside the
64+
box boundaries when the box shrinks.
65+
66+
* Resizing the box via `system.box_l = new_box_l` now throws
67+
a runtime error if there are particles present, because particle
68+
position folding cannot be guaranteed to be correct (#4901);
69+
use `system.change_volume_and_rescale_particles()` instead,
70+
which properly rescales particle positions.
71+
72+
* The velocity Verlet NpT propagator doesn't apply friction and noise
73+
on angular velocities. ESPResSo now throws an error when NpT
74+
encounters a rotating particle (#4843). This bug affected all
75+
ESPResSo versions.
76+
77+
* The Brownian thermostat can no longer be configured with
78+
`act_on_virtual=True` due to an unresolved bug (#4295)
79+
that will be addressed in the next minor release.
80+
81+
* Restrictions on the number of MPI ranks have been lifted from the
82+
checkpointing mechanism (#4724). It is now possible to use
83+
checkpointing again in MPI-parallel simulations when the system
84+
contains LB boundaries or `Union` shape-based constraints.
85+
These restrictions had been introduced in 4.2.0 for technical
86+
reasons that have since been resolved.
87+
88+
* When passing an invalid value to a function that expects an input
89+
parameter of type `list` of size 3, an exception is now raised (#4911).
90+
Previously, some functions would print an error message and continue
91+
their execution with uninitialized data.
92+
93+
* The per-`type` and per-`mol_id` contributions from
94+
`system.analysis.energy()`, `system.analysis.pressure()`
95+
and `system.analysis.pressure_tensor()` now return the correct
96+
values (#4788). Older version of ESPResSo were confusing the
97+
particle `mol_id` with the particle `type`. The total pressure
98+
was unreliable when `mol_id` properties were set to non-zero values.
99+
100+
* The OpenGL visualizer now extracts the correct non-bonded potential
101+
parameter `sigma` when feature `WCA` is compiled in but `LENNARD_JONES`
102+
isn't (#4720). The regression was introduced in 4.2.1.
103+
104+
* Method `OifCell.elastic_forces()` no longer throws a `TypeError` (#4813).
105+
106+
* Benchmark scripts were adjusted to support large particle numbers (#4753).
107+
108+
Under the hood changes
109+
----------------------
110+
111+
* Several Clang 16 and GCC 13 compiler diagnostics have been addressed
112+
(#4715).
113+
114+
* A non-critical GCC C++20 deprecation warning in Cython-generated code
115+
was disabled (#4725).
116+
117+
* Several deprecation warnings emitted by CMake 3.27 have been silenced
118+
(#4792).
119+
120+
* Add support for setuptools version 67.3.0 and above (#4709).
121+
122+
* Add support for Python 3.12 in testsuites run by CTest (#4852).
123+
124+
* Python requirements have been updated (#4924).
125+
126+
* CI pipeline URLs have been fixed (#4736).
127+
5128
ESPResSo 4.2.1
6129
==============
7130

0 commit comments

Comments
 (0)