Dam-break problem with water, oil, and mercury

Update: July 10, 2017
OpenFOAM 4.x

Case directory

$FOAM_TUTORIALS/multiphase/multiphaseEulerFoam/damBreak4phase

Summary

Model geometry Model geometry

We calculate a dam-break problem with three liquids: water, oil, and mercury, for 6 seconds. The calculation is performed as a two-dimensional problem with a single mesh in the Z direction.

The properties of each fluid are specified in the file "constant/transportProperties" as follows.

phases
(
     water
     {
         nu         1e-06;
         kappa      1e-06;
         Cp         4195;
         rho        1000;

         diameterModel constant;
         constantCoeffs
         {
             d               1e-3;
         }
     }

     oil
     {
         nu         1e-06;
         kappa      1e-06;
         Cp         4195;
         rho        500;

         diameterModel constant;
         constantCoeffs
         {
             d               1e-3;
         }
     }

     mercury
     {
         nu         1.125e-07;
         kappa      1e-06;
         Cp         4195;
         rho        13529;

         diameterModel constant;
         constantCoeffs
         {
             d               1e-3;
         }
     }

     air
     {
         nu         1.48e-05;
         kappa      2.63e-2;
         Cp         1007;
         rho        1;

         diameterModel constant;
         constantCoeffs
         {
             d              3e-3;
         }
     }
);

The interaction between the phases is also specified in the file "constant/transportProperties".

The meshes are as follows, and the number of mesh is 2268.

Mesh Meshes
Meshes (front view) Meshes (front view)

The calculation result is as follows.

The ID values of each fluid are as follows.

  • Water: 0.0
  • Oil: 1.0
  • Mercury: 2.0
  • Air: 3.0
Fluids (alphas)
Fluids at initial time (alphas) Fluids at initial time (alphas)
Fluids at 0.75 sec (alphas) Fluids at 0.75 sec (alphas)
Fluids at final time (alphas) Fluids at final time (alphas)

At final time, we can see that each fluid is divided into layers by density.

Commands

cp -r $FOAM_TUTORIALS/multiphase/multiphaseEulerFoam/damBreak4phase damBreak4phase
cd damBreak4phase

rm -rf 0
cp -r 0.orig 0

blockMesh

setFields
multiphaseEulerFoam

paraFoam

Calculation time

3 minutes 6.39 seconds *Single, Inter(R) Core(TM) i7-2600 CPU @ 3.40GHz 3.40GHz