Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations KootK on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

Strand7 Python integration

Status
Not open for further replies.

ryan_struct

Aerospace
Oct 24, 2015
16
Hello Engineers and scientists.
I'm working in Facade industry. I was using staad pro for my analysis and recently I'm planning to change to strand7.
So can any one answer me how we can integrate strand7 with python programming and extract the most juice out of strand7 using python.
Also is there any blogs or websites dealing with this tutorials?
 
Replies continue below

Recommended for you

Hi. When I try to offer some help in the forums, I do it without my connection to Strand7, where I work as Technical manager. I need to put my hat on a bit now , but again not as part of Strand7. So here goes, There are many api examples for different programming languages that come along with the Strand7 installation. One example is of a plate optimisation using a modified fully stress method approach. The second one is modifying a model. Both exist in python and many other languages. I have personally done a lot of work using python and vb scripts from code checks, to metal fatigue and optimisation (and a combination of them all). I think the api is great because it is procedural, and not object oriented like in some other software. Also these tutorials help you get started fast.

Have in mind though that the api is an additional module and needs to be purchased in addition to the Strand7 Base package. For more details email info@strand7.com. The team will also be able to respond to any scripting requirements and questions that you might have. Also feel free to let me/or the Strand7 know what you have in mind when you say to get the most out of Strand7 via the api. As mentioned many scripts developed are related to things that are not possible within Strand7. Say progressive ply failure. Also related to automating certain proceses as code checks or fatigue checks, and topology and shape optimisation.

Finally the api manual is really great and well documented describing all calls in detail. I have struggled many times to find this simplicity and information in other software when writing scripts.
 
There are a couple of links to blog posts about using the Strand7 API here:

The links use Excel and VBA, but recently I have done some work using Python with ExcelPython (now incorporated in xlwings) to link Strand7 to Excel. I found this worked well, although the documentation related to Python in the Strand7 API manual is very brief. You can of course work directly from Python if you prefer.

Doug Jenkins
Interactive Design Services
 
Thanks for the reply guys. @ Erik say for example, I have a finite element model of a steel bracket with 4 anchor bolts and I need to play with the anchor bolt spacing so that I need to get a minimum stress. So if i do it manually it is too much time-consuming.
Is there a way that i can write a python program and integrate it with my solver which will try those configurations for me and return me with an optimum solution?

 
In principle you could. Have in mind though that Strand7 does not have a lot of CAD capabilities, since it is not a CAD package, so you would need to define in Strand7 geometry via FE which are then converted to geometry (so from FEA to CAD, or just do FEA straight of, can be very tricky for complex parts though), and then use this as cad (again this can be tricky if parts are complex - I have done this for a simple 2D bracket without any bolts, that was shape optimised using an excel inbuilt optimiser).

Alternatively if you have Rhino, or another CAD with an api, you could call both programmes, via e.g., python say, and do CAD in the CAD package and run the analysis in Strand7, update in the cad, and rerun in Strand7 (repeat this cycle for different configurations). Some engineers use the Rhino/Grasshopper and Strand7 linked together to generate geometry (Rhino) and analyse parts (Strand7). An example: Link

What you describe is though an optimisation problem, that is not trivial to code. You could always though do a response surface (for different configurations) and see where your optimum is on a graph/surface (rather than doing a proper optimisation).

 
Status
Not open for further replies.

Part and Inventory Search

Sponsor