Close

16th June 2011

OpenFOAM 2.0.0: Steady-State VoF

An approach has been developed to run simulations involving complex physics to steady-state, quickly and reliably. The method is local-time stepping (LTS), in which the time step is manipulated for each individual cell in the mesh, making it as high as possible to enable the simulation to reach steady-state quickly. This clearly violates the physics, described by the underlying equations of conservation of mass, momentum, etc., in the same way that other methods, such as under-relaxation, do. However, whereas under-relaxation lacks the control needed to limit the violations of conservation that can cause solution instability, LTS can include features to maintain stability.

The method has been implemented within a few solvers in OpenFOAM, notably, interFoam, the volume of fluid (VoF), interface-tracking solver. This LTS version of the solver, known as LTSInterFoam, solver in OpenFOAM first maximises the time-step according to the local Courant number. It then processes the time-step field by smoothing the variation in time step across the domain to prevent instability due to large conservation errors caused by sudden changes in time step; spreading the most restrictive time step within the interface region across the entire region to further reduce conservation errors.

Initial results show excellent convergence to steady-state. The example below shows flow around a ship hull with the interface displayed at steady-state. Note: the flow rate is increased from the tutorial example (below) to make it easier to visualise the waves.

shipHull

Source code

  • LTSInterFoam solver
    $FOAM_SOLVERS/multiphase/interFoam/LTSInterFoam
  • localEuler discretisation scheme
    $FOAM_SRC/finiteVolume/finiteVolume/ddtSchemes/localEulerDdtScheme
  • fvcSmooth smoother functions
    $FOAM_SRC/finiteVolume/finiteVolume/fvc/fvcSmooth

Example

  • Flow round a ship full
    $FOAM_TUTORIALS/multiphase/LTSInterFoam/wigleyHull