Problem
Approximate a higher derivative of a univariate function f(x) at a point x0. We will assume that we are given a sequence of points (xi, f(xi)) around the point of interest (either before or around). We will not look at iteration because the process of Richardson extrapolation converges significantly faster.
Assumptions
We need to assume the function has an nth derivative if we are to bound the error on our approximation.
Tools
We will use interpolation.
Process
If we are to evaluate the second derivative at the point (xi, f(xi)) and have access to the two surrounding points, (xi − 1, f(xi − 1)) and (xi + 1, f(xi + 1)), then we may find the interpolating polynomial, differentiate it twice, and evaluate that derivative at xi:
This is simply another form of the formula
where h is the distance between the points, that is, h = xi - xi − 1.
If we have access to two points on either side of xi, we can calculate
where h = xi - xi − 1.
This is another form of the formula:
We could perform the same operations with higher derivatives, however, it should be noted that to calculate the nth derivative, we require at least n + 1 points.
Copyright ©2005 by Douglas Wilhelm Harder. All rights reserved.