CFD Online Logo CFD Online URL
Home > Wiki > Diffusion term

Diffusion term

From CFD-Wiki

Revision as of 04:36, 5 December 2005 by Tsaad (Talk | contribs)
Jump to: navigation, search


Discretisation of the Diffusion Term


For a general control volume (orthogonal, non-orthogonal), the discretization of the diffusion term can be written in the following form
 \int_{S}\Gamma\nabla\phi\cdot{\rm{d\vec S}}  = \sum_{faces}\Gamma _f \nabla \phi _f  \cdot{\rm{\vec S_f}}

  • S denotes the surface area of the control volume
  • S_f denotes the area of a face for the control volume

As usual, the subscript f refers to a given face. The figure below describes the terminology used in the framework of a general non-orthogonal control volume
Non orthogonal CV terminology.jpg
A general non-orthogonal control volume

Note: The approaches those are discussed here are applicable to non-orthoganal meshes as well as orthogonal meshes.
A control volume in mesh is made up of set of faces enclosing it. Where S_f represents the magnitude of area of the face. And n represents the normal unit vector of the face under consideration.

If  \vec r_{P} and  \vec r_{N} are position vector of centroids of cells P and N respectively. Then, we define
 \overrightarrow{d_{PN}}=  \vec r_{P}  - \vec r_{N}

We wish to approaximate the diffusive flux  D_f  = \Gamma _f \nabla \phi _f  \cdot{\rm{\vec S_f}} at the face.

Approach 1

A first approach is to use a simple expression for estimating the gradient of a scalar normal to the face.

D_f  = \Gamma _f \nabla \phi _f  \cdot \vec S_f = \Gamma _f \left[ {\left( {\phi _N  - \phi _P } \right)\left| {{{\vec S_f} \over {\overrightarrow{d_{PN}}}}} \right|} \right]

where  \Gamma _f   is a suitable face average.

This approach is not very good when the non-orthogonality of the faces increases. If this is the case, it is advisable to use one of the following approaches.

Approach 2

We define the vector 
\vec \alpha {\rm{ = }}\frac{{{\rm{\vec {S_f}}}}}{{{\rm{\vec S_f}} \cdot {\overrightarrow{d_{PN}}}}}

giving us the expression:

D_f  = \Gamma _f \nabla \phi _f  \cdot{\rm{\vec S_f = }}\Gamma _{\rm{f}} \left[ {\left( {\phi _N  - \phi _P } \right)\vec \alpha  \cdot {\rm{\vec S_f + }}\bar \nabla \phi_f  \cdot {\rm{\vec S_f - }}\left( {\bar \nabla \phi_f  \cdot {\overrightarrow{d_{PN}}}} \right)\vec \alpha  \cdot {\rm{\vec S_f}}} \right]

where  \bar \nabla \phi _f  and  \Gamma _f   are suitable face averages.


  1. Ferziger, J.H. and Peric, M. (2001), Computational Methods for Fluid Dynamics, ISBN 3540420746, 3rd Rev. Ed., Springer-Verlag, Berlin..
  2. Hrvoje, Jasak (1996), "Error Analysis and Estimation for the Finite Volume Method with Applications to Fluid Flows", PhD Thesis, Imperial College, University of London (download).

Return to Numerical Methods

My wiki