结构化网格主要指四边形和六面体
常用四边形网格
常用六面体网格
在实际应用中,一方面结构化网格在形函数基函数计算,等参变换,处理模型,模型编辑上有优势,比如网格分割,组合,沿固定方向加密,还可以方便拆成非结构化网格;另一方面,对于不太规则额的几何体,自动生成结构化网格比较困难,需要大量的人工干预。所以在通用有限元分析中一般优先推荐结构化网格,另外CFD分析中,六面体网格天然适用流体的有限体积计算方法,也是首选。
1. 最简单的结构化网格方法是扫掠。对于三维,选中一个面,划分四边形,然后沿另一维度扫掠生成六面体。这种方法需要用户手工参与,且对几何有一定要求,扫掠生成的网格质量一般都比较好。除了单向扫掠,实际算法中会有多轴扫掠。扫掠的改进方法即类似于在扫掠方法渐进的波前法,又叫plastering方法。
2. 结构化网格生成算法中,有一种间接生成方法,即首先创建非结构化网格,再合并。比如二维网格中先产生三角形,然后三角形两两组成一个四面体。六面体则是先生成四面体,然后组装六面体。这种方法又叫Morph算法。
3. 由于结构化网格有比较好的边界特性,所以多块(MultiBlock)划分也是常用的方法。即首先将几何区域分成子区域,在子区域里分别划分网格,再进行合并。比如生成六面体,一般会将空间进行八叉树划分,在每个八叉树子节点内进行划分,但这种方法需要处理边界,优化边界网格的质量。
4. Whisker Weaving是一种基于拓扑连接的自动六面体生成算法。首先在边界上生成四边形,然后以四边形为输入采用波前法推进在三维模型内部建立六面体的对偶表达,根据对偶表达生成六面体。
全自动的六面体网格生成仍然是网格生成的难点。
考虑到结构化网格生成的工程复杂性,本文仅对生成算法做基本介绍。通用前处理软件以及各种仿真软件中都会提供结构化网格功能,但全自动的网格质量一般都不会太好,需要一定的手工操作。
网格优化
网格生成之后,最后需要优化网格质量,常见的几种质量优化方法:
1. 移动顶点位置
移动顶点位置,让和顶点关联的单元质量都能改进
2. 移除顶点(通常说的edge collapse)
3. 交换边
4. 交换面(同交换边)
5.分解边
即将一条长边分解成两条短边
最后说一下网格的并行计算,网格并行主要有两点:一是几何模型的分解或者网格模型的分解;二是网格的拼接。这两点做好后,网格大规模并行计算基本没什么问题。现在的分布式计算和并行计算工具已经非常成熟,可以拿来直接使用。