You are on page 1of 56

Contact Analysis:

Modeling Considerations

Arturo Valentin, PhD


and the staff at ADINA R&D, Inc.

March 8, 2016

© ADINA R&D, Inc., 2016 1


Overview

• Challenges
• Basic tools
• Understanding diagnostics
• Contact definition guidelines
• Compliance usage and consequences
• Initial penetrations
• Frictional contact
• Simplifications and conditioning

© ADINA R&D, Inc., 2016 2


Achieving Convergence

© ADINA R&D, Inc., 2016 3


Achieving Convergence

Cannot expect quadratic convergence unless contact behavior has stabilized!

© ADINA R&D, Inc., 2016 4


Why is Contact so Challenging?
• Strong, discontinuous nonlinearity
– In or out of contact
– Slipping or sticking
• Interaction with other aspects of model
– Element formulations
– Mesh size (spatial discretization)
– Time steps (temporal discretization)
• Potential for modeling errors
– Surface definitions and contact search
– Contact and solution parameters

© ADINA R&D, Inc., 2016 5


Important Tools & Techniques

 Enabling detailed diagnostics


• Selecting and assigning contact surfaces
• Choosing the correct elements/mesh
• Judicious use of contact compliance
• Suppressing oscillations
• Properly handling initial penetrations
• (Temporary) problem simplification

© ADINA R&D, Inc., 2016 6


Diagnostics
First recommendation: always use
detailed diagnostics. This provides
crucial information!
 Nodes coming in and out of contact
 Nodes switching from stick to slip
 Initial penetrations
 Oscillatory behaviour

Causes the .out file to be larger (but


not the .por file).

Also offers “Symptoms” and “probable


causes and remedies” when
convergence is not achieved

© ADINA R&D, Inc., 2016 7


Interpreting the .out file
Typical converging frictionless model:
Diagnostics: ---------------------------------------------------------------------------------------------
- Nodes coming into contact. 1406 nodes including node 48362 with penetration = 1.000E-04
----------------------------------------------------------------------------------------------------------

Diagnostics: ---------------------------------------------------------------------------------------------
- Nodes losing contact. 843 nodes including node 47524 with contact force = 7.749E-03
----------------------------------------------------------------------------------------------------------

Diagnostics: ---------------------------------------------------------------------------------------------
- Nodes losing contact. 240 nodes including node 48469 with contact force = 1.571E-02
- Nodes coming into contact. 51 nodes including node 46725 with penetration = 2.513E-06
----------------------------------------------------------------------------------------------------------

...
[snip]
...

Diagnostics: ---------------------------------------------------------------------------------------------
- Nodes losing contact. 2 nodes including node 47345 with contact force = 7.700E-06
- Nodes coming into contact. 1 nodes including node 46745 with penetration = 5.053E-07
----------------------------------------------------------------------------------------------------------

Diagnostics: ---------------------------------------------------------------------------------------------
- Nodes losing contact. 1 nodes including node 46872 with contact force = 9.335E-06
----------------------------------------------------------------------------------------------------------

Diagnostics:
______________________________________________________________________________________________________
** SUCCESSFUL CONVERGENCE ANALYSIS **

© ADINA R&D, Inc., 2016 8


Failed Convergence
Diagnostics:
______________________________________________________________________________________________________
** FAILED CONVERGENCE ANALYSIS **

Trend: Iterations are neither converging nor diverging

Symptoms:
- Contactor nodes still changing status between stick and slip
- Big increase in out-of-balance forces at iteration 1
- Ratio of factorized diagonals very high for all iterations in this time step
- Integration points still changing status between elastic and plastic

Most probable causes and remedies:

- Friction nonlinearity
* Increase 'Friction v-Function Parameter (EPST)'
* Apply loads more gradually
Add/increase 'Contact Compliance'

- Plasticity nonlinearity
* Apply loads more gradually, or use smaller time step
* Toggle 'Plasticity Type' algorithm
* Toggle 'Line Search' feature

NOTE: Before making any of the suggested modifications, make sure they are suitable for this model.
Check the program documentation for more details.

NOTE: Before making any of the suggested modifications,


make sure they are suitable for this model.
Check the program documentation for more details.

© ADINA R&D, Inc., 2016 9


NOTE: Before making any of the suggested modifications,
make sure they are suitable for this model.
Check the program documentation for more details.

… i.e., carefully consider the consequences of the


automated suggestions!

 Enabling detailed diagnostics


• Selecting and assigning contact surfaces
• Choosing the correct elements/mesh
• Judicious use of contact compliance
• Suppressing oscillations
• Properly handling initial penetrations
• (Temporary) problem simplification

© ADINA R&D, Inc., 2016 10


Assisting Convergence

• Use prescribed displacements


• Gradually increase loads until contact is well-
established
• If iteration trend converging, increase MAX-ITER
• Using line search, ATS, Low-speed dynamics, etc.

The basic idea is to stabilize the model and


increase the “radius of convergence.”

© ADINA R&D, Inc., 2016 11


Contact Surface Selection
Given two surfaces how do we choose the contactor
and the target? Some basic considerations:
• Inter-penetration condition
• Dependent degrees of freedom
• Relative stiffness
Guidelines:
 Stiffer surface should be the target
 Rigid surface should be the target
 More coarsely meshed surface should be the target
 The contactor surface should not have any
dependent translational DOF (slave nodes).
 When there is prescribed displacement on any part
of the contact surface, it must be a target surface
© ADINA R&D, Inc., 2016 12
Contact Surface Selection
Recall that target nodes can penetrate
contactor surface segments
Contact
surface 1

Contact
surface 2
Good Selection Poor Selection
Contactor Target
no penetrations surface penetrations surface
Target Contactor
surface surface
The more finely meshed surface
should be the contactor surface.

© ADINA R&D, Inc., 2016 13


Finding a Target Segment
Contactor nodes should always
find a target surface segment

• Convergence is difficult when


contact forces abruptly change
• Contactor nodes may “fall off”
target in some situations
• Extend the target surface
• Round the corner of the target
segment definition.
• Use the contact surface
extension parameter

Contact Surface Extension Factor CS-EXTENSION

© ADINA R&D, Inc., 2016 14


Finding the Correct Target Segment
Contactor nodes can sometimes find
the wrong target surface segment

• Can occur in self-contact a) b)

Thickness > 2 x segment length

Thickness < 2 x segment length


• Can also occur when the target Wrong
side
surface is defined on both sides of a OK found!
thin 3D-solid body.
• Possible when the thickness of the
body is less than twice the contact
segment length.
• In this case, the target segments on
the opposite side of the body are
found Single target surface defined
• Large distortions, inverted elements around thin green body

Workaround: define a different target surface on the other side of the


thin body, refine target mesh, or switch contact pair assignments.

© ADINA R&D, Inc., 2016 15


Establishing Contact
• It is difficult for the Newton method to converge when contactor
nodes reverse status during consecutive iterations.
• The more contactor nodes, the more iterations are required.
• Usually, it is possible to help convergence by cutting back the
time step so that only a few nodes are changing status.
• But in some situations, many contactor nodes may change state
during a step, and cutting back the step size will not help:

t t + Δt

In this case, ATS will not help; need to


establish contact in some other way

© ADINA R&D, Inc., 2016 16


Contact Normals
CONTACTSURFACE ORIENTATION

• Specifies the orientation of the target segment normal


• Definition is only important for target contact surfaces in
single-sided contact
• For double-sided contact, the contact normal does not need
to be specified. Direction of the contact surface is
automatically determined by assuming that all contactor
nodes are initially out of contact.
• Always be sure to check the normal orientations for shells
and rigid surfaces

© ADINA R&D, Inc., 2016 17


Continuous Normals
The program “pushes” the contactor node in
the direction of the contact normal.
CGROUP CONTINUOUS-NORMAL

CONTINUOUS-NORMAL=NO CONTINUOUS-NORMAL=YES

© ADINA R&D, Inc., 2016 18


Continuous Normals
Use care when modeling a
contact surface with sharp
corners. Recall that, by default,
CONTINUOUS-NORMAL=YES.

To ensure that the normal vectors


for segments near the corners are
computed correctly when
modeling target surfaces with
sharp corners:
• use discontinuous normal
vectors, or
• use small segments near the
corners
*Continuous normals are not
recommended for double-sided contact

© ADINA R&D, Inc., 2016 19


Element Selection
First-order meshes are allowed to contact second-order meshes.

• First order (linear) elements recommended for the contactor surface.


– Equivalent nodal area is always positive for linear elements
– Consistent nodal contact forces are always positive
• Convergence can be difficult when using second-order elements on
contactor surfaces
• Second-order elements can be useful for curved target segments
• Avoid 10- and 11-node tets, and 20-node brick elements
– Tensile contact forces can develop even when the underlying contact
tractions are compressive!
– If this occurs, the node is considered out of contact, unless tension
consistent forces are allowed (TENSION-CONSISTENT=YES).
– If a higher-order contactor mesh is required, recommend using 27-node
bricks. These elements satisfy the patch test in contact.

© ADINA R&D, Inc., 2016 20


Spotty Contact
Convergence is difficult
when we have spotty
contact:

• Fewer nodes are in


contact with a large force
at each contactor node
• Nodes in contact can
abruptly change status
during the equilibrium
iterations (giving a large
CFORCE norm)

It is better to have many nodes in contact with small forces at each contactor node,
than to have few nodes in contact with large forces at each contactor node.

One way to do achieve this is to use contact compliance.

© ADINA R&D, Inc., 2016 21


Contact Compliance
Diagnostics:
______________________________________________________________________________________________________
** FAILED CONVERGENCE ANALYSIS **

Trend: Iterations are neither converging nor diverging

Symptoms:
- Contactor nodes still changing status between contact and gap

Most probable causes and remedies:

- Contact nonlinearity
* Apply loads more gradually
* Add/increase 'Contact Compliance'
* Switch to 'Small Displacement Contact'

• Artificially softens the contact surfaces


• Helps prevent “spotty contact” and status reversals
• Prevents singularities resulting from over constraining
(e.g., symmetric contact)
• Helps reduce oscillations in impact problems

© ADINA R&D, Inc., 2016 22


Contact Compliance
CFACTOR1 = 0.0 CFACTOR1 > 0.0
• Compliance factor
CFACTOR1 softens contact
surfaces
• Allows some penetration,
which is proportional to the
contact forces
• Less accurate, but
smoother contact tractions/
better convergence A is the equivalent
nodal area

By default, no contact-compliance is used in the constraint-function method.


This corresponds to a rigid contact surface (no penetration is allowed).

© ADINA R&D, Inc., 2016 23


Contact Compliance
CFACTOR1 = 0.0 CFACTOR1 > 0.0

Always check the contact


penetrations and ensure
that they are not excessive!

© ADINA R&D, Inc., 2016 24


Element Selection

CFACTOR1 = 0.0 CFACTOR1 > 0.0

For 10- and 11-node tets, and 20-node brick elements, the equivalent nodal
contact area is zero or negative at the corner nodes.

In this case, contact compliance results in less accurate stresses and contact
tractions. COMPLIANCE NOT RECOMMENDED WITH THESE ELEMENTS!

© ADINA R&D, Inc., 2016 25


Energy Storage
• Compliant contact
behaves like a spring
between the contact
surfaces
• Springs can store energy:
the energy stored by
compliant contact can be
computed and output by
ADINA’s energy view
feature
• Monitor this energy to
assess if the contact
compliance factor is too
high.

© ADINA R&D, Inc., 2016 26


Energy Storage
• Compliant contact
behaves like a spring
between the contact
surfaces
• Springs can store energy:
the energy stored by
compliant contact can be
computed and output by
ADINA’s energy view
feature
• Monitor this energy to
assess if the contact
compliance factor is too
high.

© ADINA R&D, Inc., 2016 27


Effects of Contact Penetrations
• Dynamic impact of 2 elastic
bars
• Bottom bar fixed at an end
• Top bar approaching with Initial
an initial velocity Contact
motion
pair
Perfectly elastic problem;
ideally, kinetic energy and
elastic energy will always
sum to 100% of total.

By computing the energy


stored by contact Fixed end
compliance, we can
assess the accuracy of the Interested in demonstrating the effects
contact solution of contact compliance by comparing the
effects of parameterizing CFACTOR1
© ADINA R&D, Inc., 2016 28
CFACTOR1=0.0

No penetration

© ADINA R&D, Inc., 2016 29


Should be zero
energy stored as
a result of zero
penetrations

Expected
contact
duration

© ADINA R&D, Inc., 2016 30


CFACTOR1>0.0

} Penetration

© ADINA R&D, Inc., 2016 31


Should be zero
energy stored as
a result of zero
penetrations

Expected
contact
duration

© ADINA R&D, Inc., 2016 32


Should be zero
energy stored as
a result of zero
penetrations

Expected
contact
duration

© ADINA R&D, Inc., 2016 33


Should be zero
energy stored as
a result of zero
penetrations

Expected
contact
duration

© ADINA R&D, Inc., 2016 34


Should be zero
energy stored as
a result of zero
penetrations

Expected
contact
duration

© ADINA R&D, Inc., 2016 35


Should be zero
energy stored as
a result of zero
penetrations

Expected
contact
duration

© ADINA R&D, Inc., 2016 36


Large amount of energy
stored by penetrations!

Longer
contact
duration
(inaccurate)

© ADINA R&D, Inc., 2016 37


Remarks
Contact compliance is a powerful tool, but it must be used carefully! Do not
sacrifice accuracy for easier convergence without considering the
consequences.

The compliance factor must be set by trial & error and is model-dependent
• Begin with CFACTOR1=1.0e-5
• Check penetrations and energy storage (penetrations CFACTOR1)
• Adjust CFACTOR1 accordingly

Impact is highly sensitive to contact penetration. Compliance artificially


softens the contact surface, which:
• artificially reduces the impact forces by energy stored in contact surfaces
• artificially increases the impact durations

Use the smallest compliance factor that converges to an accurate result.


Always check penetrations!

© ADINA R&D, Inc., 2016 38


Initial Penetrations
CGROUP INITIAL-PENETRATION
By default, if there is a penetration between a contact node and a target
segment in the first solution step, ADINA attempts to eliminate the
penetration (INITIAL-PENETRATION=ALLOWED)

ADINA can eliminate the penetration at the first step or over a user-specified
interval using the TIMEPENETRATION parameter. This feature is useful if the
initial penetrations are too large to be eliminated in a single time step.

The program can also calculate initial penetrations at the start of solution and
ignore them in future steps (INITIAL-PENETRATION=DISCARDED):
• If the initial geometric gap is positive or zero (no penetration): The contact
gap is set equal to the geometric gap.
• If the initial geometric gap is negative (penetration): This initial penetration
is recorded and the contact gap is set equal to the geometric gap minus
the initial penetration.

© ADINA R&D, Inc., 2016 39


Checking for Initial Penetrations
CGROUP INITIAL-PENETRATION=PRINT
NODE OVERLAP TARGET TARGET TARGET SEGMENT NODES (UP TO 4)
LABEL SURFACE SEGMENT N1 N2 N3 N4

110844 0.168374E-02 2 21725 34413 25570 28255 34413


110857 0.303387E-02 2 21725 34413 25570 28255 34413

CONTACT GROUP 1 HAS 2 INITIALLY PENETRATING CONTACTOR NODES

*** WARNING NO. A3 ***


Contact group 1 has 2 initially penetrating contactor nodes
Maximum penetration: 0.303387E-02

Decide if penetrations are physically


meaningful or due to discretization

It is also possible to visually inspect


for initial penetrations
For very large or complex models:
• Use a large compliance factor
(allow for large penetrations)
• Run for a single time step
• Render overlap bandplot Visual Inspection

© ADINA R&D, Inc., 2016 40


Eliminating Initial Penetrations

CGROUP TIMEPENETRATION

Initial penetrations can be eliminated


immediately or over some finite interval of time

© ADINA R&D, Inc., 2016 41


Ignoring (Discarding)
INITIAL-PENETRATION=DISCARDED

Useful when these penetrations


are just a product of the finite
element discretization – as in the
case of concentric cylinders

NOTE: The initial penetrations


calculated at each contactor node
are not valid for large rotations.
Ignoring initial penetrations alone
will not permit modelling of
bearings.

Always check initial penetrations


before ignoring them

© ADINA R&D, Inc., 2016 42


Bearings

Second-order
elements on target
(curved segments)

For bearings, it is better to use a finer mesh or use second-


order elements on target (target segments will be curved).

© ADINA R&D, Inc., 2016 43


Gap Override
INITIAL-PENETRATION=GAP-OVERRIDE

Gaps and penetrations from finite element mesh replaced by a user-specified value.
Useful for shrink-fits and contact involving curved meshes.

NOTE: this will override the gaps and penetrations for all contactor nodes in the group!

© ADINA R&D, Inc., 2016 44


Friction
Diagnostics: ---------------------------------------------------------------------------------------------
- Nodes losing contact. 1 nodes including node 721 with contact force = 1.439E-01
- Nodes coming into contact. 7 nodes including node 261 with penetration = 1.881E-04
- Nodes switching from stick to slip. 8 nodes including node 2862
with contact force increase = 1.482E+00,
slip velocity = 7.099E-01
- Nodes switching from slip to stick. 15 nodes including node 260
with contact force = 4.768E+02
----------------------------------------------------------------------------------------------------------

Diagnostics:
______________________________________________________________________________________________________
** FAILED CONVERGENCE ANALYSIS **

Trend: Iterations are neither converging nor diverging

Symptoms:
- Contactor nodes still changing status between contact and gap
- Contactor nodes still changing status between stick and slip

Most probable causes and remedies:

- Contact nonlinearity
* Apply loads more gradually
* Add/increase 'Contact Compliance'
* Switch to 'Small Displacement Contact'

- Friction nonlinearity
* Increase 'Friction v-Function Parameter (EPST)'
* Apply loads more gradually
Add/increase 'Contact Compliance

© ADINA R&D, Inc., 2016 45


Friction
Time is not a “dummy” variable in (quasi)static
analyses involving frictional contact!
Ft Ft
Fn  Fn
-T T
u u

Ideal friction Friction model, T specified

Sticking velocity EPST (Frictional Contact v-Function Parameter):


maximum velocity for “sticking” conditions

Sliding occurs even when Ft /Fn < . “Stiction” can’t be modelled.

© ADINA R&D, Inc., 2016 46


Friction
Time is not a “dummy” variable in (quasi)static
analyses involving frictional contact!

Parameter EPST has units of length per time.

Frictional behavior depends on the problem’s time and length


scales. Thus, parameter EPST is problem specific and will affect
predicted slipping/sticking behavior.

 Greater EPST, smoother behavior (better convergence)


 Smaller EPST, more accurate behavior

But what is the best way to select a value for EPST to avoid
numerical difficulties while preserving accuracy?

© ADINA R&D, Inc., 2016 47


Selecting EPST
• There is no general value of T that will work in all cases. It must
be set by the user for each specific problem.
• The user should estimate the sliding velocity. T should be set to
one or two orders of magnitude smaller than that velocity.
• In static analyses, divide the sliding distance by the increment of
time (e.g., use time steps of 1.0).

Diagnostics:
______________________________________________________________________________________________________
** SUCCESSFUL CONVERGENCE ANALYSIS **

- Maximum sliding contact velocity = 2.393E+01. Maximum at node = 11272

Default value of T is 1.0e-3.


T = 0.0 is internally replaced by 1.0e-3

© ADINA R&D, Inc., 2016 48


Friction Delay
Parameter FRIC-DELAY can be used to allow friction to start
acting one step after contact is established
• Significantly improves convergence
• Removes nonlinearities associated with friction until after
contact is established
• Useful for problems with initial penetrations: 1st step will be
frictionless

Not necessarily less accurate:


• A node’s relative sliding velocity cannot be uniquely determined
at the first time step
• In reality, contact begins at some time between t and t + Δt
• With friction delay, contact begins at t + Δt rather than time t

© ADINA R&D, Inc., 2016 49


Oscillations
Diagnostics: -------------------------------------------------
- Oscillating solution, which repeats every 3 iterations.
--------------------------------------------------------------

• The same few contactor nodes


(perhaps a single node)
oscillate between multiple
target segments.
• Often times, the oscillations
are between two acceptable
solutions.
• ADINA can suppress these
oscillations by associating the
contactor node(s) with one of
its targets segments after a
certain number of iterations.
By default, CONTACT-CONTROL NSUPPRESS=0.
To activate suppression control, set NSUPPRESS
to some positive integer value.

© ADINA R&D, Inc., 2016 50


Using NSUPPRESS
This feature is only effective when
given the chance to work properly.
MAX-ITER=30
Basic NSUPPRESS usage guidelines:
NSUPPRESS=20
• Should not totally prevent contactor
nodes from associating with target
segments.
• Should stop unwanted oscillatory
behavior by iteration MAX-ITER – 5
to allow for convergence.

say, MAX-ITER=30
then: 15 < NSUPPRESS < MAX-ITER – 5
Will permit “real” incremental contactor node movement and
suppress unwanted oscillations well before MAX-ITER.

© ADINA R&D, Inc., 2016 51


Using NSUPPRESS

Contactor Node
Contactor node

Target
Face 1
segment 2
Target
segment 1
Face 2

Contactor node oscillating between


target segments 1 and 2

In this case, switching target and contactor surfaces


was of no help (symmetric contact was required).

© ADINA R&D, Inc., 2016 52


Improperly Supported Bodies

• In some problems (e.g., forming) there are unsuppressed rigid


body modes before contact is established.
• Apply prescribed displacements to establish contact
• Stabilize the model using:
– Stiffness matrix stabilization
– Low-Speed Dynamics
– Contact damping
• Prevent large motions as surfaces come into contact
– Use limiting maximum incremental displacements feature
– Use small initial steps until contact is established

© ADINA R&D, Inc., 2016 53


Contact Damping
CGROUP DAMPING

• Adds normal and tangential viscous dampers to all contactor


and target nodes
• Damping can act only in the first time step (DAMPING=INITIAL)
or remain constant through out the analysis
(DAMPING=CONSTANT)
• If it remains constant, the energy associated with damping is
written in .out file
• Will damp out low frequency (rigid body) modes
• Caution: can also damp out higher frequencies which may be of
interest in dynamic analyses

© ADINA R&D, Inc., 2016 54


Temporary Simplifications
Reducing complexity improves “signal to noise ratio” in .out file and
facilitates solving one convergence issue at a time.
• Material nonlinearities
– Extend plasticity curves (prevent rupture)
– Specify a positive strain hardening modulus
• Loading
– Specify deformation independent loading
– Apply prescribed displacements to establish contact
– Apply loads more gradually
• Establish contact in stages
– Stage 1: eliminate penetrations (without friction) over finite time
– Stage 2: apply service loads

© ADINA R&D, Inc., 2016 55


Other Strategies

• Add boundary conditions


• Use stiffness stabilization
• Use Low-Speed Dynamics
• Use damping (contact or Rayleigh)
• Limit maximum displacements
• Use line search/toggle plasticity algorithm
• Use prescribed displacements instead of forces where
possible
• Run an implicit dynamic analysis using the Bathe method

© ADINA R&D, Inc., 2016 56

You might also like