Nini Giorgadze - Module 5

Stage 1 Step 1

Base Model:

image

Base Parameters:

Top Height
750’
Mid Height
375’
Top Rotation
0
Mid Rotation
0
Base Rotation
40
Top Width
550’
Mid Width
200’
Base Width
700’
Top Depth
300’
Base Depth
300’

I divided the building into 15’ long floors.

The parameter I chose to change was “Top Height”: My results were according 6 different top heights: 450, 500, 550, 600, 650, 700, 750:

My Steps:

🚀 Starting Point: I began by selecting my model within Revit and utilized a code block in Dynamo to enable variations of the Revit model. This initial step set the foundation for exploring diverse design possibilities.

🔍 Input Parameters for Testing: For the primary test, I chose the top height as the variable to manipulate. This decision allowed Dynamo to dynamically compute the gross floor area and gross surface area for each variation in height, providing a clear understanding of how changes in height impact the overall building metrics.

🔄 Additional Flexibility Options: While the top height was my main focus, I identified several other parameters that could further been flexed and dynamically change the building form. These included:

  • Top Rotation: Adjusting the building’s orientation at the top level.
  • Top Width: Modifying the width at the upper sections of the building.
  • Mid Rotation: Changing the orientation at the mid-levels.
  • Mid Depth: Varying the depth in the middle sections.
  • Mid Height: Altering the vertical dimensions at the mid-levels.
  • Base Rotation: Adjusting the orientation at the base.
  • Base Width: Modifying the width at the ground level.

🛠️ Custom Node Implementation: To manage these parameters efficiently, I utilized a custom node designed to map our chosen flex parameters to the desired outputs. This node streamlined the process of adjusting parameters and observing the results.

📊 Data Organization and Analysis: After setting the parameters, I created lists for the calculated gross floor area and gross surface area using the List.Map nodes in Dynamo. This step organized the data effectively, making it easier to analyze and interpret.

💾 Exporting Results: Finally, to facilitate further analysis and record-keeping, I exported all the data into a CSV file using the Data.ExportCSV node. This action not only saved the results in a manageable format but also made them accessible for future reference or external analysis.

This structured approach enabled a comprehensive exploration of how various design parameters impact the building form, providing valuable insights into optimizing the design for both aesthetic and functional objectives.

How Top Height changed the building form:

image

450

image

600

image

500

image

650

image

550

image

700

Top Height
450’
500’
550’
600’
650’
700’
750’
Gross Floor Area
1384719
1642860
1972377
1972377
2477802
2654598
2918188
Gross Surface Area
719933
787655
856123
922563.
986809
1049184
1110038

Stage 1 - Step 2

First of all, I created my own profiles and family type:

image
image

Base Model:

image
image

Base Parameters:

Bottom - Difference
30
Mid - Difference
35
Top - Difference
30
Bottom - Side A
400’
Mid - Side A
150’
Top - Side A
300’
Bottom - Side b
300’
Mid - Side b
120’
Top - Side b
170’
Bottom Twist
40
Mid Twist
80
Top Twist
40
Mid Height
365’
Top Height
730’

I divided the building into 15’ long floors.

🚀 Initial Model Selection: I started by selecting a specific model within Revit and identified two primary parameters to manipulate: "Top Height" and "Middle Twist." These parameters were chosen as they significantly influence the architectural form and functionality of the building.

🔧 Parameter Range Definition: For each parameter, I defined a range of values to test. This range allowed me to explore various scenarios and their effects on the building's design, enabling a thorough investigation of potential outcomes.

🛠️ Custom Node Utilization: To efficiently test the effects of the selected parameters, I used a custom node within Dynamo. This node functioned like a tailored formula, accepting "Top Height" and "Middle Twist" as inputs and outputting the crucial metrics of Gross Floor Area and Gross Surface Area. This setup streamlined the evaluation process, making it more systematic and replicable.

📊 Data Extraction with List.Map: I employed the List.Map node to extract data from the custom node function systematically. This method allowed me to automate the retrieval of output values for each combination of input parameters, ensuring that all possible variations were considered and appropriately recorded.

📁 Data Merging and Export: After collecting all necessary data, I merged the results and exported them to a CSV file. This final step was crucial for documenting the outcomes, facilitating further analysis, or sharing the results with stakeholders for decision-making processes.

🔄 Additional Flexibility Options: While "Top Height" and "Middle Twist" were my focus, I noted that other parameters could also be varied to further refine the building design. Potential alternatives included:

  • Top Twist: Adjusting the rotation at the top of the building.
  • Top - Side A/B: Modifying the dimensions on the sides of the top of the building.
  • Middle Height: Changing the vertical dimensions at the middle levels.
  • Middle - Side A/B: Altering the dimensions on the sides of the middle of the building.
  • Bottom Height: Adjusting the vertical dimensions at the base.
  • Bottom - Side A/B: Modifying the dimensions on the sides of the base.
  • Differing angles for mid, top, bottom: Introducing angular variations at different levels.

I flexed two parameters: Top Height and Middle Twist. Some Results:

image
image
image
image
Top Height, Mid Twist
500', 30
500', 60
600', 30
600', 60
700', 30
700', 60
Gross Floor Area
1871481
1876647
2361389
233748
2712589
2679153
Gross Surface Area
719136
721044
805383
804034
881863
879408

Exporting values to CSV in this case, rather than manually inputting them into Excel, offers significant time-saving benefits and reduces the risk of errors. By automating the export process from Dynamo to CSV, all values and inputs can be accurately captured in a standardized format with minimal effort. This eliminates the need for manual data entry, which is time-consuming and prone to human error. Additionally, exporting to CSV allows for seamless integration with Excel or other data analysis tools, enabling users to easily import the data for further analysis, visualization, and reporting. Overall, automating the export process to CSV streamlines workflows, enhances data accuracy, and improves efficiency in handling and analyzing the data.

Stage 2

Variation 1 :

image

Variation 2:

image

Variation 3:

image
Base Radius
Top Rotation
Gross Volume
Gross Surface Area
90
30
10699367
334654
90
45
10623120
333253
90
60
10785420
335820
110
30
12916609
361869
110
45
12833240
360305
110
60
13030750
363299
130
30
15495065
391699
130
45
15405194
389985
130
60
15638081
393378
150
30
18399293
424512
150
45
18303533
422664
150
60
1857213
426417
  1. Set Up Input Parameters:
    • I created integer sliders for the base radius, ratio, middle radius, middle rotation, top radius, top rotation, and two height constants (middle curve height and top curve height).
    • These sliders were used to define the parameters for the polygons representing the base, middle, and top of the geometry.
  2. Create Solid and Surface:
    • I utilized the parameters defined in step 1 to generate solid and surface geometry.
    • This was achieved using Dynamo nodes such as "Surface.ByPatch" and "Solid.ByLoft" to create the desired geometry based on the input parameters.
  3. Calculate Gross Volume and Gross Surface Area:
    • I employed Dynamo nodes to calculate the gross volume and gross surface area of the solid and surface geometry.
    • Using nodes like "Surface.Area" and "Solid.Volume," I determined these metrics for the generated geometry.
  4. Define Variables for Base Radius Values and Top Rotation Values:
    • I established variables for the base radius values and top rotation values in the Dynamo graph.
    • These variables were set up to store the respective values of the base radius and top rotation parameters for each iteration of the design process.
  5. Transport Data to CSV:
    • I organized the data to be exported to a CSV file within the Dynamo graph.
    • Lists or tables containing the base radius values, top rotation values, gross volume, and gross surface area for each iteration of the design were created.
    • Dynamo nodes like "List.Create" and "List.Transpose" were used to format the data appropriately.
    • Finally, the formatted data was exported to a CSV file using Dynamo nodes such as "Data.ExportCSV."
    • As already mentioned, for this exercise, I focused on a set of dynamic parameters to control the building form:

    • Base Radius: I set this parameter to flex within a range of 90 to 150 with increments of 20.
    • Top Rotation: I adjusted this parameter with a range from 30 to 60 degrees, using increments of 15 degrees.
    • Parameters that can be flexed are like Base Radius, Middle Radius, Middle Rotation, Top Radius, Elliptic Ratio.