The Finite Element Method for the Analysis ofNon-Linear and Dynamic Systems: Computational
Plasticity Part I
Prof. Dr. Eleni ChatziDr. Giuseppe Abbiati, Dr. Konstantinos Agathos
Lecture 2 - 27 September, 2018
Institute of Structural Engineering Method of Finite Elements II 1
Learning Goals
To understand the Newton-Raphson algorithm in the mostgeneric form.
To understand a basic lumped plasticity model that consists ona spring-slider system.
To understand the algorithmic procedure of a nonlinear staticfinite element analysis.
References:
Ren de Borst, Mike A. Crisfield, Joris J. C. Remmers, Clemens V.Verhoosel, Nonlinear Finite Element Analysis of Solids andStructures, 2nd Edition, Wiley, 2012.
Example: Forming of a metal profile
Institute of Structural Engineering Method of Finite Elements II 2
The Newton-Raphson Method
Given the following nonlinear equation:
f (x) : R→ R
we want to find,
x : f (x) = 0
following an iterative procedure based on linearization,
f (xj + ∆xj) ≈ f (xj) +df
dx|xj ∆xj = 0
↓
∆xj = −(df
dx|xj)−1
f (xj)
↓xj+1 = xj + ∆xj
Institute of Structural Engineering Method of Finite Elements II 3
The Newton-Raphson Method (1-D)
Definition of: f (x)
Institute of Structural Engineering Method of Finite Elements II 4
The Newton-Raphson Method (1-D)
Initial guess set by the user: x1
Institute of Structural Engineering Method of Finite Elements II 4
The Newton-Raphson Method (1-D)
Evaluation of: f (x1) anddf
dx|x1
Institute of Structural Engineering Method of Finite Elements II 4
The Newton-Raphson Method (1-D)
Evauation of: x2 = x1 + ∆x1 = x1 −(df
dx|x1
)−1
f (x1)
Institute of Structural Engineering Method of Finite Elements II 4
The Newton-Raphson Method (1-D)
Evaluation of: f (x2) anddf
dx|x2
Institute of Structural Engineering Method of Finite Elements II 4
The Newton-Raphson Method (1-D)
Evauation of: x3 = x2 + ∆x2 = x2 −(df
dx|x2
)−1
f (x2)
Institute of Structural Engineering Method of Finite Elements II 4
The Newton-Raphson Method (1-D)
Evaluation of: f (x3) anddf
dx|x3
Institute of Structural Engineering Method of Finite Elements II 4
The Newton-Raphson Method (1-D)
Evauation of: x4 = x3 + ∆x3 = x3 −(df
dx|x3
)−1
f (x3)
Institute of Structural Engineering Method of Finite Elements II 4
The Newton-Raphson Method (1-D)
Evaluation of: f (x4) anddf
dx|x4
Institute of Structural Engineering Method of Finite Elements II 4
The Newton-Raphson Method (1-D)
Evauation of: x5 = x4 + ∆x4 = x4 −(df
dx|x4
)−1
f (x4)
Institute of Structural Engineering Method of Finite Elements II 4
The Newton-Raphson Method (1-D)
f (x5) ≈ 0→ Stop !!!
Institute of Structural Engineering Method of Finite Elements II 4
The Newton-Raphson Method (n-D)
Given the following nonlinear vector equation:
f (x) : Rn → Rn
we want to find,
x : f (x) = 0
following the same iterative procedure based on linearization,
f (xj + ∆xj) ≈ f (xj) +∂f
∂x|xj ∆xj = 0
↓
∆xj = −(∂f
∂x|xj)−1
f (xj)
↓xj+1 = xj + ∆xj
Partial derivatives ∂∂xj
replace derivatives ddx .
Institute of Structural Engineering Method of Finite Elements II 5
The Newton-Raphson Method (n-D)
Linearization of the vector function and expansion of theNewton-Raphson increment:
f1 (x + ∆x)f2 (x + ∆x)
...fn (x + ∆x)
n×1
=
f1 (x)f2 (x)
...fn (x)
n×1
+
∂f1∂x1
∂f1∂x2
· · · ∂f1∂xn
∂f2∂x1
∂f2∂x2
· · · ∂f2∂xn
......
. . ....
∂fn∂x1
∂fn∂x2
· · · ∂fn∂xn
n×n
∆x1
∆x2...
∆xn
n×1
↓x1
x2...xn
j+1
n×1
=
x1
x2...xn
j
n×1
−
∂f1∂x1
∂f1∂x2
· · · ∂f1∂xn
∂f2∂x1
∂f2∂x2
· · · ∂f2∂xn
......
. . ....
∂fn∂x1
∂fn∂x2
· · · ∂fn∂xn
−1
jn×n
f1 (x)f2 (x)
...fn (x)
j
n×1
Institute of Structural Engineering Method of Finite Elements II 6
Lumped Plasticity: a Spring-Slider System
This spring-slider system is the simplest plasticity model.
if force H is smaller than adhesion, sliding is prevented
if force H is higher than adhesion (right limit), sliding starts
u = ue + up → u = ue + up
u : total displacement of A [m]
ue : spring elongation (elasticdisplacement) [m]
up : block sliding (plasticdisplacement) [m]
k : spring stiffness[Nm
]ψ : dilatancy angle [rad ]
H : horizontal force [N]
V : vertical force [N]
Institute of Structural Engineering Method of Finite Elements II 7
Lumped Plasticity: a Spring-Slider System
A mathematical model of the spring-slider system is derived thatexpresses the relationship between displacement and force rates.
u = ue + up
ue =
[ue
v e
] ue = Hk : horizontal elastic vel.
[ms
]v e = 0 : vertical elastic vel.
[ms
]
Institute of Structural Engineering Method of Finite Elements II 8
Lumped Plasticity: a Spring-Slider System
A mathematical model of the spring-slider system is derived thatexpresses the relationship between displacement and force rates.
u = ue + up
up = λm
m =
[1
tanψ
] λ : plastic multiplier [m]
tanψ = vp
up : ration between plastic vert.and horiz. velocities [d .l .]
Institute of Structural Engineering Method of Finite Elements II 8
Lumped Plasticity: a Spring-Slider System
As analogously done for displacements, we define the force responserate of the spring-slider system.
r = Ke ue = Ke (u− up)
with,
r =
[H
V
], Ke =
[k 00 0
] Ke : elastic stiffness matrix
H : horizontal force rate[Ns
]V : vertical force rate
[Ns
]Institute of Structural Engineering Method of Finite Elements II 9
Lumped Plasticity: a Spring-Slider System
The following Coulomb yielding function f to define the borderlinebetween purely elastic spring elongation and plastic block sliding.
ϕ : friction angle, c : adhesion coefficient.
f (H,V , ϕ, c) = H + Vtanϕ− c < 0 : elastic spring elongation
f (H,V , ϕ, c) = H +Vtanϕ− c = 0 : plastic sliding of the block
f (H,V , ϕ, c) = H + Vtanϕ− c > 0 : physically impossible !!!
Institute of Structural Engineering Method of Finite Elements II 10
Lumped Plasticity: a Spring-Slider System
The following Coulomb yielding function f to define the borderlinebetween purely elastic spring elongation and plastic block sliding.
ϕ : friction angle, c : adhesion coefficient.
f (H,V , ϕ, c) = H + Vtanϕ− c < 0 : elastic spring elongation
f (H,V , ϕ, c) = H +Vtanϕ− c = 0 : plastic sliding of the block
f (H,V , ϕ, c) = H + Vtanϕ− c > 0 : physically impossible !!!
Institute of Structural Engineering Method of Finite Elements II 10
Lumped Plasticity: a Spring-Slider System
The following Coulomb yielding function f to define the borderlinebetween purely elastic spring elongation and plastic block sliding.
ϕ : friction angle, c : adhesion coefficient.
f (H,V , ϕ, c) = H + Vtanϕ− c < 0 : elastic spring elongation
f (H,V , ϕ, c) = H +Vtanϕ− c = 0 : plastic sliding of the block
f (H,V , ϕ, c) = H + Vtanϕ− c > 0 : physically impossible !!!
Institute of Structural Engineering Method of Finite Elements II 10
Lumped Plasticity: a Spring-Slider System
The following Coulomb yielding function f to define the borderlinebetween purely elastic spring elongation and plastic block sliding.
ϕ : friction angle, c : adhesion coefficient.
f (H,V , ϕ, c) = H + Vtanϕ− c < 0 : elastic spring elongation
f (H,V , ϕ, c) = H +Vtanϕ− c = 0 : plastic sliding of the block
f (H,V , ϕ, c) = H + Vtanϕ− c > 0 : physically impossible !!!
Institute of Structural Engineering Method of Finite Elements II 10
Coulomb Yield Function
No plastic strain occurs when the force state stays in the elasticdomain.
ϕ : friction angle, c : adhesion coefficient.
f (H,V , ϕ, c) = H + Vtanϕ− c < 0→ up = 0→ ue = u
r = Ke u
Institute of Structural Engineering Method of Finite Elements II 11
Coulomb Yield Function
Plastic strain occurs when the force state belongs to the yieldingsurface.
ϕ : friction angle, c : adhesion coefficient.
f (H,V , ϕ, c) = H + Vtanϕ− c = 0→ up 6= 0→ ue = u− up{r = Ke (u− up)
f = 0
Institute of Structural Engineering Method of Finite Elements II 12
Coulomb Yield Function
The force states can move either to the elastic domain or within theyielding surface (Prager’s consistency condition).
ϕ : friction angle, c : adhesion coefficient.
f (H,V , ϕ, c) = H + V tanϕ = nT r = 0
with n =
[1
tanϕ
], r =
[H
V
]Institute of Structural Engineering Method of Finite Elements II 13
Lumped Plasticity Model
As long as we stay on the yielding surface, both following conditionsmust be verified:
{r = Ke (u− up)
f = 0→
{r = Ke
(u− λm
)f = 0
→
{r = Ke
(u− λm
)nT r = 0
Since m and n are constant, the system is linear and therefore it’sconvenient to recast it in matrix form:
[I Kem
nT 0
] [r
λ
]=
[Ke u
0
]
Institute of Structural Engineering Method of Finite Elements II 14
Lumped Plasticity Model
[I Kem
nT 0
] [r
λ
]=
[Ke u
0
]↓[
r
λ
]=
[Ke − KemnT Ke
nT KemKem
nT KemnT Ke
nT Kem−1
nT Kem
][u0
]
The inverse of square block matrix A =
[A11 A12
A21 A22
]reads,
A−1 =
[A−1
11 + A−111 A12B−1A21A−1
11 −A−111 A12B−1
−B−1A21A−111 B−1
]where,
B = A22 − A21A−111 A12
The Matrix Cookbook
Institute of Structural Engineering Method of Finite Elements II 15
Lumped Plasticity Model: Tangent Stiffness
Instantaneous tangent stiffness of the spring-slider system:
r =(
Ke − KemnT Ke
nT Kem
)u
λ =(
nT Ke
nT Kem
)u
[H
V
]=
[k 00 0
]−
[k 00 0
] [1
tanψ
] [1 tanϕ
] [k 00 0
][1 tanϕ
] [k 00 0
] [1
tanψ
][uv
]
Institute of Structural Engineering Method of Finite Elements II 16
Lumped Plasticity Model: Tangent Stiffness
Instantaneous tangent stiffness of the spring-slider system:
r =(
Ke − KemnT Ke
nT Kem
)u
λ =(
nT Ke
nT Kem
)u
[H
V
]=
[k 00 0
]−
[k 00 0
] [1 tanϕ
tanψ tanψtanϕ
] [k 00 0
]k
[uv]
Institute of Structural Engineering Method of Finite Elements II 16
Lumped Plasticity Model: Tangent Stiffness
Instantaneous tangent stiffness of the spring-slider system:
r =(
Ke − KemnT Ke
nT Kem
)u
λ =(
nT Ke
nT Kem
)u
[H
V
]=
[k 00 0
]−
[k2 00 0
]k
[uv]
It is interesting to note that the spring-slider system has no stiffnesswhen the force state belong to the yielding surface.
Institute of Structural Engineering Method of Finite Elements II 16
Lumped Plasticity Model: Plastic Multiplier
Instantaneous plastic multiplier of the spring-slider system:
r =(
Ke − KemnT Ke
nT Kem
)u
λ =(
nT Ke
nT Kem
)u
λ =
[1 tanϕ
] [k 00 0
][1 tanϕ
] [k 00 0
] [1
tanψ
][uv
]
Institute of Structural Engineering Method of Finite Elements II 17
Lumped Plasticity Model: Plastic Multiplier
Instantaneous plastic multiplier of the spring-slider system:
r =(
Ke − KemnT Ke
nT Kem
)u
λ =(
nT Ke
nT Kem
)u
λ =
([k 0
]k
)[uv
]It is interesting to note that only plastic displacement incrementoccurs when the force state belong to the yielding surface.
Institute of Structural Engineering Method of Finite Elements II 17
Integration of the Force-Displacement Response
Force-displacement response of the spring-slider system.
Let’s imagine to turn this into a computer program:
1: function [rj+1] = elementForce (uj+1)2: ...3: end
Institute of Structural Engineering Method of Finite Elements II 18
Integration of the Force-Displacement Response
Elastic domain:
f (r) < 0
↓r = Ke u
↓∆r = Ke∆u
Plastic domain (yielding surface):
f (r) = 0
↓
r =
(Ke − KemnTKe
nTKem
)u
↓
∆r =
(Ke − KemnTKe
nTKem
)∆u
How to handle the case when we are moving from the elastic to theplastic domain?
Institute of Structural Engineering Method of Finite Elements II 19
Return Mapping Algorithm
Institute of Structural Engineering Method of Finite Elements II 20
Return Mapping Algorithm
Return mapping algorithm Step #1.
rj : initial restoring force (onset of load step j + 1).
Institute of Structural Engineering Method of Finite Elements II 20
Return Mapping Algorithm
Return mapping algorithm Step #2.
rj : initial restoring force (onset of load step j + 1).re = rj + Ke∆uj+1 : elastic predictor of the restoring force (end of loadstep).
Institute of Structural Engineering Method of Finite Elements II 20
Return Mapping Algorithm
Return mapping algorithm Step #3.
rj : initial restoring force (onset of load step j + 1).re = rj + Ke∆uj+1 : elastic predictor of the restoring force (end of loadstep).rj+1 = re −Kem∆λj+1 : exact restoring force (end of load step) thatsatisfies f (rj+1) = 0.
Institute of Structural Engineering Method of Finite Elements II 20
Return Mapping Algorithm
The Newton-Raphson algorithm is used to build a return mappingalgorithm:
{rj+1, ∆λj+1} :
{εr = rj+1 − re + Kem∆λj+1 = 0
εf = f (rj+1) = 0
↓[rk+1j+1
∆λk+1j+1
]=
[rkj+1
∆λkj+1
]−[∂εr∂r
∂εr∂∆λ
∂εf∂r
∂εf∂∆λ
]−1 [εkrεkf
]where:
re = uj + Ke∆uj+1 is the elastic predictor.
r1j+1 = rj and ∆λ1
j+1 = 0 is the initialization.
k is the iteration index.
Institute of Structural Engineering Method of Finite Elements II 21
Return Mapping Algorithm
The Newton-Raphson algorithm is used to build a return mappingalgorithm:
{rj+1, ∆λj+1} :
{εr = rj+1 − re + Kem∆λj+1 = 0
εf = f (rj+1) = 0
↓[rk+1j+1
∆λk+1j+1
]=
[rkj+1
∆λkj+1
]−[
I KemnT 0
]−1 [εkrεkf
]where:
re = uj + Ke∆uj+1 is the elastic predictor.
r1j+1 = rj and ∆λ1
j+1 = 0 is the initialization.
k is the iteration index.
Institute of Structural Engineering Method of Finite Elements II 21
Return Mapping Algorithm
The Newton-Raphson algorithm is used to build a return mappingalgorithm:
{rj+1, ∆λj+1} :
{εr = rj+1 − re + Kem∆λj+1 = 0
εf = f (rj+1) = 0
↓[rk+1j+1
∆λk+1j+1
]=
[rkj+1
∆λkj+1
]−
[I− KemnT
nT DemKem
nT KemnT
nT Kem−1
nT Kem
] [εkrεkf
]where:
re = uj + Ke∆uj+1 is the elastic predictor.
r1j+1 = rj and ∆λ1
j+1 = 0 is the initialization.
k is the iteration index.
Linear Jacobian → convergence in one iteration !!!
Institute of Structural Engineering Method of Finite Elements II 21
Consistent Tangent Stiffness
The Jacobian computed for the last iteration of the Newton-Raphsonalgorithm provides the consistent tangent stiffness matrix:
{rj+1, ∆λj+1} :
{εr = rj+1 − re + Kem∆λj+1 = 0
εf = f (rj+1) = 0
↓[rk+1j+1
∆λk+1j+1
]=
[rkj+1
∆λkj+1
]−[∂εr∂r
∂εr∂∆λ
∂εf∂r
∂εf∂∆λ
]−1 [εkrεkf
]↓[
rk+1j+1
∆λk+1j+1
]=
[rkj+1
∆λkj+1
]−
[∂r∂εr
∂r∂εf
∂∆λ∂εr
∂∆λ∂εf
][εkrεkf
]
Institute of Structural Engineering Method of Finite Elements II 22
Consistent Tangent Stiffness
The Jacobian computed for the last iteration of the Newton-Raphsonalgorithm provides the consistent tangent stiffness matrix:
{rj+1, ∆λj+1} :
{εr = rj+1 − re + Kem∆λj+1 = 0
εf = f (rj+1) = 0
↓
Kj+1 =∂rj+1
∂uj+1=
∂rj+1
∂∆uj+1= −
∂rj+1
∂εr
∂εr∂∆uj+1
with,
∂ (∆uj+1) = ∂ (uj+1 − uj) = ∂uj+1 −���>
constant∂uj = ∂uj+1
Institute of Structural Engineering Method of Finite Elements II 22
Consistent Tangent Stiffness: Spring-Slider System
For the spring-slider system, the consistent tangent stiffness matrixreads:
εr = rj+1 − re + Kem∆λj+1 = rj+1 −
(rj + Ke
(∆uj+1 −m∆λj+1
))[∂r∂εr
∂r∂εf
∂∆λ∂εr
∂∆λ∂εf
]=
[I− KemnT
nT KemKem
nT KemnT
nT Kem−1
nT Kem
]↓
Kj+1 =∂rj+1
∂uj+1=
∂rj+1
∂∆uj+1= −
∂rj+1
∂εr
∂εr∂∆uj+1
=
(I− KemnT
nTKem
)Ke
with,
∂ (∆uj+1) = ∂ (uj+1 − uj) = ∂uj+1 −���>
constant∂uj = ∂uj+1
Institute of Structural Engineering Method of Finite Elements II 23
Return Mapping Algorithm: Code Template
1: ∆uj+1 ← uj+1 − uj
2: re ← rj + Ke∆uj+1
3: if f (re) ≥ 0 then4: rj+1 ← re5: ∆λj+1 ← 06: εr ← rj+1 − re + Kem∆λj+1
7: εf ← f (rj+1)8: repeat
9:
[rj+1
∆λj+1
]←
[rj+1
∆λj+1
]−
[∂εr∂r
∂εr∂∆λ
∂εf∂r
∂εf∂∆λ
]−1 [εr
εf
]10: εr ← rj+1 − re + Kem∆λj+1
11: εf ← f (rj+1)12: until ‖ε‖ >= Tol13: Kj+1 ← − ∂r
∂εr
∂εr∂uj+1
14: else if f (re) < 0 then15: rj+1 ← re
16: Kj+1 ← Ke
17: end if
Institute of Structural Engineering Method of Finite Elements II 24
Associated vs. Non-Associated Plastic Flow
Some concluding remark:
nT = [1,tanϕ] : outward normal of the yielding surface (in thestress/force space)
mT = [1,tanψ] : direction of the plastic deformation flow (inthe strain/displacement space)
m = n : the plastic deformation flow and the normal to theyielding surface are co-linear. This is the so called associatedplasticity case that holds, for example, for metals.
m 6= n : the plastic deformation flow and the normal to theyielding surface are not co-linear. This is the so callednon-associated plasticity case that holds, for example, for soils.
Institute of Structural Engineering Method of Finite Elements II 25
Nonlinear Static Analysis (r,u) (Force Control)
So far we focused on calculating the force response of a singleelement given a displacement trial ...
... but we want to solve the static response of a model subjected toan external load history.
Therefore, we need to solve the following balance equation,
r (uj)− fj ,ext = 0
where j is the analysis step index and,
uj : displacement vector
r (uj) : restoring force vector
fj ,ext : imposed load vector
Institute of Structural Engineering Method of Finite Elements II 26
Nonlinear Static Analysis (r,u) (Force Control)
1: for j = 1 to J do2: uj ← uj−1
3: for i = 1 to I do4: [ri,j ,Ki,j ]← element (Ziuj)5: rj ← rj + ZT
i ri,j6: Kj ← Kj + ZT
i Ki,jZi
7: end for8: res← rj − fj,ext9: repeat
10: jac← Kj
11: uj ← uj − jac−1res12: for i = 1 to I do13: [ri,j ,Ki,j ]← element (Ziuj)14: rj ← rj + ZT
i ri,j15: Kj ← Kj + ZT
i Ki,jZi
16: end for17: res← rj − fj,ext18: until ‖res‖ >= Tol19: end for
Institute of Structural Engineering Method of Finite Elements II 27
Nonlinear Static Analysis (r,u) (Displacement Control)
In case the the restoring force is bounded, balance may not besatisfied for high loads ...
... imposing a displacement history is more convenient in this case.
Therefore, we need to solve both balance and compatibilityequations, {
r (uj) + LTλj = 0
Luj − uj ,ext = 0
where j is the analysis step index and,
uj : displacement vector
r (uj) : restoring force vector
uj ,ext : imposed displacementvector
λj : imposed load vector
L : collocation matrix
Institute of Structural Engineering Method of Finite Elements II 28
Nonlinear Static Analysis (r,u) (Displacement Control)
1: for j = 1 to J do
2: uj ← uj−1
3: λj ← λj−1
4: for i = 1 to I do5:
[ri,j ,Ki,j
]← element
(Ziuj
)6: rj ← rj + ZT
i ri,j
7: Kj ← Kj + ZTi Ki,jZi
8: end for
9: res←[
rj + LTλjLuj − uj,ext
]10: repeat
11: jac←[
Kj LT
L 0
]12: ∆x← −jac−1res
13: uj ← uj + ∆x (1)
14: λj ← λj + ∆x (2)
15: for i = 1 to I do16:
[ri,j ,Ki,j
]← element
(Ziuj
)17: rj ← rj + ZT
i ri,j
18: Kj ← Kj + ZTi Ki,jZi
19: end for
20: res←[
rj + LTλjLuj − uj,ext
]21: until ‖res‖ >= Tol
22: end for
Institute of Structural Engineering Method of Finite Elements II 29