Are you an EPFL student looking for a semester project?
Work with us on data science and visualisation projects, and deploy your project as an app on top of Graph Search.
In numerical analysis, numerical differentiation algorithms estimate the derivative of a mathematical function or function subroutine using values of the function and perhaps other knowledge about the function. The simplest method is to use finite difference approximations. A simple two-point estimation is to compute the slope of a nearby secant line through the points (x, f(x)) and (x + h, f(x + h)). Choosing a small number h, h represents a small change in x, and it can be either positive or negative. The slope of this line is This expression is Newton's difference quotient (also known as a first-order divided difference). The slope of this secant line differs from the slope of the tangent line by an amount that is approximately proportional to h. As h approaches zero, the slope of the secant line approaches the slope of the tangent line. Therefore, the true derivative of f at x is the limit of the value of the difference quotient as the secant lines get closer and closer to being a tangent line: Since immediately substituting 0 for h results in indeterminate form , calculating the derivative directly can be unintuitive. Equivalently, the slope could be estimated by employing positions (x − h) and x. Another two-point formula is to compute the slope of a nearby secant line through the points (x - h, f(x − h)) and (x + h, f(x + h)). The slope of this line is This formula is known as the symmetric difference quotient. In this case the first-order errors cancel, so the slope of these secant lines differ from the slope of the tangent line by an amount that is approximately proportional to . Hence for small values of h this is a more accurate approximation to the tangent line than the one-sided estimation. However, although the slope is being computed at x, the value of the function at x is not involved. The estimation error is given by where is some point between and . This error does not include the rounding error due to numbers being represented and calculations being performed in limited precision.
Alfio Quarteroni, Francesco Regazzoni, Stefano Pagani
Marco Picasso, Paride Passelli
Daniel Kressner, Axel Elie Joseph Séguin, Gianluca Ceruti