Dynam(o)ite Your Design for Engineers @ AU 2015

Throughout this year I have been introducing carefully computational design with Dynamo in the world of the structural engineer. This by publishing posts on how to build up complex analysis models in Robot Structural Analysis and by reaching out to structural optimization techniques.
ES9542 - Dynam(o)ite Your Design for Engineers
In one of my classes at Autodesk University 2015, I teached some of you how to actually apply these structural optimization techniques in Dynamo and Robot Structural Analysis. Although I find this a very advanced and heavy topic, still there was a great turnout at this class, which made me really happy !

Now the year is almost over, and it’s time for you to get up and running with these techniques. As promised I would share anything about this on this blog. Now is the time. You can find a full written step-by-step handout, the presentation and lots of datasets online now. Besides that, the class is recorded. So those who couldn’t make it to Las Vegas, watch the recording and learn about Dynamo and Optimo at your won pace.

Here’s the link to the class materials : 
 ES9542 – Dynam(o)ite Your Design for Engineers


Animated effects of time dependant harmonic loads on a building

Today, I had a very deep dive into Robot Structural Analysis, when teaching the Northern European channel partners. At a certain moment David Truyens from Datech Belgium came up with a funny video of one guy trashing his washing machine by putting bricks in it. In fact the brick causes a heavy unbalance of the machine, with disastrous consequences. Have a look at it yourself on this link. Notice the wooden pallet that supports the machine.

So I started thinking how this would look like on a building structure, supporting this washing machine, or something simular poking the floors of the building. I ended up building up a Time History Analysis in Autodesk Robot Structural Analysis.

The video below shows you the steps to take in order to make an animated result of the effect of a time dependant, harmonic load on the structure. The simulation is done by applying a horizontal force with a sine function over a defined time period for a frequency of 3Hz and analogue a vertical force applied with a cosine function.

Tip: While watching the last 20 seconds of the video you could listen to some music like the “Harlem shake”.







Dynam(o)ite Your Design for Bridges – Part 2 : Continuous Truss Girder Bridge

I would like to share with you a project I will work on more in depth later on this work year.

It concerns a continuous steel truss girder bridge. In many cases the bridge engineers need to take assumptions before they start building up their analysis models. With the next video I want to show you how this can be anticipated by using Autodesk Dynamo Studio and Autodesk Robot Structural Analysis. With this combination you can (again) explore multiple design options of your analysis models.

This script should be more elaborated as we want to go further into the domain of structural optimization and steel modelling with Autodesk Revit. But that will be something for the sequels on this topic.

You can download the script used in the video below, by clicking this link.
Be sure that you install the “Structural Analysis for Dynamo” package first before using it.



Dynam(o)ite Your Design for Bridges – Part 1

A few weeks ago I have been invited to give a lecture on Dynamo at the Civil Infra Academy 2015 in Dordrecht (The Netherlands). Of course, Dynamo applied on a structural engineering model of a train station building is not really the most interesting one to show to people who are involved daily with civil structures like for example bridges.

So I decided to find out how Dynamo Studio could be used in Bridge Design & Analysis.

Therefore I picked up the model that Zachary Kron published on his blog last year (see here for his original post) and amended the script so it worked with Revit and Robot Structural Analysis.

How it looks like in Dynamo Studio.

Bridge Dynamo Model

How it looks like in Revit. Mind the curvature of the beams and especially the roadway. In the Dynamo script you will find specific nodes that detect the angle of the curve to the Z-vector. So that way you can easily change the cross section rotation of the beams and introduce a twisted section.

Bridge Structural Model 2

Bridge Structural Model 1







How it looks like in Robot Structural Analysis. At the left side the model, at the right side the results for the My moments due to traffic loads. Important in this script is the discretization of the nurbs curves. RSA can not handle these types of curves, and you need to approach this with separate “beams”. Some custom nodes are delivered in the content below, to achieve this modeling technique.
Important note: run the script on the “Bridge Conceptual Analysis_start.rtd” file, in order to have the right custom sections in your design.

Bridge Analysis Bridge Analysis Results






And finally getting results back in to Dynamo. If you want to perform some specific operations in Dynamo based on the results (for example reaction forces), you can extract them from the RSA model, after calculation. This smells like a job for Structural Optimization :-)…

Bridge Results in Dynamo


You can download the whole dataset by clicking this link. Now try it out yourself and play with the sliders to see the effect in Revit and RSA. Don’t forget to install the Structural Analysis for Dynamo package !

To be continued …

Dynam(o)ite your Design for Engineers – part 5

Meanwhile life at “Dynam(o)ite your Design for Engineers” continued. The engineering company has been able to aim on more complex building projects, since they have been using Dynamo with Revit and Robot Structural Analysis in their workflow.

In this episode, the engineer wants to extend his quest for automation and optimization. The “parametric run method” from Part 3 helped, but it was limited to the initial solution list the user presents to the Dynamo script. For the first time at their technology meetings they take the terminology of “Structural Optimization” in consideration…

A long silence followed on that, in the room. People were staring into infinity… And then finally one gave the others goozebumps by saying the ‘magic’ word: Genetic Algorithm


Huh? Genetic optimization algorithm ?

Yes, they decided to wend to the fields of “Structural Optimization using Genetic Algorithms“. In brief, this really cool technique generates specific solutions to optimization problems using methods which are inspired by the natural evolution theories, like mutation, inheritance, crossover, …

That’s where the Optimo package for Dynamo comes around the corner ! It takes some time to get familiar with Optimo but once you figure out it’s “personality”, you’re really going to love it !

In this new Dynamo adventure, the engineer adds value to his Dynamo script using the Optimo package and sets up an optimization calculation for one truss. He decides to take the next steps:

  1. Use Dynamo to identify the truss with the largest span from the Armadillo Roof project from Part 1 (could be using the Revit surface directly, or using a SAT exported example from the roof).
    Structural Optimization Spatial Truss - Longest Truss
  2. Connect Dynamo with Robot Structural Analysis Professional (RSA) and generate geometry, boudary conditions and loads for that truss.
    Structural Optimization Spatial Truss - RSA
  3. Connect the RSA calculation results with the Optimo nodes and let Optimo generate the right population for it. See further below for some setting advise.
    Structural Optimization Spatial Truss - Dynamo 1
  4. Finally export the results from Optimo coming from RSA to MS Excel using Dynamo
    Structural Optimization Spatial Truss - Excel
  5. Optionally you can visualize the results in 3D Scattered diagrams, like i.e. this one from the online platform plot.ly. You can look at the diagram yourself using this link.
    Structural Optimization Spatial Truss - results

Optimo for Dynamo – The settings

Now, let’s dive deeper into the geeky part of the optimization. The settings for the optimo nodes are quite simple, but you need to know what you are doing. You can find out more about Optimo, by clicking this link. In this project the engineer decided to use the next few settings (click the image too enlarge it)

Structural Optimization Spatial Truss - Dynamo 2

  • Population Size = 1000. Choose 1000 possible parents to be considered between the lower and upper limits from the initial solution boundaries. The optimo algorithm nodes will make “genetic altered” solutions (children) for those 1000 headed population. Our own structural optimizational village !
  • We need objectives for that population. We want an ideal population and they need to obtain in this case 2 combined goals:
    – Minimize the weight of the truss
    – Minimize the stress in the truss
  • Of course we need to set Lower and Upper Limits for our population specimen to avoid the calculation to be lasting for ever (computational birth control). We allow in here optimo to work on the next three variables:
    • Section Index: choose a specific section from a list to apply on the chord members. Let optimo choose between the whole range of indicated sections in the script. The lower the index, the lighter the structure.
    • Truss Height: the biggest influence on the stress is of course the truss height. The internal stress will decrease with an increasing truss height. The weight will inversely proportional increase.
    • Truss Width : this will influence the stress and weight at the same way.

Using these statements, Dynamo will change the structure within Robot Structural Analysis for a large amount of randomly generated combinations that have been configured in Optimo between the lower and upper limits. Each change in the configuration is a result from the initial population that is “genetically altered” by a number of iterations, to obtain the common objectives of the population.

For this calculation, the engineer discovers that the decrease in stress doesn’t mean decrease of weight. Not at all, the objectives are acting inversely. This means, the engineer will have more than one solution again. But this time, the proposed solutions are precisely generated and are optimal in their solution domain. An additional objective could be the global deformation of the truss.

Conclusion in this episode is that with Optimo, the generation of solutions is more accurate and faster then using a parametric run.

Special thanks to Mohammad Rahmani Asl for his support in understanding the Optimo process !

Robot Structural Analysis – Learning resources

This weekend I bumped on some interesting learning resources that are published on the world wide web. Hidden underneath some virtual dust maybe, or just not discovered yet, or maybe even popular in some regions of the world…


Anyway, I want to share with you these resources, as I am convinced that they might help you in learning and understanding Robot Structural Analysis better. Please, feel free to sent me more suggestions if you want, and I can append them to the list of this post.

  • Nuno Teixeira (@nhteixeira) shows nice video instructions with clear theoretical engineering background explanations on his YouTube channel.
  • I can also suggest you to have a look in the free iBooks of Tomasz Fudala (our Technical Marketing Manager for Structural Engineering at Autodesk).
  • There is the new “Build your Robot Structural Analysis IQ” video series that give you Tips & Tricks in the use of RSA. Find them on this YouTube channel.
  • The Autodesk forum is very active on Robot Structural Analysis. Worthwhile looking if your questions hasn’t been solved yet there.
  • At Autodesk University there have been a lot of classes on RSA. Click this link to get an overview of the classes and watch them at your own pace.
  • We also have our SimHub at Autodesk where you can find official resources.
  • Another site collecting resources is Robot Vault. There you will find references to books, videos, … This inspired me in fact to make this small list on my blog.
  • Finally there is our own Knowledge Base for RSA: see this link.

(keep an eye on this post, as it will be updated regularly)

Gravity Analysis for Revit 2016

Too often during a construction design process, the contractor needs to start with the execution on site of the foundations, even before the engineer has been able to decide how to calculate the upper structure in detail. In that phase of the process, engineers make use of “load takedown” analysis or “gravity” analysis.

This was made possible with applications like Autodesk Concrete Building Structures (CBS Pro) or the Load Takedown tool in the Autodesk Revit Extensions.

With the Structural Analysis Toolkit for Revit 2016, there is a new analysis type available, called Gravity Analysis. With this tool you can make use of the Revit analytical model, selfweight and imposed loads in your model, to calculate in the cloud with the Structural Analysis 360 service.

Sit back and enjoy this video showing you the ease-of-use of this brand new tool.

Dynam(o)ite your Design for Engineers – part 3

In the previous episode of “Dynam(o)ite your Design for Engineers” the engineer did a study case on a simple engineering problem with the single-span beam, to find its geometrical influence on the bar stresses. Finding out how to do this in an optimal way, the exercise could be extended easily to get this working to find out more about the geometrical influence of a truss to its internal stresses.

One: Hah, this one is easy: we all know that when we increase the truss height, the stresses in the chords will decrease (in case the truss is simple uniform loaded). Why should you care more?

Me: well, I need to find out the best solution for my truss. How can I better find this then looking at a diagram with all possible solutions? Besides, the architect in the “Millennium Railway Station – Armadillo Roof” project won’t accept a 5 m high truss, is he?

The video below shows how to perform a so called parametric run calculation with Autodesk Dynamo and Autodesk Robot Structural Analysis Professional.

In this example a double loop with different input and output is used to get to a final diagram as the one showed below. This diagram helps the engineer to decide which type of truss configuration (in terms of sections size and truss height) is the best one for the purpose of his project.

Deformation - Weight Diagram for 2D Truss


What you will see next time in “Dynam(o)ite your Design for Engineers”: The engineer is not completely satisfied with this solution. It helped to make decisions, but he wants to enable computational design to get to an optimal result. He dares to consider “Structural Optimization” and astonishes the other engineers in the meeting room…

Dynam(o)ite your Design for Engineers – part 2

It is time for another part of “Dynam(o)ite your Design for Engineers”. In this episode, the engineer is not sure yet about the dimensions of his geometry. Of course, the experienced engineers have special empiric rules to define the geometrical dimensions of basic structures. But in this case, the engineer wants to push it a step further and wants to see the influence of geometrical changes to the results of his simulation.

Starring in this episode:

It all starts with a simple beam on two fixed supports, with a uniform load of let’s say 2,5 kN/m on top of it. Let’s see what the influence of the length of that beam is on the maximal bending stress in the beam.

Dynamo for RSA - 1
So, the video below explains how this can be achieved with Dynamo and RSA. The intention is to have a visual representation of the stresses for a beam length varying between 1 and 15 m.

One: hey, just use formulas in MS Excel, dude…

Me: Be patient my friend, let’s start with a simple principle. If this works out fine, than we can make a next episode and push it even harder.

Special thanks to Emmanuel Weyerman and Dimitar Venkov.

To be continued…

Next time in “Dynam(o)ite your Design for Engineers”: The engineer wants to apply this principle to a more complex project, and use the results to make his design decisions. Structural Optimization may be looming around the corner…

Datasets for this episode can be downloaded here.

Dynam(o)ite your Design for Engineers – part 1

For an engineer it is sometimes hard to follow the architects ideas on complex modelling. In the next example this architect demands for a double curved canopy roof for use as a shelter at the Millennium Railway Station, and he likes to call it the “Armadillo Roof” (our virtual project at the Autodesk EMEA NE team). The engineer and architect agreed to make use of trusses to span the width of 20 m and height of at least 7 m. No simple 2D lattice girders, but 3D triangular space frames. Sigh… modelling this with an equal center distance as individual complex trusses is hard work, even if you use Revit.

One: "Hey, haven't you ever heard of Adaptive Components?"
Me: "Yes, but I'm thinking ahead for the next episodes and want structural elements, with analytical lines and use cloud analysis, and ....so much more"

Structural Analysis for Dynamo - 1

Now, as an engineer I decided myself to use Dynamo to make something working and make it that way I’m prepared to eventual form changes by the architect. Yeah… classic one 🙂

Structural Analysis for Dynamo - 2

Which brought me to the idea of doing something with this geometry in Robot Structural Analysis, using the Structural Analysis package for Dynamo. Bring geometry, boundary conditions, loads, … to RSA directly from Dynamo using the Revit surface of the mass object… Hmm…

Structural Analysis for Dynamo - 3

To be continued…

Next time in “Dynamo for Engineers”: The engineer wants to get more out of this workflow and wants to make some decisions on structure sizes before starting the section optimization. Let’s hope this goes well…