Mesh optimization procedures are generally a combination of node smoothing and discrete operations which affect a small number of elements to improve the quality of the overall mesh. These procedures are useful as a post-processing step in mesh generation procedures and in applications such as fluid simulations with severely deforming domains. In order to perform high-order mesh optimization, these ingredients must also be extended to high-order (curved) meshes. In this work, we present a method to perform local element operations on curved meshes. The mesh operations discussed in this work are edge/face swaps, edge collapses, and edge splitting (more generally refinement) for triangular and tetrahedral meshes. These local operations are performed by first identifying the patch of elements which contain the edge/face being acted on, performing the operation as a straight-sided one by placing the high-order nodes via an isoparametric mapping from the master element, and smoothing the high-order nodes on the elements in the patch by minimizing a Jacobian-based high-order mesh distortion measure. Since the initial straight-sided guess from the placement of the nodes via the isoparametric mapping frequently results in invalid elements, the distortion measure must be regularized which allows for mesh untangling for the optimization to succeed. We present several examples in 2D and 3D to demonstrate these local operations and how they can be combined with a high-order node smoothing procedure to maintain mesh quality when faced with severe deformations.
翻译:网格优化过程通常结合节点平滑和影响少量单元的离散操作,以提升整体网格质量。这些过程在网格生成的后处理步骤以及严重变形域的流体模拟等应用中十分有用。为实现高阶网格优化,这些核心要素必须扩展至高阶(曲面)网格。本文提出一种在曲面网格上执行局部单元操作的方法,具体讨论了三角形网格和四面体网格中的边/面交换、边收缩以及边分割(更一般的细化)操作。这些局部操作的实现步骤为:首先识别包含待操作边/面的单元块,通过从参考单元进行等参映射放置高阶节点来执行直线边操作,随后基于雅可比矩阵的高阶网格畸变度量对单元块内的高阶节点进行平滑优化。由于通过等参映射初始放置的直线边猜测常导致无效单元,必须对畸变度量进行正则化处理,使得网格解缠能力得以实现,从而保证优化成功。我们展示了二维和三维的多个算例,验证了这些局部操作如何与高阶节点平滑过程结合,在面临严重变形时维持网格质量。