首页/文章/ 详情

缩聚技术在网格结构层面上的技巧

3小时前浏览33

简述

本公众 号中缩聚相关的内容已经有两篇了,感觉这技术还值得深挖。之前介绍了对高阶基函数进行缩聚的实现方法。 本次从网格结构与有限元系数矩阵的角度出发,再次展示缩聚在网格结构层面上一些值得留意的现象,并且在缩聚过程中对求解矩阵的逆的一些观点。

在高阶有限元中使用缩聚,已经得出结论,对单元内部节点进行缩聚后不会改变系数矩阵本身的稀疏特性,因此,同样的类比在网格层面上,缩聚是否具备类似的特定。

下面以一维、二维泊松方程有限元的缩聚来讨论这些问题。所涉及有限元实现方法与缩聚文章请参考:

1.二维网格的刚度矩阵缩聚再讨论

2.单元刚度矩阵的缩聚

3.最简单的一维有限元问题:求解cos函数分布

4.最简单的二维结构化有限元问题:求解拉普拉斯方程(改)

1.对网格的缩聚

对一维而言,一个10个线单元模型,共计有11个节点,如果对其后六个节点进行缩聚,缩聚的后节点与整个网格的关系如下:

观察缩聚前后的稀疏系数矩阵的非零元素分布:    

图中蓝色是缩聚前矩阵的非零元素分布,红色是缩聚后矩阵的非零元素分布。可以发现,在缩聚后,还存在的节点的非零元素个数位置均没有发生变化。也就是缩聚后矩阵的稀疏程度没有发生任何变化。

继续来观察二维模型,对于如下网格4*8网格的模型,蓝色节点是所有节点,红色节点是缩聚后还存在的节点。

观察其缩聚前后的稀疏矩阵非零元素分布,蓝色为原始矩阵,红色为数据后矩阵:

发现缩聚后绝大部分非零元素位置并没有变化,唯一增加的是只有黑色框中的5*5的矩阵块。不难发现,该矩阵块对应的节点正是网格中缩聚分界面上的五个节点。

同理,如果缩聚部分的分界点有六个点:

则其缩聚后只有对应的6*6的矩阵中稀疏程度会发生变化:

可以发现,对于二维模型,缩聚过程中,稀疏矩阵的位置除了与缩聚点与非缩聚点的交界位置的稀疏程度发生变化外,其他位置的稀疏程度均没有发生变化。

进一步思考,根据有限元组装矩阵本身的规律,任意自由度在矩阵中的系数仅与其相连的自由度相关。因此不难分析得到,缩聚后的稀疏矩阵的变化仅与缩聚部分相接触的自由度相关,与其他不相连的自由度无关。从网格层面上,可以理解成缩聚部分的结构特性全部归集到分界面的自由度上。

这对于一些结构比较特殊的模型非常友好,例如电磁学一些大模型中复杂的小结构可以缩聚到其分界面上,实现减小稀疏矩阵维度的同时又不会太过于改变矩阵稀疏程度。又例如对于力学中一些重复出现的结构,也可以通过缩聚减小计算量。

2.Kbb矩阵的逆矩阵的求解

缩聚技术中,关键公式就那么几个简单公式:

其中,最为麻烦的就是Kbb矩阵的逆的求解,当Kbb的逆难以求解的时候,这种方法对于计算效率是一个非常麻烦的事情,但是对于有限元而言,从网格结构与系数矩阵观察,似乎有更好的解决方法。如下图:    

对于Kbb的矩阵,如果模型足够大,这部分的逆是非常难以求解的,但观察下面公式中不难发现:

其实并不需要显示的求解Kbb的逆,仅需要知道invKbb*Kba和invKbb*Bin即可,将这两部分写成如下形式:

发现只要求解va和vin即可。也就是求解一个系数矩阵均为Kbb,存在多列右端项的线性方程组。这相对于直接求解Kbb的逆就容易很多,并且直接求解而言,仅需要一次LU分解即可求解得到多列右端项。    

更值得关注的是,对于右端项Kba对应在非零元素显示图中的Kba部分,不难发现Kba本身也是一个很大的稀疏矩阵,而且非零元素也仅存在于缩聚部分的分界点部分,也就是说对于上述两个例子,分界点分别是5、6个节点,那么Kba非零元素也仅存在于5列、6列,其他列全部为零。因此再来观察上述公式,右端项Kba实际需要求解的列向量应该是等于缩聚分界点的个数+一个Bin,如此就能大大减少LU分解后的回代求解的右端项个数。

总结

总结缩聚在网格结构层面上的结果:缩聚部分与未缩聚部分的分界面自由度的个数至关重要,这直接关系到缩聚后矩阵的稀疏程度保留与求解的效率问题。所以根据网格拓扑关系合适的选择缩聚部分是非常重要的。


来源:实践有限元
科普
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-01-22
最近编辑:3小时前
实践有限元
硕士 签名征集中
获赞 0粉丝 1文章 58课程 0
点赞
收藏
作者推荐

三维四面体一、二、三阶叠层有限元实现与精度对比-高斯积分

简述相比于插值基函数有限元,叠层基函数的公式相对更加简单,缺点是实现过程中如果出现问题,很难查找具体原因。本文以霍姆霍兹方程为边值问题,在使用高斯积分的基础上,分别实现基于叠层基函数的一阶、二阶、三阶有限元。过程中一阶、二阶很快成功实现,但是三阶却达不到对应的精度,其结果仅仅比二阶稍微好一点,明显存在问题,但是却无法找到问题所在。所涉及的文章有以下几篇,相关内容也不再赘述。三维四面体三阶有限元实现-泊松方程泊松方程-三维四面体插值基函数有限元实现-高斯积分三维高阶叠层与插值有限元细节对比-霍姆霍兹方程泊松方程三维二阶叠层有限元实现-四面体1.边值问题这里简单给出边值问题,霍姆霍兹方程表达式:2.四面体基函数表达式使用面积坐标获得线性基函数及其梯度表达式:一阶基函数表达式及其梯度:二阶叠层基函数(包括一阶部分的N1~4)及其梯度:其对应的梯度为:三阶基函数(包括二阶部分内容不再展示)及其对应的梯度:3.高斯积分、系数矩阵组装、边界条件加载I.高斯积分方式与对应的积分权重系数表格参考:三维四面体三阶有限元实现-泊松方程。II.系数矩阵组装需要全局映射关系与局部映射关系一一对应。III.叠层基函数的边界条件加载参考:泊松方程三维二阶叠层有限元实现-四面体。4.结果展示一阶结果与理论解析解对比:二阶结果与理论解析解对比:三阶结果与理论解析解对比:三阶的可视化结果:叠层基函数与插值基函数不同阶数精度对比统计:粗略看上述的结论,一阶、二阶、三阶的精度均是正确的,但是详细看会发现,三阶叠层基函数的精度并没有提高多少,这里基本上可以明确是存在问题的,因为三阶叠层精度与对应的插值基函数的三阶精度不在一个量级上,但是在经过大量查找问题后,发现现有知识理解确实找不到其中问题所在,暂时无法解决。总结在实现叠层基函数过程中,二阶稍微简单、但是三阶涉及到棱边顺序相对更加困难,因为相对于插值基函数而言,叠层基函数的高阶更加的难以实现。这里分析三阶叠层有限元存在问题的地方大概率是局部映射关系与全局映射关系的问题,但是以我理解又没有错误,早在之前二维的高阶叠层基函数中也遇到过类似的问题,也是如此结果,看样子确实不得其中要义。对此问题有理解、想法的小伙伴们也欢迎留言讨论。来源:实践有限元

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈