猿代码 — 科研/AI模型/高性能计算
0

On Solvers: Multigrid Methods,多重网格,Comsol

摘要: 正如之前在博客上讨论的那样,迭代方法有效地消除了振荡误差分量,同时几乎不影响平滑的分量(平滑特性)。特别地,多网格方法使用平滑特性、嵌套迭代和残差校正来优化收敛性。在把这个众所周知的谜题的所有部分放在 ...
正如之前在博客上讨论的那样,迭代方法有效地消除了振荡误差分量,同时几乎不影响平滑的分量(平滑特性)。特别地,多网格方法使用平滑特性、嵌套迭代和残差校正来优化收敛性。在把这个众所周知的谜题的所有部分放在一起之前,我们需要引入残差校正,并深入到嵌套迭代中。让我们从这些元素中的后一个开始。

Nested Iteration

在我们之前的博客文章中,我们解释了的振荡波在较粗糙的网格上表现为更平滑的波(已用于表示具有间距的网格)。在同一条线上,我们可以证明上的光滑波在上看起来更具振荡性。当收敛开始停滞时,转移到更粗糙的网格是一个好主意。上的主要平滑波在上会显得更具振荡性,其中迭代方法的平滑特性使其更有效。

因此,粗网格可以用于生成改进的初始猜测,如以下嵌套迭代过程所示:
  • Iterate on  on the coarsest grid
  • Iterate on  on  to obtain an initial guess for 
  • Iterate on  on  to obtain an initial guess for 
  • Iterate on  on  to obtain a final approximation to the solution
嵌套迭代似乎是一个很好的过程,但一旦我们在精细网格上,如果我们仍然有平滑的误差分量,并且收敛开始停滞,会发生什么?残差方程就在这一点上,多重网格方法向我们展示了如何将其与嵌套迭代有效地结合使用。

The Residual Equation and Coarse Grid Correction

当我们计算近似解时,解是未知的,代数误差的范数是衡量迭代方法收敛到解的程度的指标。(方程也可以写成。)由于代数误差也是未知的,我们必须依赖于一个可以计算的测量:残差。



经过一些代数运算,我们确定了和之间的重要关系:残差方程。残差方程很重要,因为它将引导我们引入残差校正的思想。也就是说,我们计算近似解,直接通过残差方程求解,然后使用代数误差的定义计算新的近似解:。

此外,使用残差方程,我们可以直接对误差进行迭代,并使用残差校正来改进近似解。在迭代的同时,如果平滑误差分量仍然存在,收敛最终将开始停滞。然后,我们可以在较粗的网格上迭代残差方程,返回并更正此处首先获得的近似解。该过程称为粗网格校正,包括以下步骤:

  • Iterate  times on  to obtain the approximate solution until reaching a desirable convergence
  • Compute the residual 
  • Solve the residual equation  to obtain the algebraic error  (the restriction operator needed by  has been omitted)
  • Correct  with : (the prolongation operator needed by  has been omitted)
  • Iterate  times on  to obtain the approximate solution  until a desired convergence is reached

我们现在知道当收敛开始在最好的网格上停滞时该怎么办了!

上面概述的粗略网格校正可以用以下图表表示:

Our First Multigrid Method: The V-Cycle


关于粗网格校正,还有一个问题:如果我们在粗网格上没有达到所需的误差收敛,该怎么办?

让我们思考一下。在粗网格上求解残差方程与求解新方程没有任何不同。我们可以在上对残差方程应用粗网格校正,这意味着我们需要校正步骤。如果在上可以直接求解,我们就不需要再应用粗网格校正,我们的求解方法将看起来像V,如下图所示。
这种求解方法被称为V循环多重网格。很明显,多重网格方法本质上是递归的,并且V循环可以扩展到两个以上的级别。粗略的网格步长比精细的网格步长计算得更快,而且当我们深入到它们时,误差收敛得更快。



由于在粗略网格上花费更多的精力是有回报的,因此可以引入一种称为W循环的方法,其中计算在粗略步骤上停留的时间更长。如果最深V循环的初始猜测是从较浅的V循环中获得的,那么我们就有了所谓的全多重网格循环(FMG)。虽然FMG是一种更昂贵的方法,但它也允许比V循环和W循环更快的收敛。

Reviewing the Different Multigrid Methods

在这里,我们以最简单的形式介绍了V循环、W循环和FMG。为了解决复杂的多重物理问题并达到最佳性能,多重网格方法并不是单独使用的。它们还可以用于提高其他迭代方法的收敛性。这就是COMSOL Multiphysics中隐藏的情况。



多重网格方法组合在一起的技术已经使用了很长一段时间,并且以其局限性而闻名。多重网格方法的美妙之处在于它们的简单性,以及它们以克服局限性的方式集成了所有这些思想,产生了一种比元素总和更强大的算法。




说点什么...

已有0条评论

最新评论...

本文作者
2024-2-24 00:02
  • 0
    粉丝
  • 289
    阅读
  • 0
    回复
资讯幻灯片
热门评论
热门专题
排行榜
Copyright   ©2015-2023   猿代码-超算人才智造局 高性能计算|并行计算|人工智能      ( 京ICP备2021026424号-2 )