JWock82 / Pynite

A 3D structural engineering finite element library for Python.
MIT License
475 stars 94 forks source link

Tension-only members #182

Closed maximeepaulais closed 9 months ago

maximeepaulais commented 9 months ago

Hi,

When trying to test this example of tension-only members : Examples/Braced Frame - Tension Only.py, I surprinsigly find compression on Brace 2 where we should none.

Here are the axial plot for both Brace 1 and Brace 2 image image

Are there any mistakes in the example or is the tension_only argument not properly working ?

Best regards,

Max

JWock82 commented 9 months ago

That’s interesting behavior. A quick hand calculation estimates the single active brace load to be 64 kips for that problem, which matches the plot for Brace 1. Here’s what I think is happening: The analysis is correct, but the post-processor is attempting to find results for Brace 2 when you request them. It sees that the nodes have deformed and based on that it calculates the force it would take for those nodes to move that much with that brace present. I need to alter the code to not provide results for inactive members. Thanks for reporting. Let me know if this seems to match your observations or not.

maximeepaulais commented 9 months ago

Hi, Thank you for taking the time to look into this issue. I do agree with your analysis, the results for Brace 1 seem to be correct. The only problem I had was with the non zero values of axial forces in Brace 2.

I'm quite reassured that you found the same behavior as me in this example since I'm quite new to your package I honestly thought I might have used this example incorrectly.

JWock82 commented 9 months ago

I’ll get this fixed. It was an oversight on my end. I didn’t think about people querying results on inactive members.