Finite difference


A finite difference is a mathematical expression of the form. Finite differences are often used as approximations of derivatives, such as in numerical differentiation.
The difference operator, commonly denoted, is the operator that maps a function to the function defined by
A difference equation is a functional equation that involves the finite difference operator in the same way as a differential equation involves derivatives. There are many similarities between difference equations and differential equations. Certain recurrence relations can be written as difference equations by replacing iteration notation with finite differences.
In numerical analysis, finite differences are widely used for approximating derivatives, and the term "finite difference" is often used as an abbreviation of "finite difference approximation of derivatives".
Finite differences were introduced by Brook Taylor in 1715 and have also been studied as abstract self-standing mathematical objects in works by George Boole, L. M. Milne-Thomson, and . Finite differences trace their origins back to one of Jost Bürgi's algorithms and work by others including Isaac Newton. The formal calculus of finite differences can be viewed as an alternative to the calculus of infinitesimals.

Basic types

Three basic types are commonly considered: forward, backward, and central finite differences.
A ', denoted of a function is a function defined as
Depending on the application, the spacing may be variable or constant. When not specified, the default value for is 1; that is,
A '
uses the function values at and, instead of the values at
Finally, the is given by

Relation with derivatives

The approximation of derivatives by finite differences plays a central role in finite difference methods for the numerical solution of differential equations, especially boundary value problems.
The derivative of a function at a point is defined by the limit
If has a fixed value instead of approaching zero, then the right-hand side of the above equation would be written
Hence, the forward difference divided by approximates the derivative when is small. The error in this approximation can be derived from Taylor's theorem. Assuming that is twice differentiable, we have
The same formula holds for the backward difference:
However, the central difference yields a more accurate approximation. If is three times differentiable,
The main problem with the central difference method, however, is that oscillating functions can yield zero derivative. If for odd, and for even, then if it is calculated with the central difference scheme. This is particularly troublesome if the domain of is discrete. See also Symmetric derivative.
Authors for whom finite differences mean finite difference approximations define the forward/backward/central differences as the quotients given in this section.

Higher-order differences

In an analogous way, one can obtain finite difference approximations to higher order derivatives and differential operators. For example, by using the above central difference formula for and and applying a central difference formula for the derivative of at, we obtain the central difference approximation of the second derivative of
;Second-order central :
Similarly we can apply other differencing formulas in a recursive manner.
;Second-order forward :
;Second-order backward :
More generally, the -th order forward, backward, and central differences are given by, respectively,
;Forward :
;Backward :
;Central :
These equations use binomial coefficients after the summation sign shown as Each row of Pascal's triangle provides the coefficient for each value of
Note that the central difference will, for odd, have multiplied by non-integers. This is often a problem because it amounts to changing the interval of discretization. The problem may be remedied substituting the average of and
Forward differences applied to a sequence are sometimes called the binomial transform of the sequence, and have a number of interesting combinatorial properties. Forward differences may be evaluated using the Nörlund-Rice integral. The integral representation for these types of series is interesting, because the integral can often be evaluated using asymptotic expansion or saddle-point techniques; by contrast, the forward difference series can be extremely hard to evaluate numerically, because the binomial coefficients grow rapidly for large.
The relationship of these higher-order differences with the respective derivatives is straightforward,
Higher-order differences can also be used to construct better approximations. As mentioned above, the first-order difference approximates the first-order derivative up to a term of order. However, the combination
approximates up to a term of order. This can be proven by expanding the above expression in Taylor series, or by using the calculus of finite differences, explained below.
If necessary, the finite difference can be centered about any point by mixing forward, backward, and central differences.
Sometimes, the low order derivatives of a function may be analytically known, but high order derivatives are not. In these cases, the high order derivatives can be approximated by finite difference of low order derivatives, which is often more accurate and numerically more stable than finite difference of the function itself. This is sometimes called seminumerical differentiation. For example, when the first order derivative is available but the second order derivative is not, the latter can be approximated by second-order central difference of :

Polynomials

For a given polynomial of degree, expressed in the function, with real numbers and and lower order terms marked as :
After pairwise differences, the following result can be achieved, where is a real number marking the arithmetic difference:
Only the coefficient of the highest-order term remains. As this result is constant with respect to, any further pairwise differences will have the value.

Inductive proof

Base case

Let be a polynomial of degree :
This proves it for the base case.

Inductive step

Let be a polynomial of degree where and the coefficient of the highest-order term be. Assuming the following holds true for all polynomials of degree :
Let be a polynomial of degree. With one pairwise difference:
As, this results in a polynomial of degree, with as the coefficient of the highest-order term. Given the assumption above and pairwise differences, it can be found that:
This completes the proof.

Application

This identity can be used to find the lowest-degree polynomial that intercepts a number of points where the difference on the x-axis from one point to the next is a constant. For example, given the following points:
xy
14
4109
7772
102641
136364

We can use a differences table, where for all cells to the right of the first, the following relation to the cells in the column immediately to the left exists for a cell, with the top-leftmost cell being at coordinate :
To find the first term, the following table can be used:
14---
4109105--
7772663558-
10264118691206648
13636437231854648

This arrives at a constant. The arithmetic difference is, as established above. Given the number of pairwise differences needed to reach the constant, it can be surmised this is a polynomial of degree. Thus, using the identity above:
Solving for, it can be found to have the value. Thus, the first term of the polynomial is.
Then, subtracting out the first term, which lowers the polynomial's degree, and finding the finite difference again:
1--
4−147-
7−453−306
10−759−306
13−1065−306

Here, the constant is achieved after only two pairwise differences, thus the following result:
Solving for, which is, the polynomial's second term is.
Moving on to the next term, by subtracting out the second term:
1-
4108
7108
10108
13108

Thus the constant is achieved after only one pairwise difference:
It can be found that and thus the third term of the polynomial is. Subtracting out the third term:
1
4
7
10
13

Without any pairwise differences, it is found that the 4th and final term of the polynomial is the constant. Thus, the lowest-degree polynomial intercepting all the points in the first table is found:

Arbitrarily sized kernels

Using linear algebra one can construct finite difference approximations which utilize an arbitrary number of points to the left and a number of points to the right of the evaluation point, for any order derivative. This involves solving a linear system such that the Taylor expansion of the sum of those points around the evaluation point best approximates the Taylor expansion of the desired derivative. Such formulas can be represented graphically on a hexagonal or diamond-shaped grid.
This is useful for differentiating a function on a grid, where, as one approaches the edge of the grid, one must sample fewer and fewer points on one side.
Finite difference approximations for non-standard stencils given an arbitrary stencil and a desired derivative order may be constructed.

Properties

In differential equations

An important application of finite differences is in numerical analysis, especially in numerical differential equations, which aim at the numerical solution of ordinary and partial differential equations. The idea is to replace the derivatives appearing in the differential equation by finite differences that approximate them. The resulting methods are called finite difference methods.
Common applications of the finite difference method are in computational science and engineering disciplines, such as thermal engineering, fluid mechanics, etc.

Newton's series

The Newton series consists of the terms of the Newton forward difference equation, named after Isaac Newton; in essence, it is the Gregory–Newton interpolation formula, first published in his Principia Mathematica in 1687, namely the discrete analog of the continuous Taylor expansion,
which holds for any polynomial function and for many analytic functions. Here, the expression
is the binomial coefficient, and
is the "falling factorial" or "lower factorial", while the empty product is defined to be 1. In this particular case, there is an assumption of unit steps for the changes in the values of of the generalization below.
Note the formal correspondence of this result to Taylor's theorem. Historically, this, as well as the Chu–Vandermonde identity,
, are included in the observations that matured to the system of umbral calculus.
Newton series expansions can be superior to Taylor series expansions when applied to discrete quantities like quantum spins, [Normal_order#Bosonic_operator_functions|bosonic operator functions] or discrete counting statistics.
To illustrate how one may use Newton's formula in actual practice, consider the first few terms of doubling the Fibonacci sequence One can find a polynomial that reproduces these values, by first computing a difference table, and then substituting the differences that correspond to into the formula as follows,
For the case of nonuniform steps in the values of, Newton computes the divided differences,
the series of products,
and the resulting polynomial is the scalar product,
In analysis with -adic numbers, Mahler's theorem states that the assumption that is a polynomial function can be weakened all the way to the assumption that is merely continuous.
Carlson's theorem provides necessary and sufficient conditions for a Newton series to be unique, if it exists. However, a Newton series does not, in general, exist.
The Newton series, together with the Stirling series and the Selberg series, is a special case of the general difference series, all of which are defined in terms of suitably scaled forward differences.
In a compressed and slightly more general form and equidistant nodes the formula reads

Calculus of finite differences

The forward difference can be considered as an operator, called the difference operator, which maps the function to. This operator amounts to where is the shift operator with step, defined by and is the identity operator.
The finite difference of higher orders can be defined in recursive manner as Another equivalent definition is
The difference operator is a linear operator, as such it satisfies
It also satisfies a special Leibniz rule:
Similar Leibniz rules hold for the backward and central differences.
Formally applying the Taylor series with respect to, yields the operator equation
where denotes the conventional, continuous derivative operator, mapping to its derivative The expansion is valid when both sides act on analytic functions, for sufficiently small ; in the special case that the series of derivatives terminates the expression is exact, for all finite stepsizes, Thus and formally inverting the exponential yields
This formula holds in the sense that both operators give the same result when applied to a polynomial.
Even for analytic functions, the series on the right is not guaranteed to converge; it may be an asymptotic series. However, it can be used to obtain more accurate approximations for the derivative. For instance, retaining the first two terms of the series yields the second-order approximation to mentioned at the end of the section .
The analogous formulas for the backward and central difference operators are
The calculus of finite differences is related to the umbral calculus of combinatorics. This remarkably systematic correspondence is due to the identity of the commutators of the umbral quantities to their continuum analogs,
A large number of formal differential relations of standard calculus involving
functions thus systematically map to umbral finite-difference analogs involving
For instance, the umbral analog of a monomial is a generalization of the above falling factorial,
so that
hence the above Newton interpolation formula, and so on.
For example, the umbral sine is
As in the continuum limit, the eigenfunction of also happens to be an exponential,
and hence Fourier sums of continuum functions are readily, faithfully mapped to umbral Fourier sums, i.e., involving the same Fourier coefficients multiplying these umbral basis exponentials. This umbral exponential thus amounts to the exponential generating function of the Pochhammer symbols.
Thus, for instance, the Dirac delta function maps to its umbral correspondent, the cardinal sine function
and so forth. Difference equations can often be solved with techniques very similar to those for solving differential equations.
The inverse operator of the forward difference operator, so then the umbral integral, is the indefinite sum or antidifference operator.

Rules for calculus of finite difference operators

Analogous to rules for finding the derivative, we have:Constant rule: If is a constant, then Linearity: If and are constants,
All of the above rules apply equally well to any difference operator as to, including and Product rule: Quotient rule: or Summation rules:
See references.

Generalizations

  • A generalized finite difference is usually defined as where is its coefficient vector. An infinite difference is a further generalization, where the finite sum above is replaced by an infinite series. Another way of generalization is making coefficients depend on point :, thus considering weighted finite difference. Also one may make the step depend on point :. Such generalizations are useful for constructing different modulus of continuity.
  • The generalized difference can be seen as the polynomial rings. It leads to difference algebras.
  • Difference operator generalizes to Möbius inversion over a partially ordered set.
  • As a convolution operator: Via the formalism of incidence algebras, difference operators and other Möbius inversion can be represented by convolution with a function on the poset, called the Möbius function ; for the difference operator, is the sequence.

Multivariate finite differences

Finite differences can be considered in more than one variable. They are analogous to partial derivatives in several variables.
Some partial derivative approximations are:
Alternatively, for applications in which the computation of is the most costly step, and both first and second derivatives must be computed, a more efficient formula for the last case is
since the only values to compute that are not already needed for the previous four equations are and.
For functions with variables, evaluating the full -th order derivative tensor via finite difference requires calls of the function, or calls of the -th order derivative of the function . However, for many classes of functions, the -th order derivative tensor is sparse, or its off-diagonal blocks may have low rank. In these cases, algorithms may exist that can numerically estimate the -th order derivative tensor using less than calls of the -th order derivative, for example when and ; in the latter case it is possible to estimate the Hessian matrix using only gradients, instead of gradients as would be required by the conventional finite difference algorithm.