• 回答数

    0

  • 浏览数

    1127

  • 收藏数

    0

作者:六月的雨 发表于 2022-1-14 15:44:33
跳转到指定楼层
COMSOL Multiphysics 作为一个多物理场求解软件,其涉及到的物理场包含了电磁学、声学、化学、流体力学、传热学、光学、结构力学等各种学科。COMSOL之所以能够处理如此多的问题,其本质在于在这些物理场背后蕴含着相似或相同的微分方程,COMSOL求解多物理场问题本质就是对微分方程的求解。
一个简单的实例
本文用一个简单的传热学的模型来说明COMSOL处理微分方程的过程。为方便大家理解,我们采用一个定义在上的一维无热源的稳态热传递案例,假设导热系数均匀。那么 x 轴正方向的热通量 q 可由温度 T 的梯度给出:
设域内没有热源,则热通量的守恒可简单表示为:
上就是一维传热模型背后的数学微分方程,该方程的解将给出区间内的温度分布和热通量分布。该形式的方程可见于多个学科。例如在静电学中,T 由电势替代,q 由电场替代;在弹性力学理论中,T 变成位移,q变成应变。
方程(2)中包含了热通量q的一次导数,或者是温度T的二次导出,但在某些情况下,这种表示方法可能会出问题。例如,当存在两种不同导热系数的材料时,温度T的一次导出将不再连续,二阶导不可导。
COMSOL在处理这种问题的核心思想是将微分方程转化为积分方程,首先在的区间上对方程(2)积分:
上方程表示在整个区间内,平均值为0,这与要求在整个区间内处处为零相比约束降低了不少,所以这个过程称为方程的“弱化”,对应的方程形式在COMSOL中称为方程的“弱形式”。采用积分形式对求解微分方程,将不再存在方程在某些情况下不可微的问题。
不过,显然以上“弱形式”太弱了,将处处为0弱化为其平均值为0,损失了太多的约束。为了改善这种情况,一种方法是可以令在一个小区间内均值为零,例如:
该积分的约束下,在x = 3.5附近的平均值近似为0,在的区间内所有位置应用这一方法,原始微分方程将转化为一系列的积分方程:
方程的数量越多,近似效果越好。通常要达到要求的计算精度,以上方程的数量将非常大,计算非常麻烦,但我们可以用另一种方式来实现这种方法。
主要思想是将被积函数在狭小区间内乘以一个加权函数,如下图所示:
对于每一个狭小区间上的加权函数,均能得到满足积分关系式的在该区间的近似取值。然后,我们可以使用不同的加权函数对在整个区间内积分。每一个加权函数都会把被积函数的贡献项限制在不同 x值附近的狭小范围内,以此达到方程 (3)中积分方程组的效果。这样我们获得了微分方程的弱形式,其表达关系式
满足一组加权函数,一般称为试函数。对于每一个x,例如x = 3.5,我们可以选择一个定义在x = 3.5附近的加权函数(在其他区间为0)作为试函数。将该函数带入方程(4)后会在x = 3.5附近对取值,满足积分关系式的近似为0。COMSOL中在求解过程中会根据用户设定给一个初始值,之后的求解过程中将使用一系列的试函数对该初始值进行上推或者下推,以得到最终的解。
降低求导阶数
注意到方程(4)中求导阶数和方程(2)相同,但是可以用分部积分的方法来降阶:
方程已经不含热通量q的导数,求导阶数从2阶降为1阶,虽然方程中出现了试函数的一阶导数项,但由于试函数是我们人为选定的工具,因此,我们可以选择任意可微形式的试函数。

边界条件
在确定微分方程后,结合合适的边界条件才能给出方程的最终解,常见的两种边界条件为纽曼边界条件(指定变量的导数在边界处的值)和狄利克雷边界条件(指定变量在边界处的值)。对于纽曼边界条件,方程 (5) 的前两项涉及区间端点 x = 1 和x = 5 处的热通量及试函数,热通量 q定义为沿x-轴正方向为正。我们可按照离开区间的通量进行重写,并将它们移至等号右侧:
中是向外通量,角标1和2分别表示区间端点x = 1和x = 5。,,。方程的右侧很自然地将边界条件以热通量的形式表示出来。最简单的做法就是将设为 0,得出没有热量通过的绝缘边界条件(即温度T的纽曼边界条件)。
这就是为什么 COMSOL Multiphysics 传热的缺省边界条件是”热绝缘”,固体力学的缺省条件是”自由(无边界力)”,流体流动中是”壁(没有流动经过边界)”。
对于狄利克雷边界条件,它会指明要求解的变量在边界处的值。在当前示例中,它指定了边界上一个点的温度值。该边界条件常被用于建立只有唯一解的问题。例如在流体流动中,我们需要明确指定某处的压力(不仅仅是流动);在固体力学中,我们需要明确某处的位移(不仅仅是力)。
如之前的示例所示,弱形式提供了一种很自然的方法来指定边界处的热通量。那么该如何指定边界处的固定温度呢?
技巧如下:利用自然边界条件的数学结构,同时结合试函数并限制解的思路。从概念上讲,要在边界处的某点维持固定温度,就需要用到一个外界的热通量来补偿边界内的热通量。弱公式化将问题表述为:找到在边界一点处维持固定温度所需的热通量
例如,如果我们希望在 x = 1 处将流出通量指定为 2,在 x = 5 处将温度T 指定为 9。我们需要再次用弱形式的思想引入一个未知变量及对应的试函数 ,并将方程 (6) 写成:
里,等号右侧的第一项指定 x = 1 处的向外通量为 2,第二项指定 x = 5 处的未知通量;两项均由方程 (6) 右侧的自然边界条件项求得。
新的变量表示在边界x = 5处的未知通量。方程中的第三项采用了与之前讨论试函数的方法,即使用试函数保证在 x = 5处解为T = 9。
对于更高维度的考虑
到目前为止,我们一直在讨论非常简单的一维示例。在更高的维度中,例如二维平面域或是三维体域,方程将更为复杂,但基本思路相同。
弱形式将微分方程变为积分方程。分部积分对导数进行降阶从而减轻计算负担,并产生自然边界条件以明确边界处的通量。在简单的一维示例中,边界是两个端点,通量是每点处的单一值。
在二维和三维中,边界分别是闭合曲线和包围域的闭合面。方程 (6) 的右侧变成流入通量密度的线或面积分,即总流入通量。本质上,二维和三维的分部积分过程使用了 散度定理 来得到模型域内边界处通量的线或面积分。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册 微信登录

x
分享:
回复

使用道具

成为第一个回答人

高级模式 评论
您需要登录后才可以回帖 登录 | 立即注册 微信登录