Triangular Element
Triangular Element
Node sequence
Note: When formulating at the element level, the
element nodal sequence must be in the anti-clockwise
direction for every element in the domain for the finite
element computation to work.
Trial solution
The trial solution is a linear function of form
Where unknown coefficients is to be
determined.
To be FEM trial solution, must yield nodal
solutions at three nodal points, i.e. if substituting
x and y values at each nodal point into the function,
we will have
y a x a a y x u
2 1 0
) , ( + + =
| |
=
2
1
0
1 ) , (
a
a
a
y x y x u
i
a
) , ( y x u
i
u
Compute coefficients
In matrix form
3 3 2 3 1 0
2 2 2 2 1 0
1 1 2 1 1 0
u y a x a a
u y a x a a
u y a x a a
= + +
= + +
= + +
| | } { } {
1
1
1
3
2
1
2
1
0
3 3
2 2
1 1
u a A
u
u
u
a
a
a
y x
y x
y x
=
(
(
(
Compute coefficients
Hence
is area of the linear triangular element
The element node numbering must be in
sequence to make the determinant a positive
number
| |
(
(
(
=
3
2
1
1 2 3 1 2 3
2 1 1 3 3 2
1 2 2 1 3 1 1 3 2 3 3 2
2
1
0
1
2
1
} { } {
u
u
u
x x x x x x
y y y y y y
y x y x y x y x y x y x
A
a
a
a
u A a
area
area
A
3 3
2 2
1 1
1
1
1
2
1
y x
y x
y x
A
area
=
Trial solution
Substitute found coefficient vector {a} into
function for trial solution and rearrange the
terms to describe in the form
is shape function at node i. It has a
value of 1 at node i and a value of 0 at two
other nodes. Its formula is
) , ( y x u
3 3 2 2 1 1
) , ( ) , ( ) , ( ) , ( u y x N u y x N u y x N y x u + + =
) , ( y x N
i
Shape functions
We see that the shape function is in the form
Its derivatives are
y b x b b y x N
i i i
i
) (
2
) (
1
) (
0
) , ( + + =
( ) ( ) ( ) | | y x x x y y y x y x
A
y x N
area
2 3 3 2 2 3 3 2 1
2
1
) , ( + + =
( ) ( ) ( ) | | y x x x y y y x y x
A
y x N
area
3 1 1 3 3 1 1 3 2
2
1
) , ( + + =
( ) ( ) ( ) | | y x x x y y y x y x
A
y x N
area
1 2 2 1 1 2 2 1 3
2
1
) , ( + + =
) (
1
i
i
b
x
N
=
c
c
) (
2
i
i
b
y
N
=
c
c
For each element
Matrix [B(x,y)]
| |
(
(
(
=
(
(
(
(
(
(
(
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
=
) 3 (
1
) 3 (
2
) 2 (
1
) 3 (
2
) 2 (
2
) 3 (
1
) 2 (
2
) 1 (
1
) 1 (
2
) 1 (
2
) 2 (
1
) 1 (
1
3 3 2
3 2
1
2 1 1
1
1 1
0
0 0
0 0
0
0
0 0
0 0
0
) , (
b b b
b b
b
b b b
b
b b
x
N
y
N
x
N
y
N
y
N
x
N
y
N
x
N
y
N
y
N
x
N
x
N
y x B
Element stiffness matrix
As terms in matrix B are constant values, the
matrix can be taken out of the integration sign.
The element stiffness matrix becomes
Next, we establish the element nodal load vector
resulted from the body load and the traction.
| | | | | | | | | | | | | | | | | | | |
area
T
Area
T
Area
T
tA B D B dA t B D B dxdy t y x B D y x B K
} }
= = = ) , ( ) , (
Nodal load vector due to body load
In 2D, the body load may be in kN/m2. The
integration is hence performed over the element
area.
If body load is constant over the element domain,
we have
{ } | |
}
=
)
`
=
Area
by
bx
by
bx
by
bx
y
x T
b
f
f
f
f
f
f
dA
q
q
y x N f
3
3
2
2
1
1
) , (
Nodal load vector due to body load
If the body load varies over the element
domain, we can use the shape functions to
interpolate between the nodal values.
It is directly given by isoparametric feature of
the element.
=
)
`
3
3
2
2
1
1
3
3
2
2
1
1
) , ( 0
0 ) , (
) , ( 0
0 ) , (
) , ( 0
0 ) , (
) , (
) , (
y
x
y
x
y
x
y
x
q
q
q
q
q
q
y x N
y x N
y x N
y x N
y x N
y x N
y x q
y x q
Nodal load vector due to body load
Hence
Gauss points and weights are not derived for
element in global coordinates. How do we do
the integration?
{ } | | | |
|
|
.
|
\
|
=
}
3
3
2
2
1
1
) , ( ) , (
y
x
y
x
y
x
Area
T
b
q
q
q
q
q
q
dA y x N y x N f
Nodal load vector due to body load
To overcome the problem with integration, we use the
element average body load multiplying with element area
and distribute equally between the nodes, i.e.
{ }
=
3
3
3
3
3
3
,
,
,
,
,
,
area ave y
area ave x
area ave y
area ave x
area ave y
area ave x
b
A q
A q
A q
A q
A q
A q
f
Nodal load vector due to traction
Next step, we consider the nodal load vector
due to load distributed on the element side
faces.
Nodal load vector due to traction
The traction distributes along the line.
We hence use one-dimensional shape
functions to interpolate the nodal values.
If the traction is constant along the element
edge
{ } | |
} }
=
)
`
=
)
`
=
s s
l
ty
tx
ty
tx
y
x
T
l
y
x T
t
f
f
f
f
ds
t
t
s N
s N
s N
s N
ds
t
t
s N f
2
2
1
1
2
2
1
1
) ( 0
0 ) (
) ( 0
0 ) (
) (
Nodal load vector due to traction
If the traction varies over the element side
face, we use the shape functions to
interpolate between the nodal values.
Having
=
)
`
2
2
1
1
2
2
1
1
) ( 0
0 ) (
) ( 0
0 ) (
) (
) (
y
x
y
x
y
x
t
t
t
t
s N
s N
s N
s N
s t
s t
Nodal load vector due to traction
Substitute the isoparametric expression and
multiply out the terms, the nodal load vector
due to traction becomes
{ } | | | |
(
(
(
(
(
(
(
(
|
|
.
|
\
|
=
}
2
2
1
1
2
2
1
1
3
0
6
0
0
3
0
6
6
0
3
0
0
6
0
3
) ( ) (
y
x
y
x
s s
s s
s s
s s
y
x
y
x
l
T
t
t
t
t
t
l l
l l
l l
l l
t
t
t
t
ds s N s N f
s
Compute matrix terms
I compute one entry of matrix
for illustration.
All other matrix entries are computed in a
similar manner.
Consider the entry located at column 1 and
row 1 intersection.
| | | |
|
|
.
|
\
|
}
s
l
T
ds s N s N ) ( ) (
| | | | | | | |
} }
=
1
1
1 1 1 1
) ( ) ( ) ( ) ( d J N N ds s N s N
T
l
T
s
Compute matrix terms
Where
Substitute these terms in the integral, we
have
2
1
) (
1
= N
2 2
1 2 s
l s s
J =
=
| | | |
3 3
1
4
1
2 2
1
2
) ( ) (
1
1
2 3
1
1
2
1 1
s s
l
s
T
l l
d
l
ds s N s N
s
=
|
.
|
\
|
+ =
|
.
|
\
|
=
} }