椭圆方程的有限元法有限元法是与差分法并驾齐驱的一套求解偏微分方程的方法。它的基本想法是,首先把微分方程转化成一种变分方程(微分积分方程),从而降低了对解的光滑性和边值条件的要求;然后,把求解区域划分成有限个单元(有限元),构造分片光滑函数,这个光滑函数由其在单元顶点上的函数值决定;最后,把这个分片光滑函数带入到上述微分积分方程中去,就得到关于单元顶点函数值的一个线性方程组,解之即得有限元解。与差分法相比,有限元法易于处理边界条件,易于利用分片高次多项式等等来提高逼近精度。空间mH作为例子,我们将考虑区间0,1I上的微分方程。用2()LI表示在I上勒贝格平方可积函数的集合,()mHI表示本身以及直到m阶的导数都属于2()LI的函数的集合。我们下面用到的主要是1()HI。这里所说的导数准确地说是应该是广义导数,对此我们不予详细说明,只需知道比如说,连续的分片线性函数(折线函数)就属于1()HI,其广义导数是分片常数函数。另外,我们还用到空间}0)1(),({)(11vIHvIHE。(空间=函数集合。)变分方程考虑两点边值问题(),(0,1)puqufx(1)(0)0u(2)0)1(u(3)其中,,pqf都是区间)1,0(上的光滑函数,并且0pp,0p是一个正常数。用)(1IHE中任一函数v乘(1)式两端,并在]1,0[上积分,得10[()]0puvquvfvdx(4)利用分部积分,并注意0)1(u和0)0(v,得101010|)(dxvupvupdxup10dxvup以此代入到(4)得到100)(dvfvquvvup(5)为了方便,定义10,wvwvdx(7)),(),(),(vqwvwpvwa(8)则相应于微分方程(1)-(3)的变分方程为:求)(1IHuE满足),(),(vfvua)(1IHvE(9)注意在(9)中不出现二阶导数。可以证明,满足微分方程(1)-(3)的光滑解一定满足变分方程(9)。(9)的解称之为(1)-(3)的广义解,它可能只有一阶导数,因此可能不是(1)-(3)的解;但是如果它在通常意义下二阶可微,则一定也是(1)-(3)的解。另外,注意在变分方程(9)中,我们强制要求广义解u满足边值条件(0)0u,因而称之为强制(或本质)边界条件;而对边值条件0)1(u,则不加要求。但是可以证明,如果广义解u在通常意义下二阶可微,则一定有0)1(u,即这个边界条件自然满足。这类边界条件称之为自然边界条件。总之,变分方程(9)不但降低了对解的光滑性的要求,也降低了对边值条件的要求。有限元空间构造有限元法的第一步与差分法一样,也是对求解区间作网格剖分0101nxxx。相邻节点1,iixx之间的小区间1,iiiIxx称为第i个单元,其长度为1iiihxx。记maxihh。在空间1()EHI中,按如下原则选取有限元空间hV:它的元素()hux在每一单元上是m次多项式,并且在每个节点上都是连续的。当1m时,就得到最简单的线性元,这时每个hhuV可表为11(),iihiiiiixxxxuxuuxIhh,1,2,,in(10)其中(),ihiuux0(0)0huu。图1.一维线性元线性元的另外一种表示方法是利用以下具有局部支集的基函数:1111,()1,0,iiiiiiiiixxxxxhxxxxxxh在别处1,2,,1in(11)11,()0,nnnnnxxxxxhx在别处(12)图2.线性元的基函数显然,任一hhuV可以表为1()()nhiiiuxux(13)有限元方程将变分方程(9)局限在有限元空间上考虑,就得到有限元方程:求有限元解hhuV满足),(),(hhhvfvuahhVv(14)注意到hu和hv都可以表示成(13)形式,容易看出(14)等价于如下的线性方程组:求节点上的近似解1,,nuu满足1(,)(,),1,,nijijiaufjn(15)这个线性方程组是三对角的,可以用追赶法求解。可以把微分方程(1)、变分方程(9)和有限元方程(15)比喻为确定“好人”的三种标准:他每时每刻表现都好;大家都说他好;一个遴选委员会说他好。误差估计可以证明,微分方程(1)-(3)的解u和有限元方程(14)或(15)的解hu之间的误差满足||||||||||||hhuuuuChu(16)其中C是一个常数;||||表示2()LI范数,定义为122(,)bavvvvdx,2()vLI(17)二维椭圆方程有限元法以二维区域上的Poisson方程第一边值问题为例:2222(,)uufxyxy,(,)xyG(18)|0u(19)其中G是以为边界的一个二维区域。利用Green公式,容易推出相应的变分方程:求10()uHG满足(,)(,)auvfv,10()vHG(20)其中空间10()HG由在边界上为零且广义偏导数在区域G上勒贝格可积的所有函数组成,(,)dxdyGwvwv(21)(,)()Gwvwvawvdxdyxxyy(22)二维区域上最常用的剖分是形如下图的三角剖分:我们可以相应地构造三角剖分上的线性元。对内点集合hG(例如上图中3,6,5这三个点)中每个节点i,定义其基函数(,)ixy为一个分片线性函数,它在节点i取值为1,而在所有其他节点为0。这样,有限元空间hV中任一元素就可以表示成()()hhiiiGuxux。把它带入到变分方程(20)便得有限元方程:求hG上的近似解iu满足(,)(,),hijijhiGaufjG(23)高次元可以从两个途径来提高有限元法的精度,一个是加密网格,另一个是利用高次元。例如对于一维问题,可以使用所谓Hermite三次元,它在每一个单元1,iiiIxx上是一个三次多项式,由两个端点上的函数值和导数值总共4个参数确定。这时,相应于(16)我们有误差估计33()0||||||||||||khhkuuuuChu(24)其中()ku表示k阶导数。对于二维问题也可以使用高次元,但是其定义要稍微复杂一点。习题1设边值条件为(0)0u,0)1(u,步长为h=0.5。写出相应的线性元的各个基函数,并图示。习题2假设如习题1,并设1p,0q,1f,具体写出线性元有限元方程相应的线性方程组。习题3仿照(32),将Crank-Nicolson格式(33)写成线性方程组形式。习题4将边界条件(3)换成(1)0u,试推出相应于(14)的有限元方程。