As I write this from home during the Covid-19 crisis, I want to assure you that PADT is conscious of many others working from home while using Ansys software as well. We’re trying to help with those who may be struggling with certain types of models. In this posting, I’ll talk about a contact convergence problem in Ansys Mechanical. I’ll discuss steps we can take to identify the problem and overcome it, as well as a simple setting to make which dramatically helped in this case.
The geometry in use here is a fairly simple assembly from an old training class. It’s a wheel or roller held by a housing, which is in turn bolted to something to hold it in place.
The materials used are linear properties for structural steel. The loading consists of a bearing load representing a downward force applied by some kind of strap or belt looped over the wheel, along with displacement constraints on the back surfaces and around the bolt holes, as shown in the image below. The flat faces on the back side have a frictionless support applied (allows in plane sliding only), while the circular faces where bolt heads and washers would be are fully constrained with fixed supports.
As is always the case in Ansys Mechanical, contact pairs are created wherever touching surfaces in the assembly are detected. The default behavior for those contact pairs is bonded, meaning the touching surfaces can neither slide nor separate. We will make a change to the default for the wheel on its shaft, though, changing the contact behavior from bonded to frictional. The friction coefficient defined was 0.2. This represents some resistance to sliding. Unlike bonded contact in which the status of the contact pair cannot change during the analysis, frictional contact is truly nonlinear behavior, as the stiffness of the contact pair can change as deflection changes.
This shows the basic contact settings for the frictional contact pair:
At this point, we attempt a solve. After a while, we get an error message stating, “An internal solution magnitude limit was exceeded,” as shown below. What this means is that our contact elements are not working as expected, and part of our structure is trying to fly off into space. Keep in mind in a static analysis there are no inertia effects, so an unconstrained body is truly unconstrained.
At this point, the user may be tempted to start turning multiple knobs to take care of the situation. Typical things to adjust for contact convergence problems are adding more substeps, reducing contact stiffness, and possibly switching to the unsymmetric solver option when frictional contact is involved. In this case, a simple adjustment is all it takes to get the solution to easily converge.
Another thing we might do to help us is to insert a Contact Tool in the Connections branch and interrogate the initial contact status:
This shows us that our frictional contact region is actually not in initial contact but has a gap. There are multiple techniques available for handling this situation, such as adding weak springs, running a transient solution (computationally expensive), starting with a displacement as a load and then switching to a force load, etc. However, if we are confident that these parts actually SHOULD be initially touching but are not due to some slop in the CAD geometry, there is a very easy adjustment to handle this.
The Simple Adjustment That Gets This Model to Solve Successfully
Knowing that the parts should be initially in contact, one simple adjustment is all that is needed to close the initial gap and allow the simulation to successfully solve. The adjustment is to set the Interface Treatment in the Contact Details for the contact region in question to Adjust to Touch:
This change automatically closes the initial gap and, in this case, allows the solution to successfully solve very quickly.
For your models, if you are confident that parts should be in initial contact, you may also find that this adjustment is a great aid in closing gaps due to small problems in the CAD geometry. We encourage you to test it out.