Contact problem with lattice compression

Hello,

I am simulating compression of a lattice structure between two steel plates . My goal is to reach 25-40% strain.

When I use Tie constraints, everything works (no penetration, convergence is good). However, when I try to use Surface to surface contact, the lattice penetrates the plates. I have defined master surfaces (plate faces) and slave surfaces (lattice top/bottom faces).. I added Contact stabilization (1E-4) and friction with slip tolerance. The simulation converges but penetration still appears in the results.

My setup:

Bottom plate: fully fixed

Top plate: vertical displacement -1mm

Step: Static, Nlgeom, initial increment 1E-5, max increment 0.0005

Question 1 Why does surface to surface contact allow penetration while Tie constraints work perfectly? What am I missing?

Question 2 For lattice self-contact (struts touching each other during collapse above 25% strain), is it possible to define in PrePMax? If yes, what is the simplest method for a beginner? I am not using it right now however maybe later

Thank you for your help.

I have often run models where tie constraints work but surface to surface causes issues. The level of penetration will be governed by the contact stiffness u use. I’m not sure what u mean by contact stabilisation -I thought that was not a feature in Calculix - see below from the calculix discourse.

If u can post ur .pmx file here I have messed up so many contact analysis I can certainly point out some of the many errors I have made if the are in there.

Thank you for your response. I actually thought contact stabilization and friction with slip tolerance were available in CalculiX based on what I found online, but I guess I was wrong about that. To be honest, this is my first time setting up a model , so I’m still learning as I go. I’m attaching my file so you can see what I’m working with however i got the that new users can not upload files . The main issue I ran into was when I tried to use surface to surface contact. It was really hard to select the right surface nodes, and I also had problems with penetration. That’s why I ended up using tie constraints instead, since they were much easier to work with. I’d really appreciate any advice you can give me on the setup

Contact stabilization can help with initial rigid body motions (and thus non-convergence) before contact is established. At least in Abaqus. CalculiX has just contact damping for implicit dynamics only.

The standard way of dealing with penetrations, apart from refining the mesh and ensuring proper master-slave assignment (master should have a coarser mesh, among others) is to adjust the contact stiffness. Usually, it’s too high, leading to convergence issues, though. A good way to determine it is shown here:

That whole CalculiX forum thread is a very good reference for cases with tricky contact conditions.

1 Like

Try now. Or you can send me the model via pm.

I assume you are checking it with true scale deformation, right ?

The only way to define self-contact in CalculiX is to just select the same surface twice (as master and slave). You can find some examples on the CalculiX forum:

However, I usually recommend OpenRadioss for such analyses.

it woll not be poosible in my case .

Ok, I see that your case calls for explicit dynamics solver such as OpenRadioss (just like this older case I’ve referenced). It doesn’t have general contact unlike Abaqus, but it will still be much more feasible than CalculiX for this task (unless you reduce the model to some periodic/representative region). And there’s a converter from .inp to .rad: Tools/input_converters/inp2rad at main · OpenRadioss/Tools · GitHub

2 Likes