绘制代数残差以研究模型收敛

2016年4月27日

您可以使用剩余的运营商,新的,具有Comsol Multiphysics 5.2版,以评估和绘制模型的代数残差,以解决收敛问题。这篇博客文章演示了剩余的可视化和理解湍流模拟的收敛性能的操作员。

什么是代数残差?

在求解有限元模型时,重要的是要知道结果的准确性。根据网格(离散化)和您求解的方程式的性质,代数残差只是几个误差源之一。以下资源导致计算错误:

  • 截断错误(也称为Galerkin错误对于有限元方法)。
  • 正交错误通过使用数值方法来近似有限元积分。
  • 几何近似误差通过通过多项式表示代表实际的几何形状,这是与弯曲边界相邻或在弯曲边界上的元素的一种集成误差。
  • 代数错误通过过早终止求解器(或使用草率公差)获得。这是您可以使用的错误剩余的操作员。

通常,代数误差(并且应该)比截断误差小得多。但是,如果您遇到融合问题,代数残差并不小,可以揭示该问题的原因在模型中的位置。

与Comsol多物理学已经提供的相关信息相反,例如收敛数字,缩放全球数字,剩余的操作员为模型中每个变量提供了未量的残差值。它还显示了该数量残差的空间分布。残差是来自有限元离散化的最新计算剩余向量,但被解释为连续的空间场数量。空间分布可帮助您查明在建模域中残差相对较大的位置,因此会妨碍溶液的收敛性。模型中可能的问题可能是:

  • 在建模域的该部分中的网格分辨率不足
  • 几何形状的尖角
  • 不适当或不兼容的边界条件

让我们确切地看看如何使用模型中的代数残差绘制和评估剩余的操作员。

如何将代数残差添加到模型

剩余的操作员可用于固定和时间依赖的模拟。添加剩余的运算符的模型,您需要使用设置在先进的子节点为固定或时间依赖的求解器。默认情况下,存储最新的残留物设置为离开。要计算残差,请选择同时解决,或计算并将其存储在输出中以进行后处理,请选择在解决和输出中。将残差存储在输出中,以便您可以在图中使用它并进行一般的后处理需要其他内存资源,但是如果您只想在求解时绘制残差,则无需进行任何内存资源。

将代数残差添加到comsol多物理学中的模型的设置。
用于指定最后一个残差值存储的设置。

使用剩余的Comsol多物理学运算符:流体动力学示例

展示如何剩余的操作员可以提供有关数值干扰如何进入和传播有限元模型的洞察力,请考虑向后朝向示例模型的湍流流动从应用程序库。此示例使用K-ɛ湍流模型。该模型具有经典的2D几何形状,该几何形状是向后朝向步骤,其角落在湍流流动模拟中导致再循环区域。

该版本的模型包括在求解时在动量方程(速度字段)中绘制残差。为此,速度图组包含一个表面用表达式绘制节点残留(SPF2.U), 在哪里spf2.u是速度幅度。

Surface Plot节点的设置窗口显示残差操作员作为绘图的表达式。
的一部分表面绘制节点的设置窗口,带有剩余的操作员作为绘制的表达式。

为每个隔离迭代计算更新。在里面隔离求解器节点,伪时间步进用于稳定和加速,并选择速度图组作为求解时显示的图。对于这样的情节,足以设置存储最后一个残留功能同时解决选项。另请注意,如果您选择剩余的作为隔离求解器的终止标准,您将获得与由剩余的操作员,确定收敛性。但是,对于默认解决方案或残差标准,剩余的操作员还提供重要信息。

屏幕截图说明了隔离的求解器设置。
隔离的求解器设置,带有残差图,在解决方案时的结果。

这个示例是一个很好的说明,说明当您以某种固定方法解决运输问题时会发生什么 - 在这种情况下,伪时间步入。由“后退干扰”造成的残留需要将其运出该地区。除非“干扰”被运出通道,并且模拟可以完成,剩余的人才不会掉落。下面的屏幕截图显示了剩余区域如何从入口区域移到出口的区域。

模拟显示解决方案开始时速度场的残差。
溶液末端的速度场的残留。

速度场的剩余在溶液的末端和末端。

收敛图证实,一旦大残留物消失,最初缓慢的收敛性将在几次迭代中变为快速收敛。这种行为与以下事实一致:扰动和误差根据近似方程式发展(在这种情况下,是时间依赖性,对流为主流程方程的近似值。因此,这些错误需要时间,这与伪时间步进的迭代相对应,将其运出域。

描绘向后面向步骤教程模型的收敛性的图。
湍流在向后面向步骤教程模型上的收敛图。注意末尾的快速收敛。

通过绘制和评估代数残差,您可以对不会缓慢收敛或收敛的模型进行故障排除,以便您可以尽快有效地找到仿真结果。

进一步的资源


评论(5)

发表评论
登录|登记
加载...
迈克尔·雷贝(Michael Rembe)
迈克尔·雷贝(Michael Rembe)
2016年8月19日

你好马格努斯,

非常感谢您的解释。残差有助于评估解决方案并了解收敛问题。

如果您错过了残差,则在您通过停止条件取消模拟的情况下(保存结果),COMSOL52A不会保存任何残差。在这种情况下,您会在模拟过程中获得结果。

此致

乌尔里克(Ulrik)吹了
乌尔里克(Ulrik)吹了
2016年9月20日

你好,

此功能听起来很有用,我过去错过了它。

此致
乌尔里克

米兰·帕特尔
米兰·帕特尔
2016年12月1日

我也是!这会很棒。

丹尼尔
丹尼尔
2020年9月28日

你好,

谢谢您的这篇文章,我发现它很有用。但是,我仍然无法绘制我的残差:当我尝试按照您的说明进行指示时,我只会得到我的域名空白图。
您知道“残差”操作员是否与我的Comsol版本(5.4)有任何不相容性?
另外,我想问另一件事:除了在计算过程中由comsol显示的标准收敛图外,是否可以在求解器运行时绘制每个因变量的缩放残差?我知道这样做的唯一方法是定义一个探针,我可以在计算过程中监视该探针,但我不知道如何调用“表达式”文本框中的残差。

非常感谢您的任何帮助。
亲切的问候

丹尼尔

马格努斯环
马格努斯环
2020年9月29日 comsol员工

你好丹尼尔,

这听起来很奇怪。请联系我们的技术支持团队以寻求帮助。

此致,
马格努斯·林格(Magnus Ringh),comsol

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