x_old is now a x_diff since the last tree build. It is also implemented for the gparts.
Two changes here following the discussion in #122 (closed):
-
x_old
is replaced byx_diff
, i.e. the offset since the last tree-build. That makes the drift task a bit strange as they have to movex
in one direction andx_diff
in the other. - The
gpart
structure also gains anx_old
field. This is necessary for the cases where we only have gparts and no parts. If we don't do this, the tree reconstruction is never triggered inengine_marktask()
.
A neat consequence is that we can store x_diff
as float and not as double. So the xpart
structure goes down to 32bytes in size (after alignment).