Skip to content

Correct integration in time of the mesh forces

Complete rewrite of the time integration of the gravity mesh forces. This fixes the accuracy issues seen in the large-scale power-spectrum in cosmological runs.

This includes:

  • Removing the mesh_force task.
  • Introduce a global time-step for the mesh calculation.
  • Compute the mesh forces when that time-step happens and not when we rebuild.
  • Rewrite the operations in the kick tasks to simplify the with/without cosmology logic.
  • Add the mesh accelerations to the gpart, remove the gravity acceleration from the xpart.
  • Remove the alignment constraint on the gparts to reduce the memory footprint.
  • Add an option to not compute the potentials.
  • Remove the option to dither the particles at tree rebuilds. This was not the solution to the problem and was not implemented in an efficient way.

Todo:

  • Clean-up the mesh time-step calculation.
  • Deal with exact gravity force checks.
  • Interpolation of the hydro velocities in snapshot.
  • Deal with the time-step limiter.
  • Deal with the time-step synchronization.
  • Deal with the potential.
  • Deal with star formation.
  • Fix statistics.
  • Documentation of the whole gravity scheme parameters.
Edited by Matthieu Schaller

Merge request reports

Loading