Automatic Generation of Load Combinations in Revit

Structural Analysis

By Tomasz Fudala

Structural loads are an important consideration in the design of buildings. Building codes require that structures be designed and built to safely resist all loads that they are likely to encounter during their service life.

In Revit, depending on the load duration and type, various load natures can be created (dead, live, wind, etc.). Structural engineers can add, delete, and modify the parameters of any defined load case.

In a structural model, engineers can place three types of loads: Point, Line, and Area. These can be added either by sketching them in the view or by associating them with a host element such as a floor or beam.

Based on the load cases that have been defined in Revit, load combinations may also be defined. A load combination is the result of multiple loads acting on a structure simultaneously. Building codes typically specify a variety of load combinations, together with load factors (weightings) for each applicable type of load, to ensure the safety of the structure under any likely maximum loading scenario.

For example, in the design of a staircase, a dead load factor may be 1.2 times the weight of the structure, and a live load factor may be 1.6 times the maximum expected live load. These two “factored loads” are combined (added) to determine the “required strength” of the staircase.

I recently published a new version (2021.01) of the Structural Design Dynamo package. This version contains a new set of nodes to better support automated structural analysis workflows. You can now create load cases, apply loads, and generate load combinations in Revit automatically.

Let’s look at an example of how to implement load combinations in Dynamo using the ASCE 7-10 LRFD code. Consider the following formula:

1.2D + 1.6L + 0.5(LR or S or R)

D = Dead Load
L = Live Load
LR = Roof Live Load
S = Snow Load
R = Rain Load

Input Parameters (Load Cases)

If you want to follow along, open the Load.Combinations.rvt file located in the extra folder (c:\Users\{userName}\AppData\Roaming\Dynamo\Dynamo Revit\2.6\packages\Structural Design\extra).

1) In Dynamo, define the following input parameters. These are all load cases that will be taken into consideration in the code formula:

Note:The LoadCase node can be found in the Structural Design package.


2) Next, implement the code formula. The first thing you should do is group respective categories of load cases into lists:

3. Generate Live Load cases combinations as follows:

4) Next, add a list of factors for each of the respective load categories, and connect all 4 lists with the inputs of the Python Script node as follows:

5) The Python code defines a few loops to output all necessary variations specified by the code formula:

6) Run the Dynamo script to see a list of load combinations in Dynamo.

Generation of Load Combinations in Revit

7) Now, it is time to implement the portion of the Dynamo script that will generate load combinations in Revit. The Loads.LoadCombination node creates a new load combination in Revit. Its input parameters include a unique load combination name, type, state, and list of components.

Note that the list of components can be easily extracted from the Python script node.

If you did not follow along with the preceding example, you can find the final script in the extra folder: (c:\Users\{userName}\AppData\Roaming\Dynamo\Dynamo Revit\2.6\packages\Structural Design\extra). You can simply run that Dynamo script and see the results in Revit.

In Revit, open the Structural Settings and go to the Load Combinations tab to review the list of load combinations generated by the Dynamo script. By default, load combinations generated by add-ins (through the API) are not displayed. To view them, select the Show third-party generated load combinationscheckbox. Keep in mind that they are not available for editing.

This example script demonstrated how to use the Structural Design package to generate load combinations in Revit automatically. You are free to adjust this script to implement any formula(s) needed to meet your local load combinations code requirements. The Structural Design package supports a variety of structural workflows in Dynamo and Revit. Using this package, structural engineers can optimize and automate their workflows to improve their productivity. Visit the links below to learn more:

Learn the Power of Dynamo for Automated Reinforcement Detailing–Part 1
Learn the Power of Dynamo for Automated Reinforcement Detailing–Part 2
Portal Frame Geometry in Dynamo
Portal Frame with Structural Analysis for Dynamo Package – Part 01
Portal Frame with Structural Analysis for Dynamo Package – Part 02


Related Articles

Add comment

No comments yet

    Thanks for visiting the Revit blog. Subscribe to keep current on product updates, the Revit public roadmap, and a wide variety of topics in BIM.

    Subscribe to keep up with Revit

    © 2021 Autodesk Inc. All rights reserved