FLUENT 6 - Time step size for Geo-Reconstruct VOF simulations
Selecting the appropriate physical time step is important for transient VOF simulations using the Geo-Reconstruct formulation. A good time step will make the run:
1) Robust - relative to convergence and stability issues
2) Efficient - relative to CPU time spent on the entire time interval to be modeled
How can we estimate this time step?
Proir to FLUENT 6.1, the answer was difficult and it involved a quick estimation of things like the maximum
velocity in the cells near the interface between the phases the volume of these cells. This information
was difficult to estimate before running the solution.
FLUENT 6.1 and 6.2 offer an answer to this question - and the answer is given by the code itself, without the user
having to guess the velocity field and find cell volumes.
The resolution to this problems is described below.
This method allows you to exactly pinpoint the size of the VOF sub-timestep based on
an existing velocity field. The size of the VOF sub-timestep can be determined after the
velocity field has been solved at least for 1 time step.
This new feature was introduced in FLUENT 6.1. An error message is sent to the console window by the
code signaling the fact that the physical time step needs A CERTAIN NUMBER of VOF sub-timesteps to
converge. You can use this information to quickly find the exact magnitude of the VOF sub-timestep.
The procedure has the following steps and it is recommended to be done (if possible) in
the serial FLUENT version (the parallel FLUENT session will give the error message with the information,
but it will hang in 6.1.22):
1) Solve the flow at least for 1 time step - if you are just starting out the simulation, specify
a time step that is very small (4-5 orders of magnitude) versus the time scale of the problem to avoid any
convergence issues in the beginning.
2) Check the velocity field of this solution. If the values are physical, proceed to step 3. If you get
unphysically large velocities, find the cause (mesh quality ? setup ? etc.) and resolve it.
3) Save the data file of a converged time step before proceeding to the next step of the procedure.
4) For the very next time step, specify max iter per time step of 1 and a much larger time step -
several orders of magnitude larger than the time step that you used in step 1 above.
FLUENT will respond with an error message of this sort:
Updating solution at time level N...
Error: Too many (31346) VOF sub-timesteps. The velocity
field is probably diverging. Please check the solution,
and reduce the time step if necessary.
Error Object: #f
The key piece of information in this error message is the number between parenthesis.
In this example, 31346 VOF sub-timesteps are needed to complete 1 physical time step.
You are now able to compute the VOF sub-timestep required by the current velocity
field and the existing mesh, by simply dividing the large physical time step which you
used in step 4 with the number (31346 in this example) of VOF sub-timesteps.
This will yield the size of the VOF sub-timestep. Visit the Solve>Iterate panel and specify
a time step within the range: VOF sub-timestep<time step<100 * VOF sub-timestep.
The physical time step doesn't need to be exactly equal to the VOF sub-time step, but
having them within 1-100 ratio is desirable because of both accuracy, stability, and efficient
CPU time reasons. If phys. time step / vof sub-time step > 100, the user will see that
the code spends a significant time updating to the next time step (when it solves the
VOF advection equation). Also, this means that an "older" velocity field is used
to advect the volume fraction field in the domain (unless the option "Solve VOF at
each iteration", but this will add significantly to the CPU time).
a) Since the velocity field may change quite significantly during a simulation, depending
on the problem, it is best to execute this procedure of "re-calibrating" the physical time
step versus the VOF sub-timestep with a certain frequency (once in 100, 500, 1000
timesteps, depending on the problem). Depending on how small are the cells traversed
by the interface between phases at a certain moment in time, and the velocities in these
cells, the VOF sub-timestep may vary significantly, therefore requiring a "re-calibration"
of the physical time step.
b) It is best to run the problem with the very small time step in the beginning
not only for 1 time step, but for a larger number of time steps,
to let a representative velocity / volume fraction field to develop in the
computational domain before doing the first "calibration" of the time step.
c) The time step used to obtain the error message (from step 4 above)
needs to be large enough to return the error message at the first time step,
because that will still use a representative velocity field. If you don't obtain
the error message immediately after specifying the large time step, go back
and read the data file and specify even a larger time step.
You will also find definitions and details about this "VOF sub-timestep" in the FLUENT 6
User's Guide Chapter 24.8.18 "Setting Time-Dependent Parameters for the VOF Model".
The presentation "Best Practices of Modeling Multiphase Flows in the Automotive Industry"
from the Automotive Users Group Meeting of 2004 also contains very useful information in
the section on the VOF model: