非结构化网格中元素的排序对于计算性能无疑是非常重要的。例如,它确定由 PDE 离散化产生的稀疏矩阵的结构,这会影响大多数线性代数运算(如矩阵向量积)的性能。
最近,我们使用了 COMSOL Multiphysics 生成的非结构化四面体网格。对于给定的网格,我们构造一个具有以下结构的矩阵:每一行对应于网格的某个面,非零元素对应于与面相邻的一个或两个单元的面,即对于四面体网格,每个面row 最多有 7 个非零元素。COMSOL 生成的网格的矩阵结构如下图所示。
同时,我们尝试使用其他网格生成器,但我们目前没有一个好的方法来订购网格。使用按顺序遍历单元中心八叉树的简单方法,我们得到与上面相同矩阵的以下结构,它不像原始的那样“好”:
不幸的是,COMSOL 文档没有说明网格排序算法。有没有人知道它可能使用哪种算法或哪些算法可能会生成相似(或更好)的结构?