Gradient and Disturbance

Added gradient calculation and a function to disturb the water surface.
Also added helper functions to map indices for code readability.