Compact finite difference

The compact finite difference formulation, or Hermitian formulation, is a numerical method to compute finite difference approximations. Such approximations tend to be more accurate for their stencil size (i.e. their compactness) and, for hyperbolic problems, have favorable dispersive error and dissipative error properties when compared to explicit schemes.[1] A disadvantage is that compact schemes are implicit and require to solve a diagonal matrix system for the evaluation of interpolations or derivatives at all grid points. Due to their excellent stability properties, compact schemes are a popular choice for use in higher-order numerical solvers for the Navier-Stokes Equations.

Example edit

The classical Pade scheme for the first derivative at a cell with index   ( ) reads;

 

Where   is the spacing between points with index  . The equation yields a fourth-order accurate solution for   when supplemented with suitable boundary conditions (typically periodic). When compared to the 4th-order accurate central explicit method;

 

the former (implicit) method is compact as it only uses values on a 3-point stencil instead of 5.

Derivation of compact schemes edit

Compact schemes are derived using a Taylor series expansion. Say we wish to construct a compact scheme with a three-point stencil (as in the example):

 

From a symmetry argument we deduce  ,   and  , resulting in a two-parameter system,

 

We write the expansions around   up to a reasonable number of terms and using notation  ,

 

Each column on the right-hand side gives an equation for the coefficients  ,

 

We now have two equations for two unknowns and therefore stop checking for higher-order-term equations.

 

which is indeed the scheme from the example.

Evaluation of a compact scheme edit

List of compact schemes edit

First derivative   edit

4th order central scheme:

 


6th order central scheme:

 


References edit

  1. ^ Lele, S.K. (August 1992). "Compact finite difference schemes with spectral-like resolution". Journal of Computational Physics. 103 (1): 16–43. Bibcode:1992JCoPh.103...16L. doi:10.1016/0021-9991(92)90324-R.