Sie sind auf Seite 1von 1

Australian Defence Force Academy

School of Aerospace and Mechanical Engineering


INTRODUCTION TO THE FINITE ELEMENT METHOD
by Murat TAHTALI, 09/10/01 15:02
1
TUTORIAL 3: BCs and SOLUTION with MATLAB

From the last tutorial, we have the global stiffness matrix [K], which is symmetric and
singular, ie, it cannot be inverted yet.
The introduction of BCs means the reduction of the number of unknowns in the system of
equations [K]{x}={F}. Without proper constrains, the model would exhibit rigid body
motion, which is useless in calculating deflections and reactions (since there are none!).
Our aim is to solve [K]{x}={F} for the unknowns {x}. In actual fact, not all of {x} are
unknown due to the BCs, but will treat {x} as the unknown vector. To start with,{F} contains
all external forces applied to the system (the reactions will be calculated later). {F} is also
referred as RHS (right-hand-side) of the equation.
The introduction of the BCs is a simple systematic process that can be summarised with the
following steps:
Step 1: INITIALISATION OF {F}, {x} AND {FLAG}
Initialise the vector {F} with all the known external forces and the rest to zero. F(1)=30,
F(2)=0, F(3)=0, F(4)=-45. Initialise the vector {x} with all known displacements. Initialise the
vector {FLAG} of the same size as {x} with zeros and set FLAG(i)=1 for all known x
i
.
Step 2: 1
st
UPDATING OF {F} WITH THE BOUNDARY CONDITIONS
Since only the external force or the displacement can be given as BC for a node, NOT both,
this only applies to all Fs set to zero: Replace F
i
=x
i
for all known x
i
(for all FLAG(i)==1).
So, F(2)=x(2).
Step 3: UPDATING OF [K] WITH THE BOUNDARY CONDITIONS
Before doing this, make a backup copy of [K], say [KK].
For all FLAG(m)==1, set K(m,m)=1, K(m,j)=0 and K(j,m)=0 for all jm
Step 4: 2
nd
UPDATING OF {F} WITH THE BOUNDARY CONDITIONS
For all FLAG(m)==0, set F(m)=F(m)-KK(m,i)*x(i) for all FLAG(i)==1
Step 5: COMPUTE {x}=[K]
-1
{F} USING GAUSSIAN ELIMINATION
Use the provided Gaussian Elimination macro GaussElimPivot.m on leofric at
/home/ugrad2/murat/matlab. To copy this file to your directory, type the following:
cp /home/ugrad2/murat/matlab/GaussElimPivot.m . <ENTER>
WITHOUT THE QUOTES!!! And dont forget the .
Step 6: COMPUTE {F}=[K] {x}

Das könnte Ihnen auch gefallen