Flow over a backward facing step using Coverge
Aim:-> To compare the result for flow over backward facing step at various mesh sizes.
Theory:-
Backward Facing Step (BFS) flow, also called as “sudden expansion flows”, “circular expanding flow”, “back-step flow”, “diverging channel” or “backward flow”. It is a simple representative model for separation flows, which can be widely seen in aerodynamic flows (airfoil, spoiler), engine flows, condensers, vehicles, heat transfer systems, and even the flow around buildings, etc. The flow separation after a simple stage will introduce separation bubble formation, evolution and re-attachment process, which is dependent on the BFS geometric design, the inlet and outlet conditions, turbulent intensity, as well as heat transfer conditions. As a typical kind of separation flow model, Backward-Facing Step (BFS) has been studied as an important flow dynamic model for more than half a century by various theoretical, experimental and numerical methods, while the real step flow designs can be found with the early years of natural world.

When fluid flow over a solid body, the velocity of fluid at boundary is zero. As we move away from boundary in perpendicular direction the velocity of fluid increases to free stream velocity. This is happening because when the fluid flows over object, the molecules right next to the surface stick to the surface due to viscosity. The molecules just above the surface are slowed down as collision happens with the previous layer's molecules. And similarly goes on with further layers as shown in above figure. And at some point, the flow velocity reaches at free stream velocity.
When the boundary layer separates, its remnants form a shear layer and the presence of a separated flow region between the shear layer and surface modifies the outside potential flow and pressure field. In the case of airfoils, the pressure field modification results in an increase in pressure drag, and if severe enough will also result in stall and loss of lift, all of which are undesirable.
![]() |
The flow field of BFS is also generally divided into four regions: separated shear layer, the recirculation region under the shear layer, the reattachment region, and the attached/recovery region. From the viewpoint of a flow dynamics, the BFS flow happens with large separation vortices in the backward step region and with some small vortex in the corner. Sometimes complex vortex series will also happen under different Re and geometric conditions. Just after leaving the step surface due to momentum of particles the flow attached to surface after several distance, the distance is called as reattachment distance and zone is called as reattachment zone.
It is seen from number of research experiments that the vortices start to develop in the laminar region at Re = 800, but it becomes very pronounced at Re = 2300, and damped out at Re = 5000. It was indicated that in both the pure laminar (Re < 400) and the fully turbulent (Re > 6600) flow regimes, the flow is indeed two-dimensional over large parts of the width of the test section.
The presence of a separated flow, together with a reattaching flow, gives rise to increased unsteadiness, pressure fluctuations, structure vibrations and noise, as it also exhibits an unsteady structure with a large-scale vortex in the separated shear layer and low-frequency motion around the reattachment region with fluctuation of an instantaneous reattachment point.
Case setup:-
- Import .stl geometry file in converge.
- Then choose appropriate faces to define boundaries.

- After creating boundaries give them meaningful name so one can easily understand it.
- Then check orientation for normal, the normal should point toward fluid.
- Run diagnosis to check errors present in geometry.
- Now start with case setup, expand case setup window by clicking on 'Begin case setup'.

- Choose 'time based' application type.
- The go for material tab, uncheck reaction mechanism tab and include species mechanism tab.
- Then choose predefined mixture as air and hit on apply.
- Validate transport parameters.
- Add gas species as O2 and N2 under species tab.
- Now come to run parameter tab and consider steady state solver.
- Also use simulation mode as 'full hydrodynamic' and gas flow solver as 'compressible'.
- Then go under 'misc' tab enable 'Steady state monitor' check box and uncheck 'Use shared memory' box.
- Then apply setting and open Physical model.
- In turbulence model option use k-omega model.
- Now open simulation time parameter tab.

- Provide values for time parameter as per above figure.
- As the simulation is steady state hence time parameter is considered in number of cycles.
- Then open solver parameter tab and consider 'Pressure based solver'.
- Open region and initialization tab and create user defined region with air species.
- Then open boundary condition tab and apply boundary conditions. Also provide User defined region under region name column.
- Then open solver parameter and inside that open steady state solver control tab.
- Give maximum convection CFL limit as 0.7.
- Now open steady state monitor and add first configuration as AVG_VELOCITY.
- Use target type as 'Boundary' and target as 'Output'.
- The output will save in mass_avg_flow.out file.
- Then provide value in quantity monitor as follows.

- Then start with grid definition.
- Open base grid tab.
- Enter the mesh element size in X, Y and Z direction.

- Hit 'ok' to save changes.
- Check fixed embedding box and give values as per following table.

- Open Post variable selection.
- Under species in option post variable tab add mass fraction of O2 & N2.
- Then open 'Output file' tab.
- Provide writing time intervals.

- As case setup is completed, export all input files in specific folder.
- Then using Cygwin run simulation.
- Convert output files using Cygwin or Converge as per following procedure
- Then postprocessed data using ParaView and obtain contours and plots.
~Pre-processing:-
Geometry:-
![]() |
In the above geometry of channel flow the fluid flows in '+ve' X direction. The fluid is considered as air (`O_2:N_2 = 0.23:0.77`) here.
Initial and boundary conditions:-
- Inlet: (Bound_id_1)
- Boundary type: Inflow
- Pressure = 110325 Pa
- Temperature = 300k
- Species = Air
- Outlet: (Bound_id_2)
- Boundary type: Outflow
- Pressure = 101325 Pa
- Temperature = 300k
- Species = Air
- Top & bottom:
- Boundary type: Wall
- Law of wall
- Front face:
- Boundary type: 2D
- Back face:
- Boundary type: 2D
~Post-processing:-
Case 1 (dx=dy=dz=0.002m):
![]() |
|
Fig: Mesh preview |
![]() |
| Fig: Cell count and cell distribution for processing core |
![]() |
|
Fig: Velocity contour |
![]() |
| Fig: Plot showing average velocity at inlet and outlet at various cycles |
![]() |
|
Fig: Pressure contour |
![]() |
|
Fig: Plot showing static pressure at inlet and outlet at various cycles |
![]() |
|
Fig: Velocity stream vectors |
![]() |
| Fig: Plot showing mass flow rate at inlet and outlet at various cycles |
Case 2 (dx=dy=dz=0.0015m):
![]() |
|
Fig: Mesh preview |
![]() |
| Fig: Cell count and cell distribution for processing core |
![]() |
|
Fig: Velocity contour |
![]() |
| Fig: Plot showing average velocity at inlet and outlet at various cycles |
![]() |
|
Fig: Pressure contour |
![]() |
|
Fig: Plot showing static pressure at inlet and outlet at various cycles |
![]() |
|
Fig: Velocity stream vectors |
![]() |
| Fig: Plot showing mass flow rate at inlet and outlet at various cycles |
Case 3 (dx=dy=dz=0.001m):
![]() |
|
Fig: Mesh preview (Expanded view) |
![]() |
| Fig: Cell count and cell distribution for processing core |
![]() |
|
Fig: Velocity contour |
![]() |
| Fig: Plot showing average velocity at inlet and outlet at various cycles |
![]() |
|
Fig: Pressure contour |
![]() |
|
Fig: Plot showing static pressure at inlet and outlet at various cycles |
![]() |
|
Fig: Velocity stream vectors |
![]() |
| Fig: Plot showing mass flow rate at inlet and outlet at various cycles |
When we observe the above contours and graphs its easy to understand as plots and contours are self explainary.
The above postprocessed data can be classify in 2 parts contours and plots.
The mesh contour shows discretized geometry with particular element size like 0.002m. As while setting up case we have provided fixed embedding of scale 1 and of 1 layer at walls, it results fine meshing at walls. This helps us to understand near wall phenomenon more precisely.
Then pressure and velocity contours showing pressure and velocity at every mesh element. In contours blue color defines lowest magnitude and red color defines highest magnitude. In Velocity contour flow separation phenomenon visible clearly. In addition to observe recirculation of vortices stream vector contour is provided here. For the most fine mesh (mesh element size 1mm) the contour is smooth as compare two other two conditions.
Bound_id_1 denotes inlet boundary and bound_id_2 denotes outlet. The plots showing mass flow rate, static pressure and average velocity are provided above which shows fluctuations in values with respect to number of cycles. The fluctuating values becoming stable after certain cycle shows results are converging.
The plot with title of cell count shows number of cells processed during simulation by single processor. As we are using 4 cores so rank 0 denotes 1st core and rank 3 denotes 4th core. Total number of elements in geometry can be calculated using addition of all cells in plot i.e., addition of cell by rank 0 to rank 3.
Flow contour animation:-

The above animation clearly shows (Flow physics) how flow is passing over backward facing step and flow separation. From legend blue color shows least pressure which is forming behind step (recirculation region) which happens due to increase in pressure gradient. But as geometry length is less so we cannot able to watch reattachment phenomenon clearly.
Conclusion:- By analyzing post processed data it can be conclude that-
- With decrease in mesh element size, the computational time increases.
- For refined mesh the contour looks more smooth and more accurate.
- Decreased in mesh size results increase in cell counts.
- Bounnd_id_1 and bound_id_2 denotes inlet and outlet respectively.
- During initial cycles the plot values are fluctuating, but after some cycles those are becoming stable which indirectly shows that we are getting converged solution.
- Pressure gradient is increasing behind step which causes vortex creation in recirculation region.

























