Вы находитесь на странице: 1из 66

FINITE ELEMENT : MATRIX FORMULATION

Georges Cailletaud
Ecole des Mines de Paris, Centre des Materiaux
UMR CNRS 7633

Contents

1/67

Contents

Discrete versus continuous

Element
Interpolation
Element list

Global problem
Formulation
Matrix formulation
Algorithm

Continuous DiscreteContinuous

How much rain ?


Discrete versus continuous

3/67

Continuous DiscreteContinuous

Geometry discretization
Discrete versus continuous

4/67

Continuous DiscreteContinuous

Unknown field discretization


Discrete versus continuous

5/67

Continuous DiscreteContinuous

Use elements
Discrete versus continuous

6/67

Finite Element Discretization


Replace continuum formulation by a discrete representation for unknowns
and geometry
Unknown field:
ue (M) =

Nie (M)qei

Geometry:
x(M) =

Nie (M)x(Pi )

Interpolation functions
and shape functions Nie such as:
X
M,
Nie (M) = 1 and Nie (Pj ) = ij
Nie

Isoparametric elements iff Nie Nie

Discrete versus continuous

7/67

Contents

Discrete versus continuous

Element
Interpolation
Element list

Global problem
Formulation
Matrix formulation
Algorithm

2D-mapping

Subparametric
element

Superparametric
element

Isoparametric
element

Geometry

Geometry

Geometry

Unknown field

Unknown field

Unknown field

more field nodes


than geometrical nodes

more geometrical nodes


than field nodes

same number of
geom and field nodes

Rigid body displacement not represented for superparametric element that has nonlinear edges !
The location of the node at the middle of the edge is critical for quadratic edges

Element

9/67

Shape function matrix, [N] Deformation matrix, [B]

Field u, T , C
Gradient
, grad(T ),. . .
:
,
Constitutive equations
=

q = kgrad(T )

Conservation div (
) + f = 0, . . .

First step: express the continuous field and its gradient wrt the
discretized vector

Element

10/67

Deformation matrix [B] (1)

Knowing:
ue (M) =

Nie (M)qei

Deformation can be obtained from the nodal displacements, for


instance in 2D, small strain:
xx =

N1 (M) e
ux
N2 (M) e
=
q1x +
q2x + . . .
x
x
x

yy =

uy
N1 (M) e
N2 (M) e
=
q1y +
q2y + . . .
y
y
y

2xy =

Element

ux
uy
N1 (M) e
N2 (M) e
+
=
q1x +
q1y + . . .
y
x
y
x

11/67

Deformation matrix [B] (2)


Matrix form, 4-node quadrilateral

e
q1x
e
q1y

...
e
q4y

{u} = [N]T {q} =

{} = [B]T {q}

N1,x
0
N1,y
= 0
N1,y N1,x

N1
0

N2,x
0
N2,y

0
N1

N2
0

0
N2,y
N2,x

0
N2

N3,x
0
N3,y

N3
0

0
N3,y
N3,x

0
N3

N4
0

N4,x
0
N4,y

0
N4

0
N4,y
N4,x

e
q1x
e
q1y
...
e
q4y

Shear term taken as = 212

Element

12/67

Reference element

Reference element
Parent space (, )

Actual geometry
Physical space (x, y )
Z

+1

+1

f (x, y )dxdy =

f (, )Jdd
1

J is the determinant of the partial derivatives x/. . . matrix


Element

13/67

Remarks on geometrical mapping

The values on an edge depends only on the nodal values on the same
edge (linear interpolation equal to zero on each side for 2-node lines,
parabolic interpolation equal to zero for 3 points for 3-node lines)
Continuity...
The mid node is used to allow non linear geometries
Limits in the admissible mapping for avoiding singularities

Element

14/67

Mapping of a 3-node line


1.5
x2 =0

1
x

0.5

x2 =1/2

x2 =1

-0.5
-1

-1

-0.5

Physical segment:
Parent segment:

0.5

x1 =-1 x3 =1
1 =-1 3 =1

x = + 1 2 x2

Element

1 6 x2 6 1
2 =0

15/67

Jacobian and inverse jacobian matrix

x

= y

dx
dy

x
=
x

[J]

d
d

x  
 
d = [J] d
y d
d

 
 
y dx = [J]1 dx
dy
dy
y

Since (x, y ) are known from Ni (, ) and xi ,


is computed from the known quantities in [J], using also:
J = Det ([J]) =

Element

y x
x y



16/67

Expression of the inverse jacobian matrix


y
1
= x
J

[J]

y

x

For a rectangle [a, b] in the real world, the mapping function is


the same for any point inside the rectangle. The jacobian is a
diagonal matrix, with x/ = a, y / = b, and the determinant
value is ab
For any other shape, the mapping changes according to the
location in the element
For computing [B], one has to consider Ni /x and Ni /y :
Ni
Ni
Ni
=
+
x
x

Ni
Ni
Ni
=
+
y
y

Element

then

Ni /x
Ni /y

= [J]

Ni /
Ni /

17/67

Contents

Discrete versus continuous

Element
Interpolation
Element list

Global problem
Formulation
Matrix formulation
Algorithm

2D solid elements

Type

shape

C2D3
C2D4
C2D6
C2D8
C2D9

tri
quad
tri
quad
quad

Element

interpol
of disp
lin
lin
quad
quad
quad

# of
nodes
3
4
6
8
9

polynom
terms
1, ,
1, , ,
1, , , 2 , , 2
1, , , 2 , , 2 , 2 , 2
1, , , 2 , , 2 , 2 , 2 , 2 2

19/67

3D solid elements

Type
C3D4
C3D6
C3D8
C3D10
C3D15

tetra
tri prism
hexa
tetra
tri prism

interpol
of disp
lin
lin
lin
quad
quad

C3D20

hexa

quad

20

C3D27

hexa

quad

27

Element

shape

# of
nodes
4
6
8
10
15

polynom
terms
1, , ,
1, , , , ,
1, , , , , , ,
1, , , , 2 , , 2 , , 2 ,
1, , , , , , 2 , , 2 , 2 ,
2 , 2 , 2 2 , 2 , 2 2
1, , , , 2 , , 2 , , 2 , ,
2 , 2 , 2 , 2 , 2 , 2 , ,
2 , 2 , 2
i j k , (i, j, k) 0, 1, 2

20/67

Isoparametric representation
Example: 2D plane stress elements with n nodes
Element geometry
n
X
1=
Ni

x=

i=1

n
X

N i xi

y=

i=1

Displacement interpolation
n
X
ux =
Ni uxi

Element

N i yi

i=1

uy =

n
X

i=1

Matrix form

1
1
x x1

y = y1

ux ux1
uy
uy 1

n
X

Ni u y i

i=1

1
x2
y2
ux2
uy 2

1
x3
y3
ux3
uy 3

...
...
...
...
...

N1
1
N2
xn
N3

yn
.

uxn
.
uyn
Nn

21/67

IFEMFelippa

The linear triangle

Terms in 1, ,
Element

22/67

IFEMFelippa

The bilinear quad

Terms in 1, , ,

Element

23/67

IFEMFelippa

The quadratic triangle

Terms in 1, , , 2 , , 2
Element

24/67

IFEMFelippa

The biquadratic quad

Terms in 1, , , 2 , , 2 , 2 , 2 , 2 2
Element

25/67

IFEMFelippa

The 8-node quad

1
(1 + i )(1 + i )(i + i 1)
4
1
Mid nodes, i = 0: Ni = (1 2 )(1 + i )
2
1
Mid nodes, i = 0: nI = (1 2 )(1 + i )
2
Corner nodes: Ni =

Terms in 1, , , 2 , , 2 , 2 , 2
Element

26/67

Approximated field

Polynomial basis

Examples :
C2D4
C2D8, corner
C2D8 middle

Element

(1 + i )(1 + i )
0.25(1 + i + i )(1 + i )(1 + i )
0.25(1. 2 )(1. + i )

27/67

The 2-node infinite element


Displacement is assumed to be q1 at node 1 and q2 = 0 at node 2
x

x2

x1

Interpolation
N1 =

1
2

N2 =

1+
2

Geometry
1+
1
=?

N1 such as x = x1 +

N2 = 0

Resulting displacement interpolation


u(x) =??
Element

28/67

The 2-node infinite element


Displacement is assumed to be q1 at node 1 and q2 = 0 at node 2
x
x2

x1

Interpolation
N1 =

1
2

N2 =

1+
2

Geometry
1+
1
x x1
=
x x1 +

N1 such as x = x1 +

N2 = 0

Resulting displacement interpolation


u(x) =?
Element

29/67

The 2-node infinite element


Displacement is assumed to be q1 at node 1 and q2 = 0 at node 2
x
x2

x1

Interpolation
N1 =

1
2

N2 =

1+
2

Geometry
1+
1
x x1
=
x x1 +
Resulting displacement interpolation
N1 such as x = x1 +

u(x) = N1 (x) q1 = N1 ((x)) q1 =


Element

N2 = 0

q1
x x1 +
30/67

Connecting element
7

Connection between
a linear and a
quadratic quad

4
quad.

lin.
1

Quadratic interpolation with node number 8 in the middle of 17:


u(M) = N1 q1 + N8 q8 + N7 q7
On edge 17, in the linear element, the displacement should verify:
q8 =?
Overloaded shape function in nodes 1 and 7 after suppressing node
8:
u(M) =??
Element

31/67

Connecting element
7

Connection between
a linear and a
quadratic quad

4
quad.

lin.
1

Quadratic interpolation with node number 8 in the middle of 17:


u(M) = N1 q1 + N8 q8 + N7 q7
On edge 17, in the linear element, the displacement should verify:
q8 = (q1 + q7 )/2
Overloaded shape function in nodes 1 and 7 after suppressing node
8:
u(M) =??
Element

32/67

Connecting element
7

Connection between
a linear and a
quadratic quad

4
quad.

lin.
1

Quadratic interpolation with node number 8 in the middle of 17:


u(M) = N1 q1 + N8 q8 + N7 q7
On edge 17, in the linear element, the displacement should verify:
q8 = (q1 + q7 )/2
Overloaded shape function in nodes 1 and 7 after suppressing node
8:




N8
N8
u(M) = N1 +
q1 + N7 +
q7
2
2
Element

33/67

Contents

Discrete versus continuous

Element
Interpolation
Element list

Global problem
Formulation
Matrix formulation
Algorithm

Thermal conduction
Strong form:
GIVEN

FIND

r
d
Td
T

R, a volumetric flux,
f R, a surface flux,
u R, a prescribed temperature,
R, the temperature, such as:

:
:
:
:

in
on u
on F

i,i
T
i ni

=r
= Td
= d

Constitutive equation (Fourier, flux (W /m2 ) proportional to the


temperature gradient)
i = ij T ,j

Global problem

conductivity matrix:

[]

(W /m.K )

35/67

Thermal conduction (2)


Weak form:
S,
V,
GIVEN

FIND

trial solution space, such as T = T d on u


variation space, such as T = 0 on u
r : R, a volumetric flux,
d : f R, a surface flux,
T d : u R, a prescribed temperature,
T S such as T V
Z

Z
i T ,i d =

Z
Trd +

T d d

For any temperature variation compatible with prescribed temperature


field around a state which respects equilibrium, the internal power
variation is equal to the external power variation: T ,i i is in W /m3
T is present in i = ij T ,j

Global problem

36/67

Elastostatic

Strong form:

volume with prescribed volume forces f d


surface F with prescribed forces Fd
surface u with prescribed displacements ud
Constitutive equation: ij = ijkl kl = ijkl uk,l
So that: ijkl uk,lj + fi = 0

Global problem

:
:
:

ij,j + fi = 0
Fid = ij nj
ui = uid

37/67

Principle of virtual power

Weak form:

volume V with prescribed volume forces : f d


surface F with prescribed forces : Fd
surface u with prescribed displacements : ud
Virtual displacement rate u kinematically admissible (u = u d on u )

The variation u is such as: u = 0 on u . Galerkin form writes, u:


Z
Z
Z

:
d =
f d u d +
Fd u dS

Global problem

38/67

Discrete form of virtual power


Application of Galerkin approach for continuum mechanics:
virtual displacement rate u w h

u h ,x

{u e }, nodal displacements allow us to compute u and


:
u = [N]{u e } ;

= [B]{u e }

Galerkin form writes, {u e }:


 X Z
X Z
e
e
{({u }).[B].{u } d =
f d .[N].{u e } d

elt

elt

Z
+

Fd .[N].{u e } dS

Global problem

39/67

Internal and external forces


In each element e:
Internal forces:
e
{Fint
}=

{({u e }).[B] d =

[B]T {({u e }) d

External forces:
e
{Fext
}=

f d .[N]d +

Fd .[N]dS

e
e
The solution of the problem: {Fint
({u e })} = {Fext
} with Newton
iterative algorithm will use the jacobian matrix :
e
{Fint
}
{u e }
Z
{} {}
= [B]T .
.
d
{} {u e }

Z
{}
= [B]T .
.[B] d
{}

[K e ] =

Global problem

40/67

Linear and non linear behavior

Applying the principle of virtual power Stationnary point of


Potential Energy
For elastic behavior
Z
] .[B] d
[K e ] = [B]T .[

is symmetric, positive definite (true since


and
are conjugated)



{}
. Note
For non linear behavior, one has to examine [Lc ] =
{}
that [Lc ] can be approached (quasi-Newton).
e
{Fext
} may depend on {u e } (large displacements).

Global problem

41/67

Elastostatic, strong and weak form, a summary


BCu

Displacements
u

Body forces
f

Kinematics

Equilibrium
Strains

Stresses

Constitutive
equations

STRONG

BCs

WEAK
d

BCu: u = u on u

BCu: u h = u d on u

Kinematics: = [B] u in

Kinematics: = [B] u h in

Constitutive equation:
=

Constitutive equation:
=

Equilibrium: [B] + f = 0

Equilibrium: = 0

BCs: n = F on F

BCs: = 0

Global problem

42/67

Contents

Discrete versus continuous

Element
Interpolation
Element list

Global problem
Formulation
Matrix formulation
Algorithm

Matrixvectors formulation of the weak form of the


problem
[K ] {q} = {F }
Thermal conduction:
Z
T
[K ] =
[B] [] [B] d

{F } =

Elasticity:
Z
T
[K ] =
[B] [] [B] d

[N] d d

[N] rd +

[N] f d d +

{F } =

[N] Fd d

In each element e:
Internal forces:
e
{Fint
}=

{({u e }).[B] d =

[B]T {({u e }) d

External forces:
e
}
{Fext

Global problem

Z
=

f .[N]d +

Fd .[N]dS
44/67

The stiffness matrix

Example of a 4-node quad and of a 20-node hexahedron ()

[B]

[D]

3 (6)

8
(60)

[B]

3 (6)

3
(6)

[K ]

8 (60)

3
(6)

8 (60)

8
(60)

The element stiffness matrix is a square matrix, symmetric, with no zero


inside.
Its size is equal to the number of dof of the element.
Global problem

45/67

Nodal forces (1)


e
{Fext
}=

[N] F d dS

Ft

Fn

1
6

Fx ds = Ft dx Fn dy
Fy ds = Fn dx + Ft dy

Global problem


with

dx
dy


= [J]

d
d

46/67

Nodal forces (2)


x
y
d
dy =
d

Components 9, 10, for the nodes 5; 11, 12 for nodes 6; 13, 14 for nodes 7
Integration on edge 57:

dx =


y
x
Fn
d

1


Z 1
x
y
e
Fext
(2i) = e
Ni F n
+ Ft
d

e
Fext
(2i 1) = e

Ni

Ft

Example, for a pressure Fn = p, and no shear (Ft = 0) on the 57 edge


of a 8-node rectangle
a 6 x 6 a

y =b

represented by 1 6 6 1 = 1
x
=a

y
=0

N5 = (1 + )/2 N6 = 1 2
Global problem

N7 = (1 )/2
47/67

Nodal forces (3)


(4)

(1)

(1)

F10 = F5y = e
1
1

Z
F12 = F6y = e

1
ap
(1 + )pad =
2
3
(1 2 )pad =

4ap
3

The nodal forces at the middle node are 4 times the nodal forces at
corner nodes for an uniform pressure (distribution 12121... after
adding the contribution of each element)
Global problem

48/67

Nodal forces (4)


Axisymmetric 8-node quad
z

(2)

(1)
7

Face of a 20-node hexahedron


(4)

(1)

(4)

(1)

(1)

(4)

(4)

(1)

Global problem

49/67

Nodal forces (5)

Face of a 27-node hexahedron


who knows ?
Face of a 15-node hexahedron
(3)
(3)
(3)

Global problem

50/67

Assembling the global matrix


6

C
4
3

A
1

Local versus global numbering


Global problem

51/67

Assembling the global matrix


0
F1
BF2
B
BF3
B
BF4
B
BF5
B
@F6
F7

=
=
=
=
=
=
=

F1A
F2A
F3A

1
+F1B
+F2B
+F4B
+F3B

0
q1
Bq2
B
Bq3
B
Bq4
B
Bq5
B
@q6
q7

C
C
C
C
C
+F1 C
C
+F2C C
C
C
+F A
4

+F3C
6

q1A
q2A

=
=
=
=
=
=
=

q3A

= q1B
= q2B
= q4B
= q3B

C
C
C
C
C
= q1 C
C
= q2C C
C
C
=q A
4

= q3C
3

C
4
3

A
1

Global problem

52/67

Assembling the global matrix


11

C
4
3

A
1

Global problem

53/67

Assembling the global matrix


11

21

12
22

C
4
3

A
1

Global problem

54/67

Assembling the global matrix


11

21

31

12
22

13
23

32
33

C
4
3

Global problem

55/67

Assembling the global matrix


11

21

31

12
22

13
23

11

32
33

C
4
3

Global problem

56/67

Assembling the global matrix


11

21

31

12
22

13
23

11

32
33

C
4
3

Global problem

57/67

Assembling the global matrix


11

21

12
22
11
21

31

13

12

23

22

32
33

C
4
3

Global problem

58/67

Assembling the global matrix


11

21

12
22
11
21

31

13

12

23

13

23

22

32
33
31

4
3

Global problem

A
1

33

32

59/67

Assembling the global matrix


11

21

12
22
11
21

31

32
41
31

13

12

23

22

42

32

13

14

23

24
44

11

43

33

4
3

Global problem

A
1

33

34

60/67

Assembling the global matrix


11

21

12
22
11
21

31

32
41
31

13

12

23

22

42

32

13

14

23

24
44

11

43
12

33
21

22

4
3

Global problem

A
1

33

34

61/67

Assembling the global matrix


11

21

12
22
11
21

31

32
41
31

13

12

23

22

42

32

13

14

23

24
44

11

43
12

33
33

34
21

22

13

Global problem

32

C
23

4
3

31

4
1

33

62/67

Assembling the global matrix


11

21

12
22
11
21

31

32
41
31

13

12

23

22

42

32

23

24
44

11

43
12

33
33

34
21

22

14

13

24

23

C
4

41

42

44

43

31

32

34

33

Global problem

13

14

A
1

63/67

Contents

Discrete versus continuous

Element
Interpolation
Element list

Global problem
Formulation
Matrix formulation
Algorithm

Global algorithm

For each loading increment, do while k{R}iter k > EPSI :


iter = 0; iter < ITERMAX ; iter + +
1
Update displacements: {u}iter +1 = {u}iter + {u}iter
2
Compute {} = [B].{u}iter +1 then
for each Gauss point

3
Integrate the constitutive equation:

, I ,

4
Compute int and ext forces: {Fint ({u}t + {u}iter +1 )} , {Fe }
5
Compute the residual force: {R}iter +1 = {Fint } {Fe }
6
New displacement increment: {u}iter +1 = [K ]1 .{R}iter +1

Global problem

65/67

Convergence
Value of the residual forces < R , e.g.
!1/n
||{R}||n =

Rin

||{R}|| = max |Ri |

Relative values:
||{R}i {R}e ||
<
||{R}e ||
Displacements

{U}

k+1


{U}k n < U

Energy

T
{U}k+1 {U}k . {R}k < W

Global problem

66/67

Вам также может понравиться