Struggling with convergence

I’m trying to run a non-linear simulation on this plastic part. I’ve simplified the CAD how I can, but it is still somewhat detailed. I struggle to mesh it, and fell back to using Tetrahedral Gmsh.

I believe I have the simulation set up reasonably for a first attempt at this model, but it spends about 20 min trying and “fails with results”. I’m not sure where I’ve gone astray or even how to ask a well formed question.

The material is one I created based on a true-stress-strain curve from a 2020 paper. It’s possible I haven’t entered the plastic data correctly. I don’t know what my other sources of error would be.

Tetrahedral mesh is ok for such a complex geometry, but it should be much more refined, especially in the contact region.

You need to eliminate initial rigid body motions. The main part lacks some BCs and contact is not enough to hold it. If you don’t want to restrain any of its motions, you should at least add some soft springs.

I see that you’ve already tried with load applied via rigid body constraint. You could use this approach and fix all DOFs at the reference point apart from the ones where load is applied.

1 Like

Try this linearized model first:

From this working model you can proceed with further (local) mesh refinement and add nonlinearities (plasticity, Nlgeom and contact - in this order) one by one. Contact will be the trickiest part (apart from Nlgeom) and, as explained above, you have to make sure it’s properly established at the beginning of the analysis to eliminate RBMs or prevent them in a different way (e.g. using soft springs).

2 Likes

Thank you for the help, I’m looking through the model and following your line of thinking:

You’ve got the contact pairs off, and a second Surface-Interaction. How are you applying those surface interactions to specific parts of the model?

For example, the top part of the the interaction seems almost stationary, but the bottom penetrates the fixed piece as though it’s not interacting at all. (in “true scale”)

The main body is supposed to be pulled down and out, which I thought would mean it would touch the inside wall at the bottom (to the right)

That’s why I have the initial conditions set up with the yellow touching the top left and bottom-right in this view. If you pull the beige part down and right from a lever-arm off to the right, it should rotate clockwise and contact the yellow piece in 3 spots: roof, upper left wall, lower right wall. Am I thinking about that incorrectly?

(note: the yellow piece has a subtle arc to it, and doesn’t lend itself to orthogonal views like this).

I was testing different setups. First linear contact (Surface_Interaction-1), then tied contact (Surface_Interaction-2) and finally tie constraint. The only contact pair in the model still has linear contact property assigned, but this pair is deactivated and tie constraint is used instead. You can easily do the opposite (activate contact pair and deactivate tie constraint). So at the moment, both parts are tied where they touch initially (in the back - top part of your screenshot). This is the linearized approach for debugging. From this, you can start adding nonlinearities one by one, as mentioned above.

You could also add a contact pair just in the location where there’s currently penetration between the parts:

Of course, ultimately, you will want nonlinear contact everywhere between these parts, but it will likely cause non-convergence due to initial RBMs, so you may need to add some extra BCs or soft springs to stabilize the model, as I’ve mentioned before.

Perhaps you could replace the applied force with iteratively estimated displacement. Displacement control is much better for convergence. Here’s such a model:

Run it, check the reactions at the reference node and adjust the displacement values to get closer to the desired forces.

2 Likes