Approximation of derivative of discrete function

1.4k Views Asked by At

I have a function of which I only know the value of at some discrete points. Now I want to calculate the derivative of this function. The approximation of taking the difference of two consecutive values is not good enough for my purpose. In a book about my field of study they propose the formula

$\Delta f(x) = (\sum_{l=-L}^L l * f(x+l)) / (\sum_{l=-L}^L l^2)$

to calculate a better approximation of the derivative. They approximate the discrete function by a polynomial in an interval of $2L+1$ discrete steps. L usually takes a value between 1 and 3 in this case. Indeed this formula archives better results but I would like to know a bit more about this formula. How do we arrive there? Does it have a name? Are there other approximations that are better/worse? Unluckily I was not able to find this formula or a similar one on-line.

2

There are 2 best solutions below

3
On BEST ANSWER

This looks just as the solution of the equation for the least-square problem for the model $$y=a x$$ based on $n$ data points ($x_i,y_i$) $$a=\frac{\sum_{i=1}^n{x_i y_i}}{\sum_{i=1}^n{x_i ^2}}$$ I am sure you see the analogy.

0
On

If your data is noisy, the Savitzky-Golay formulas can be a good choice. They combine smoothing with differentiation and can be computed for different interval sizes.