CFD Online Discussion Forums

CFD Online Discussion Forums (
-   CFX (
-   -   Advection Time (

Anne June 23, 2004 13:43

Advection Time
Hi CFX Family,

What is the implication or physical meaning of advection time (of say, water) in a stirred tank? Can this influence the choice of time step?

Thanks anne

Robin June 23, 2004 14:57

Re: Advection Time

What you really want to know is the physical timescale, advection time is one such timescale, but there are others. Basically, the physical timescale is the average time it takes for a change in one region of the domain to propegate throughout the entire domain.

In terms of convergence, consider that if a change occurs and you timestep is set to be 1/10th of the physical timescale, the solver will require at least 10 iterations to propegate it's effects (and perhaps a few more for the non-linearities to settle down). If you choose a timestep which is 1/100th of your physical timescale, you need 100 iterations, and so on.

So armed with this knowledge, what would you consider to be the physical timescale for a stirred tank?

Regards, Robin

Anne June 24, 2004 05:12

Re: Advection Time
Hi Robin,

Thanks for the response. The second question is well answered. Time steps should be smaller or equal to the advection time step.

Now, I will attempt to answer my own question, just to give you and other members of the family a motivation to correct me where i am wrong. I still do not know the answer. Let me start by mentioning that I use the Transient Rotor/Stator (TRS) approach. The advection time in the rotating and stationary domains are different; smaller in the rotating domain.

Let me assume that the movement of the impeller is an episode (momentum source). The time taken for the momentum to 'propagate' (advected) in the rotating domain should then be the advection time in that domain.

I would then take the baffles as some sort of momentum 'sinks' such that part of the momentum generated by the impeller is destroyed at the baffles. There are other losses due to friction etc. The time taken for this episode to be advected in the atationary domain should therefore be the advection time there. Since the the 'propagating vehicle' (call it mean velocity) carrying this phenomena (call it momentum) is low in the stationary domain, we therefore have a longer advection time.

I assume that the advection time will change with real time, if the mean velocity does change with the time. For stirred tanks (TRS approach) the initial velocity conditions are typically set to zero, does this have an effect on the average scale information? If the average velocity scale is almost zero, then the advective time step should tend to zero hence my time steps. Is this really true? What does the solver do to allow some reasonable time steps to be set when the advection time tends to zero. (If my reasoning is correct). Well, I do start with small time steps, however, I have never related it to the advection time, instead i scale it with impeller speed and (sometimes) cell length.

regards anne

Robin June 24, 2004 12:21

Re: Advection Time
Hi Anne,

What I previously stated only applies to a steady state simulation, the timestep requirements of a transient simulation are altogether different.

For a steady state, the transient terms in the equations cancel out when the solution has converged, since the solution is no longer changing (hence it has reached a steady state). When you run a transient simulation, however, you are trying to simulate the changes in time accurately and therefore need a timestep small enough to do so.

Determining the right timestep can depend on a lot of factors, but probably the best way is by looking at what the code is doing. When you solve a transient simulation, the solver will perform a series of coefficient loops in order to converge the non-linear equations within the timestep, after which it advances the solution in time. Generally, you shouldn't require more than 3 to 6 coefficient loops to converge to a MAX residual of .001, or else your timestep is too large.

When you start your run, you may find the solver requires more coefficient loops while it is getting over the initial guess. After 10 or 20 timesteps, the initial transients should have settled out and the solver will behave better. If you find you are still using too many coefficient loops, reduce your timestep, if too few, increase it.

If you are interested, there is example code in the User FORTRAN documentation for a Junction Box routine which will do this automatically for you.

Best regards, Robin

Anne June 29, 2004 04:55

Re: Advection Time
Hi Robin,

Thanks for such a lengthy explanation.

There are some other CFD artefacts that may be implicitly relevant to our subject matter.

When I run a steady state simulation (say frozen rotor), is the transient term set to zero automatically right from the beginning? What i THINK is that a TRS with a very 'big' time step is implicitly a steady state simulation (not necessarily a frozen rotor).

However, I fail to connect the physical time scale and advection time with the time steps (either in TRS or frozen rotor).

Many thanks for your time. anne

Jeff June 29, 2004 05:12

Re: Advection Time

I can throw some personal experience in here on mixing tanks. Perhaps this can relate to what you are after.

To acurately capture the transient startup, you need to look at cell width in the theta direction divided by tip speed. That is, the impeller shouldn't travel more than a cell width in one time step, or you won't accuately capture the transients.

Using this method, experience shows at least 20 full revolutions of the impeller to get to a final steady state (which is an oscillating condition as impellers move past the baffles).

If the startup is not of concern, frozen rotor can be done to get the fluid moving, before switching to a true transient impeller. This get's you a LOT closer to steady state and can cut down on the revolutions required. The step size here can be larger, but some fraction of the symmetry on the impeller.

I don't know if this helps with your question, but it may help with your solution.


ioana June 29, 2004 05:17

Re: Advection Time

Like Anne I encounter difficulties with the Physical time scale.

I am simulating a fire and now I am trying to use the Flamelet model (I have just loaded the file supplied in the library Reaction.fll for methane air/flames at 1 bar and t = 298 K as I considered that it is very close from mine (methane is injected at t=302.27)- can this be the cause for the lack of convergence??; I did this because I want to see if I get diff results when comparing to others combustion models and if it worth starting with Chemkin). Anyway I have problems with convergence…

I have tried to calculate the physical time scale the formulas form help (dt=L/2U= 2.42; I haven't used the second one because I don't know what the"leghtscale associated with the vertical temp gradient" is). The physical timescale that I had obtained is bigger than the Advection Time Scale, so it does not work. I have tried different values: 0.00625 s, 0.0125 are too small, so I increased to 0.01875 is too big. Anyway the fact is when using 0.01875 after 2000 iteration I canot get convergence.

Any advice is welcome


Wu Jiurong June 29, 2004 13:49

Re: Advection Time
Dear Robin:

Can you tell me where i can find such an example code in the User FORTRAN documentation for a Junction Box routine which will adjust the time step automatically in the transient simulation?

Best Regards!

Glenn Horrocks June 29, 2004 18:22

Re: Advection Time
Hi Anne,

I don't think TRS with a big timestep is equivalent to a steady state simulation. TRS is a time accurate simulation which will show the full evolution of the flow; steady state will only show the final result of a steady flow.

If you are running a TRS simulation and it has evolved to the steady state solution, then it won't matter what time step size you use as the transient term drops out anyway. Is this what you mean?


Anne June 30, 2004 04:15

Re: Advection Time
Hi Glenn,

Thanks for the correction .

For a stirred tank we are discussing here, what i noticed was that when i took a time step equal or greater than one revolution time, the convergence was similar to that of a steady state assumption. That led me to think they way i did. I would be hesitant to use the word equivalent because that may imply that we are equating a TRS to steady state (or frozen rotor), the mathematics involved is certainly differrent. Things that behave in a similar fashion (implicit behaviour) may not be equivalent. Sorry, if i used wrong words.

But Glenn/Jeff/Ioana, what is the physical meaning of advection time in a transient flow in a stirred tank?

kind regards anne

KKA June 30, 2004 16:03

Re: Advection Time
Hi Wu (is Wu your first name?:))

Go to the user manual, (the pdf folder), click on the master directory then expand the Solver Modelling Link, you'll find the User Fortran, there you'll find the code he was talking about!!!


Robin July 9, 2004 15:14

Re: Advection Time
Hi Anne,

In a transient rotor-stator simulation, the solver updates the position of the rotor at every timestep. If you take a timestep equal to one revolution, you just end up with the same intersection and the rotor doesn't move.

Frozen Rotor, however, updates the solution with time, but doesn't move the rotor. The rotational effects are still felt due to the rotating frame of reference, but the interaction between the stationary and rotating domains is not transient.

This is a reasonable assumption in some cases. An alternative steady-state assumption is the stage interface, whereby the circumferentially averaged values are felt across the interface.

The main difference between transient and steady-state simulations is the goal. In both cases the transient terms are solved and both can achieve a steady state. When the solver reaches a steady state, the transient term cancels out, because there is not change in time. If you only want a steady state solution, there is no need to be time accurate, so you can take very large timesteps and you don't need to converge the linear equations tightly at each timestep.

If you are running a transient, however, you need to resolve each timestep accurately. You can't do this if your timestep is very large. You also have to resolve the non-linearities at each timestep. In the hydrodynamic equations, the main non-linear term is the advection of momentum.

The flux of momentum is calculated as the mass flow through a face times the value of momentum at the face. For simplicity, consider a face normal to the x axis and flow normal to the face. The mass flow is Area*Density*u Velocity. If you are advecting velocity, then you have Velocity*Velocity in the momentum flux. To linearize the equations, you need to use the current value of Velocity for the mass flow while solving for the new velocity. Once these linear equations are solved then, your new velocity is different from the old velocity (unless you have reached a steady state :). In a steady state simulation you would just go ahead and update the transient terms, because you don't care about this discrepency. In a transient simulation, however, you do care, so you need to solve the linear equations again using the new velocity, but without updating the transient terms. These are the so-called coefficient loops.

The way residuals are reported in a transient simulation is different as well. The residuals in steady state simulation tell you whether you have converged to a steady state, whereas the residuals in a transient simulation tell you how well you have converged the equations within the timestep.

Regards, Robin

Ben July 10, 2004 08:38

Re: Advection Time
Hi Robin,

This is a very generous response considering the depth of explanation and the time taken to type this down.

Let me go thro is slowy and try to get all that you have put down here. Thanks a million Robin.

Regards, annne

anne July 10, 2004 08:53

Re: Advection Time
Sorry Robin,

I used one of my CFD student's profile in the above posting. However the words remain the same.

Regards, Anne

All times are GMT -4. The time now is 21:44.