Contact Formulations for Contact Pairs in Abaqus/Explicit

The contact formulation for the contact pair algorithm in Abaqus/Explicit includes:

  • the contact surface weighting (balanced or pure main-secondary); and

  • the sliding formulation (finite, small, or infinitesimal).

You can also specify the method that is used to enforce contact constraints in the contact pair; these methods are discussed in Contact Constraint Enforcement Methods in Abaqus/Explicit.

This page discusses:

Contact Surface Weighting

Both the pure main-secondary and the balanced main-secondary contact algorithms are available in Abaqus/Explicit. By default, Abaqus/Explicit will decide which algorithm to use for any given contact pair based on the nature of the two surfaces forming the contact pair and whether kinematic or penalty enforcement of contact constraints is used. You can override the defaults in some cases.

Default Choices for the Contact Pair Weighting

Abaqus/Explicit uses the pure main-secondary, kinematic contact algorithm, by default, in the following situations (the first surface in each situation listed is designated the main surface):

  • when a rigid surface contacts a deformable surface;

  • when an element-based surface contacts a node-based surface; or

  • when a surface based on continuum elements contacts a surface based on shell or membrane elements.

By default, Abaqus/Explicit uses the balanced main-secondary, kinematic contact algorithm in the following situations:

  • when a single surface contacts itself (referred to as self-contact or single-surface contact); or

  • when two deformable surfaces that are meshed with similar elements (i.e., either both surfaces have shells or membranes or both have continuum elements) contact each other.

If the penalty contact algorithm is specified, Abaqus/Explicit uses pure main-secondary weighting, by default, in the following situations (the first surface in each situation listed is designated the main surface):

  • when an analytical rigid surface contacts a deformable surface; or

  • when an analytical rigid surface or an element-based surface contacts a node-based surface.

If the penalty contact algorithm is specified, Abaqus/Explicit chooses balanced main-secondary weighting, by default, in the following situations:

  • when a single surface contacts itself (referred to as self-contact or single-surface contact); or

  • when two element-based surfaces contact each other.

Balanced main-secondary weighting means that the corrections produced by both sets of contact calculations are weighted equally.

Modifying the Default Choices for the Contact Pair Weighting

When the kinematic contact method is chosen, you can override the default contact pair weighting only when two separate deformable element-based surfaces are contacting each other, which corresponds to the last situation in each list for kinematic contact given in the previous section.

The following aspects should be considered when deciding whether or not to override the default choice. First, the balanced main-secondary contact algorithm requires more computational time, but it is typically more accurate. Second, when the densities differ by orders of magnitude, the less dense body should be a pure secondary surface. Contact-induced noise can occur if a surface on a much denser body is at all weighted as a secondary surface. Finally, to avoid significant penetration for hard contact, the surface with the finer mesh should not be the main surface in the pure main-secondary contact pair.

When the penalty contact method is chosen, you can choose to specify a pure main-secondary weighting to reduce computational time. When two originally flat surfaces contact one another, a more uniform penetration distance distribution (and consequently pressure distribution) may result with pure main-secondary weighting as compared to balanced main-secondary weighting. This can be particularly evident if the mesh densities of the contacting surfaces differ significantly—with balanced weighting the contact penetrations will be smaller near the nodes of the coarsely meshed surface. However, balanced main-secondary weighting provides better enforcement of contact constraints in most cases.

You define a weighting factor, f, to specify the main-secondary weighting. Set f=1.0 to designate the first surface in the contact pair as the main surface and the second surface as the secondary surface. Set f=0.0 to designate the first surface in the contact pair as the secondary surface and the second surface as the main surface. Specifying any value of f between 0 and 1.0 invokes the balanced main-secondary contact algorithm. When f=0.5, which is the default for balanced main-secondary contact pairs, Abaqus/Explicit weights each set of corrections equally. In contrast, Abaqus/Standard uses a pure main-secondary contact algorithm; the secondary surface must always be given first, as in the f=0.0 case above.

Sliding Formulation

In Abaqus/Explicit there are three approaches to account for the relative motion of the two surfaces forming a contact pair:

  • finite sliding, which is the most general and allows any arbitrary motion of the surfaces;

  • small sliding, which assumes that although two bodies may undergo large motions, there will be relatively little sliding of one surface along the other; or

  • infinitesimal sliding and rotation, which assumes that both the relative motion of the surfaces and the absolute motion of the contacting bodies are small.

The small-sliding and infinitesimal-sliding formulations cannot be used for contact pairs using the penalty contact algorithm or involving self-contact or analytical rigid surfaces.

Using the Finite-Sliding Formulation

The finite-sliding formulation allows for arbitrary separation, sliding, and rotation of the surfaces. Abaqus/Explicit uses this formulation by default. Only the finite-sliding approach is available for self-contact or contact involving analytical rigid surfaces.

Example

The following input defines finite-sliding contact between the surfaces ASURF and BSURF, shown in Figure 1, with ASURF acting as the secondary surface:

SURFACE,NAME=ASURF
ESETA,
SURFACE,NAME=BSURF
ESETB,
CONTACT PAIR,INTERACTION=PAIR1, WEIGHT=0.0
ASURF, BSURF
SURFACE INTERACTION,NAME=PAIR1
Contacting bodies.

In the example shown in Figure 1 secondary node 101 may come into contact anywhere along the main surface BSURF. While in contact, it is constrained to slide along BSURF, irrespective of the orientation and deformation of this surface. This behavior is possible because Abaqus/Explicit tracks the position of node 101 relative to the main surface BSURF as the bodies deform. Figure 2 shows the possible evolution of the contact between node 101 and its main surface BSURF. Node 101 is in contact with the element face with end nodes 201 and 202 at time t 1 . The load transfer at this time occurs between node 101 and nodes 201 and 202 only. Later on, at time t 2 , node 101 may find itself in contact with the element face with end nodes 501 and 502. Then the load transfer will occur between node 101 and nodes 501 and 502.

Trajectory of node 101 in finite-sliding contact.

Finite Sliding in a Geometrically Linear Analysis

Finite-sliding simulations usually include nonlinear geometric effects because such simulations generally involve large deformations and large rotations. However, it is also possible to use the finite-sliding formulation in a geometrically linear analysis (see Geometric Nonlinearity). The load transfer paths between the surfaces and the contact direction are updated in finite-sliding, geometrically linear analysis. This capability is useful for analyzing finite sliding between two stiff bodies that do not undergo large rotations.

Using the Small-Sliding Formulation

For a large class of contact problems the general tracking of the finite-sliding formulation is unnecessary, even though geometric nonlinearity must be considered. Abaqus/Explicit provides a small-sliding contact formulation for such problems. This formulation assumes that the surfaces may undergo arbitrarily large rotations but that a secondary node will interact with the same local area of the main surface throughout the analysis. Contact pairs that use the small-sliding formulation must be defined in the first step of the simulation, although they may remain active after the first step.

A large-displacement formulation (the default) should be used for the step in which the small-sliding contact formulation should be used.

In a small-sliding analysis every secondary node interacts with its own local tangent plane on the main surface (see Figure 3). The secondary node is constrained not to penetrate this local tangent plane. Each local tangent plane, which is a line in two dimensions, is defined by an anchor point, X 0 , on the main surface and an orientation vector at the anchor point (see Figure 3).

Definition of the anchor point and local tangent plane for node 103.

Having a local tangent plane for each secondary node means that for the small-sliding formulation Abaqus/Explicit does not have to monitor secondary nodes for possible contact along the entire main surface. Therefore, small-sliding contact is less expensive computationally than finite-sliding contact. The cost savings are most dramatic in three-dimensional contact problems.

When the balanced main-secondary contact algorithm is invoked with the small-sliding formulation, anchor points and tangent planes will be computed for both surfaces.

Anchor Point and Tangent Plane Definition

The anchor point and the tangent plane orientation are chosen before the analysis starts using the initial configuration of the model. The anchor point and the tangent plane orientation remain fixed with respect to the main surface facet for all steps in which the contact pair is active. No contact constraints are enforced for secondary nodes whose nearest point lies on the free perimeter of the main surface in the original configuration and that do not project onto any main surface facet.

Abaqus/Explicit chooses the anchor point as the nearest point on the main surface. The orientation of the tangent plane is calculated by default from the normals at the main surface nodes, or you can specify it directly.

  • Main surface normals: The first step in defining the tangent plane orientation is to construct the unit normal vectors at each node of the main surface. Abaqus/Explicit forms these nodal normals by averaging the normals of the element faces making up the main surface; only the element faces in the surface definition will contribute to the nodal normals. The tangent plane orientation is then calculated from the main surface nodal normals and the element shape functions at the anchor point.

    Figure 3 shows the nodal unit normals for a main surface, the anchor point X 0 , and the local tangent plane associated with secondary node 103. Abaqus/Explicit uses the closest point on the main surface as the anchor point. N ( X 0 ) is the contact direction for secondary node 103 and defines the orientation of the local tangent plane. In this example, as in many cases, the local tangent plane is only an approximation of the actual mesh geometry.

  • Main surface normals at symmetry planes: Sometimes the main surface normal and the local tangent plane that Abaqus/Explicit calculates are not suitable for the desired analysis. The most common situation where unsuitable surface normals are calculated occurs when a curved main surface ends at a symmetry plane and the boundary conditions have been specified in direct format rather than in symmetry “type” format (XSYMM, YSYMM, or ZSYMM—see Boundary Conditions). In this case the correct normals should be in the symmetry plane; however, because the surface facets that abut the symmetry plane usually form an angle with the plane, the normal will project away from the symmetry plane. The effect of this behavior can be that a secondary node does not project onto any main surface facet (the secondary node is said not to “intersect” the main surface). No contact constraints will be enforced for such secondary nodes. However, if symmetry “type” format boundary conditions are specified, contact constraints will be enforced as described below. The finite-sliding formulations use no special treatment for main surfaces ending at a symmetry plane.

    Figure 4 shows two concentric cylinders that contact each other; the inner cylinder is chosen as the main surface CSURF, and a half-symmetry model is used. Since Abaqus/Explicit calculates the nodal normals from the approximate, finite element model, the nodal normal N 1 does not point along the symmetry plane, which means that secondary node 100 has no anchor point within the perimeter of the main surface. Whether or not contact is enforced for node 100 depends on how the symmetry boundary condition is specified. If the individual components are specified rather than a symmetry “type” boundary condition, secondary node 100 will be free to penetrate the main surface. If the symmetry “type” format is used, the main normal at the node on the symmetry plane will be corrected to lie along the symmetry plane and contact will be enforced on the tangent plane as shown in Figure 5. Defining a YSYMM “type” boundary condition at node 1 to specify the symmetry plane will allow secondary node 100 to see the main surface CSURF.

    Main surface normal at node 1 in a small-sliding model of concentric cylinders. With the default N 1 secondary node 100 will never contact CSURF.

    The modified main surface normal at node 1 of CSURF now allows secondary node 100 to contact CSURF.

  • Modifying the local tangent plane orientation: In some cases the contact direction, N ( X 0 ) , defined from the main surface averaged normals will not define the contact surface accurately. The most common example of this is a circular surface meshed with nonuniform length facets. Figure 6 shows how the averaged main normals will not be oriented correctly in the radial direction.

    Poorly oriented averaged main surface normals for an irregularly meshed circular surface.

    In this case you should specify the contact direction directly for each secondary node by defining spatially varying initial clearances (see Specifying Initial Clearance Values Precisely). The location of the anchor point is not affected by reorienting the tangent plane using an initial clearance definition.

Local Tangent Plane Rotation

The local tangent plane is always orthogonal to the contact direction. The contact direction is taken as the interpolated normal of the main surface at the anchor point, N ( X 0 ) , or as the direction specified with a spatially varying clearance definition (see Specifying Initial Clearance Values Precisely). Once the contact direction has been defined, the orientation of the local tangent plane with respect to the main surface facet remains fixed. Because the small-sliding formulation considers nonlinear geometric effects, Abaqus/Explicit continuously updates the orientation of the local tangent plane to account for the rotation of the main surface facet. The position of the anchor point relative to the surrounding nodes on the main surface facet does not change as the main surface deforms.

Load Transfer

In a small-sliding analysis the secondary node will transfer load to the nodes of the main surface facet containing the anchor point, with the magnitude of the load transferred to each node weighted by its proximity to the anchor point. For example, in Figure 3 node 103 transmits load to both nodes 2 and 3 on the main surface. Thus, if node 103 impacts the local tangent plane, a larger share of the force would be transmitted to node 3 because it is closer to the anchor point X 0 .

As a secondary node slides along its local tangent plane, Abaqus/Explicit does not update the distribution of load transferred by a given secondary node to its associated main surface nodes; the distribution is based solely on the position of the anchor point. This is unlike the small-sliding formulation in Abaqus/Standard, which does update the load distribution to the main surface nodes as sliding occurs, so that no net moment is associated with the contact forces acting on secondary and main nodes per active contact constraint, regardless of the amount of sliding. Some net moment will be associated with the contact forces after sliding has occurred with the small-sliding formulation in Abaqus/Explicit. This net moment will not be significant if the sliding is truly small compared to element dimensions, but otherwise it can result in non-physical behavior and poor accounting of energy.

Figure 7 shows the potential problem that arises if small sliding is used but the relative tangential motion of the surfaces is not “small.”

Excessive sliding in a small-sliding contact analysis.

It shows the possible evolution of contact between secondary node 101 in Figure 1 and its main surface BSURF. Using the unit normal vectors N 201 and N 202 , the anchor point X 0 was found for secondary node 101; for the purposes of this example, assume that it lies at the midpoint of the 201–202 face. With this location of X 0 the local tangent plane for node 101 is parallel with the 201–202 face. The load transfer always occurs at the original anchor point between nodes 201 and 202, no matter how far node 101 has slid along the local tangent plane. Therefore, if node 101 moves as shown in Figure 7, it will continue to transmit load equally to nodes 201 and 202 when, in fact, it really slid off the mesh forming the main surface BSURF.

What Can Be Considered Small Sliding

A contact pair in a small-sliding contact simulation should not grossly violate any of the assumptions or limitations outlined above. Adhere to the following guidelines:

  • Secondary nodes should slide less than an element length from their corresponding anchor point and still be contacting their local tangent plane. If the main surface is highly curved, the secondary nodes should slide only a fraction of an element length.

  • The local tangent planes formed by Abaqus/Explicit should be a good approximation of the mesh geometry; if necessary, use an initial clearance definition (Specifying Initial Clearance Values Precisely) to improve the tangent plane orientation.

  • The rotation and deformation of the main surface should not cause the local tangent planes to become a poor representation of the main surface during the course of the analysis.

Main Surface Refinement in Small-Sliding Problems

The basic guidelines for pure main-secondary contact given previously in this section should still be followed in a small-sliding simulation. However, in a small-sliding simulation more thought must be given to the degree of refinement for the main surface.

The smoothly varying main surface normal N ( x ) and the local tangent planes that are formed with it are crucial to the success of a small-sliding analysis. As has been mentioned previously, there are several methods that can be used to modify N ( x ) ; however, they only control the initial configuration of the local tangent planes. The deformation and rotation of the main surface can reorient the local tangent planes such that they become a poor representation of the main surface. Figure 8 shows an example where distortion of the main surface results in such a situation.

Main surface deformation in a small-sliding contact analysis can cause problems with the local tangent planes.

This problem can be minimized to some extent by using a more refined mesh on the main surface, thus providing more element faces to control the motion of the tangent planes. Excessive mesh refinement should not be necessary since only small sliding should occur.

Using the Infinitesimal-Sliding Formulation

The difference between the infinitesimal-sliding and small-sliding formulations is that the infinitesimal-sliding formulation ignores nonlinear geometric effects. To specify the infinitesimal-sliding formulation, you choose the small-sliding contact formulation and a small-displacement formulation for the analysis step.

Infinitesimal sliding assumes that both the relative motions of the surfaces and the absolute motions of the model remain small. The orientations of the local tangent planes are not updated, and the load transfer paths and the weightings assigned to each main surface node remain constant during an infinitesimal-sliding simulation.

Local Tangent Directions for Contact

Local tangent directions for contact provide a reference frame for select contact pair output variables in Abaqus/Explicit (see About General Contact in Abaqus/Explicit). These local tangent directions are separate from local coordinate systems associated with user subroutines VFRIC and VUINTER. Abaqus/Explicit establishes and updates the orientation of the first local contact tangent direction, t 1 , at secondary nodes according to the logic described below for different contact formulation types within a contact pair. The orientation of the second local tangent direction, t 2 , is found as the cross product of the contact normal direction, n with t 1 .

Contact pairs not involving an analytical surface

The t 1 -direction at a secondary node is re-established each increment using the standard convention for calculating a first local surface tangent direction (see Conventions). Local tangent directions do not co-rotate with the secondary surface in this case, which is unlike general contact (see Local Tangent Directions for Contact).

Contact pairs involving an analytical surface

The t 1 -direction for contact is initialized at a secondary node upon first contact to be aligned with the convention for the t 1 -direction of the analytical rigid surface discussed in Analytical Rigid Surface Definition at the point of contact. In subsequent increments, the t 1 -direction for contact at a secondary node evolves such that it continues to be aligned with the t 1 -direction of the analytical rigid surface at the current point of contact.

Contact Tracking Algorithms

A large portion of the computational cost associated with Abaqus/Explicit contact pairs derives from the algorithms used to track the relative motion between two contacting surfaces. There are two tracking approaches for the contact pair algorithm in Abaqus/Explicit, depending on the sliding formulation that is used: finite sliding and small/infinitesimal sliding.

Finite-Sliding Tracking

Abaqus/Explicit is designed to simulate highly nonlinear events or processes. Because it is possible for a node on one surface to contact any of the facets on the opposite surface, Abaqus/Explicit must use sophisticated search algorithms for tracking the motions of the surfaces.

The contact search algorithm is designed to be robust, yet computationally efficient. This algorithm assumes that the incremental relative tangential motion between surfaces does not significantly exceed the dimensions of the main surface facets, but there is no limit to the overall relative motion between surfaces. It is rare for the incremental motion to exceed the facet size because of the small time increment used in explicit dynamic analyses. In cases involving relative surface velocities that exceed material wave speeds, it may be necessary to reduce the time increment.

The contact search algorithm uses a global search at the beginning of each step, and a hierarchical global/local search algorithm is used for the other increments. The default contact search algorithm can handle the majority of typical contact situations. However, there are some situations that require special attention. We will consider a pure main-secondary contact pair for discussion purposes. For a balanced main-secondary contact pair, the contact search computations are performed twice for each contact pair.

Global Contact Searches

A global search determines the globally nearest main surface facet for each secondary node in a given contact pair. A bucket sorting algorithm is used to minimize the computational expense of these searches. A two-dimensional example, without consideration of “buckets,” is shown in Figure 9.

Global search in two dimensions.

The global search computes the distance from node 50 to all of the main surface facets in the same bucket as node 50. It determines that the nearest facet on the main surface to node 50 is the facet of element 10. Node 100 is the node on this facet that is nearest to node 50, and it is designated the tracked main surface node. This search is conducted for each secondary node, comparing each node against all of the facets on the main surface that are in the same bucket.

By default, Abaqus/Explicit performs a global search every one hundred increments for two-surface contact pairs. The frequency of the global search can be manually adjusted, as discussed in Contact Controls for Contact Pairs in Abaqus/Explicit. Despite the bucket sorting algorithm, global searches are computationally expensive: performing a global contact search in every increment will more than double the run time of many Abaqus/Explicit contact analyses.

Local Contact Searches

Abaqus/Explicit uses a local contact search to track the motion of the surfaces during most increments of an analysis. In this approach a given secondary node searches only the facets that are attached to the previously tracked main surface node. Abaqus/Explicit determines which adjacent facet is the nearest to the secondary node. It then determines which node on that facet is the closest main surface node to the secondary node and updates the tracked main surface node. If the closest main surface node is not the same as the previously tracked main surface node, Abaqus/Explicit performs another iteration of the local search.

In the example shown in Figure 10, node 50 moves as shown during an increment. In the first iteration of the search Abaqus/Explicit finds that the main surface facet on element 10 is still the closest facet of those attached to node 100 but that node 101 is now the tracked main surface node. Because the previously tracked node was node 100, Abaqus/Explicit performs another iteration. In this second iteration a new element, element 11, is found to be the closest facet and the closest main surface node is 102. Another iteration is performed because the identity of the tracked main surface node changed. In the third iteration the identity of the tracked node does not change, so Abaqus/Explicit designates node 102 as the tracked main surface node for secondary node 50.

A local search is substantially less expensive computationally than a global search. A slightly more expensive local search algorithm can be employed in situations where contact is not being properly enforced; this alternate algorithm is discussed in Contact Controls for Contact Pairs in Abaqus/Explicit.

Local search in two dimensions.

Tracking Approach for Self-Contact Pairs

Abaqus/Explicit uses similar contact searching methods for simulations with self-contact as for two-surface contact; however, more frequent global searches are often necessary for self-contact problems. By default, contact pairs with self-contact use a global contact search every four increments, compared to every 100 increments for two-surface contact pairs; the frequency of the global searches can be manually adjusted (see Contact Controls for Contact Pairs in Abaqus/Explicit). If several facets that are unconnected to each other are found to be near a secondary node during global tracking, global tracking automatically will be performed more frequently than the specified number of increments. Despite this precaution, the self-contact algorithm will be less robust if you specify a search frequency that is significantly lower than the default.

Small-Sliding (or Infinitesimal-Sliding) Tracking Approach

When the small-sliding or infinitesimal-sliding contact approach is invoked (see Sliding Formulation), Abaqus/Explicit performs a single global search at the beginning of the first step to determine the globally nearest main surface facet for each secondary node in the given contact pair. Once the nearest facet has been determined, the nearest point on that facet defines the anchor point. Contact constraints will not be applied to secondary nodes that do not project onto any main surface facet. No further tracking is performed during the step or for subsequent steps in which the contact pair remains active. This makes the small-sliding/infinitesimal-sliding contact approach less expensive computationally than the finite-sliding contact approach. The cost savings are most significant for three-dimensional contact problems.