多重网格法中的限制和插值

计算科学 线性代数 矩阵 插值 多重网格
2021-12-21 18:25:43

我需要详细解释下面的公式

A2=I1*A1*I2 

我想这个公式在粗网格上计算矩阵 A2,这里 A1 是细网格上的原始矩阵。

所以给出了A1,但我不知道I1和I2。这就是为什么我要问在哪里可以得到这些矩阵 I1 和 I2。

在第 52 页的“Briggs, Multigrid Tutorial, SIAM, 2000”中解释了“注入的一维限制”。在那里,他们只需在图中每隔一个点放下一个点以移动到粗网格中,然后计算相邻点的平均值以返回到细网格。

但我正在使用二维矩阵 A1。这是否意味着我必须在一行矩阵中删除每个第二个元素或每隔一行删除一次以在较粗的网格中获得较小的矩阵?

因为我想使用多重网格方法求解线性代数方程组。我的问题是如何将那本书(第 52 页)中解释的技术与二维矩阵 A 联系起来?如果上面的公式是一种方法,那么 I1 和 I2 是什么以及如何找到它们?

1个回答

给定插值IHh和限制IhH(其中限制通常是(IHh)T对于对称问题),具有精细网格离散化算子Ah, 有两种常用的方法来构造粗网格算子AH.

(Petrov-)Galerkin 粗算算子

这显式计算矩阵三重乘积

AH=IhHAhIHh.
这对于对称问题(包括那些具有低规律性的问题)具有完善的收敛理论,并且是一个黑盒过程,只需要没有关于潜在问题的信息的矩阵。当与有限元方法一起使用时,粗算算子可以解释为具有“多尺度”基函数的一些粗网格中的 FEM 离散化。对于非结构化问题,粗略的 Galerkin 算子通常具有“模板增长”,其中每行非零的数量“过度”增长。激进的粗化有助于减少模板生长,但会降低鲁棒性/降低收敛速度。计算三重乘积相对昂贵,尤其是并行计算,通常代表代数多重网格的大部分设置时间。

重新离散化的粗算子

如果您的粗网格在几何上有意义,您可以定义AH通过在粗网格上显式地重新离散您的方程。这可以进一步推广,例如,离散化在该粗略尺度下更合适的不同方程组。这方面的极端例子包括使用粗网格的低维集成模型,甚至将细网格 Monte-Carlo 模拟与宏观尺度确定性 PDE 相结合。对于稳态流体求解器,再离散化比 Galerkin 粗算子更受欢迎,并且以需要更多问题知识和通常较低的多尺度系数问题的鲁棒性为代价来解决“模板生长”问题。当使用重新离散化时,通常可以从算法中消除所有组装矩阵,从而减少内存需求。