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

Finite Element Method I

Getting Started

Melanie Ganz

ganz@diku.dk

Department of Computer Science University of Copenhagen

11. Januar 2010

Getting Started

Before we start on FEM, we should be clear on what you need to know a bit about

Ordinary Diﬀerential Equations (ODEs),

Stress and

Strain.

The basics of ODEs you can ﬁnd in any math text book and an introductory lecture to stress and strain from last year’s course, Physics Based Animation, is uploaded on Absalon.

What Is FEM?

FEM is a procedure for obtaining numerical approximations to the solution of boundary value problems.

So What Are Boundary Value Problems?

If we e.g. have two ordinary diﬀerential equations (ODEs)

x˙ i = v i

v˙ i =

F i

m i

(that could e.g. results from the second law of motion, F i = m i x¨ i ), then given x i (0), v i (0) we call it an

Initial Value Problem (IVP)

and given x i (0), x i (T ), we call it a

Boundary Value Problem (BVP)

Back To What Is FEM?

So FEM is a procedure for obtaining numerical approximations to the solution of boundary value problems, which are sets of ordinary diﬀerential equations whose solution is subject to certain boundary conditions.

What Is FEM In Detail?

The general idea is to formulate a deformation of a solid or ﬂuid as a matrix equation of the following form:

Ka = f

Here K is a symmetric, positive deﬁnite stiﬀness matrix, a is a vector of nodewise displacements and f is a vector of external forces. The goal of FEM is to solve for a.

How do we get there?

How can we get to this mysterious matrix equation?

Ka = f

By e.g. applying the Principle of Virtual Work.

Back to the Basics: Work

The deﬁnition of mechanical work is given by

W = C F · ds,

where C is the curve transversed by the object, F is the force vector acting on the object and s is the position vector of the object.

Back to the Basics: Principle of Virtual Work

The Principle of Virtual Work establishes a relation between variations in internal and external work due to inﬁnitesimal displacement variations for a deformable body.

 Internal work = Ω δ T σdΩ (1) External work = Ω δu T bdΩ + Γ δu T tdΓ (2)

Here σ are internal stresses, b are external body forces and t are the external surface forces, while δ are strains and δu are displacements. Ω is the volume or area and Γ the boundary of the elements we consider.

Back to the Basics: Principle of Virtual Work

For a general deformable body the Principle of Virtual Work can then be written as

δ T σdΩ = δu T bdΩ + Γ δu T tdΓ

(see also Zienkiewicz and Taylor, chapter 3, page 55, eq. 3.47) This means that arbitrary virtual displacements must lead to identical variations in internal and external work.

From there on

We make the following substitutions in our virtual work equations (see Zienkiewicz and Taylor, Appendix C):

We approximate the overall displacement by the sum of small displacements at each node u = i N i a i = Na

We use the deﬁnition of strain = SNa = Ba and

stress σ = D( 0 ) + σ 0 , but

We remember that (ab) T = b T a T .

set 0 = σ 0 = 0.

From there on

This way we get

δaB T DBadΩ = δaN T bdΩ + Γ δaN T tdΓ

which can be written as

δa B T DBda N T bd Γ N T tdΓ = 0

From there on

Since this has to hold for all arbitrary displacements δa we end up with the solution if

B T DBda N T bd Γ N T tdΓ = 0

This can also be written as

Ka = f,

if we deﬁne K = B T DBdΩ and f = N T bdΩ + Γ N T tdΓ.

How do we do this in practice?

We’ll learn how to do that by a simple example now and in the exercise this week!

A Simple Example

In Zienkiewicz and Taylor we can ﬁnd a nice example on page 88: We see a triangle element as it could also appear in a deformable body. So let’s try to assemble an equation like

for it.

Ka = f,

A Simple Example

We ﬁrst need to deﬁne the displacements u and how to calculate them as given in u = i N i a i = Na. You can follow on page 88 of Zienkiewicz and Taylor how he derives the N i . For our example they look like this:

N i = a i + b i x + c i y

2A tri

I

where a i = x j y m x m y j ,b i = y j y m ,c i = x m x j , A tri is the area of the triangle ijm and I is a two by two identity matrix.

A Simple Example

Next we need to ﬁnd a way of expressing K.

It is deﬁned as K = B T DBd Ω, but since we only have one element we can drop the integral and get

K = B T DB

Let’s start with B: It is deﬁned as B = SN or per node i as B i = SN i . We already know N i from above. S is according to the deﬁnition of total strain given as

S =

x

0

y

0

y

x

A Simple Example

Next we look for D: For planar stress in an isotropic material you can ﬁnd the elasticity matrix to be

D =

1 ν 2

E

1

ν

0

ν

1

0

0

0

1ν

2

,

where E is the elastic modulus and ν is Poisson’s ratio.

A Simple Example

To get the right hand side of our matrix equation, we need to calculate f = N T bdΩ + Γ N T tdΓ. We already know N. What we need is b. For plane stress that will simply look like

b = (b x , b y ) T .

The tricky part is now to carry out the integration f 1 = N T bdΩ. (You can see the details on page 96 in Zienkiewicz and Taylor.) Important is that one ends up with

f e = (f

i

e

, f

j

e

m ) T

, f

e

=

A tri

3

(b x , b y , b x , b y , b x , b y ) T ,

which means that the total forces acting in the x and y directions are distributed to the three nodes in equal parts.

A Simple Example

The last missing piece is t in f 2 = Γ N T tdΓ. t are the external surface forces, like pressure, and they will depend on the problem we are given. If one e.g. gets the application of a force acting like gravity on all nodes i, then

t = (0, t y ).

If we have a force pulling just on e.g. the third node, we can engineer f 2 to sth. like

f 2 = (0, 0, 0, 0, 0, t y ) T .

A Simple Example

If you now plug in numbers for the coordinates and the forces, you end up with a matrix equation

Ka = f,

that you can solve with MatLab.

That is It!

Questions?