Forum Replies Created
-
AuthorPosts
-
Luciano Jacinto
ParticipantThanks for implementing the method setPlaneStrainElement().
I express my gratitude sending a Python sample (I used to test the method) and a doc describing the model and some of its results.
Warm regards
LucianoAttachments:
You must be logged in to view attached files.Luciano Jacinto
ParticipantThe same sample can also be used in plain stress analysis. The model is planar and the loads are defined in the plane of the model. However, running the model selecting the plain stress formulation gives the following error:
ERROR:Likely lability detected at node 25 – dof z
Solving …
ERROR:Likely lability detected at node 25 – dof z
No success in solving system.
ZZNodalRecoveryModel :: unknown size of InternalStateType IST_ShellMomentTensorThis is an unexpected error, because the model runs without problem selecting Shell analysis. Because this is a planar model (both in elements and in loads), the shell analysis and the plane stress analysis should give the same results.
Thanks for your time spent on this.
LucianoLuciano Jacinto
ParticipantIt seems that solving a plane strain model, NextFEM gives only nodal displacements, not stresses. I’m attaching a planar model (defined in the XY plane, as stated in the user manual) in which, as I said, I got no stresses, only displacements.
Can you verify this, please? Thank you.
LucianoAttachments:
You must be logged in to view attached files.Luciano Jacinto
ParticipantThank you very much!
Luciano Jacinto
ParticipantThank you very much for your support. Now I know how to solve a plane strain problem in NextFEM Designer.
I made some search in the NextFEMpy module (in GitHub) to see if there is a Python method equivalent to the “Change elem. type” command in the GUI, but I didn’t find any. Perhaps this command is not yet implemented in the API. Am I correct?
Thank you for the free version of NextFEM. It’s a nice tool.
LucianoLuciano Jacinto
ParticipantMany thanks for your fast and kind support!
Luciano Jacinto
ParticipantIt seems that there are some small differences between both API. For example, in the newer Python API the elemsNumber property returns a string while in the earlier API returns an integer. Or, at least, that seems to me. But that is not a big problem, because we can convert easily a string into an integer and vice versa in Python.
Luciano Jacinto
ParticipantThank you so much! That solved the problem!
I used this very simple example to test the possibility of importing a mesh generated by Gmsh into NexFEM. In other more complicated cases, this possibility is very useful. Once more, thank you so much for your help and very quick support!
PS: It would be great to have an API method like setShellLocalAxes() to align local axes in a Python script.
Luciano Jacinto
ParticipantI understood your response. So, I run again the model with a zero Poisson coefficient (turning strains in both directions independent from each other) and got the same high result (sxx = 11805 kN/m2). So, the question seems a bit more complicated. I’m not an expert on FEM, but, perhaps it has to do with the shape functions, as you said. Thanks for your time spent on this.
Luciano Jacinto
ParticipantMany thanks for your help. Ok, it makes sense that for shell elements NextFEM applies uniform temperature gradient simultaneously in both local directions. Ok, in my example, a monodimensional element would be more suitable, but this was simply to test NextFEM regarding uniform temperature gradients in shells.
So, continuing with my test, I corrected the model freeing displacements in the z-direction, and, after the analysis, the model behaves as expected, except for stresses in x-direction. NextFEM gives sxx = 11805 kN/m2, but I expected sxx = 7869 kN/m2. I would expect a closer result.
Once more, many thanks for your fast response.
Attachments:
You must be logged in to view attached files.Luciano Jacinto
ParticipantDear NextFEM admin and parhyang: Thank you both. Definitely, to estimate negative moments with some confidence in slabs at continuity supports we have to use finite elements with very small size near the supports (size in the order of magnitude of the slab thickness).
Luciano Jacinto
ParticipantMany Thanks for your very fast response. Thanks also for the free, basic version of the program. What I like best is its very simple interface with Python, making it possible to construct a model in few minutes (using templates). For me, the GUI is good to view results, not so much to build the model.
So, we may conclude that, although the implemented finite element has the advantage of avoiding stress concentrations and peaks (which is the case in many situations, for example concentrated loads on shells), if there is some real peak, we must use a refined mesh, with very small size.
Luciano Jacinto
ParticipantThank you very much for the update. I’ve just tested the method addThermalDistLoad() in several beams (doble-fixed, fixed-supported and continuous) and everything worked as expected, both uniform gradient and linear gradient. Congratulations!
Luciano Jacinto
ParticipantIn the case of uniform gradient the result given by NextFEM (compression) is obviously correct. The doubt is only about linear gradient.
Luciano Jacinto
ParticipantThanks. This time the solver ran the model without problems and the results were as expected.
-
AuthorPosts
