执行 AMR 的代码中的网格

计算科学 自适应网格细化
2021-12-23 10:46:23

鉴于这个问题和我在网上阅读的一些内容,我想知道执行 AMR 的大型 FE 库(例如,deal.ii、libmesh 等)是否保留了整个网格,或者可能是每个核心上的整个网格的粗略版本。此外,这是否限制了可以在每核 RAM 较低的机器上解决的问题的规模。

最后如何进行负载均衡?在每个细化/粗化步骤之后是否重新划分了整个网格?

1个回答

deal.II 在每个处理器上保留整个网格,但是经过许多细化步骤后,我们当然不能对实际网格进行此操作。确实,这在一定程度上限制了我们可以解决的问题的大小,在典型大小的集群节点上可能只有几十万个粗网格单元。然而,对于大多数实际情况来说,这对于几何的合理粗略近似来说已经足够了。然后,自适应网格细化可以解决细节问题——对于细化的网格,您可以随心所欲地进行,我们已经完成了具有数十亿个单元的网格。

就负载平衡而言,是的,我们在每个细化/粗化步骤之后都会这样做。事实证明,即使在大量处理器上,这也不需要占程序总运行时间的很大一部分。

我承认我不知道上述观察是否适用于其他图书馆。这些库的作者需要为他们自己的产品说话。