You are on page 1of 11

Session 26

Introducing Geometry Gym

Hosted by John Kuyt / Daniel Edmiston


In this session we are going to look at using Geometry Gym to create a GSA model and read the analysis
results back into Grasshopper.

This tutorial looks at an example of a Truss but the methods used can be applied to other structures.

Link to example Truss which can be used as part of this Tutorial:


Location:
https://arup-my.sharepoint.com/:f:/p/daniel_edmiston/ElF-VwdDkOFGhnrz4KWn4D4BCxHb3gYkdo-
UZNHZV3DzDw?e=0MNDSJ

When using this file please check your units. Units in Rhino should be set to Meters if using the above
Truss definition.
Geometry Gym is a plugin for Rhino and Grasshopper.

Geometry Gym can be downloaded by following the link below. For this session you will need to download
Geometry Gym for GSA. Once installed it should appear in your Grasshopper ribbon in the ‘SA’ tab.
Link:
https://geometrygym.wordpress.com/downloads-windows/:

You will need to install the global license.


Link:
http://networks.intranet.arup.com/digital/bim/tools/rhino/plugins/geometry-gym.cfm
Using the ‘End Points’ component to create points at Truss intersections
use ‘All curves’ as input

Use the ‘ggGSACreateBeam’ Geometry Gym component to create a structural beam parts
between each node.

Example Definition: Intersection points:

1D Elements & Nodes:


Using the ‘ggGSACreateSectionProp’ component define section properties for the structural
beam parts.

To define the profile for the section, this should be defined as a string parameter using the same syntax as
GSA.

Finally use the ‘ggGSACreate Material’ to assign a material. Right click on input ‘M’ and
select ‘STEEL’ from list of default materials.
Example Definition:

Section profiles assigned:


Convert nodes at supports as ggGSA nodes using the ‘ggGSACreateOrFindNode’ component
Use the ‘ggGSANodeAtts’ component to set the node restraints.

use the ‘Support Nodes’ and input.

Right click on ‘Restraint (R)’ and tick all node restraints to define encastre supports.

Example Definition:

Supports added:
Convert nodes at load points as ggGSA nodes using the ‘ggGSACreateOrFindNode’ component

Use the ‘ggGSALoadCase’ component to create a GSA load case.

Use the ‘ggGSALoadNode’ component to create a GSA point loads.

use ‘Top Nodes’ as input


Example Definition:

Loads added:
Use the ‘ggGSAAnalysis Static’ component to create a static analysis task.

Use the ‘ggGSAAnalysis Case’ component to create an analysis case.

Example Definition:
Use the ‘ggGSASolver’ component to write a new GSA file and run the analysis

Example Definition:
• Define a file path and file name ‘P’
• Analysis Task ‘T’
• Use a Boolean toggle to write to GSA, set run ‘E’ to true

• In addition we need to define a beam query ‘Q’ to read results


• Firstly, select nodes to query and convert to ggGSA nodes
using the ‘ggGSACreateOrFindNode’ component.
• Then add the‘ggGSAQuery Node Displacement’ component
• Add the ggGSA nodes to query into ‘N’
• Add the load case into ‘C’
• Plug the output into the ‘Q’ input.

Use ‘Bot Chord’ as input


Use the ‘ggGSA Result Node Set Decompose’ component to read Node results

• The max displacement can be read from the ‘M’ ouput.


• The results can be visualized by retrieving the ‘vector length’ and a ‘Text tag’.
Example Definition:

Maximum vertical displacement = 4.891mm

Displacements:
Open the saved GSA file ‘C:\Arup\Truss.gwb’ and contour plot nodal displacements U

Displacements:

Absolute Maximum vertical displacement = 4.891mm

You might also like