求解线性静态有限元模型

2013年10月15日

在新求解器系列的第一个博客条目中,我们描述了用于解决所有线性静态有限元问题的算法。此信息是在非常简单的一维有限元问题的上下文中提供的,但适用于所有情况,对于理解更复杂的非线性和多物理解决方案技术非常重要,该技术将在即将到来的博客文章中讨论。

是什么使有限元模型线性和静态

考虑下面所示的系统,该系统的一端连接到刚性壁上,另一端具有施加力。

附着在刚性墙壁和施加力的弹簧的有限元示例

我们有兴趣找到应用力的弹簧末端的位移。使用词汇有限元方法,我们在这里有一个单个元素有限元模型。春天是元素,它被两个节点在任一端。其中一个节点牢固地固定在壁上,由于施加的载荷,其他节点会变形。我们正在尝试由于施加的负载而找到节点位移。这个问题是线性因为材料特性(弹簧常数)和载荷都不取决于溶液。这是一个静止的问题是因为我们发现解决方案是在时间上没有变化的假设。

通过模型工作

可以用笔和纸很容易解决这个问题,但让我们看一下如何以更严格的方式完成此问题。考虑一下我们试图找到位移的节点,并在平衡处取得力量平衡:

图显示了在平衡处的力平衡

我们可以将其写出为:f(u)= p-ku,我们称这个方程式为功能在系统的平衡(稳态条件)下,功能等于零。我们想找到的价值这样f(u)= 0。我们还绘制功能:

方程的图称为系统的功能

当然,在这种情况下,我们可以通过检查找到解决方案,但通常将是一个可能有数百万未知数的矢量,所以让我们更加严格,看看所使用的确切算法:

  1. 例如,选择一个开始猜测,例如:u_ {init} = 0
  2. 在这一点上评估功能:f(u_ {init})= 2-4(0)= 2
  3. 评估功能的导数:f'(u_ {init})= -4
  4. 计算解决方案:u_ {solution} = u_ {init} - [f'(u_ {init})]^{ - 1} f(u_ {init})= 0-(2/(2/( - 4))= 0.5

上述算法也称为牛顿 - 拉夫森方法。此外,我们可以以图形方式将其可视化为:

牛顿 - 拉夫森方法的可视化

请注意,无论起点如何,解决方案都将在一个步骤中找到。因此,每当您在comsol多物理学中解决线性静态有限元问题时,该软件都会遵循此算法以找到解决方案。现在,上面的示例只有一个未知数,因此我们只需要求解一个线性方程。通常,您的模型将具有数千甚至数百万个未知数,这意味着您需要求解线性方程式系统,但是这个想法是相同的。

最后,我们解决了数值缩放的问题。每当我们在计算机上解决问题时,我们都需要考虑有限的精度因为浮点表示数字。计算机不能完美地表示实数的空间。为了最大程度地减少此效果,comsol在求解之前将比例因子应用于等式。comsol会自动选择适合模型中每个设置字段变量的缩放,并且用户几乎不需要处理这一点,但是值得知道比例因子具有什么影响。只要它在解决方案中值平均幅度的几个数量级内,则无需相互作用。只有当比例与预期溶液幅度大不相同时,应更改尺度因子。

总结有关求解线性静态有限元模型需要了解的内容:

  1. 无论您使用什么开始猜测,都会在一次迭代中找到解决方案
  2. 变量的缩放是为了解决有限精确浮点算术问题的问题

如何解释comsol日志文件

日志文件

现在,让我们看一下如何使用上述信息来解释典型的线性静态有限元模型的comsol日志文件。这是来自热应力问题的日志文件(添加了行号):

1)求解器1中的固定求解器1始于2013年4月30日17:41:45。2)线性求解器3)求解的自由度数量:3651(加124个内部DOF)。4)找到对称矩阵。5)因变量的比例:6)位移字段(材料)(MOD1.U):0.0090 7)温度(mod1.t):2.9e+002 8)迭代阻尼步骤#res #jac #sol #sol 9)1 1.0000000 4.77.77.77.77.77.77。E-017 1 1 1 10)固定求解器1在求解器1:解决方案时间:0 S 11)物理内存:878 MB 12)虚拟内存:879 MB

解释

  • 第1行报告了调用求解器的类型和开始时间。
  • 第2行报告该软件正在调用线性系统求解器。(comsol可以自动检测问题是线性还是非线性,并将称为合适的求解器。)
  • 第3行报告了问题的大小,以自由度(DOF)的数量(DOF)。内部DOF(完全使用时)通常用于计算边界通量,并且不会显着影响问题大小。
  • 第4行报告要解决的有限元矩阵的类型。
  • 第5-7行报告缩放。在这种情况下,解决了热应力问题,因此COMSOL缩放位移和温度场。位移场尺度为0.0090,使用模型(仪表)的单位系统,只要结构位移不小于〜9纳米(或大于9 km!),该缩放是可以接受的。温度场尺度因子为293K。除非我们解决了低温问题(其中温度可能为4 K +/- 0.001 K)或数百万开尔文的温度问题,否则此缩放量也可以接受。
  • 第8-9行报道,使用单个牛顿 - 拉夫森迭代来解决此问题。
  • 第10-12行报告解决方案时间和内存要求。

现在,您应该了解如何在comsol中解决线性静态问题以及如何解释日志文件。


评论(7)

发表评论
乐动体育app
加载...
约翰·平克尼
约翰·平克尼
2013年10月16日

谢谢沃尔特,期待您的下一篇文章。

伊瓦尔·凯尔伯格(Ivar Kjelberg)
伊瓦尔·凯尔伯格(Ivar Kjelberg)
2013年10月18日

嗨,沃尔特

弹跳这篇博客文章怎么样,并以此为例来说明如何决定适当的本地网格划分密度?
=>允许局部解析因变量梯度。

comsol的重要点之一是一旦定义了物理学,就可以很好地将所有这些“物理学”搭配在一起,因此将其属于的网格融合操作倒退:域的最终“数学”离散化(与声音抽样理论明显相似)。

在u_init = 0的点上,您在上面说,需要估计派生f'(u_init)。
据我所知,这是通过在网格节点之间差的差异来完成的(当整个方程式无法分析时),因此,您至少应该在u_init和u_solution之间具有一个网格节点(即使U_Solution未知)。

对于许多物理学,可以估计f'(u_init)的价值:
即在热模型中,对于时间模型,已知的热扩散性alpha_t [m^2/s] = k/rho/cp在网格空间扩展DZ与相关的最小时间之间的良好链接,通过尊重DT> n*dz,^2/alpha_t。使用n = 2可提供合理的网格大小,以通过nyquist标准,例如评估毕业生(t),因此在求解时避免了绝对温度(或化学扩散的负浓度)。

希望您比我有更多的时间将它们以一种更清晰,更好的说明方式组合在一起,在comsol博客上乐动体育赛事播报
再次感谢您的一系列书面文字
真挚地
伊瓦

Birru Mahendar
Birru Mahendar
2013年10月21日

概念。易于理解的comsol工作。谢谢沃尔特。

//www.dvdachetez.com/blogs/meshing-considerations-linear-static-problems/). I'm planning a few more following that as well.">
沃尔特·弗莱
沃尔特·弗莱
2013年10月22日

谢谢伊瓦尔,您可能想查看我有关Meshing的最新帖子(//www.dvdachetez.com/blogs/meshing-considerations-linear-static-problems/)。我还计划再计划。

Xu Yang
Xu Yang
2015年11月26日

嗨,沃尔特,阻尼步骤#Res #jac #sol的实际含义是什么?
迭代阻尼步骤#Res #jac #sol
9)1 1.0000000 4.7E-017 1 1 1 1

沃尔特·弗莱
沃尔特·弗莱
2015年11月30日

您好Xu,有关所有这些数量的详细信息,请咨询文档。

Evgeni Sergeev
Evgeni Sergeev
2016年3月4日

一种简单的方法来判断问题是否是线性的,是要问:如果我们将所有BCS和源术语缩放到相同的因素F中,现在的解决方案是否与以前相同,由F缩放?如果是这样,那是一个线性问题。

探索comsol乐动体育赛事播报博客