Initializing Contact with Simulation

Sometimes it can be difficult to get a contact study to get past the first round of contact checks. In a non-linear study, the symptoms will be that the auto-step size keeps halving, smaller and smaller, until it gets below 1e-7 and finally gives up. In a linear static study, you might get warned that the maximum allowable incremental strain is exceeded – then after prompting you once or twice to attempt a re-start, it finally gives up. The most unfortunate aspect of both these failure modes is that they mull over the problem for a very long time, before finally giving up. How can we circumvent this?

Start with the Parts Already Touching

If the ‘real world’ contact develops with parts that are initially distant from each other, it is tempting to set up the simulation study the same way. But this means that you are using the FEA system to model the large-scale body translations/rotations, as well as the fine-scale flexure. Most FEA systems are not really well suited, regarding both speed and stability, for modeling large-scale rigid-body dynamics – that is why we have motion modeler systems like DADS, or ADAMs, (which happens to be the motion-solving kernel underlying the SolidWorks Motion Manager). So wherever possible you should put the parts into their positions of initial contact. (In every case, you are also going to find it useful to create a separate Configuration of the assembly, and to drive this new Configuration name down into the parts, to make it easy to keep your FEA-specific model changes separate from the baseline design).

One way to do this is with a Mate. In the image below, the cam-lever is going to contact the spring initially, on a line of tangency between two cylindrical faces, so a Tangent Mate can be used to pull the parts together.

Initializing Contact

Sometimes the surfaces in initial contact will be more organic; the results of a spline, a Loft or Sweep, or some sculptural surfacing command, and then the Tangent and Coincident mates will not be available. The next-best solution to a Mate is to use the Collision Detection option within the MOVE COMPONENT tool, which will halt the parts when contact is detected, (see below). Once the parts halt in a contacting position, you suppress the mates on the moving part(s) and replace them with a FIX relation, just for this, the FEA configuration.

Initializing Contact

Look for the ‘True’ Point of Contact

Use of mates to position the parts in contact is actually superior to using the MOVE COMPONENT. The reason why is that the Mates will act upon the mathematically exact definition of the faces as they are stored in the SolidWorks data structure. The MOVE COMPONENT tool, on the other hand, works upon the approximate, faceted boundary that is available to the graphics card’s Display List. The difference between the exact faces and the (faceted) display list is an important concept that will come in handy again later in this article. In the image below, where the two parts are MATED into theoretical contact, you can see that there seems to be an air space between the parts. But you can also see that the (display of the) edges of the parts are approximated with polygon segments – were these edges to be displayed as infinitely smooth, there would be no gap. Be warned, that when you drag parts into contact using MOVE COMPONENT, and there are spline faces involved, the ‘true’ faces can actually end up slightly interfering.

Initializing Contact

The Simulation Mesh Will Under-Represent the Contact Surface

In much the same way that the Display List is an approximate, faceted representation of the true CAD surfaces, the FEA Simulation mesh will also present a faceted appearance. When you run a Contact study, the Simulation has no ‘analytic’ definition of the faces; it only knows how to check contact on the faceted faces of the Finite Elements. The image below is of the mesh of the cam lever against the spring. The ‘real’ CAD faces have been exactly mated. But the meshed geometry presents a gap. In fact, because the mesh nodes are not required to be aligned with each other in the depth direction, (normal to this view), you are often going to get a small amount of ‘twist’ of the meshed faces. This will cause contact to develop on one edge, (near or far), before the other, even when the real faces are perfectly parallel.

Initializing Contact

OK, so we’ve seen that the MOVE COMPONENT means of dragging parts into contact might actually result in a small interference. And we’ve seen that even when parts are perfectly touching, the mesh can present a small gap between the nearest elements. How does this affect our Simulation reliability?

I have only empirical experience to back this statement up, but I find that interfering parts are much more of a problem than is a gap between them. The solver is fairly tolerant of a gap between parts if it is less than 1/20th the neighboring elements’ size. But I have seen problems where a gap of size ‘X’ would start and run OK, but an interference of the same ‘X’ would fail to start.

Refine the Mesh Locally

The cheapest way to minimize the gap between two contacting surfaces is to reduce the mesh size there, with a local Mesh Control. Smaller mesh elements will induce less truncation of the true surfaces. However, be warned – the smaller the elements are, the lower their gap threshold will be. That is, as the contact elements get very small, their tolerance for an acceptable gap of about 1/20th that element size, ALSO gets smaller. So if the analytic CAD surfaces really do touch, and a gap appears between the parts that is entirely due to mesh truncation, then mesh refinement can never hurt. However, if there is a REAL gap between the parts (for whatever reason), then increasing the mesh refinement will eventually reach a cross-over point. The reduced element size creates a reduced tolerance (1/20th that element size) which becomes larger than the gap, and then the study will likely fail to find a stable start.

Place Mesh Points Where You Need ‘Em

You can completely defeat mesh truncation effect, by forcing the mesher to put nodes directly on the point of initial contact. The easiest way to do this is to add one or more SPLIT LINE features on model faces. The mesher applies nodes first to model vertex points, then across the ‘wireframe’ edges, then distributes nodes to make triangles across the model faces, and then finally distributes nodes within the interior solid. When you induce additional edges across faces of the model, you guarantee creation of mesh nodes along those edges.

Initializing Contact

If we place a Split Line on both the spring and the Cam Lever, above, this eliminates mesh truncation and also any incidental twist, at the point of initial contact. This should result in a Contact study that initializes reliably and quickly, (see figure below).

Initializing Contact

 Want to learn more about SolidWorks or get a hands-on trial? Complete the form below to get started.

CAPINC was founded on one core principle: Provide the best solutions and services to assist our customers in designing and developing better products. CAPINC provides premier solutions and services in New England to assist our customers in accelerating their design and development process for better mechanical products. Our award winning technical support team is comprised of industry experts with hundreds of years of combined practical experience in mechanical design, design validation and analysis, product data management, and technical communication. We are the award winning 3D solutions partner offering SolidWorks software and training, and the entire Stratasys line of 3D printers and production systems. For more tech tips and blog tutorials check out CAPINC's blog and videos.