在之前的文章中,依次介绍了结构化网格的插值型基函数的一维、二维、三维的高阶通式,在使用高斯积分后,任意高阶有限元成为可能。并且发现结构网格网格中,三维、二维网格均是一维网格的拓展,一通则全通。
这篇文章继续介绍结构化网格的叠层基函数的一、二、三维的任意高阶通式。
相比于较为复杂的插值型基函数,叠层基函数的任意阶基函数相对简单,容易实现。并且在前面插值基函数的实现基础上,只需要把计算基函数的部分替换掉即可。
对于边值问题,还是以最简单泊松方程出发,具体的有限元推导部分不再重复,参考:
a.一维基函数
同样,先从一维出发,同样首先给出最基本上的线单元的线性插值基函数:
将该线性插值基函数投射到[-1,1]的区域内,用以下方式表示:
对应的梯度为:
可见,一维度的叠层基函数的通式,还是保持着低阶包含高阶的特征,这对于混合阶有限元的实现是非常关键的。
b.二维基函数
c.三维基函数
因此,一维的通式确定,二维矩形单元,三维六面体单元通式也就都获得,并且实现一维度的推导,高维度通过乘积即可使用。即使更高维度,四维、五维...都可以很容易获得。
针对泊松方程而言,三维的有限元离散方程为:
一维度而言,对上述式子只取一项:
将上述等式全部写出高斯积分形式:
这里的系数矩阵与插值型基函数的网格完全一致,直接套用插值基函数的各维度网格节点编号与单元映射关系即可。
不同点在于边界条件的加载,叠层基函数的高阶部分全部置为零,具体可参考文章:
还需要注意的地方是,叠层有限元的高阶部分不代表具体的点的泊松值,需要通过插值获得对于单元位置处的具体数值。
Eg1 一维度8阶有限元泊松结果
Eg2 二维6阶有限元泊松方程结果
Eg3 三维5阶有限元泊松方程结果
参考插值基函数的结果可以了解,二者的结果是一致的。
A.p型自适应有限元:自适应过程中,网格不变,根据后验误差控制网格阶数以达到高精度解的过程;
B.h型自适应有限元:自适应过程中,网格基函数阶数不变,加密或放粗网格大小,以达到高精度解析解;本公 众号在之前提供过一个案例:
C.hp型自适应有限元,利用p型和h型的优势,网格与阶数均变化,平衡二者关系,使用最小的资源获得最好的精度;个人感觉该方法得有很强的物理背景才能实现合理的分布。
D.r型自适应有限元,或者叫做动网格技术,根据后验误差,不增加网格量,而是通过调整网格大小分布以获得最好的精度。这种方法似乎在流体力学中使用较多。