Compact stencil

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
File:CompactStencil.svg
A 2D compact stencil using all 8 adjacent nodes, plus the center node (in red).

In mathematics, especially in the areas of numerical analysis called numerical partial differential equations, a compact stencil is a type of stencil that uses only nine nodes for its discretization method in two dimensions. It uses only the center node and the adjacent nodes. For any structured grid utilizing a compact stencil in 1, 2, or 3 dimensions the maximum number of nodes is 3, 9, or 27 respectively. Compact stencils may be compared to non-compact stencils. Compact stencils are currently implemented in many partial differential equation solvers, including several in the topics of CFD, FEA, and other mathematical solvers relating to PDE's[1][2]

Two Point Stencil Example

[edit | edit source]

The two point stencil for the first derivative of a function is given by:

f(x0)=f(x0+h)f(x0h)2h+𝒪(h2).

This is obtained from the Taylor series expansion of the first derivative of the function given by:

f(x0)=f(x0+h)f(x0)hf(x0)2!hf(3)(x0)3!h2f(4)(x0)4!h3+.

Replacing h with h, we have:

f(x0)=f(x0h)f(x0)h+f(x0)2!hf(3)(x0)3!h2+f(4)(x0)4!h3+.

Addition of the above two equations together results in the cancellation of the terms in odd powers of h:

2f(x0)=f(x0+h)f(x0)hf(x0h)f(x0)h2f(3)(x0)3!h2+f(x0)=f(x0+h)f(x0h)2hf(3)(x0)3!h2+=f(x0+h)f(x0h)2h+𝒪(h2).

Three Point Stencil Example

[edit | edit source]

For example, the three point stencil for the second derivative of a function is given by:

f(x0)=f(x0+h)+f(x0h)2f(x0)h2+𝒪(h2).

This is obtained from the Taylor series expansion of the first derivative of the function given by: f(x0)=f(x0+h)f(x0)hf(x0)2!hf(3)(x0)3!h2f(4)(x0)4!h3+.

Replacing h with h, we have: f(x0)=f(x0h)f(x0)h+f(x0)2!hf(3)(x0)3!h2+f(4)(x0)4!h3+.

Subtraction of the above two equations results in the cancellation of the terms in even powers of h: 0=f(x0+h)f(x0)h+f(x0h)f(x0)h2f(2)(x0)2!h2f(4)(x0)4!h3+.f(2)(x0)=f(x0+h)+f(x0h)2f(x0)h22f(4)(x0)4!h2+.f(2)(x0)=f(x0+h)+f(x0h)2f(x0)h2+𝒪(h2).

See also

[edit | edit source]

References

[edit | edit source]
  1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  2. ^ Communications in Numerical Methods in Engineering, Copyright © 2008 John Wiley & Sons, Ltd.