I am creating a recursive function that allows me to find the lowest downhill neighbour for any gridcell in a numpy array. This function is going to be called a huge amount of t