Tutorial: Multi-Phase Flow – Water Fall


Multiphase Analysis type enables you to simulate the time dependent behavior of 2 fluid mixtures, for example air and water. This tutorial provides a step-by-step guide on how to set up an internal multiphase flow simulation using the New Material Library for Fluid Dynamics analysis.

The material library provides pre-defined Fluid materials with the required properties at standard conditions. It will be shown, how these can be easily added and used. The user may modify these properties based on the requirements.

The tutorial project is a sample Water Fall case setup. The Channel is enclosed by walls on all sides with an open boundary for the top face. Initially there will be column of water in the fall area, while water enters from an Inlet and discharges into the column. The rest of the domain is filled with air as the base medium.

The link below provides the tutorial project.

Import the tutorial project into workbench


The project already has an uploaded mesh, which was created in a normal manner without any special assignments. So, the tutorial starts with creating a new simulation set-up for multiphase flow. The two different phases are defined and assigned in the simulation setup to follow.

Import tutorial project

  • To start this tutorial, you have to import the tutorial project into your ‘Dashboard’ via the link above.
  • In the workbench, you will be in the ‘Geometries‘ tab as shown below
CAD geometry

 Create a Multiphase simulation

  • To create a new simulation click on the ‘+’ option next to the ‘Simulations’ tab
  • Select the Multi-phase analysis type and click ‘Ok’
  • After clicking ‘Ok’, a new tree will be automatically generated in the left panel with all the parameters and settings that are necessary to completely specify such an analysis.
  • All parts that are completed are highlighted with a green check. Parts that need to be specified have a red circle. While, the blue circle indicates an optional settings that does not need to be filled out
Creating a Multiphase simulation
  • We use a Laminar model and transient analysis
Simulation properties

Creating a Mesh

  • Select the mesh option and set the parameters as shown in figure below
  • We use the automatic ‘Hex-dominant’ algorithm and set the fineness to ‘Fine’
Mesh Parameters
  • Next, we define additional primitives of type ‘Cartesian Box’ that will be used for mesh refinement
  • Click on the ‘+’ option next to Geometry Primitives and select the Cartesian box from the drop down menu, as shown in figure
Creating a cartesian box
  • Set the parameters for the box as shown below and save it
Cartesian box
  • Now we move on to the “Mesh Refinements”.
  • To add a refinement click on the ‘+’ next to the Refinements and select the required refinement from the drop down menu
Creating a new refinement
  • Select Region refinement from the drop down menu
  • Set the parameters as shown below
  • Select the cartesian box created earlier for this region refinement
  • and then save the operation
Region refinement
  • Go back to the mesh option and hit the generate button to start the meshing process
Start the meshing operation
  • After some time, the mesh will be finished and we can review it via the 3D viewer
Resulting Mesh

Creating Topological Entity sets

  • Here we basically group of faces together under a common name, this helps while assigning boundary conditions
  • Select the Inlet face, then click on the ‘+’ option next to the ‘Topological Entity Sets’
  • Name the set as ‘Inlet’
Creating a Topological entity set
  • Similarly, do the same for the Outlet face
Outlet Face
  • the remaining faces are grouped together under the entity set ‘Walls’
Walls- Entity Set

Creating a Geometry Primitive

  • Create a Geometry Primitive of type ‘Cartesian Box’ as shown below.This will be used to define the initial distribution of the column of water in the channel.
Creating a Geometry Primitive


  • The gravity force and surface tension are set as below

Adding materials to the domain and assigning phases.

  • Here we will add the materials from the ‘Material Library’, assign a ‘Phase’ to each and assign the materials to the simulation domain or mesh. This would then determine the materials that will exist in the flow domain and be used for the simulation. First, we start with clicking on sub-tree “materials”. Click on “+” from the options panel as shown.
  • Select ‘Air’ and click ‘Ok’.This will then automatically load the standard properties for air.
Adding a material
  • As our domain/mesh will have two fluids for this simulation, we must select their “Associated phase” and assign them to a volume mesh region.
  • So, we change the “Associated phase” for air to ‘Phase 0’ to set it as the primary fluid phase and assign it to the mesh volume called ‘1’ (volume of the chosen mesh) and click ‘save’.
Defining the properties of the Material


The associated phase of ‘Phase 0’ means that the fluid material will be the primary fluid phase. This is then represented by a ‘Phase fraction’ of value 0 that corresponding to 100% of this fluid. Further, Every fluid material must be assigned at least 1 volume (and vice-versa).


At this stage, we are only defining the properties of the two fluid materials that will be present in the domain/mesh and assigning them to the corresponding mesh volume (in this case the same one). As for the initial distribution of the fluid materials, it will be defined later under “Initial Conditions” sub-tree entry (under “Model”) with the help of “Geometry Primitives”.

  • Similarly, now add the secondary fluid material named ‘water’
Adding water as the secondary fluid
  • Now select the options as indicated in the figure below, assign it as ‘Phase 1’ and assign it to the mesh volume ‘1’.
Assigning fluid to the domain


“So now as water is assigned ‘Phase 1’, it will be represented by a phase fraction value of 1”.

Initial Conditions (Defining initial flow variables and distribution for fluid phases):

  • The next tree item “Initial conditions” allows to define the initial velocity, pressure and “phase fraction” (in other words, initial phase distribution) for the fluids. For pressure and velocity we keep the default values. Then click on ‘Phase fraction’  keep the default Global phase fraction value of 0 ( that is air ) and click save. This means for now all the volume is filled with air.
Global phase fraction
  • Now click on ‘+’ next to ‘Subdomains’ to add a new subdomain. Enter the settings as shown in the figure below (phase fraction value of 1 means water phase) and assign the previously created geometry primitive to this sub-domain and save.
Initial conditions for water
  • So, the common region of the geometry primitive and the volume mesh will now define the initial distribution of the water phase.


Remember: “Under Initial Conditions the initial distribution (before start of simulation) of the fluid materials is defined (by using geometry primitives)”.

Boundary Conditions:

Now, we come to define the boundary conditions.

  • To create a boundary condition, click on the ‘+’ option next to the Boundary conditions and select the required boundary condition from drop down menu, as shown in figure.
Creating a new boundary condition
  • First, select the ‘Velocity Inlet’ for the Inlet face. Set the properties as shown below and assign this to the ‘Inlet’ face from the topological entity set created earlier
  • the phase fraction value is set to 1, meaning only water enters through this face
Inlet boundary condition
  • Add another boundary condition ( as before ), re-name it as “outlet” and specify the settings as shown in figure below and save it.
Outlet boundary condition
  • Lastly, add the 3rd boundary condition, re-name it to “walls” and specify the settings as shown in the following figure. Assign this to the ‘Walls’ Entity set created earlier
Wall bounadary conditions


  • Based on the type of problem, we now modify some of the numerics as is illustrated in the figure below. This includes specifying the number of solver iterations per time step in “Number of correctors” and selecting the solvers based on the flow variables. These changes will help in better stability and convergence on the simulation. Leave the remaining values as default

Simulation Control:

  • Next, in simulation control we define some main control settings such as start and end times, time step size, auto time-stepping and number of processors for this simulation run. Follow the figure below to set up as shown and click save.
Simulation Control

Start a simulation run

  • The last thing to do for running this simulation is to create a run.
  • The new run is created by clicking on the ‘+’ symbol next to ‘Simulation Runs’
  • Give a name to the run and start the run
Creating a new simulation run


  • Once the simulation is finished, select the ‘Solution fields’ under the Run to post process the results on the platform. Or they can be downloaded and post-processed locally (e.g. with ParaView)
  • Some post processing images from the SimScale platform post processor are shown below.
  • Go to the last simulation step by clicking the last step button (highlighted in figure)
  • Select ‘Results’ and switch the flow variable to ‘alpha.phase1[node]’ as shown.
Post processing
Data Privacy