网格质量指标 — 影响数值精度的6个评价标准

分类:V&V / 网格收敛 | 更新 2026-04-12
Mesh quality metrics visualization showing aspect ratio, skewness and orthogonal quality distributions across a finite element mesh
显示网格质量指标分布的有限元模型 — 红色为质量不良单元,蓝色为高质量单元

网格质量指标的理论基础

什么是网格质量

🧑🎓

老师,网格质量要看什么指标呢? 指标那么多我有点懵…

🎓

理解你的感受。但实务中最关键的只有3个纵横比(理想是1:1,许可≤3:1)、偏斜度(0为理想,≥0.95不行)、正交性(≤0.1不行)。掌握这三个,通常不会有大问题。

🧑🎓

那雅可比行列式和翘曲呢? 我也经常听到这些词…

🎓

雅可比行列式、翘曲、锥形也很重要,但往往是"上面三个坏时跟着坏"。也就是说,三大指标控制好,其他的通常也会好。

网格质量指标是指有限元或有限体积单元与理想形状(正三角形、正方形、正四面体、立方体等)的偏离程度用数值表示的评价标准。低质量单元混在一起会导致形状函数近似精度下降,进而引发连锁问题:

  • 局部离散化误差增大 → 应力、流速被高估或低估
  • 刚性矩阵的条件数恶化 → 迭代求解器收敛不良
  • 雅可比矩阵特异化 → 计算本身破裂(Negative Jacobian错误)
  • CFD中的数值扩散增大 → 涡结构和边界层分辨率不足

纵横比(Aspect Ratio)

🧑🎓

纵横比就是单元的"细长程度"对吧? 为什么这么重要?

🎓

简单说,"一个方向特别细长的单元"不能好好捕捉那个方向的变化。比如给汽车A柱建模,如果竖向有一排细长单元(纵横比20:1),弯曲应力分布根本算不准。

纵横比是单元的最长边与最短边(或最大尺寸与最小尺寸)的比值。

$$ \text{AR} = \frac{h_{\max}}{h_{\min}} $$
纵横比质量等级FEM结构分析CFD流体分析
1.0理想最高精度最高精度
1.0 ~ 3.0良好推荐范围推荐范围
3.0 ~ 5.0许可需注意许可(一般区域)
5.0 ~ 10.0需警惕精度劣化可能除边界层外NG
10.0以上不良必须修正除边界层NG
🧑🎓

但是CFD边界层网格,贴着墙面有薄薄的单元堆积,纵横比不是超级大吗?

🎓

好问题! 边界层网格的纵横比确实能到100以上,但那是有意的。是为了分辨墙面法线方向的急剧速度梯度。流向基本一致,所以高纵横比没问题。也就是说"沿物理方向的纵横比"是允许的。

偏斜度(Skewness)

偏斜度用0~1的范围表示单元偏离理想形状的"歪曲程度"。典型定义是等角偏斜度(equiangle skewness)。

$$ \text{Skewness} = \max\left(\frac{\theta_{\max} - \theta_e}{180° - \theta_e}, \;\frac{\theta_e - \theta_{\min}}{\theta_e}\right) $$

其中 $\theta_e$ 是理想单元的内角(三角形60°、四角形90°), $\theta_{\max}$、$\theta_{\min}$ 是该单元的最大、最小内角。

偏斜度品质实务处理
0 ~ 0.25优秀完全没问题
0.25 ~ 0.50良好一般许可范围
0.50 ~ 0.75许可局部可以(除应力集中部外)
0.75 ~ 0.90不良精度劣化。建议改善
0.90 ~ 0.95极度不良收敛不良的原因
0.95 ~ 1.0退化单元必须修正。计算破裂风险大
🧑🎓

偏斜度0.95以上,是什么样的单元?

🎓

三角形单元的话,3个顶点几乎在一条线上"扁"了。四面体就是4个顶点基本共面。这样的单元面积、体积接近零,雅可比也退化了,计算会崩溃。

🧑🎓

明白了…形状垮掉的单元根本补不了物理量。

正交性(Orthogonal Quality)

正交性评价单元面的法向量与单元中心连线的正交程度,在CFD(有限体积法)中特别关键。Ansys Fluent中用0~1范围的Orthogonal Quality表示。

$$ \text{OQ} = \min\left(\frac{\vec{A}_i \cdot \vec{f}_i}{|\vec{A}_i||\vec{f}_i|}, \;\frac{\vec{A}_i \cdot \vec{c}_i}{|\vec{A}_i||\vec{c}_i|}\right) $$

其中 $\vec{A}_i$ 是单元面的法向量, $\vec{f}_i$ 是单元中心到面中心的向量, $\vec{c}_i$ 是相邻单元中心的连线向量。

🧑🎓

我在Fluent中做网格检查,出现"Minimum Orthogonal Quality = 0.008",没事吧?

🎓

那是不行的。 Fluent检查中最小正交性<0.01的单元一定要修正。低于0.01就把计算结果的可信度算成零吧。理想的是最小值≥0.1,平均≥0.9。先找出问题单元位置,局部重新生成网格。

正交性(OQ)品质Fluent/Star-CCM+处理
0.95 ~ 1.0优秀最高精度
0.70 ~ 0.95良好一般分析无问题
0.20 ~ 0.70许可局部可以
0.10 ~ 0.20不良精度劣化。建议改善
0.01 ~ 0.10极度不良收敛不良、数值振荡原因
0.01以下不可用必须修正。计算破裂可能

雅可比行列式(Jacobian)

有限元中,物理坐标 $\mathbf{x}$ 与自然坐标 $\boldsymbol{\xi}$ 的映射用雅可比矩阵定义。

$$ J = \det\left(\frac{\partial \mathbf{x}}{\partial \boldsymbol{\xi}}\right) $$

雅可比在单元内全积分点上必须为正($J > 0$)。负雅可比表示单元"翻转了",计算输出物理上无意义。

🧑🎓

雅可比比值是什么? 一定要1.0吗?

🎓

雅可比比值是单元内最小雅可比与最大雅可比的比。理想形状各积分点相等,比值就是1.0。实务推荐≥0.3。如果出现≤0.0(负雅可比),那个网格没法用。Abaqus和Nastran检测到负雅可比会报错停止。

🧑🎓

我移动二阶单元(10节点四面体)的中间节点后出现负雅可比…

🎓

二阶单元常见问题。中间节点偏离边的中点太远,映射就非线性,单元内部雅可比会反号。曲面网格特别容易。对策是限制中间节点位置靠近边中点,或在大曲率部分细化网格。

翘曲与锥形

翘曲(Warpage)评价四边形单元(QUAD/HEX)的面非平面性,用角度表示。四顶点共面理想时为0°,扭曲越大越增加。

$$ \text{Warpage} = \max_i |\alpha_i| \quad (\alpha_i: \text{对角分割的2个三角形的法向夹角}) $$

锥形(Taper)表示四边形单元的对边长度比偏离理想(1:1)的程度。像梯形那样两端变细的单元有高锥形值。

指标理想值许可值影响
翘曲< 15°(严格: < 5°)壳单元弯曲精度下降
锥形0< 0.5应力对称性破坏
🧑🎓

翘曲什么时候成问题?

🎓

典型是用壳单元做车身面板或飞机外壳建模。四边形单元贴曲面,大曲率部分的4个节点无法共面。翘曲超15°,弯曲刚度计算精度大幅下降。办法是用三角形(TRIA,总是平面)代替QUAD,或细化网格让曲率接近平面。

数值求解方法与质量的关系

网格质量对解精度的影响

🧑🎓

网格质量坏了,计算哪里会出问题? "精度下降"太笼统…

🎓

好问题。有限元精度取决于形状函数能多精确地插值物理量。看看单元刚性矩阵计算。

$$ K_e = \int_{\Omega_e} B^T \, D \, B \, d\Omega = \sum_{g=1}^{n_g} w_g \, B^T(\xi_g) \, D \, B(\xi_g) \, |J(\xi_g)| $$

其中 $B$ 是应变-位移矩阵, $D$ 是本构矩阵, $J$ 是雅可比, $w_g$ 是积分点权重。

🎓

单元变形会分三步破坏精度。

  • 第1阶段(形状函数歪曲):纵横比大时,短边方向的梯度支配,长边方向的变化捕捉不了
  • 第2阶段(数值积分误差):偏斜度大时,高斯积分点位置不最优,积分精度下降
  • 第3阶段(条件数恶化):质量坏的单元破坏刚性矩阵的条件数,迭代求解器收敛变慢(最坏不收敛)
🧑🎓

CFD也一样吗?

🎓

CFD(有限体积法)更严重。正交性低的单元扩散通量近似需要非正交补正。补正过大无法隐式处理,反复会不稳定。Fluent"Divergence detected"出现时,通常是最小正交性≤0.05的单元在作祟。

单元类型别的质量敏感性

不同单元类型对网格质量的敏感程度不同。下表是质量劣化时的敏感性排列。

单元类型质量敏感性质量劣化时的主要问题推荐最大AR
一阶四面体(TET4)非常高剪切锁定+精度劣化同时发生3
二阶四面体(TET10)中间节点偏离 → 负雅可比5
一阶六面体(HEX8)中等翘曲 → 弯曲精度下降5
二阶六面体(HEX20)高次函数易吸收变形10
壳(QUAD4)翘曲 → 弯曲刚度误差3
多面体多面体对变形鲁棒10
🧑🎓

也就是说一阶四面体质量要求最严,多面体最宽松。Star-CCM+推多面体网格也是这个原因吧…

🎓

正是。多面体面数多,每面的非正交影响被分散。不过边界层还是得用棱柱(六面体)堆,这是基本法则。

CFD中的y+与网格质量

🧑🎓

y+也是网格质量的一种吧?

🎓

完全同意。y+是壁面第1层单元的无次元高度,是否满足乱流模型要求的质量指标。

$$ y^+ = \frac{u_\tau \cdot y}{\nu} = \frac{y}{\nu}\sqrt{\frac{\tau_w}{\rho}} $$
乱流模型需要的y+第1层高度目安
k-omega SST(壁面分解)y+ < 1数微米~数十微米
k-epsilon + 壁函数30 < y+ < 300数百微米~数mm
Spalart-Allmarasy+ < 1(推荐)数微米~数十微米
LES / DNSy+ < 1(必须)极薄第1层
🧑🎓

为了y+,第1层薄得不行,纵横比不是爆炸了吗? 怎么平衡?

🎓

边界层网格的纵横比故意高也没关系。关键是增长率(Growth Ratio)。相邻层厚度比推荐≤1.2。超1.5的话非正交性急剧恶化,反而成了正交性问题。所以y+和纵横比不矛盾,成长率和正交性才是瓶颈。

网格质量指标的实务应用

质量检查的实务流程

🧑🎓

生成网格后,质量检查按什么顺序来?

🎓

我用的实务5步质量检查流程给你。

  1. 全局统计确认 — 整体上纵横比、偏斜度、正交性的最小/最大/平均值,直方图看分布
  2. 最坏单元位置特定 — 质量最差的单元在哪,可视化。多数情况集中在形状边缘或大曲率处
  3. 与结构关键区一致性确认 — 质量坏的单元是否与应力集中或尾迹区重合。远方质量差的影响小
  4. 局部修改施行 — 只修问题单元,全体不用重新网格
  5. 修改后再检查 — 修改后别的地方质量没变坏

质量改善技术

🧑🎓

质量坏的网格怎么直啊? 具体办法教一下!

🎓

质量改善的武器这6个。从上往下试是套路。

技术对哪个指标有效具体操作
拉普拉斯平滑偏斜度、AR节点移到周围节点重心。大多工具可自动执行
边翻转偏斜度三角形的共享边互换方向来改善质量。2D/表面网格效果大
边并合AR、偏斜度短边合并消除退化单元
局部细分化全指标质量坏的区域网格变小再生成
几何修改(去特征)全指标极小倒角、倒面、孔洞除去,清除网格生成的障碍
单元类型变更全指标HEX困难区用TET或多面体代
🧑🎓

几何修改这项,网格问题不单纯是网格啊…

🎓

实务上这招最有效。CAD原本残留的0.1mm小倒角会周围生成极小单元,质量暴雷。分析不相关的微观形状去掉("去特征")就是网格质量改善的王道。

质量保证检查清单

生成后投入求解器前,下列项目全部确认。

检查项目FEM结构CFD流体基准
负雅可比单元必须必须0个
纵横比必须必须最大值在指南内
偏斜度必须必须最大 < 0.95、平均 < 0.33
正交性(OQ)推荐必须最小 > 0.01(推荐 > 0.1)
翘曲必须(壳)最大 < 15°
锥形推荐最大 < 0.5
孤立边、孤立面必须必须意图外的0个
重复节点必须必须0个(意图的除外)
y+(壁网格)必须满足乱流模型要求
增长率推荐必须相邻单元大小比 < 1.5

软件别检查方法

Ansys Mechanical / Fluent

🧑🎓

Ansys检查网格质量的方法教一下。Mechanical和Fluent不一样吗?

🎓

完全不同。分别说。

Ansys Mechanical(Workbench):

  • MeshStatisticsMesh Metric选指标(Element Quality、Aspect Ratio、Skewness、Orthogonal Quality等)
  • 出现直方图,质量分布一目了然
  • 质量阈值设定后NG单元高亮
  • Element Quality是0~1的综合指标(1为理想)。0.1以下是红信号

Ansys Fluent:

  • MeshCheck一括表示最小正交性、最大偏斜度、最小体积
  • Report Quality输出单元别质量直方图
  • 最小正交性<0.01的单元存在一定要修,之后才能跑求解器
  • MeshImprove自动平滑(Fluent网格生成器限定)

Abaqus

🧑🎓

Abaqus的网格质量检查在哪里看?

🎓

Abaqus/CAE的Mesh模块按这步骤。

  • MeshVerify Mesh打开质量检查对话
  • 检查项:Shape Factor、Aspect Ratio、Min/Max Angle、Geometric Deviation等
  • NG单元红色(Warning)或橙色(Error)高亮
  • 特别重要: Analysis ChecksElement warnings检出负雅可比
  • Python脚本可把质量数据导CSV(大模型批量检查便利)

Abaqus运行时也做质量检查,.dat文件中输出***WARNING: element XXX has bad shape。grep一批查很实用。

Nastran / Patran / HyperMesh

🧑🎓

汽车业界常用HyperMesh,质量基准和Nastran一样吗?

🎓

HyperMesh是前处理,质量基准用户自设。但汽车OEM别有各自内部基准,一定要确认相关方的基准书。一般汽车业界基准如下。

指标汽车业界一般基准HyperMesh设置位置
纵横比< 5(壳)、< 8(实体)Quality Index → Aspect
翘曲< 15°(严格: < 5°)Quality Index → Warpage
偏斜度< 60°(内角基准)Quality Index → Skew
雅可比> 0.6Quality Index → Jacobian
最小内角(TRIA)> 20°Quality Index → Min Angle
最大内角(TRIA)< 120°Quality Index → Max Angle
最小内角(QUAD)> 45°Quality Index → Min Angle
最大内角(QUAD)< 135°Quality Index → Max Angle
🧑🎓

Nastran本身有质量检查命令吗?

🎓

Nastran求解器本身运行时有质量警告。USER WARNING 5291(单元质量不良)和FATAL 2012(刚性矩阵特异)是典型。但实务上Patran、HyperMesh等前处理在投Nastran前就得保证质量。求解器警告发现太晚了。

OpenFOAM / Gmsh

🧑🎓

开源的呢? OpenFOAM有网格质量检查吗?

🎓

OpenFOAM有checkMesh工具,性能超强。

  • checkMesh:非正交性(Non-Orthogonality)、偏斜度、纵横比、最小体积、面积比一括检
  • checkMesh -allTopology -allGeometry:更详细的几何检查
  • 非正交性70°以上单元标***。65°以上推荐加非正交补正次数(nNonOrthogonalCorrectors
  • Gmsh中ToolsStatistics看伽玛值(0-1,1为理想)和Eta值
🧑🎓

nNonOrthogonalCorrectors什么意思? 加大就能用坏网格算吗?

🎓

这是扩散项的非正交补正迭代次数。默认0,非正交性高(40°以上)网格设1~3。但用补正来掩盖坏网格是有限的。非正交80°以上补多少次也发散。改进网格本身才是正途。

网格质量指标的先进研究

自适应网格与自动质量改善

🧑🎓

有自动检查和改善网格质量的技术吗? 每次手工修很累…

🎓

最新求解器质量改善功能充实了。

  • AMR(自适应网格细分):根据解误差估计自动细分、粗化网格。不达质量基准的单元自动重分
  • Ansys Fluent Mosaic Mesh:自动选多面体、六面体、四面体的混合网格。质量最优化自动进行
  • Star-CCM+ Automated Mesh Pipeline:表面修复 → 体积网格 → 质量检查 → 自动改善全流程一键执行
  • 等几何分析(IGA):CAD的NURBS基函数直接用分析。不需生成网格,网格质量问题根绝(研究阶段)

机器学习网格质量预测

🧑🎓

最近论文看到"机器学习预测网格质量",实用了吗?

🎓

研究活跃,实用化初期。注目的办法如下。

  • 图神经网络(GNN):网格作图结构,预测质量不良单元位置。网格生成参数最优化应用
  • 物理约束神经网络(PINN):网格自由法求偏微分方程。网格概念本身消失可能
  • 强化学习网格最优化:代理反复改节点位置、连接。Hex网格自动生成期待

但现状传统网格质量检查+手工修改还是主流。理论掌握依然最重要。

网格质量指标故障处理

网格质量引起的收敛失败

🧑🎓

计算不收敛,怎么判断是网格质量的问题?

🎓

网格质量起因的收敛失败有典型模式。判别法总结如下。

症状网格质量原因可能判别法对策
残差在特定值卡住残差大的单元/单元位置特定 → 是否与质量不良重合该区域重新网格
残差发散(持续增加)非常高发散开始直前的残差分布 → 局部发散位置特定负雅可比/最低质量单元修正
计算直后报错退出确定错误信息含"Negative volume"或"Negative Jacobian"问题单元删除再网格
收敛但结果非物理中等质量不良区域与异常值位置一致?网格改善后再算,对比
并算特定rank慢低~中该rank区域有质量不良集中?区域分割改善或网格改善
🧑🎓

先"哪里问题"特定、再看"质量坏的地方"一致,这样就能判断吗。

🎓

正是。调试铁则是"一次改一个,再跑"。网格修、边界改、求解器设也改…一下改多个,啥起效都不知。

求解器别错误信息与对策

🧑🎓

实际错误出现时,信息里看出网格质量问题吗? 教一下!

🎓

主要求解器的网格质量关连错误总结。壁貼价値。

Abaqus:

  • ***WARNING: element XXX is distorted. Either the isoparametric or the Jacobian... → 雅可比不良。中间节点位置修或改一阶单元
  • ***ERROR: Excessive distortion at a total of N integration points → 大变形单元潰。网格细化或用ALE自适应网格
  • ***WARNING: THE SYSTEM MATRIX HAS N NEGATIVE EIGENVALUES → 座屈不安定可能、质量不良单元原因

Nastran:

  • USER WARNING 5291: ELEMENT XXX HAS A BAD QUALITY → 单元质量Nastran内部基准下回。前处理网格修正
  • FATAL 2012: SINGULAR STIFFNESS MATRIX → 拘束不足主原因、退化单元(面積零)原因的場合
  • SYSTEM FATAL 3008: INSUFFICIENT MEMORY → 直接不足、不要细原因

Ansys Fluent:

  • Negative cell volume detected → 負的体積。网格再生成必要
  • Divergence detected in AMG solver → 网格質量(特正交性)原因可能性大。Mesh → Check最小正交性确認
  • Reversed flow in N faces → 直接的网格質量的問題、出口近傍粗発生

OpenFOAM:

  • #0 Foam::error::printStack in sigFpe → 浮動小数点例外。非直交性的高中的拡散項计算原因的場合多
  • Maximum number of iterations exceeded → 反復不収束。checkMeshMax non-orthogonality70°以上nNonOrthogonalCorrectors1~3設定
🧑🎓

助! 今「全部直」対策的、原因絞込的大。

🎓

网格质量是"見所分析精度支配基盤"。地味、疎必痛目見。逆言、网格質量確実管理、CAE的8割的問題未然防。

相关模拟器

用这个领域的交互模拟器体会理论

模拟器清单

相关领域

结构分析流体分析热分析
这篇文章的评价
谢谢回答!
对我有
帮助
想要
更详
报告
错误
对我有帮助
0
想要更详
0
报告错误
0
由 NovaSolver 贡献者编写
匿名工程师与AI — 网站地图
查看简历