# Wind around Buildings - CFD Simulation

Source: https://help.sim-flow.com/tutorials/buildings
Last updated: 2026-10-14

[Video](https://help.sim-flow.com/tutorials/images/buildings.mp4)

## 1. Introduction

In this tutorial, we will present the simulation of wind flow around buildings. The aerodynamics of buildings is a growing challenge in today’s construction industry. Here we will present one of the possible ways of analyzing the wind flow through urbanized areas.

An important aspect of this problem is the proper modeling of the boundary conditions. We will use a specially dedicated boundary condition for the inlet - *Atmospheric Inlet*. It defines the flow profiles of mean wind speed and turbulence quantities that are applied in the inlet plane. These profiles are fully developed and representative of the terrain characteristics of the upstream part that is not included in the computational domain.

Finally, we will read the wind velocity which may affect pedestrians between the buildings. We will display the pressures on buildings that may affect their construction.

## 2. Download SimFlow

SimFlow is a general-purpose [CFD Software](https://sim-flow.com/download/cfd-simulation-software/)

To follow this tutorial, you will need the SimFlow free version. You may download it via the following link:
[Download SimFlow](https://sim-flow.com/download-simflow/)

## 3. Create Case

Open SimFlow and create a new case named *buildings*.

1. Click **New**
2. Provide name `buildings`
3. Click **Create** to open a new case

![simflow-launcher](https://help.sim-flow.com/tutorials/images/launcher-buildings.png)

## 4. Import Geometry

Firstly, we need to [Download GeometryBuildings](https://help.sim-flow.com/tutorials/downloads/buildings/buildings.step)
The geometry will be imported in the same units as it was exported to the STEP format.

1. Click **Import Geometry**
2. Select geometry file *buildings.step*
3. Click **Open**

![Geometry Import](https://help.sim-flow.com/tutorials/images/import-buildings.png)

## 5. Import Geometry II

In some cases, the imported external geometry may contain multiple parts. SimFlow will ask you whether you want to join all geometries into a single component. If not, each part will be put into separate items.

For the purposes of this tutorial, we will combine all parts into a single geometry.

1. Press **Yes** button

![b 03 import notice](https://help.sim-flow.com/tutorials/images/buildings/b-03-import-notice.png)

## 6. Geometry - Buildings

After importing the geometry, it will appear in the 3D window.

1. Click **Fit View** to zoom in on the geometry

![b 04 geometry buildings](https://help.sim-flow.com/tutorials/images/buildings/b-04-geometry-buildings.png)

## 7. Create Geometry - Refinement

To be able to better resolve flow around the buildings, we will create an area with a higher mesh resolution. To do this, we will add a box geometry.

1. Select **Create Box**
2. Change geometry name from *box_1* to `refinement`
3. Expand *Properties*
4. Set the origin and box dimensions
   *Origin \({\sf [m]}\)*`-20``-80``0`
   *Dimensions \({\sf [m]}\)*`250``160``85`

![b 05 refinement](https://help.sim-flow.com/tutorials/images/buildings/b-05-refinement.png)

## 8. Meshing Properties - Buildings

After the geometry is ready, we can proceed to define meshing properties. To better resolve the flow around the buildings, we want to refine the mesh near the buildings geometries by specifying minimum and maximum refinement levels.

1. Go to *Hex Meshing* panel
2. Select *buildings* geometry
3. Enable *Meshing Geometry*
4. Set the minimum and maximum refinement level
   *Refinement* *Min 2* *Max 4*

![b 06 hex meshing](https://help.sim-flow.com/tutorials/images/buildings/b-06-hex-meshing.png)

## 9. Meshing Parameters - Refinement

The *refinement* geometry should be used only for marking refinement zones. Set the proper parameters for the refinement regions.

1. Click on the *refinement* geometry
2. Enable *Refine Geometry*
3. Set the refinement *Level* to `1`

![b 07 refinement](https://help.sim-flow.com/tutorials/images/buildings/b-07-refinement.png)

## 10. Base Mesh

Base Mesh is a domain mesh of our simulation from which the final mesh will be created by cutting out the geometry of the buildings.

1. Go to *Base* tab
2. Define base mesh parameters accordingly
   *Min \({\sf [m]}\)*`-300``-300``0`
   *Max \({\sf [m]}\)*`500``300``400`
3. Set the division of the base mesh and its grading
   *Division*`32``24``18`
   *Grading*`1``1``1.07`

![b 08 base mesh](https://help.sim-flow.com/tutorials/images/buildings/b-08-base-mesh.png)

## 11. Base Mesh Boundaries

We need to assign individual names to each side of the base mesh in order to be later able to define different conditions on each side. To achieve a simplified slip condition on side and top boundaries, we will use symmetry as a boundary type.

1. Define boundary names accordingly
   *X-* *inlet*
   *X+* *outlet*
   *Y-* *right*
   *Y+* *left*
   *Z-* *bottom*
   *Z+* *top*
2. Define boundary types accordingly
   *Y-* *Symmetry*
   *Y+* *Symmetry*
   *Z-* *Wall*
   *Z+* *Symmetry*

![b 09 base mesh boundaries](https://help.sim-flow.com/tutorials/images/buildings/b-09-base-mesh-boundaries.png)

## 12. Material Point

Material Point tells the meshing algorithm on which side of the geometry the mesh is to be retained. We are simulating flow around the buildings, so our material point needs to be located inside the base mesh but outside the buildings.

1. Go to *Point* tab
2. Specify location inside base mesh but outside buildings geometries
   *Material Point*`0``0``160`

![b 10 material pointpng](https://help.sim-flow.com/tutorials/images/buildings/b-10-material-pointpng.png)

## 13. Start Meshing

Everything is now set up for meshing.

1. Go to *Mesh* tab
2. Press the **Mesh** button to start the meshing process

![b 11 meshing](https://help.sim-flow.com/tutorials/images/buildings/b-11-meshing.png)

## 14. Mesh

The new mesh will be displayed in the graphics window. To show the mesh of the buildings, we can use the *Graphics Object List* to hide some boundaries.

1. Click **Graphics Object List** icon
2. Select **Mesh** to show meshes list

![b 17 mesh](https://help.sim-flow.com/tutorials/images/buildings/b-17-mesh.png)

## 15. Mesh - Toggle Visibility

You can hide domain boundaries to inspect the mesh on the buildings.

1. Hide the following objects
   *inlet*
   *left*
   *outlet*
   *right*
   *top*

![b 18 mesh hide](https://help.sim-flow.com/tutorials/images/buildings/b-18-mesh-hide.png)

## 16. Simulation Type

We want to analyze the airflow around buildings. For this purpose, we will use a single-phase, steady-state simulation of incompressible turbulent flow.

![Simulation Panel](https://help.sim-flow.com/assets/images/go-to-simulation-panel@2x.png)

![Step 1](https://help.sim-flow.com/assets/images/solvers-selection/simpleFoam/01_single_phase@2x.png)

![Step 2](https://help.sim-flow.com/assets/images/solvers-selection/simpleFoam/02_low_speed@2x.png)

![Step 3](https://help.sim-flow.com/assets/images/solvers-selection/simpleFoam/03_steady-state@2x.png)

![Step 4](https://help.sim-flow.com/assets/images/solvers-selection/simpleFoam/04_apply@2x.png)

## 17. Turbulence

We are going to use the \(RNG \; k{-}\epsilon\) model to handle turbulence.

1. Go to *Turbulence* panel
2. Select turbulence model
   *Turbulence Modelling* *RANS*
3. Change default turbulence model
   *Model* *\(RNG \; k{-}\epsilon\)*

![b 20 turbulence](https://help.sim-flow.com/tutorials/images/buildings/b-20-turbulence.png)

## 18. Boundary Conditions - Inlet

On the inlet boundary, we are going to apply the *Atmospheric Inlet* boundary condition. It is a dedicated condition for atmospheric airflow. The *Atmospheric Inlet* provides log-law type ground-normal inlet boundary conditions for wind velocity and turbulence quantities. It is applied for homogeneous, two-dimensional, dry-air equilibrium and neutral atmospheric boundary layer modeling. More about the *Atmospheric Inlet* boundary condition you can find [here](https://help.sim-flow.com/boundary-conditions/atmospheric-inlet).

1. Go to *Boundary Conditions* panel
2. Select *inlet* boundary
3. Change boundary character to *Atmospheric Inlet*
4. Set the velocity
   *\(U_{ref}\) \({\sf [m/s]}\)*`5`

![b 21 bc inlet](https://help.sim-flow.com/tutorials/images/buildings/b-21-bc-inlet.png)

## 19. Monitors - Sampling (I)

During the 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. We will monitor the pressure and velocity at a height of 2 meters from the ground. Note that runtime postprocessing can only be defined before starting calculations and cannot be changed later on.

1. Go to *Monitors* panel
2. Switch to *Sampling* tab
3. Select *Create Slice*
4. Set slice plane location
   *Point \({\sf [m]}\)*`0``0``2`

![b 23 monitors slice](https://help.sim-flow.com/tutorials/images/buildings/b-23-monitors-slice.png)

## 20. Monitors - Sampling (II)

Now, create a vertical slice.

1. Select *Create Slice*
2. Select *slice_2*
3. Set slice normal vector
   *Normal \({\sf [-]}\)*`0``1``0`

![b 24 monitors slice2](https://help.sim-flow.com/tutorials/images/buildings/b-24-monitors-slice2.png)

## 21. Monitors - Sampling (III)

Now, specify which results should be sampled on the section planes.

1. Expand *Fields* list
2. Select pressure *p* and velocity *U*

![b 25 monitors fields](https://help.sim-flow.com/tutorials/images/buildings/b-25-monitors-fields.png)

## 22. Run - Time Control

Finally, we can start our computation.

1. Go to *RUN* panel
2. Set the maximum *Number of Iteration* to `500`

![b 26 run](https://help.sim-flow.com/tutorials/images/buildings/b-26-run.png)

## 23. Run - CPU

To speed up the calculation process, take advantage of parallel computing and increase the number of CPUs based on your PC’s capability. The free version allows you to use only one processor (serial mode). To get the full version, you can use the contact form to [Request 30-day Trial](https://license.sim-flow.com/trial)

Estimated computation time for serial mode: 5 minutes

1. Switch to *CPU* tab
2. Click **Run Simulation** button

![run cpu serial](https://help.sim-flow.com/tutorials/images/run-cpu-serial.png)

## 24. Residuals

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

![b 28 residuals](https://help.sim-flow.com/tutorials/images/buildings/b-28-residuals.png)

## 25. Slice - Velocity Field

The *Slices* tab appears next to the *Residuals* tab. Under this tab, we can preview results on the defined section plane.

1. Change tab to *Slices*
2. Select the velocity *U*
3. Click *Adjust range to data*
4. Click **Graphics Object List** icon
5. Navigate to *GEOMETRIES*
6. Show the *buildings*

![b 29 slice](https://help.sim-flow.com/tutorials/images/buildings/b-29-slice.png)

## 26. Postprocessing - ParaView

After computations are finished, we can do a complex visualization of our results with ParaView.

1. Go to **Postprocessing** panel
2. Start **ParaView**

![b 30 postprocessing paraview](https://help.sim-flow.com/tutorials/images/buildings/b-30-postprocessing-paraview.png)

## 27. ParaView - Load Results

Load the results into the program.

1. Make sure you have your case selected *buildings.foam*
2. Click **Apply** to load results
3. Select contour coloring variable to *U*
4. Click *Last Frame* to load the final result set
5. After loading results, they will be shown in the 3D graphic window

![b 31 pv import](https://help.sim-flow.com/tutorials/images/buildings/b-31-pv-import.png)

## 28. ParaView - Clip

To limit the investigation area, we will *Clip* the domain by the box.

1. Select *Clip* option
2. Change the *Clip Type* to *Box*
3. Enter box parameters accordingly
   *Position*`-70``-90``0`
   *Rotation*`0``0``0`
   *Length*`400``180``40`
4. Click *Apply*

![b 32 pv clip](https://help.sim-flow.com/tutorials/images/buildings/b-32-pv-clip.png)

## 29. ParaView - Velocity Field

Now we will create a velocity magnitude parameter. It will be helpful in scaling and coloring the velocity vector field.

1. Make sure you have *Clip1* field selected
2. Select *Calculator*
3. Type the `magU` as *Result Array Name*
4. Type the formula `mag(U)`
5. Click *Apply*

![b 33 pv calc](https://help.sim-flow.com/tutorials/images/buildings/b-33-pv-calc.png)

## 30. ParaView - Velocity Field Settings

To visualize the flow around the building, we will create a vector field.

1. Make sure you have *Calculator1* field selected
2. Select *Glyph* option
3. Set the scale factor to `2`
4. Change the *Maximum Number Of Sample Points* to `2000`
5. Click *Apply*
6. Hide the *Calculator1* field
7. Click *Rescale to Data Range*

![b 34 pv glyph](https://help.sim-flow.com/tutorials/images/buildings/b-34-pv-glyph.png)

## 31. ParaView - Import Geometry (I)

To display results with the original geometry, we can import the case once again and select only suitable boundaries. Now, we will import the buildings and the ground boundaries.

1. Click **Open**
2. Select the **buildings.foam** file from the case directory *…/buildings/buildings/buildings.foam*
3. Click **OK** button

![b 35 pv import geometry](https://help.sim-flow.com/tutorials/images/buildings/b-35-pv-import-geometry.png)

## 32. ParaView - Import Geometry (II)

1. Check *bottom* and *buildings* instead of *internalMesh* boundary
2. Click **Apply** button to show the geometry
3. Set the coloring as *Solid Color*

![b 36 pv import geometry 2](https://help.sim-flow.com/tutorials/images/buildings/b-36-pv-import-geometry-2.png)

## 33. ParaView - Display Velocity Field

Now we can see the velocity vector field around the buildings.

![b 37 pv vector field](https://help.sim-flow.com/tutorials/images/buildings/b-37-pv-vector-field.png)

## 34. ParaView - Pressure on Buildings (I)

To display pressure on the buildings, we need to hide the vector field and change the coloring to the pressure.

1. Hide the *Glyph1*
2. Select *buildings.foam* field (with the buildings and ground boundaries)
3. Change the coloring set to pressure *p*

![b 38 pv buildings pressure](https://help.sim-flow.com/tutorials/images/buildings/b-38-pv-buildings-pressure.png)

## 35. ParaView - Pressure on Buildings (II)

The pressure field is displayed on the selected boundaries.

![b 39 pv buildings pressure](https://help.sim-flow.com/tutorials/images/buildings/b-39-pv-buildings-pressure.png)

## 36. Advanced Postprocessing with ParaView

This concludes the tutorial, covering all the aspects we intended to showcase. For a finely tuned presentation of the results, you may take advantage of the more advanced features.

In ParaView, you can display streamlines, contour plots, vector fields, line or time plots, calculate volume or surface integrals and create animations.

To familiarize yourself with the ParaView capabilities, it’s worth checking out our video tutorial, *Paraview CFD Tutorial - Advanced Postprocessing in ParaView*, in which we demonstrate some of the most commonly used postprocessing techniques.

[Paraview CFD Tutorial - Advanced Postprocessing in ParaView](https://www.youtube.com/watch?v=5M6VgXyHB60&list=PLy7xPqn9xXckoD2gZgPpv8mrxillJ9PWU&index=21)
