Additional Evaluator Node 1: Cost Function:
For my first additional evaluator node, I selected to use a linearly interpolated cost function based on height above ground level to determine the construction cost per square footage. To implement this function, I created a custom python component that takes the z coordinate value of each story and plugs it into an interpolation function to solve for the scale factor at each z value. At ground level, this factor is equal to $500 per square foot, and at 750 feet high (the maximum height I set for my geometry), this factor is equal to $1000 per square foot. The logic for this evaluator node is shown in the screenshot below.
Additional Evaluator Node 2: Average Number of Direct Sun Hours in Summer:
The temperatures in Dubai tend to be extremely high, particularly in the hot summer months of June - August. Thus, I felt like an important metric to measure for this building would be the average number of direct sun hours over the course of this general time period. For my second additional evaluator node, I used the Ladybug plugin to import a .epw weather file to load the weather conditions in Dubai, and then I selected my time period of interest (the summer months). After this, I ran a direct sun hours analysis on my building geometry to extract the number of direct sun hours felt by by building. I then averaged this value across the entire mesh. The logic for this evaluator node is shown in the screenshot below.
A Note on Loops in Grasshopper
Loops in Grasshopper are achievable in different ways; Many plugins such as Anemone or Colibri (part of TTToolbox) can be used to create loops. However, I decided to instead just generate ranges of values for each parameter I wanted to vary and then use these lists to generate tree structures to organize my outputs in my summary table. The logic for creating ranges for inputs and exporting to Excel are shown in the screenshots below.
Entire Script:
Summary Table of Results (All combinations of 6 variations in Top Radius and Building Height):
Findings: to minimize the Total Construction cost, the smaller radius and smaller height combinations yield the most ideal results. To minimize the average number of direct sun hours during summer, the largest radius and smallest height combination yields the most ideal result.
Top Radius (ft) | Height (ft) | Gross Floor Area (SF) | Building Envelope Area (SF) | Gross Volume(CF) | Total Construction Cost($) | Average # of Direct Sun Hours during Summer |
115 | 725 | 2.52E+06 | 745974.0718 | 3.00E+07 | 3.63E+10 | 468.807684 |
120 | 725 | 2.58E+06 | 759728.8407 | 3.09E+07 | 3.93E+10 | 466.487296 |
125 | 725 | 2.65E+06 | 773641.4226 | 3.17E+07 | 4.24E+10 | 463.985431 |
130 | 725 | 2.73E+06 | 787714.6233 | 3.26E+07 | 4.57E+10 | 462.147787 |
135 | 725 | 2.80E+06 | 801951.1328 | 3.35E+07 | 4.90E+10 | 459.518323 |
140 | 725 | 2.87E+06 | 816353.5455 | 3.44E+07 | 5.25E+10 | 457.529379 |
115 | 730 | 2.55E+06 | 749742.6424 | 3.02E+07 | 3.58E+10 | 468.918145 |
120 | 730 | 2.62E+06 | 763545.727 | 3.11E+07 | 3.88E+10 | 467.161068 |
125 | 730 | 2.69E+06 | 777505.9764 | 3.19E+07 | 4.19E+10 | 464.850601 |
130 | 730 | 2.76E+06 | 791626.1773 | 3.28E+07 | 4.52E+10 | 462.35161 |
135 | 730 | 2.83E+06 | 805909.0249 | 3.37E+07 | 4.86E+10 | 460.00253 |
140 | 730 | 2.91E+06 | 820357.1447 | 3.46E+07 | 5.21E+10 | 458.003702 |
115 | 735 | 2.55E+06 | 753516.8961 | 3.04E+07 | 3.62E+10 | 469.72962 |
120 | 735 | 2.62E+06 | 767368.4691 | 3.13E+07 | 3.92E+10 | 467.295277 |
125 | 735 | 2.69E+06 | 781376.5275 | 3.22E+07 | 4.23E+10 | 465.270089 |
130 | 735 | 2.77E+06 | 795543.3161 | 3.30E+07 | 4.55E+10 | 462.813627 |
135 | 735 | 2.84E+06 | 809872.6736 | 3.40E+07 | 4.89E+10 | 460.168271 |
140 | 735 | 2.92E+06 | 824366.639 | 3.49E+07 | 5.24E+10 | 458.448938 |
115 | 740 | 2.58E+06 | 757296.7263 | 3.06E+07 | 3.57E+10 | 469.894354 |
120 | 740 | 2.65E+06 | 771196.9254 | 3.15E+07 | 3.87E+10 | 467.893597 |
125 | 740 | 2.73E+06 | 785252.9716 | 3.24E+07 | 4.18E+10 | 465.373684 |
130 | 740 | 2.80E+06 | 799467.6807 | 3.33E+07 | 4.51E+10 | 463.297632 |
135 | 740 | 2.88E+06 | 813844.3581 | 3.42E+07 | 4.84E+10 | 460.713061 |
140 | 740 | 2.95E+06 | 828384.4337 | 3.51E+07 | 5.19E+10 | 459.366937 |
115 | 745 | 2.59E+06 | 761083.5724 | 3.09E+07 | 3.60E+10 | 470.376461 |
120 | 745 | 2.66E+06 | 775032.6347 | 3.17E+07 | 3.90E+10 | 468.28226 |
125 | 745 | 2.74E+06 | 789136.896 | 3.26E+07 | 4.21E+10 | 466.31919 |
130 | 745 | 2.81E+06 | 803399.1756 | 3.35E+07 | 4.54E+10 | 464.167312 |
135 | 745 | 2.88E+06 | 817822.1792 | 3.44E+07 | 4.88E+10 | 461.325058 |
140 | 745 | 2.96E+06 | 832407.8685 | 3.54E+07 | 5.22E+10 | 459.815216 |
115 | 750 | 2.62E+06 | 764875.8168 | 3.11E+07 | 3.55E+10 | 471.128119 |
120 | 750 | 2.69E+06 | 778873.9004 | 3.19E+07 | 3.85E+10 | 468.847005 |
125 | 750 | 2.77E+06 | 793026.5403 | 3.28E+07 | 4.17E+10 | 466.574581 |
130 | 750 | 2.84E+06 | 807335.9434 | 3.37E+07 | 4.49E+10 | 464.532302 |
135 | 750 | 2.92E+06 | 821806.0224 | 3.47E+07 | 4.83E+10 | 461.859564 |
140 | 750 | 3.00E+06 | 836439.4621 | 3.56E+07 | 5.18E+10 | 460.216164 |