algorithmic modeling for Rhino

Here's a thread for questions and suggestions specific to the Geometry Gym addon to interact with SAP2000 Structural Analysis.  Note you can filter my blog for posts/examples specific to SAP 2000 using the tag cloud or this link here: 

First post relates to questions raised here:

SAP2000 uses slightly different terms to other structural analysis software (ie Load Patterns are  equivalent to Load Cases in most other software).  I am trying to do my best to ensure the GH plugin terminology matches, but still needs improving and this doesn't help with what connects to what.  If you spot something you think can be improved, please let me know.

I've attached my subtle changes to your GH def.  Note that at least one of the forces needs to be activated to true to get results to emit.

I had a request to report stress the other day, but when I went to check you can only extract the force using the API, so I need to find some time to do some additional coding to calculate these from the section properties.  Axial force you might be able to quickly calculate from the force using GH components.  

Note also I recently enabled the ability to nominate the SAP model units (ie Feet and kips) from a right click on the ssiBake button.  This should be done prior to the first exchange to SAP, so either save, close and restart Rhino, or disable the solver prior to first opening the model to make the change.

Hope it helps, look forward to hearing more.



Views: 12963


Replies to This Discussion

Thanks  a lot Jon for your complete explanation. 

I was wondering to ask you is it possible to have all the results table after analyzing with SAP in an excel file? (I meant in the way that the SAP already has in Display-> show tables)

Glad it helped.

I believe there are a few addons that interact Grasshopper with spreadsheets so this is certainly possible (one option might be to delimit data with commas and stream to a .csv file).  I'm not an expert in this, I was thinking the other day how prolific my use of spreadsheets were to generate Autocad and Rhino models and how Grasshopper has obliterated this (in effect each component is a bit like a spreadsheet cell).  If you search for spreadsheet or excel on the group you should find help on this topic.  I will take a look at perhaps providing the text data in a format consistent with the SAP output for tables.

Thanks Jon for all your help, 

I don't have problem importing spreadsheets in Grasshopper, my question is, since the SAP does not automatically save the analysis result in an excel file, we need to write a code using API to do so.

Since I am working on the optimization problem, I cannot save the SAP results manually each time as an excel file. 

I was wondering to ask you if you have already developed any component that save the SAP result for each analysis as an excel or text file. Or, If you have any comportment that has all the analysis results in it, so I can use that component and convert it to an excel file.

Really appreciated your help. 

Here's a nice demonstration of interacting SAP2000 solver with Galapagos by Thornton Tomasetti using the Geometry Gym connector.

Here's an old youtube demonstration of use of the SAP components

Example models can be downloaded from this filter of my blog:

Hi everyone! 

First, thanks to Jon especially.  You've been extremely helpful and I've really enjoyed exploring geometry gym.  However, now I've run into a problem with ggSAP.  I'm trying to model a curved solid timber panel and I've attached the files I'm working with.

Here's what happens: if ggSAPsolver is enabled SAP will give me a CSIMDIForm popup window: "Subscript out of range" with an OK option

This is followed by another popup notification: "Can not save Sap transfer file In Core!" with the option OK or Cancel.

Choosing either one leads to another popup: "Error creating database table for table Load Case Definitions!"

The latter two repeat each other for a bit and then SAP crashes.  If I disable ggSAPsolver and try the bake button alone I still get the latter two popups and a crash.

Many thanks in advance for any help you can offer.


Sorry for the slow reply, hope you already found the reason for the problem.

It's a very interesting model.

You're interrogating the displacement from a point in free space, not connected to the elements that you're generating.  I've attached a modification of your model, where it searches the points for the closest and uses that for the assessment.

Let me know if this isn't clear.




Thank you so much!  That does explain why SAP was getting confused.  However, I'm still having some difficulty.  ggSAP runs and Rhino tells me "+++ Analysis Successful!".  SAP opens fine, but there's no model is generated inside it.

Not sure about that, never had someone report this.

Perhaps try installing latest plugin from

It takes a while to prepare and solve this model (the resulting displacement is large, I think some more restraints are needed) but for me once the successful message appears sap zooms automatically to the model as per this.  Let me know if you still can't see the sap model.

Hi Jon!

I've updated ggRhinoSAP, but no dice.  I still get this:

Hi Jon!

Is there a way to perform a buckling analysis directly from GH?

Thanks a lot

I have one more (stupid) question...

Is there a way in GH to set the numer or limits for the Output Stations of a frame? Seems like GGSAP is randomly assigning it to members, and I can't find a way to set it...

Thank you very much!






  • Add Photos
  • View All


  • Add Videos
  • View All

© 2022   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service