Background on finite volume method

When discretising the flux with a central difference stencil of the the advection-diffusion equation restriction $\frac{ah}{d} < 2$ must be observed for the finite volume method to remain numerical stability. Where $a$ is the velocity, $h$ is the cell width (considering 1D only) and $d$ is the diffusion coefficient. The term $\frac{ah}{d}$ is known as the Peclet number. For more information there is a nice description here, http://www.ctcms.nist.gov/fipy/documentation/numerical/scheme.html

When solving the advection-diffusion equation in 1D, exponential fitting is used because it preserves the above property and allows the numerical scheme to automatically adapt from using second order accurate central differences where diffusion transport dominates and first order upwind differences where advection dominates.

Questions about finite element method

  • Does the finite element method also have a numerical stability criteria with respect to the Peclet number?
  • If so what are the standard techniques to maintain stability?
  • Do exponentially fitted scheme exist for the finite element method?
  • $\begingroup$ Unfortunately, due to the gov't shutdown, we can't access the NIST site =\. $\endgroup$
    – Jesse Chan
    Oct 1, 2013 at 17:45
  • $\begingroup$ Yes, it's a little passive aggressive isn't :) $\endgroup$
    – boyfarrell
    Oct 2, 2013 at 4:09

2 Answers 2


The finite element method has similar problems to FD with regards to stability in solving the advection-diffusion equation, i.e. the same restrictions on Peclet number apply. One remedy, also similar to that used in FD, is to use a formulation that includes "upwinding".

A nice set of lecture notes that discusses how upwinding is added to FE formulations is here:




It depends on what you refer to as numerical stability criteria - with the CFL condition, there's a clear requirement on eigenvalues to ensure that the timestepping method does not diverge. With the Peclet number, it's a bit less clear - you know that you don't want large oscillations, but it's hard to quantify it any more than that, especially in 2 and 3 dimensions and with high order methods for FD and FEM. You can get exact nodal stability with the right Peclet number or stabilization scheme in 1D, but it's usually hard to extend these ideas.

I'm approaching this from a FEM perspective, so keep in mind there may be other methods to deal with this instability for FD/FV. Typical approaches include

  1. Artificial diffusion - you add a fake diffusion term to make your Peclet number $\approx 1$. These are fishy though - they change the problem that you solve, and can give you an answer that's way off (this typically gets worse for nonzero forcing). Advanced versions of this only add diffusion in areas with high gradients (see shock capturing artificial diffusion).
  2. Stabilization terms - this is akin to Bill's upwinding, and is a bit like artificial diffusion. However, unlike artificial diffusion, it also modifies the way the forcing term is taken into account, so it avoids some of the above issues. For FEM, this can be interpreted as changing your weighting functions. The difficulty for convection-diffusion problems is that you don't want to be too diffusive; your solution may look good but it might be completely wrong.
  3. Flux limiting/TVD/MUSCL schemes - these I know less about, but they seem very popular with the FD and FV crowd. As far as I can tell, you dynamically change your stencil or numerical fluxes to achieve certain properties (local max principles, variation diminishing solutions, etc).

There are a couple good places to start with this - this tutorial paper on a priori and a posteriori estimation for FEM details how Peclet number of $O(1)$ is required for good a prior estimates in FEM, and the ideas should carry over to FD too.

Another good paper with a fun title is Don't suppress the wiggles! They're telling you something by Gresho. It warns of the danger of too much upwinding and just going for "good looking solutions".

As for papers on the 3 methods, I don't know of especially landmark ones off the top of my head, and can only recommend Googling around.

(Btw, if this seems a bit confusing or arbitrary, IMO, the field sort of is arbitrary and confusing - numerical methods for convection-diffusion problems, as simple as they seem, still seem to hold a lot of open problems.)

  • $\begingroup$ So points 2. is the FEM version of exponential fitting in FVM. I would like to ask more details about how to implement this in FEM but maybe it's worth doing in a separate question. $\endgroup$
    – boyfarrell
    Oct 2, 2013 at 1:29
  • $\begingroup$ If you look up the tutorial for SUPG (Streamline Upwind Petrov-Galerkin) in 1D, it might help. Otherwise def feel free to shoot another question out, I can try to explain more there. $\endgroup$
    – Jesse Chan
    Oct 2, 2013 at 3:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.