User login

Navigation

You are here

Contact Detection in FEM simulations

tlaverne's picture

I know that contact detection is generaly separated in two steps : a neighbourhood identification phase  and a detailed contact check.           

The neighborhood identification matches a slave node to a set of master surfaces that it potentially could contact. The detailed contact check
determines which of the candidate master surfaces is in contact with a slave node,  the penetration and  all quantities necessary to enforce the contact constraint.

For the first step I know three algorithm: pin-ball, bucket sort and surface tracking. One can find a brief review of those  algorithm in http://www.osti.gov/energycitations/purl.cover.jsp?purl=/10175733-uc3cuM/

 But it seems that people in computer graphics use an other method to enforce contact constraint by using a distance field computed  by a level-set method. A description can be found in http://www.cs.unc.edu/~geom/DDF/CAS01.pdf
My question is: what is your opinion on that ?

I use fairly complicated geometries that can deform a lot so the algorihtm must be both robust and fast (geometry and contact definitions will be updated many times). By theway I use an augmented lagrangian strategy to enforce constraints in a Newton solver. For the moment, I only use P1 elements and the classical node-segment algorithm. In the future i will implement mortar elements but defore that, i wish to find an appropriate contact detection algorithm.

thank you a lot for commenting upon that !! 

Let me know if you know other good algorithms. 

tlaverne's picture

  I can explain more in details if necessary. Moreover, could those you use contact in their simulations give some details about the contact algorithm they use ?

Thank you very much in advance ! 

Have you looked at segment-to-segment contact algorithms such as the mortar method?  Mike Puso demonstrated some of his mortar based contact simulations a few years ago and the results were impressive.  I believe the reference is "A mortar segment-to-segment contact method for large deformation solid mechanics ", Computer Methods in Applied Mechanics and Engineering, Vol. 193, No. 6-8. (13 February 2004), pp. 601-629.

Level sets are really fast when you want to describe a small number of surfaces (preferably non-intersecting).  I'm not sure how good they are when you have to deals with hundreds of surfaces or more.  If I recall correctly, you have to solve a Laplace type equation for each of the surfaces that you want to describe.  You could ask John Dolbow or N. Sukumar about their experiences with level sets in describing cracks and other discontinuities.

It's important to keep in mind that detecting contact and enforcing constraints are two separate issues.  The mortar-finite element method is really about enforcing constraints, rather than detection.  For the latest on the former, I'd suggest the recent paper by Yang and Laursen that has come out of the DCML.  Techniques that originated in the computer graphics community are indeed used.  Here's an example of a simulation of self-contact during buckling that was generated using the algorithms. 

Level-sets are another option, but I'm not sure they're really the best choice in this context.  

tlaverne's picture

... for your interest !

In a way, enforcing contact and detecting contact are tightly related in the mortar approach because you need to compute segment-segment intersections (in 2D) before to compute all the mortar stuff. On the other hand a preliminary search is necessary to discard "far segments".

I will have a look on the paper of Yang and Laursen, should be very interesting !

 

 

Subscribe to Comments for "Contact Detection in FEM simulations"

Recent comments

More comments

Syndicate

Subscribe to Syndicate