跳转至

三维实体单元的形函数

本章汇总形函数与有限元近似中引入的形函数 \(N_\alpha^e(\boldsymbol{r})\) 在 FrontISTR 连续体分析所使用的三维实体单元中的自然坐标系及其具体形式。对象包括一次/二次四面体(341、342)、一次/二次三棱柱(351、352)、一次/二次六面体(361、362)共 6 种类型。HEC-MW 网格格式中的节点排列顺序和面编号请参见功能参考中的单元库

由这些形函数和 Jacobian 行列式构造单元积分的步骤遵循数值积分。361 的 B-bar、F-bar、不协调公式以及梁和壳单元的形函数在高性能单元公式中介绍。

自然坐标系与内部节点排列

形函数定义在各单元的自然坐标 \(\boldsymbol{r}\) 上。三维实体单元根据单元形状使用以下 3 种自然坐标系。

  • 六面体(361、362)\(\boldsymbol{r} = (\xi, \eta, \zeta)\)\(-1 \le \xi, \eta, \zeta \le 1\)
  • 四面体(341、342):体积坐标 \((L_1, L_2, L_3, L_4)\)\(L_1 + L_2 + L_3 + L_4 = 1\)\(L_i \ge 0\)。取 \(\boldsymbol{r} = (L_2, L_3, L_4)\) 为独立变量,并由 \(L_1 = 1 - L_2 - L_3 - L_4\) 确定。
  • 三棱柱(351、352):将底面三角形的体积坐标 \((\xi, \eta)\)\(0 \le \xi, \eta\)\(\xi + \eta \le 1\))与轴向坐标 \(\zeta \in [-1, 1]\) 组合,令 \(\boldsymbol{r} = (\xi, \eta, \zeta)\)。辅助量 \(a = 1 - \xi - \eta\) 用作底面的第三个体积坐标。

对于一次单元,单元节点编号在 HEC-MW 输入格式与内部格式中一致。对于二次单元,两种格式对边中间节点的排列约定不同:FrontISTR 的输入接受 HEC-MW 格式(先依次排列角节点,再按边 1-2、2-3、……的顺序排列中间节点),而单元库中的形函数实现则以另一种节点排列为前提。

两种格式的差异由网格读取后立即调用的 hecmw2fstr_mesh_conv 针对各单元进行重排来消除。三维实体单元中,需要转换的是以下 2 种类型。

单元类型 转换表 内容
342(二次四面体) Table342 将 10 个节点重排为 \(\{1,2,3,4,7,5,6,8,9,10\}\)
352(二次三棱柱) Table352 将 15 个节点重排为 \(\{1,2,3,4,5,6,9,7,8,12,10,11,13,14,15\}\)

由于重排直接针对存储单元连接信息的数组进行,此后的所有单元库调用均使用 FrontISTR 内部节点排列。对于二次六面体单元 362,HEC-MW 输入格式与 FrontISTR 内部格式的中间节点排列一致,因此不存在转换表。结果输出时会调用逆转换 fstr2hecmw_mesh_conv,恢复为 HEC-MW 格式的节点排列后再写出,因此在输入和输出两端,用户只需关注 HEC-MW 格式。以下形函数中的节点编号均采用转换后的 FrontISTR 内部格式。

一次单元的形函数

一次四面体单元(341)的形函数就是体积坐标本身:

\[ N_1 = L_1, \qquad N_2 = L_2, \qquad N_3 = L_3, \qquad N_4 = L_4. \]

一次三棱柱单元(351)的形函数是底面三角形的线性形函数(\(a, \xi, \eta\))与轴向线性形函数(\((1-\zeta)/2, (1+\zeta)/2\))的乘积:

\[ \begin{aligned} N_1 &= \tfrac{1}{2}\, a\,(1-\zeta), & N_2 &= \tfrac{1}{2}\, \xi\,(1-\zeta), & N_3 &= \tfrac{1}{2}\, \eta\,(1-\zeta), \\ N_4 &= \tfrac{1}{2}\, a\,(1+\zeta), & N_5 &= \tfrac{1}{2}\, \xi\,(1+\zeta), & N_6 &= \tfrac{1}{2}\, \eta\,(1+\zeta). \end{aligned} \]

一次六面体单元(361)的形函数是三个轴向线性形函数的张量积:

\[ N_\alpha = \tfrac{1}{8}\,(1+\xi_\alpha \xi)(1+\eta_\alpha \eta)(1+\zeta_\alpha \zeta), \qquad \alpha = 1, \ldots, 8. \]

其中 \((\xi_\alpha, \eta_\alpha, \zeta_\alpha)\) 表示节点 \(\alpha\) 的自然坐标值(各分量均为 \(\pm 1\))。

二次单元的形函数

二次四面体单元(342)的形函数分为 4 个角节点和 6 个边中间节点:

\[ \begin{aligned} N_1 &= L_1(2L_1 - 1), & N_2 &= L_2(2L_2 - 1), \\ N_3 &= L_3(2L_3 - 1), & N_4 &= L_4(2L_4 - 1), \\ N_5 &= 4\,L_1 L_2, & N_6 &= 4\,L_2 L_3, \\ N_7 &= 4\,L_1 L_3, & N_8 &= 4\,L_1 L_4, \\ N_9 &= 4\,L_2 L_4, & N_{10} &= 4\,L_3 L_4. \end{aligned} \]

中间节点 5~10 分别对应边 1-2、2-3、1-3、1-4、2-4、3-4 的中点。

二次三棱柱单元(352)的形函数由 6 个角节点、三角形面上的 6 个边中间节点以及轴向棱上的 3 个中间节点构成:

\[ \begin{aligned} N_1 &= \tfrac{1}{2}\, a\,(1-\zeta)(2a - 2 - \zeta), & N_2 &= \tfrac{1}{2}\, \xi\,(1-\zeta)(2\xi - 2 - \zeta), \\ N_3 &= \tfrac{1}{2}\, \eta\,(1-\zeta)(2\eta - 2 - \zeta), & N_4 &= \tfrac{1}{2}\, a\,(1+\zeta)(2a - 2 + \zeta), \\ N_5 &= \tfrac{1}{2}\, \xi\,(1+\zeta)(2\xi - 2 + \zeta), & N_6 &= \tfrac{1}{2}\, \eta\,(1+\zeta)(2\eta - 2 + \zeta), \\ N_7 &= 2\,\xi\, a\,(1-\zeta), & N_8 &= 2\,\xi\, \eta\,(1-\zeta), \\ N_9 &= 2\,\eta\, a\,(1-\zeta), & N_{10} &= 2\,\xi\, a\,(1+\zeta), \\ N_{11} &= 2\,\xi\, \eta\,(1+\zeta), & N_{12} &= 2\,\eta\, a\,(1+\zeta), \\ N_{13} &= a\,(1 - \zeta^2), & N_{14} &= \xi\,(1 - \zeta^2), \\ N_{15} &= \eta\,(1 - \zeta^2). \end{aligned} \]

中间节点 7~9 对应底面三角形(\(\zeta = -1\))各边的中点,10~12 对应顶面三角形(\(\zeta = +1\))各边的中点,13~15 对应轴向棱的中点。

二次六面体单元(362)是 Serendipity 族的 20 节点单元。将节点 \(\alpha\) 的自然坐标值记为 \((\xi_\alpha, \eta_\alpha, \zeta_\alpha)\)。对于角节点(\(\alpha = 1, \ldots, 8\),各分量均为 \(\pm 1\)),

\[ N_\alpha = -\tfrac{1}{8}\,(1+\xi_\alpha \xi)(1+\eta_\alpha \eta)(1+\zeta_\alpha \zeta)\bigl(2 - \xi_\alpha \xi - \eta_\alpha \eta - \zeta_\alpha \zeta\bigr). \]

对于边中间节点(\(\alpha = 9, \ldots, 20\),3 个自然坐标中有一个为 \(0\),其余 2 个为 \(\pm 1\)),当 \(\xi_\alpha = 0\)(边方向为 \(\xi\) 轴)时,

\[ N_\alpha = \tfrac{1}{4}\,(1 - \xi^2)(1 + \eta_\alpha \eta)(1 + \zeta_\alpha \zeta). \]

对于边方向为 \(\eta\) 轴或 \(\zeta\) 轴的中间节点,也同样通过以平方项消去相应自然坐标的形式给出。

相关内容