Deriving shape function for 2d finite element analysis

finite element method

I have recently learned about finite element analysis. I mainly focus on structural mechanics.
A common element for 2d is the triangle with 3 nodes. I will first make an example of how I would compute the shape functions for a 3-node triangular element and then why this does not seem to work for a 6-node element.


enter image description here

  1. $x(r,s) = a_0 + a_1 \cdot r + a_2 \cdot s = \sum_{i=1}^{3} h_i \cdot x_i$ (similar for $y$)
  2. rewrite (1) as: $x(r,s) = \phi \cdot (a_0, a_1, a_2)^T$ where $\phi = (1,r,s)$
  3. plugging in boundary conditions:

\begin{array} {|r|r|}\hline & a_0 & a_1 & a_2 \\ \hline x(0,0)=x_1 & 1 & 0 & 0 \\ \hline x(1,0)=x_2 & 1 & 1 & 0 \\ \hline x(0,1)=x_3 & 1 & 0 & 1 \\ \hline \end{array}

If we define:

$$\hat{\phi} = \begin{bmatrix}1 & 0 & 0\\1 & 1 & 0\\1 & 0 & 1\end{bmatrix}$$

we get the functions $h1,h2,h3$ by:

$$(h1,h2,h3) = \phi \cdot \hat{\phi}^{-1}$$

This works as long as the matrix $\hat{\phi}$ is invertible.


Applying the same for a 6-node triangle results in a singular matrix:

  1. $x(r,s) = a_0 + a_1 \cdot r + a_2 \cdot s + a_3 \cdot rs + a_4 \cdot r^2s + a_5 \cdot rs^2 = \sum_{i=1}^{6} h_i \cdot x_i$
  2. rewrite (1) as: $x(r,s) = \phi \cdot (a_0, a_1, a_2, a_3, a_4, a_5)^T$ where $\phi = (1,r,s,rs,r^2s, rs^2)$

\begin{array} {|r|r|}\hline & a_0 & a_1 & a_2 & a_3 & a_4 & a_5 \\ \hline x(0,0)=x_1 & 1 & 0 & 0 & 0 & 0 & 0 \\ \hline x(1,0)=x_2 & 1 & 1 & 0 & 0 & 0 & 0 \\ \hline x(0,1)=x_3 & 1 & 0 & 1 & 0 & 0 & 0 \\ \hline x(\frac{1}{2},0) = x_4 & 1 & \frac{1}{2} & 0 & 0 & 0 & 0 \\ \hline x(\frac{1}{2},\frac{1}{2}) = x_5 & 1 & \frac{1}{2} & \frac{1}{2} & \frac{1}{4} & \frac{1}{8} & \frac{1}{8} \\ \hline x(0,\frac{1}{2}) = x_6 & 1 & 0 & \frac{1}{2} & 0 & 0 & 0 \\ \hline \end{array}

It can be seen that the given matrix $\hat{phi}$ is singular and therefor cannot be inverted.
I am curious how one would derive the functions $h1,h2,..$ for the isoparametric triangle with 6 nodes.

I am very happy for any help!

Greetings
Finn

Best Answer

I think the prooblem is that $\{1,r,s,rs,r^2s,s^2r\}$ is not the correct basis to be using. For a triangular element, the $6$ degree of freedom basis is $\{1,r,s,rs,r^2,s^2\}$, and you will notice then that if $x = a_0 + a_1r + a_2s +a_3rs + a_4r^2 a_5s^2$, then the value corresponding to the $(0,1/2)$ and $(1/2,0)$ result in non zero $a_4$ and $a_5$ coefficients, and so the matrix is nonsingular.

Moreover, the expansion you are using $x = a_0 + a_1r + a_2s +a_3rs + a_4r^2s a_5s^2r$ is a polynomial of partial order $2$ (whereas it is a polynomial of total order 3), and is generally related to quadrilateral elements, e.g., in this case the correct basis is $\{1,r,s,rs,r^2,s^2,r^2s,s^2r,r^2s^2\}$, and has 10 degrees of freedom.

Related Question