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 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
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
We use a Laminar model and transient analysis
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’
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
Set the parameters for the box as shown below and save it
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
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
Go back to the mesh option and hit the generate button to start the meshing process
After some time, the mesh will be finished and we can review it via the 3D viewer
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’
Similarly, do the same for the Outlet face
the remaining faces are grouped together under the entity set ‘Walls’
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.
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.
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’.
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’
Now select the options as indicated in the figure below, assign it as ‘Phase 1’ and assign it to the mesh volume ‘1’.
“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.
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.
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)”.
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.
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
Add another boundary condition ( as before ), re-name it as “outlet” and specify the settings as shown in figure below and save it.
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
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
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.
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
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.
Last updated: April 10th, 2019
Did you find this article helpful?
How can we do better?
We appreciate and value your feedback.