(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-PM5M9PRG');
9 minutes read
12 April 2018

Flow Chart: Do I need contact

9 minutes read

Download the printer-friendly version here, and read the user guide below!

We will tackle contact here. If you haven’t read my posts on nonlinear supports and how to avoid contact you may find them interesting : )

This is not the first flowchart that I posted here. You can also check flow charts for nonlinear geometry and nonlinear material.

Starting with the obvious

The first questions (well, two questions actually) are pretty obvious.

First, you need to wonder about:

Will 2 bodies contact in my model?

This is a rather straightforward question. Do you have 2 objects that can touch each other in your analysis? Sometimes, this may be a bit more tricky, when you are not sure if they will deform enough to touch. Usually, it makes sense to verify that in the model without contact and then add contact if needed. If you don’t need contact this will save you some computing time later on. However, if the contact is there “from the start” (no deformation is needed), there are some simplifications one can try. We will discuss them later.

When you check if two elements of your model will be in contact, remember that you need to check deformations with a scale of 1! Usually software “adjust” deformation scale to model size or whatever – but you are interested in “real” deformation in this case! (more on this here!).

Slightly less obvious things

The second thing is a bit less obvious, but still rather straightforward. If you have 1 element in your model this does not mean that you don’t need contact. Part of the fun comes from boundary conditions. This means that the second question is:

Will something contact a rigid support?

Think about it this way: not all supports work in both directions. Sometimes they carry only compression or tension (compression is far more common BTW). If this concept is foreign to you, please read the article I mentioned earlier.

There are several ways you can deal with this. You can model nonlinear supports (i.e. such that work only in compression) but usually, you will simply add a rigid surface where the support is and define contact there. The trick is not in how you do it, but rather that you know that a simple “pinned” support in that region won’t work!

Let’s get going!

Great – we have the basics behind us! If the answer for at least one of the above questions was “yes” then you are at least “in the contact zone”. This is not a “tragedy” yet (if you consider defining contact tragic that is!), but we are closer to it without a doubt.

Now the question needs to ask that is a bit unusual:

Do I want to try to avoid contact?

The thing is, that from the previous 2 questions you already know that there is contact. You can try to “avoid” using it, but if you don’t want to try avoidance, simply define contact and move on! So if you don’t suspect there will be a lot of contact convergence issues (or you did a similar job before and you happen to know parameters that simply work great in such cases) then say “no” define contact and move on!

However, often model you will analyze will be big or will have other non-linearities at play. In the worst case scenario,g you may want to use “linear contact” which is an incarnation of convergence problems! In such cases trying to avoid contact in analysis seems like a good move!

Initial encounter

A contact is a tool and a useful one without a doubt. But it comes at a price of high computing time, especially in steps when contact “closes”. Sometimes you may also experience convergence problems. In such cases trying to avoid contact seems a good move.

I started avoiding contact in my analysis for another reason. Software that I initially used did not allow for contact (!). This is how I figured out all the schemes I will describe below… I simply had no other choice : )

I quickly learned that some problems simply won’t work this way, and hence the first question:

Is this an initial contact?

By this I mean – does elements touch at the start of the analysis? If not they will have to deform first and then get in contact.

Problem is, that this almost eliminates any chance for simplifying it. You see, simplification will be based on adding supports or connections. But when contact is not “initial” it means that you need deformations to “hit” support later during analysis (or another element of course). You won’t be able to use a simple support (or connection)… since it’s not there at the start!

In such a case, you can always try to use gap elements… But I have no idea why would you do that (!). There is no obvious benefit (unless your license doesn’t allow contact I guess).

In other words, if the contact in your analysis doesn’t happen at the very beginning of the analysis watch out! I wouldn’t bother with trying to avoid it… unless you have a good reason to do it : )

Wise-man knows when to run!

OK. At this stage, I assume you are a lucky one! It seems that you have a relatively simple contact case that happens at the very start of your analysis. Something more or less like this:

Great! In such a case, you can try to avoid using contact and still get nice results (much faster). Only 2 questions are between where you are and a great success! The first one is:

Can you predict where the contact zone will be?

This is the “oracle / wise-man from the mountains” type of question. Luckily for us, oftentimes the answer is obvious.

In general, contact works like this: you can transfer compression forces (sometimes friction as well), but you don’t carry tension. This means that were compression forces are transferred you have a connection. If tension is present there is no connection.

So… if you can predict where compression will be, you can model the connection there, and ta-da! You just made what contact would… but without those pesky iterations and convergence issues!

I think this sketch will explain it better – there is also an entire post about it on the blog:

In other words, if you can predict where is the area where compression will be transferred you are fine! Just connect or support that area, and do nothing where the tension will be!

Just be aware that this can be done in iterations. It is possible that you will “miss” where compression is. This means that you will get tension in those additional elements (instead of compression you assumed). You can, of course, delete the “connection” where you got tension and re-calculate the model. Problem is… that you are starting to do manual iterations… something contact does for you automatically! So unless you are fairly certain you can guess where the contact is at the start… don’t use this simplification. You will waste a lot of time!

Still interested in avoiding contact?

Let’s assume you had a good “guess” where the contact will be. And you want to avoid it. So you connected element where contact will be (or you supported the model where contact to rigid support will be). You also checked if there is no tension in the connection/support just to be sure you guessed right.

There is still something that can go wrong. If one of the elements is not rigid enough, it can deform in a way that would require additional places to be in contact. Take a look:

  • More or less this is what you want:
  • And if the plate is not rigid enough this is what you get:
  • Sadly, you don’t have connection/support on the flange level (only at the plate edge) so you will get deformations like this:

This shows, that the plate was to “weak” and since you only connected/supported the edge… part of the plate went through your support!

This is where the next question kicks in:

Is my model rigid enough not to deform “through” contact?

If it is, then great! If not, sadly such simplification may require so much work that it makes no sense to use it! Sure, you can try to iterate manually with additional supports, where the contact is in “collision”. In the above example, all that you would need is to add support to the flange level. However, in most cases, this is a huge waste of time, as you will manually do the iterations for contact. Of course, if the “inward” deformations are very small, you can just as well ignore them. It’s up to you I guess : )

But let’s be positive for a while! If your model is rigid enough and it does not go in “collision” as I marked above… you made it! You have a model that shows nice outcomes without all the contact iterations.

You may think that this is a stupid procedure, and in many cases analyzing this actually is! I mean if the model is simple and small contact convergence will take less than analyzing what I wrote here! But I was in so many places that this saved me hours of computing that in the end… it’s at least good to know about it 😉

Is it you or am I touching myself?

This is something I’ve left out for the very end.

So far we discussed situations where 2 elements touch in your model or something contacts the support. But there is a 3rd possibility. An element can deform so much, that it will touch itself!

Sadly, this means that it happens under big deformations, so you will simply have to use a contact in such case!

Bam! You made it!

Congratulations! You just finished the last flowchart I plan for now. If you missed the previous ones (do I need geometric nonlinearity and do I need material nonlinearity) be sure to take a look.

Also if you like such posts let me know – I will try to prepare more of such flowcharts. Have an idea for a good topic? Let me know in the comments!

If you enjoyed the post you can share it with friends – that would be a great help!

Want to learn more?

This is awesome! I’ve prepared a special free FEA course for my subscribers. You can get it below.

Author: Łukasz Skotny Ph.D.

I have over 10 years of practical FEA experience (I'm running my own Engineering Consultancy), and I've been an academic teacher for a decade. Here, I gladly share my engineering knowledge through courses, and on the blog!

Read more

Join my FEA Newsletter

Get my 1h video Lecture on Nonlinear Material

    Your personal data administrator is Enterfea Łukasz Skotny, Skrzydlata 1/7, 54-129 Wrocław/POLAND, Email. By subscribing to the newsletter that includes marketing messages you consent to your personal data processing in accordance with this privacy policy

    Join the discussion

    Comments (0)

    Sign up for my FEA Newsletter!

    Each Tuesday you will get awesome FEA Content directly yo your email!

      Your personal data administrator is Enterfea Łukasz Skotny, Skrzydlata 1/7, 54-129 Wrocław/POLAND, Email. By subscribing to the newsletter that includes marketing messages you consent to your personal data processing in accordance with this privacy policy