我正在尝试实现有限元分析算法。我求解K u = f
得到位移u
,然后用 计算应变u
,然后计算应力。最后,我使用应力计算 Von Mises 应力,并将其可视化。从结果中我发现四面体之间的应变不连续。
我使用 10 个节点的四面体作为元素,所以位移在每个元素中都是一个二阶多项式。应该强制位移在四面体之间是连续的。并且作为位移的一阶导数的应变在每个四面体内部应该是连续的。但我不确定:四面体之间的界面是否如此?
我正在尝试实现有限元分析算法。我求解K u = f
得到位移u
,然后用 计算应变u
,然后计算应力。最后,我使用应力计算 Von Mises 应力,并将其可视化。从结果中我发现四面体之间的应变不连续。
我使用 10 个节点的四面体作为元素,所以位移在每个元素中都是一个二阶多项式。应该强制位移在四面体之间是连续的。并且作为位移的一阶导数的应变在每个四面体内部应该是连续的。但我不确定:四面体之间的界面是否如此?
只有与相邻面相切的应变分量才能保证连续。这源于位移连续性,当您在界面方向上求导时,它们是相同的。
商业 FEM 程序通常会进行一些后期处理平均,以使其他组件看起来是连续的。请注意,仅当基础本构模型是连续的时,垂直于单元边界的应变分量才预计是连续的,因此这种平均并不总是合适的。
您不应该计算节点处的应力和应变,而是计算单元内部的应力和应变。例如,您可以选择 4 个高斯点并计算那里的值。然后,您必须考虑如何将高斯点计算的值放到 tet 节点上的方案。
有一个Mathematica应用程序示例说明了这一点。不幸的是,该网页不再可用,但笔记本在这里。您可以在有限元方法、结构力学 3D(在旧的 HelpBrowser 中)下的应用程序示例部分找到该示例。如果您有困难,我可以将其转换为 PDF 并发送给您。