Back to all tutorials

# Turbidity Current - CFD Simulation SimFlow Tutorial

## 1. Create Case

After opening SimFlow, we will create a new case named turbidity_current

1. Go to panel

2. Provide name turbidity_current

3. Click

## 2. Base Mesh

In this tutorial, we consider a 2D simulation where the base mesh defines the entire tank. To do this we will use the Plate type which lets us create rectangular grid.

1. Go to Hex Meshing panel

2. Switch to Base tab

3. Select the Plate as a Base Mesh Type

4. Set the size of the base mesh
Min $${\sf [m]}$$00
Max $${\sf [m]}$$4.30.2

5. Define the number of divisions
Division141066

## 3. Base Mesh Boundaries

We need to assign individual names to each side of the base mesh. This will allow us to apply different conditions to each side.

1. Define boundary names accordingly
X- left
X+ right
Y- bottom
Y+ top

2. Define boundary types accordingly
X- wall
X+ wall
Y- wall
Y+ patch

## 4. Start Meshing

Everything is now set up for meshing.

1. Go to Mesh tab

2. Press the button to start meshing process

## 5. Mesh

After the meshing process is finished the mesh will appear in the graphics window.

1. Zoom in to the left side of the mesh - use the Scroll Wheel or drag mouse with RMB (right mouse button) pressed

## 6. Refine Mesh - Bottom (I)

We will refine the mesh to improve spatial discretization in the near-wall region. It is important in the initial location of the fluid mud suspension. To increase near-wall mesh resolution we usually add a boundary layer during the meshing process. However, SimFlow allows modifying existing mesh as well. We can add a boundary layer to a selected boundary or we can split near-wall cells. The latter option is very handy when it is required to refine boundary layer cells in order to advise desired y+ value without remeshing whole domains. In this tutorial, we will demonstrate the usage of the splitting approach.

1. Expand options list for bottom boundary

2. Select Refine

## 7. Refine Mesh - Bottom (II)

Refine Wall Layer option will divide the first cell adjacent to the boundary into two cells.

1. Select

## 8. Refine Mesh - Left (I)

We will also refine the mesh for the left boundary in the same manner.

1. Expand options list for left boundary

2. Select Refine

1. Select

## 10. Examine Mesh

After the refining process is finished the mesh should appear in the graphics window. Use the scroll wheel in your mouse to zoom in the left bottom corner and examine the mesh refinement region.

1. Zoom in to the bottom left corner of the mesh

## 11. Create Geometry - Mud

The initial mesh represents the entire tank. We need to specify where the mud suspension and water are initially located inside the domain. For this purpose, we need to create additional geometries.

1. Go to Geometry panel

2. Select Create Box

3. Change geometry name from box_1 to mud
(double click to edit name and press Enter to confirm)

4. Set the origin and box dimensions
Origin $${\sf [m]}$$00-0.05
Dimensions $${\sf [m]}$$0.2450.150.1

## 12. Create Geometry - Water

The second box defines the water phase.

1. Select Create Box

2. Change geometry name from box_1 to water

3. Set the origin and box dimensions
Origin $${\sf [m]}$$0.2450-0.05
Dimensions $${\sf [m]}$$4.0550.150.1

## 13. Select Solver - Multiphase Inter

We want to analyze transient, incompressible flow with several isothermal and immiscible fluids. For this purpose, we will use the Multiphase Inter (multiphaseInterFoam) solver.

1. Go to SETUP panel

2. Filter the solvers by choosing Multiphase models

3. Pick Multiphase Inter (multiphaseInterFoam) solver

4. solver

## 14. Transport Properties - Phases

We need to define the properties for three phases: mud, water and air. To assign material to the domain, the phase fraction parameter $$\alpha_{phase}$$ is used. The parameter determines the proportion of each fluid in the domain. The value of phase fraction varies in range from 0 to 1 where $$\alpha_{phase1}=1$$ means that the whole domain is filled only with the phase1, while $$\alpha_{phase1}=0$$ means that the domain is filled with the second phase.

1. Go to Transport Properties panel

2. Set the No. of Phases to 3

3. Rename the phases respectively
phase1 $$\rightarrow$$ mud
phase2 $$\rightarrow$$ water
phase3 $$\rightarrow$$ air

4. Set the Surface Tension [N/m] for each pair as follows
mud - water0
mud - air0.07
water - air0.07

## 15. Transport Properties - Mud

1. Select the mud from the Phases list

2. Set the density $$\rho \; [kg/m^3]$$ to 1045

3. Change Transport Model to Herschel-Bulkley

4. Set the parameters accordingly
$$\nu_0$$ $${\sf [m^2/s]}$$2.87e-05
$$\tau_0$$ $${\sf [m^2 / s^2]}$$0
$$k$$ $${\sf [m^2/s]}$$0.034
$$n$$ $${\sf [-]}$$0.52

## 16. Transport Properties - Water

1. Select the water from the Phases list

2. Click

3. Select the water

4. Click

## 17. Transport Properties - Air

1. Select the air from the Phases list

2. Click

3. Select the air

4. Click

## 18. Discretization - Convection

Change the velocity discretization to the Linear Upwind scheme to minimize numerical diffusion affecting the results of the simulation.

1. Go to Discretization panel

2. Switch to Convection tab

3. Click on default scheme Upwind

4. Select Linear Upwind

## 19. Solution - Tolerance (I)

To improve the simulation accuracy and stability for linear solver we will lower the tolerance used for pressure and velocity and increase the number of correction loops.

1. Go to Solution panel

2. Expand solver parameters

3. Change Tolerance to 1e-08

## 20. Solution - Tolerance (II)

Similarly, for the velocity field.

1. Switch to U tab

2. Expand solver parameters

3. Change Tolerance to 1e-08

## 21. Operating Conditions - Gravity

Now we will set the appropriate vector of gravitational acceleration pointing in the negative direction of the y-axis.

1. Go to Operating Conditions panel

2. Define gravitational acceleration along negative Y axis
g $${\sf [m/s^2]}$$0-9.810

## 22. Boundary Conditions - Top

We will specify that air is the only phase flowing in or out of the domain across the top boundary.

1. Go to Boundary Conditions panel

2. Select top boundary

3. Switch to Phases tab

4. Set mass fraction of air
$$\alpha_{air}$$ Inlet Value $${\sf [-]}$$1

## 23. Initial Conditions - Basic

Before we start simulation we need to define the initial state. Phase fraction $$\alpha_{air}$$ tells us that the whole domain is filled with the air by default.

1. Go to Initial Conditions panel

2. Set air phase fraction $$\alpha_{air}$$ to 1

## 24. Initial Conditions - Patch Mud

Using the mud geometry, we will overwrite the phase fraction value inside it. We will set the $$\alpha_{mud}$$ to 1 to fill the patched geometry with the mud suspension.

1. Switch to Patch panel

2. Enable initialization on mud geometry

3. Expand the Fields list

4. Select $$\alpha_{mud}$$ fraction for initialization

5. Select $$\alpha_{air}$$ fraction for initialization

6. Patch the form $$\alpha_{mud}$$ with the value of 1

## 25. Initial Conditions - Patch Water

Similarly, using the water geometry, we will overwrite the phase fraction value inside it. We will set the $$\alpha_{water}$$ to 1 to fill the patched geometry with the water.

1. Enable initialization on water geometry

2. Expand the Fields list

3. Select $$\alpha_{water}$$ fraction for initialization

4. Select $$\alpha_{air}$$ fraction for initialization

5. Patch the form $$\alpha_{water}$$ with the value of 1

## 26. Monitors - Create Slice

During calculation, we can observe intermediate results on a section plane. To add sampling data on a plane we need to define plane properties and also select fields that will be sampled. Note that runtime post-processing can only be defined before starting calculations and can not be changed later on.

1. Go to Monitors panel

2. Switch to Sampling tab

5. Choose $$\alpha_{mud}$$, $$\alpha_{water}$$, $$\alpha_{air}$$ to be sampled on the section plane.

## 27. Run - Time Control

Before running computations adjust the time controls in order to capture appropriate time scales of the flow features.

1. Go to RUN panel

2. Set the Simulation Time [s] to 50

3. Set the Time Stepping $$\Delta t$$ [s] to 1e-03

This calculation will require high CPU usage and might take several hours to finish the calculation depending on the machine used. If you want to shorten the computation time, you can decrease the Simulation Time to 10s - this is enough for purpose of further postprocessing.

## 28. Run - Output

We can control how often results should be saved on the hard drive. Only this data will be available for postprocessing. We will write the results in the interval of 0.1 seconds.

1. Switch to Output tab

2. Set the Interval [s] to 0.1

## 29. Run - CPU

To boost the calculation we can use a higher number of CPUs. We recommend using at least 8 processors for this tutorial. The free version allows you to use only 2 processors in parallel mode. To get the full version, you can use the contact form to Request 30-day Trial

Estimated computation time for 2 processors: over 5 hours

1. Switch to CPU tab

2. Change the solver to parallel

3. Define the number of processors

4. Click button

## 30. Residuals

When the calculation is finished we should see a similar residual plot.

## 31. Results - Slice (I)

Slices tab appears next to Residuals. Under this tab, we can preview results on the defined slice plane. The results preview is available during the calculation and we can track it on a regular basis. The newly calculated time step will be actualized automatically as long as the time selector points to the latest time step.
We would like to check the time when mud moves 1 meter from the initial position. For this purpose, we will use measurement tools and observe the movement of the mud.

1. Switch to Slice tab

2. Choose $$\alpha_{mud}$$ field to display the mud phase

3. Click Adjust range to data

4. Set the XY orientation by clicking

5. Select Measure Distance from right panel

6. Hold CTRL key and click the mesh at the lock gate to choose Start Point

7. Hold CTRL key and click the mesh at a distance one meter from the lock gate to choose End Point

## 32. Results - Slice (II)

1. Play with animation buttons to view the results of the analysis. Try to measure the time when the front of the current reaches a distance of 1 meter from the lock gate.

## 33. Final Results

Experimental data shows that the front of the current reaches a distance of 1m after 8.9s. It is slightly slower than the simulation results which is equal to 8.5s.