CFD Online Discussion Forums

CFD Online Discussion Forums (
-   Main CFD Forum (
-   -   TVD (

student September 2, 2002 15:37

why we apply TVD version in our numerical schemes?

thanks. student

Bert Laney September 3, 2002 17:08

TVD is simply one possible condition for ensuring stability. Unlike traditional Fourier analysis, TVD applies to nonlinear equations. TVD limits the growth of numerical oscillations by bounding the sum total of maxima and minima in the solution or, more precisely, in the characteristic variables in the convective parts of the solution. Does this help?

Bert Laney

student September 4, 2002 11:15

still i can't see the last bit:- bounding the sum total of maxima and minima in the solution or, more precisely, in the characteristic variables in the convective parts of the solution.

Mohammad September 5, 2002 23:44


Are U trying to overkill or teach a point?!. Is it really needed to relate TVD to Fourier transformation or etc.?!

I think one a good place explaining this topic is the 2nd volume of text by Hirsch. But I have also tried to give a background as follows.

TVD is to avoid new maxima or minma to be produced in the numerical solution. How? by limiting the numerical fluxes at the cell faces. For example if you find the L and R values at a cell face by 2nd order scheme, if these values introduce a new maxima or minima to the solution, so that may cause the solution to osiccalte. this could be avoided by limiting the fluxes which are extrapolated to the cell faces by reducing the slope of extrapolation. 1st order extrapolation (which is a slope of zero angle) never introduce a new maxima or minima, and is called a monoton scheme. Some schemes like Jameson's rather than TVD use artifitial viscosity to avoid osilations. This is in fact feeding excessive viscosity to the domain to give a smooth solution.

I hope this help.


Bert Laney September 6, 2002 11:28

Your explanation is not entirely incorrect. However, there are some misleading aspects to it:

1. TVD does NOT necessarily "avoid new maxima or minima." Strictly speaking, the TVD condition allows an infinite number of new maxima and minima, provided only that the sum total (sum of all maxima minus sum of all minima) does not grow.

2. TVD is best understood as a non-linear stability condition. My only purpose for mentioning "Fourier transformation" was to relate TVD to linear stability, which is much more familiar to most people. TVD stands for "total variation diminishing." "Total variation" is a classic concept in mathematics, e.g., it is defined in almost every real analysis textbook. For many mathematicians, their greatest interest in TVD is that it is one of the weaker conditions that establishes convergence to the true solution as the grid spacing goes to zero, just like any proper stability condition. You may wish to consult Randy LeVeque's well-known book for this mathematical background.

3. You need to distiguish the TVD condition from its enforcement mechanisms. At the risk of confusing the non-native-English-speakers here, it's like the difference between the speed limit and the police. The police may enforce the speed limit but they are not themselves the speed limit. Similarly, flux and slope limiting, such as you mention, may enforce TVD but they are not themselves the TVD condition. There are many other common approaches, besides flux and slope limiting, that may equally-well enforce TVD.

4. Most so-called "TVD" methods actually enforce something much stronger than TVD, in which sense the term TVD is misleading. Because of this, in practice, most TVD methods do not, in practice, allow new maxima or minima, or allow existing maxima and minima to grow with time. Referring to my analogy from the previous item, it's as if the police prevented cars from accelerating beyond a certain limit -- even though its perfectly legal to accelerate quickly, the police might reasonably assume that anyone who accelerates too quickly is going to violate the speed limit sooner or later. Most TVD methods are overly-vigilant in the same sense -- they look not for things that directly violate the TVD condition, since this is extremely difficult to do and it's not clear that this is exactly what you really care about anyway, instead they prevent anything that might conceivably lead to a violation of the TVD condition.

5. TVD can be enforced using artificial viscosity. Jameson's method, which is the only popular method that is usually written in terms of artificial viscosity, does not practice "feeding excessive artificial viscosity." In fact, if anything, Jameson's method tends to use LESS "artificial viscosity" than most TVD methods, especially at maxima and minima, where most TVD methods actually lose a full-order-of-accuracy or more due to excessive "artificial viscosity," if you care to look at things in those terms.

6. Your explanation basically only applies to finite-volume methods. TVD equally well applies to finite-difference methods. It's important to keep the TVD condition distinct from classes of methods and the various TVD enforcement mechanisms appropriate to those classes.

7. TVD typically applies only to quantities that are convected or advected. In other words, its typically applied to cases where the basic shape of the function is the same, with only some stretching or compression in space as time progresses. For example, this is true of the characteristic variables in the Euler equations (the "convective" parts of the Navier-Stokes equations) away from solid boundaries and shocks.

I'm sure what I've said here, which already streches the limits of a newsgroup posting has only further confused some people including you. As you say, Hirsch's book is an excellent resource and I highly-recommend it. However, my book (Computational Gasdynamics, Cambridge University Press, 1998) probably offers more detail on this particular topic area. In fact, one of my motivations for writing this book was my weariness with repeatedly having discussions very much like this one. In my opinion, TVD was developed by and for mathematicians, and many engineers still have only a limited grasp of it. In fact, the way the original literature was written, it's very easy to have misconceptions about TVD. My book was meant to put things in a way that engineers could clearly understand them. But the fact that I'm still having these tiresome debates makes me think the book didn't entirely succeed in this regard.


Kalyan September 6, 2002 15:05


Your posting was very clearly written and conveys quite easily the points you were trying to get across. It is not too long for a newsgroup posting since I have seen many that were longer and much more difficult to follow in this very forum. The one thing that might have helped greatly is the breakdown of the discussion into points.

You can not blame the ignorance about TVD on the quality of your book. CFD has grown into a very broad field and many may not even be aware of TVD let alone know about it.

I think the main issue here is the fact that increasingly there are many questions being posted on this forum the answers to which can be found by visiting a library or by even opening their own text books. In my opinions such questions are best answered in a paragraph or two followed by some suggestions on further reading.

However, if some one has the time and patience for a detailed reply like yours, I am sure many would benefit from it. Your effort is greatly appreciated.

student September 9, 2002 09:19

Thank you for your reply Bert I appreciate it. As Kalyan said it is very clear and easy to get across but I belive there should be always some easy points to be posted not only top points! As I am a mathematician your book was one of the best books for my backgroud and soon I'll complet my Ph.D. so what is your advice for my NumericaL CareeR in PDE's.

All times are GMT -4. The time now is 02:32.