A point and its four nearest neighbors
An illustration of the five-point stencil in one and two dimensions (top, and bottom, respectively).
In numerical analysis , given a square grid in one or two dimensions, the five-point stencil of a point in the grid is a stencil made up of the point itself together with its four "neighbors". It is used to write finite difference approximations to derivatives at grid points. It is an example for numerical differentiation .
In one dimension, if the spacing between points in the grid is h , then the five-point stencil of a point x in the grid is
{
x
−
2
h
,
x
−
h
,
x
,
x
+
h
,
x
+
2
h
}
.
{\displaystyle \{x-2h,x-h,x,x+h,x+2h\}.}
1D first derivative [ edit ]
The first derivative of a function f of a real variable at a point x can be approximated using a five-point stencil as:[ 1]
f
′
(
x
)
≈
−
f
(
x
+
2
h
)
+
8
f
(
x
+
h
)
−
8
f
(
x
−
h
)
+
f
(
x
−
2
h
)
12
h
{\displaystyle f'(x)\approx {\frac {-f(x+2h)+8f(x+h)-8f(x-h)+f(x-2h)}{12h}}}
The center point f (x ) itself is not involved, only the four neighboring points.
This formula can be obtained by writing out the four Taylor series of f (x ± h ) and f (x ± 2h ) up to terms of h 3 (or up to terms of h 5 to get an error estimation as well) and solving this system of four equations to get f ′(x ). Actually, we have at points x + h and x − h :
f
(
x
±
h
)
=
f
(
x
)
±
h
f
′
(
x
)
+
h
2
2
f
″
(
x
)
±
h
3
6
f
(
3
)
(
x
)
+
O
1
±
(
h
4
)
.
(
E
1
±
)
.
{\displaystyle f(x\pm h)=f(x)\pm hf'(x)+{\frac {h^{2}}{2}}f''(x)\pm {\frac {h^{3}}{6}}f^{(3)}(x)+O_{1\pm }(h^{4}).\qquad (E_{1\pm }).}
Evaluating
(
E
1
+
)
−
(
E
1
−
)
{\displaystyle (E_{1+})-(E_{1-})}
gives us
f
(
x
+
h
)
−
f
(
x
−
h
)
=
2
h
f
′
(
x
)
+
h
3
3
f
(
3
)
(
x
)
+
O
1
(
h
4
)
.
(
E
1
)
.
{\displaystyle f(x+h)-f(x-h)=2hf'(x)+{\frac {h^{3}}{3}}f^{(3)}(x)+O_{1}(h^{4}).\qquad (E_{1}).}
The residual term O1 (h 4 ) should be of the order of h 5 instead of h 4 because if the terms of h 4 had been written out in (E 1+ ) and (E 1− ), it can be seen that they would have canceled each other out by f (x + h ) − f (x − h ) . But for this calculation, it is left like that since the order of error estimation is not treated here (cf below).
Similarly, we have
f
(
x
±
2
h
)
=
f
(
x
)
±
2
h
f
′
(
x
)
+
4
h
2
2
!
f
″
(
x
)
±
8
h
3
3
!
f
(
3
)
(
x
)
+
O
2
±
(
h
4
)
.
(
E
2
±
)
{\displaystyle f(x\pm 2h)=f(x)\pm 2hf'(x)+{\frac {4h^{2}}{2!}}f''(x)\pm {\frac {8h^{3}}{3!}}f^{(3)}(x)+O_{2\pm }(h^{4}).\qquad (E_{2\pm })}
and
(
E
2
+
)
−
(
E
2
−
)
{\displaystyle (E_{2+})-(E_{2-})}
gives us
f
(
x
+
2
h
)
−
f
(
x
−
2
h
)
=
4
h
f
′
(
x
)
+
8
h
3
3
f
(
3
)
(
x
)
+
O
2
(
h
4
)
.
(
E
2
)
.
{\displaystyle f(x+2h)-f(x-2h)=4hf'(x)+{\frac {8h^{3}}{3}}f^{(3)}(x)+O_{2}(h^{4}).\qquad (E_{2}).}
In order to eliminate the terms of ƒ (3) (x ), calculate 8 × (E 1 ) − (E 2 )
8
f
(
x
+
h
)
−
8
f
(
x
−
h
)
−
f
(
x
+
2
h
)
+
f
(
x
−
2
h
)
=
12
h
f
′
(
x
)
+
O
(
h
4
)
{\displaystyle 8f(x+h)-8f(x-h)-f(x+2h)+f(x-2h)=12hf'(x)+O(h^{4})}
thus giving the formula as above. Note: the coefficients of f in this formula, (8, -8,-1,1), represent a specific example of the more general Savitzky–Golay filter .
The error in this approximation is of order h 4 . That can be seen from the expansion[ 2]
−
f
(
x
+
2
h
)
+
8
f
(
x
+
h
)
−
8
f
(
x
−
h
)
+
f
(
x
−
2
h
)
12
h
=
f
′
(
x
)
−
1
30
f
(
5
)
(
x
)
h
4
+
O
(
h
5
)
{\displaystyle {\frac {-f(x+2h)+8f(x+h)-8f(x-h)+f(x-2h)}{12h}}=f'(x)-{\frac {1}{30}}f^{(5)}(x)h^{4}+O(h^{5})}
which can be obtained by expanding the left-hand side in a Taylor series . Alternatively, apply Richardson extrapolation to the central difference approximation to
f
′
(
x
)
{\displaystyle f'(x)}
on grids with spacing 2h and h .
1D higher-order derivatives [ edit ]
The centered difference formulas for five-point stencils approximating second, third, and fourth derivatives are
f
″
(
x
)
≈
−
f
(
x
+
2
h
)
+
16
f
(
x
+
h
)
−
30
f
(
x
)
+
16
f
(
x
−
h
)
−
f
(
x
−
2
h
)
12
h
2
f
(
3
)
(
x
)
≈
f
(
x
+
2
h
)
−
2
f
(
x
+
h
)
+
2
f
(
x
−
h
)
−
f
(
x
−
2
h
)
2
h
3
f
(
4
)
(
x
)
≈
f
(
x
+
2
h
)
−
4
f
(
x
+
h
)
+
6
f
(
x
)
−
4
f
(
x
−
h
)
+
f
(
x
−
2
h
)
h
4
{\displaystyle {\begin{aligned}f''(x)&\approx {\frac {-f(x+2h)+16f(x+h)-30f(x)+16f(x-h)-f(x-2h)}{12h^{2}}}\\[1ex]f^{(3)}(x)&\approx {\frac {f(x+2h)-2f(x+h)+2f(x-h)-f(x-2h)}{2h^{3}}}\\[1ex]f^{(4)}(x)&\approx {\frac {f(x+2h)-4f(x+h)+6f(x)-4f(x-h)+f(x-2h)}{h^{4}}}\end{aligned}}}
The errors in these approximations are O (h 4 ), O (h 2 ) and O (h 2 ) respectively.[ 2]
Relationship to Lagrange interpolating polynomials [ edit ]
As an alternative to deriving the finite difference weights from the Taylor series, they may be obtained by differentiating the Lagrange polynomials
ℓ
j
(
ξ
)
=
∏
i
=
0
,
i
≠
j
k
ξ
−
x
i
x
j
−
x
i
,
{\displaystyle \ell _{j}(\xi )=\prod _{i=0,\,i\neq j}^{k}{\frac {\xi -x_{i}}{x_{j}-x_{i}}},}
where the interpolation points are
x
0
=
x
−
2
h
,
x
1
=
x
−
h
,
x
2
=
x
,
x
3
=
x
+
h
,
x
4
=
x
+
2
h
.
{\displaystyle x_{0}=x-2h,\quad x_{1}=x-h,\quad x_{2}=x,\quad x_{3}=x+h,\quad x_{4}=x+2h.}
Then, the quartic polynomial
p
4
(
x
)
{\displaystyle p_{4}(x)}
interpolating f (x ) at these five points is
p
4
(
x
)
=
∑
j
=
0
4
f
(
x
j
)
ℓ
j
(
x
)
{\displaystyle p_{4}(x)=\sum _{j=0}^{4}f(x_{j})\ell _{j}(x)}
and its derivative is
p
4
′
(
x
)
=
∑
j
=
0
4
f
(
x
j
)
ℓ
j
′
(
x
)
.
{\displaystyle p_{4}'(x)=\sum _{j=0}^{4}f(x_{j})\ell '_{j}(x).}
So, the finite difference approximation of f ′(x ) at the middle point x = x 2 is
f
′
(
x
2
)
=
ℓ
0
′
(
x
2
)
f
(
x
0
)
+
ℓ
1
′
(
x
2
)
f
(
x
1
)
+
ℓ
2
′
(
x
2
)
f
(
x
2
)
+
ℓ
3
′
(
x
2
)
f
(
x
3
)
+
ℓ
4
′
(
x
2
)
f
(
x
4
)
+
O
(
h
4
)
{\displaystyle f'(x_{2})=\ell _{0}'(x_{2})f(x_{0})+\ell _{1}'(x_{2})f(x_{1})+\ell _{2}'(x_{2})f(x_{2})+\ell _{3}'(x_{2})f(x_{3})+\ell _{4}'(x_{2})f(x_{4})+O(h^{4})}
Evaluating the derivatives of the five Lagrange polynomials at x = x 2 gives the same weights as above. This method can be more flexible as the extension to a non-uniform grid is quite straightforward.
In two dimensions, if for example the size of the squares in the grid is h by h , the five point stencil of a point (x , y ) in the grid is
{
(
x
−
h
,
y
)
,
(
x
,
y
)
,
(
x
+
h
,
y
)
,
(
x
,
y
−
h
)
,
(
x
,
y
+
h
)
}
,
{\displaystyle \{(x-h,y),(x,y),(x+h,y),(x,y-h),(x,y+h)\},}
forming a pattern that is also called a quincunx . This stencil is often used to approximate the Laplacian of a function of two variables:
∇
2
f
(
x
,
y
)
≈
f
(
x
−
h
,
y
)
+
f
(
x
+
h
,
y
)
+
f
(
x
,
y
−
h
)
+
f
(
x
,
y
+
h
)
−
4
f
(
x
,
y
)
h
2
.
{\displaystyle \nabla ^{2}f(x,y)\approx {\frac {f(x-h,y)+f(x+h,y)+f(x,y-h)+f(x,y+h)-4f(x,y)}{h^{2}}}.}
The error in this approximation is O (h 2 ),[ 3] which may be explained as follows:
From the 3 point stencils for the second derivative of a function with respect to x and y:
∂
2
f
∂
x
2
=
f
(
x
+
Δ
x
,
y
)
+
f
(
x
−
Δ
x
,
y
)
−
2
f
(
x
,
y
)
Δ
x
2
−
2
f
(
4
)
(
x
,
y
)
4
!
Δ
x
2
+
⋯
∂
2
f
∂
y
2
=
f
(
x
,
y
+
Δ
y
)
+
f
(
x
,
y
−
Δ
y
)
−
2
f
(
x
,
y
)
Δ
y
2
−
2
f
(
4
)
(
x
,
y
)
4
!
Δ
y
2
+
⋯
{\displaystyle {\begin{aligned}{\frac {\partial ^{2}f}{\partial x^{2}}}&={\frac {f\left(x+\Delta x,y\right)+f\left(x-\Delta x,y\right)-2f(x,y)}{\Delta x^{2}}}-2{\frac {f^{(4)}(x,y)}{4!}}\Delta x^{2}+\cdots \\[1ex]{\frac {\partial ^{2}f}{\partial y^{2}}}&={\frac {f\left(x,y+\Delta y\right)+f\left(x,y-\Delta y\right)-2f(x,y)}{\Delta y^{2}}}-2{\frac {f^{(4)}(x,y)}{4!}}\Delta y^{2}+\cdots \end{aligned}}}
If we assume
Δ
x
=
Δ
y
=
h
{\displaystyle \Delta x=\Delta y=h}
:
∇
2
f
=
∂
2
f
∂
x
2
+
∂
2
f
∂
y
2
=
f
(
x
+
h
,
y
)
+
f
(
x
−
h
,
y
)
+
f
(
x
,
y
+
h
)
+
f
(
x
,
y
−
h
)
−
4
f
(
x
,
y
)
h
2
−
4
f
(
4
)
(
x
,
y
)
4
!
h
2
+
⋯
=
f
(
x
+
h
,
y
)
+
f
(
x
−
h
,
y
)
+
f
(
x
,
y
+
h
)
+
f
(
x
,
y
−
h
)
−
4
f
(
x
,
y
)
h
2
+
O
(
h
2
)
{\displaystyle {\begin{aligned}\nabla ^{2}f&={\frac {\partial ^{2}f}{\partial x^{2}}}+{\frac {\partial ^{2}f}{\partial y^{2}}}\\[1ex]&={\frac {f\left(x+h,y\right)+f\left(x-h,y\right)+f\left(x,y+h\right)+f\left(x,y-h\right)-4f(x,y)}{h^{2}}}-4{\frac {f^{(4)}(x,y)}{4!}}h^{2}+\cdots \\[1ex]&={\frac {f\left(x+h,y\right)+f\left(x-h,y\right)+f\left(x,y+h\right)+f\left(x,y-h\right)-4f(x,y)}{h^{2}}}+O\left(h^{2}\right)\\\end{aligned}}}
^ Sauer, Timothy (2012). Numerical Analysis . Pearson. p. 250. ISBN 978-0-321-78367-7 .
^ a b Abramowitz & Stegun, Table 25.2
^ Abramowitz & Stegun, 25.3.30