4. 质量分析工具与流程
非结构网格的质量分析不是“看一眼最差值就结束”的动作,而是一套可重复的检查流程:先明确要检查哪些指标,再在软件中调用对应的检查功能,把结果导出为可追溯的报告,最后依据求解器的容忍范围设定阈值并做出“接受/修复/重划”的判断。本节围绕 ANSYS Meshing、Pointwise 和 OpenFOAM 三套主流工具,讲清楚各自的质量检查入口、指标口径差异,以及如何把检查结果组织成一份能用于决策的报告。
一、先统一指标口径,再谈阈值
不同软件对“质量”的定义并不完全一致,直接比较数值容易误判。工程上常用的核心指标包括:正交质量(Orthogonal Quality)、偏斜度(Skewness)、长宽比(Aspect Ratio)、最小/最大二面角,以及 OpenFOAM 特有的 non-orthogonality 与 skewness。其中 ANSYS Meshing 的正交质量取值 0~1,越接近 1 越好,通常要求最小值不低于 0.1,重要算例建议不低于 0.15~0.2;偏斜度取值 0~1,越接近 0 越好,一般要求最大值不超过 0.95,关注区域建议控制在 0.85 以内。Pointwise 更常以偏斜度、长宽比和面积/体积比来评估,其偏斜度定义与 ANSYS 相近但归一化方式略有差别。OpenFOAM 的 checkMesh 则直接报告最大 non-orthogonality(一般希望小于 70°,超过 75° 需警惕)、最大 skewness(希望小于 4)以及负体积单元数量。
因此,阈值设定必须“绑定工具 + 绑定求解器”。同一套网格在 ANSYS 中正交质量 0.12 可能被判为可接受,但在对扩散项离散敏感的求解器中仍可能发散。建议在项目内固定一张指标对照表,明确每个指标由哪个工具输出、对应哪个求解器要求,避免跨工具混用数值。
二、三套工具的检查入口与操作要点
ANSYS Meshing:在 Mesh 分支下使用 Quality 面板,可切换 Orthogonal Quality、Skewness、Aspect Ratio 等指标,并通过 Mesh Metric 下拉框选择。关键操作是勾选 Show Worst Elements 并设置显示数量(如 10 或 20),软件会在图形窗口高亮最差单元,便于定位到具体几何位置。柱状图的横轴区间分布比单一最小值更有信息量:若大量单元集中在 0.6~0.8,说明整体均匀;若只有极少数落在 0.1 附近,则属于局部问题,优先局部加密或调整面网格,而不是整体重划。
Pointwise:通过 Examine 功能中的网格质量检查,选择 Skewness、Aspect Ratio、Volume 等指标,可对指定 block 或全体单元统计,并以直方图与最差单元列表呈现。Pointwise 的优势在于能按 block 分别检查,适合多块结构/非结构混合网格的逐块排查。实操中建议先对全体做一次统计,再对最差单元所在 block 单独复查,确认是边界层过渡问题还是块间连接问题。
OpenFOAM:在算例目录下执行 checkMesh,输出网格统计、边界信息与质量指标。常用命令如下:
# 基础检查,输出单元数、面数、最大非正交角等
checkMesh
# 将检查结果写入日志,便于归档与对比
checkMesh -allGeometry -allTopology > log.checkMesh 2>&1
# 仅关注拓扑与几何的严格检查
checkMesh -allGeometry -allTopology -writeSets vtk
输出中重点看三项:Max non-orthogonality、Max skewness、negative volume cells。若出现负体积单元,必须先修复,否则求解器无法启动;若非正交角超过 75°,应检查边界层与主流区的过渡区域,必要时在 fvSchemes 中增加非正交修正迭代次数,但这只是缓解,不能替代网格修复。
三、报告生成:让检查结果可追溯
质量报告的价值在于“别人能复现你的判断”。一份合格的报告至少包含:工具与版本、网格规模(单元数、节点数)、各指标的最差值及其所在位置、指标分布概况、所用阈值及其依据(求解器手册要求或项目规范)、以及最差单元的截图或 VTK 文件。ANSYS 可通过 Mesh Metric 面板导出统计图,Pointwise 可导出质量直方图与最差单元清单,OpenFOAM 则直接把 checkMesh 输出重定向到日志文件归档。建议在报告开头写清“本报告由 checkMesh -allGeometry 生成,阈值依据为项目规范 v1.2”,这样后续复核时不会因工具口径变化产生争议。
四、阈值设定与判定逻辑
阈值不是越低越安全,过严会导致不必要的重划成本。合理的做法是分层设定:硬阈值(如负体积单元数必须为 0、正交质量最小值不低于 0.1)一旦违反必须修复;软阈值(如偏斜度 0.85、非正交角 70°)用于提示关注区域,允许在局部存在但需记录并评估影响。判定时优先看“越界单元的数量与位置”:若越界单元集中在远离关注区的远场,影响通常有限;若集中在壁面边界层或分离区,即使数量很少也应修复。修复后必须重新运行同一检查命令,确认指标改善且未引入新的负体积,形成“检查—修复—复检”的闭环。
checkMesh 与 ANSYS/Pointwise 的检查结果统一记录到同一张表里,字段固定为“指标名、工具、最差值、位置、阈值、判定”。这样跨工具对比时不会因口径混淆而误判,也便于项目交接时快速复核。