In the past year I have done some work with the diagrid. It is a commonly used structural framework. Probably the most recognizable building using this system is the Gherkin/Swiss Re tower in London by Norman Foster. This technique has many things working for it; it is very flexible, it uses the triangle, a very structurally stable shape, as its basis, and it also ensures planar surfaces. These aspects, especially its flexibility make it a very attractive tool in computational design.
I have used it mainly in a couple of tower designs, though it is also included in the latest competition that I finished. In these tower projects I have found that even though the basic principles are the same, because of the differing parameters that are incorporated, the way it is modeled in grasshopper is quite different.
This is a topic that has been broached by Daniel Davis at his excellent blog Digital Morphogenesis. He has noticed how little we reuse solutions for the same problem, often starting from scratch when someone else has already figured it out. I have found many of problems he discusses with using the grasshopper database, but my focus here will be on the specific issues in my diagrid studies.
The diagrid can be defined very simply in grasshopper, by subdividing a surface and connecting 3 of the resulting vertices of each resulting subsurface. As you can see below the inputs and variables are straight forward, just a surface and how many divisions you need.
But this is only the start, once you add parameters and have specific outcomes that are required the definition becomes quite complicated. The actual division process of the surfaces remains the same, what changes is are how you achieve that surface and what happens to it after.
The first example is from a tower I began developing for work. Though the project never got off the ground the diagrid was one of the first things I worked out about it. It is tower that twists and tapers. I wanted to able to control everything inside grasshopper so there is no input geometry, but a lot of variables inside the definition.
Because all the control happens inside the grasshopper definition the are many variables, including 4 controlling the twist, 4 controlling the taper, and 4 controlling the basic shape of the tower. There are also variables that directly affect the diagrid, such as the number subdivisions on each facade and how many floors to use for each of the modules. The diagrid here is modified to create intersecting “x” forms, which are the structural modules. To achieve this each diagonal is split in half and redefined based on a point between the two. While a planar surface was not required, the structural members did need to intersect to create a rigid frame. This creates an interesting effect as the surface and the structure pass through each other, as can be seen below.
The next example is from the Taiwan Tower Competition that I recently completed. Here again the diagrid works as structure, but also as a facade, so we returned to the triangle. But in this example the triangles are alternating left and right, which differs from the repeating pattern shown in the basic example. This effect was used specifically because the plan was based on a rotating “fat triangle” and we shifted the diagrid vertically to generate a structural pattern that worked with the rotating plan.
For this definition the inputs were a base plan geometry and points at which this geometry would be copied. The variables included the rotation of the tower and the scaling of the “floors.” Here there is no subdivision of the surface, as that would have taken away from the rotating/shifting strategy that was implemented.
The final example here is also taken from the Taiwan Tower Competition, but is part of an early study that we abandoned. But I think it is worth showing because it takes a completely different approach. The inputs are a curve and an attractor point. The variables control the height, number of elements, and shift, as wells as the strength of the attractor.
As you can see there are no surfaces in this method, instead it uses curves. The goal was to create continuous curves as opposed to the segmented sections of the typical diagrid. This leads to completely different organization and look to the structure. Not a true diagrid. The idea comes from birdcaging wires.
These examples are obviously only a small sample of the possible approaches to creating a diagrid structure. The approach worked bottom-up, from an understanding of what parameters to use, to how these parameters defined the space of the tower, and then using the diagrid to articulate that space. Each time the articulation is a result of an interaction between parameters and the distribution of space. I will continue to use the diagrid. Its flexibility allows infinite possibilities and my hope is to also begin to work with it in terms of structural optimization which will add another level of feedback into the projects.