A parametric model and script workflow to conduct daylighting simulations
Description
In this project, a parametric model of a
windcatcher within a generic building with a double-loaded corridor
configuration was modeled within the Project environment in Revit. The model
from Project 1 was used as the starting point. The model consists of a “Test
Room”, which has a windcatcher attached to one of its sides, a hallway in the
center, and another room on the opposite side.
The model was constructed using the Floor, Walls, and Roofs categories.
Generic families of each category were used. Reference planes and dimensions
were used to establish the different parametric relationships between the
design parameters of interest. Several openings were modeled in the windcatcher
and on the opposite side of the Test Room using the Opening families.
Using visual programming tools, a program was
generated that enabled the user to easily manipulate the geometry of the model
and conduct daylighting simulations. The RhinoInsideRevit plug-in was utilized
to link the parametric model made in Revit to the daylighting simulation plug
inside Rhino Grasshopper. The ClimateStudio (Solemma LLC) plug in was used and
integrated into the algorithm to conduct the daylighting simulations. The
result of the project is a parametric model prototype and Grasshopper script that
enables the user to easily test the daylighting performance of different
configurations.
The results of future research to be conducted
with a more developed version of this prototype could potentially serve as
guidelines to incorporate windcatchers in real buildings. Although this project
was mainly intended for research purposes, ultimately it is also important to
consider the aesthetic properties of this architectural component. For the last
part of the project, the AI tool called Project Veras was used to explore different
renderings to help visualize how this architectural element could be
implemented in a real building design.
Different configurations of the parametric model.
|
|
Global Parameters
The
initial model was generated using Revit. The parametric model is defined and
manipulated using global parameters, as shown below.
· Bmin
Height: This parameter controls the minimum height of the
roofs of the whole building.
· BWidth:
Controls the width of the whole building.
· ExteriorOpeningHeight:
Controls
the height of the outlet openings in the Test Room
·
ExteriorOpeningWidth(report): Reports
the width of the outlet openings (distance between reference planes). This parameter
is linked to the Width parameter of the Opening family to make the opening
width adjust to the Building Width.
·
HW Width:
Controls the width of the hallway between the rooms.
·
TR Depth:
Controls the depth of the Test Room.
·
TR Max Height:
Controls the Height of the roof to generate a one-slope roof if needed.
·
TR RoofGrade:
Calculates the grade(slope) of the Test Room roof. This parameter is linked to
the Slope parameter of the roof, so it is adjusted automatically.
·
TR RoofSlope (report):
Calculates the slope of the roof in degrees.
·
WC Depth:
Controls the depth of the windcatcher.
·
WC Height:
Controls the height of the windcatcher.
·
wc height:
this parameter is the one that adjusts the reference planes, it is determined
by a formula to be able to measure the windcatcher height from the roof level
and not the interior ceiling level.
·
WC InletOpening Height:
Controls the height of the windcatcher inlet opening.
·
WC InletOpening Width (report):
Reports the width of the inlet openings (distance between reference planes).
This parameter is linked to the Width parameter of the Opening family to make
the opening width adjust to the windcatcher width.
·
wc inletopening height: This
parameter controls the height of the windcatcher inlet opening. It responds to
a formula that ensures that the height of the opening does not surpass the
total height of the windcatcher.
·
WC OutletOpening Height: controls
the height of the windcatcher outlet openings, which open in the Test Room.
·
wc outletopening height: controls
the height of the windcatcher outlet openings, which open in the Test Room.
This parameter adjusts the reference planes. Is determined by a formula to
ensure the opening height does not surpass the roof height.
·
WC OutletOpening Width(report): Reports
the width of the outlet openings (distance between reference planes). This
parameter is linked to the Width parameter of the Opening family to make the
opening width adjust to the windcatcher width.
·
WC RoofSlope (report): Reports
the slope of the windcatcher roof.
·
WC Width:
controls width of the windcatcher.
·
wc width:
adjusts the distance between reference planes to control the width of the
windcatcher. Is determined by a formula to ensure windcatcher width does not
exceed the building width and leave space for access into the Test Room.
·
WWR Depth:
controls the depth of the room on the opposite side.
·
WWR MaxHeight:
Controls the Height of the roof to generate a one-slope roof if needed.
·
WWR RoofGrade:
Calculates the grade(slope) of the Windward room roof. This parameter is linked
to the Slope parameter of the roof, so it is adjusted automatically.
·
WWR RoofSlope (report):
Calculates the slope of the roof in degrees.
Grasshopper Script and Daylighting
Simulation
This image shows the entire script developed in
Grasshopper to parametrically control the windcatcher configuration and conduct
the daylighting simulations.
This is a typical module used to retrieve the
geometry of the Revit model by categories. A Python script module is included
to bake the geometry into Rhino if needed.
This group isolates the walls of the windcatcher
from the rest of the walls that are retrieved from the Revit model under the
same category. It is used to assign a different material to the interior of the
windcatcher.
Lids were created for the Test Room exterior
openings to be able to study the daylighting effect of the windcatcher. The
lids adjust parametrically based on the geometry of the Revit model.
These two groups retrieve and update the roof
slope parameters from the Revit model.
This group is used to assign material properties to
the selected geometry. In this case different materials were assigned to the
Roofs, Ceilings, Walls and Floors.
This part of the script generates the sensor grid
within the room to conduct the simulation using the floor surface of the Test
Room. A unit conversion node is used because the ClimateStudio plug-in operates
in the metric system by default.
This group of nodes retrieves the global parameters from the Revit model and enables their adjustment through the use of an input value.
The final part of the script constructs the
daylight model and runs the simulation. In this case, a point-in-time
simulation was conducted. The nodes on the lower left enclosed in a group
(purple rectangle) generate the date and time parameters required. The last
nodes on the script retrieve the results and display the numerical results,
such as the readings from every sensor and the mean and median values of
illuminance.
Simulation results as seen from the Rhino window.
Limitations
Limitations in the proposed workflow were
identified throughout the course of the development of the project that
required workarounds and compromises. The initial idea was to control the
parametric model using Dynamo. A significant obstacle was found in the
“GlobalParameterSetValue” node. Apparently, this node is bugged, as it does not
update the numerical value of the global parameters. After some tests, it was
discovered that it does updates text-based global parameters. This limitation
was resolved using the “Global Parameter” node from RhinoInsideRevit.
It was intended to incorporate optimization tools
such as Galapagos into the Grasshopper script. This would have enabled the
automatic optimization of the windcatcher. It was discovered that updating the
parameter values within Grasshopper would automatically update the Revit model,
but not the Rhino model. To update the Rhino model, it is necessary to manually
click the “Recompute” button. With this limitation, running the automatic
optimization process through Galapagos was not feasible, as it requires the
Rhino model to be updated automatically.
Experiments with Project Veras
Below are some of the results of the
experimentation with the tool. The “creativity” and “Style” parameters were set
to 95 and 80 respectively. This was decided based on the simplicity of the model
since it is representative of a generic building. The increased values allowed
for the tool to come up with its own visualizations that better resemble real
buildings. In the experiments, the following prompts were used:
#1: ornamental windcatcher, in a tropical setting,
concrete building, concrete wind tower
#2:
ornamental
windcatcher, in a tropical setting, white concrete building, concrete wind
tower, in the style of aires mateus
#3:
ornamental
windcatcher, in a tropical setting, white concrete building, concrete wind
tower, in the style of alvaro siza
#4:
ornamental
windcatcher, in a tropical setting, white concrete building, concrete wind
tower, in the style of frank lloyd wright
#5:
ornamental
windcatcher, in a tropical setting, white concrete building, concrete wind
tower, in the style of louis kahn
#6:
tropical
building with shading devices, ornamental windcatcher, white concrete wind
tower with big opening, horizontal openings
#7:
futuristic
wind tower, futuristic windcatcher, futuristic white tropical building, metallic
wind tower
#8:
ornamental
windcatcher, in a tropical setting, beautiful white concrete building, concrete
wind tower
#9:
wind
tower with louvers, windcatcher with louvers, wind tower with glazed openings,
tropical architecture
#10:
ornamental
windcatcher for natural ventilation, in a tropical setting, beautiful concrete
building
The initial attempts helped to calibrate the final
values of the creativity and style parameters. Having the lower values did not
produce the type of image that was desired due to the simplicity of the model. Research
can be very valuable to inform the process of architectural design, but the
aesthetic aspect of a building must also be taken with great consideration. A
building’s performance can be very well studied, but that should not result in
an aesthetically unpleasant building. This experiment was very interesting as
it helped to visualize the aesthetic possibilities of the windcatcher. It was
noted that for some of the prompts, the program was unable to recognize the
windcatcher, as it did not generate an image with the specified characteristics,
such as “wind tower with louvers”.
Comments
Post a Comment