在“FEM04-里玆法(Ritz Method)”中,需要写出总势能的表达式,而不必建立控制方程。对于有些问题,可能已经建立了控制方程(ODE/PDE),如何直接对微分控制方程进行近似求解?本文将介绍一类通用的方法——加权余量法( Weighted Residual Method )。加权余量法主要有以下三个步骤:
考虑以下微分方程所描述的稳态问题:
其中L2m是线性微分算子,u是需要求解的状态变量,r是强迫函数(已知项,不包含状态变量)。问题的解还应满足边界条件:
其中,fi是线性无关的基函数,ai是待定系数。选择合适的基函数,使试函数满足所有边界条件。
对于准确解,残差肯定是零。良好的近似解,意味着残差R在定义域内所有的点上都很小。
以上就是加权余量法的求解过程。根据所选的权函数不同,加权余量法可以分为:配点法(Collocation method),子域法(Subdomain method),最小二乘法(Least squares method)和伽辽金法(Galerkin method)等。
配点法
首先从定义域内取一些点,取点的数量取决于试函数中未知待定系数的个数。然后,直接让残差在这些点上等于零。取点的位置可以是任意的,一般情况下均匀布点比较合适,但也可以根据分析需求适当调整。
子域法
子域法的权函数等于1,即直接在定义域内对残差求积分等于零。通常把整个定义域分成若干个子域,然后分别对每个子域进行积分。
最小二乘法
目标:残差平方的积分,关于ai是最小的。即:R2在定义域内积分,然后对ai求偏导等于零。
对应的权函数为:∂R/∂ai;有多少个待定系数ai,就有多少个权函数wi。
将残差的表达式代入,权函数也可写作L2m(fi):
伽辽金法
与最小二乘法类似,只是把权函数中残差的偏导数∂R,替换为试函数的偏导数∂ū。权函数为:∂ū/∂ai(试函数ū对ai求偏导),实际上就是基函数fi。因此,伽辽金法的权函数,就是试函数的基。
考虑以下微分方程,分别采用配点法,子域法,最小二乘法和伽辽金法进行求解。
求解过程详见:www.me.ua.edu/me611/f04/pdf/mwr.pdf,这里不再赘述。
针对这个例子,注意以下两点:
在“FEM04-里玆法(Ritz Method)”的例题中,既包含本质边界条件,又包含自然边界条件。
控制方程为:
本质边界条件为:
自然边界条件为:
下面尝试用伽辽金法来求解该问题。
该方程比较复杂,不太容易求解。造成它这么复杂的原因,主要还是前面提到的两点:(1)试函数必须2m阶可导;(2)试函数必须满足所有边界条件。在“FEM04-里玆法(Ritz Method)”中介绍的里兹法,试函数只需m阶可导,而且只需满足本质边界条件,不必满足自然边界条件。相比之下,里兹法的试函数更加灵活,具有更大的函数空间。
那么问题来了:前面忙活了半天,详细介绍了各种加权余量法,而真正遇到实际问题的时候,发现它根本不实用,还不如里兹法好用。就好比孙悟空大闹东海,终于取得秒天秒地秒大海的定海神针,却发现这家伙又大又丑,那我要这铁棒有何用?别急,现在就差一句咒语,就能让这根铁棒完美变身。它就是——“虚位移原理”(详见“FEM05-虚位移原理”)。它可以化腐朽为神奇,将强形式变为弱形式,降低对试函数的要求,使得试函数拥有更大的函数空间。
现在,我们用“虚位移”的方式来打开“伽辽金法”。
首先,用虚位移原理来描述问题。
其中,w既是虚位移,又是权函数。(此处是关键)
本质边界条件为:
同时,在本质边界条件处,虚位移应等于零:
自然边界条件不需要再写了,因为它已经包含在虚位移原理中。
经过此番变化,试函数只需m阶可导(m=1),边界条件也只剩下本质边界条件。这样,加权余量法就可以选择和里兹法一样的试函数了。
然后,运用伽辽金法进行求解。
Reference: