Download as pdf or txt
Download as pdf or txt
You are on page 1of 36

MEF en mécanique non linéaire

Khalil.mansouri@enit.utm.tn
Goals

•What is a nonlinear problem?


•How is a nonlinear problem different from a linear one?
•What types of nonlinearity exist?
•How to understand stresses and strains
•How to formulate nonlinear problems
•How to solve nonlinear problems
•When does nonlinear analysis experience difficulty?
What is a nonlinear structural problem?
Everything except for linear structural problems
Need to understand linear problems first

What is linearity?

A(u  w)  A(u)  A(w)


Nonlinear Structural Problems
Input x y  ax Output y
(load, heat) (displ, temp)
Example: fatigue analysis

x1 y1 x1 x2
x2 y2
y  ax
2x1 2y1 Y
2x1 +3x2 2y1+3y2
Global Local Local Global
Linear Linear Linear
Force Stress Strain Displacement

  = E
A0 A
F/2
L0 L
F/2 E L
F F 
L L
 ?  ? ?
A0 A(F) L0 L
A0E
F  A0  A0E  L
L0
What is a linear structural problem?
Linearity is an approximation
Assumptions:
Infinitesimal strain (<0.2%)
Infinitesimal displacement
Small rotation
Linear stress-strain relation
What types of nonlinearity?
Linear vs. Nonlinear Problems
Linear Problem: 1  ui uj 
ij    
Infinitesimal deformation: 
2  xj xi 
Linear stress-strain relation:
Undeformed coord.
Constant displacement BCs σ  D:ε
Constant applied forces
Constant
Nonlinear Problem:
Everything except for linear problems!
Geometric nonlinearity: nonlinear strain-displacement relation
Material nonlinearity: nonlinear constitutive relation
Kinematic nonlinearity: Non-constant displacement BCs, contact
Force nonlinearity: follow-up loads
Nonlinearities in Structural Problems

Displacement Strain Stress


Nonlinear Nonlinear
displacement-strain stress-strain

Nonlinear displ. BC Nonlinear force BC

Prescribed Applied
displacement force

More than one nonlinearity can exist at the same time


Geometric Nonlinearity
Relations among kinematic quantities (i.e., displacement, rotation and strains) are
nonlinear

8.
C1 C2

Tip displacement
6.

4.

2.

0.
C3
C0
0.0 0.2 0.4 0.6 0.8 1.0
Normalized couple

When du/dx is small


Displacement-strain relation 2
du  du  du
Linear: (x)   dx   dx
dx  
2
Nonlinear: du 1  du  H.O.T. can be ignored
E(x)   
dx 2  dx  (x)  E(x)
Geometric Nonlinearity cont.
0.35
Displacement-strain relation
0.30 E
E has a higher-order term 0.25

(du/dx) << 1  (x) ~ E(x). 0.20 e

Strain
0.15

0.10
Domain of integration
0.05

Undeformed domain W0
0
0 0.05 0.10 0.15 0.20 0.25 0.30
Deformed domain Wx du/dx

a( u, u )  W (u ) : (u) dW

Deformed domain is unknown


Material Nonlinearity
Linear (elastic) material
{  }  [D]{  }

Only for infinitesimal deformation


More generally, {} = {f()}
Nonlinear (elastic) material
- [D] is not a constant but depends on deformation dU
- Stress by differentiating strain energy density U 
d
- Linear material: 1 2 dU
U E   E
2 d
- Stress is a function of strain (deformation): potential, path independent


Nonlinear
E spring

1 
E Linear spring

Linear and nonlinear elastic spring models
Material Nonlinearity cont.

Elasto-plastic material (energy dissipation occurs)


• Friction plate only support stress up to y
• Stress cannot be determined from stress alone
• History of loading path is required: path-dependent


E Y

sY
E

Elasto-plastic spring model

Visco-elastic material
•Time-dependent behavior
•Creep, relaxation
h 
E E

time
Visco-elastic spring model
Boundary and Force Nonlinearities

Nonlinear displacement BC (kinematic nonlinearity)


Contact problems, displacement dependent conditions

dmax

Force
Displacement
Contact boundary

Nonlinear force BC (Kinetic nonlinearity)


Mild vs. Rough Nonlinearity

•Mild Nonlinear Problems


•Continuous, history-independent nonlinear relations between stress and
strain
•Nonlinear elasticity, Geometric nonlinearity, and deformation-dependent loads
•Rough Nonlinear Problems
•Equality and/or inequality constraints in constitutive relations
•History-dependent nonlinear relations between stress and strain
•Elastoplasticity and contact problems
Nonlinear Finite Element Equations
Equilibrium between internal and external forces

Linear problems
P(d)  F(d) [K]{ d }  {F }

Stress Loads
Strain

Kinetic and kinematic nonlinearities


•Appears on the boundary
•Handled by displacements and forces (global, explicit)
•Relatively easy to understand (Not easy to implement though)
Material & geometric nonlinearities
•Appears in the domain
•Depends on stresses and strains (local, implicit)
Solution procedure
Example – Nonlinear Springs
Spring constants k1 k2
k1 = 50 + 500u
F
k2 = 100 + 200u
u1 u2
Governing equation
 300u12  400u1u2  200u22  150u1  100u2  0 P1

 200u12  400u1u2  200u22  100u1  100u2  100 P2

Solution is in the intersection between two zero contours


• Multiple solutions may exist
• No solution exists in a certain situation
Solution Procedure

Linear Problems
2F
Kd  F or P(d)  F
K
•Stiffness matrix K is constant F

P(d1  d2 )  P(d1 )  P(d2 )


d 2d
P(d)  P(d)  F

•If the load is doubled, displacement is doubled, too


•Superposition is possible

Nonlinear Problems
F
P( d)  F, P(2d)  2F
KT
How to find d for a given F?
Incremental Solution Procedure di d
Newton-Raphson Method
•Most popular method
•Assume di at i-th iteration is known
•Looking for di+1 from first-order Taylor series expansion

P(di1 )  P(di )  KTi (di )  di  F


i
i i  P  : Jacobian matrix or Tangent stiffness matrix
KT (d )   
 d 

•Solve for incremental solution


KTi di  F  P(di )

•Update solution
F P(d)
di 1  di  di KTi 1
KTi Solution
P(di+1)

P(di) di+1
di di+1 di+2 dn d
N-R Method cont.
Observations:

•Second-order convergence near the solution (Fastest method!)


uexact  un 1
lim c
•Tangent stiffness KTi (di ) is not constant n 
uexact  un
2

•The matrix equation solves for incremental displacement di

•RHS is not a force but a residual force Ri  F  P(di )

•Iteration stops when conv < tolerance

n n
 j 1
(Ri 1 2
j )  j 1
( ui 1 2
j )
conv  n
Or, conv  n
1 (F
j 1 j
)2
1   j1 ( uj0 )2
N-R Algorithm
1. Set tolerance = 0.001, k = 0, max_iter = 20, and initial estimate u = u0
2. Calculate residual R = f – P(u)
3. Calculate conv. If conv < tolerance, stop
4. If k > max_iter, stop with error message
5. Calculate Jacobian matrix KT
6. If the determinant of KT is zero, stop with error message
7. Calculate solution increment u
8. Update solution by u = u + u
9. Set k = k + 1
10. Go to Step 2
Example – N-R Method

 d1  d2   3  1  6 
P( d)   2 2
 F d0    P(d0 )   
 d1  d2   9  5   26 

P  1 1  0 0  3 
KT   R  F  P( d )   
d  2d1 2d2    17 
Iteration 1

 1 1   d10   3   d10   1.625 


 2 10   0    17   0 
1.375

   d2     d2   

1 0  0.625 
0
d  d  d   
 3.625 

 0 
R1  F  P( d1 )   
 4.531 
Example – N-R Method cont.
Iteration 2

 1 1   d11   0   d11   0.533 


 1.25 7.25   1    4.531   1  
   d2     d2   0.533 
Iteration 3  0 
2 2
R  F  P( d )   
 0.568 

2 1 1  0.092 
d  d  d   
 3.092 
 1 1   d12   0   d12   0.089 
 0.184 6.184   2    0.568   2   
   d2     d2   0.089 

3 2  0.003 
2  0 
d  d  d    R3  F  P(d3 )   
 3.003   0.016 
Example – N-R Method cont.

 1 1   d13   0   d13   0.003 


 0.005 6.005   3    0.016   3   
   d2     d2   0.003 
 0.000 
d 4  d3  d3    4 4 0 
3.000 R  F  P(d )   
 
0 
Residual
20
Iteration 4 Iter ||R||
16
0 17.263
12

8
1 4.531

4 2 0.016
0 3 0.0
0 1 2 3 4

Iteration Quadratic convergence


When N-R Method Does Not Converge
Difficulties
Convergence is not always guaranteed
Automatic load step control and/or line search techniques are often used
Difficult/expensive to calculate

KTi (di )

Solution P(d)
P
d
F
P
d

di+2 di dn di+1 d
When N-R Method Does Not Converge cont.

Convergence difficulty occurs when


•Jacobian matrix is not positive-definite

P.D. Jacobian: in order to increase displ., force must be increased

•Bifurcation & snap-through require a special algorithm

F FC C
B A
FB B D

Force
C D
A
E
E
Displacement
Modified N-R Method
Constructing Ki ( di ) and solving KTi di  Riis expensive
T
Computational Costs (Let the matrix size be N x N)
L-U factorization ~ N3
Forward/backward substitution ~ N
Use L-U factorized KTi (di ) repeatedly
More iteration is required, but
each iteration is fast
More stable than N-R method
Hybrid N-R method
F P(d)

P Solution
d

di di+1 dn d
Example – Modified N-R Method
Solve the same problem using modified N-R method

 d  d2   3  1  6 
P( d)   21 2
 F d0    P(d0 )   
 d1  d2   9  5   26 

P  1 1   3 
KT   R0  F  P( d0 )   
d  2d1 2d2    17 
• Iteration 1

 1 1   d10   3   d10   1.625 


 2 10   0    17   0  
   d2     d2   1.375 

 0.625   0 
1 0 0
d  d  d    R1  F  P( d1 )   
 3.625   4.531 
Example – Modified N-R Method cont.
Iteration 2

 1 1   d11   0   d11   0.566 


 2 10   1    4.531   1  
   d2     d2   0.566 
 0.059 
d2  d1  d1   
 3.059   0 
2 2
R  F  P( d )   
 0.358 
Residual Iter ||R||
20
0 17.263
16
1 4.5310
12 2 0.3584
8 3 0.0831

4
4 0.0204
5 0.0051
0
0 1 2 3 4 5 6 7 6 0.0013
Iteration 7 0.0003
Incremental Secant Method

Secant matrix

Instead of using tangent stiffness, approximate it using the solution from the previous
iteration

At i-th iteration F P(d)

Ksi di  F  P(di ) P Solution


d
The secant matrix satisfies
Secant
Ksi i i 1 i i 1
 (d  d )  P(d )  P(d ) stiffness
d0 d1 d2 d3 dn d
Not a unique process in high dimension

Start from initial KT matrix, iteratively update it


Rank-1 or rank-2 update
Incremental Secant Method cont.

BFGS (Broyden, Fletcher, Goldfarb and Shanno) method


Stiffness matrix must be symmetric and positive-definite

di  [Ksi ]1 {F  P( di )}  [Hsi ]{ F  P(di )}


Instead of updating K, update H (saving computational time)

Hsi  ( I  wi viT )Hsi1 ( I  wi v iT )

i i 1  ( di1 )T (Ri 1  Ri )  i
v R 1    R
 ( di )T Ri1 
di 1
wi 
( di1 )T (Ri 1  Ri )
Become unstable when the No. of iterations is increased
Incrémental force method
Incremental Force Method

N-R method converges fast if the initial estimate is close to the solution
Solid mechanics: initial estimate = undeformed shape
•Convergence difficulty
occurs when the applied
load is large
(deformation is large)
•IFM: apply loads in
increments. Use the
solution from the
previous increment
as an initial estimate
• Commercial programs
call it “Load Increment”
or “Time Increment” ‘ABAQUS’
Incremental Force Method cont.

•Load increment does not have to be uniform


•Critical part has smaller increment size
•Solutions in the intermediate load increments
•History of the response can provide insight into the problem
•Estimating the bifurcation point or the critical load
•Load increments greatly affect the accuracy in path-dependent problems
Load Increment in Commercial Software
Use “Time” to represent load level
In a static problem, “Time” means a pseudo-time
Required Starting time, (Tstart), Ending time (Tend) and increment
Load is gradually increased from zero at Tstart and full load at Tend
Load magnitude at load increment Tn:

n
T  Tstart
n
F  F Tn  n  T  Tend
Tend  Tstart
Automatic time stepping
Increase/decrease next load increment based on the number of convergence iteration
at the current load
User provide initial load increment, minimum increment, and maximum increment
Bisection of load increment when not converged
Force Control vs. Displacement Control

Force control: gradually increase applied forces and find equilibrium configuration
Displ. control: gradually increase prescribed displacements
Applied load can be calculated as a reaction
More stable than force control.
Useful for softening, contact, snap-through, etc.

F F
P(u)
Fn
FC
P(u)
F3 FB
F2
F1 FA
u u
u1 u2 u3 un uA uB uC uD
Nonlinear Solution Steps

1. Initialization: d0  0; i  0
2. Residual Calculation Ri  F  P(di )
3. Convergence Check (If converged, stop)
4. Linearization
Calculate tangent stiffness Ki ( di )
T
5. Incremental Solution:
Solve KTi (di )di  Ri
6. State Determination
di1  di  di
Update displacement and stress
i1  i  i
7. Go To Step 2

You might also like