Generative Structure Design Tools

✎ 02 Dec 2018 by Thornton Tomasetti

Engineers love Excel. I don’t think anyone will ever be able to count all of the ‘countless’ spreadsheets that engineers at our and other offices have created over the past decades to help speed up repetitive tasks, and to make our lives easier. Many of these spreadsheets work in conjunction with geometry engines such as AutoCAD, or even with other analysis tools.

Here is an example: for every typical structural project, we have to take down column loads to help us determine the size of the structural columns. The typical workflow would be to geometrically assign each portion of a floor of a building to their nearest column, and then to multiply the area of the floor portion with a number of factors for dead loads, live loads and superimposed dead loads. Finally, all of these numbers have to be added up, and from here, the engineer can calculate suitable steel or concrete column sizes that will support those cumulative building loads.

Over the years, we generated a sophisticated spread sheet based column design tool that will help us do the calculation of the column sizes. We also created voronoi meshing scripts for AutoCAD in order to find floor areas for column locations more accurately. These helped us to calculate tributary areas, one floor plan at the time. Then, all that we had to do was to paste the area values into the correct cells in Excel, and the spreadsheet would help us find weight efficient columns.

McNeel’s Grasshopper is a very powerful data mining and data management software that exposes many geometry related operations to the user. So, for the past year, the ACM group has been developing tools for Grasshopper users at Thornton Tomasetti which automate repetitive processes and help engineers generate the data they need. For example, we developed a set of components to calculate column tributary areas of an entire structure at once, and to output the area values into an Excel spreadsheet, so that they can easily be inserted into calculation tools such as the column design spreadsheet described above. Similarly, another component will break down how much of the cumulative façade load is taken per each of the perimeter columns.


While data mining with grasshopper is incredibly powerful, we are also able to take advantage of its generative capabilities; we’ve started to take some of the functionality of the Excel based tools (and other engineering intelligence) straight into Grasshopper.  We’ve been calling these tools our Generative Structural Design suite. The first tool that we developed was a column design tool. So now, rather than having to copy and paste values into different cells in Excel, the column sizing code exists right within the Grasshopper interface. As soon as we make a change to, say, the column grid or the building height of the parametric Grasshopper model, the tool will iteratively calculate the smallest possible W-section or square concrete section for each column at each story of the building. It will then graphically render the columns at their locations inside the building, and even output approximate steel and concrete tonnages. The Grasshopper based column design tool is not yet as robust as the spreadsheet based version that we use on most building design projects, but it certainly can be used during the early design stages to generate a good starting point.

We also created components to generate centerlines for girders and infill beams, and to size these based on floor loads. More recently, we developed a tool to design composite beams that take into account the action between slab and steel beam. It also calculates the number of studs required to connect these two elements. Additionally, we created a set of components to help us calculate foundation pile quantities based on cumulative building weight acting upon each of the foundations.

We found that, especially during competition and pre-SD phase, these new tools really help us get a general idea of a building’s performance – if modeled correctly – close to real time. This suite of tools is still work in progress, but at this level, we can comfortably generate truss-free short-span buildings, such as towers, during the conceptual phase in a matter of minutes, rather than days. And, hey, with many competitions coming our way, it proves to be very beneficial to analyze a number of design options for structural efficiencies already leading up to those tight competition deadlines.

Some of these tools even make it all the way past the concept design phases. The tributary area calculators and the centerline creation tools for beams and girders are being utilized on a number of ongoing projects in our offices, and have been saving engineers a lot of time.

But this doesn’t mean that we don’t like Excel anymore! I think it is still the most powerful piece of software ever used in an engineering office. If you like Excel and Grasshopper as much as we do, you should try out our fast Grasshopper-Excel tools from Ben’s earlier blog post!