Describe the bug
If a Function object is created using, for example, a 3D array and the user sets the interpolation method different from shepard, it is accepting only 1 input when it should accept 2. There should be a protection so the user cannot define the interpolation method if a n-d array is given as input.
To Reproduce

Expected behavior

Also, the extrapolation method must be manually set for n-D arrays, meaning it is not optional.
