This function estimates the partial derivative of a
multi-dimensional function, sampled on a regular grid
data: An n-dimensional datacube, representing a function evenly
sampled on a grid.
dimension: The dimension (1-n_dimension(data)) over which to
calculate the partial derivative (df / d_dim). Defaults
order: 1-3, indicating how to approximate the derivative. All
methods implicitly use lagrange interpolation to express
each data point as a point on a polynomial, and then
differentiate that polynomial. Order=1,2,3 correspond to a
(3,5,7) point interpolation scheme. Defaults to 1.
A grid the same size as data, giving the partial derivative along
dimension at each data point
August 2010: Written by Chris Beaumont