Вы находитесь на странице: 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 Differential Equations (ODEs),

Stress and

Strain.

The basics of ODEs you can find 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 differential 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 differential 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 fluid as a matrix equation of the following form:

Ka = f

Here K is a symmetric, positive definite stiffness 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 definition 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 infinitesimal 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 definition 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 define 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 find a nice example on page 88:

and Taylor we can find a nice example on page 88: We see a triangle element

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 first need to define 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 .

88 of Zienkiewicz and Taylor how he derives the N i . For our example they

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 find a way of expressing K.

It is defined 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 defined as B = SN or per node i as B i = SN i . We already know N i from above. S is according to the definition 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 find 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?