Bearing Defect Signature Analysis Using Advanced Nonlinear ...
08 Advanced Nonlinear
-
Upload
daniel-castilla-puello -
Category
Documents
-
view
50 -
download
1
Transcript of 08 Advanced Nonlinear
-
Code_Aster, Salome-Meca course materialGNU FDL licence (http://www.gnu.org/copyleft/fdl.html)
Advanced non-linear analysis
-
2 - Code_Aster and Salome-Meca course material GNU FDL Licence
Outline
Description of non-linear problems
Theoretical elements for solving non-linear problems
Solving non-linear problems with Newton
Using Code_Aster
-
3 - Code_Aster and Salome-Meca course material GNU FDL Licence
What is a non-linear problem in mechanics ?
-
4 - Code_Aster and Salome-Meca course material GNU FDL Licence
Non-linear problems
Non-linearities come from :
Kinematic (movement and strains) : large displacement, large rotation, large strains
Material : non-linear response, history-dependent response
Contact/friction
The three non-linearities should been coupled
Numerical simulation require expert analysis
-
5 - Code_Aster and Salome-Meca course material GNU FDL Licence
Non-linear material
Material non-linearityExperimental identification : identify macroscopical response force/displacement
Most materials are non-linear and/or history dependent
-
6 - Code_Aster and Salome-Meca course material GNU FDL Licence
Non-linear materialDisplacement/force function is not linear but not history dependent
F
uA
B
CResponse
u
tA
B
CPrescribed
displacement
F
tA
B
CPrescribed
force
ba.u(u)with(u)F +=
F(A) F(C)u(A) u(C)
=
=
-
7 - Code_Aster and Salome-Meca course material GNU FDL Licence
Non-linear materialDisplacement/force function is not linear and history dependent
Residual displacementNext loading : initial
displacement 0 0 0 0
u
tA
B
CPrescribed
displacement
F
tA
B
CPrescribed
force
F
uA
B
CResponse
ba.u(u)with(u)F +=
u(A) u(C)
-
8 - Code_Aster and Salome-Meca course material GNU FDL Licence
Non-linear kinematic
Truss/beams/shells elements with large rotation and/or largedisplacements
E: Young modulusA: sectionL: lengthF: loadu: displacementk: rigidity of the spring
EA
F
lx
zkF
u
Response
-
9 - Code_Aster and Salome-Meca course material GNU FDL Licence
Non-linear contact/friction
Contact and friction: a very difficult non-linear problem
1
c
2
Response(Signorini contact)
Response(Coulomb friction)
pn
g
pt
vpn: normal pressurept: tangent pressureg: distance between solids (gap)v: tangential speed between solids
-
10 - Code_Aster and Salome-Meca course material GNU FDL Licence
Some theoretical elements
-
11 - Code_Aster and Salome-Meca course material GNU FDL Licence
Equations Continuous form
Measure of stress : Cauchy (true) stress
Measure of strain : for finite strain, it's an arbirtray choice, depending on behavior law
For small strain
Cauchy stress : measure on deformed configuration
SF
S
=
0lim
0
000 0
limSF
S
=
t
t
St SF
t
=
0lim
tF0F
( )uuu t+=21)(
-
12 - Code_Aster and Salome-Meca course material GNU FDL Licence
Equations Continuous form
Defining solid which is in equilibrium with external forces is external boundaryu to apply prescribed displacement udg to apply prescribed force gc to define contact/frictionf is volumic force
ud
g
f
g
c
u
==
=+
ccfud
g
onuLonuu
ongninfdiv
)(
.
0
-
13 - Code_Aster and Salome-Meca course material GNU FDL Licence
Equations Finite element approximation
Main shapes for elements :segment, triangle, quadrangle, hexaedron, tetraedron, pyramid, prism
linear or quadratic (curved or straight edges)
Geometry discretization :Coordinates in elementDiscretized coordinates at nodesShape functions
x
yx2y2
x1y1
x3y3
{ }x { }ix[ ]gN
{ } [ ]{ }ig xNx .=
-
14 - Code_Aster and Salome-Meca course material GNU FDL Licence
Equations Finite element approximation
Discretization of the unknowns:Unknowns depending on physic : displacement for mechanics temperature forthermic, ...Displacements in elementDiscretized displacement at nodesShape functions
We suppose isoparametric elements
u2v2
u1v1
u3v3
{ }u{ }iu[ ]uN
{ } [ ]{ }iu uNu .=
[ ] [ ] [ ]ug NNN ==
-
15 - Code_Aster and Salome-Meca course material GNU FDL Licence
Equations Finite element approximation
Weak form of equilibrium (weighted residuals) :Find with :
Virtual displacements and virtual strains
With space of kinematically admissible displacements :
With space of virtual displacements :
The weak form is the mechanical concept of virtual powerGalerkin form : and
uEu
{ } [ ]{ }iuNu ~.~ ={ } [ ]{ }iuNu .=
uEu ~~
+ = g
duugduufduu .~:)(.~:)().~(:)(
uE
( )uuu t ~~21)~( +=u~
{ }udu XuXuwithuE == )(
{ }uu XXuwithuE == 0)(~~~uE~
-
16 - Code_Aster and Salome-Meca course material GNU FDL Licence
Equations Finite element approximation
Non-linear problem : stress depending on displacement From displacement u to strain : kinematic non-linearityFrom strain to stress : material non-linearity
Non-linear material
Non-linear material depending on material's history (plasticity,...) :
Internal variables
))(()( uu =
))(,()( uu =
)(u
-
17 - Code_Aster and Salome-Meca course material GNU FDL Licence
Equations Finite element approximation
Numerical quadrature : to compute continuous som, using a Gauss approximation
Stress, strain and internal variables : discretized at numerical points (quantities post_fixed by _ELGA in Code_Aster)
Displacement : discretized at nodes (quantities post_fixed by _NOEU in Code_Aster)
=
pointsnb
1k ..
kkd
X
1
1
v
u
2
2
v
u
3
3
v
u
k
k
k
X
k
k
k
X
k
k
k
X
-
18 - Code_Aster and Salome-Meca course material GNU FDL Licence
Equations Finite element approximation
Computation of internal forces
Non-linear internal forces : depending on
Non-linear kinematic
Non-linear material
{ } [ ]{ })(.)()().~(:)( int uuQuLduu =
u
[ ])(uQ
{ })(u
-
19 - Code_Aster and Salome-Meca course material GNU FDL Licence
Equations Finite element approximation
Computation of external forces
Non-linear external forces : depending onNon-linear when following forces : pressure always normal toboundary pressure depends on displacement
p(u) p(u)
{ })(.~:)(.~:)( uLduugduuf extg
+
u
-
20 - Code_Aster and Salome-Meca course material GNU FDL Licence
Equations Finite element approximation
Final equilibrium equation : discretized form
Non-linear equation, depending on u
{ } { } { }0)()(int = uLuL ext
-
21 - Code_Aster and Salome-Meca course material GNU FDL Licence
General algorithm for non-linear problem
-
22 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
To solve non-linear problem : an incremental algorithmProblem is parametrized by the parameter tt is not real time (quasi-static problem)
Why parametrization ?Real boundary conditions should been applied by non-constant valuesNon-linear material produced non-linear equation, precision should depends onincremental step sizeAn non-linear problem is easier to solve when cut by small step size
-
23 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
Parametrization because boundary conditions should beenapplied by non-constant values
Some examples of prescribed boundary conditions
f
t
Prescribed volumic force
Prescribed surfacic force
g
tA
B
C
ud
tA
B
CPrescribed
displacement
-
24 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
Parametrization to cut a non-linear problem to decrease degree of non-linearity
Cutting
-
25 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
The parameter t in the equations :Internal forces : dependence with respect to t is implicit, it results from the integration of the constitutive relation in timeExternal forces : dependence with respect to t is explicit (applied BC) or implicit(following forces)
Time discretization, all quantities are parametrized by step k :
t0 t1 t2 t3 t4
1
Time tStep 2 3 4
Incremental quantities :
{ } { } { }0))(,())((int = tutLtuL ext
uuu kk += 1
intkL
extkL ku kt k k k
-
26 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
Solving a non-linear equation : the Newton's methodConstruction of the seriesTaylor series expansion of the first order
Next value of the term of the series
Properties :Quadratic convergence near the solutionComputation of should be very expensive
0)( =xF( ) Nnnx )).(()()(0 111 += nnnnn xxxFxFxF
)()(1 1
11
=n
n
nn xFxF
xx
0)( 1 nxF)( 1 nxF
-
27 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
Newton's method for equilibrium equation, at step k :
Internal forces :
External forces :
Simplify : we are at step k
with
with
{ } { } { }{ } { } { }0))(,())((
0))(,())((int
int
=
=
tutLtuLtutLtuL
ext
kkkextkk
)( 1= nnn uuu
)( 1= nnn uuu
n
u
nn uu
LLLn
.1
int1int,int,
+
n
u
extnextnext u
u
LLLn
.1
1,,
+
-
28 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
Newton's method for equilibrium equation, at step k :
is tangent matrix
is equilibrium residual
11
int1,1int,
.
0.1
=
=
+
nnn
n
u
extnextn
RuK
uu
Lu
LLLn
1nK
1nR
( )1int,1,1 = nnextn LLR
11
_
int1
=
nn u
ext
u
n
u
Lu
LK
-
29 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
Global algorithm :1)Compute internal and external forces2)Compute tangent matrix3)Solve linear system4)Update displacements5)Evaluate convergence
-
30 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
Compute internal and external forces :Exact computation is necessary (software requirement)Non-linear behavior is evaluated at each Gauss pointComplex behavior laws computation should be expensivePrecision of computation of some behavior laws should depend onincrement of displacement :
Visco-plasticityNon-radial loadingPETIT_REAC strain measure
-
31 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
Compute tangent matrix :
Exact computation is NOT necessaryTangent matrix is evaluated at each Gauss pointTangent matrix computation should be expensive
-
32 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem Newton by graphic
Find the solution where is known and is unknown
u*
Lext
u
Lint
u0
F*
F0
*u*F( )**, Fu
-
33 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem Newton by graphic
Dividing in two increments (reducing degree of non-linearity) :find and
u*= u2
Lext
u
Lint
u0
F*= F2
F0
F1
u1
*F( )11, Fu ( )22 , Fu
-
34 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem Newton by graphic
Compute tangent matrix for iteration Newton n and step 1
u*= u2
Lext
u
Lint
u0
F*= F2
F0
F1
u1u1n
K1n
nK1
-
35 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem Newton by graphic
Solving nnn uFFuK 10111 . =
u*= u2
Lext
u
Lint
u0
F*= F2
F0
F1
u1
K1n
nu1
-
36 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem Newton by graphic
Update displacements
u*= u2
Lext
u
Lint
u0
F*= F2
F0
F1
u1u1n
K1n
nu1
nnn uuu 11
11 +=
-
37 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem Newton by graphic
Compute and ( )nuL 1int ( )nuLFR 1int1 =
u*= u2
Lext
u
Lint
u0
F*= F2
F0
F1
u1u1n
K1n
nu1
( )nuL 1int( )nuR 1
-
38 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem Newton by graphic
Matrix computation Solve system
Evaluate convergenceUpdate displacements
Solving non-linear problem Newton by graphic
1 2
3 4
u*= u2
Lext
u
Lint
u0
F*= F2
F0
F1
u1u1n
K1n
nu1
( )nuL 1int( )nuR 1
u*= u2
Lext
u
Lint
u0
F*= F2
F0
F1
u1u1n
K1n
nu1
u*= u2
Lext
u
Lint
u0
F*= F2
F0
F1
u1u1n
K1n
u*= u2
Lext
u
Lint
u0
F*= F2
F0
F1
u1u1n
K1n
nu1
-
39 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
Matrix computation :True Newton method : is evaluate every step and every Newton iterationQuasi-Newton method : is evaluate every i Newton's iteration and every n time's step
1
u*= u2
Lext
u
Lint
u0
F*= F2
F0
F1
u1
True Newton method
Slope changesevery Newton's iteration
u*= u2
Lext
u
Lint
u0
F*= F2
F0
F1
u1
Quasi Newton method
Slope doesn'tchange every Newton's iteration
niK
niK
-
40 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
Matrix computation :Quasi-Newton method : compute approximate matrix (elastic matrix)
u*= u2
Lext
u
Lint
u0
F*= F2
F0
F1
u1
True Newton method
Slope is coherent matrix
u*= u2
Lext
u
Lint
u0
F*= F2
F0
F1
u1
Quasi Newton method
Slope is elastic matrix
1
-
41 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
Matrix computation : Why quasi-Newton methods ?
Compute exact matrix every iteration : matrix must been factorized very expensiveMake more iterations but each iteration is quickerElastic matrix achieve convergence for all standard generalized materials with a lot of iterations (thousands). Elastic matrix is computed and factorized ONE time : very cheapElastic matrix is the better choice for unloading loading's cases
1
-
42 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
Solve system : using direct solver or iterative solver 2
-
43 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
Update displacement - Improving by line-search - Method
Solving is equivalent to minimizing functionalSolving give the direction of the solutionSolving functionnal minimisation give the line-search coefficientUpdate displacements
3
11.
=nnn RuK
11.
=nnn RuK nu
nnn uuu .1 +=
-
44 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
Update displacement - Improving by line-search - FunctionalFunctional (scalar) J is :
With is the density of free energy, for hyperelastic material :
This functional is convex, minimizing convex function its gradient vanishes :
Gradient vanishes Virtual power
Find equilibrium : minimize J scalar functional
3
( )( ) =
dutdufduuJu .....)(
( )( )u
=
uEuuuJ ~~0~).( =
( ) ( ) uEuduugduufduug
~
~.
~:)(.~:)(.~: +=
-
45 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
Update displacement - Improving by line-search - Minimize functional
Derivative of the functional
Scalar functional
Using classical method for minimizing scalar convex function (dichotomyfor instance)
3
{ } { } { }0)()( 11int =++ nnextnn uuLuuL
{ } { } { }0)()(.)( 11int =++= nnextnnn uuLuuLug
-
46 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
Update displacement - Improving by line-search - NotesOnly few iterations : it's not necessary to find exact zero of gOnly compute internal and external forces (no matrix)Algorithms for minimizing scalar function are very efficient and very simple
3
-
47 - Code_Aster and Salome-Meca course material GNU FDL Licence
Solving non-linear problem
Evaluate convergenceAbsolute (RESI_GLOB_MAXI)
Relative (RESI_GLOB_RELA)
By reference : giving stress reference (RESI_REFE_RELA)
4
1int,next LL
ext
next
L
LL 1int,
refkk
next LLL .1int,
-
48 - Code_Aster and Salome-Meca course material GNU FDL Licence
Using non-linear in Code_Aster
-
49 - Code_Aster and Salome-Meca course material GNU FDL Licence
Non-linear in Code_Aster
Material is steel with Von Mises plasticity with isotropic hardening, traction curve from file
Steel on all mesh
FSIGM = LIRE_FONCTION(UNITE=21,PARA='EPSI')
STEEL = DEFI_MATERIAU( ELAS=_F(YOUNG=210.E9,NU=0.3),TRACTION=_F(SIGM=FSIGM))
CHMA = AFFE_MATERIAU( MAILLAGE=MESH,AFFE=_F( TOUT='OUI',
MATER='STEEL'))
-
50 - Code_Aster and Salome-Meca course material GNU FDL Licence
Non-linear in Code_Aster
Plasticity with isotropic hardening, small strains
RESUN = STAT_NON_LINE(...CHAM_MATER = CHMA,COMP_INCR = _F(
TOUT ='OUI',RELATION ='VMIS_ISOT_TRAC',DEFORMATION ='PETIT'),
...)
-
51 - Code_Aster and Salome-Meca course material GNU FDL Licence
Non-linear in Code_Aster
Loading : parametrized by time Using function in FONC_MULT
RESUN = STAT_NON_LINE(...EXCIT=_F(CHARGE =LOAD,
FONC_MULT=RAMPE)...)
RAMPE = DEFI_FONCTION(PARA='INST',VALE=(0,0,2,2))
LOAD = AFFE_CHAR_MECA(MODELE=MOD,PRES_REP=_F(PRES=100.,
GROUP_MA='TOTO'))
Lext
t0
200
2
{ } { })(.)())(,( uLtgtutL extext =
-
52 - Code_Aster and Salome-Meca course material GNU FDL Licence
Non-linear in Code_Aster
Loading : parametrized by time Using function directly in BC
RESUN = STAT_NON_LINE(...EXCIT=_F(CHARGE =LOAD)...)
RAMPE = DEFI_FONCTION(PARA='INST',VALE=(0,0,2,200))
LOAD = AFFE_CHAR_MECA_F(MODELE=MOD,PRES_REP=_F(PRES=RAMPE,
GROUP_MA='TOTO'))
Lext
t0
200
2
{ } { })(.)())(,( uLtgtutL extext =
-
53 - Code_Aster and Salome-Meca course material GNU FDL Licence
Non-linear in Code_Aster
Computing is parametrized by time
L_INST=DEFI_LIST_REEL( DEBUT=0.0,INTERVALLE=(
_F(JUSQU_A=1.0,NOMBRE=3,),_F(JUSQU_A=2.0,NOMBRE=2,),
),)
Time t0.0 2.01.0
RESUN = STAT_NON_LINE(...INCREMENT=_F(LIST_INST=L_INST)...)
-
54 - Code_Aster and Salome-Meca course material GNU FDL Licence
Non-linear in Code_Aster
Loading and time definition must been consistent
Computation on part of stepRESUN = STAT_NON_LINE(...
INCREMENT=_F(LIST_INST=L_INST,INST_FIN =1.0)
...)
Time t0.0 2.01.0
Lext
t0
200
2
!
-
55 - Code_Aster and Salome-Meca course material GNU FDL Licence
Non-linear in Code_Aster Advanced controls
Automatic step cut : no convergence automatic cutting
RESUN = STAT_NON_LINE(...INCREMENT=_F(LIST_INST=DEFLIST)...)
DEFLIST = DEFI_LIST_INST(DEFI_LIST = _F(
LIST_INST = L_INST,),ECHEC = _F(
EVENEMENT = 'ERREUR',ACTION = 'DECOUPE',),)
V11
L_INST=DEFI_LIST_REEL( DEBUT=0.0,INTERVALLE=(
_F(JUSQU_A=1.0,NOMBRE=3,)_F(JUSQU_A=2.0,NOMBRE=2,),
),)
-
56 - Code_Aster and Salome-Meca course material GNU FDL Licence
Non-linear in Code_Aster Advanced controls
Automatic step adaptation : L_INST=DEFI_LIST_REEL( DEBUT=0.0,
INTERVALLE=(_F(JUSQU_A=2.0,NOMBRE=1,),),)
RESUN = STAT_NON_LINE(...INCREMENT=_F(LIST_INST=DEFLIST)...)
DEFLIST = DEFI_LIST_INST( DEFI_LIST = _F(METHODE = 'AUTOLIST_INST = L_INST,PAS_MINI = 1.E-6),)
V11
-
57 - Code_Aster and Salome-Meca course material GNU FDL Licence
Non-linear in Code_Aster Advanced controls
Quasi-Newton method : recompute matrix every 2 Newton's iteration
Quasi-Newton method : recompute matrix every 3 time's step
Quasi-Newton method : using elastic matrix
Default values in Code_Aster
RESUN = STAT_NON_LINE(...NEWTON=_F(REAC_ITER=2,),)
RESUN = STAT_NON_LINE(...NEWTON=_F(REAC_INCR=3,),)
RESUN = STAT_NON_LINE(...NEWTON=_F(MATRICE='ELASTIQUE',),)
RESUN = STAT_NON_LINE(...NEWTON=_F( REAC_INCR=1,
REAC_ITER=0,MATRICE='ELASTIQUE',),)
!
-
58 - Code_Aster and Salome-Meca course material GNU FDL Licence
Non-linear in Code_Aster Advanced controls
Convergence criterion : careful when change values !
Changing criterion convergence may produces WRONG resultsMaximum number of Newton's iteration
Elastic matrix uses thousands of Newton's iterationsDefault values in Code_Aster
RESUN = STAT_NON_LINE(...CONVERGENCE=_F(RESI_GLOB_MAXI=1.E-6,RESI_GLOB_RELA=1.E-6,),)
RESUN = STAT_NON_LINE(CONVERGENCE=_F(ITER_GLOB_MAXI=20,),)
RESUN = STAT_NON_LINE(...CONVERGENCE=_F(
ITER_GLOB_MAXI=10,RESI_GLOB_RELA=1.E-6,),)
!
!
-
59 - Code_Aster and Salome-Meca course material GNU FDL Licence
End of presentation
Is something missing or unclear in this document?Or feeling happy to have read such a clear tutorial?
Please, we welcome any feedbacks about Code_Aster training materials.Do not hesitate to share with us your comments on the Code_Aster forum dedicated thread.