购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.2

微分方程的弱形式

学习有限元法的准备工作是掌握一个被称作为“弱形式”的概念,下面来直接引入它。请看方程式(2.16)

img

方程式(2.16)称做方程的“强形式”,可以说“强形式”就是方程的普通形式。那么,如何得到方程的“弱形式”呢?将方程的两边同时乘以一个被称做“测试函数”(test function)的 V x )(下文将一致性地采用字母 V 表示测试函数),然后对 x 在方程的作用域上,即从0到1,积分方程式(2.17)

img

只是将方程的两边同时乘上了同一项,一个 V x )项,“任意”一个 V x ),然后积分。现在看到的方程式(2.17)就是方程的“弱形式”,并且是对“任意”的测试函数 V x )都成立,稍后会对“任意”加以说明。

把方程写成这种形式,读者也许会想,如果这个方程对每一个 V x )都成立,可以让某个 V x )只集中在一个小的区域内有值,而让它在其余的区域为0,这个方程还是成立的。然后可以尝试另外一个 V x ),而它只集中在另外一个小区域内有值。读者也许可以感觉到,如果方程式(2.17)对每一个这样的 V x )都成立,那么就可以反推到方程的强形式。换句话说,如果方程式(2.17)对每一个 V x )都成立,则方程式(2.16)成立。因此,我们有一个回到强形式的路径。这好比爬一座小山,下山容易,只是将方程两边乘以 V x )然后积分,但是只要稍有耐心,就能返回到强形式上。从现在开始就要逐步适应方程的弱形式。

读者也许会问为什么要使用弱形式,如何处理方程式(2.17)的左边项?的确,方程式(2.17)的右边项看起来较为简单,但是左边项有些复杂。你看到像方程式(2.17)左边项的形式时,能想起什么吗?对,分步积分!即方程式(2.18)

img

笔者不太喜欢方程式(2.17)的左边项是因为 u 有二阶导数,而 V 却只是其函数本身,故希望左边这一项具有对称性。因此做分步积分,从而得到方程式(2.19)

img

方程式(2.19)就是弱形式,对“任意的” V x )都成立。对于方程式(2.19),我们希望左边第一项为0。如果现在考虑的问题的边界条件属于自由-固定类型,即左边界不限制位移 u ,而右边界位移 u 限制为0。在 u 自由的左边界,由于没有限制 u ,故也不会去限制 u 的“好朋友” V ,因此方程式(2.20)在左边界成立

img

这个边界条件很自然地出现了,而且这个条件是必需的,因为我们对 V 没有控制。那么右边界是什么样的情况呢?在右边界, u 为0,也会让 V 为0,所以当说到“任意” V x )时,最好加上这个条件,即在 u 固定的一端, V 也为0,需要这个条件。

任何时候当有一个Dirichlet边界条件时,即一个固定条件告诉 u 是多少时,我会想到 V ,你要慢慢开始将 V 看做从 u 处移动的小位移, u 是方程的解。注意,我们现在考虑的问题的边界条件是自由-固定,所以 u 可能和图2.5描述的情况相似。图2.5画的是 u ,现在考虑一下 V 。字母 V 是有特定意义的,它代表虚位移(virtual displacement)。虚位移是从 u 处移动的小位移,但是它必须满足 u 所满足的固定边界条件。换句话说,小的虚位移 V u 固定的一端不能跑离0,即 V x )=0。最终的结果是,方程式(2.19)左边第一项为0而消失,我们得到所需要的方程的弱形式,如方程式2.21所示

img
img

图2.5 自由-固定边界条件下 u 的一种可能解

Galerkin方法就是从方程的弱形式出发的(Galerkin是俄罗斯人)。在边界条件那儿,有德国人Neumann和法国人Dirichlet。在怎么将一个连续问题转变为一个离散问题的基本原理上,有俄罗斯人的贡献。Galerkin方法要做的事情是用 N 个未知数来取代一个未知的函数,我需要一个离散的方程组,它的最终形式将是 KU=F 。因此,需要得到一个方程 KU=F ,但不是通过有限差分法,而是通过这个弱形式的Galerkin方法。

首先看看Galerkin方法的原理,然后在2.7节会介绍不同类型的有限元。Galerkin的想法是,选择尝试函数(trial function) φ 1 φ 2 ,…, φ N 。这里有一个自由的选择,这也是应用数学中的一个基本选择,你选择一些函数,如果选择得好,会得到一个好的方法。在你选好尝试函数后,Galerkin方法的思想是用如下的 U 近似要求的解 u ,见方程式(2.22)

img

在方程式(2.22)中, φ i 都是 x 的函数,方程右边那些 U i 是一些数字,也就是我们要求的 N 个未知数,而且这些 U i 是我们选择的尝试函数的待定系数。现在需要 N 个方程,通过选择测试函数 V 1 V 2 ,…, V N 并将它们代入到方程式(2.21)中,而且方程式(2.21)中的 u 用方程式(2.22)中的 U 代入,这样就能得到 N 个方程,每个 V 都会给出一个方程,所以最终能得到 N 个方程。 N 个未知数和 N 个方程,这就是线性系统 KU=F

你注意到了这一步是怎么达到的吗?是通过使用弱形式,通过使用Galerkin的方法选择一些尝试函数,选择一些测试函数,然后把它们代入到弱形式中。所以Galerkin的思想就是将这些尝试函数和测试函数应用到弱形式中。真正的弱形式,即连续的弱形式应该包含所有的 V ,这里通过选择 N V 而得到 N 个方程,通过选择 N φ 而得到 N 个未知数。这种思想的存在比有限元要早100年,有限元的思想是选择一类特殊的 V φ

一类特殊的 V φ 的选择就是简单的多项式,你也许会想,为什么Galerkin不首先尝试这些简单的多项式呢?也许他尝试了,但是核心问题是和Galerkin的时代相比,我们现在拥有计算机的强大的计算能力,如果是简单的多项式,可以选择成千上万个。这就是有限元法给我们带来的东西,选择简单的多项式函数,而且选择很多个这样的函数。但是Galerkin的时代没有MATLAB,他也没有计算机,只有笔和纸,他选择一个函数,也许两个,也许这样就会花去他一天的时间,但是现在可以选择上千个简单的函数。下节探讨得到 KU = F 的详细步骤。 eiUPBx9o6E/GK/uhru+5KWQGhoOsjEFeMivoS+QXlaK+GopAilJuBOzNQ2mFtm1Z

点击中间区域
呼出菜单
上一章
目录
下一章
×