x_old is now a x_diff since the last tree build. It is also implemented for the gparts.

Matthieu Schaller requested to merge x_old into master

Two changes here following the discussion in #122 (closed):

  • x_old is replaced by x_diff, i.e. the offset since the last tree-build. That makes the drift task a bit strange as they have to move x in one direction and x_diff in the other.
  • The gpart structure also gains an x_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 in engine_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).

Merge request reports