Triangle class

Coordinate-free formulation for a finite deformation bi-linear triangle.

Theory
\[\mathbf{X}=\mathbf{X}_0+\mathbf{G}_i \xi^i \quad i=1,2,3 \quad \xi^i \geqslant 0 ~\&~ \xi^1+\xi^2+\xi^3 \leq 1\]
\[d\mathbf{X}=\mathbf{G}_i d \xi^i \rightarrow d \xi^i=\mathbf{G}^i \cdot d \mathbf{X} \quad w/ ~~ \mathbf{G}^i \mathbf{G}_j=\delta_j^i\]
\[\mathbf{x}=\mathbf{x}_0+ \mathbf{g}_i \xi^i\]
\[d\mathbf{x}=\mathbf{g}_i d \xi^i=\left(\mathbf{g} \otimes \mathbf{G}^i\right) \cdot d \mathbf{X}=\mathbf{F} \cdot d\mathbf{\bar{x}} \Longrightarrow \mathbf{F}=\mathbf{g}_i \otimes \mathbf{G}^i\]
\[\mathbf{F}^t \mathbf{F}=g_{i j} \mathbf{G}^i \otimes \mathbf{G}^j \rightarrow \mathbf{E}=\frac{1}{2}\left(\mathbf{F}^t \mathbf{F}-\mathbf{1}\right)=\frac{1}{2}\left(g_{i j}-G_{i j}\right) \mathbf{G}^i \otimes \mathbf{G}^j\]
\[\begin{split}\delta \mathbf{E}=\delta\mathbf{g}_i \otimes \mathbf{G}^i=\left(\delta \mathbf{x}_i-\delta \mathbf{x}_0\right) \otimes \mathbf{G}^i=\delta \mathbf{x}_\alpha \otimes \mathbf{G}^\alpha \quad \underline{\text { note }}: \quad \begin{array}{l} i=1,2,3 \\ \alpha=0,1,2,3 \end{array}\end{split}\]

where \(\mathbf{G}^0=-\mathbf{G}^1-\mathbf{G}^2-\mathbf{G}^3\) and

\[\delta\mathbf{F} =\left(\mathbf{G}^\alpha \otimes \delta\mathbf{x}_\alpha\right)\left(\mathbf{g}_i \otimes \mathbf{G}^i\right) =\delta\mathbf{x}_\alpha \cdot \underbrace{\mathbf{g}_i \otimes \overbrace{\mathbf{G}^\alpha \otimes \mathbf{G}^i}^{\bar{\mathbf{G}}^a}}_{=: {\mathbf{B}^{\alpha}}^t} =\delta\mathbf{x}_\alpha \cdot{\mathbf{B^{\alpha}}^t}\]

Parent class

See also

Class doc

class femedu.elements.linear.Triangle.Triangle(node0, node1, node2, material, label=None)

class: representing a 3-noded plane triangle

computeSurfaceLoads()

compute surface loads using faces

This method should be called during updateState() by every element supporting surface loads

resetLoads()

default implementation for resetting element loads.

setSurfaceLoad(face, pn, ps=0)

face ID

nodes defining that face

0

node 0 to node 1

1

node 1 to node 2

2

node 2 to node 0

Parameters:
  • face – face ID for the laoded face

  • pn – magnitude of distributed normal load per area. Tension on a surface is positive.

  • ps – magnitude of distributed shear load per area. Positive direction is defined as shown in the above table.

updateState()