Iterative analysis
One of the most fascinating topics in the application of parametric design in engineering is optimization. It's hard to find an engineer who works with Grasshopper and hasn't tried their hand at optimizing using Galapagos. This process can often be quite straightforward as we can obtain real-time outputs like mass, deflection, and utilization by adjusting various parameters.
So, how do we go about it? The following example should help illustrate the setup:
- the analysis (static analysis)
- the design settings (check, auto-design, apply changes)
- the design parameters (utilisation)
Design settings and parametersโ
Design parameters are currently linked to a text file. The cfg.xml
file template can be found in the plug-in folder installed by Package Manager in %AppData%\McNeel\Rhinoceros\packages\7.0\FemDesign\
The file has several parameters that you can modify as you pleased. In case of steel bars, you can use something like the following:
<?xml version="1.0" encoding="UTF-8"?>
<configs>
<CONFIG fIgnoreAnnexForShearStrength="false" StripeWidth="1" type="CCMSCONFIG"></CONFIG>
<CONFIG type="CCCOCONFIG"></CONFIG>
<!-- EUROCODE STEEL CONFIG -->
<CONFIG sInteraction="0" type="ECSTCONFIG"></CONFIG>
<!-- DESIGN PARAMETERS STEEL BAR -->
<CONFIG LimitUtilization="0.8" type="CCDESPARAMBARST" vSection_itemcnt="24"></CONFIG>
<!-- EUROCODE CALCULATION PARAMETERS STEEL BAR -->
<CONFIG aBucklingCurve_fx1="-1" aBucklingCurve_fx2="-1" aBucklingCurve_ltb="-1" aBucklingCurve_ltt="-1" aBucklingCurve_tf="-1" CheckResistanceOnly="1" class4Ignored="1" convergencyratio="1" fLatTorBuckGen="1" fLatTorBuckGenSpecForI="0" maxIterStep="50" plasticIgnored="0" rStep="0.5" s2ndOrder="1" type="ECCALCPARAMBARST" UseEqation6_41="0"></CONFIG>
</configs>
FEM-Design will be instructed to apply those settings and the design will reflect the parameters.
You can download the Grasshopper definition used in this tutorial from here ๐Grasshopper Definition