Fill out the form to download

Required field
Required field
Not a valid email address
Required field
Required field


Advanced Tutorial: Fluid Flow Simulation Through a Centrifugal Pump

This tutorial demonstrates how to use SimScale to run an incompressible fluid flow simulation on a centrifugal pump using rotating zones. The complexity of this use case results from the requirement of modeling a rotating region. Rotating regions require additional preparation steps for both the meshing and simulation setup which we will cover in the context of this tutorial.

water pump showing pressure contours
Figure 1: Pressure distribution in the pump.


This tutorial teaches how to:

  • Set up and run an incompressible simulation, making use of a rotating zone.
  • Assign topological entity sets in SimScale.
  • Assign boundary conditions, material, and other properties to the simulation.
  • Mesh with the SimScale standard meshing algorithm.

We are following the typical SimScale workflow:

  1. Preparing the CAD model for the simulation
  2. Setting up the simulation
  3. Creating the mesh
  4. Run the simulation and analyze results

1. Prepare the CAD Model and Select the Analysis Type

To begin, click the button below. It will copy the tutorial project containing the geometry into your own workbench.

The following picture demonstrates the original geometry that should be visible after importing the tutorial project.

centrifugal pump geometry for cfd analysis
Figure 2: Imported CAD model of a water pump in the SimScale workbench.

1.1 Geometry Preparation

Before starting to work using SimScale’s fluid simulator analysis with rotation, we need to make sure to prepare the CAD model to be compatible with this kind of analysis. This tutorial project contains two geometries, shown in the picture below:

creating the flow region for a centrifugal pump geometry simulation
Figure 3: Original pump geometry (left) and flow volume ready for Simulation (right).

The first one (Original Geometry) consists of the actual pump and its blades. It still requires some preparation before it’s ready to use for CFD simulations.

What we need for a CFD simulation is the second geometry (Centrifugal Pump). It contains the flow region, as well as a volume for the rotating zone. The steps to make the original geometry CFD-ready are fully described in the following articles:

1.2 Create the Simulation

Make sure the Centrifugal Pump geometry is selected for this simulation project:

creating a new simulation for a water pump
Figure 4: Creating a new simulation for the centrifugal pump geometry.

Hitting the ‘Create Simulation’ button leads to the following options:

simulation analysis types possible within simscale
Figure 5: Analysis types available. For this project, Incompressible is chosen.

Choose Incompressible as analysis type and ‘Create the Simulation‘.

At this point, the simulation tree will be visible in the left-hand side panel. To run the simulation, it’s necessary to set up the simulation tree entries.

global simulation settings centrifugal pump
Figure 6: Global simulation settings for the centrifugal pump tutorial

The global simulation settings remain as default, as in the figure above. With a Steady-state analysis, we will obtain the equilibrium state of the system, when the parameters no longer change with time.

Did you know?

The k-omega SST turbulence model is commonly used in turbomachinery applications. Within the pump blades, the flow experiences separation, which is effectively captured by the k-omega SST turbulence model.

2. Assigning the Material and Boundary Conditions

In order to have an overview, the following picture shows the boundary conditions applied for this simulation:

boundary conditions centrifugal pump cfd simulation
Figure 7: Overview of the boundary conditions for the centrifugal pump simulation

Did you know?

Velocity Inlet and Pressure Outlet is a very common combination used in CFD simulations as it often results in good stability. This combination permits flow to adjust in order to assure mass continuity.

2.1 Define a Material

This simulation will use water as a material. Therefore click on the ‘+ button’ next to materials. Doing this opens the SimScale fluid simulator material library as shown in the figure below:

library of available materials for cfd simulations
Figure 8: Library of available materials.

Select ‘Water’ and click ‘Apply’. A window opens up with the water properties. Keep the default values and assign the Volume, using the right-hand side panel.Doing so opens the properties of water, keep the defaults, and assign the entire volume to the water.

assigning material to a volume
Figure 9: Assigning water to the flow region. Note that the rotating zone volume is not selected

2.2 Assign the Boundary Conditions

In the next step, boundary conditions need to be assigned as in figure 7, we have a velocity inlet, a pressure outlet, walls, and a rotating zone.

a. Velocity Inlet

After hitting the ‘+ button’ next to boundary conditions, a drop-down menu will appear, where one can choose between different boundary conditions.

boundary conditions for incompressible analysis
Figure 10: Choosing velocity inlet boundary condition to apply to the inlet face.

After selecting the velocity inlet, the user has to specify some parameters and assign faces. Please proceed as below:

applying velocity inlet boundary condition to a face
Figure 11: Assigning the first boundary condition to a face.

b. Pressure Outlet

Create a new boundary condition, this time a Pressure outlet. Make sure (P) Gauge Pressure is set to Mean value = 0.

setting up a pressure outlet boundary condition
Figure 12: Assign the second boundary condition to the outlet face.

c. Wall

All solid walls should receive a no-slip condition. We can make use of SimScale’s quick selection tools to save time. A topological entity set will be created, as this set of faces will be used again during the setup. Topological entity sets allow the user to re-select a group of faces in a single click.

Please follow these steps:

  • 1: Hide the MRF Rotating Zone volume by clicking on the “eye” icon next to it;
  • 2: Right-click in the viewer and then on Select all;
  • 3: Unselect the inlet and outlet;
creating a topological entity set for the pump walls
Figure 13: Selecting all walls with SimScale’s quick selection tools.
  • 4: Click on the ‘+ button’ next to Topological Entity Sets in the right-hand side panel;
  • 5: Name this entity set as ‘Walls’.
creating a topological entity set
Figure 14: Final steps to create a topological entity set for the walls.

Afterwards, create a Wall boundary condition and assign it to the newly created topological entity set.

wall boundary conditions applied to a water pump
Figure 15: Assigning a no-slip wall boundary condition to the walls topological entity set.

2.3 Advanced Concepts: Creating a Rotating Zone

In the simulation tree, please expand Advanced concepts. Click on the ‘+ button’ next to Rotating zones and select ‘MRF Rotating Zone’. Define the MRF zone as shown:

setting up a mrf rotating zone for a water pump
Figure 16: Rotating zone parameters. All entities within this rotating zone will be rotating at 350 rad/s.

Did you know?

MRF Rotating zones are chosen in this simulation, because we are running a steady state simulation.
If we were calculating a transient problem, we would need to choose AMI Rotating Zone.
This article provides more information about the difference between MRF and AMI Rotating Zones.

2.4 Numerics and Simulation Control

Don’t worry about the Numerics settings, as their default values are optimized according to the chosen analysis type, hence valid for the majority of simulations. If you are a simulation expert, however, you can have a look at them and change the settings as you like.

In Simulation control, enable Potential foam initialization. This enhances stability for velocity-driven flows, especially in early iterations.

simulation settings for control in the simscale platform
Figure 17: Simulation control settings.

2.5 Result Control

Result control gives you the opportunity to observe the convergence behavior at specific locations in the model during the calculation process. Hence it is an important indicator to evaluate the quality and trustability of the results. We will have a look at this later in the tutorial, so let’s see how to set them up first:

For this simulation, please set a Forces and moments control to the impeller as demonstrated in the picture below:

creating a forces and moments control
Figure 18: Forces and moments control for the impeller.

To save time, there’s a pre-saved topological entity set for the Impeller surfaces.

Now follow the same workflow as before but select Surface data. Create an Area average for the inlet and another one for the outlet, as shown in the picture below.

area average controls centrifugal pump simulation
Figure 19: Average monitors set at the inlet and outlet.

Repeat the process, but this time for the outlet.

3. Mesh

To create the mesh, we recommend using the Standard algorithm, which is a good choice in general as it is quite automated and delivers good results for the most geometries.

Make sure it is set up as shown below. For this project, layers will be manually specified.

mesh settings for a standard mesh centrifugal water pump simulation
Figure 20: Standard meshing tool settings. Highlights indicate settings different from default.

Did you know?

It’s necessary to define cell zones whenever we want to apply a specific property, such as a rotating motion, to a subset of cells.

The standard mesher automatically creates the necessary cell zones whenever Physics-based meshing is enabled. Since we are using physics-based meshing in this tutorial (see figure 20), the algorithm will take care of the cell zone definition.

If you are using a different mesher, you can learn alternative ways to define a cell zone in the rotating zones documentation page.

3.1 Mesh Refinements

a. Inflate boundary layer

To create an Inflate boundary layer refinement, click on the ‘+ button’ next to Refinements. Choose the appropriate refinement from the drop-down window.

inflate boundary layer refinement for the pump geometry
Figure 21: Applying layer refinement to capture the near-wall profiles more accurately.

Make sure the settings are as follows and assign it to the previously created Walls topological entity set.

selecting faces for a boundary layer refinement
Figure 22: Assigning the boundary layer refinement to a predefined topological entity set.

b. Local element size refinement

Create a new refinement, this time local element size, and set it up as shown. Apply it to a pre-defined entity set named local element size refinement.

standard meshing tool local element size for a pump geometry
Figure 23: Applying local element size refinement to thin surfaces.

3.2 Generating the Mesh

Now you can hit the ‘Generate mesh’ button in the global mesh settings presented in figure 20. After about six minutes you will receive the following mesh:

standard mesh for a centrifugal water pump simulation geometry
Figure 24: Finished mesh.

You can use mesh clip to check the quality of your mesh, as shown in the figure below:

mesh clip showing the internal of a standard mesh for pump geometry
Figure 25: Create a mesh clip to inspect your mesh more detailed.
  1. Hit the ‘Mesh Clip’ button.
  2. Define the normal of the cutting plane.
  3. Hit ‘Generate Mesh Clip’

After a few minutes, you will see the inside of your mesh. This mesh looks sufficient for this tutorial.

Did you know?

Generating meshes with good quality metrics is important. These meshes increase the stability of the simulation runs, and also increase the confidence level in the results.

For a complete overview of mesh quality and its importance in CFD simulations, make sure to visit this documentation page.

4. Start the Simulation

set up ready to start a simulation
Figure 26: Set up ready to run simulations.

Now you can ‘Start’ the simulation. While the results are being calculated you can already have a look at the intermediate results in the post-processor by clicking on ‘Solution Fields’. They are being updated in real-time!

It takes about 60 minutes for the simulation to finish. In the reference project, we calculated a few more steps, to ensure convergence, that’s why it says 105 min in the figure below. However, fewer steps are sufficient and you can save some core hours.

accessing the post-processing environment
Figure 27: With Solution fields, you can also access intermediate result sets while the simulation is running.

Did you know?

With SimScale, it’s easy to get the pump curve for your geometry. You can run multiple simulations in parallel, only changing the flow rate (in the velocity inlet boundary condition).
For more information about pump curves, please check out this blog post.

5. Post-Processing

5.1 Convergence Behavior

With the previously set result controls, it’s possible to assess convergence. As the iterations go on, key parameters are expected to stop changing. At this point, the simulation is considered converged.

So what are the key parameters? For a centrifugal pump simulation, the velocity at the outlet, the pressure at the inlet, and forces onto the impeller are parameters of interest. For example, let’s have a look at velocity at the outlet:

assessing convergence with result controls
Figure 27: Velocity at the outlet control. After roughly 600 iterations, results are very stable.

Also, make sure to check the convergence plots to see residual levels. Smaller residuals indicate a more tightly converged solution. This article gives more insight into convergence in CFD simulations.

5.2 Pressure visualization

In order to visualize the flow pattern, head to the post-processor with one of the following ways:

there are two ways to enter the post processor and check the visualization of the results
Figure 28: The two ways to enter the post-processor

In order to visualize just the blades and the bottom face of the impeller, manually select all the faces you want to hide. Then right-click on the workbench and select the ‘Hide selection option’:

selecting faces to hide
Figure 29: You can control the visibility of faces by selecting them and right-clicking on the workbench, so that the menu above appears.

Eventually all external faces will be hidden. Select the ‘Pressure’ as Coloring, and the pressure distribution on the desired faces will be shown:

pressure distribution on blades and bottom of impeller inside centrifugal pump
Figure 30: The pressure visualization on the blades and bottom surface of the impeller reveal a high distribution on the edge towards the exit of the turbines, near the exit of the fluid.

5.3 Cutting Plane

To get a better understanding of what is going on inside the pump, remove any predefined filters and make sure that you are at the last timestep, then proceed to add a ‘Cutting Plane’ filter:

new cutting plane
Figure 31: After clicking the Add Filter, a menu with all the available post-processing features appears, including the cutting plane.

Apply the following settings:

  • Make sure to hide all the parts by toggling off the Parts Color;
  • Enter the coordinates of the cutting plane: ‘0, 0, 0’;
  • Set the ‘X‘ as the Orientation axis. The cutting plane will be normal to it.

This is how the cutting plane will appear:

cutting plane normal to the x axis centrifugal pump
Figure 32: This cutting plane normal to the X-axis shows the behavior of the flow when exiting the model.

Near the edges of the blades, the acceleration of the flow can be distinguished due to the representation with a warmer color compared to its surroundings.
You can also toggle on the vectors to check the flow direction of the field in different areas.

  • Change the Coloring to ‘Solid color’, and select the black square from the available options;
  • Then set the Scale factor to ‘0.09’ and the Grid Spacing to ‘0.015’;
  • Activate the ‘Project vectors onto plane’ option.
vector on cutting plane
Figure 33: Velocity contours with velocity vectors plotted. In areas where the fluid accelerates, such as the tips of the blades, and the entrance to the outlet, the vectors are also enlarged.

Other configurations for the cutting plane will give you additional information:

  • Change the Orientation to ‘Y’. Now the cutting plane will be normal to the Y axis;
  • Set the Scale factor to ‘0.1’ and the Grid Spacing to ‘0.012’.
This image has an empty alt attribute; its file name is Cutting-plane-Y-axis-1-1024x580.jpg
Figure 34: A different cutting plane configuration to observe the flow pattern around the blades from a different perspective.

Analyze your results with the SimScale post-processor. Have a look at our post-processing guide to learn how to use the post-processor.


If you have questions or suggestions, please reach out either via the forum or contact us directly.

Last updated: September 11th, 2021

Data Privacy