对症下药 让COMSOL小白高效解决复杂模型

对症下药 让COMSOL小白高效解决复杂模型的图1
对症下药 让COMSOL小白高效解决复杂模型的图2
对症下药 让COMSOL小白高效解决复杂模型的图3

复杂模型

对症下药 让COMSOL小白高效解决复杂模型的图4
对症下药 让COMSOL小白高效解决复杂模型的图5
对症下药 让COMSOL小白高效解决复杂模型的图6


今天这期我们不谈comsol案例了,

来聊聊构建复杂模型时,

容易出现哪些问题并如何改正呢?



为什么无法求解线性稳态模型?

对症下药 让COMSOL小白高效解决复杂模型的图7


对症下药 让COMSOL小白高效解决复杂模型的图8


(1)约束和边界条件不足

约束条件和边界条件的组合必须足以根据要求解的场变量来定义问题的唯一解。例如,在固体力学 中(其中软件求解固体中的位移场),对零件应用两个方向相反、大小相等的边界载荷 条件不足以定义位移。也就是说:即使零件上的力方向相反且大小相等,也不足以确定零件的位置,因此,必须添加一些其他条件(例如固定约束)来约束位移。

(2)未定义的材料属性

如果未定义物理场接口所需的部分或所有材料属性,模型将在运行时出现错误。材料分支图标上也会显示一个红色叉号。可以查看“材料”分支的设置窗口,获取包含未定义材料的所有域的列表,并为这些域添加材料。如果某种特定材料缺少一个属性,该材料也会在“模型开发器”中相应的图标上突出显示一个红色叉号。

(3)材料属性不正确

如果输入的材料属性对于控制方程来说不正确,模型将在运行时产生错误,通常是奇异矩阵错误。例如,在固体力学 中,如果泊松比设为 0.5,则模型将无法求解,原因是该值与线弹性理论不兼容。再举个例子,在求解电流时,不要将理想电绝缘体模拟为电导率为零的材料,而应在模型中忽略该域,并使用电绝缘边界条件。

(4)未定义的变量

如果尝试输入一个未定义的变量,自动的语法突出显示功能将在输入过程中识别这个变量,最好是立即解决这个问题。如果强行尝试求解这样的模型,在运行时会出现错误,其中将提供有关变量名称及其调用位置的信息。

(5)内存不足,无法求解模型

如果模型非常大,并且计算机没有太多内存,可能会收到一条有关内存的错误消息,可以尝试简化问题。此外,还请记住,无论网格粗化程度如何,线性稳态模型都可以进行求解(尽管精度较低),因此,可以从尽可能粗化的网格开始,再逐渐细化网格。

(6)严重的病态问题

由于设置原因,某些模型在数值上是病态的。数值病态意味着系统矩阵几乎是奇异的,在有限精度的计算机上很难求解。这可能是由于材料属性的极端变化或高纵横比几何结构造成的。

举例来说,在电流 问题中,您可能想要考虑这样一个材料系统:其中既包含良导体,比如铜(电导率约为 6e7 S/m),又包含绝缘材料,比如玻璃(电导率约为 1e-14 S/m)。如此大的材料属性差异可能为仿真分析带来挑战。在这种情况下,需要考虑是否可以在分析中完全忽略其中一种材料。在上述案例中,合理的做法是将绝缘材料视为理想绝缘体,在分析中将其忽略,并使用电绝缘 边界条件,而不是对这些域进行建模。

几何纵横比的条件相对更为严格。一个粗略的经验法则是,如果最大特征尺寸与最小特征尺寸的纵横比接近 100:1,开始就会遇到问题,在三维模型中尤其如此。许多物理领域都存在替代的物理公式,专门用于求解几何结构具有极端纵横比的问题,这些公式既可以单独使用,也可以与其他接口结合使用。可以考虑使用这些公式代替显式模拟具有高纵横比几何结构的零件。

通常,我们需要使用直接求解器来解决病态问题。大多数三维模型的默认求解器是迭代求解器,这种求解器对病态问题更敏感。如果默认的迭代求解器不收敛,可以尝试切换到直接求解器。

(7)使用了错误的求解器

不同的物理场有不同的默认求解器。然而,如果对求解器设置进行了较低级别的手动更改,软件将不会自动使用正确的默认求解器。求解器设置存储在研究 > 求解器配置 > 中。如果手动更改了这些设置,将在特征上看到一个小星号,如下面的屏幕截图所示。如果看到小星号,可以右键单击特征,并选择将求解器重置为默认设置;也可以删除并重新创建研究。

对症下药 让COMSOL小白高效解决复杂模型的图9

已更改的“求解器配置”要注意“解”特征上的星号




如何提高非线性稳态模型收敛性?

对症下药 让COMSOL小白高效解决复杂模型的图10


对症下药 让COMSOL小白高效解决复杂模型的图11


(1)初始值

在大多数物理场接口中,未知数的默认初始值均为零。“传热”接口是例外情况,其温度场的默认“初始值”为 293.15K 或 20℃。当初始值没有为这种迭代方法提供良好的起点时,收敛会很差。如果我们已知所求解变量的近似估值,则可以将其作为“初始值”框中的表达式输入。然而,除了一些传热问题外,我们通常很难获得所求解变量的近似估值,因此需要考虑使用替代方法。

(2)载荷缓慢变化

一般来说,如果非线性系统的载荷为零,则该系统将处于静止状态,即,解为零。因此,如果施加的载荷非常小,那么初始值为零几乎总是合理的。如果施加的载荷足够小,非线性求解器从初始条件为零开始计算,将得到收敛解。也就是说,可以先求解具有很小但非零载荷的模型。基于此,如果逐渐附加载荷增量,则先前计算的解就可以作为合理的初始条件。对这个逻辑进行扩展,如果想要求解非线性系统中的任意载荷,则可求解一系列中间问题,在此过程中逐渐增加载荷值,并且每次都使用上一步的解作为下一步的初始条件。在软件中这可以通过连续法完成,当使用辅助扫描研究扩展时,系统会默认启用此方法,如下所示。

对症下药 让COMSOL小白高效解决复杂模型的图12

可以先引入一个全局参数(上面屏幕截图中的 P),并将其从接近 0 的值逐渐增加到 1。此参数在物理场接口中用于乘以一个、部分或所有外加载荷系数。

这种技术的优点体现在两个方面。首先,这种方法在物理上很直观,通常与人们进行实验的方式相符合。其次,如果找不到解,连续法将自动采用较小的载荷增量。

(3)非线性斜坡变化

载荷斜坡变化技术并不总是适用于所有问题。在这种情况下,可以使用相同的连续法,但改为使模型中的非线性呈斜坡变化。非线性与控制方程、材料非线性表达式或物理场之间的耦合项紧密相关。同样,可以引入一个全局参数,使其从 0 逐渐增加到 1。使用此参数对模型中的非线性表达式进行修正。

(4)网格细化

如果采用载荷和非线性斜坡变化后,求解器仍然收敛缓慢,可以尝试细化网格。有限元网格必须足够细化才能解析解场的空间变化。理想情况下,对于解在空间中快速变化的区域,我们可以使用小单元,而在其他区域使用较大的单元。但是,我们通常不可能提前知道这一点。因此,建议使用自适应网格细化,此功能仅对有必要细化网格的区域自动执行网格细化,而在其他区域使用粗化网格。此外,也可以手动细化网格。网格细化通常可能需要与载荷或非线性的斜坡变化结合使用,可以首先对非线性斜坡变化使用相对粗化的网格,接着细化网格,然后再使细化的网格进一步产生斜坡变化。

求解方法:

两种方法来迭代求解非线性方程组:全耦合分离法。前一种方法一次求解问题中的所有未知量,并在单次迭代中考虑所有未知量之间的所有耦合项。这种方法的计算成本相对较高,但收敛效果最佳。默认情况下,大多数一维、二维和二维轴对称模型都使用此方法。

另一种是分离法,可分别求解多组未知量。我们通常根据未知量所表示的物理场将其分成多个组,然后依次对这些组进行求解。也就是说,在每个外部牛顿型迭代中,分离法按顺序求解每个分离的组。因此,软件使用任何先前计算步骤中的解作为初始值和线性化点,将每个物理场作为单独的问题进行求解,其中忽略不同组之间的耦合项。与全耦合方法相比,这种方法的内存需求始终更低,并且总的求解时间也往往更短。默认情况下,大多数三维多物理场模型都使用分离法,并且软件会自动将问题分成适当的组。

对症下药 让COMSOL小白高效解决复杂模型的图13

“全耦合”求解方法,其中已启用“求解时绘图”




如何提高瞬态模型收敛性?

对症下药 让COMSOL小白高效解决复杂模型的图14


对症下药 让COMSOL小白高效解决复杂模型的图15


时间步进法

COMSOL 提供三种方法用于求解微分代数方程:向后差分公式法广义 α 法龙格-库塔法。向后差分公式法和广义 α 法是隐式方法,龙格-库塔法是显式方法。显式方法根据当前状态下的解直接计算未来状态下的解。隐式方法根据未来状态和当前状态下的解形成一个方程组并进行求解。隐式方法通常比显式方法更稳定、快速,但显式方法使用的内存更少。软件将根据所用的物理场接口自动确定最合适的方法,一般不建议替代默认的求解器方法。

要查看所使用的求解器,可以在求解器配置的瞬态求解器节点中查看时间步进设置,如下面的屏幕截图所示。

对症下药 让COMSOL小白高效解决复杂模型的图16

查看所用求解器方法的位置

龙格-库塔法主要用于求解常微分方程组以及涉及时域显式压力声学 和时域显式电磁波 物理场接口的模型。因此,这种方法的使用范围非常狭窄。

对于已确定解本质上是振荡的(类似波)模型,例如声学模型、电磁波模型以及包含惯性项的结构瞬态模型,通常默认使用广义 α 法。这些类型的问题最好通过指定单元大小和求解器时步来求解。

对于涉及扩散、对流和反应的有限元模型,通常默认使用向后差分公式法,这些情况代表了受益于求解器设置调整的大多数情况。系统使用自适应或自由时间步进方案求解这类问题,求解器将自动调整时间步长。

本文来自:COMSOL仿真交流

参考文献:

【1https://cn.comsol.com/support/knowledgebase/1260

【2】https://cn.comsol.com/support/knowledgebase/103

【3】https://cn.comsol.com/support/knowledgebase/1262


对症下药 让COMSOL小白高效解决复杂模型的图17

默认 最新
当前暂无评论,小编等你评论哦!
点赞 4 评论 收藏 5
关注