CFD Online Discussion Forums

CFD Online Discussion Forums (
-   Main CFD Forum (
-   -   temporal error for unsteady flow (

hawk August 23, 2006 15:04

temporal error for unsteady flow
Hi! Dear friends.

I am not clear on the evaluation of temporal error for unsteady flow. I just know that we can judge different difference schemes by their order. But if we chose one scheme, say, Implicit Euler, how to evaluate the possible error for a given time step? How do I know the selected time step is suitable?? Is it different for laminar flow and turbulent flow?


ganesh August 24, 2006 00:49

Re: temporal error for unsteady flow
Dear Hawk,

In unsteady flows, temporal discretisation is of prime importance and the chosen time step has impact on time accuracy as well as stability. Clearly, the time step must be chosen to be the minimum among the value from stability analysis and the time step prescribed by the flow physics. Unfortunately, a time scale from flow physics is not readily available, except for a few problems, and therefore the choice of the physical time step is a matter of experience, in addition to the grid size and the problem nature.

Temporal accuracy analysis is not very common as spatial accuracy analysis. One possibility is to use ideas of Richardson extrapolation to find out an estimate of the ``true'' solution at delt=0, and then compare solution at any other delt with the RE value as reference. This also helps in deciding the time step that can give you a desired level of accuracy.

In short, the choice of time step in unsteady problems is detrimental to both accuracy and stability. Also, the choice could affect the convergence too ( A very small delt could be stable and accurate to some order, but may be very expensive and not warranted). Therefore, it is a matter of experience of the practitioner when he fixes the delt (dimensional/non-dimensional, as the case may be) for time-dependent flow problems.

Hope this helps



Muhammad Shakaib August 24, 2006 06:11

Re: temporal error for unsteady flow
Hi Ganesh

I am the user of Fluent 6.2.16.

I run my cases in the transient mode of fluent due to unsteadiness in flow (as critical value of Reynolds number for laminer-to-transition is exceeded). I have experienced a few times that when I increase my grid size to achieve grid independent solution, keeping the same value of the time step, the unsteadiness in flow is suppressed. Is this common or there is some other problem.

hawk August 24, 2006 10:01

Re: temporal error for unsteady flow
Dear Ganesh,

Thank you very much for your message.

Now I have a question on the choice of implicit and explicit schemes.

For example, in a natural convection and there is a vibrational force given to this system with a frequency 1 HZ.

In my opinion, if we chose implicit Euler scheme, the time step will be no more than 1/8 sec. And even though, it is CPU time consuming if we are interested in the performance over 1000 seconds.

If we chose explicit Euler scheme, the time step could be much smaller than 1/8 in a reasonable CPU time consumption. And it has to be small to satisfy CFL condition.

For the two case, how to judge their accuracy?? Which one is the optimum?

Thank you.

For these

Mani August 24, 2006 14:00

Re: temporal error for unsteady flow
Let's do this with some really simple math.

Here is the premise:

The flow and order of our scheme is such that we cannot exceed a time step of dt_acc.

The time step of the implicit scheme is limited by this accuracy consideration to dt_acc.

The time step of the explicit scheme is limited by the same accuracy requirement (dt_acc), but is also limited by the stability condition to dt_stbl.

One time step with the implicit scheme takes ER times as long as one time step with the explicit scheme.

There could be two different situations:

Case A. If dt_stbl < dt_acc:

The stability condition is dominant over the accuracy condition and the explicit scheme will have to compute dt_acc/dt_stbl as many time steps as the implicit scheme (which is more, because dt_acc/dt_stbl > 1).

The explicit scheme will still be superior if ER > dt_acc/dt_stbl, i.e. if its efficiency more than compensates for the larger number of time steps.

Inversely, the implicit scheme will be superior if ER < dt_acc/dt_stbl.

Case B. If dt_stbl > dt_acc:

Stability is not an issue, because the accuracy requirement is dominant. In this case, both schemes would need to compute the same number of time steps. The explicit method is clearly superior, here, because of its higher efficiency (ER times as fast as the implicit method).

ganesh August 24, 2006 15:09

Re: temporal error for unsteady flow
Dear Muhammad Shakaib,

On a finer grid, the time constraints are generally more stringent, and a smaller delt is preferred. A larger delt, if the code converges could have affected the temporal accuracy of the problem. This could possibly lead to a suppression of unsteadiness. I have also faced similar problems, although in a slightly different context. You could possibly try out reducing the time step to a value of 0.3 to 0.5 times the value used for coarser grid, and see if the suppression is eliminated. An useful analogy is : Just as a larger grid size means a larger dissipation, a larger delt can also be associated with a larger dissipation.

P.S.: You can also post this query on Fluent Forum, so that you can get the views of people whoc could have experienced this problem.

hawk August 24, 2006 15:18

Re: temporal error for unsteady flow
Thank you, Mani.

So usually when we need solve unsteady flow problems, the explicit sheme is superior to the implicit scheme and the implicity scheme is only useful for steady state cases. Am I right?

Tom August 25, 2006 03:37

Re: temporal error for unsteady flow
"the explicit sheme is superior to the implicit scheme and the implicity scheme is only useful for steady state cases. Am I right?"

No - it depends upon what you are trying to do. In general, if you are after a converged unsteady laminar/DNS type solution implicit methods are usually better (especially in the treatment of the wall boundary conditions).

As a simple example consider 2D flow past a circular cylinder at moderate Reynolds number (>~300) and consider how many timesteps you require to resolve the oscillatory wake - this timescale is fixed. In general the timestep of the explicit scheme will be a lot less than than that required by the implicit scheme as the grid is refined.

Another thing to bear in mind is that, for example, for a set timestep h the timestep error in a leap-frog scheme is 4 times that of Crank-Nicolson. Add to this the fact that the Crank-Nicolson scheme does not have a computational mode (and hence no requirement for time filtering between timesteps; i.e. damping the solution in time).

The best choice is usually a combination of explicit and implicit methods; e.g. explicit for the convective terms and implicit for the diffusion terms.

Mani August 25, 2006 06:58

Re: temporal error for unsteady flow
I was trying to give you a simple method to figure that out for your own case. It's hard to say what is "usually" the case, because it really depends on the conditions I laid out. I am doing a lot of unsteady flutter analyses and in most of those cases an implicit approach is far superior to any explicit method, because the time scales of interest are relatively large and the time step allowable for accuracy is larger than the explicit stability limit. Vortex shedding off a cylinder is another classical case, as Tom points out, where an implicit method is more efficient. Some of these cases require a very fine grid while the allowable time step is relatively large, and that's a very bad combination for explicit schemes (CFL number!). Having said that, there are conceivably cases where the time scales of interest are really small (although I am hard-pressed to give you an example :) ) such that the explicit approach becomes attractive. I wouldn't say that's "usually" the case. Your assessment that the "implicity scheme is only useful for steady state cases" is definitely not right.

All times are GMT -4. The time now is 01:06.