在一个月之前我已经对有限元方法数学理论之分片一次多项式空间逼近理论进行了讲解,由于中间有点事情所以对二次多项式情况没有进行解说,下面开始正文.
其实思想跟一次多项式的情况一样,只不过这里在一个小区间上有3处基函数的值是等于1,而一次的是2个,所以必须要注意这个区别,其实比较简单的构造方法就是拉格朗日基.下面给出一种构造形式:
这样根据分片一次多项式的思想求解这个线性方程组即可。
为了编程简单一点,我们通常取均匀节点,不妨取[0,1]上的节点,所以有:
当然上述方法求右端项可以采用精确地积分方法,,MATLAB里会有涉及.
试验方程还是分片一次多项式里的方程,下面分别给出剖分数N=5,N=10的逼近情况(红色曲线代表原函数,蓝色线代表逼近情况):
N=5:
N=10:
可以看出多对于二次的情况N=10的时候逼近效果已经非常好了,在理论上二次函数的误差收敛阶在3左右,所以这种情况是满足我们的预期的.
注:如果需要一次、二次多项式情况的MATLAB源代码,请留言评论并留下邮箱,我看到后会通过邮箱发给你们.