3.15 Gradient discretisation

The discretisation of a gradient eqn is exclusively an explicit calculation using current values of eqn. The conservative form of gradient calculation is based on a surface integral.

PICT\relax \special {t4ht=

From the gradient definition in Sec. 2.23 , the discretisation is

 1 Z 1 X r = lVim!0 -V-- (dS ) ! V- Sf f: S f \relax \special {t4ht=
The face value eqn is generally interpolated from cell values using the linear scheme.

Point linear interpolation

While skewness is generally not a concern for advection discretisation, it deserves greater attention in gradient calculation. For “bad” meshes, e.g. containing elongated tetrahedral cells, the point linear scheme is often adopted to reduce skewness error.

Point linear interpolation uses: the value eqn, calculated using linear interpolation, which corresponds to the “face point” at the intersection of the line connecting cell centres and the face; and, values eqn at each vertex, interpolated from adjacent cells using inverse-distance weighting.

PICT\relax \special {t4ht=

The scheme breaks the polygonal face into triangles and calculates the average value eqn at the 2 vertices and face point for each triangle, area eqn. Point interpolation calculates the face value as the area-weighted average of triangle values, i.e. eqn.

Least squares gradient

A gradient calculation using a least squares finite difference method is sometimes used within the finite volume framework. The method calculates the gradient in a cell which, when used to extrapolate the cell value to centres of all neighbouring cells, minimises the error between extrapolated values and cell values.

For a given cell, a tensor eqn is calculated by summing over faces using the inverse distance weighting eqn, where eqn is the cell centre-centre vector:

 X 2 G = w id d d: f \relax \special {t4ht=
The gradient is then evaluated using the inverse of the tensor eqn and values in the neighbour (N) and current (P) cells:
 1-X 2 1 r ! V w idG d( N P): f \relax \special {t4ht=
Notes on CFD: General Principles - 3.15 Gradient discretisation