PART 1: Set Up Building Model using Example and Flex (2 units!)
The first step in this design process was deciding on which conceptual family mass I wanted to use from the class library. I chose the Simple Twisted Triangular mass family. Initially I set up 50 levels and corresponding mass floors. The simple structure before any parameters were flexed can be seen in Figure 1a. I added the appropriate location to the design in San Franscisco as well. I then also moved to the family editor and created some rules and locked some parameters before moving to the dynamo scipt. The parameter logic that I initialized in Revit can be found in Figure 1b.
Then, I moved over to dynamo and began to build the logic to work to flex the parameters that were unlocked, namely: Top Height, Bottom Radius, Top Rotation, and Mid Rotation. Before any initialization of the custom node logic, I created an initial set of these 4 parameters that could easily be flexed (Figure 1c).
Then, I chose one parameter, the base radius, to focus on and created a custom node following the same logic as the example from the in-class module videos. The only change here in this custom node was instead of outputting one metric, it output three metrics to Excel (the gross area, the gross envelope area, and the gross volume). The biggest trick here was a sort of trial-and-error that I performed directly in Revit to flex the base radius and find the minimum and maximum values to stay within the building geometry limits. Figure 1d shows the rest of my dynamo logic including the connection to the custom node and the export to excel to output the desired metrics.
From this final dynamo logic, I was able to find 32 different test cases that altered the parameter, base radius, and was within the limits of the building design (Figure 1e). For this design I held the height parameter constant at 700 ft, but this also could be a parameter that could be flexed in conjunction with this.
The screenshots below demonstrate the minimum and maximum base radii for this building form in how they flex (Figures 1f and 1g).
PART 2: Set Up Building Model from Scratch and Flex (3 units!)
Moving onto Part 2, the first step of my design process was coming up with a profile to then loft into a tower form I created from scratch. I brainstormed several ideas and finally landed on a profile I was comfortable with creating in Revit, a kite figure. As a structural engineer, I also wanted to do a design that would be extremely challenging to design loading wise, so I made the structure increase in size as you move up. My initial family design that I then uploaded to the same Revit workspace as above can be found in Figure 2a.
One important aspect of creating my new mass family was creating the different instance parameters that will be able to be flexed with my design. I created four parameters, namely Top Depth, Bottom Depth, Total Height, and Total Width. The parameter logic that I initialized in Revit can be found in Figure 2c.
For the next steps, I copied Steps 1 through 3 from the part 1 dynamo file but altered its inputs such that there were now two input parameters that could be flexed and changed. The two input parameters that can be changed are the Top Depth (From the top point of the kite to the centerline) and the Total Height of the entire structure. Before any alterations to the custom node, I just flexed the two parameters to make sure they were working appropriately (Figure 2c).
Then, I moved to the next steps in which the custom node now took two sets of input values opposed to just once for the instance parameters. Using the Dynamo List.Map node I was able to fulfill the same output metrics as requested to evaluation combinatiosn of input values for the two parameters (top depth and total height). I used the same trial-and-error process directly in Revit to see within what bounds of the two parameters I had to stay in such that the gross floor area was within the desired limits. Figure 2d demonstrates how the rest of the dynamo logic was carried out to run the test cases while varying the two inputs.
By varying the top depth and the total height of the tower, I was able to obtain 48 test cases for this result. Each of the test cases had a varying depth ranging from 25 to 40 ft and varying total height ranging from 605 to 660 ft. A snip of the results from the output can be found below:
The screenshots below demonstrate the minimum and maximum input values for this building form in how they flex (Figures 1f and 1g). It may be hard to tell in the two photos but on the actual file, it is easier to see how these two parameters can flex.