Many different phenomena in industry or nature include a deformable interface for example the water falling from a spillway. The simulation of such events is essential to better understanding of two-phase flow behavior, in order to optimize the design or to calculate hydrodynamic coefficients. The precise and correct modeling of the interface is the key parameter in the simulation of a free surface. There are different interface tracking methods such as VoF (volume of fluid), LS (level set), and FT (front tracking). Each method has its own advantages and disadvantages, however, VoF is becoming the most common interface tracking method due to its ease of implementation and mass conservation. OpenFOAM VoF solver is interFoam. The solver uses a technique called MULES to compress the interface and return the sharp interface. The interFoam is suitable for two-phase isothermal incompressible system. The derived solvers from interFoam is:
- interDyMFoam: interFoam added dynamic Mesh
- multiPhaseInterFoam: interFoam extended to simulate more than two phases for example water-oil-gas system.
- compressibleInterFoam: the compressible version of interFoam
Users also extended and adapt interFoam in recent years to include some features such as wave generation. These extensions are:
In the rest of this post, I will show some of my simulations using interFoam family.
Free Surface Flow Over Stepped Spillway
The details of simulation procedure are available in my book. The grid for two-dimensional free surface flow over the spillway is created using OpenFOAM mesh generators: blockMesh, snappyHexMesh, and extrudeMesh from imported CAD geometry. blockMesh is applied to create the base grid, then snappyHexMesh extracts the final three-dimensional grid from the base grid around the imported CAD file. The grid is refined locally to better capture the interface. Finally, for two-dimensional simulation, the grid is extruded to have just one cell thickness across the flow stream.
The turbulent flow is considered with kOmegaSST Model.
Free Surface Flow Over Sub Merged body
The schematic of the problem is shown below. The simulation is conducted with olaFoam. The solver provides wave generation and absorption boundary conditions. The simulation is done with OpenFOAM-3.0.1. However, it is worth to note the wave boundaries are added to a recent version of OpenFOAM-v5, so there is no need to install olaFoam anymore.
The grid is created with blockMesh. It contains only hex elements that are refined near the interface or near the submerged body.
a closer look at the grid:
The wave behavior is shown below, the LES model is employed for turbulence modeling.
The hydrodynamic coefficient is important in this study, so lift and drag force is calculated. The normal lift coefficient is shown here.
Sloshing in Tank
It’s part of the tutorial, I used to teach in my training workshop at IHA. It’s the sloshing tank. The grid is created with blockMesh and snappyHexMesh. The tank moving is supported with dynamicMesh in the solver interDyMFoam.
Hi Nima. After having used OLAFOAM, IHFOAM (now included in OpenFOAMv1712) and the OpenFOAM 5 implementation, I must say that I still get the best wave results with OLAFOAM, so there is still need to install it, at least for me!