Você está na página 1de 494

Contact

Contact analyses with ANSYS


AN

Erke Wang
CADFEM GmbH
Germany

-1-
Contact

Table of contents
Day 1

Chapter 1: Introduction to contact analyses


Chapter 2: Creation of contact pairs
Chapter 3: Different contact results
Chapter 4: Basics of nonlinear analyses

Day2

Chapter 5: The contact algorithm


Chapter 6: Contact stiffnesses
Chapter 7: Penetration tolerance
Chapter 8: Behaviour of the contact surface
Chapter 9: Aspects considering contact meshing
Chapter 10: Classification of contact and target surface
Chapter 11: Further features of the contact elements

-2-
Contact

Table of contents
Day 3

Chapter 12: Further features of the target elements


Chapter 13: Rigid body motion
Chapter 14: Let us talk about convergence
Chapter 15: Suggestions from our experience
Chapter 16: MPC applications
Chapter 17: Recent developments and outlook
Chapter 18: Further models

-3-
Contact

Note
Contact problems are highly nonlinear and need a profound understanding of the technical
problem to solve. This seminar is based on the long term experience of CADFEM solving
complex nonlinear problems.
This seminar notes were developed
- to guide you through the
Methods employed to solve contact problems,
- to familiarize you with the
Tools ANSYS offers, to work efficiently
- and to provide
Tips to share our experience with you.
Experience in FE-analysis always grows in discussions and ideas you do share with us.
Therefore we want to thank all customers for the fruitful discussions we had throughout the
last years.

-4-
Contact

Seminar notes of CAD-FEM GmbH

© CAD-FEM GmbH 2006


These seminar notes are in copyright. All rights reserved. No part of this publication may be reproduced, stored in a retrieval
system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording or otherwise, without the
prior permission of CAD-FEM GmbH.

-5-
Contact

Chapter 1
Introduction to contact analyses

-6-
Contact

Contents
1. Why do we need a contact analysis
2. What is contact
3. Types of contact
4. The development of contact technology
5. Modern ANSYS contact and target elements
6. Contact applications

-7-
Contact
1. Why do we need a contact analysis
P Contact
°
TOL=0.02 P 60 region

-30 30 Problem

=
Deformation

=
Stress

Engineering contact simulation


-8-
Contact
P

TOL=0.1 Contact
< 60°
region

-30 30
Problem

=
Deformation

=
Stress

Engineering contact simulation


-9-
Contact

2. What is contact
Since the real world is not made just of one part
nowadays almost in every system contact is present.

Since we have contact, the global stiffness behaviour


of complex structures can be simulated easily.

- 10 -
Contact

2. What is contact
If a system consists of different parts and these parts touch each other
during the deformation process we call it a contact problem:

Contact is open Contact is closed Contact is closed


(sticking) (sliding)

- 11 -
Contact

2. What is contact
Typical characteristics of two bodies, which are in contact:

• The penetration is zero.


• Normal pressure and tangential forces can be transferred.
• Normal tensile forces cannot be transferred.

Further aspect:

• Complete contact zone is not know from the beginning.

- 12 -
Contact

2. What is contact
Contact mostly is a very strong structural nonlinearity:

F Contact Contact
open closed

Note:
The jump in the stiffness can be tricky to handle in a numerical manner.

- 13 -
Contact

3. Types of contact
Considering the finite element analysis we distinguish:

deformable-deformable contact rigid-deformable contact

self contact

- 14 -
Contact

3. Types of contact
Considering the finite element model we distinguish:

Surface to Surface Solid/Solid

Point to Surface Beam/Shell

Point to Point Beam/Beam


Line to Line – BEAM

Line to Surface Shell/Shell

Line to Line - EDGE Shell/Shell

- 15 -
Contact

4. The development of contact technology


Node-to-node contact is available for more than 20 years. I
2D/3D small sliding problems with similar mesh between contact parts

Node-to-surface contact has been developed during the last 15 years. K


2D/3D contact, large sliding, dissimilar mesh between contact parts
I J

Surface-to-surface contact is the newest development.


2D/3D contact, large sliding, dissimilar mesh between contact parts

- 16 -
Contact

4. The development of contact technology


Goals in contact development:

• Supporting quadratic mid-side node elements


– Accurate description of curved surfaces possible
– Applications for dissimilar mesh problems possible
faceted non-faceted

• Easy-to-use and intelligent default parameters

• Effective solution for complex real world problems

• Fully automated contact analyses

- 17 -
Contact

5. Modern ANSYS contact and target elements


The modern way of modelling a contact problem consists in modelling
one part as the TARGET part and the other part as the CONTACT part:

Target
Contact

We call this a contact pair (later more…)

- 18 -
Contact

Modern ANSYS contact and target elements


Overview about elements discussed in this course:

- 19 -
Contact

Modern ANSYS contact and target elements


Example Elements for 2d Elements for 3d
TARGET169 TARGET170
CONTA171 (linear) CONTA173 (linear)
Surface to Surface Solid/Solid CONTA172 (quadr.) CONTA174 (quadr.)

TARGET169 TARGET170
CONTA175 CONTA175
Point to Surface Beam/Shell

Point to Point CONTA178 CONTA178


Line to Line CONTA176 CONTA176
Beam/Beam

Line to Surface TARGET170


CONTA175
Shell/Shell

Line to Line (Edge) not yet avaiable

Shell/Shell

- 20 -
Contact

6. Contact applications
Self contact in rubber parts:

- 21 -
Contact

6. Contact applications
Interference fit:

Compression only boundary conditions:

- 22 -
Contact

6. Contact applications
General contact:

- 23 -
Contact

Chapter 2
Creation of contact pairs

- 24 -
Contact

Contents
1. The contact pair concept
2. Different ways of modelling a contact pair
3. Working with ANSYS APDL commands
4. Working with the ANSYS Contact Manager
5. Working with Workbench

- 25 -
Contact

1. The contact pair concept


A Contact pair consists of contact and target elements overlying the contacting
surfaces. Elements of a contact pair have the same real constants.

FE model

Contact Pairs

- 26 -
Contact

The contact pair concept


Contact types: Two contact regions

- Can vary in the same model


- Different real constants have to be used
for different contact region

+
Real,2 Real,1
flexible-flexible rigid-flexible

- 27 -
Contact

The contact pair concept


• In ANSYS the contact region is defined via CONTACT and TARGET elements.
• TARGET (Master) Surface + CONTACT (Slave) Surface

– Target Surface - Geometry


– Contact Surface - Geometry and definition of contact parameters
- Contact identification points are located on this surface
- Contact status is examined on this surface (also further results…)

Target Surface Contact Surface

Target Surface
Contact Surface

- 28 -
Contact

2. Different way of modelling a contact pair


ANSYS APDL Commands ANSYS Contact Manager ANSYS Workbench

asel,s,...
nsla,s,1
type,...
mat,...
real,...
esurf,...

+ for batch job creation + good survey of all


defined contacts
+ job documentation
+ simultaneous change of
- useful for small number of
contact properties in
contact regions in model
multiple contact regions + state of the art, when
- APDL-knowledge required using CAD-models
- manual contact definition

- 29 -
Contact

3. Working with ANSYS APDL commands


• The target and contact surface must be defined separately
- using different element types (contact and target)
- using the same real constant Contact elements
FE-Model: Contact definitions: TYPE=2
REAL=2

Target elements
Element norm TYPE=3
REAL=2

Element norms between the contact TYPE=2: CONTAC171


and target must point to each other! TYPE=3: TARGET169

- 30 -
Contact
Working with ANSYS APDL commands
• Element normals
- If 2D or 3D solid elements are the underlying element types, the element normals
of the contact and target elements point always to each other after the generation.

- If BEAM or SHELL elements are used the outward direction is not unique.

contact normal

TOP(1)

BOTTOM(1) The contact should be


target normal
between the
BOTTOM(1) and
TOP(2) contact normal contact normal
TOP(2)
BOTTOM(2)
target normal target normal

- 31 -
Contact

Working with ANSYS APDL commands


• Element normals
- If the element normals of contact and target elements are wrong they can
be corrected using the command ESURF,, REVE

contact contact
ESURF,,REVE
target target

- 32 -
Contact

Working with ANSYS APDL commands


Deformable-deformable contact (in general):

The most important command to generate contact and target elements is ESURF.
Before using this meshing command the typical element attributes
TYPE, MAT, REAL have to be set.

Working with ESURF requires that the nodes of the external regions are selected.

ESURF will than generate automatically contact and target elements so that their
element normal point outwards which is necessary so that contact and target can
find each other. You con check this with /PSYMB,ESYS,ON

Take care when you work with contact between beams and shells.
Check the direction of the contact and target normals and work with ESURF,,REVE

- 33 -
Contact

Working with ANSYS APDL commands


Deformable-deformable contact (in general):

!!! Element-definition !!! !!! Target !!! !!! Element-definition !!! !!! Target !!!
et,10,169 lsel,... et,10,170 asel,...
et,20,171/172 nsll,s,1 et,20,173/174 nsla,s,1
keyopt,10,... type,10 keyopt,10,... type,10
keyopt,20,... mat,50 keyopt,20,... mat,50
real,100 real,100
!!! Material-definition !!! esurf !!! Materialdefinition !!! esurf
mp,mu,50,... mp,mu,50,...
!!! Contact !!! !!! Contact !!!
same
!!! Real-constants !!! lsel,... !!! Real-Konstanten !!! asel,...
r,100,... nsll,s,1 r,100,... nsla,s,1
type,20 type,20
mat,50 mat,50
real,100 real,100
esurf esurf

2D 3D

- 34 -
Contact

Working with ANSYS APDL commands


Example: exa01.inp
2D Line-to-Line: Contact171/172
– Application: contact between 2D solids

- 35 -
Contact

Working with ANSYS APDL commands


Example: exa01.inp
finish rect,0,20,0,1 !!! Target !!! /solu /post1
/clear rect,10,30,2,3 lsel,s,line,,5 nsel,s,loc,x,0 /dscale,1,1
/prep7 esize,0.5 nsll,s,1 nsel,a,loc,x,30 plnsol,u,sum,2,1
et,1,182 amesh,all type,2 d,all,all,0
et,2,169 real,2 nsel,s,loc,y,3
et,3,171 esurf sf,all,press,20
mp,ex,1,200000
mp,prxy,1,0.3 !!! Contact !!! nlgeom,on
r,2,,,0.001 lsel,s,line,,3 nsubst,10,100,1
nsll,s,1 outres,all,all
type,3 allsel
real,2 solve
esurf

- 36 -
Contact

Working with ANSYS APDL commands


Example: exa02.inp
3D Point-to-Surface: Contact175
– Application: contact between 3D beams or shells/solids

CONTA175 is available for point-to-surface contact.


CONTA173 with KEYOPT(4)=1 could also be used in this case (line-to-surface).
- 37 -
Contact

Working with ANSYS APDL commands


Example: exa02.inp
finish k,1,0,5,0 !!! Target !!! /solu /post1
/clear k,2,100,5,0 asel,s,area,,1 dk,1,all /dscale,1,1
/prep7 l,1,2,20 nsla,s,1 dk,4,all plnsol,u,sum,2,1
et,1,4 wprot,0,-90,0 type,3 dk,5,all
et,2,181 rect,50,150,-5,5 real,3 fk,2,fy,-5e3
et,3,170 esurf
et,4,175 lmesh,1 nlgeom,on
mp,ex,1,200000 type,2 !!! Contact !!! nsubst,10,100,1
mp,prxy,1,0.3 real,2 lsel,s,line,,1 outres,all,all
r,1,10,100,100,2,2 esize,10 nsll,s,1 allsel
r,2,1,1,1,1 amesh,all type,4 solve
r,3,,,0.001 real,3
esurf

- 38 -
Contact

Working with ANSYS APDL commands


Example: exa03.inp
3D Line-to-Surface: Contact173
– Application: contact between 3D shells/solids

CONTA173 with KEYOPT(4)=1 can be used for line-to-surface contact.


CONTA175 could also be used in this case (point-to-surface).
- 39 -
Contact

Working with ANSYS APDL commands


Example: exa03.inp
finish rect,0,100,-10,10 !!! Target !!! /solu /post1
/clear wpof,0,0,5 asel,s,area,,1 nsel,s,loc,x,0 /dscale,1,1
/prep7 rect,50,150,-5,5 nsla,s,1 nsel,a,loc,x,150 plnsol,u,sum
et,1,181 lesize,2,,,1 type,2 d,all,all,0
et,2,170 mshkey,1 real,2 lsel,s,line,,8
et,3,173 esize,10 esurf nsll,s,1
keyopt,3,4,1 amesh,all f,all,fz,-40
mp,ex,1,200000 !!! Contact !!!
mp,prxy,1,0.3 asel,s,area,,2 nlgeom,on
r,1,1,1,1,1 nsla,s,1 nsubst,10,100,1
r,2,,,0.0001 type,3 outres,all,all
real,2 allsel
esurf,,bottom solve

- 40 -
Contact

Working with ANSYS APDL commands


Example: exa04.inp
3D Line-to-Surface: Contact175
– Application: contact between 3D shells/solids

- 41 -
Contact

Working with ANSYS APDL commands


Example: exa04.inp
finish rect,0,100,-10,10 !!! Target !!! /solu /post1
/clear wpof,0,0,5 asel,s,area,,1 nsel,s,loc,x,0 /dscale,1,1
/prep7 rect,50,150,-5,5 nsla,s,1 nsel,a,loc,x,150 plnsol,u,sum
et,1,181 lesize,2,,,1 type,2 d,all,all,0
et,2,170 mshkey,1 real,2 lsel,s,line,,8
et,3,175 esize,10 esurf nsll,s,1
mp,ex,1,200000 amesh,all f,all,fz,-40
mp,prxy,1,0.3 !!! Contact !!!

r,1,1,1,1,1 lsel,s,line,,8 nlgeom,on


r,2,,,0.001 nsll,s,1 nsubst,10,100,1
type,3 outres,all,all
real,2 allsel
esurf solve

- 42 -
Contact

Working with ANSYS APDL commands


Example: exa05.inp
3D Line-to-Surface: Contact175
– Application: contact between 3D shells/solids

Contact

- 43 -
Contact

Working with ANSYS APDL commands


Example: exa05.inp
finish rect,0,3,0,5 !!! Target !!! /solu /post1
/clear rect,3,6,0,5 asel,s,area,,7 nsel,s,loc,x,0 /dscale,1,1
/prep7 nummrg,kp nsla,s,1 nsel,a,loc,x,12 plnsol,u,sum
et,1,181 lgen,2,2,2,,,,-2 type,2 d,all,all,0
et,2,170 a,5,8,3,2 real,2 nsel,s,loc,z,0
et,3,175 agen,2,1,3,1,6 esurf esln,s,1
mp,ex,1,200000 nummrg,kp sfe,all,1,pres,,-100
mp,prxy,1,0.3 wpof,0,0,-2.5 !!! Contact !!!
r,1,0.2,0.2,0.2,0.2, rect,0,12,-1,6 lsel,s,line,,8,18,10 nlgeom,on
r,2,,,0.01 esize,0.5 nsll,s,1 nsubst,10,100,1
amesh,all type,3 outres,all,all
real,2 allsel
esurf solve

- 44 -
Contact

Working with ANSYS APDL commands


Example: exa06.inp
3D Line-to-Line: Contact176
– Application: contact between 3D beams/beams

- 45 -
Contact

Working with ANSYS APDL commands


Example: exa06.inp
finish csys,1 wpof,0,0,-.8 wpof,0,0,30.6 /solu
/clear k,1,10 rect,-12,12,-12,12 wprot,,180 ksel,s,kp,,1
kgen,30,1,1,,0,90,1 rect,-12,12,-12,12 nslk,s,1
/prep7 l,1,2 d,all,ux,,,,,uy,uz
et,1,188 *rep,29,1,1 type,3 type,3 ksel,s,kp,,30
et,2,176 real,3 real,4 nslk,s,1
et,3,170 type,1 esize,,1 esize,,1 d,all,ux,,,,,uy,rotx,rotz
keyopt,2,10,2 mat,1 amesh,1 amesh,2 allsel
real,1 asel,s,area,,2
r,2,1,1,1,,,-5 esize,,10 lsel,s,,,1,4,1,1 lsel,s,,,26,29,1,1 nsla,s,1
r,3,0,1,1,,,-5 lmesh,all esel,r,enam,,188 esel,r,enam,,188 d,all,uz,-15
rmod,3,10,0.5 type,2 type,2 allsel
r,4,0,1,1,,,-5 !!! Contact !!! real,3 real,4
rmod,4,10,0.5 type,2 esurf esurf nlgeom,on
real,2 nsub,20,1000,20
mp,ex,1,200000 esurf outres,all,all
solve
sectype,1,beam,csolid,,0 !!! Target !!!
secdata,1 type,3 /post1
real,2 /dscale,1,1
esurf /eshape,on
plnsol,u,sum

- 46 -
Contact

Working with ANSYS APDL commands


Example: exa07.inp
3D Line-to-Line: Contact176
– Application: contact between 3D beams/beams

- 47 -
Contact

Working with ANSYS APDL commands


Example: exa07.inp
finish k,1,.5,.5 n,1000,0,0,30 /solu /post1
/clear k,2,-.5,.5 type,4 nsel,s,loc,z,0 /dscale,1,1
k,3,-.5,-.5 d,all,all,0 /eshape,1
/prep7 k,4,.5,-.5 e,1000,2 allsel plnsol,u,sum
et,1,188 kgen,2,1,4,1,0,0,30,10 e,1000,33 d,1000,ux,,,,,uy
et,2,176 l,1,11 e,1000,64 d,1000,rotz,3*3.14
keyopt,2,10,2 *rep,4,1,1 e,1000,95
et,3,170 esize,,30 nlgeom,on
et,4,184,1,1 lmesh,all nsub,20,1000,20
outres,all,all
r,2,.5,.5,.01 !!! Contact !!! solve
type,2
mp,ex,1,2e5 real,2
tb,biso,1 esurf
tbdata,1,200,10000
!!! Target !!!
sectype,1,beam,csolid type,3
secdate,0.5 real,2
esurf

- 48 -
Contact

Working with ANSYS APDL commands


Example: exa08.inp
3D Line-to-Line: Contact176
– Application: contact between 3D beams/beams

- 49 -
Contact

Working with ANSYS APDL commands


Example: exa08.inp
finish k,1,10,10, !!! Contact !!! /solu /post1
/clear k,2,10,10,10 lsel,s,line,,2 nsel,s,loc,z,0 /dscale,1,1
k,3,10.2,10,0 nslls,s,1 d,all,all /eshape,1
/prep7 k,4,10.2,10,10 type,3 nsel,s,loc,z,10 plnsol,u,sum
et,1,189 real,3 d,all,all,0
et,2,170 l,1,2 esurf nsel,s,loc,x,10
et,3,176 l,3,4 nsel,r,loc,z,5
keyopt,3,10,2 !!! Target !!! d,all,ux,-2
mp,ex,1,30000000 lesi,1,,,20 lsel,s,line,,1 allsel
mp,nuxy,1,0.3 lesi,2,,,30 nsll,s,1
r,3,-0.32,0.12,1 type,2 nlgeom,on
sectype,1,beam,ctube secn,1 real,3 nsub,20,1000,20
secdata,0.32,0.36 lmesh,1 esurf outres,all,all
sectype,2,beam,csolid solve
secdata,0.12 secn,2
lmesh,2

- 50 -
Contact

Working with ANSYS APDL commands


Deformable-deformable contact (point-to-point):

This is probably the most easiest way. Both nodes where contact has to
be established are just connected with a single CONTA178 element.

Here a classical CONTACT/TARGET CONCEPT is not necessary.

The only command needed is: EINTF or E

- 51 -
Contact

Working with ANSYS APDL commands


Deformable-deformable contact (point-to-point):

A little disadvantage of this contact concept is that you must take care
during the meshing process.

A point-to-point contact is generated directly between the nodes.

However for very local contact problems, this method still works.

- 52 -
Contact

Working with ANSYS APDL commands


Example: exa09.inp
3D Point-to-Point: Contact178
– Application: contact between 3D beams

Contact178

- 53 -
Contact

Working with ANSYS APDL commands


Example: exa09.inp
finish k,1,0,0,0 !!! Contact !!! /solu /post1
/clear k,2,100,0,0 type,2 dk,all,all,0 /dscale,1,1
/prep7 l,1,2,20 real,2 f,53,fy,-1e4 /eshape,1
et,1,188 k,3,50,10,-50 e,12,53 plnsol,u,sum
et,2,178 k,4,50,10,50 nlgeom,on
keyopt,2,4,1 l,3,4,20 nsubst,10,100,1
mp,ex,1,200000 k,10,50,-1 outres,all,all
r,2 latt,,,,,10 solve
sectype,1,beam,i lmesh,all
secdata,10,10,10,2,2,2

- 54 -
Contact

Working with ANSYS APDL commands


Rigid-deformable contact:

The most easiest way of generating a rigid target element is to mesh the exterior
areas or lines just with target elements using AMESH or LMESH, i.e. there is no
underlying structural element in use.

Care must be taken here:

- The so generated target element is automatically fixed in space.


- If forces are applied here, nothing will happen.
- Applying a non-zero displacement constraint on all nodes the rigid target will move.

- 55 -
Contact

Working with ANSYS APDL commands


Rigid-deformable contact:

!!! Element-definition !!! !!! Target (rigid) !!! !!! Element-definition !!! !!! Target (rigid) !!!
et,10,169 lsel,... et,10,170 asel,...
et,20,171/172 type,10 et,20,173/174 type,10
keyopt,10,... mat,50 keyopt,10,... mat,50
keyopt,20,... real,100 keyopt,20,... real,100
lmesh,all amesh,all
!!! Material-definition !!! !!! Material-definition !!!
mp,mu,50,... mp,mu,50,...

!!! Real-constants !!! !!! Contact !!! !!! Real-constants !!! !!! Contact !!!
r,100,... lsel,... r,100,... asel,...
nsll,s,1 nsla,s,1
type,20 type,20
mat,50 mat,50
real,100 real,100
esurf esurf

2D 3D

- 56 -
Contact

Working with ANSYS APDL commands


Rigid-deformable contact:

The other way of defining a rigid target-element is to work with so called pilot nodes.
A pilot node can be somewhere in space and is used to describe the movement of
the rigid target part.

- Displacements and rotations can be applied on the pilot node.

- The pilot node is generated with the same attributes of the target element and will
be generated with TSHAPE,PILOT followed by E, node number.

- Also forces can be applied on the pilot node.

- 57 -
Contact

Working with ANSYS APDL commands


Rigid-deformable contact:

!!! Element-definition !!! !!! Target (rigid) !!! !!! Element-definition !!! !!! Target (rigid) !!!
et,10,169 lsel,... et,10,170 asel,...
et,20,171/172 type,10 et,20,173/174 type,10
keyopt,10,... mat,50 keyopt,10,... mat,50
keyopt,20,... real,100 keyopt,20,... real,100
lmesh,all amesh,all
!!! Material-definition !!! tshap,pilo !!! Material-definition !!! tshap,pilo
mp,mu,50,... e,... mp,mu,50,... e,...

!!! Real-constants !!! !!! Contact !!! !!! Real-constants !!! !!! Contact !!!
r,100,... lsel,... r,100,... asel,...
nsll,s,1 nsla,s,1
type,20 type,20
mat,50 mat,50
real,100 real,100
esurf esurf

2D 3D

- 58 -
Contact

Working with ANSYS APDL commands


Example: exa10.inp
Rigid-deformable contact – displacement/force driven

U or F

Note that in this example there


is no gap between the rigid line
and the body

- 59 -
Contact

Working with ANSYS APDL commands


Example: exa10.inp
finish rect,0,10,0,10 !!! Target!!! !!! Contact !!! /solu /post1
/clear k,5,-1,10,0 lsel,s,line,,5 lsel,s,line,,3 nsel,s,loc,y,0 /dscale,1,1
/prep7 k,6,11,10,0 type,2 nsll,s,1 d,all,all,0 plnsol,u,y,2,1
et,1,183 l,5,6 mat,2 type,3 allsel
et,2,169 esize,1.0 real,2 mat,2 d,1000,ux
et,3,172 amesh,all lesize,5,,,1 real,2 d,1000,rotz
r,2,,,100.0 lmesh,all esurf
mp,ex,1,210000 n,1000,5,15,0 d,1000,uy,-2.0
mp,prxy,1,0.3 tshape,pilo !f,1000,fy,-425300
e,1000
nsubst,10,100,1
Node 1000
outres,all,all
solve
Line 5
Line 3

- 60 -
Contact

Working with ANSYS APDL commands


Rigid-deformable contact:

Note that certain pre-defined rigid bodies are available via TSHAP:

- 61 -
Contact

Working with ANSYS APDL commands


Rigid-deformable contact:

The following geometries are available using TSHAPE:

- 62 -
Contact

Working with ANSYS APDL commands


Example: exa11.inp
3D Surface-to-Surface: Contact173/174
– Application: contact between 3D solids

- 63 -
Contact

Working with ANSYS APDL commands


Example: exa11.inp
finish block,0,1,0,1,0,1 !!! Target !!! /solu /post1
/clear esize,0.2 n,10000,-1,1.5,0.5 nsel,s,loc,y,0 /dscale,1,1
/prep7 vmesh,all n,10001,2,1.5,0.5 d,all,all,0 plnsol,u,sum,2,1
et,1,186 type,2 allsel
et,2,170 real,2 d,10000,uy,-0.2
et,3,174 tshap,cylin d,10001,uy,-0.2
mp,ex,1,200000 e,10000,10001
mp,prxy,1,0.3 solve
r,2,0.5 !!! Contact !!!
asel,s,area,,4
nsla,s,1
type,3
real,2
esurf

- 64 -
Contact

Working with ANSYS APDL commands


Example: exa12.inp
Self contact problem:
– Application: rubber ring under pressure load

Can you imagine how self contact has to be defined ???

- 65 -
Contact

Working with ANSYS APDL commands


Example: exa12.inp
finish local,11,1,0,0,0,0,0,0,.3 !!! Target !!! /solu /post1
/clear k,1,10,0,0 lsel,s,line,,5,8,1 dk,1,ux,0 /dscale,1,1
/prep7 kgen,4,1,1,,,90 nsll,s,1 dk,3,ux,0 plnsol,u,sum,2,1
et,1,182 a,1,2,3,4 type,2 dk,13,all,on
et,2,169 k,11,5,0,0 real,2 dk,11,all,on
et,3,171 kgen,4,11,11,,,90,,1 esurf sfl,5,pres,-0.5
r,2,,,0.1 a,11,12,13,14 sfl,6,pres,-0.5
tb,hype,1,1,2,moon asba,1,2 !!! Contact !!!
tbdata,,1,0.5,0.001 esize,0.5 lsel,s,line,,5,8,1 nlgeom,on
amesh,all nsll,s,1 nsubst,10,100,1
eplot type,3 outres,all,all
real,2 allsel
esurf solve

- 66 -
Contact

Working with ANSYS APDL commands


Example: exa13.inp
Contact between shells:

Use this exercise to define contact and target normal correctly.

- 67 -
Contact

Working with ANSYS APDL commands


Example: exa13.inp
finish rect,0,1,0,1 !!! Target !!! !!! Target !!! /solu /post1
/clear wpof,0,0,0.05 asel,s,area,,1 asel,s,area,,2 nsel,s,loc,x,0 /dscale,1,1
/prep7 rect,0,1,0,1 nsla,s,1 nsla,s,1 d,all,all,0 /view,1,0.20,-0.95,0.20
et,1,181 wpof,0,0,0.05 type,2 type,2 nsel,s,loc,x,1 /ang,1,-45
et,2,170 rect,0,1,0,1 real,2 real,3 nsel,r,loc,z,0.1 plnsol,u,sum
et,3,173 esize,0.1 esurf esurf f,all,fz,-5
r,1,0.1,0.1,0.1,0.1 amesh,all allsel
r,2,,,0.1 eplot !!! Contact !!! !!! Contact !!!
r,3,,,0.1 asel,s,area,,2 asel,s,area,,3 nsubst,10,100,1
mp,ex,1,200000 nsla,s,1 nsla,s,1 outres,all,all
mp,prxy,1,0.3 type,3 type,3 solve
real,2 real,3
esurf,,bottom esurf,,bottom

- 68 -
Contact

4. Working with the ANSYS Contact Manager


• If you are not familiar with APDL, the contact manager in ANSYS is a
very useful tool to generate a contact pair.

Geometry FE-Model

- 69 -
Contact

Working with the ANSYS Contact Manager


Generating the contact pair using the contact manager:

PreprocessoràModelingàCreateàContact Pair

From the contact manager start the contact wizzard

- 70 -
Contact

Working with the ANSYS Contact Manager

Target
C
B
D

Contact

F H
G

- 71 -
Contact

Working with the ANSYS Contact Manager

Press OPTIONAL SETTINGS…

That brings up a massive menu with EIGHT TABS where you can give the contact
pair certain options. What you set here are finally KEYOPTIONS and REAL CONSTANTS.

- 72 -
Contact

Working with the ANSYS Contact Manager

Keep in mind:
The contact direction is defined via contact normal.
For 2D and 3D solid elements, it is always automatically detected by program.
For beams and shells, you should verify the contact normals.

- 73 -
Contact

Working with the ANSYS Contact Manager

Contact property Plot the contact pair List elements


Switch contact/target
Delete contact pair Show contact normals

Flip normals on elements


normal after flip

normal before flip

- 74 -
Contact

Working with the ANSYS Contact Manager


Highlighted contact pair(s) will be operated on.
Hide/Show contact pair listing Multiple selection using keyboard SHIFT or CTRL keys.

Listing of contact pairs Scroll bars to navigate contact pair listing

- 75 -
Contact

Working with the ANSYS Contact Manager

Flip normals icon

Flip normals on elements Flip normals on areas (or lines)

By selecting and holding down the flip


normals icon, a fly-out menu is displayed.

- 76 -
Contact

Working with the ANSYS Contact Manager


First, highlight the contact pair(s) to be deleted Next, select the “Delete Contact Pairs” Icon

The deleted contact pair will be


removed from the contact pair listing

- 77 -
Contact

Working with the ANSYS Contact Manager


First, highlight the contact pair(s) to be displayed.
Option 1: The contact pair normals can
be displayed by selecting the
Next, select the “Plot Contact Pairs” Icon. “Show Contact Pair Normals” icon.

Option 2: Display contact & target elements,


contact elements only, or target elements only
by selecting from the drop-down list.
Option 3: Display contact pair elements only (i.e. no model context) OR
display contact pair elements and translucent non-contact pair elements
simultaneously (i.e. translucent model) by selecting from the drop-down list.

- 78 -
Contact

Working with the ANSYS Contact Manager


First, highlight the contact pair(s) to be listed.

Next, select the “List Contact Pair Elements” Icon.

- 79 -
Contact

Working with the ANSYS Contact Manager


CNCHECK-Functionality:

Pressing long the button, four functions are available.

- 80 -
Contact

Working with the ANSYS Contact Manager


CNCHECK-Functionality:

– CNCHECK, DETAIL: evaluate contact pair specifications


– CNCHECK, ADJUST: move contact nodes to target to close
gap or reduce penetration
– CNCHECK, POST: view contact initial status before solving
– CNCHECK, RESET: reset contact default settings

- 81 -
Contact

Working with the ANSYS Contact Manager


CNCHECK-Functionality:

We will come back to the CNCHECK-Functionality later on in this course.

You can already note at this stage:

Rigid body motions are never good for in a contact problem. Little gaps can
lead to rigid body motions and with CNCHECK you can easily identify them...

- 82 -
Contact

Working with the ANSYS Contact Manager


Example: exa14.inp
CNCHECK-Functionality
The before mentioned different CNCHECK-Features are show here
with a very simple contact problem:

- 83 -
Contact

Working with the ANSYS Contact Manager


Example: exa14.inp
CNCHECK,DEFAULT

- 84 -
Contact

Working with the ANSYS Contact Manager


Example: exa14.inp
CNCHECK,ADJUST

Before CNCHECK,ADJUST After CNCHECK,ADJUST

Note: - Just for „nodal contact detction points“


- Just if ICONT is larger than the gap
- ICONT is a real constant of the contact elements discussed later
- Should be used for bonded contact

- 85 -
Contact

Working with the ANSYS Contact Manager


Example: exa14.inp
CNCHECK,POST

PLESOL,CONT,STAT PLESOL,CONT,GAP

- 86 -
Contact

Working with the ANSYS Contact Manager


Example: exa14.inp
CNCHECK,RESET

- 87 -
Contact

Working with the ANSYS Contact Manager


Example: exa14.inp
finish mp,ex,1,210000 !!! Target !!! *if,flag,eq,0,then *if,flag,eq,2,then
/clear mp,prxy,1,0.3 lsel,s,line,,3 cncheck,default cncheck,post
flag=2 nsll,s,1 *endif /post1
/prep7 rect,0,100,0,10 type,2 plesol,cont,stat
et,1,182 cyl4,80,31,20,180,,360 real,2 *if,flag,eq,1,then plesol,cont,gap
et,2,169 esize,2.5 esurf cncheck,adjust *endif
et,3,171 mshkey,0 eplot
*if,flag,eq,1,then amesh,all !!! Contact !!! *endif *if,flag,eq,3,then
keyopt,3,4,1 lsel,s,line,,5 /prep7
*endif nsll,s,1 cncheck,reset
r,2,0,0,0.01,0,,0 type,3 *endif
*if,flag,eq,1,then real,2
r,2,0,0,0.01,0,-2.0,0 esurf
*endif
allsel

- 88 -
Contact

Working with the ANSYS Contact Manager


Example: exa15.inp
Contact: def./def. / rig./def. Tube – Material 2
Die - Rigid
• Read input from... exa15.inp
• Switch on the colours of the materials
• Plot elements
• Check the rest of the model

• Start contact manager

Flenge - Material 1
Fitting – Material 3

- 89 -
Contact

Working with the ANSYS Contact Manager


Example: exa15.inp
Target
Contact: def./def. / rig./def.

• Pick contact wizard to define contact pair 1


Contact
à Select contact and target lines as depicted
à Define friction coefficient 0.1
à No optional settings
Contact Pair 1

• Pick contact wizard to define contact Pair 2


Contact Pair 2
à Select contact and target lines as depicted
Contact Pair 3
à Define friction coefficient 0.1
à No optional settings

- 90 -
Contact

Working with the ANSYS Contact Manager


Example: exa15.inp
Contact: def./def. / rig./def.

• Pick contact wizard to define contact pair 3


à For target take option rigid – only unmeshed lines are selectable
à Define friction coefficient 0.1
à No optional settings
à Contact only can be found, if element
target normals are directed opposite
to contact element normals

à Check normals

- 91 -
Contact

Working with the ANSYS Contact Manager


Example: exa15.inp
Contact: def./def. / rig./def.

• Load step1 – Remove initial penetration


• Solution – Analysis Type – Sol‘n Controls
Activate large displacement and set all substeps to one
• Define Loads – Apply – Structural – Displacement – On Lines à UY=0
• Select – Everything
• Solve – Current Load Step

- 92 -
Contact

Working with the ANSYS Contact Manager


Example: exa15.inp
Contact: def./def. / rig./def.

• Load step 2 – close rigid die


• Define Loads – Apply - Structural – Displacement – On Keypoint à UX=-1.5
• Solution – Analysis Type – Sol‘n Controls – Substeps to 20/100/10
• Solve current load step

• Load step 3 – open rigid die


• Define Loads – Apply - Structural – Displacement – On Keypoint à UX=-0.5
• Solve current Load Step

- 93 -
Contact

Working with the ANSYS Contact Manager


Example: exa15auto.inp
finish mp,ex,1,200000 /input,'exa15mesh','inp'
/clear mp,prxy,1,0.3
/prep7 tb,biso,1,1,2 /solu
et,1,182 tbdata,,625,8500 time,1 time,2 time,3

keyopt,1,3,1 mp,ex,2,3000 lsel,s,line,,130 dk,200,ux,-1.5 dk,200,ux,-0.5

et,2,169 mp,prxy,2,0.4 lsel,a,line,,136 dk,201,ux,-1.5 dk,201,ux,-0.5

et,3,172 tb,biso,2,1,2 nsll,s,1


et,4,169 tbdata,,35,500 d,all,uy,0 nsubst,20,100,10 nsubst,20,100,2

et,5,172 mp,ex,3,70000 solve solve

r,1 mp,prxy,3,0.3 nlgeom,on


r,2 tb,biso,3,1,2 nsubst,1,1,1
r,3 tbdata,,135,4500 outres,all,all
r,4 mp,mu,4,0.1 allsel
solve

- 94 -
Contact

Working with the ANSYS Contact Manager


Example: exa16.inp
Contact: self contact

• Read input from... exa16.inp

self-contact
• Switch on the colours of the materials self-contact
• Plot elements

self-contact
self-contact
• Check the rest of the model

• Start contact manager

- 95 -
Contact

Working with the ANSYS Contact Manager


Example: exa16.inp
Contact: self contact

Define the following contact pairs:

Contact Pairs

- 96 -
Contact

Working with the ANSYS Contact Manager


Example: exa16.inp
Contact: self contact

• Solution à Analysis Type à Sol‘n Controls


- Set large displacements and the following substeps (20/100/10)
- Write out results for all substeps
• Define loads à Apply à Structural à Displacements à On Lines à All DOF
On Areas à UX=-40, UY=0
• Select – Everything
• Solve Current Load Step
• Postprocessor – Contact Manager

- 97 -
Contact

Working with the ANSYS Contact Manager


Example: exa16auto.inp
finish /input,'exa16mesh','inp' /solu /post1
/clear lsel,s,line,,12,49,37,1 /dscale,1,1
/prep7 d,all,all,0 plnsol,u,sum,2,1
et,1,182 asel,s,area,,1 andata,0.5, ,2,1,13,1,0,1
et,2,169 nsla,s,1
et,3,171 d,all,uy,0
d,all,ux,-40
tb,hyper,1,,2,moon allsel
tbdata,1,0.1,0.0001
nlgeom,on
nsubst,20,100,1
outres,all,all
solve

- 98 -
Contact

Working with the ANSYS Contact Manager


Advantages of the contact manager:
• Overlook - if you have a large number of contact pairs in your model
• Efficiency - if you want to change contact properties for multiple contact pairs simultaneously
• Postprocessor: - contact manager displays contact results in translucent model

- 99 -
Contact

5. Working with Workbench


• If you work with Workbench the contact generation can be done automatically:

One contact region is found automatically in this case...


Default settings for automatic contact generation

- 100 -
Contact

Working with Workbench


• If contact is not found automatically you can try to enlarge the searching domain:

Default settings for


automatic contact
generation
No contact region is
found automatically.
Enlarge the
TOLERANCE
(by slider or value)

Create automatic
contact using the
right mouse button

- 101 -
Contact

Working with Workbench


• You see also which type of contact is generated by default automatically:

- We recommend to work with the default settings.


- Switching on all contact types would make the
structural behaviour much to stiff.
- You might change the settings if you specify
contact manually in cases where you exactly
know, what you do.

- 102 -
Contact

Working with Workbench


• About the meaning of “Same Body Grouping”:

- Same Body Grouping: YES à

- 103 -
Contact

Working with Workbench


• About the meaning of “Same Body Grouping”:

- Same Body Grouping: NO à

- 104 -
Contact

Working with Workbench


• About the meaning of “Transparency”:

YES/NO à

- 105 -
Contact

Working with Workbench


• You can also generate a contact region manually:
- As in the ANSYS contact wizzard you can
Pick the CONTACT and TARGET part.

- 106 -
Contact

Working with Workbench


• Nice to know: Rename based on geometry

- 107 -
Contact

Working with Workbench


Example: exa17.dsdb
Workbench contact problem: exa18.dsdb

• Load file: exa17.dsdb or exa18.dsdb


• Check if the contact is generated
• Apply boundary conditions as indicated
• Apply contact properties as indicated
• Run the analysis with any result you like

- 108 -
Contact

Chapter 3
Different contact results

- 109 -
Contact

Contents
1. How modern contact elements work numerically
2. Contact results in ANSYS and Workbench

- 110 -
Contact

1. How modern contact elements work numerically


• Contact identification is based on integration points:

-More points to determine the contact - No negative forces for mid-side nodes

Integration points - used to determine contact results - will be called contact points

- 111 -
Contact

How modern contact elements work numerically


• Unique penetration measurement - normal to the integration point:
Nodes usually do belong to more than one
element but the integration points belong to
only one element, so the determination of
the penetration is unique.

• Contact point will not “slide away” from the contact surface:
Integration points

- 112 -
Contact

How modern contact elements work numerically


Further characteristics of surface-to-surface contact:

• The definition is very easy


• Contact with superelements is possible
• Available for all types of analyses (à Multiphysics)

• Support small and large deformation analyses

- 113 -
Contact

2. Contact results in ANSYS and Workbench


ANSYS: Every item can be displayed by: PLESOL,… or PLNSOL,…

Remember:
..,cont,stat
..,cont,pene The element solution shows
..,cont,pres the non averaged results,
..,cont,sfric
..,cont,stot coming directly from the
..,cont,slid integration points.
..,cont,gap
..,cont,cnos
The nodal solution shows
the averaged solution.

Work always first with the


element solution.

- 114 -
Contact

Contact results in ANSYS and Workbench


Contact status

For the contact status the following four results are possible:

contact open contact closed Near Contact


Sliding
Contact status Sticking

Note:
The status STICKING is just possible if a friction model has been chosen.

Watch the contact status in a non converging analysis to check if a


contact algorithm has even worked somewhere…

- 115 -
Contact

Contact results in ANSYS and Workbench


Contact penetration

This might sound a bit tricky.


Usually in real life you would say: Penetration can never occur !!!

Penetration
This is right, but numerically penetration will sometimes occur, depending
on which contact algorithm you have chosen (later more…)

Note:
It should be your aim to minimize the numerical penetration in the analysis.

- 116 -
Contact

Contact results in ANSYS and Workbench


Contact pressure

According to its mechanical definition, the pressure is always


perpendicular to the surface, so in curved surfaces it changes its direction.

Contact friction stress Contact pressure

If a friction model is specified you might ask for the contact friction stress.

Contact friction stress

The summation of both mentioned stresses is the Contact total stress.

- 117 -
Contact

Contact results in ANSYS and Workbench


Contact sliding distance

Note:
Numerically sliding can occur in contact status sliding AND sticking.

Sliding distance
Contact gap distance

Measures the gap normal from the contact surface.

Contact gap

- 118 -
Contact

Contact results in ANSYS and Workbench


Workbench: Every item is shown in the nodal solution

All contact results are available in the contact tool, which is inserted here
below the solution item...

- 119 -
Contact

Contact results in ANSYS and Workbench


Workbench: Something what is not directly available in ANSYS

You can ask for the contact reaction forces (and moments)

With the right mouse


button further results
can be listed...

- 120 -
Contact

Contact results in ANSYS and Workbench


Workbench: Further details of the „Contact Tool“

If you click directly on „Contact Tool“ in the details window two methods are available.

Geometry Selection:
-click on the geometry item of interest

Worksheet
-obtain a tabular listing of the results

- 121 -
Contact

Contact results in ANSYS and Workbench


Workbench: Further details of the „Contact Tool“

Worksheet:
-lists contact pairs depending on
their structural behaviour (later more...)

-displays contact results at different


contact sides (later more...)

- 122 -
Contact

Chapter 4
Basics of nonlinear analyses

- 123 -
Contact

Contents
1. Introduction
2. Numerical solution of a nonlinear problem
3. Setting convergence criteria
4. Studying the convergence behaviour
5. Nonlinear diagnostics

- 124 -
Contact

1. Introduction
If the relation between the force and the displacement is not linear any more we talk
about nonlinear structural behaviour. The stiffness of the system is not constant.

F KT
F
K

u
u
Linear behaviour Nonlinear behaviour
Ku=F KT(u) u = F

In nonlinear systems the stiffness depends on the current state of deformation u.


We also call this a tangential stiffness KT.

- 125 -
Contact

Introduction
Example of linear behaviour:

K F=2000
F
F=1000
u
Ku = F

Force-deflection relation is linear

- 126 -
Contact

Introduction
Example of nonlinear behaviour:

K F=1000 F=2000
F
u
Ku = F

Force-deflection relation is nonlinear

- 127 -
Contact

Introduction
Example: exa19.inp
The status nonlinearity in contact problems (linear geometry, linear material)

F, u
1. 3.

2. F
2.
3.
1.
u

- 128 -
Contact

Introduction
Example: exa19.inp
finish k,1,95,-10,0 allsel /solu /post1 *dim,last,table,101,1
/clear k,2,100,-10,0 type,2 dk,1,all,0 /dscale,1,1 last(1,0)=0
/prep7 l,1,2,1 real,2 dk,2,all,0 /eshape,1 last(1,1)=0
et,1,3 k,3,0,0,0 gcgen,cont,targ dk,3,all,0 plnsol,u,sum set,first
et,2,48 k,4,50,0,0 fk,4,fy,-20000 *do,i,2,101
mp,ex,1,200000 k,5,100,0,0 *get,force,active,0,set,time
mp,prxy,1,0.3 l,3,4,10 time,20000 *get,disp,node,5,u,y
r,1,10,100,2 l,4,5,10 nlgeom,on last(i,0)=force
r,2,1000000 lmes,all nsub,100,100,100 last(i,1)=(-1.0)*disp
lsel,s,line,,1 outres,all,all set,next
nsll,s,1 solve *enddo
cm,targ,node *vplot,last(0,1),last(0,0)
ksel,s,kp,,5
nslk,s,1
cm,cont,node

- 129 -
Contact

Introduction
In summary there are three reasons for nonlinear structural behaviour:

Complex material behaviour Large deflections Contact between two bodies


σ F F

ε u u

- 130 -
Contact

2. Numerical solution of a nonlinear problem


The solution of a linear structural problem is obtained by solving one linear system of
equation. For a given load level the deformation field is found in one step.

In case of a nonlinear structural problem we obtain the solution curve point


by point by solving many linear systems of equation in series.

F For the solution of a nonlinear problem


4 we work with the Newton-Raphson-Method.
3
2

- 131 -
Contact

Numerical solution of a nonlinear problem


Scheme of the Newton-Raphson-Method:

[KT1]
[KT]{∆u} = {Fext} - {Fint}
Fext
3 4
[KT] = Tangential stiffness matrix Fint1 2
{∆u} = Vector of displacement increments
{Fext} = Vector of external loads 1
{Fint} = Vector of internal loads

∆u 1 u

The numerical effort to solve the above problem is four times the effort of solving the
same system linear, since here four systems of linear equations have been solved.
We recognize four solution points along the curve.

- 132 -
Contact

Numerical solution of a nonlinear problem


The aim of the Newton-Raphson-Method is to minimize the imbalance forces
{Fext} - {Fint}, strictly speaking they should be identical to zero. If the method
converges we have found the solution.

Unfortunately there are some situations where convergence is not archieved:

F F

ustart u ustartu
DIVERGENCE CONVERGENCE

- 133 -
Contact

Numerical solution of a nonlinear problem


We can improve the convergence behaviour using two strategies:

F1

ustart u

- Work with load increments (substeps)

- Work with special algorithms (line search)

- 134 -
Contact

Numerical solution of a nonlinear problem


Let us talk about convergence problems:

Since the nonlinear force-deflection-curve is not known to the user, it is in general not
known with which method convergence is always ensured.

Experience is necessary with which method convergence problems can be solved.

You might need several runs to find a converged solution.

Using more substeps is often a good idea to improve the convergence behavior.
Unfortunately the computation time increases as well.

The difficult thing in solving a contact problem is to deal with the sudden
jump in the stiffness. This is a singular point, where the stiffness is not
unique and a derivative for the Newton-Method can not be found.

- 135 -
Contact

3. Setting convergence criteria


Let us repeat: The Newton-Raphson-Method solves [KT]{∆u} = {Fext} - {Fint} in every
equilibrium iteration to obtain a displacement increment until the imbalance forces
{Fext} - {Fint} are acceptable small.
We call the imbalance forces RESIDUUM: {R} = {Fext} - {Fint}

Explanation in 1D
F

Criterion
(small number)

We found equilibrium if
{R} < Criterion
u

- 136 -
Contact

Setting convergence criteria


In 3D we work with vectors. In ANSYS the convergence criterion is formulated in
a mathematical sense as follows
||{R}|| < (εR Rref)

||{R}|| is the vector norm of the residuum. A vector norm makes from a vector a scalar
number. In ANSYS the following vector norms are available:
- L1 norm: ||{R}||1 = Σ|Ri|
- L2 norm: ||{R}||2 = (ΣR2i)1/2 à (Default)
- Infinite Norm: ||{R}||∞ = max(|Ri|)

• (εR Rref) is called the criterion and εR is denoted as tolerance factor, for example
εR = 0.001, if the criterion should be 0.1 % of the reference value.

- 137 -
Contact

Setting convergence criteria


• The reference value Rref is computed in ANSYS problem dependent automatically.
It is for example possible to take the L2 norm of the internal forces for the
convergence check:
||{R}||2 < 0.001 * ||{Fint}||2

• However it is also possible to prescribe a value for Rref directly.


• Furthermore the user can prescribe a minimum reference value, which make sence
if Rref is obtained numerically to be zero.
• Rref = ||{Fint}||2 = 0 happens if certain rigid body motion occurs in the system.
If the criterion would be zero you would never find a converged configuration. In
these case the minimum reference value Rref is been taken.
• Using small εR the computation is done more exactly
• Using large εR the computation is done more faster but not that precisely.

- 138 -
Contact

Setting convergence criteria


• If you do not specify a value for the minimum reference value, you will get a warning:

• The minimum reference value (MINREF) is a safety feature that prevents your
solution from trying to converge to a zero tolerance.
– If free-body (unconstrained) systems or mechanisms have no external forces,
the criterion (eR * ||{F}||2) will be zero.
• If the criterion is zero, the solution will never converge!
– In such cases, the program redefines the criterion to be (eR * MINREF)
– The default value of MINREF is 0.01. If this is not reasonable for your model,
specify a more realistic value.

- 139 -
Contact

Setting convergence criteria


ANSYS:

(Menu „Solution Controls“)


CNVTOL,...

Working with REPLACE


allows to specify new
convergence criteria.
All other criteria will
be overwritten.

- 140 -
Contact

Setting convergence criteria


• You can for example work with a convergence criterion based on the displacement
increments of an equilibrium iteration.
||{∆∆u}|| < (εu uref)
• ∆∆u à Displacement increment of an equilibrium iteration
• uref à Total displacement u if SOLC,OFF
• uref à Displacement ∆u in the substep if SOLC,ON (default)

• In addition you should specify a force convergence criterion.

- 141 -
Contact

Setting convergence criteria


• Note: The displacement convergence criterion is not an absolute criterion to ensure
that after converging you have in fact found a state of equilibrium, since it does not
check the imbalance forces.
• Only the force convergence criterion checks whether the imbalance forces are
small enough to speak of an equilibrium state.

Next you see, that a very small increment


∆∆u does not necessarily mean that
the structure is in equilibrium.
Residuum

The solution for sure has to be


Large

checked for correctness. The better


solution for sure is .
Load

∆∆u

- 142 -
Contact

Setting convergence criteria


Workbench: Use commands to specify CNVTOL

- 143 -
Contact

Setting convergence criteria


Example: exa20.inp
Convergence criteria – check the equilibrium

Work with default convergence criterion:

CNVTOL,F,,0.005,2
CNVTOL,U,,0.05,2

Work with user specified convergence criterion:

CNVTOL,F,1,0.0001,2
CNVTOL,U,1,0.001,2

- 144 -
Contact

Setting convergence criteria


Example: exa20.inp
finish rectn,0,100,0,10 /solu /post1
/clear esize,2.5 nsel,s,loc,x,0 plnsol,u,sum,2,1
/prep7 amesh,all d,all,all,0 prrsol
et,1,182 nsel,s,loc,x,100
mp,ex,1,210000 f,all,fy,-1000
mp,prxy,1,0.3 allsel

nlgeom,on
time,1000
nsub,5,20,1
outres,all,all

cnvtol,f,,0.005,2
cnvtol,u,,0.05,2
!cnvtol,f,1,0.0001,2
!cnvtol,u,1,0.001,2
!cnvtol,u,,0.5,2
solve

- 145 -
Contact

Setting convergence criteria


Convergence criteria guidelines:

• Default convergence criteria work well most of the time.


– You should rarely need to change the criteria.

• Do not use a “loose” criterion to eliminate convergence difficulties.


– This simply allows the solution to “converge” to an incorrect result.

• Tightening the criterion requires more equilibrium iterations.

- 146 -
Contact

4. Studying the convergence behaviour


• In ANSYS you observe the convergence behaviour in the graphics window:

• The convergence history can also be seen in the output window.

- 147 -
Contact

Studying the convergence behaviour


• In Workbench you have to insert the solution information under the solution item:

Choose between:

Line Search:
àconvergence help
Time:
àtracking parameter

- 148 -
Contact

Chapter 5
The contact algorithm

- 149 -
Contact

Contents
1. Program Handling
2. Introduction
3. Penalty Method
4. Lagrange Multipliers Method
5. Augmented Lagrange Method
6. MPC Algorithm
7. Discussion

- 150 -
Contact

1. Program Handling
Different contact algorithms can be set in following ways: Using KEYOPTIONS

0
1
2
3
4

Possible values
for KEYOPT(2)

- 151 -
Contact

Program Handling
Different contact algorithms can be set in following ways: Working interactively

KEYOPT(2)=0
KEYOPT(2)=1
KEYOPT(2)=2
KEYOPT(2)=3

- 152 -
Contact

Program Handling
Note:
In Workbench you cannot activate the Lagrange Method interactively.
However, you can use it working with commands. It is KEYOPT(2)=4.

- 153 -
Contact

2. Introduction
A contact problem can be divided into two parts:

1. Find the surfaces being in contact

2. Solve the restricted potential energy problem


(Build the corresponding stiffness matrix)
(Determine stresses and strains) K1
K1 KContact

K2
K2
- 154 -
Contact

Introduction
SOLVE
F
1
Iteration 1 Check Contact g = 0
0
Status
F 1

K1
Iteration n+1 Assemble Stiffness KC
Matrix
K2

Solve Matrix
u ; g ; R

No
converged? Yes

- 155 -
Contact

Introduction
In a mathematical sense the solution of a contact problem is equivalent to the solution
of a boundary value problem. The FE-Method is developed based on the so-called weak
form of equilibrium (variational form of equilibrium). To obtain equilibrium the
total potential energy in a mechanical system has to be minimized:

Π (u ) = U − W → Min.

Equilibrium
U = ∫ cu du
u

Potential Π
0
Force
W = ∫ F du
u

u1 0 ∂Π
=0
u2 ∂u
F
F
F Displacement u
u1 u2

- 156 -
Contact

Introduction
A contact problem is a restricted potential problem:

Potential Π
∂Π
u1
Force

∂u
= ?
u2
F
F
F Displacement u
u1 uContact
Methods to solve restricted potential problems:
• Penalty method
• Lagrange multipliers method
• Augmented Lagrange method (ANSYS default)

- 157 -
Contact

Introduction
Formulation of the contact condition:
t1 u1, u2 displacements
t2 B1, B2 body
u1
B1 i1 B2 t1 , t2 stress vector
i2 n surface normal
u2
g0 distance at time = 0

Contact condition: g = g (u) = (u 2 − u1 ) ⋅ n + g 0 ≥ 0


Contact force: λ = t1 ⋅ n = − t 2 ⋅ n ≤ 0
Note: 1. If g < 0 the contact condition is not satisfied and g = 0 must hold.
2. We sum up all contact conditions g1 ……. g m in the vector g.

- 158 -
Contact

3. Penalty Method
Let us consider a simple structure with elastic material law and conservative forces.
The structure is in equilibrium if its total potential energy has its minimum:

1 T
∏ = ∏ (u) = u K u − Fu
2
In the case of contact, the above functional should be minimized considering that
the contact condition is still satisfied:

∏ = ∏ (u) à min.
g = GT u + g 0 = 0
The penalty method is one possibility to solve this problem.

Note: The penalty method will not satisfy the contact condition exactly.

- 159 -
Contact

Penalty Method
In case of contact we add a penalty term to the functional to formulate a minimization
problem without boundary conditions:

∏ε = ∏ε ( u) = ∏ ( u) + ε ⋅ P ( u)
We choose the following quadratic form for the penalty functional:
1 T
P ( u) = g g
2
Equilibrium is obtained of the first variation of the above functional vanishes:

∂ ∏ε ∂ ∏ ∂gT
= +ε g=0
∂u ∂u ∂u

- 160 -
Contact

Penalty Method
If we build the needed derivatives
1 T ∂∏
∏ = u K u − Fu à = Ku − F
2 ∂u
∂g
g = GT u + g 0 à = GT
∂u
we find
∂ ∏ε
= Ku − F + ε GGT u = 0
∂u
and finally
[K + ε GGT ]u = F
Note: ε turns out to be the contact stiffness. For small ε the contact condition
is not satisfied well, for large ε the contact condition is satisfied well.

- 161 -
Contact

Penalty Method
We illustrate the penalty method with a little example: Two springs with single force P1
F1
F2 Contact condition:
k k
 u1 
g = u2 − u1 = G u = [ − 1 1]   ≥ 0
T

u2 
u1
u2

k 0  F1   u1 
K=  F=  u= 
0 k   F2   u2 

k 0  − 1 k + ε 0 
K + ε GG T =  + ε
   − =  0 k + ε 
[ 1 1]
0 k   1  

- 162 -
Contact

Penalty Method
It follows:
 u1  1 k + ε ε   F1 
u  = k (k + 2ε )  ε
T −1
u = [K + ε GG ] F à
k + ε   F2 
 2 
Let us consider two limit cases:

 F1  k F1 k
 u1   k 
εà 0 u  =  F  No contact effect
 2  2  F2
k u1 ≠ u 2

k F1 k
 F1 + F2 
 u1   2k 
εà∞ u  =  F + F  Exact solution F2
 2  1 2

 2k  u1 = u2
- 163 -
Contact

Penalty Method
How is the penalty method working?
If penetration between two bodies occurs, a spring in generated between the two
bodies to minimize the penetration.
- The spring stiffness is the penalty parameter ε often called contact stiffness
- The spring is just active in case of little penetrations.

- 164 -
Contact

Penalty Method
Using the penalty method will always result in remaining penetrations, we have
mentioned before that the contact condition is never satisfied exactly.

It can only be the aim to minimize the penetration.

This can be driven by varying the contact stiffness.

- Small values for the contact stiffness: à Large Penetrations à Good convergence
- Large values for the contact stiffness: à Small penetrations à Poor convergence

- 165 -
Contact

Penalty Method
Hence, we have to find a compromise between accuracy and numerical behaviour
if we use the penalty method.
If the contact stiffness is too large, we calculate big reaction forces, which push
two bodies away from each other in one iteration. Due to the acting force the
contact condition will be not satisfied in the next step and so on.
F

F
F
Fcontact

Iteration n Iteration n+1 Iteration n+2

- 166 -
Contact

Penalty Method
Note:
A penalty formulation is available in
• normal direction
• tangential direction

If you choose for the contact algorithm


- Penalty Method
the penalty method will work in normal and tangential direction.

(KEYOPT(2) = 1)

- 167 -
Contact

Penalty Method
Advantages: TIP
• System of equation does not blow up
• All solver types are available
• Larger models can be handled well
• Fastest method

Disadvantages:
• Convergence behaviour and accuracy depends on the contact stiffness
• A big contact stiffness may result in ill conditioned matrices

- 168 -
Contact

Penalty Method
Recommendation:
TIP
• For large 3D problems
• For dominant nonlinear material behaviour

- 169 -
Contact

4. Lagrange Multipliers Method


Let us consider a simple structure with elastic material law and conservative forces.
The structure is in equilibrium if its total potential energy has its minimum:

1 T
∏ = ∏ (u) = u K u − Fu
2
In the case of contact, the above functional should be minimized considering that
the contact condition is still satisfied:

∏ = ∏ (u) à min.

g = GT u + g 0 = 0
This yields to the so called Lagrangian functional which has to be stationary:

∏ L = ∏ L ( u, λ ) = ∏ ( u) + g( u) ⋅ λ à stat.

- 170 -
Contact

Lagrange Multipliers Method


That means that the first variation must vanish:

∂ ∏L ∂ ∏L
δ ∏L = δu + δλ = 0
∂u ∂λ
For any δu and δλ the following two equations must hold:

∂ ∏ L ∂ ∏ ∂g T
= + ⋅λ = 0
∂u ∂u ∂u
∂ ∏L
= g=0
∂λ
These equations are linear for linear elasticity and node-to-node contact.

- 171 -
Contact

Lagrange Multipliers Method


For linear elasticity we obtain:

∂gT ∂gT
Ku + ⋅λ = F G=
∂u ∂u
g =0
In case of contact we can write:
∂g
g = G u + g0 = 0
T GT =
∂u
We finally obtain the following system of equations which has to be solved:

K G  u  F 
⋅  = 
G T
 0   λ  − g 0 

- 172 -
Contact

Lagrange Multipliers Method


Note: In the system of equation which has to be solved in case of contact a zero
appears on the main diagonal. Due to this case the PCG-solver is not
available any more for the Lagrange Multipliers Method.
u1 u2
K =2 K =2
Example: F1 = 5
1.0

2 0 5 2.5
First step: K=  F =   à Ku = F à u = K −1F à u= 
0 2 0 0

 u1  2.5
Contact condition: g = G u + g0 = [ − 1 1]   + g0 = [ − 1 1]   + 1 = −1.5 < 0
T

u2  0
The contact condition is not satisfied. Penetration occurs.

- 173 -
Contact

Lagrange Multipliers Method


Since the contact condition is not satisfied, solve the following system of equations:
u1 u2
K =2 K =2
F1 = 5
1.0

 2 0 − 1  u1   5 
K G  u   F   0 2 1  u  =  0 
Second step: ⋅  =  à
GT
 0  λ  − g 0 
   2   
− 1 1 0   λ  − 1

 u1  1.75
u  = 0.75 3.5 (tension)
 2   à Internal forces: Fint =  
 λ   3.5   1. 5( compression 

Now the contact condition is satisfied.

- 174 -
Contact

Lagrange Multipliers Method


The Lagrange Method does not work with a contact stiffness, but satisfies the
contact condition by introducing it to the functional. This allows direct control
of the penetration in a contact problem.

Again we can distinguish a Lagrangian formulation for the


• normal direction
• tangential direction

- 175 -
Contact

Lagrange Multipliers Method


In ANSYS you will have the possibility to choose between:

• Lagrange & Penalty


• Lagrange Method

Lagrange & Penalty: The Lagrangian part works in normal direction


(KEYOPT(2) = 3) A penalty part works in tangential direction.
That means slip might occur also in a sticking state.

Lagrange Method: The Lagrangian part works in normal and tangential direction
(KEYOPT(2) = 4) No slip in a sticking state possible.

- 176 -
Contact

Lagrange Multipliers Method


Advantages: TIP
• No contact stiffness necessary, no trial and error
• Good accuracy, almost zero penetrations
• No problems with ill conditioned matrices

Disadvantages:
• Extra degree of freedom for each contact element
• Iterative solver type not available
• System of equations blows up
• Overconstraining may occur

- 177 -
Contact

Lagrange Multipliers Method


Recommendation:
TIP
• For 2D problems
• For problems with large sliding
• For dominant nonlinear material behaviour
• For situations where the Sparse or Frontal solver are applicable

- 178 -
Contact

5. Augmented Lagrange Method


The Augmented Lagrange Method is a combination from the Penalty Method and
the pure Lagrange Method. This is the default method for most contact elements.

First using the contact stiffness a state of equilibrium is calculated. The resulting
penetrations can than be minimized using the Lagrangian part of the algorithm.

Penetration tolerance

- 179 -
Contact

Augmented Lagrange Method


If the Lagrangian part is working, you will see a message in the output window:

Penetrations are
too large...

(KEYOPT(2) = 0)

Here the Lagrangian part just works in normal direction. The slip in case of a
sticking state is controlled by the contact stiffness in tangential direction.

- 180 -
Contact

Augmented Lagrange Method


Advantages: TIP
• System of equation does not blow up
• All solver types are available
• Larger models can be handled well

Disadvantages:
• Ill conditioned matrices may result for large values of the contact stiffness
• More computation time required as for the Pure Penalty Method

- 181 -
Contact

Augmented Lagrange Method


Recommendation:
TIP
• For small 3D problems
• For dominant nonlinear material behaviour

- 182 -
Contact

6. MPC algorithm (Multi Point Constraint)


This algorithm makes sense for bonded contact. (KEYOPT(2) = 2)
We will talk about the different contact types later.
Internally constraint equations are generated between the nodes of a contact pair.

Note: Do not mix that up with the element type MPC184

• Small deformation problems: Identical to CE‘s


• Large deformation problems: Updating MPC‘s (different to CE‘s)

- 183 -
Contact

MPC algorithm (Multi Point Constraint)


Advantages: TIP
• No contact stiffness needed
• All solver types are available
• Larger models can be handled well

Disadvantages:
• Overconstrained situations may occur
• Contact pressure cannot be reviewed

- 184 -
Contact

MPC algorithm (Multi Point Constraint)


Recommendation:
TIP
• For bonding volumetric 3D parts together
• To model the global stiffness behaviour of a structure

- 185 -
Contact

7. Discussion
What is ill conditioning using a penalty based method ???

L2 Norm Criteria

Good conditioning shows Bad conditioning does not Typical convergence behaviour
a unique solution show a unique solution for bad conditioning

Ill conditioning means that in a system of equations a little change on the numbers of
the right hand side vector or of the coefficients of the system matrix has a huge
influence of the numerical result. The numerical solution is hard to find.

- 186 -
Contact
7. Discussion
Penalty means that any violation of the contact condition will be punished by
increasing the total virtual work:

δΨ = ∫ σ T δε dV + ∫ (ε N g N δg N + ε T gT δgT )dA
V Γ

Augmented Lagrange method: ∫ [(λ


Γ
N + ε N g N )δg N + (λT + ε T g T )δg T ]dA
F
The equation can also be written in FE form:

( K + ε G G )u = F
T
εT gN
εN
gT
This is the equation used in FEA for the pure penalty method where ε is the contact stiffness
- 187 -
Contact

F ( K + ε G T G )u = F
The contact spring will deflect an amount ∆,
εT gN such that equilibrium is satisfied:
εN ε∆=F
gT
ê Some finite amount of penetration, ∆ > 0, is required mathematically to maintain
equilibrium. However, physical contacting bodies do not interpenetrate (∆ = 0).

ê The condition of the stiffness matrix crucially depends on the contact stiffness itself.

K = K + ε GT G

é There is no additional DOF. ( K + ε G T G )u = F


N
é There is no overconstraining problem

é Iterative solvers are applicable – large models are doable!

- 188 -
Contact
ê Some finite amount of penetration, ∆ > 0, is required mathematically to maintain
equilibrium. However, physical contacting bodies do not interpenetrate (∆ = 0).
§ ∆ is the Result from FKN and the equilibrium analysis. Pressure= ∆ *ε => Stress
§ 100-times Difference in FKN leads to 100-times Difference in ∆
Ø but leads to only about 1% Difference in Contact pressure and the related stress.
FKN=1e4 FKN=1

Difference in penetration:
0.281e-3/ 0.284e-7
=1e4
PENE PENE

Difference in stress:
(3525-3501)/ 3525
=0.7%

Stress Stress

- 189 -
Contact
Results vs Penetration
16
Factor Contact
No. Iter.
No. Iter. Pene. pressure 8
Stiffness FKN

0
0.01 3 0,024 7950
0 2 4 6 8 10
FKN
0.1 8 0,003256 10555

0.024
1.0 14 0,488e-3 10663 Pene
0.016
10 22 0,164e-3 10733
0.008
100 dnc
0
0 2 4 6 8 10
Lagrange 8 0.267e-4 10832

9900
Pres
8900

7900
0 2 4 6 8 10

- 190 -
Contact

ê Some finite amount of penetration, ∆ > 0, is required mathematically to maintain


equilibrium. However, physical contacting bodies do not interpenetrate (∆ = 0).

Tip:
As long as the penetration does not leads to the change of the contact
region,
The penetration will not influence the contact pressure and Stress
underneath the contact element
Caution:
For pre-tension problem, use large FKN>1, Because the small penetration
will strongly influence the pre-tension force.

- 191 -
Contact
ê The condition of the stiffness matrix crucially depends on the contact stiffness itself.
If the contact stiffness is too large, it will cause convergence difficulties.
The model can oscillate, with contacting surfaces bouncing off of each other.

F F
FContact

Iteration n Iteration n+1 Iteration n+2

FKN=1
FKN=0.01

- 192 -
Contact
ê The condition of the stiffness matrix crucially depends on the contact stiffness itself.

This problem is almost solved since 8.1, with


automatic contact stiffness adjustment.
KEYOPT(10)=2

84
205 iterations
iterations

KEYOPT(10)=0 KEYOPT(10)=2

- 193 -
Contact
ê The condition of the stiffness matrix crucially depends on the contact stiffness itself.

For bending dominant problem, you should still use


the 0.01 for the starting FKN and combine with
KEYOPT(10)=1 or 2
203 iterations 43 iterations

FKN=1: KEY(10)=0 Divergence

FKN=0.01, KEY(10)=0 FKN=0.01, KEY(10)=2

- 194 -
Contact

ê The condition of the stiffness matrix crucially depends on the contact stiffness itself.
/prep7
/solu
et,1,185,,1
nlgeo,on
et,2,173,,1
solcon,on
et,3,170
csys
keyopt,2,10,2
asel,s,,,1
mp,ex,1,2e5
nsla,s,1
mp,nuxy,1,0.3
D,all,all
tb,biso,1
alls
tbdata,1,200,1000
dl,8,5,ux,15
r,2,5,,.1
*do,i,1,90,3
block,-1,1,-1,1,0,90
nsel,s,loc,y,1
esiz,,3
sf,all,pres,0
lesi,2,,,2
nsel,r,loc,z,i-2,i
lesi,9,,,90
sf,all,pres,100+i
vmes,all
alls
n,10000,-3,-6,0
nsub,10,100,1
n,10001,20,-6,0
solv
type,3
*enddo
real,2
KEYOPT(10)=2 tshasp,cylindl
e,10000,10001
Augmented Lagrange: asel,s,,,3
3630 Iterations nsla,s,1
type,2
1023 Sec. esurface
/solu

- 195 -
Contact

- 196 -
Contact
/prep7 asel,s,,,3,4
et,1,181 nsla,s,1
et,2,170 type,2
et,3,173 real,2
Rigid keyop,3,10,1 esurf
et,4,184,1 asel,s,,,7,8
mp,ex,1,2e5 nsla,s,1
tb,biso,1 type,3
tbdata,1,200,10000 real,2
r,1,3 esurf
r,2,,,0.1,,,-5 allsel
cylin,0,10,0,200,0,360 type,4
vgen,2,1,1,,,20 lmes,5,8
lsel,s,loc,z,0 lmes,15,18
lesi,all,,,6 /solu
alls nlgeo,on
esiz,5 nsel,s,loc,z,0
amap,3,5,2,3,7 d,all,all
amap,4,5,2,3,7 alls
amap,7,13,10,11,15 dk,6,all
amap,8,13,10,11,15 dk,6,rotz,2*3.14
dk,16,all
dk,16,rotz,2*3.14
nsub,100,10000,20
cnvt,f,,0.01,
outres,all,-30
solve

- 197 -
Contact

- 198 -
Contact
ê The condition of the stiffness matrix crucially depends on the contact stiffness itself.
ITER. Conv.

Default 248 ok
P+L

Key10=2 69 ok
P+L

- 199 -
Contact

ê The condition of the stiffness matrix crucially depends on the contact stiffness itself.

Tip:

Always use KEYOPT(10)=2


For bending problem use FKN=0.01 and KEYOPT(10)=2
For bulky problem use FKN=1 and KEYOPT(10)=2
Caution:
For pre-tension problem, use large FKN>1. Because the small penetration
will strongly influence the pre-tension force.

- 200 -
Contact

é There is no additional DOF.

é There is no overconstraining problem

é Iterative solvers are applicable – large models are doable!

Tip:
Always use Penalty if:
• Symmetric contact or self-contact is used.
• Multiple parts share the same contact zone
• 3D large model(> 300.000 DOFs), use PCG solver.

- 201 -
Contact
• Any violation of the contact condition will be furnished with a Lagrange multiplier.

δΨ = ∫ σ T δε dV + ∫ (λ N δg N + λ Tδg T )dA
V Γ
Contact constraint condition:

gN ≥ 0 Ensure no penetration
λN ≤ 0 Ensure compressive contact force/pressure
g N λN = 0 No contact λ N = 0, gap is non zero
Contact g N = 0, contact force is non zero

The equation is linear, in case of linear elastic and Node-to-Node contact. Otherwise,
the equation is nonlinear and an iterative method is used to solve the equation. Usually
the Newton-Method is used.

For linear elastic problems: K G u F


=
G T
0 λ g0

- 202 -
Contact
N+G

K G u F
=
G T
0 λ g0
ê Lagrange multipliers are additional DOFs à the FE model is getting large.

ê Zero main diagonals in system matrix àNo iterative solver is applicable.

ê For symmetric contact or additional CP/CE, and boundary conditions, the equation
system might be over-constrained
ê Sensitive to chattering of the variation of contact status
é No need to define contact stiffness

é Accuracy - constraint is satisfied exactly, there are no matrix conditioning problems

- 203 -
Contact
ê Lagrange multipliers are additional DOFs à the FE model is getting large.

Tip:
Always use Lagrange multiplier method if:
• The model is 2D.
• 3D nonlinear material problem with < 100.000 Dofs

- 204 -
Contact

ê Zero main diagonals in system matrix àNo iterative solver is applicable.

Tip:
never use Lagrange multiplier method if:
• The model has > 500.000 DOFs.

For 700.000 DOFs nonlinear contact model,


Penalty+PCG is 2 times faster than
Lagrange+Sparse!

- 205 -
Contact

ê For symmetric contact or additional CP/CE, and boundary conditions, the equation
system is over-constrained
Tip:
If the Lagrange multiplier method is used:
• Always use asymmetric contact.
• Do not use CP/CE in on contact surfaces
• Do not define the multiple contacts, which share the common
interfaces.
Contact pair-1 Single contact pair

Contact pair-1

- 206 -
Contact
• Typical problem for Lagrange Multiplier Contact Formulation

Contact Target

Contact
Contact
Contact Target

Target
Target
Contact with mid-side nodes Lagrange Multiplier
Asymmetric

- 207 -
Contact

• In most cases, Lagrange still works with symmetric contact

Penalty and Lagrange


symmetric

self-contact
self-contact

self-contact
self-contact
- 208 -
Contact

Penetration Pressure Penetration Pressure

Iterations: 174 Iterations: 92


CPU: 100 CPU: 50

Penalty symmetric Lagrange symmetric

- 209 -
Contact
ê Sensitive to chattering of the variation of contact status
Tip:
Use Penalty is chattering occurs or
Chattering Control Parameters:
FTOLN and TNOP R1=R2-Delta

F R1 R2

- 210 -
Contact
Use Penalty is chattering occurs
DELT=0.1 lsel,s,,,1 /solu
/prep7 nsll,s,1 Nsel,s,loc,x,0
et,1,183 Real,2 D,all,ux
et,2,169 type,3 lsel,s,,,5
et,3,172,,4,,2 esurf nsll,s,1
mp,ex,1,2e5 lsel,s,,,7 d,all,all
pcir,190,200-DELT,-90,90 nsll,s,1 lsel,s,,,3
wpof,0,-delt type,2 nsll,s,1
pcir,200,210,-90,90 Esurf *get,nn,node,,count
Penalty wpof,0,delt f,all,fy,200/nn
esiz,5 alls
FKN=1 Esha,2 Solv
ames,all

- 211 -
Contact
é No need to define contact stiffness

é Accuracy - constraint is satisfied exactly, there are no matrix conditioning problems

Sy Pene Sy Pene Sy Pene

Pure Lagrange Pure Penalty(FKN=1) Pure Penalty(FKN=1e4)


Iter=13 Iter=8 Iter=39

- 212 -
Contact
é No need to define contact stiffness

é Accuracy - constraint is satisfied exactly, there are no matrix conditioning problems


Sy Pene Sy Pene Sy Pene

Pure Lagrange Pure Penalty(FKN=1e4) Augmented Lagrange


FKN=1, TOL=-3e-7
Iter=13 Iter=39 Iter=1327
- 213 -
Contact

Results vs Penetration

Factor Contact Contact


No. Iterations Penetration Factor Diff.
Stiffness FKN pressure

0.01 6 0.02452 918 7949 26.6%

0.1 8 0.003256 122 10555 2,55%

1.0 29 0.000326 12,2 10566 2,55%

10 66 0.0000327 1,22 10594 2,2%

100 - - - - -

Lagrange 8 0.0000267 1 10832 0%

- 214 -
Contact
example-1
Element: Plane183
Material: Neo-
Neo-Hookean
Contact: Pure Lagrange
Load:
Load: Displacement

- 215 -
Contact
/prep7 wpcs,
wpcs,-1 lsel,s,,,1,4
lsel,s,,,1,4 /solu
et,1,183 rect,
rect,-16,-
16,-6,- 100,-80 lsel,a,,,9,12
6,-100,- lsel,a,,,9,12 nlgeo,on
nlgeo,on Tip:
et,2,169 rect,
rect,-6,-
6,-5,- 100,-80 lsel,a,,,17,20
5,-100,- lsel,a,,,17,20 acel,,9810
acel,,9810
et,3,172,,3,,2 rect,
rect,-5,5,- 100,-80 lsel,a,,,25,28
5,5,-100,- lsel,a,,,25,28 asel,s,,,1,9,1,1
asel,s,,,1,9,1,1
tb,
tb,hyper,1,,,
hyper,1,,,neoneo asel,s,,,10,31,1,1 lsel,a,,,33,36
asel,s,,,10,31,1,1 lsel,a,,,33,36 cmsel,u,l1
cmsel,u,l1 For large sliding
tbdata,1,.3,0.001
tbdata,1,.3,0.001 numm,
numm,kp cm,l1,line
cm,l1,line cmsel,u,l2
cmsel,u,l2
mp,ex,2,2e5
mp,ex,2,2e5 esha,2 nsll,s,1
nsll,s,1 nsll,s,1
nsll,s,1 problem,
esha,2
mp,
mp,dens,2,7.8e
dens,2,7.8e--9 esiz,2
esiz,2 type,3
type,3 d,all,all Use Lagrange method,
r,2,,,,,,5 ames,1,28
ames,1,28 esurf asel,s,,,29,31,1
asel,s,,,29,31,1
lsel,s,,,76,108,8
lsel,s,,,76,108,8 nsla,s,1
nsla,s,1
the convergence
r,3,,,,,,5 esha
pcir,2,5
pcir,2,5 alls lsel,a,,,78,102,8
lsel,a,,,78,102,8 d,all,ux
d,all,ux behavior is very good
agen,5,1,1,,22 mat,2
mat,2 lsel,a,,,113,129,4
lsel,a,,,113,129,4 nsub,5,15,1
nsub,5,15,1 and stable
agen,2,1,1,,11,-
agen,2,1,1,,11,-30 ames,all
ames,all lsel,a,,,135,147,4
lsel,a,,,135,147,4 lsel,s,,,109,,,1
lsel,s,,,109,,,1
agen,4,6,6,,22 lsel,s,,,74,106,8
lsel,s,,,74,106,8 nsll,s,1
nsll,s,1 d,all,ux
d,all,ux
rect,
rect,-6,-
6,-5,-
5,-80,0 lsel,a,,,80,112,8
lsel,a,,,80,112,8 type,2
type,2 d,all,uy
d,all,uy,0,0
rect,5,6,
rect,5,6,--30,0 lsel,a,,,115,131,4 real,3
lsel,a,,,115,131,4 alls
agen,9,11,11,,11 lsel,a,,,133,145,4 esurf
lsel,a,,,133,145,4 cnvt,f,,.01
cnvt,f,,.01
pcir,5,6,0,180
pcir,5,6,0,180 nsll,s,1
nsll,s,1 lsel,s,,,41,44
lsel,s,,,41,44 nsub,100,10000,1
nsub,100,10000,1
agen,5,20,20,,22 type,2
type,2 lsel,a,,,49,52
lsel,a,,,49,52 solv
wpof,11,
wpof,11,--30 real,2 lsel,a,,,57,60
lsel,a,,,57,60 lsel,s,,,109,,,1
lsel,s,,,109,,,1
pcir,5,6,180,360
pcir,5,6,180,360 mat,3
mat,3 lsel,a,,,65,68
lsel,a,,,65,68 d,all,uy
d,all,uy,,-50
agen,4,25,25,,22 esurf cm,l2,line
cm,l2,line nsub,100,10000,1
nsub,100,10000,1
nsll,s,1
nsll,s,1 outres,all,all
outres,all,all
type,3
type,3 alls
esurf solv

- 216 -
Contact

Lagrange: Penalty:
110 Iterations 218 Iterations
CPU: CPU:
14 Sec. 24 Sec.

- 217 -
Contact

Sliding example
/prep7
lsel,s,,,14,18,2
et,1,42,,,1
nsll,s,1
et,2,169
type,2
et,3,171,,3
real,2
mp,ex,1,2e5
mat,2
rect,1.5,2,0,5
esurf
wpof,1,2.5
lsel,s,,,7,8
pcir,1,1.5,-90,90
nsll,s,1
aovl,all
type,3
adel,3,,,1
esurf
adel,7,8,1,1
lsel,s,,,1,,,1
aadd,all
d,all,all
arsym,x,all
/solu
agen,2,2,2,,4.5,1.8,,0,,1
nlgeo,on /post26
l,16,5
nsub,30,30,30 rfor,2,141,f,y
asbl,2,21
outres,all,all rfor,3,147,f,y
adel,3,,,1
lsel,s,,,9,,,1 *rep,3,1
esiz,.2
d,all,uy,-4 add,6,2,3,4
amap,1,1,2,3,4
alls add,6,6,5
amap,4,16,5,19,18
solv plva,6

- 218 -
Contact

Bending example Lagrange:


10 Iterations
Bending stress 2 Sec.

Penalty Key(10)=1:
54 Iterations
12 Sec.

Contact penetration

- 219 -
Contact

Metal forming example


Element: Solid45
Material: BISO
Contact: Pure Lagrange
Load:
Load: Displacement

- 220 -
Contact
/prep7 asel,s,,,8
asel,s,,,8 /solu
et,1,185,,1 nsla,s,1
nsla,s,1 nlgeo,on
nlgeo,on Lagrange:
et,2,173,,3,,2 type,2
type,2 nsub,10,100
nsub,10,100
et,3,170 esurface outres,all,
outres,all,--20
578 Iterations
mp,ex,1,2e5
mp,ex,1,2e5 n,20000,-
n,20000,-3,3,10 csys 337 Sec.
mp,
mp,nuxy,1,0.3
nuxy,1,0.3 n,20001,3,3,10 nsel,s,
nsel,s,loc
loc,x,0
,x,0
tb,
tb,biso,1
biso,1 local,11,1,0,
local,11,1,0,--6,10,0,0,-
6,10,0,0,-90 d,all,ux
d,all,ux
tbdata,1,200,1000
tbdata,1,200,1000 n,30000 nsel,s,
nsel,s,loc
loc,z,0
,z,0 Penalty Key(10)=2:
r,2,5,,,,,5 nrot,30000
nrot,30000 d,all,all 629 Iterations
r,3,2,,,,,5 type,3
type,3 alls
cylin,0,1,0,30,0,90
cylin,0,1,0,30,0,90 real,3 d,30000,rotz,-
d,30000,rotz,-3.14*3/4 290 Sec.
lesi,1,,,4
lesi,1,,,4 tshape,
tshape,cylin solve
lesi,7,,,35
lesi,7,,,35 e,20000,20001
*rep,3,1
rep,3,1 tshape,
tshape,pilot
vmes,all
vmes,all e,30000
vsym,y,all
vsym,y,all Type,2
numm,
numm,node asel,s,,,3
asel,s,,,3
numm,
numm,kp nsla,s,1
nsla,s,1
n,10000,-
n,10000,-3,-3,-6,10 type,2
type,2
n,10001,3,-
n,10001,3,-6,10 esurface
type,3
type,3
real,2
tshasp,
tshasp,cylin
e,10000,10001

- 221 -
Contact

Discussion
What is overconstraining using a Lagrangian based method or the MPC Method ???

Example: Bonded contact situation with prescribed boundary conditions

- 222 -
Contact

Discussion
The penalty method uses a contact “spring” to establish a relationship between
the two contact surfaces. The spring stiffness is called the contact stiffness.

This method uses the following real constants:


- FKN and FKT for all values of KEYOPT(10)

It should be used if:


- you want to run the analysis as fast as possible (large models).
- you want use the contact just to transfer forces and stiffness.
- you want to run the contact analysis between rubber and steel.
- you want run the contact analysis with very high friction coefficient >0.4.

- 223 -
Contact

Discussion
Surface-to-Surface Contact augmented Lagrangian method (KEYOPT(2) = 0)

– Augmented Lagrange method is able to solve complex contact problems,


producing a certain level of penetration which is generally so small that the
effect is negligible and can be controlled.
– The default for normal contact stiffness is chosen intelligently
• Bulk modulus and material behaviors of underlying elements
• Stiffness of underlying structural element
• Equivalent stress, plasticity of underlying element
– Adaptive scheme is used for normal and tangential contact
stiffnessKEYOPT(10)=1,2,… and is fully automatic

- 224 -
Contact

Discussion
The augmented Lagrangian method (which is the default) is an iterative series
of penalty methods. The contact tractions (pressure and frictional stresses) are
augmented during equilibrium iterations so that the final penetration is smaller
than the allowable tolerance (work with real constants FTOLN and SLTO).

Compared to the penalty method, the augmented Lagrangian method usually


leads to better conditioning and is less sensitive to the magnitude of the contact
stiffness.

However, in some analyses, the augmented Lagrangian method may require


additional iterations, especially if the deformed mesh becomes too distorted.

- 225 -
Contact

Discussion
Surface-to-Surface Contact pure Lagrange multiplier method (KEYOPT(2) = 4)

– Advantages:
• No need to define contact stiffness
• Accuracy - constraint is satisfied exactly
• No matrix conditioning problems
– Disadvantages:
• Extra DOFs for each contact constraint
• Iterative solvers are inapplicable
• Sensitive to chattering of the variation of contact status
• Over-constrained conditions may arise

- 226 -
Contact

Discussion
The pure Lagrange multiplier method enforces zero penetration when contact is
closed and “zero slip” when sticking contact occurs.

The pure Lagrange multiplier method does not require contact stiffnesses, FKN
and FKT. Instead it requires real constants FTOLN and SLTO.

This method adds contact traction to the model as additional degrees of freedom
and requires additional iterations to stabilize contact conditions.

It often increases the computational cost


compared to the augmented Lagrangian method.

- 227 -
Contact

Discussion
Two new contact algorithms are available for surface-to-surface contact
elements (CONTA171 through CONTA174) and the node-to-surface contact
element (CONTA175)

– Lagrange multiplier on contact normal and penalty on tangent


(KEYOPT(2) = 3)
• The Lagrange multiplier on contact normal and penalty on tangent
plane method enforces zero penetration and allows a small amount of
slip for the sticking contact condition
– Pure Lagrange multiplier
(KEYOPT(2) = 4)
• The pure Lagrange multiplier method enforces zero penetration when
contact is closed and “zero slip” when sticking contact occurs.

- 228 -
Contact

Discussion
Surface-to-Surface Contact multipoint constraint (MPC) algorithm (KEYOPT(2) = 2)

- This is used in conjunction with bonded contact (KEYOPT(12) = 5 or 6)


and no separation contact (KEYOPT(12) = 4) to model several types of
contact assemblies and kinematic constraints.

- 229 -
Contact

Discussion
Note
TIP

The Lagrange multiplier methods (KEYOPT(2) = 3, 4) and MPC approach


(KEYOPT(2) = 2) do not support the Gauss point detection option (KEYOPT(4) = 0)
for surface-to-surface contact. They support the nodal detection options for
surface-to-surface contact and node-to-surface contact.

When using these options, be careful not to overconstrain the model. The model is
overconstrained when a contact node has prescribed boundary conditions, CE and CP
equations. ANSYS usually detects and eliminates the overconstraints. However, there
is no guarantee that the program will eliminate all the cases of overconstraint.

- 230 -
Contact

Discussion
Note
TIP

The Lagrange multiplier also introduces more degrees of freedom which may result in
spurious modes for modal and linear eigenvalue buckling analyses.

The augmented Lagrangian method would be a better choice for these analysis types.

- 231 -
Contact

Discussion
Note
TIP

The Lagrange multiplier methods (KEYOPT(2) = 3, 4) introduce zero diagonal terms in


the stiffness matrix. Any iterative solver (PCG or AMG) will not work.

Therefore, the sparse solver is used.

- 232 -
Contact

Discussion
Note
TIP

If overconstraint occurs in bonded shell-shell assemblies when using the MPC


algorithm, you can switch to the penalty method or the augmented Lagrangian method.

- 233 -
Contact

Discussion
• Pure penalty method: à Penalty based method
– Result and numerical behavior depend on the contact stiffness which must be given
– Penetration can not be predicted from the beginning.
– The matrix condition depends on the penalty stiffness.
• Augmented Lagrange method (default): à Penalty based method
– Lagrange method is used to improve the functionality of the Penalty method.
– Control of the penetration through additional iterations with Lagrange parameter
– Not that sensitive to the penalty stiffness
• Lagrange methods:
– Lagrange multiplier is used as an additional DOF which is computationally expensive.
– Sensitive to the contact status chattering.
– Over-constraining can occur.
• MPC method:
– For bonded contact situations.
– Due to the constrained equations not that computationally expensive.

- 234 -
Contact

Discussion

TIP

FKN=1

When is the contact stiffness to big ???


The typical sign for a too large value for the contact stiffness is that after several
iterations the force convergence value keeps almost constant, although the max. DOF
increment is getting smaller and smaller.
It can also happen that the force convergence value is jumping up and down.

- 235 -
Contact

Discussion

TIP
FKN=0.1

FKN=0.01

When is the contact stiffness to small ???


The typical sign for a too small value for the contact stiffness is that after several
iterations the force convergence value is converging, but the max. DOF increment is not
getting smaller and the penetration is violated then.

- 236 -
Contact

Discussion
Does the penetration influence the stresses ???

∆ is the result from FKN and the equilibrium analysis


Pressure=∆ *FKN à Stress underneath the contact element
100-times difference in FKN leads to 100-times difference in ∆ - but leads to only
about 1% difference in contact pressure and the related stress.

Difference in vertical stresses:


(14590-14724)/ 14590
= 1%

FKN=1 FKN=0.01
Difference in ∆:
((0.251e-3)-(0.022))/ (0.251e-3)
= 87 %

- 237 -
Contact

Discussion
Does the penetration influence the stresses ???

As long as the penetration for different contact stiffnesses is in the same


geometric range it does not influence the stresses that much.

- 238 -
Contact

Discussion
Working with the contact stiffness and comparing algorithms:

Sy Pene Sy Pene Sy Pene

Pure Lagrange Pure Penalty Pure Penalty


(Contact Stiffness=1) (Contact Stiffness=1000)
Iter=13 Iter=8 Iter=39

- 239 -
Contact

Discussion
Working with the contact stiffness and comparing algorithms:

Sy Pene Sy Pene Sy Pene

Pure Lagrange Pure Penalty Augmented Lagrange


(Contact Stiffness=1000) (Contact Stiffness=1)
Iter=13 Iter=39 (Penetration Tolerance=-3e-7)

Iter=1327

- 240 -
Contact

Discussion
Note:
Although introduced later: You can influence the value of the contact stiffness be
- setting a scaling factor (positive third real constant value)
- setting an absolute value (negative third real constant value)
Or you use the contact wizzard in ANSYS or the details window in Workbench:

- 241 -
Contact

Discussion
Example:
Penalty Method: Contact stiffness study (normal direction – FKN)

FKN iterations penetration contact pressure

0.01

0.1

1.0

10

100 - - -

Lagrange

Displacement driven problem

- 242 -
Contact
Discussion
Example:
Penalty Method: Contact stiffness study (normal direction – FKN)
contact Iter
FKN iterations penetration 14
pressure Pene
12 Pres
0.01 4 0.0245 7946
10
0.1 5 0.0032 10263
8
1.0 8 0.00032 10565
6
10 92 0.000032 10594
4
100 - - - 2

Lagrange 5 0.000002 10797 0


0.01 0.1 1 10 Lag.

- 243 -
Contact

Discussion
Example:
finish pcir,0,10,0,90 lesi,5,,,6,3 !!! Target !!! /solu
/clear pcir,0,9,0,90 lesi,6,,,6,3 lsel,s,line,,7 nsel,s,loc,y,0
/prep7 wpof,,19.99 lesi,15,,,6,3 nsll,s,1 d,all,uy,0
et,1,183 pcir,0,10,-90,0 lesi,16,,,6,3 type,2 nsel,s,loc,x,0
keyopt,1,3,1 pcir,0,9,-90,0 lesi,7,,,50,20 real,2 d,all,ux,0
et,2,169 aovl,1,2 lesi,10,,,50,20 esurf nsel,s,loc,y,19.99
et,3,172 aovl,3,4 lesi,1,,,50,1/20 d,all,uy,-0.1
keyopt,3,2,1 lesi,4,,,50,1/20 !!! Contact !!! allsel
r,2,,,0.01,,,-2 mshkey,1 lsel,s,line,,1
mp,ex,1,200000 amesh,2,6,4 nsll,s,1 solve
mp,prxy,1,0.3 lesi,2,,,15,.05 type,3
lesi,14,,,15,.05 real,2 /post1
mshkey,0 esurf /dscale,1,1
amesh,1,5 plnsol,cont,pres
plnsol,cont,pene

- 244 -
Contact

Discussion
Example:
Lagrange Method: Contact problem

!!! Target !!!


/solu /post1
lsel,s,line,,3
nsel,s,loc,x,0 /dscale,1,1
finish rect,0,10,0,.5
nsll,s,1
nsel,a,loc,x,15 plnsol,u,sum,2,1
/clear rect,5,15,1,1.5
type,2
d,all,all,0
/prep7 amesh,all
real,2
allsel
et,1,182
esurf fk,8,fy,-100
et,2,169
et,3,171
!!! Contact !!!
nlgeom,on
keyopt,3,2,4
lsel,s,line,,5
nsubst,10,100,1
keyopt,3,4,1
nsll,s,1 outres,all,all
mp,ex,1,200000
type,3
solve
mp,prxy,1,0.3
real,2
esurf

- 245 -
Contact

Discussion
Example: exa22.inp
Contact problem with large sliding

- 246 -
Contact

Discussion
Example: exa22.inp
finish rect,1.5,2,0,5 !!! Target !!! /solu /post26
/clear wpof,1,2.5 lsel,s,line,,14,18,2 lsel,s,line,,1 rforce,2,141,f,y
/prep7 pcirc,1,1.5,-90,90 nsll,s,1 nsll,s,1 rforce,3,147,f,y
et,1,182 aovlap,all type,2 d,all,all,0 *repeat,3,1
keyopt,1,3,1 adela,3,,,1 mat,2 lsel,s,line,,9 add,6,2,3,4
et,2,169 adele,7,8,1,1 real,2 nsll,s,1 add,6,6,5
et,3,171 aadd,all esurf d,all,uy,-4 xvar,1
mp,ex,1,200000 arsym,x,all plvar,6
mp,prxy,1,0.3 agen,2,2,2,,4.5,1.8,,0,,1 !!! Contact !!! time,4
mp,mu,2,0.15 l,16,5 lsel,s,line,,7,8 nlgeom,on /post1
r,2,,,0.1 asbl,2,21 nsll,s,1 nsubst,30,30,30 /dscale,1,1
adele,3,,,1 type,3 outres,all,all set,first
esize,0.2 mat,2 allsel plnsol,u,sum,2,1
amap,1,1,2,3,4 real,2 solve andata,0.5,,2,1,18,1,0,1
amap,4,16,5,19,18 esurf

- 247 -
Contact

Discussion
Example: exa23.inp
Contact problem with little gap – sensitive in change of contact status

Delta is the gap size

- 248 -
Contact

Discussion
Example: exa23.inp
finish pcirc,190,200-delt,-90,90 !!! Target !!! /solu /post1
/clear wpof,0,-delt,0 lsel,s,line,,7 nsel,s,loc,x,0 /dscale,1,1
delt=0.01 pcirc,200,210,-90,90 nsll,s,1 d,all,ux,0 plnsol,u,sum
/prep7 wpoffs,0,delt,0 type,2 lsel,s,line,,5 plesol,cont,pene
et,1,183 esize,5 real,2 nsll,s,1
et,2,169 amesh,all esurf d,all,all,0
et,3,172 lsel,s,line,,3
keyopt,3,2,1 !!! Contact !!! nsll,s,1
keyopt,3,5,1 lsel,s,line,,1 *get,nn,node,,count
r,2,,,0.01 nsll,s,1 f,all,fy,200/nn
mp,ex,1,200000 type,3 allsel
mp,prxy,1,0.3 real,2 solve
esurf

- 249 -
Contact

Contact Application

- 250 -
Contact

Chapter 6
Contact stiffnesses

- 251 -
Contact

1. Program Handling
The normal, tangential and contact opening stiffness can be set as REAL CONSTANTS:

normal penalty stiffness

contact opening stiffness


tangent penalty stiffness

- 252 -
Contact

Program Handling
Different contact stiffnesses can be set in following ways: Working interactively

- 253 -
Contact

Program Handling
Note:
In Workbench you cannot set the contact opening and tangent penalty stiffness directly.
However, you can work with commands. Use the 11th and 12th REAL CONSTANT:

- 254 -
Contact

2. Normal contact stiffness


The following procedure may be used as a guideline:

1. Use a low stiffness value to start.


2. Run the analysis to a fraction of the final load.
3. Check the penetration and number of equilibrium iterations used in each substep.

– As a rough, quick check, if you can visually detect penetration in a true-scale


displaced plot of the entire model (/dscale,1,1), the penetration is probably
excessive. Increase the stiffness and restart.
– If many iterations are needed for convergence
reduce the stiffness and restart.

Penalty stiffness can be modified from one load step to another, and can be
adjusted in a restart, or use KEYOPT(10) to let ANSYS use the adaptive scheme.

- 255 -
Contact

Normal contact stiffness


ANSYS always computes a default value for the contact stiffness, depending on
the stiffness of the lower finite element from the contact element.

All values can be seen by CNCHECK:

- 256 -
Contact

2. Tangent contact stiffness


Elastic Coulomb Model: Allows sticking and sliding:

If a tangential load Ft trying to move two bodies relative to each other,


is smaller then µFn the two bodies will stick together.
If this tangential load Ft is larger then µFn the two bodies will slide relative to each
other. An opposing shear stress TAU will still be experienced by both bodies.

Fn Sticking when: Ft < µ F n


Sliding when: Ft > µ F n
Ft

µ Fn

- 257 -
Contact

Tangent contact stiffness


Elastic Coulomb Model: Allows sticking and sliding:

FT
µFN
KT
u

The sticking zone is treated as elastic, with a tangent stiffness KT.

The tangent stiffness has a similar effect to that of the normal stiffness:
better accuracy when stiffer, better convergence when softer.

You can specify KT, or the program will specify KT to be a fraction of KN (1% of KN).

- 258 -
Contact

Tangent contact stiffness


This means that using a penalty based method will allow a certain elastic slip
in tangential direction (depending on the tangent contact stiffness) also the
two contacting bodies are in a numerically determined sticking state.
Ftangent

Sticking when: Ft < µ F n

Sliding when: Ft > µ F n

TIP

FKT factor:
Usually this parameter does not have to be touched.

- 259 -
Contact

Friction stiffness
For clarification purposes:
FT
Ftangent

kT
∆ Slip
∆ Slip
µ Fn
sliding sticking zone

- 260 -
Contact

Tangent contact stiffness

TIP

FKT factor:
Usually this parameter does not have to be touched.

- 261 -
Contact

Tangent contact stiffness


Example: exa26.inp
Contact stiffness study (tangential direction) – Work also with TAUMAX

FKT = 0.01

FKT = 1

µ =0.15

- 262 -
Contact

Tangent contact stiffness


Example: exa26.inp
finish k,10,8.15,2.5 !!! Target !!! /solu /post26
/clear k,11,8.15,12.5 lsel,s,line,,6 nsel,s,loc,y,0 rforce,2,1,f,y,FY_2
/prep7 k,12,12,12.5 nsll,s,1 d,all,uy,0 nsol,3,1,u,y,UY_3
et,1,183 k,13,12,2.5 type,2 lsel,s,line,,1 /axlab,x,Deflection
keyopt,1,3,1 l,11,12 mat,2 nsll,s,1 /axlab,y,Force
et,2,169 l,12,13 real,2 cp,1,uy,all /xrange,0,1
et,3,172 l,13,10 esurf allsel /yrange,0,36000
keyopt,3,10,2 larc,11,10,12,50 xvar,3
mp,ex,1,200000 al,1,2,3,4 !!! Contact !!! d,1,uy,0 d,1,uy,1 plvar,2
mp,nuxy,1,0.3 rect,5,8,,15 lsel,s,line,,4 time,1 time,2
mp,mu,2,0.15 esize,0.3 nsll,s,1 nlgeom,on
r,2 type,1 type,3 nsub,1,1,1 nsub,30,100,5
rmore,,,,,,0.01 mshkey,1 mat,2 outres,all,all
amesh,all real,2 nropt,unsym
esurf solve solve

- 263 -
Contact

Discussion
Use friction to stabilize the system:
Generally speaking, friction makes convergence difficult, especially if very large friction
coefficients (>0.3) are used. In most cases, you do not need to adjust KT because if KT
is high enough by default, you will get good results anyway. If KT is too small, you will
get bad results, but increasing KT significantly might lead to no convergence.
Sometimes, friction may help you to solve a problem,
that will never ever converge without friction.

Use a small friction coefficient(0.01) to avoid rigid body motions

FT=0 MU=0 MU=0.01

- 264 -
Contact

Discussion
Be careful with friction:
Sometime the friction can completely change the system characteristics. The following
example shows the behavior of the system response with and without friction effect.

Contact: Contact:
Without friction With friction

System
FE Model

- 265 -
Contact

Chapter 7
Penetration tolerance

- 266 -
Contact

Contents
1. Program Handling
2. Penetration tolerance

- 267 -
Contact

1. Program Handling
The penetration tolerance can be set as a real constant:

penetration tolerance

- 268 -
Contact

Program Handling
The penetration tolerance can be set interactively

- 269 -
Contact

Program Handling
Note:
In Workbench you cannot touch this parameter interactively.
However, you can use it working with commands. It is the 4th value on the real constant:

- 270 -
Contact

2. Penetration tolerance
Setting the penetration tolerance obviously just makes sense if you are
working with a Langrangian based contact algorithm:
The default value of the penetration tolerance
is determined from the depth of the lower
element:

Allowed penetration = FTOLN*h

Contact element

h Structural element

- 271 -
Contact

Penetration tolerance

TIP

FTOLN factor:

1) Usually, you should not play with this parameter.


The analysis will not converge, if you use a very small value.

2) It is a tolerance number and can be achieved only in some contact regions.


It will be checked in every iteration.

- 272 -
Contact

Chapter 8
Behaviour of the contact surface

- 273 -
Contact

Contents
1. Program Handling
2. The behaviour of the contact surface

- 274 -
Contact

1. Program Handling
The behavior of the contact surface can be set in following ways: KEYOPTION(12):

Possible values
for KEYOPT(12)

0
1
2
3
4
5
6

- 275 -
Contact

Program Handling
The behaviour of the contact surface can be set in following ways: Working interactively

KEYOPT(12)=5
KEYOPT(12)=4
KEYOPT(12)=0
KEYOPT(12)=1
KEYOPT(12)=0

- 276 -
Contact

2. The behaviour of the contact surface


Advanced: KEYOPT(12)=0 – Standard:

contact closed to reality: opens and closes.


friction can be modelled or not.
Numerically advanced.

Keyoption(12)=0 Keyoption(12)=0

- 277 -
Contact

The behaviour of the contact surface


Advanced: KEYOPT(12)=1 – Rough:

models perfectly rough frictional contact without


sliding. This case corresponds to an infinite
friction coefficient.

Keyoption(12)=1 Keyoption(12)=0
The nodes in contact are glued on the target surface in tangential direction

- 278 -
Contact

The behaviour of the contact surface


Easy: KEYOPT(12)=2 - No separation: à not in Workbench

models no separation contact, in which the target and contact surfaces are tied up for
the rest of the analysis (sliding is permitted) once contact is detected (NLGEOM,ON)
and the surfaces touch each other.

Keyoption(12)=2 Keyoption(12)=0
The nodes in contact are bonded to the target surface in normal direction.

- 279 -
Contact

The behaviour of the contact surface


Easy: KEYOPT(12)=3 – Bonded: à not in Workbench

models bonded contact, in which the target and contact surfaces are bonded in all
directions for the rest of the analysis once contact is detected (NLGEOM,ON)
and the surfaces touch each other.

Keyoption(12)=3 Keyoption(12)=0
The nodes in contact are bonded to the target surface in both directions.

- 280 -
Contact

The behaviour of the contact surface


Easy: KEYOPT(12)=4 – No separation (always):

models no separation contact, in which the contact


detection points that are either initially inside the
pinball region or that once involve (NLGEOM,ON)
are always attached to the target surface.
Kontakt
Target
Pinball

Keyoption(12)=4 Keyoption(12)=0

- 281 -
Contact

The behaviour of the contact surface


Easy: KEYOPT(12)=5 – Bonded (always):

models no separation contact, in which the contact


detection points that are either initially inside the
pinball region or that once involve (NLGEOM,ON)
are always attached to the target surface.
Kontakt
Target
Pinball

Keyoption(12)=5 Keyoption(12)=0

- 282 -
Contact

The behaviour of the contact surface


Easy: KEYOPT(12)=6 - Bonded (initial contact): à not in Workbench

models bonded contact, in which the contact detection points that are initially in a closed
state stay attached to the target surface and the contact detection points that are initially
in an open state will be open throughout the analysis.

Keyoption(12)=6

- 283 -
Contact
Lagergehäuse
Abströmgehäuse
Verdichterspirale

Zuströmgehäuse 90°
Einsatzstück

- 284 -
Contact
Modal shape

Displacement
Temperature

- 285 -
Contact

It has 209
unsuppressed parts
and 450 contact
pairs. The model
has 385,000 nodes
and 1.15million DOF

- 286 -
Contact

The behaviour of the contact surface

TIP

KEYOPT12:

Try to idealize your model to make the numerical behavior as robust as possible.
Do not argue always to work with the STANDARD contact. Also this is the one
closed to reality, it can be very tricky, especially in force driven contact
problems with small gaps (rigid body motion).

- 287 -
Contact

The behaviour of the contact surface

TIP

KEYOPT12:

Working with large deflections (NLGEOM,ON) often can stabilize your contact analyses,
since all contact formulations and settings refer to the current mesh.

- 288 -
Contact

Chapter 9
Aspects considering contact meshing

- 289 -
Contact

Contents
1. Element shape and element size
2. Contact meshing in Workbench

- 290 -
Contact

Element order

4-Nodes Quads 6-Nodes Trias

- 291 -
Contact

Element order
Example:
Contact with different element edge lengths and shape functions

20-Nodes Hex 8-Nodes Hex

10-nodes Tets 20-Nodes Hex

- 292 -
Contact
Element order

- 293 -
Contact

Element order
- It can be observed that it can be tricky to model the contact status and
all the resulting quantities (pressure, penetration) in a best way.
- Usually you get the better results using quadratic elements.

PLESOL,CONT,STAT

Note: linear quadratic

The global stiffness will be transferred correctly, since in a converged solution you
end up in a state of equilibrium. Here, we are just talking about local effects.

- 294 -
Contact

1. Element shape and element size


If contact is only used to transfer the force or stiffness, both triangular or quadrilateral
shaped elements can be used, because equilibrium is always achieved.

On the other hand, if the contact pressure is of interest, usually quadrilateral elements
give a much better pressure distribution in the sense of a more continuously distributed
pressure which originates from the uniformly distributed integration points.

TIP For better contact pressure distribution, uses the quadrilateral form.

Element solution Nodal solution Element solution Nodal solution


- 295 -
Contact

Element shape and element size


- It can be observed that contact results can even depend on the element shape
- This effect should vanish if you model locally a fine mesh in the contact region.

Note:

The global stiffness will be transferred correctly, since in a converged solution you
end up in a state of equilibrium. Here, we are just talking about local effects.

- 296 -
Contact

Element shape and element size


Example: exa29.dsdb
Contact results coming from different meshes

Load file: exa28.dsdb:

- 297 -
Contact

Element shape and element size


Note: exa29.dsdb
To obtain very good stress results locally
you usually need to work precisely considering the contact mesh:

- 298 -
Contact

Chapter 10
Classification of contact and target surface

- 299 -
Contact

Contents
1. General suggestions
2. Changing the contact and target surface
3. Asymmetric and symmetric contact
4. Discussion

- 300 -
Contact

1. General suggestions
• The contact status is checked with the target surface
at the contact elements.
• Therefore the target surface might
penetrate the contact surface.

TIP
Contact surface
To much penetration always occurs,
The target elements are not
if the target elements are much
touching the contact elements.
smaller compared with the
Of cause, this leads to the wrong
contact elements.
contact status.

- 301 -
Contact

General suggestions
Contact Target

n Convex surface n Concave or flat surface

n Fine mesh surface n Coarse mesh surface

n Softer surface n Stiffer surface


Rubber

Steel

- 302 -
Contact

General suggestions
Contact Target
Plane183
n Higher order surface n Lower order surface
Plane182

n Smaller surface n Larger surface

- 303 -
Contact

General suggestions
Example: exa31.dsdb
Asymmetric contact:

target
contact
target
contact
Good

contact
target
target
contact
Poor
If you define the contact and target surface reasonable the solution will converge faster:

- 304 -
Contact

Asymmetric and symmetric contact


Use symmetric contact only if:
– there is no unique classification in contact and target surface
ANSYS Inc:
Advantage: We recommend to work with asymmetric contact.
Symmetric contact is only used when you need its help to maintain contact.
– a better control over penetration is given For a good mesh and proper selection of contact versus target,
you generally do not need symmetric contact.
Disadvantage:
– different contact results might be obtained depending on the meshing

Asymmetric contact Symmetric contact

- 305 -
Contact

4. Discussion
Example:
Pure Penalty Method – about the choise of contact and target side

contact target
contact
target
UY=2.52
UY=3.48

- 306 -
Contact

4. Discussion
Example: exa32.inp
Pure Penalty Method – about the choice of contact and target side

- 307 -
Contact

Discussion
Example: exa32.inp
finish rect,0,10,0,0.5 !!! Target !!! /solu /post1
/clear rect,5,15,1,1.5 lsel,s,line,,3 nsel,s,loc,x,0 /dscale,1,1
/prep7 amesh,all nsll,s,1 nsel,a,loc,x,15 plnsol,u,sum,2,1
et,1,182 type,2 d,all,all,0
et,2,169 real,2 allsel
et,3,171 esurf fk,8,fy,-100
keyopt,3,4,2
mp,ex,1,200000 !!! Contact !!! nlgeom,on
mp,prxy,1,0.3 lsel,s,line,,5 nsubst,10,100,1
r,2,,,0.01 nsll,s,1 outres,all,all
type,3 solve
real,2
esurf

- 308 -
Contact

Chapter 11
Further features of the contact elements

- 309 -
Contact

Contents
1. Keyoptions of contact elements
2. Real constants of contact elements
3. Discussion

- 310 -
Contact

1. Keyoptions of contact elements


At this stage we will discuss several remaining KEYOPTIONS of CONTA171/172 and
CONTA173/174. You can set these keyoptions using the contact manager
or using the element options

KEYOPT(1): degrees of freedom


KEYOPT(2): contact algorithm
KEYOPT(3): attached superelement
KEYOPT(4): contact detection point
KEYOPT(5): CNOF automated adjustment
KEYOPT(7): automatic time stepping
KEYOPT(8): asymmetric/symmetric contact
KEYOPT(9): initial penetration/gap
KEYOPT(10): contact stiffness update
KEYOPT(11): beam/shell thickness effect
KEYOPT(12): behaviour of contact surface

- 311 -
Contact

Keyoption K1: Element degrees of freedom


0
1
2
3
4
5
6

Possible values
for KEYOPT(1)

- 312 -
Contact

Friction induced
temperature

- 313 -
Contact
• Contact capabilities
– Thermal-Structure contact

- 314 -
Contact

Keyoption K3: Attached Superelement

0
1
2
3

Possible values
for KEYOPT(3)

- 315 -
Contact

Keyoption K3: Attached Superelement


Example: exa33.inp
Contact with superelements (substructuring)

Sub1

Sub2

- 316 -
Contact

Keyoption K3: Attached Superelement


Example: exa33.inp
finish lsel,s,line,,3 /filname,sub1,on /filname,use /filname,sub1 /post1
/clear nsll,s,1 /solu /prep7 /solu allsel
/prep7 type,2 antype,substr et,4,50 antype,substr file,sub1,rst
et,1,182 esurf seopt,sub1,1 type,4 expass,on set
et,2,169 lsel,s,line,,5 asel,s,area,,1 se,sub1 expsol,1,1 file,sub2,rst
et,3,171 nsll,s,1 allsel,below,area se,sub2 seexp,sub1,use set
keyopt,3,3,2 type,3 solve asel,s,area,,1 plnsol,u,y
esurf finish /solu allsel,below,area
mp,ex,1,200000 antype,static solve
mp,prxy,1,0.3 allsel /filname,sub2 sfe,33,1,selv,,1 finish
nsel,s,loc,y,0.5 asel,s,area,,2 sfe,34,1,selv,,1
rect,0,1,0,0.5 m,all,all allsel,below,area esel,s,type,,2,4 /filname,sub2
rect,0.2,0.8,0.5,1 finish /solu nsle,s,1 /solu
esize,0.2 solve solve antype,substr
amesh,all finish finish expass,on
nsel,s,loc,y,0 expsol,1,1
d,all,all,0 seexp,sub2,use
nsel,s,loc,y,1 asel,s,area,,2
sf,all,pres,1 allsel,below,area
allsel solve

- 317 -
Contact

Keyoption K4: Cnt Detection or CERIGID/RBE3

0
1
2

Possible values
for KEYOPT(4)

- 318 -
Contact

Keyoption K4: Cnt Detection or CERIGID/RBE3


KEYOPTION(4) is not available interactively in Workbench: Use commands instead.

- 319 -
Contact

Keyoption K4: Cnt Detection or CERIGID/RBE3


KEYOPT(4)=0 Gauss point
Better for convergence. Default setting.

KEYOPT(4)=1
It can make the problem hard to converge.

KEYOPT(4)=0 KEYOPT(4)=1 KEYOPT(4)=0 KEYOPT(4)=1

- 320 -
Contact

Keyoption K4: Cnt Detection or CERIGID/RBE3


You should use this option only to deal with
corner, point-surface, or edge-surface contact:

KEYOPT(4) = 1 specifies that the contact normal


be perpendicular to the contact surface.

KEYOPT(4) = 2 specifies that the contact normal


be perpendicular to the target surface.

The direction is the direction of the transmitted contact force

TIP
When working with a bonded MPC contact the KEYOPT(4) will become a
different meaning. We will talk about that later on when dealing with
MPC applications.

- 321 -
Contact

Keyoption K4: Cnt Detection or CERIGID/RBE3


Example: exa34.inp
Contact elements - keyoption K4

Contact
Target

- 322 -
Contact

Keyoption K4: Cnt Detection or CERIGID/RBE3


Example: exa34.inp
finish rect,0,10,0,.5 !!! Target !!! /solu /post1
/clear rect,5,15,1,1.5 lsel,s,line,,3 nsel,s,loc,x,0 /dscale,1,1
/prep7 amesh,all nsll,s,1 nsel,a,loc,x,15 /edge,1,1
et,1,182 type,2 d,all,all,0 plnsol,u,sum,2,1
et,2,169 real,2 allsel
et,3,171 esurf fk,8,fy,-100
keyopt,3,4,0
mp,ex,1,200000 !!! Contact !!! nlgeom,on
mp,prxy,1,0.3 lsel,s,line,,5 nsubst,10,100,1
r,2,,,0.01 nsll,s,1 outres,all,all
type,3 solve
real,2
esurf

- 323 -
Contact

Keyoption K4: Cnt Detection or CERIGID/RBE3

K4=0 K4=1 K4=2

- 324 -
Contact

Keyoption K5: Auto CNOF/ICONT adjustment K5

0
1
2
3
4

Possible values
for KEYOPT(5)

- 325 -
Contact

Keyoption K5: Auto CNOF/ICONT adjustment K5


One setting for KEYOPT(5) is interactively available in Workbench (advanced contact):

KEYOPT(5)=1

- 326 -
Contact

Keyoption K5: Auto CNOF/ICONT adjustment K5


Using KEYOPT(5) you move the contact elements from their physical surface:
KEYOPT(5)=0 Do not move the contact elements
KEYOPT(5)=1 Move contact elements outwards to close little gaps
KEYOPT(5)=2 Move contact elements back to reduce penetration
KEYOPT(5)=3 Works with KEYOPT(5)=1 and KEYOPT(5)=2 together
KEYOPT(5)=4 Move contact elements according to ICONT.

- 327 -
Contact

Keyoption K5: Auto CNOF/ICONT adjustment K5

TIP

Use KEYOPT(5):

1. to avoid a rigid body motion introduced by small gaps in your model.

Note:

Also you will not see it in the resulting plots: With this KEYOPTION you can make
your model “thicker” or “thinner”. Hence, the name “Close Gap” might sound a bit
tricky, since the gap will be seen in the resulting plot. Think about it, as if the gap
is closed numerically.

- 328 -
Contact

Keyoption K5: Auto CNOF/ICONT adjustment K5


Example: exa35.inp
Contact elements - keyoption K5

KEYOPT(5)=0 KEYOPT(5)=1

PLNSOL,U,SUM

KEYOPT(5)=0 KEYOPT(5)=2

- 329 -
Contact

Keyoption K5: Auto CNOF/ICONT adjustment K5


Example: exa35.inp
finish rect,0,40,0,10 !!! Target !!! /solu /post1
/clear cyl4,20,offset,20,180,,360 lsel,s,line,,3 nsel,s,loc,y,0 /dscale,1,1
offset=31 esize,2.5 nsll,s,1 d,all,all,0 plnsol,u,sum,2,1
/prep7 mshkey,0 type,2 nsel,s,loc,y,offset
et,1,182 amesh,all real,2 d,all,ux,0
et,2,169 esurf d,all,uy,-5
et,3,171 allsel
keyopt,3,5,0 !!! Contact !!!
mp,mu,2,0.0 lsel,s,line,,5 nlgeom,on
r,2,,,0.01 nsll,s,1 autots,off
mp,ex,1,210000 type,3 nsubst,10
mp,prxy,1,0.3 real,2 outres,all,all
esurf solve

- 330 -
Contact

Keyoption K9: Initial penetration/gap

Possible values
for KEYOPT(9)

0
1
2
3
4

- 331 -
Contact

Keyoption K9: Initial penetration/gap


KEYOPT(9) is not available interactively in Workbench: Use commands instead.

- 332 -
Contact

Keyoption K9: Initial penetration/gap


KEYOPT(9)=0:
- Includes both initial geometrical penetration or gap and offset
0.2

0.31643E-01
0.68357E-01

The initial geometrical penetration is 0.1

Check: 0.31643E-01+0.68357E-01=0.1

The initial geometrical penetration is corrected.


Penetration is zero in the end of the analysis

- 333 -
Contact

Keyoption K9: Initial penetration/gap


KEYOPT(9)=0:
- Includes both initial geometrical penetration or gap and offset
0.2

0.12655
0.26549E-01

The initial geometrical gap is 0.1

The geometrical gap is closed. This is the meaning of „Include geometrical gap“

- 334 -
Contact

Keyoption K9: Initial penetration/gap


KEYOPT(9)=0:
- Includes both initial geometrical penetration or gap and offset
0.2

0.10886
0.91143E-01

The initial geometrical penetration is 0.1

Check: 0.10886+0.91143E-01 =0.2 CNOF=0.1

The initial geometrical penetration is corrected. The offset is set at the contact elements
The gap is equal to CNOF at the end of the analysis

- 335 -
Contact

Keyoption K9: Initial penetration/gap


KEYOPT(9)=0:
- Includes both initial geometrical penetration or gap and offset
0.2

0.53099E-01
0.53099E-01

The initial geometrical gap is 0.1

CNOF=0.1

The geometrical gap is hold. This is the meaning of „Include geometrical gap“

- 336 -
Contact

Keyoption K9: Initial penetration/gap


KEYOPT(9)=1
-Exclude both initial geometrical penetration or gap and offset
0.2

0.45572E-01
0.45572E-01

The initial geometrical penetration is 0.1

The initial geometrical penetration is ignored.


Penetration is numerically zero in the end of the analysis

- 337 -
Contact

Keyoption K9: Initial penetration/gap


KEYOPT(9)=1 Workbench default for contact type: Bonded, No Separation
-Exclude both initial geometrical penetration or gap and offset [if KEYOPT(12)=4,5]
0.2

0.55662E-01
0.55662E-01

The initial geometrical gap is 0.1

The initial geometrical gap is not closed. It is, as if material is between the two bodies.
Penetration is numerically zero in the end of the analysis.
This setting is the reason why gaps are not closed in Workbench, also it
actually works with Bonded (Always) and No Separation (Always).

- 338 -
Contact

Keyoption K9: Initial penetration/gap


KEYOPT(9)=2 Workbench default for contact type: Frictionless, Rough, Frictional
-Include both initial geometrical penetration or gap and offset

-but with ramped effects,number of the ramped steps is defined with NSUBS command,
NSUBST,3 means the effect is ramped in 3 steps. This improves the convergence.

Typical application

- 339 -
Contact

Keyoption K9: Initial penetration/gap


KEYOPT(9)=3
-Include offset only (exclude initial geometrical penetration or gap)
0.2

0.27888E-01
0.72112E-01

The initial geometrical penetration is 0.1

Check: 0.27888E-01+0.72112E-01=0.1 CNOF=0.1

The initial geometrical penetration is ignored. The offset is set at the contact elements
Since CNOF is equal to the geometrical penetration the bodies are seen in a touched position

- 340 -
Contact

Keyoption K9: Initial penetration/gap


KEYOPT(9)=3
-Include offset only (exclude initial geometrical penetration or gap) [if KEYOPT(12)=4,5]
0.2

0.16508E-01
0.83492E-01

The initial geometrical gap is 0.1

Check: 0.16508E-01+0.83492E-01=0.1 CNOF=0.1

The initial geometrical gap is ignored. The offset is set at the contact elements
The gap is numerically equal to zero in the end of the analysis.

- 341 -
Contact

Keyoption K9: Initial penetration/gap


KEYOPT(9)=4
-Include offset only (exclude initial geometrical penetration or gap) [if KEYOPT(12)=4,5]

-but with ramped effects,number of the ramped steps is defined with NSUBS command,
NSUBST,3 means the effect is ramped in 3 steps. This improves the convergence.

CNOF

Substeps
Sub1 Sub2 Sub3

- 342 -
Contact

Keyoption K9: Initial penetration/gap

TIP

Use KEYOPT(9)=1 – exclude both initial geometrical penetration,gap,offset, if:

1. the initial penetration produces unnecessary high stress or plastic strain.


2. you know that geometrical penetration leads to a pre-strained structure

Note:

For artificial large initial penetration KEYOPT(9)=2 should be used


to avoid convergence difficulties.

- 343 -
Contact

Keyoption K9: Initial penetration/gap

TIP

Note:

For artificial large initial penetration KEYOPT(9)=2 should be used.

This can make the numerical behavior more robust.

- 344 -
Contact

Keyoption K9: Initial penetration/gap


Example: exa37.inp
Contact elements - keyoption K9

SUBSTEP 1 SUBSTEP 2 SUBSTEP 3

Run the analysis using KEYOPT(9)=0 and KEYOPT(9)=2 with 3 substeps and watch
the system behaviour. Explain the obtained results.

- 345 -
Contact

Keyoption K9: Initial penetration/gap


Example: exa37.inp
finish rect,0,3,0,3 !!! Target !!! /solu /post1
/clear rect,2.5,4,-1,4 lsel,s,line,,8 lsel,s,line,,1,5,4 /dscale,1,1
/prep7 esize,0.4 nsll,s,1 nsll,s,1 /plopts,minm,0
et,1,182 amesh,all type,2 d,all,uy,0 plnsol,u,x,2,1
keyopt,1,1,2 real,2
keyopt,1,3,1 esurf nlgeom,on
et,2,169 autots,off
et,3,171 !!! Contact !!! nsubst,3
keyopt,3,2,4 lsel,s,line,,2 outres,all,all
keyopt,3,9,0 nsll,s,1 allsel
mp,ex,1,200000 type,3 solve
mp,prxy,1,0.3 real,2
r,2,,,,,,-2.0 esurf

- 346 -
Contact

Keyoption K10: Contacting stiffness update

Possible values
for KEYOPT(10)

0
2
1
3
2
4
3
4
5

- 347 -
Contact

Keyoption K10: Contacting stiffness update


Three setting for KEYOPT(10) is interactively available in Workbench

KEYOPT(10)=0
KEYOPT(10)=2
KEYOPT(10)=1

- 348 -
Contact

Keyoption K10: Contacting stiffness update

TIP

About KEYOPT(10):

We generally recommend to work with KEYOPT(10)=2 or KEYOPT(10)=5 if you


Want to solve a contact problem and want to work with a penalty based method.

- 349 -
Contact

Keyoption K10: Contacting stiffness update


Hertz Contact problem - linear material
PENE PRES KN1 KN2 KN3 KN4 ITER. SEQV Conv.

Default 0.97e-3 10886 0.112e8 0.112e8 0.112e8 0.112e8 42 6995 ok


P+L
Default 0.97e-3 10886 0.112e8 0.112e8 0.112e8 0.112e8 42 6995 ok
Penalty

Key10=1 0.15e-3 10979 0.13e7- 0.95e6- 0.13e7- 0.16e7- 75 7018 ok


P+L 0.112e8 0.143e7 0.195e7 0.24e7

Key10=1 0.0046 10674 0.13e7- 0.882e6- 0.13e7- 0.18e7- 37 6856 ok


Penalty 0.112e8 0.132e7 0.187e7 0.232e7

Key10=2 0.29e-3 11017 0.13e7- 0.17e8- 0.13e8- 0.84e7- 56 7023 ok


P+L 0.38e8 0.76e8 0.38e8 0.38e8

Key10=2 0.29e-3 11017 0.13e7- 0.17e8- 0.13e8- 0.84e7- 56 7023 ok


Penalty 0.38e8 0.76e8 0.38e8 0.38e8

Key10=4 0.15e-3 10979 0.13e7- 0.11e7- 0.15e7- 0.17e7- 75 7019 ok


P+L 0.112e8 0.14e7 0.19e7 0.24e7

Key10=4 0.0046 10674 0.13e7- 0.1e7- 0.15e7- 0.18e7- 37 6856 ok


Penalty 0.112e8 0.13e7 0.19e7 0.232e7

Key10=5 0.2e-3 11542 0.17e8- 0.112e8- 0.17e8- 0.17e8- 51 7027 ok


P+L 0.15e9 0.1e9 0.15e9 0.76e8

Key10=5 0.2e-3 11542 - - - - 51 7027 ok


Penalty

- 350 -
Contact
Keyoption K10: Contacting stiffness update
Example:
exa39.inp
Contact elements - keyoption K10

ITER. Conv.

Default 382 y 400


Iter
P+L
350
Key10=1 150 y
P+L 300
Key10=2 145 y 250
P+L
200
Key10=3 365 y
P+L 150
100
Key10=4 395 y
P+L 50
Key10=5 363 y 0
P+L
K10=0 K10=1 K10=2 K10=3 K10=4 K10=5

Work with KEYOPT(10).


Observe the numerical behavior of the system.

- 351 -
Contact
300
Iter
250

200

150

100

50

0
K10=0 K10=1 K10=2 K10=3 K10=4 K10=5

Usum
14

12

10

0
K10=0 K10=1 K10=2 K10=3 K10=4 K10=5

120 Stress

105
90
75
60
45
30
15
0
K10=0 K10=1 K10=2 K10=3 K10=4 K10=5

- 352 -
Contact

Keyoption K10: Contacting stiffness update


Example: exa39.inp
finish rect,0,30,0,1 !!! Target !!! /solu /post1
/clear rect,5,40,2,2.75 lsel,s,line,,3 nsel,s,loc,x,0 /dscale,1,1
/prep7 esize,0.5 nsll,s,1 nsel,a,loc,x,40 plnsol,u,sum,2,1
et,1,182 amesh,1 type,2 d,all,all,0
keyopt,1,1,2 esize,0.25 real,2 nsel,s,loc,y,2.75
et,2,169 amesh,2 esurf sf,all,pres,8
et,3,171 allsel
keyopt,3,10,2 !!! Contact !!!
r,2,,,0.001,-0.01,,-2 lsel,s,line,,5 nlgeom,on
mp,ex,1,200000 nsll,s,1 nsub,40,550,5
mp,prxy,1,0.3 type,3 outres,all,all
mp,mu,1,0.1 real,2 solve
esurf

- 353 -
Contact

Keyoption K10: Contacting stiffness update


Example: exa40.inp
finish rect,0,40,0,10 !!! Target !!! /solu /post26
/clear cyl4,20,offset,20,180,,360 lsel,s,line,,3 nsel,s,loc,y,0
offset=30 esize,2.5 nsll,s,1 d,all,all,0 !!! Contact stiffness !!!
esol,2,219,100,nmisc,11,KN_I
/prep7 amesh,all type,2 nsel,s,loc,y,offset esol,3,219,101,nmisc,12,KN_J
et,1,182 mat,2 d,all,ux,0
et,2,169 real,2 d,all,uy,-5 esol,4,220,99,nmisc,11,KN_I
et,3,171 esurf allsel esol,5,220,100,nmisc,12,KN_J
keyopt,3,10,2
prvar,2,3,4,5
mp,ex,1,200000 !!! Contact !!! nlgeom,on
mp,prxy,1,0.2 lsel,s,line,,5 autots,off
r,2,,,0.01 nsll,s,1 nsubst,10
type,3 outres,all,all
mat,2 solve
real,2
esurf

- 354 -
Contact

Keyoption K11: Beam/shell thickness effect

Possible values
for KEYOPT(11)

0
1

- 355 -
Contact

Keyoption K11: Beam/shell thickness effect


The beam/shell thickness effect is included in Workbench automatically.

- 356 -
Contact

Keyoption K11: Beam/shell thickness effect


KEYOPT(11)=0 KEYOPT(11)=1
- Exclude: Contact surface is the - Include: Contact surface is at the top or bottom
middle line/plane surface of the beam/shell

KEYOPT(11)=0, /ESHA,0 KEYOPT(11)=1, /ESHA,0

KEYOPT(11)=0, /ESHA,1 KEYOPT(11)=1, /ESHA,1

- 357 -
Contact

Keyoption K11: Beam/shell thickness effect


Example: exa41.inp
Contact elements - keyoption K11

/ESHAPE,0 /ESHAPE,1

Keyoption(11) = 0 USUM
u=20

/ESHAPE,0 /ESHAPE,1

Keyoption(11) = 1 USUM

- 358 -
Contact

Keyoption K11: Beam/shell thickness effect


Example: exa41.inp
finish rect,0,100,0,200 !!! Target !!! /solu /post1
/clear esize,10 type,2 nsel,s,loc,x wprot,0,90,0
/prep7 amesh,all real,2 d,all,ux,0 nwpave,10000
et,1,181 tshap,sphere nsel,a,loc,x,100 /type,1,5
et,2,170 n,10000,50,100,55 e,10000 d,all,uz,0 /cplane,1
et,3,173 nsel,s,loc,y /dscale,1,1
keyopt,3,11,0 !!! Contact !!! d,all,uy,0n plnsol,u,sum
r,1,10,10,10,10 nsel,s,loc,x,0,100 nsel,a,loc,y,200
r,2,50,,1000.0 nsel,r,loc,y,40,160 d,all,uz,0
mp,ex,1,210000 type,3 allsel
mp,prxy,1,0.3 real,2
esurf d,10000,all,0
d,10000,uz,-20

time,20
autots,on
nsubst,10,100,1
outres,all,all
solve

- 359 -
Contact

1. Real constants of contact elements


At this stage we will discuss several remaining REAL CONSTANTS of CONTA171/172
and CONTA173/174. You can set these keyoptions using the contact manager
or using the element options

Already discussed in Chapter 6


Already discussed in Chapter 7

Already discussed in Chapter 6


Already discussed in Chapter 6

- 360 -
Contact

Real constants – R1 and R2


R1 à First radius of target surface (rigid target) – valid for a circle or a cylinder
Target
Target
Contact R1 Contact
R1

2D 3D
R2 à Second radius of target surface (rigid target) – valid for a cone

R1 Target
Contact R2

3D

- 361 -
Contact

Real constants – R1 and R2


Example: exa42.inp
Bonded contact in a nonlinear static analysis

P=1000
a=10

t=1

R1=3
R2=1

This exercise is to show you how to use primitives as rigid target elements.

- 362 -
Contact

Real constants – R1 and R2


Example: exa42.inp
finish rect,0,10,0,10 !!! Target !!! /solu /post1
/clear esize,0.5 n,10000,0,5,-3.5 nsel,s,loc,y,5 /dsclale,1,1
/prep7 amesh,all n,10001,11,5,-3.5 dsym,symm,y /view,1,1,1,1
et,1,181 type,2 d,node(0,5,0),all /eshape,on
et,2,170 real,2 allsel set,last
et,3,173 tshap,cone sfe,all,2,pres,,1000 plnsol,u,sum,2,1
keyopt,3,11,1 e,10000,10001
mp,ex,1,200000 nlgeom,on
mp,prxy,1,0.3 !!! Contact !!! nsubst,100,1000,1
r,1,1,1,1,1 asel,s,area,,1 outres,all,all
r,2,3,1,0.1 nsla,s,1 solve
type,3
real,2
esurf,,bottom

- 363 -
Contact

Real constants - FKN


FKN à Contact stiffness: “+” value for a scaling factor, “-” value for an absolute number

•High stiffness:
results in less penetration,
but may bring some
convergence difficulties
•Small stiffness:
Bulky model FKN=1 Bending model FKN=0.01 usually results in better
convergence behavior, but
large penetration are
accepted and additional
iterations may be needed to
reduce penetration.

- 364 -
Contact

Real constants - FTOLN


FTOLN à Allowed penetration:
à “+” value for a scaling factor, “-” value for an absolute number

Contact element
Allowed penetration = FTOLN*h
h Structural element

- 365 -
Contact
Real constants - FTOLN
• KEYOPT(2)=0: Augmented Lagrangian method:
– controls the penetration with additional iterations H=0,3
– not sensitive to the contact stiffness H=0,2
– allowed penetration FTOLN
• 0.1 (default) PENE=0,0018
<0,1*h=0,02
• hard to converge if a small value is used
KEYOPT(2)=0 FKN=0,1
• KEYOPT(2)=1: Penalty method:
– suitable for problems with a bad mesh and strong friction
– suitable if a soft material comes into contact with a hard one

H=0,5

PENE=0,0267
<0,1*h=0,05
KEYOPT(2)=0 FKN=0,1 KEYOPT(2)=1 FKN=0,1 KEYOPT(2)=0 FKN=1 KEYOPT(2)=1 FKN=1

- 366 -
Contact

Real constants - FTOLN

TIP

FTOLN factor – the penetration tolerance:

1) Usually, you should not play with this parameter. The analysis will not converge, if
you use a very small value. If you change FTOLN, you do not change the system
stiffness, the contact surface is as stiff as before.

2) It is a tolerance number and can be achieved only in some contact regions.


It will be checked in every iteration.

- 367 -
Contact

Real constants – PINB


The pinball can be set interactively in Workbench:

REAL 6

- 368 -
Contact

Real constants – PINB


The default setting of the pinball is determined by the depth of the underlying element:

Contact element
2*h
h Structural element
h

It is a kind of searching domain:

If contact and target elements of a contact pair


are inside the pinball, these elements “see”
each other and the contact algorithm can
work to minimize the penetration.

- 369 -
Contact

Real constants – PINB

TIP

PINB factor – pinball region:

This is one of the most important parameters to get the desired contact result,
if you want to use large load steps and a fine mesh to run the analysis.

Usually, you can always use a large value for PINB to run the analysis.
There is only one problem: If you use large values, the time to search
for contact will increase.

- 370 -
Contact

Real constants - CNOF


The contact surface offset can be set interactively in Workbench (advance contact):

REAL 10

- 371 -
Contact

Real constants - CNOF


CNOF à Contact-Surface-Offset

CNOF moves the contact surface toward or away from the target surface.

- 372 -
Contact

Real constants - CNOF


Example: exa47.inp
Use CNOF to simulate the pretension force for bolted connection
1) Use an arbitrary CNOF value to run the analysis.
2) Get the screw force F
3) Calculate the factor K= DESIRED SCREW FORCE / F
4) Run the analysis with CNOF*K

CNOF

- 373 -
Contact

Real constants - CNOF


Example: exa47.inp
finish rect,-5,5,0,3 !!! Target !!! !!! Target !!! /solu /post1
/clear rect,-1,1,0,9 lsel,s,line,,11,15,4 lsel,s,line,,22,25,3 nsel,s,loc,y,0 nsel,s,loc,y,4.5,5
CNOF=0.01 rect,-5,-1.1,3,7 nsll,s,1 nsll,s,1 d,all,all,0 nsel,r,loc,x,-1,1
F=1000 rect,1.1,5,3,7 type,2 type,2 allsel esln,s,1
/prep7 rect,-2,2,7,9 real,1 real,2 nsel,r,loc,y,5
et,1,182 aovl,1,2 esurf esurf solve fsum
et,2,169 aovl,5,9 *get,for,fsum,,item,fy
et,3,171 esiz,.5 !!! Contact !!! !!! Contact !!! factor=f/abs(for)
r,1 amesh,all lsel,s,line,,30,32,2 lsel,s,line,,9,13,4
rmod,1,10,CNOF nsll,s,1 nsll,s,1 /solu
mp,ex,1,200000 type,3 type,3 rmod,1,10,factor*cnof
mp,prxy,1,0.3 real,1 real,2 allsel
esurf esurf solve

- 374 -
Contact

Chapter 12
Further features of the target elements

- 375 -
Contact

Contents
1. Keyoptions of target elements
2. Real constants of target elements

- 376 -
Contact

1. Keyoptions of target elements


At this stage we will discuss several KEYOPTIONS of TARGET169/170.
You can set these keyoptions using the contact manager
or using the element options.

- 377 -
Contact

Keyoption K1: Element order


KEYOPTION(1) is not available interactively in Workbench: It is not needed.

Low order 0
High order 1

Possible values
for KEYOPT(1)

- 378 -
Contact

Keyoption K2: Boundary conditions for rigid target nodes


KEYOPTION(2) is not available interactively in Workbench: It is not necessary.

Auto constrained 0
User definition 1

Possible values
for KEYOPT(2)

- 379 -
Contact

Keyoption K2: Boundary conditions for rigid target nodes


KEYOPTION(2) is not available interactively in Workbench: It is not necessary.

- 380 -
Contact

Keyoption K2: Boundary conditions for rigid target nodes


• KEYOPT(2)=0, boundary conditions for rigid target nodes: automatically constrained
• Standard contact application
Pilot node Pilot node

Displacement UY
Rotation ROTZ
on pilot node
on pilot node
Pilot node
Pilot node

Force FY Moment MZ
on pilot node on pilot node

- 381 -
Contact

Keyoption K2: Boundary conditions for rigid target nodes


• KEYOPT(2)=1, boundary conditions for rigid target nodes: specified by user
• Standard contact application
Pilot node
Pilot node ROTZ=0
UY=0

Displacement UY
Rotation ROTZ
on pilot node
on pilot node
Pilot node UY=0
Pilot node ROTZ=0

Force FY Moment MZ
on pilot node on pilot node

- 382 -
Contact

Keyoption K2: Boundary conditions for rigid target nodes


Example: exa51.inp
Boundary conditions for rigid target nodes

Pilot Node (before)

Target
Segment

Pilot Node (after)

Bonded (always)

- 383 -
Contact

Keyoption K2: Boundary conditions for rigid target nodes


Example: exa51.inp
finish rect,0,10,0,0.5 !!! Target !!! /solu /post1
/clear esize,0.2 n,1000,10,-0.1,0 nsel,s,loc,x,0 /dscale,1,1
/prep7 amesh,all n,1001,10,0.6,0 d,all,all,0 plnsol,u,sum,2,1
et,1,182 type,2 allsel
et,2,169 real,2 f,2000,fy,-130
keyopt,2,2,1 tshape,line
et,3,171 e,1001,1000 nlgeom,on
keyopt,3,12,5 n,2000,5,3,0 nsubst,10,100,1
mp,ex,1,200000 outres,all,all
mp,prxy,1,0.3 tshape,pilot solve
e,2000

!!! Contact !!!


nsel,s,loc,x,10
type,3
real,2
esurf

- 384 -
Contact

Chapter 13
Rigid body motion

- 385 -
Contact

Contents
1. Overview
2. Methods to avoid a rigid body motion
3. Discussion

- 386 -
Contact

1. Overview
Sometimes a part in a contact model is not uniquely constrained and some parts can
move without producing any elastic deformation. This motion is commonly called a rigid
body motion. A rigid body motion is not allowed in a static analysis.
Usually, there are 3 types of rigid body motions:

–a.) The parts are initially not in contact (gap)


–b.) The initial penetration large which results in a large contact force
–c.) The friction force is too small compared with the external force
F F
F

F
<F

a b c
- 387 -
Contact

2. Methods to avoid a rigid body motion


• Use reasonable boundary condition:
Use 2 load steps: load step one to move the body together and then apply the load.

F U F

FE Model LS-1 LS-2

• Add a small friction to avoid the numerical instability

FE Model Without friction

- 388 -
Contact

Methods to avoid a rigid body motion


• Do a slow dynamic analysis to introduce the inertial force.

F F

FE Model Static
Add mass and damping in order to convert the solution from a static to a dynamic one.

• Use a specified displacement, if possible, instead of a force.

F U

Real problem FE model

You can switch from displacement control to force control (explained later).

- 389 -
Contact

Methods to avoid a rigid body motion


• Use artificial initial penetration to close the contact.

FE model FE model with FE model with


with initial gap geometrical penetration artificial penetration

- 390 -
Contact

Methods to avoid a rigid body motion


• Use artificial initial displacement to close the contact.
F 0
u
u
p

Specify a displacement Delete the displacement Set the reaction force to


to put the bodies into and apply the reaction zero and apply the
contact. force. real load.

- 391 -
Contact

Methods to avoid a rigid body motion


• Use weak spring to avoid the numeric noise.
F

The stiffness of the springs should be small compared to the stiffness of the system.
In Workbench weak springs are set
by default to stabilize the system.
Since Workbench 10.0 the user
can set the spring stiffness manually.
Together with a reasonable PINBALL
and SUBSTEP SETTING especially
force driven contact problems can
be solved more efficiently

- 392 -
Contact

Methods to avoid a rigid body motion


Example: exa57.inp
Weak spring method to prevent a system from a rigid body motion

K=1, DELT=0.1
F=K*U

To close the gap:


F1=1*0.1+0.01=0.11
F2=-1*0.1+0.01=-0.11

LS1: F1=0.11 LS2: F1=3000 LS3: F2=-0.11 LS4: F2=-5000

- 393 -
Contact

Methods to avoid a rigid body motion


Example: exa57.inp
finish pcir,1,2-DELT,-90,90 !!! Target !!! /solu /post1
/clear pcir,2,3,-90,90 lsel,s,line,,7 nsel,s,loc,x,0 /dscale,1,1
DELT=0.1 rect,0,1,-7,-2.5 nsll,s,1 d,all,ux,0 set,first
/prep7 aadd,2,3 type,2 nsel,s,loc,y,-7 plesol,cont,stat
et,1,183 esize,.3 real,2 d,all,all,0 set,next
et,2,169 amesh,all esurf allsel plesol,cont,stat
et,3,172 set,next
mp,ex,1,200000 psprng,48,tran,1,0,0.5 !!! Contact !!! f,42,fy,0.11 plesol,cont,stat
mp,prxy,1,0.3 lsel,s,line,,1 solve set,next
r,2,,,,,,-1 nsll,s,1 f,42,fy,2000 plesol,cont,stat
type,3 solve
real,2 fdel,all,all
esurf f,48,fy,-.11
solve
f,48,fy,-3000
solve

- 394 -
Contact

3. Discussion
You will never be able to solve the pure rigid body motion in a contact problem.
When possible one should always try to close initial gaps:

a) Use the REAL CONSTANT CNOF to close the geometric gap.


b) Use KEYOPT(5)=1 to close the geometric gap automatically.

If the geometry is already overlapping work with KEYOPT(9)=1.


This ensures to ignore artificial stresses.

Also remember to set reasonable values for the weak springs, the substeps and the
Pinball region to catch a body before loosing it in a rigid body motion.

- 395 -
Contact

Chapter 14
Let us talk about convergence

- 396 -
Contact

Reasons for convergence problems


FE Model is not modeled correctly in a physical sense:
If you use a point load to do a plastic analysis, you will never get the converged solution.
Because of the singularity at the node, on which the concentrated force is applied, the
stress is infinite. The local singularity can destroy the whole system convergence
behavior. The same thing holds for the contact analysis. If you simplify the geometry or use
a too coarse mesh (with the consequence that the contact region is just a point contact
instead of an area contact) you most likely will end up with some problems in convergence.

point load
σ Geometry Mesh

ε
plastic analysis contact analysis

- 397 -
Contact

Reasons for convergence problems


FE Model is not modeled correctly in a numerical sense:
A possible rigid body motion is quite often the reason which causes divergence in a
contact analysis. This could be the result of the following: We always believe, that if we
model the gap size as zero from geometry, it should also be zero in the FE model. But due
to the mathematical approximation and discretization, it does not have necessarily to be
zero anymore. Exactly, this can kill the convergence. Use KEYOPT(5)=1 to close the gap.

KEYOPT(5)=0 KEYOPT(5)=1

- 398 -
Contact

One reason for convergence difficulties could be the following:

• FE Model is not modeled correctly in a numerical sense

ω
Status

KEYOPT(5)=0 KEYOPT(5)=1

- 399 -
Contact
Caution:
• If the gap physically exists, you should not use KEYOP(5)=1 to close it,instead, you
should used the weak spring method. DELT=0.1
Esurf
/prep7
R,2,,,,,,-1
et,1,183
/solu
LS1: F1=0.11 et,2,169
Nsel,s,loc,x,0
et,3,172
D,all,ux
mp,ex,1,2e5
nsel,s,loc,y,-7
pcir,1,2-DELT,-90,90
d,all,all
K=1, DELT=0.1 pcir,2,3,-90,90
Alls
F=K*U rect,0,1,-7,-2.5
F,42,fy,0.11
To close the gap: aadd,2,3
Solv
esiz,.3
F1=1*0.1+0.1=0.11 ames,all
F,42,fy,2000
Solv
Psprng,48,tran,1,0,0.5
Fdel,all,all
lsel,s,,,1
F,48,fy,-.11
nsll,s,1
Solv
Real,2
F,48,fy,-3000
LS2: F1=3000 type,3
solv
esurf
lsel,s,,,7
nsll,s,1
type,2

- 400 -
Contact

How to avoid the rigid body motion?


• Use reasonable boundary condition, e.g. use 2 load steps, load step 1 to
move the body together and then apply the load.

F U F

FE Model LS-1 LS-2

• Add a small friction to avoid the numeric instability

FE Model Without friction

- 401 -
Contact
Be careful with friction
Sometime the friction can completely change the system characteristics. The following
example shows the behavior of the system response with and without friction effect.

Contact: Contact:
Without friction With friction

System Without friction With friction

- 402 -
Contact

Reasons for convergence problems


A rigid body exists for a part of the structure:
The problem is that some parts of a structure can also move to their final position in a rigid
body motion, as shown blow. In this case, you should use weak springs, to prevent those
parts to do a rigid body motion. Use a reasonable weak spring stiffness together with
a reasonable substep setting and pinball region.

Rigid body
Weak springs
Rigid body

- 403 -
Contact
• Do a slow dynamic analysis to introduce the inertial force.
You will need to add mass and damping
F F in order to convert the solution from a
static to a dynamic solution. This is
known as a slow dynamic solution.
FE Model Static

• Use a specified displacement, if possible, instead of a force.


This technique uses imposed
F U displacements to move the body
and as result you get the reaction
force
Real problem FE model
• Use weak spring to avoid the numeric noise.
F The stiffness of the springs should be negligible compared to the
stiffness of the system. By connecting the springs to ground, the
reactions at the grounded nodes can be compared to the total
reaction forces to ensure that the springs have no effect on the
solution.The open-spring contact option could also be used.

- 404 -
Contact

• Use artificial initial penetration to close the contact.

FE model with initial gap FE model with geometrical FE model with artificial
penetration penetration

• Use the no separation option (KEYOPT 12) with a low real constant
FKOP

- 405 -
Contact

Reasons for convergence problems


Numerically bad conditioned FE-model:
ANSYS uses the penalty method as a basis to solve the contact problem and the
convergence behavior largely depends on the penalty stiffness itself.
A sign for bad conditioning is that the convergence curve runs parallel to the the convergence
norm and/or is oscillating. Choosing a smaller value for FKN makes the problem easier to converge.

FKN=1 FKN=0.001

- 406 -
Contact

Reasons for convergence problems


Numerically bad conditioned FE-model:

FKN=.1 FKN=0.0001

FKN=.1 FKN=0.0001

- 407 -
Contact

Reasons for convergence problems


Substep is too big à “Error in element formulation”:
If it is a large deflection problem you usually need more substeps to avoid element distortion
because of too large load increments. Work with more substeps:

NLGEOM,ON
NSUBST,1,1,1 NLGEOM,ON
NSUB,10,100,1

- 408 -
Contact

Reasons for convergence problems


Quads instead of Triangles à “Error in element formulation”:
If some elements are locally distorted you might get an error in the element formulation.
Try to use a coarser mesh in this region to avoid those problems.
In general try to use quadratic triangles. Outlook: à Remeshing

Linear quads Quadratic triangles

- 409 -
Contact

Reasons for convergence problems


Missing contact and poor mesh à “…elements have become highly distorted.”
In this finite element model two aspects can be mentioned which are responsible for
a non converging finite element solution:

Contact

FE Model Last converged solution Problem

*** ERROR ***


One or more elements have become highly distorted.

- 410 -
Contact

Reasons for convergence problems


Missing contact and poor mesh à “…elements have become highly distorted.”
Solution process for this contact situation:

Contact
Contact

FE Model Reason Solution Result

- 411 -
Contact

Reasons for convergence problems


Instable system:
Work with friction to avoid a rigid body motion. This can also ensure convergence:

MU=0 MU=0.1

- 412 -
Contact

Reasons for convergence problems


Instable solution:
Sometimes, the solution could be instable, if the contact region changes abruptly.
In this case, you can use more load steps strategy to get rid of the instable solution.

FE model Instable point Next solution

- 413 -
Contact

Reasons for convergence problems


Instable solution:

FE model Load step-1, ends shortly Load step-2, starts shortly


before the snap through after the snap through.

- 414 -
Contact
/prep7 lsel,s,,,5
TIP et,1,182,2 nsll,s,1
/solu exa62.inp
et,2,169 nlgeom,on
type,2 nsub,100,100,1
et,3,171,,1,,1 esurf
mp,ex,1,2e5 outres,all,all
lsel,s,,,2,3 nsel,s,loc,y,0
mp,mu,1,.1 nsll,s,1
In order to model the contact region mp,prxy,1,.3 d,all,all
type,3 lsel,s,,,6,,,1
r,1,,,.001,,,-2
reasonably, you should define two contact r,2,,,.001,,,-2
esurf d,all,ux
pairs, one for load step-1 and another for lsel,s,,,2 d,all,uy,-.5
rect,0,1,0,3 nsll,s,1
load step-2, and use the node detection wpof,1,3 alls
type,2 solv
wprot,-20
option(KEYOPT(4)=1, as shown below. rect,-.2,3,0,.2
real,2 /COM Load step-2
esurf lsel,s,,,6,,,1
esize,.2 lsel,s,,,5,8,3
amesh,1 d,all,ux
nsll,s,1 d,all,uy,-1
esize,.1 type,3
ames,all alls
esurf nsub,10,10,1
solv

Status-1

Contact-1 Target-1 Status-2


Target-2 Contact-2
- 415 -
Contact

Reasons for convergence problems


Not reasonable defined contact pair:
Sometimes it is also important to think about possible contact configurations:
Which surface or point will be in contact with which surface ???
The way to define the contact or target can influence the convergence behavior as shown below.

Target

Contact

Contact

Target

- 416 -
Contact

Reasons for convergence problems


Not reasonable defined contact pair:

Target

Contact

Target
F
Contact

Sometimes, if you define the contact and target properly,


the analysis convergences much faster.

- 417 -
Contact

Reasons for convergence problems


Not reasonable defined contact pair:

Contact Target
Target Contact

Sometimes, if you define the contact and target properly,


the analysis convergences much faster and the result is much better.

- 418 -
Contact

Reasons for convergence problems


Not reasonable defined material model:
Sometimes you can improve the convergence behavior simply by playing with the material
properties. Using a plastic material instead of an elastic one makes the contact region softer and
better convergence behavior is obtained.

Elastic

Plastic

- 419 -
Contact

Reasons for convergence problems


Not reasonable defined material model:
It is not always a good idea to define the tangential stiffness to be zero using a plastic
material law. If the yield stress is reached all over the whole cross section, there is no
material resistance anymore to carry the load. There will be a plastic hinge and so the
solution will never converge. In this case, input the correct tangential stiffness.

Plastic strain Plasticity with no hardening

- 420 -
Contact

Reasons for convergence problems


Not reasonable defined material model:

Plastic strain

Plasticity with hardening

Contact region

Stress distribution

- 421 -
Contact

Reasons for convergence problems


Not reasonable used nonlinear solution settings:
By default, ANSYS will use Newton-Raphson method to solve a nonlinear problem.
If the nonlinear problem is a stability problem and is load driven, the Newton-Raphson will fail at
the point when the structure stiffness is zero or negative. The correct algorithm to overcome a
configuration with zero or negative stiffness is the arc length method (ARCLEN,ON).

How can I know, whether it is not the contact which causes the convergence difficulties ?
Work with a force deflection diagram and identify the instability point (/post26).

FKN=.01 FKN=.01
Newton-Raphson Arc length

- 422 -
Contact

Reasons for convergence problems


Rigid body motion after large deformation:
For large deformation problems specify a reasonable pinball radius and work with reasonable
substeps. If the analysis in not converging probably the contact is lost and the pinball was
too small and the substep size too big at the same time:

- 423 -
Contact

Reasons for convergence problems


Typical workflow in a contact problem:
A spiral spring is pressed in a cylindrical
surface in radial direction.

The pressing process is simulated via


initial penetration and the rigid body
motion is prevented with weak springs
on both ends of the spiral spring.

Rigid-Flexible Kontakt

Flexible-Flexible Kontakt

- 424 -
Contact

Reasons for convergence problems


Typical workflow in a contact problem: First try:

The contact is defined between the


cylinder and the spring surface, the
contact between the winding is not
defined.

We use default FKN and one substep.

Error in element formulation

Reason:
The initial penetration is large, so the large
penetration will be pressed back with a
certain force F=FKN*∆ which is too big.
This strong force destroys the elements,
since also just one substep is used.

- 425 -
Contact

Reasons for convergence problems


Typical workflow in a contact problem: Second try:

The contact is defined between the cylinder


and the spring surface, the contact between
the winding is not defined.

We use FKN=0.001 and one more substeps.

Solution does not converge

Reason:
The initial penetration is very large, but the
default pinball is too small to catch all contact
points. This leads to a wrong result.

- 426 -
Contact

Reasons for convergence problems


Typical workflow in a contact problem: Third try:

The contact is defined between the


cylinder and the spring surface, the
contact between the winding is not
defined.

We use FKN=0.001, Pinball=-3 and


one more substeps

Solution does not converge

Reason:
Because the contact between the windings is
not defined, the stiffness in the axial direction
is not correctly modeled. This leads to a
wrong result.

- 427 -
Contact

Reasons for convergence problems


Typical workflow in a contact problem: Fourth try:

The contact is defined between the


cylinder and the spring surface, and between
the windings.

We use FKN=0.001, Pinball=-3 and


mores substeps.

It converges.

- 428 -
Contact

Reasons for convergence problems


Is that really a contact problem:
Let us discuss this problem together:

- 429 -
Contact

Reasons for convergence problems


Example: exa61.inp
Missing contact region and instability for a reason of convergence difficulties

Non converged result Converged result


No contact region is defined Contact region is defined

- 430 -
Contact

Reasons for convergence problems


Example: exa61.inp
finish block,0,20,0,1,0,5 !!! Target !!! /solu /post1
/clear esize,0.5 asel,s,area,,3 nsel,s,loc,x,0 /dscale,1,1
/prep7 amesh,1,6,5 nsla,s,1 dsym,symm,x /view,1,1,1,1
et,1,181 amesh,3,4 type,2 nsel,s,loc,z,5 plnsol,u,sum,2,1
et,2,170 real,2 dsym,symm,z andata,0.5,,2,1,17,1,0,1
et,3,173 esurf,,bottom nsel,s,loc,x,0
keyopt,3,11,1 nsel,r,loc,y,0
r,1,0.1,0.1,0.1 0.1 !!! Contact !!! d,all,uy,0
r,2,,,0.001 asel,s,area,,4 nsel,s,loc,x,20
mp,ex,1,200000 nsla,s,1 *get,nn,node,,count
mp,prxy,1,0.3 type,3 f,all,mz,380/nn
real,2
esurf,,bottom nlgeom,on
arclen,on
outres,all,all
allsel
solve

- 431 -
Contact

Reasons for convergence problems


Example: exa64.inp
Contact problem sensitive to the mesh – displacement driven

not reasonable mesh, the


contact region is point

reasonable mesh, the


contact region is surface

- 432 -
Contact

Reasons for convergence problems


Example: exa64.inp
finish /input,'exa64mesh','inp' /post1
/clear /dscale,1,1
/prep7 /solu plnsol,u,sum,2,1
et,1,182 asel,s,area,,1,4
et,2,185 nsla,s,1
keyopt,2,2,2 d,all,all,0
et,3,170 asel,s,area,,124,130,3
et,4,173 asel,a,area,,132
keyopt,4,8,1 nsla,s,1
r,2,,,0.01,,,-3 d,all,all,0
mp,ex,1,200000 d,all,uy,-8
mp,prxy,1,0.3 allsel

nlgeom,on
nsubst,2,2,2
outres,all,all
solve

- 433 -
Contact

Chapter 15
Suggestions from our experience

- 434 -
Contact

2. Modelling a correct mesh rotation


Nice two know:
During a large rotation analysis, the rotated nodal coordinate system keeps in the original rotated
direction, and will not be updated according to the deformed position.

UX=0
allowed position

expected Position

All nodes keep its original rotated direction.

- 435 -
Contact

Modelling a correct mesh rotation


Nice two know:
In order to get the correct solution for this problem, you must model a compression only support
using a rigid/deformable contact formulation:

Allowed movement

Rigid target

Rigid target Correct rotation

- 436 -
Contact

Modelling a correct mesh rotation


Example: exa66.inp
Contact elements - keyoption K12

Displacements Contact

Deformation Stress

- 437 -
Contact

Modelling a correct mesh rotation


Example: exa66.inp
finish pcir,.5 !!! Target !!! /solu /post1
/clear agen,2,1,1,,10 type,2 sfgrad,pres,0,y,0,3.5e4 /dscale,1,1
/prep7 rect,-1,11,-1,1 real,2 lsel,s,,,10,12,2 plnsol,u,sum,2,1
et,1,183 asba,3,1 tshape,circ nsll,s,1
et,2,169 asba,4,2 n,10000,10 sf,all,pres
et,3,172 smrt,4 e,10000 allsel
keyopt,3,12,4 ames,all
mp,ex,1,200000 !!! Contact !!! nlgeom,on
r,2,.5 csys,1 lsel,s,line,,5,8 nsubst,10,100,1
mp,ex,1,200000 nsel,s,loc,x,0,.5 nsll,s,1 outres,all,all
mp,prxy,1,0.3 nrotat,all type,3 solve
d,all,ux real,2
csys,0 esurf

- 438 -
Contact

3. Bonded contact in a modal analysis


Example: exa67.inp
Bonded contact in a modal analysis

The second mentioned frequencies are comming


from the consistent mesh. The first frequency is
the result of the contact simulation.

F1=7531 Hz F3=7939 Hz F4=19843 Hz


F1=7599 Hz F3=7954 Hz F4= 20022 Hz

- 439 -
Contact

Bonded contact in a modal analysis


Example: exa67.inp
finish cylin,0,5,0,25 !!! Target !!! !!! Target !!! /solu
/clear cylin,0,5,35,60 asel,s,area,,2 asel,s,area,,5 anty,modal
/prep7 block,-10,10,-10,10,25,35 nsla,s,1 nsla,s,1 modopt,lanb,5
et,1,185 esiz,2 type,2 type,2 mxpand,5
et,2,170 vsweep,all real,2 real,3 nsel,s,loc,z,0
et,3,174 esurf esurf nsel,a,loc,z,60
keyopt,3,12,3 d,all,all,0
mp,ex,1,200000 !!! Contact !!! !!! Contact !!! allsel
mp,prxy,1,0.3 asel,s,area,,9 asel,s,area,,10 solve
mp,dens,1,7.8e-9 nsla,s,1 nsla,s,1
type,3 type,3 /post1
real,2 real,3 set,list
esurf esurf

- 440 -
Contact

Check the penetration


Check the penetration - a criterion to judge the correctness
You should always check the penetration against the elastic deformation on contact and
target surface. As we know, 100% change in penetration, leads to about 1% in stress
difference, but this is only valid, if the contact region is kept. Note, that the effect of large
penetration can significantly change of the contact behavior which might lead to a changing
stress distribution. Usually, the penetration should be within 10% of the elastic deformation.

Case 1: Max. Pene. is Case 2: Max. Pene. is Case 3: Max. Pene. is


0.1% of Max DOF 10% of Max DOF 50% of Max DOF

- 441 -
Contact

4. Contact stiffness and mesh density


Check element solution against the nodal solution: à FKN = 0.1
You can get a huge difference between the element solution and the nodal solution
(e.g. for the contact pressure), if you use a very fine mesh with a big contacting stiffness.

Reason:
If the mesh is very fine, it can be quite tricky to obtain for all integration points a solution with
almost zero penetration (big contact stiffness). This effect is shown on the following pages.
FKN=0.1

Element solution (Penetration) Element solution (Pressure)

Nodal solution (Penetration) Nodal solution (Pressure)

- 442 -
Contact

Contact stiffness and mesh density


Check element solution against the nodal solution: à FKN = 1
You see already in the middle of the structure that the penetration in the middle in the
element solution is not that smooth as in the previous run with FKN=0.1.

FKN=1

Element solution (Penetration) Element solution (Pressure)

Nodal solution (Penetration) Nodal solution (Pressure)

- 443 -
Contact

Contact stiffness and mesh density


Check element solution against the nodal solution: à FKN = 100
If you run the problem with a very big stiffness this effect is getting quite strong.

Note: Always check first the element solution in ANSYS

FKN=100

Element solution (Penetration) Element solution (Pressure)

Nodal solution (Penetration) Nodal solution (Pressure)

- 444 -
Contact

5. Convergence does not mean correct results


How can I improve the results of a contact analysis ???
A converged solution does not always mean that the result is completely correct. You should
always look at the deformed configuration along the contact surface. An unreasonable result
usually can be improved just by changing the contact and target definition, as shown below.

Contact Target

Target Contact

- 445 -
Contact

6. Using convergence criteria correctly


How can I know that the result is accurate enough ???
If you want be sure, that the result you get is good enough, then you should switch on both
the force and the displacement convergence criterion, because it can happen, that a result
which has converged according to the force criterion is not necessarily the final solution.
The same story also holds using just the displacement criterion.
F F F

U U U
The final solution is unique. The final solution is not unique, The final solution is not unique,
if only the force convergence if only the displacement
criterion is used. convergence criterion is used.

- 446 -
Contact

7. Plasticity and contact stiffness


If you want to run a nonlinear analysis with plastic material:
In cases where the underlying element has plasticity materials defined, the contact normal
stiffness will be reduced by a factor of 100. So it is not necessary to reduce the FKN manually
again for this purpose.

Elastic FKN=1 FKN=10 Plastic FKN=1 FKN=10

- 447 -
Contact

8. Running a symmetric problem


If you want to run a symmetric problem:
In case of a symmetric problem, you might eventually get symmetrical results only if the
whole model is completely symmetric, e.g. the mesh is symmetric, the loading, the boundary
conditions, the material, etc…
However, if all these conditions are met, you sometimes still will not get a 100% symmetric result.
This comes from the fact that the results coming from the contact elements are quite sensitive with
respect to the iteration process and very easily a result which is not 100% symmetric is obtained.

- 448 -
Contact

9. Running the analysis as robust as possible


Classical situation at the CADFEM support phone:
-“My contact problem is not converging”
-”Is it a force driven problem?”
-”Yes”
-”Are you working with many parts in an assembly?”
-”Yes”
-”It is probably the problem with the rigid body motion!”
-”Try to work displacement driven!”
-”If you want to work force driven: - Set KEYOPT(5)=1.
- Define some weak springs.
- Define reasonable substeps.
- Define a reasonable pinball.
- Run the analysis with large deflections (NLGEOM,ON)

In 80% of all cases this is the reason for your contact problem.

- 449 -
Contact

Running the analysis fast


If you want to run the analysis fast:
It is always better to simplify the physical problem with engineering knowledge. If the results
you are interested in can also be obtained from a 2D model you should avoid starting to model in
3D since computation time will increase rapidly.

Stress distribution in flange

Contact pressure on seal

- 450 -
Contact

10. Running the analysis as fast as possible


If you want to run the analysis fast:
It is always better to simplify the physical problem with engineering knowledge. If the results you
are interested in can also be obtained from a 2D model you should avoid starting to model in 3D
since computation time will increase rapidly.

Contact Contact Rubber

Contact
Contact

- 451 -
Contact

Running the analysis as fast as possible


If you want to run the analysis fast:
For slightly compressible rubber, PLANE18x is faster due to a better element formulation:

Plane56: Iteration=162 Plane182: Iteration=95

- 452 -
Contact

Running the analysis as fast as possible


Example: exa68.inp
Contact problem with rubber material

Contact pair-1

Contact pair-1

- 453 -
Contact

Running the analysis as fast as possible


Example: exa68.inp
finish rect,1,4,0,3 !!! Target !!! !!! Target !!! /solu
/clear rect,2,4,1.5,4 lsel,s,line,,2 lsel,s,line,,5 nsel,s,loc,y,0
/prep7 asba,1,2 nsll,s,1 nsll,s,1 d,all,uy,0
et,1,182 rect,2.1,3.5,2,3.5 type,3 type,3 nsel,s,loc,y,3.5
keyopt,1,1,2 wpof,2.5,1.75 real,3 real,4 sf,all,pres,1
keyopt,1,3,1 pcir,0.25 esurf esurf
et,2,182 esize,0.3 nlgeom,on
keyopt,2,3,1 amesh,1,3,2 !!! Contact !!! !!! Contact !!! solcontrol,,,,1e-2
keyopt,2,6,1 esize,0.05 lsel,s,line,,8,12,4 lsel,s,line,,13,14,1 autots,on
et,3,169 type,2 nsll,s,1 nsll,s,1 nsubst,5,5,1
et,4,171 mat,2 type,4 type,4 outres,all,all
keyopt,4,2,1 amesh,2 real,3 real,4 allsel
keyopt,4,5,1 esurf esurf solve
mp,ex,1,200000
mp,prxy,1,0.3 /post1
tb,hyper,2,1,2,moon /dscale,1,1
tbdata,1,1,.2,2e-3 plnsol,u,y,2,1
plesol,cont,pres,2,1

- 454 -
Contact

Good mesh will generally make problem easier to converge.


• The fine mesh and similar mesh are always good for the contact simulation:

Normal stress

Geometry Sphere influence Mesh


Contact Pressure

- 455 -
Contact
Good mesh will generally make problem easier to converge.
• The fine mesh and similar are always good the contact simulation:

Geometry Contact region

Contact mesh

- 456 -
Contact

Good mesh will generally make problem easier to converge.


• The fine mesh and similar are always good the contact simulation:

Normal stress

Contact pressure

- 457 -
Contact
Contact Technology
• An augmented Lagrange algorithm (when KEYOPT(2) = 0) improves convergence with very difficult models. Likewise, improved
contact stiffness (which updates automatically per iteration when KEYOPT(10) = 2) allows improved convergence and more
accurate solutions.

- 458 -
Contact

FE mesh

- 459 -
Contact
Deformation
Contact status

Stress

- 460 -
Contact

Running large models


If you want to run a large model:
1) If there are no additional nonlinearities, like plasticity or creep, birth and death in your
model use the PCG solver, especially if the model has more than 300.000 DOFs.
Use one load step and one substep to run the analysis, if the deformation is not large.
Use parallel processors, if available. The AMG solver has a very good performance.
You get a factor of 3 or 4 if you use 4 CPUs.
You need approximately 100 MB RAM for 100.000 DOFs.
The PCG solve might have some problem if the quality of the finite elements is poor.

2) If the model is small, e.g. with less then 100.000 DOFs, always use the sparse solver,
because the direct solver can handle zero pivot elements very well which can occur in the
total stiffness matrix in case of plasticity for example. Use parallel processors if available.
Since ANSYS6.0 the sparse solver performances are quite good using more processors.

- 461 -
Contact

Chapter 16
MPC applications

- 462 -
Contact

Contents
1. Introduction
2. MPC connection for SOLID-SOLID and SHELL-SHELL
3. MPC connection for SOLID-SHELL
4. MPC connection to model a REMOTE FORCE / DISPLACEMENT
5. MPC connection SOLID-BEAM and SHELL-BEAM

- 463 -
Contact

1. Introduction
What is MPC: à MPC means multiple constraint:
4 L
ui + ∑ C j u j = C0 ( j ≠ i)
Beam j =1
1 3 2 + UY (1 )
= Sin ( ROTZ (3)
)• L L (1 )
L L − UY ( 2 ) = Sin ( ROTZ (3)
)• L L (2)
(1 ) + ( 2 )
Solid
MPC 0 = UY (1 )
− UY (2)
− 2 L • Sin ( ROTZ (3)
)

For small rotations:


UY (1) ROTZ (3)
0 = UY (1 )
− UY (2)
− 2 L • ( ROTZ (3 )
)

CE , 2 , 0 ,1, UY ,1, 2 , UY , − 1, 3 , ROTZ , − 2 L


( 2)
UY

- 464 -
Contact

Introduction
Why do you need MPC à To connect dissimilar meshes:
If the geometries are not topologically connected, you can mesh the geometry
independently and connect the FE model via an MPC bonded contact formulation:

Geometry Dissimilar mesh Stress distribution


Connected via MPC

- 465 -
Contact

Introduction
Why do you need MPC à To connect dissimilar meshes:
If different element types are used on the connection region the connectivity is not
consistent (different DOF’s). Consistence can be achieved via an MPC bonded contact formulation:

Geometry Solids and Shells Deformation


Connected via MPC

- 466 -
Contact

Introduction
Why do you need MPC à To apply a remote displacement or remote force:
If the loading point is not connected to the FE model,
the connection can be achieved in the FE model via an MPC bonded contact formulation:

Loading point and FE model connected via MPC Stress distribution

- 467 -
Contact

Introduction
Why do you need MPC à To couple beams with shells/solids:

Solid solution Solid-Beam via MPC

- 468 -
Contact

2. MPC connection for SOLID-SOLID and SHELL-SHELL


Procedure:
1) Treat the connection as contact surface, use commands
or the contact wizard to define the contact and the target surface.
2) Set the contact element keyoptions:
KEYOPT(2) =2 this will activate the MPC method
KEYOPT(12)=5 or 6 work with bonded contact
3) Set the target element keyoptions:
KEYOPT(5)=0,1 or 2 see next page
4) Run the analysis

- 469 -
Contact

MPC connection for SOLID-SOLID and SHELL-SHELL


Accuracy Test:
10 Analytical solution:

1 PL3 62.5 * 203


δ= =1 =1
20 3EI 5E5
E=200000 ν=0 F=62.5

Displacement

Stress

Similar mesh connected via MPC Dissimilar mesh connected via MPC

- 470 -
Contact

MPC connection for SOLID-SOLID and SHELL-SHELL


Example: exa70.inp
Static Analysis: Contact problem with MPC application à SOLID-SOLID

- 471 -
Contact

MPC connection for SOLID-SOLID and SHELL-SHELL


Example: exa70.inp
finish rect,-2,10,0,10 !!! Target !!! /solu /post1
/clear rect,5,15,7,11 lsel,s,line,,18 nsel,s,loc,x,-10 plnsol,s,eqv,2,1
/prep7 asba,1,2 lsel,a,line,,21,22 d,all,ux,0
et,1,182 rect,5,11,0,3 nsll,s,1 nsel,s,loc,y,-5
et,2,169 asba,3,1 type,2 d,all,uy,0
et,3,171 adel,all real,3 nsel,s,loc,y,15
keyopt,3,2,2 lfil,11,12,1 esurf cp,1,uy,all
keyopt,3,12,5 lfil,8,6,1 nsel,s,loc,x,10
mp,ex,1,200000 al,all !!! Contact !!! sf,all,pres,-1
mp,prxy,1,0.3 rect,-10,5,-5,15 lsel,s,line,,4,10,3 allsel
rect,-2,20,0,10 nsll,s,1
asba,2,3 type,3 solve
smrt,3 real,3
amesh,1 esurf
esize,1.5 allsel
smrt,off
amesh,4

- 472 -
Contact

MPC connection for SOLID-SOLID and SHELL-SHELL


Further results: Stress distribution when no overlapping or gap is present

Model-1: mesh is pretty similar Model-2: mesh is quite different Model-2: consistent mesh
SMAX=1.71 SMAX=1.71 SMAX=1.71

- 473 -
Contact

MPC connection for SOLID-SOLID and SHELL-SHELL


Further results: Stress distribution when overlapping or gap is present

KEYOPT(9)=0 KEYOPT(9)=1 KEYOPT(9)=0 KEYOPT(9)=1

If you have a geometrical penetration: If you have a geometrical gap:


1) Set the PINBALL to catch the contact 1) Set the PINBALL to catch the contact
2) Use KEYOPT(9)=1 to ignore the penetration 2) Use KEYOPT(9)=1 to ignore the gap

- 474 -
Contact

MPC connection for SOLID-SOLID and SHELL-SHELL


Further example: Stiffness check à Modal Analysis

1st mode 3rd mode


5th mode

1 88.370 0.033% 1 88.349


2 190.52 1.197% 2 192.80
First 10 frequencies 3 668.62 0.322% First 10 frequencies from
3 670.77
from modal analysis 4 711.48 0.208% 4 710.00 modal analysis with
with consistent 5 1203.3 0.220% 5 1200.4 dissimilar shell mesh
shell mesh 6 1212.9 0.412% 6 1217.9 via MPC
7 1261.5 0.254% 7 1258.3
8 1503.3 0.578% 8 1494.6
9 1628.1 0.725% 9 1616.3
10 1735.2 0.536% 10 1725.9

Consistent shell mesh Difference Dissimilar shell mesh via MPC

- 475 -
Contact

3. MPC connection for SOLID-SHELL


Procedure:

1) Treat the connection as contact surface, use commands


or the contact wizard to define the contact and the target surface.
2) Set the contact element keyoptions:
KEYOPT(2) =2 this will activate the MPC method
KEYOPT(12)=5 or 6 set the bonded contact key
3) Set the target element keyoptions:
KEYOPT(5) =3 or 4 see next page
4) Run the analysis

- 476 -
Contact

MPC connection for SOLID-SHELL


Accuracy Test:
10 Analytical solution:

1 PL3 62.5 * 203


δ= =1 =1
20 3EI 5E5
E=200000 ν=0 F=62.5

Displacement

Stress

Consistent solid mesh Solid-shell connected via MPC

- 477 -
Contact

MPC connection for SOLID-SHELL


Summary:
The setting of KEYOPT(5) for shell-solid constrained is problem dependent.
We recommend KEYOPT(5)=4.

KEYOPT(5)=1 KEYOPT(5)=3 or 4
KEYOPT(5)=2
SHSD,ID SHSD,ID
1st Approach: 3rd Approach:
2nd Approach:
solid-solid constraint shell-solid constraint
shell-shell constraint

- 478 -
Contact

MPC connection for SOLID-SHELL


Example: exa77.inp
Benchmark problem: Try different formulations of constraint equations

Consistent mesh MPC approach

Work with KEYOPT(5)=3 and KEYOPT(5)=4. You can also try to work with
KEYOPT(5)=1 and KEYOPT(5)=2 together with the virtual shell SHSD,ID.

- 479 -
Contact

MPC connection for SOLID-SHELL


Example: exa77.inp
finish block,0,10,0,10,0,10 !!! Target !!! /solu /post1
/clear wpof,0,0,5 asel,s,area,,6 nsel,s,loc,x,0 /dscale,1,1
/prep7 rect,10,20,0,10 nsla,s,1 d,all,all,0 /view,1,0.50,-0.50,0.25
et,1,185 esiz,1.5 type,3 nsel,s,loc,x,20 /ang,1,-72.5
et,2,181 vmesh,1 real,3 f,all,fz,-1000 /pbc,ce,on
et,3,170 type,2 esurf allsel plnsol,u,sum,2,1
keyopt,3,5,1 amesh,7 solve eplot
et,4,175 !!! Contact !!! celist
keyopt,4,2,2 lsel,s,line,,16 cntr,cno3,1
keyopt,4,12,5 nsll,s,1
r,1,1,1,1,1 type,4
mp,ex,1,200000 real,3
mp,prxy,1,0.3 esurf

shsd,3

- 480 -
Contact

4. MPC connection for a REMOTE DISPLACEMENT / FORCE


Procedure:
1) Treat the solid surface and/or shell edge as contact surface, treat the loading node as
target pilot node. No additional target is needed.
2) Set the contact element keyoptions:
KEYOPT(2) =2 this will activate the MPC method
KEYOPT(4) =1 or 2 force-distributed surface or rigid constraint surface
KEYOPT(12)=5 or 6 set the bonded contact
3) Set the target element keyoptions:
KEYOPT(4) = dependent on which degree of freedoms should be active
Run the analysis
Force distributed constrained surface:
Forces or displacements applied on the pilot node are distributed to contact nodes through shape
functions, similar to a constrained defined by RBE3.
Rigid constrained surface:
The contact nodes are constrained to the rigid body motion defined by the pilot node, similar to a
constrained defined by CERIG.

- 481 -
Contact

MPC connection for a REMOTE DISPLACEMENT / FORCE


Example: exa78.inp
Test problem: Applying a moment on a circular line

Contact KEYOPT(4)=1 Contact KEYOPT(4)=2


Force distributed surface Rigid constraint surface

- 482 -
Contact

MPC connection for a REMOTE DISPLACEMENT / FORCE


Example: exa78.inp
finish rect,-10,10,-5,5 !!! Target !!! /solu /post1
/clear pcir,3 type,2 nsel,s,loc,x,-10 /dscale,1,1
/prep7 asba,1,2 real,3 d,all,all,0 set,last
et,1,182 smrt,4 tshape,pilot allsel plnsol,u,sum,2,1
et,2,169 amesh,all e,1000 f,1000,mz,-.7e6
keyopt,2,2,1 allsel
keyopt,2,4,111 n,1000,0,0 !!! Contact !!!
et,3,171 lsel,s,line,,5,8 nlgeom,on
keyopt,3,2,2 nsll,s,1 nsubst,10,100,1
keyopt,3,4,1 type,3 outres,all,all
keyopt,3,12,5 real,3 allsel
mp,ex,1,200000 esurf solve
mp,prxy,1,0.3

- 483 -
Contact

5. MPC connection SOLID-BEAM and SHELL-BEAM


Example: exa79.inp
MPC: Coupling between beams and solids

- 484 -
Contact

MPC connection SOLID-BEAM and SHELL-BEAM


Example: exa79.inp
finish pcir,10,11,0,90 esize,,20 !!! Target !!! /solu
/clear pcir,10,11,90,180 type,1 type,4 nsel,s,loc,z,0
/prep7 pcir,10,11,180,270 vext,all,,,,,150 real,2 d,all,all,0
et,1,185 pcir,10,11,270,360 aclear,all tshap,pilo nsel,s,loc,z,300
et,2,188 numm,kp e,2017 f,2018,fx,1000
et,3,173 lesi,4,,,2 k,100,0,0,150 allsel
keyopt,3,2,2 esize,,8 k,101,0,0,300 !!! Contact !!! solve
Keyopt,3,4,1 type,10 k,102,1,1,150
keyopt,3,12,5 mshkey,1 l,100,101 esel,s,type,,1 /post1
et,4,170 amesh,all lsel,s,line,,33 nsel,s,loc,z,150 /dscale,1,1
et,10,182 latt,1,,2,,102,,1 nsel,u,node,,2017 /view,1,-1,-1,1
sectype,1,beam,ctube type,2 type,3 /ang,1,-60
secoffset,cent lmesh,33 real,2 /eshape,0
secdata,10,11 esurf plnsol,u,sum,2,1
mp,ex,1,200000 /eshape,1
mp,prxy,1,0.3 plnsol,u,sum,2,1

- 485 -
Contact

MPC connection SOLID-BEAM and SHELL-BEAM


Example: exa79.inp

Contact KEYOPT(4)=1
Force constraint surface

Solid solution Solid-Beam via MPC

- 486 -
Contact

MPC connection SOLID-BEAM and SHELL-BEAM


Example: exa79.inp

Contact KEYOPT(4)=2
Rigid constraint surface

Solid solution Solid-Beam via MPC

- 487 -
Contact

MPC connection SOLID-BEAM and SHELL-BEAM


Example: exa80.inp
MPC: Coupling between beams and shells

- 488 -
Contact

MPC connection SOLID-BEAM and SHELL-BEAM


Example: exa80.inp
finish pcir,0,10.5,0,90 k,100,0,0,150 !!! Target !!! /solu
/clear pcir,0,10.5,90,180 k,101,0,0,300 type,4 nsel,s,loc,z,0
/prep7 pcir,0,10.5,180,270 k,102,1,1,150 real,3 d,all,all,0
et,1,181 pcir,0,10.5,270,360 l,100,101 tshap,pilo nsel,s,loc,z,300
et,2,188 numm,kp lsel,s,line,,18 e,673 f,674,fx,1000
et,3,175 lsel,s,line,,1,10,3 latt,1,,2,,102,,2 allsel
keyopt,3,2,2 lesi,all,,,8 type,2 !!! Contact !!! solve
keyopt,3,4,1 mshkey,1 lmesh,18 esel,s,type,,1
keyopt,3,12,5 esize,,20 nsel,s,loc,z,150 /post1
et,4,170 k,50 nsel,u,,,673 /dscale,1,1
sectype, 2,beam,ctube k,51,0,0,150 type,3 /view,1,-1,-1,1
secoffset,cent l,50,51 real,3 /ang,1,-60
secdata,10,11 adra,1,4,7,10,,,6 esurf /eshape,0
r,2,1 real,2 plnsol,u,sum,2,1
mp,ex,1,200000 amesh,5,8 /eshape,1
mp,prxy,1,0.3 plnsol,u,sum,2,1

- 489 -
Contact

MPC connection SOLID-BEAM and SHELL-BEAM


Example: exa80.inp

Contact KEYOPT(4)=1
Force constraint surface

Solid solution Shell-Beam via MPC

- 490 -
Contact

MPC connection SOLID-BEAM and SHELL-BEAM


Example: exa80.inp

Contact KEYOPT(4)=2
Rigid constraint surface

Solid solution Shell-Beam via MPC

- 491 -
Contact

Workbench Application

- 492 -
Contact
• TrustHow can I I’m
yourself: make thetoproblem
able make it converge?
converge!

• Consider the problem as idealized real world problem:


20%- Mechanics expertise, 20%- Engineer expertise
30%- FEA expertise, 30%- Software expertise

• Use the magic KEYOPTIONS

KEYOPT(5)=1: To eliminate the rigid body motion

KEYOPT(9)=1: To eliminate the geometric noise

KEYOPT(10)=2: To make ANSYS think

- 493 -
Contact

Thanks!
- 494 -

Você também pode gostar