# Snap-fit contact snagging problem

**URL:** <https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277>\
**Category:** Analysis issues\
**Created:** [May 16, 2024, 2:49pm UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277 "2024-05-16T14:49:09Z")\
**Posts on this page:** 20\
**Page:** 3

<div class="post-metadata">

**Author:** ![JuanP74](https://avatars.discourse-cdn.com/v4/letter/j/b5a626/32.png) [@JuanP74](https://calculix.discourse.group/u/JuanP74)\
**Post date:** [May 19, 2024, 9:44am UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/42 "2024-05-19T09:44:03Z")

</div>

> [@Disla](#):
>
> Reduce Stick Slope.

This is maybe a real effect, if stick slope is very sharp it can make snapping a bit bumpy, maybe Calc\_em can do some tests in abaqus.

---

<div class="post-metadata">

**Author:** ![Calc\_em](https://avatars.discourse-cdn.com/v4/letter/c/43a26b/32.png) [@Calc\_em](https://calculix.discourse.group/u/Calc_em)\
**Post date:** [May 19, 2024, 10:22am UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/43 "2024-05-19T10:22:28Z")

</div>

> [@Disla](#):
>
> This would be my approach keeping the original geometry.

Thanks a lot. Can you share the .pmx file ? I implemented most of your changes and it works almost perfectly but the forces are too low. The devil is in the details so it would be nice to have a look at your setup.

![snap-fit new](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/c/cb49fcfb31c4b10dcbfc4b8b79b3e34e56015047.gif)

Btw. the newest dev version of PrePoMax supports the `*CONTROLS` keyword.

---

<div class="post-metadata">

**Author:** ![xyont](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/xyont/32/3553_2.png) [@xyont](https://calculix.discourse.group/u/xyont)\
**Post date:** [May 19, 2024, 11:52am UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/44 "2024-05-19T11:52:45Z")

</div>

> [@Calc\_em](#):
>
> I’ve tried many things: making the beam shorter and thicker, modifying the slope angle (at first it was 45 deg, now it’s 30 deg), changing Young’s modulus in both ways, reducing contact friction, changing the radius/chamfer (initially, it was a chamfer) size and so on. The result above is the best I got so far.

OP also have tried different random models, so it’s not related to original geometry or not.

---

<div class="post-metadata">

**Author:** ![Disla](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/disla/32/3548_2.png) [@Disla](https://calculix.discourse.group/u/Disla)\
**Post date:** [May 19, 2024, 12:38pm UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/45 "2024-05-19T12:38:57Z")

</div>

I can’t send pmx files sorry.  
I see from your vid that there is still pending the smooth transition at the last step. That is the snap area and it is happening in a really short space. Mine has this amplitude.

 ![imagen](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/9/9450512b7959f442306497d6209aa3bf5dfec699.png)

Displacement value is set to 1mm.

Where are controls?. I can’t find them. Mine is a custom card.

 ![screenshot.48](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/d/d36e8ddd689bc6fd33b2041b9e088cbc629d5e73.jpeg)

By low force you mean in Fy or Fx?. I will take a look at that.

---

<div class="post-metadata">

**Author:** ![xyont](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/xyont/32/3553_2.png) [@xyont](https://calculix.discourse.group/u/xyont)\
**Post date:** [May 19, 2024, 12:52pm UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/46 "2024-05-19T12:52:03Z")

</div>

if original geometry still interesting, assumed material is Abs(default). Similar setup to previous: displacement control, hard contact, friction and rigid bodies apply. Quadratic tetrahedral element in use, mid-side nodes following geometry.

![anim1g](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/f/ff0c044e10e8aa93ad777fb214e2f0e4c25f62c3.gif)

---

<div class="post-metadata">

**Author:** ![Calc\_em](https://avatars.discourse-cdn.com/v4/letter/c/43a26b/32.png) [@Calc\_em](https://calculix.discourse.group/u/Calc_em)\
**Post date:** [May 19, 2024, 3:12pm UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/47 "2024-05-19T15:12:32Z")

</div>

For me, it actually becomes worse with this amplitude and time increment of 0.005. I only don’t have \*CONTROLS because it converges well:

![snap-fit new 2](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/3/3257dd663876423d357027a1f9d93fb15c19a905.gif)

Can you say or show how the block is constrained in your model ? Mine still has rigid body constraint but only at the top face.

> [@Disla](#):
>
> Where are controls?. I can’t find them. Mine is a custom card.

It’s only available in 2.0.11 in a separate menu. I still use 2.0.0.

> [@Disla](#):
>
> By low force you mean in Fy or Fx?

Both but mainly x.

---

<div class="post-metadata">

**Author:** ![Calc\_em](https://avatars.discourse-cdn.com/v4/letter/c/43a26b/32.png) [@Calc\_em](https://calculix.discourse.group/u/Calc_em)\
**Post date:** [May 19, 2024, 3:14pm UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/48 "2024-05-19T15:14:04Z")

</div>

> [@xyont](#):
>
> if original geometry still interesting, assumed material is Abs(default). Similar setup to previous: displacement control, hard contact, friction and rigid bodies apply. Quadratic tetrahedral element in use, mid-side nodes following geometry.

Was it prepared in PrePoMax ? Can you share the file ? Did you check the forces ?

---

<div class="post-metadata">

**Author:** ![Disla](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/disla/32/3548_2.png) [@Disla](https://calculix.discourse.group/u/Disla)\
**Post date:** [May 19, 2024, 3:30pm UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/49 "2024-05-19T15:30:15Z")

</div>

![imagen](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/a/a0c1b1d2df9ff02083ba44e494545afb5ef93899.jpeg)

---

<div class="post-metadata">

**Author:** ![Calc\_em](https://avatars.discourse-cdn.com/v4/letter/c/43a26b/32.png) [@Calc\_em](https://calculix.discourse.group/u/Calc_em)\
**Post date:** [May 19, 2024, 3:55pm UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/50 "2024-05-19T15:55:11Z")

</div>

Now it looks just like in your model (setup should be the same, only without `*CONTROLS`):

![snap-fit new 3](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/c/c1009b1f8eee4aa53ae2d83b6df8d0d5b7c32665.gif)

but the force is too low. The maximum axial force needed to establish the connection should be around 3.3 N. In the model, the initial maximum is 2.29 N and then there’s a peak when it snaps back but I guess that it can be ignored.

---

<div class="post-metadata">

**Author:** ![Disla](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/disla/32/3548_2.png) [@Disla](https://calculix.discourse.group/u/Disla)\
**Post date:** [May 19, 2024, 6:20pm UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/51 "2024-05-19T18:20:44Z")

</div>

Nice.!!

I guess it’s time to compare, look for discrepancies with given references and eventually improve the model.

I have reduced the clip run to the area of interest to speed up the results.

Regarding the peak I would consider:

-If you are comparing with analytical solution, Poisson ratio could make a difference. Your original set up was fixed and mine free to expand.

-The radius of the clip corner affects directly to the maximum axial load. The sharper, the more the clip must push down, the larger the normal pressure on the surface will be, the larger the friction force (nu\*P), the larger the axial component.

-The recommended Stick Slope is 100 times less than the spring constant. It increases the axial force as there is a new tangential force involved. I have increase it up to the point it brakes the model. (80N/mm3). That’s is 1000 smaller. I think this parameter deserves it’s own post.

-The peak is still not smooth enough to isolate it. Maybe it’s time for some refinement.

 ![imagen](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/0/08a9f61a1dd078b25f4679bbbe73a4f06528782a.png)

For those asking why are we complicating the analysis of a clip in such a way with nonlinear and contacts . …In my case It’s just to understand better contacts. Jajajaj.

---

<div class="post-metadata">

**Author:** ![xyont](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/xyont/32/3553_2.png) [@xyont](https://calculix.discourse.group/u/xyont)\
**Post date:** [May 19, 2024, 6:55pm UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/52 "2024-05-19T18:55:58Z")

</div>

it’s a general setup, no specific adjustment i did. Also, i’m interested in doing comparison with another FE solver, basic report can be helpful to understand a problem and the purpose of analysis.

below force outputs for my simplified examples, it seems sectional force is more appropriates instead of reaction.

 ![2024-05-20 01_21_27-PrePoMax v2.0.11 C__Users_user_Documents_sanpfit2scale.pmx](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/5/54f784f7005f59c34a190b7747b4f91bd25664d4.png)

 ![2024-05-20 02_32_32](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/b/bfe54f4f1a16dfb9a303f179d804fbd2e83fd564.png)

---

<div class="post-metadata">

**Author:** ![Calc\_em](https://avatars.discourse-cdn.com/v4/letter/c/43a26b/32.png) [@Calc\_em](https://calculix.discourse.group/u/Calc_em)\
**Post date:** [May 19, 2024, 7:38pm UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/53 "2024-05-19T19:38:17Z")

</div>

I don’t mind this peak at the end so much as long as the initial forces are correct. I’m comparing them with Abaqus too.

What did you do to get this axial force around 3 N ? Only changed the stick slope ? When I set it to 80 N/mm3, it breaks the model, as you said.

 ![slope 80](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/c/c417695ef4eefc30019ee2cf0cfbc9db8f9043e6.jpeg)

But even 60 does it, the initial force is 2.9 N and then starts jumping incorrectly in the middle of an analysis.

---

<div class="post-metadata">

**Author:** ![Disla](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/disla/32/3548_2.png) [@Disla](https://calculix.discourse.group/u/Disla)\
**Post date:** [May 19, 2024, 8:16pm UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/54 "2024-05-19T20:16:42Z")

</div>

My time period (1s) is now fully invested in a shorter run so it is advancing more slowly.

 ![imagen](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/6/61ec6f086654fa7bf2094551b56a46e123aea3d6.png)  
Note that the first elements to fail is a bad shaped Hexa.  
That’s why I suggested to refine or work on the mesh. It has been very useful for debugging faster but now the mesh could be to raw.

 ![imagen](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/9/93ba9c309fa8e7fe1ca10f2442565f954705908f.png)

By other hand I have also seen before models exploding when they are expanded with a unique element very large in depth.

> [@S8R Wrong solution](https://calculix.discourse.group/t/s8r-wrong-solution/2065):
>
> S8R shells with just one element in a given direction fail to solve properly. In this case, dividing the plate once is enough to solve properly. Same result for Traction, Pressure and Gravity. This problem has originally emerged with composite in which S8R is required. Is this a bug, limitation or wrong setting from my side? \*NODE 1,0,-0.5,0 2,0.1666666666667,-0.45,0 3,0.1666666666667,-0.55,0 4,-0.1666666666667,0.35,0 5,0,0.3,0 6,-0.1666666666667,-0.5,0 7,0.1666666666667,-0.25,0 8,0.1666666…

Have you consider the corner radious geometry?

---

<div class="post-metadata">

**Author:** ![xyont](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/xyont/32/3553_2.png) [@xyont](https://calculix.discourse.group/u/xyont)\
**Post date:** [May 19, 2024, 9:17pm UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/55 "2024-05-19T21:17:05Z")

</div>

reduced mesh of original models: right side fixed, uplift forces. Even solvable, but still lack of interest since no other solver to be compared.

 ![2024-05-20 04_05_08](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/6/6a0bc13b3125c830b0badc33661046ffb57bb899.png)

---

<div class="post-metadata">

**Author:** ![Calc\_em](https://avatars.discourse-cdn.com/v4/letter/c/43a26b/32.png) [@Calc\_em](https://calculix.discourse.group/u/Calc_em)\
**Post date:** [May 19, 2024, 9:23pm UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/56 "2024-05-19T21:23:11Z")

</div>

For now, I can use 10 N/mm^3 at most (this gives the axial force of 2.9 N so almost there). What’s your current value of the stick slope ? Refinement only makes it worse, like before. At some point, elements within the tip start collapsing (this is true scale, two subsequent frames):

 ![1](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/d/da71d05b3220e605fa428067c649b06de71ee951.png)

 ![2](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/c/c1f824297e72bdaf1c530d0a812e1d63cb303a78.png)

I’ve tried various radiuses of the fillet on the block in the first tests.

> [@xyont](#):
>
> Even solvable, but still lack of interest since no other solver to be compared.

I compare the results with Abaqus but only the axial force. It should be 3.3 N according to that solver.

---

<div class="post-metadata">

**Author:** ![xyont](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/xyont/32/3553_2.png) [@xyont](https://calculix.discourse.group/u/xyont)\
**Post date:** [May 19, 2024, 9:46pm UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/57 "2024-05-19T21:46:43Z")

</div>

> [@Calc\_em](#):
>
> I compare the results with Abaqus but only the axial force. It should be 3.3 N according to that solver.

these value’s for shear (uplift), axial force is about 1N (peak) reported by CalculiX

 ![2024-05-20 04_42_31-Source](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/f/f06c19135766bc8795071c8d94f7261ee49916de.png)

p.s rigid bodies apply at small block parts, hard contact with friction is left as original models

---

<div class="post-metadata">

**Author:** ![Disla](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/disla/32/3548_2.png) [@Disla](https://calculix.discourse.group/u/Disla)\
**Post date:** [May 19, 2024, 9:53pm UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/58 "2024-05-19T21:53:31Z")

</div>

I have refine and use this final settings:

 ![imagen](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/3/33f3fa601abd78a3e35718f00f4b71d898de057f.jpeg)  
 ![imagen](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/d/dbc8638db6cd7c5f410567469c3b115239768498.png)  
 ![imagen](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/e/e2468a8df4087624331ec499c258404f8f22dec6.png)  
 ![imagen](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/3/378936ea0c9db292c6f3552e4f298c00ad31b6e4.png)  
 ![imagen](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/d/d685936d46ab13e5948b769f0ca049ada8c28de6.png)

I have measured at both sides with identical results.3.1N

 ![imagen](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/0/046f6a2190e8a77f96306db8ae5d7e9062a3888e.png)

I think one should be carefull with the time step to avoid skipping the peak load transition.  
Now that I have increase the time step from 0.005 to 0.01 seems like more springs disconnect randomly before time loosing their corresponding effect in Fx.  
It’s being a nice example to look at. Let me know if you can give it a last improve.

---

<div class="post-metadata">

**Author:** ![Disla](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/disla/32/3548_2.png) [@Disla](https://calculix.discourse.group/u/Disla)\
**Post date:** [May 19, 2024, 10:08pm UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/59 "2024-05-19T22:08:09Z")

</div>

Sorry , I forgot to mention I changed Controls too.

\*CONTROLS,PARAMETERS=CONTACT  
0.001,0.1,10,170

If I understood properly this third parameter seems to control the stiﬀness relaxation. I was wondering how to limit the default reduction factor 100 . It has being my last attempt to remove those small jumps close to the transition but didn’t help.

---

<div class="post-metadata">

**Author:** ![Calc\_em](https://avatars.discourse-cdn.com/v4/letter/c/43a26b/32.png) [@Calc\_em](https://calculix.discourse.group/u/Calc_em)\
**Post date:** [May 19, 2024, 11:34pm UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/60 "2024-05-19T23:34:36Z")

</div>

That’s a very dense mesh. Mine looks like this now:

 ![mesh](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/7/7e85bc7613b23f774bfa7a5c63d1ccae1e0db4e2.png)

The initial max force is correct but there’s still this weird sudden behavior:

 ![res](https://global.discourse-cdn.com/free1/uploads/calculix/original/2X/4/4fd48e907969acae75525d14ddd6dde65676f789.png)

Actually, why is your amplitude 3.058 now ?

---

<div class="post-metadata">

**Author:** ![Disla](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/disla/32/3548_2.png) [@Disla](https://calculix.discourse.group/u/Disla)\
**Post date:** [May 20, 2024, 6:58am UTC](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277/61 "2024-05-20T06:58:47Z")

</div>

Mine is breaking too after the transition. I think that’s because slave becomes coarser than master.

> [@Calc\_em](#):
>
> Actually, why is your amplitude 3.058 now ?

I’m focusing on the area of interest.

[Previous page](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277.md?page=2)

[Next page](https://calculix.discourse.group/t/snap-fit-contact-snagging-problem/2277.md?page=4)
