trying a functional approach to smoothed particle hydrodynamics with Haskell