4.6. Digital Wind Tunnel II: Wind Loads on Isolated Building with Complex Geometry

Problem files


In this example, the CFD-based workflow for determining the wind-induced response of a building with arbitrary geometry is demonstrated. The shape of the study building resembles a landmark tall building i.e., Willis Tower (formerly known as Sears Tower) located in Chicago, Illinois, United States. In full-scale, the building measures 442.1 m high after some geometric simplification. Fig. 4.6.1 shows the STL representation of the building to be imported to the workflow. Except for the building geometry, most of the input parameters used in this example are similar to the example in Section 4.5.


Fig. 4.6.1 Geometry and configuration of the study building

In this example, the simulation is conducted in full-scale. The geometric and flow properties are given in Table 4.6.1. The detailed CFD-based workflow is illustrated in Workflow.

Table 4.6.1 Parameters needed to define the CFD model






Building width




Building depth




Building height




Geometric scale



Velocity scale



Time scale



Roof-height mean wind speed




Duration of the simulation




Wind direction




Aerodynamic roughness length in full scale




Air density




Kinematic viscosity of air




Sampling frequency (rate)



The upwind condition chosen for this example is open exposure type with aerodynamic roughness length of \(z_0 = 0.03\) for wind direction \(\theta = 0^o\). For simplicity, the effect of the surrounding buildings is neglected and a smooth inflow boundary condition is adopted at the inlet.

4.6.1. Workflow

In this example, the overall workflow is demonstrated by introducing uncertainty in the structural model. No uncertainties were considered in the wind parameters or CFD simulations. The user needs to go through the following procedure to define the Uncertainty Quantification (UQ) technique, building information, structural properties, and CFD model parameters.


This example can be directly loaded from the menu bar at the top of the screen by clicking “Examples”-“E6: Wind Load Evaluation on a Complex Shape Isolated Building Using CFD”. UQ Method

Specify the details of uncertainty analysis in the UQ panel. This example uses forward uncertainty propagation. Select “Forward Propagation” for UQ Method and specify “Dakota” for the UQ Engine driver. For specific UQ algorithms, use Latin Hypercube (“LHC”). Change the number of samples to 500 and set the seed to 101.


Fig. Selection of the Uncertainty Quantification Technique General Information

Next, in the GI panel, specify the properties of the building and the unit system. For the # Stories use 108 assuming a floor height of approximately 4 m. Set the Height, Width and Depth to 442.1, 68.58 and 68.58 with a Plan Area of 4703.22. Define the units for Force and Length as “Newtons” and “Meters”, respectively.


Fig. Set the building properties in GI panel Structural Properties

In the SIM panel, select the “MDOF” generator. Specify the Floor Weights based on the distribution given in Table Replace the Story Stiffness with k to designate it as a random variable. Later the statistical properties of this random variable will be defined in the RV panel. Then, input damping, yield strength, hardening ratio and other parameters as shown in Fig.

Table Floor mass distribution












Fig. Define the structural properties in the SIM panel CFD Model

To set up the CFD model, in the EVT panel, select “CFD - Wind Loads on Isolated Building” for Load Generator. Detailed documentation on how to define the CFD model can be found in the user manual.

  1. Specify the path to the case directory in Start tab, by clicking Browse button. Use version 9 for Version of OpenFOAM Distribution.


Fig. Setting up the case directory and OpenFOAM version in the Start tab

  1. In the Geometry tab, first set the Input Dimension Normalization to Relative to put the size of the domain relative to the building height. For Geometric Scale of the CFD model use 1 as the simulation is conducted in full scale. Set the Shape Type to Complex and import the building geometry by clicking Import STL as shown in Fig. Set the Wind Direction to 0 to simulate wind incidence normal to the building face. To automatically determine the building dimensions, check the COST Recommendation option. For the coordinate system, specify the Absolute Origin as Building Bottom Center. See Fig. for the details.


Fig. Import the building geometry


Fig. Defining the domain dimensions and the building geometry.

  1. Follow the steps below to set up the computational grid in the Mesh tab.

    Background Mesh:

    In the Background Mesh subtab, first create a structured grid with No. of Cells in X-axis, Y-axis and Z-axis set to 80, 40 and 24.


    Fig. Define the computational grid in the Mesh tab

    Regional Refinements:

    Create regional refinements by adding 4 boxes as shown in the table below. The Mesh Size relative to building height is given in the last column of the table.


    Fig. Create regional refinements

    Surface Refinements:

    In the Surface Refinements sub-tab, check the Add Surface Refinements box. Set the Refinement Level and Refinement Distance as shown in the figure.


    Fig. Create surface refinements

    Edge Refinements:

    Create additional refinements along the building edges by checking the Add Edge Refinements option. See the figure below for the details.


    Fig. Apply further refinements along the building edges

    Prism Layers:

    In the Prism Layers sub-tab, uncheck Add Prism Layers option.


    Fig. Adding Prism Layers

    Run Mesh

    To generate the computational grid with all the refinements applied, click the Run Final Mesh button in the Mesh tab. Once meshing is done, in the side window, the model will be updated automatically displaying the generated grid.


    Fig. Breakout View of the Mesh

  1. To define initial and boundary conditions, select Boundary Conditions tab.

    • Based on the values given in Table 4.6.1, set the Velocity Scale to 1, Wind Speed At Reference Height to \(60 m/s\), and the Reference Height as building height, which is \(442.1 m\). For the Aerodynamic Roughness Length use \(0.03 m\). Set Air Density and Kinematic Viscosity to \(1.225 \, kg/m^3\) and \(1.5 \times 10^{-5} \, m^2/s\), respectively. The Reynolds number (\(Re\)) can be determined by clicking Calculate button, which gives \(1.77 \times 10^{9}\).

    • At the Inlet of the domain use MeanABL which specifies a mean velocity profile based on the logarithmic profile. For Outlet set a zeroPressureOutlet boundary condition. On the Side and Top faces of the domain use slip wall boundary conditions. For the Ground surface, apply roughWallFunction. Finally, the Building surface uses smoothWallFunction assuming the building has a smooth surface.


    Fig. Setup the Boundary Conditions

  2. Specify turbulence modeling, solver type, duration and time step options in the Numerical Setup tab.

    • In Turbulence Modeling group, set Simulation Type to LES and select Smagorinsky for the Sub-grid Scale Model.

    • For the Solver Type, specify pisoFoam and put 1 for Number of Non-Orthogonal Correctors to add an additional iteration for the non-orthogonal grid close to the building surface.

    • For the Duration of the simulation, use \(1200 s\) based on what is defined in Table 4.6.1. Determined the approximate Time Steep by clicking the Calculate button. For this example, the estimated time step that gives a Courant number close to unity is \(0.0143913 s\), which is changed to \(0.01 s\) for convenience.

    • Check the Run Simulation in Parallel option and specify the Number of Processors to the 56.


Fig. Edit inputs in the Numerical Setup tab

  1. Monitor wind loads from the CFD simulation in the Monitoring tab.

    • Check Monitor Base Loads to record integrated loads at the base of the building, and set the Write Interval to 10.

    • Change the Write Interval for story loads to 10, which gives records the loads at an interval of \(\Delta t \times 10 = 0.1s\).

    • Since only integrated loads are needed for the analysis, uncheck the Sample Pressure Data on the Building Surface option.


    Fig. Select the outputs from CFD in the Monitoring tab Finite Element Analysis

The finite element analysis options are specified in the FEM panel. For this example, keep the default values as seen in Fig.


Fig. Setup the Finite Element analysis options Engineering Demand Parameter

Next, specify Engineering Demand Parameters (EDPs) in the EDP panel. Select Standard Wind EDPs which include floor displacement, acceleration and inter-story drift.


Fig. Select the EDPs to measure Random Variables

The random variables are defined in RV tab. Here, the floor stiffness named as \(k\) in SIM panel is automatically assigned as a random variable. Select Normal for its probability Distribution with \(5 \times 10^{8}\) for the Mean and \(5 \times 10^{7}\) for Standard Dev.


Fig. Define the Random Variable (RV) Running the Simulation

To run the CFD simulation, first login to DesignSafe with your credential. Then, run the job remotely by clicking RUN at DesignSafe. Give the simulation a Job Name. Set Num Nodes to 1 and # Processes Per Node to 56. For the Max Run Time, specify 20:00:00. Finally, click the Submit button to send the job to DesignSafe.


Fig. Submit the simulation to the remote server (DesignSafe-CI) Results

The status of the remote job can be tracked by clicking GET from DesignSafe. Once the remote job finishes, the results can be reloaded by selecting the Retrieve Data option by right-clicking on the job name. Then, the results will be displayed in the RES tab. The responses qualitative reported for Standard EDP include statistics of floor displacement, acceleration and inter-story drift, e.g.,

  • 1-PFA-0-1: represents peak floor acceleration at the ground floor for component 1 (x-dir)

  • 1-PFD-1-2: represents peak floor displacement (relative to the ground) at the 1st floor ceiling for component 2 (y-dir)

  • 1-PID-3-1: represents peak inter-story drift ratio of the 3rd floor for component 1 (x-dir) and

  • 1-RMSA-108-1: represents root-mean-squared acceleration of the 106th floor for component 1 (x-dir).

The Summary tab of the panel shows the four statistical moments of the EDPs which include Mean, StdDev, Skewness and Kurtosis.


Fig. Summary of the recorded EDPs in RES panel

By switching to the Data Values tab, the user can also visualize all the realizations of the simulation. The figure below shows the variation of the top-floor acceleration with floor stiffness.


Fig. (scatter-plot) Top-floor acceleration vs floor stiffness, (table) Report of EDPs for all realizations

4.6.2. Flow visualization

The full simulation data can be retrieved from DesignSafe and visualized remotely using Paraview. Fig. shows the streamlines and velocity contour taken on a vertical stream-wise section. From the plots, it is visible that important flow features such as vortex shading and turbulence at the wake are captured.


Fig. Instantaneous velocity field around the building.


Franke, J., Hellsten, A., Schlünzen, K.H. and Carissimo, B., 2007. COST Action 732: Best practice guideline for the CFD simulation of flows in the urban environment.