ASME V&V规范 — 计算仿真的验证·有效性确认

分类: 行业动向 > 标准规范 | 统合版 2026-04-11
ASME V&V verification and validation framework diagram for computational simulation
ASME V&V规范定义的Verification & Validation框架

V&V的基本概念

Verification与Validation的区别

🧑‍🎓

V&V是Verification and Validation的简称对吧?ASME规范里写了什么?


🎓

是的,V&V是计算仿真\"品质保证\"的根基,但这两个过程实际上完全不同。


  • Verification(验证) —「是否在正确求解方程?」
  • Validation(有效性确认) —「是否在求解正确的方程?」

用著名的表述来说,Verification是\"solving the equations right\",Validation是\"solving the right equations\"。


🧑‍🎓

所以Verification就是bug检查?


🎓

包括bug检查,但范围更广。Verification分为两个部分:


  1. Code Verification(代码验证) — 检查求解器源代码是否有bug,数学算法是否被正确实现。通过与解析严密解(Method of Manufactured Solutions等)对比来确认
  2. Solution Verification(解的验证) — 检查特定问题的数值解是否充分收敛。定量评估网格密度·时间步长·迭代收敛的影响

例如,使用Abaqus进行结构分析时,检查Abaqus代码本身是否正确是Code Verification,确认你创建的模型网格是否足够细是Solution Verification。


🧑‍🎓

那Validation呢?


🎓

Validation是\"计算模型是否能正确再现现实\"的流程,通过与实验数据对比来确认。例如:


  • 碰撞仿真的变形量是否与实车试验相符
  • CFD预测的压力损失是否与风洞试验计测值一致
  • 结构分析的固有振动数是否与锤击试验结果一致

这里的关键是,Validation之前必须完成Verification。数值误差大的解与实验对比毫无意义。


V&V的层级结构

🧑‍🎓

V&V做一次就完成了吗?


🎓

不是,V&V有分层结构。ASME V&V 10定义了以下4个阶段:


  1. Code Verification — 求解器代码的数学准确性
  2. Solution Verification — 单个问题的数值误差评估
  3. Model Validation — 与实验数据对比的有效性确认
  4. Predictive Capability Assessment — 对无实验数据条件的预测信心度评估

层级越往下越难。最后的\"预测能力评估\"是判断对未经测试条件的仿真结果能信任到什么程度,需要不确定性定量化(UQ: Uncertainty Quantification)。


ASME V&V规范体系全景

V&V 10 — 计算固体力学的V&V

🧑‍🎓

ASME V&V规范有多少种?


🎓

主要有3种:


规范编号 适用领域 初版 / 修订
V&V 10 计算固体力学(Computational Solid Mechanics) 2006 / 2019修订
V&V 20 CFD·热传导(Fluid Dynamics & Heat Transfer) 2009
V&V 40 医疗器械的Computational Modeling 2018

🧑‍🎓

V&V 10是最基础的吗?


🎓

是的。V&V 10-2006是计算力学领域首次系统化V&V流程的标准规范。2019年修订版(V&V 10-2019)更加强调不确定性定量化(UQ),增强了概率论方法。主要内容包括:


  • V&V的定义与术语统一
  • Code Verification手法(MMS: Method of Manufactured Solutions)
  • Solution Verification手法(Richardson外推、GCI)
  • Validation实验的计划与要求
  • Validation Metrics的定义
  • 不确定性分类(aleatory / epistemic)与传播方法

V&V 20 — CFD·热传导的V&V

🧑‍🎓

V&V 20是CFD版本对吧?与结构分析有什么不同?


🎓

V&V 20-2009针对CFD和热传导。与结构分析相比,CFD有以下难点:


  • 湍流模型的选择 — RANS、LES、DNS结果差异很大。模型形式误差(model form error)占主导
  • 非线性性 — Navier-Stokes方程本质上非线性,网格收敛比结构分析更缓慢
  • 数值扩散 — 对流项的离散化方案对结果影响很大

V&V 20最大的贡献是提出了分离数值误差与物理模型误差的方法论。将Validation比较误差 $E$ 分解为:


$$ E = S - D $$

其中 $S$ 是计算值,$D$ 是实验值。这个 $E$ 中的误差可以分类为:

$$ u_{\text{val}}^2 = u_{\text{num}}^2 + u_{\text{input}}^2 + u_{\text{exp}}^2 $$

$u_{\text{num}}$ 是数值误差,$u_{\text{input}}$ 是输入参数不确定性,$u_{\text{exp}}$ 是实验不确定性。


🧑‍🎓

实验也有不确定性啊。不是只有计算的问题。


🎓

完全正确。传感器精度、试样偏差、环境条件波动——这些都需要定量化。现实中很多\"计算与实验不符\"的报告,其实是忽视了实验侧的不确定性。


Verification — 代码与解的验证

Code Verification

🧑‍🎓

Code Verification的具体做法是什么?商用求解器也需要吗?


🎓

Code Verification的标准方法是MMS(Method of Manufactured Solutions)。步骤是这样的:


  1. \"制造\"一个解析解 $u_{\text{exact}}(x,t)$(即使物理上无意义)
  2. 将该解代入控制方程,反推所需的源项 $f(x,t)$
  3. 将源项输入求解器进行计算,测量与 $u_{\text{exact}}$ 的误差
  4. 系统地细化网格,确认误差收敛次数与理论值(如2阶精度为 $O(h^2)$)是否一致

对于商用求解器,求解器开发商应该已完成Code Verification——但不一定所有功能·要素类型都验证过了。使用新要素或材料模型时要特别小心。


🧑‍🎓

所以\"制造的解\"是关键?


🎓

对。即使物理上无意义,但数学上正确的解,可以确实检测代码中的bug。实际上,著名CFD代码(FUN3D、OpenFOAM等)都通过MMS验证发现过bug。


Solution Verification

🧑‍🎓

Solution Verification就是网格收敛确认对吧?


🎓

是的,但\"网格细化结果不再变化就OK\"这种定性判断不够。ASME V&V规范要求定量的误差估计。基础是Richardson外推。用3个网格尺寸 $h_1 > h_2 > h_3$ 计算,求观察到的收敛次数 $\hat{p}$:


$$ \hat{p} = \frac{\ln\left(\frac{f_3 - f_2}{f_2 - f_1}\right)}{\ln(r)} $$

其中 $r = h_3/h_2 = h_2/h_1$(一定的细分比),$f_i$ 是各网格下的关注量。然后用这个 $\hat{p}$ 来计算GCI。


GCI(网格收敛指数)

GCI是什么

🧑‍🎓

GCI是什么?论文里经常看到。


🎓

GCI(Grid Convergence Index)是Roache在1994年提出的网格依赖性定量指标,ASME V&V 20也正式推荐。CFD和结构分析论文投稿时展示网格独立性的标准方法。


计算公式是:

$$ \text{GCI}_{\text{fine}} = \frac{F_s \cdot |\varepsilon|}{r^{\hat{p}} - 1} $$

其中:

  • $F_s$ = 安全系数(3网格时为1.25,2网格时为3.0)
  • $\varepsilon = (f_2 - f_1) / f_1$ — 粗网格与细网格的相对误差
  • $r$ = 网格细分比(通常1.3~2.0)
  • $\hat{p}$ = 观察到的收敛次数

🧑‍🎓

比如GCI = 2%是什么意思?


🎓

\"当前使用的网格的解,相对于理论的无穷细网格的解,在95%置信区间内精度约为2%\"的意思。GCI越小,网格独立性越高。


实务中的参考值:

  • GCI < 1% — 网格充分收敛(学术论文水平)
  • GCI 1~5% — 工程上多可接受
  • GCI > 5% — 应进一步细化网格

渐近一致性确认

🧑‍🎓

只计算GCI就可以了?


🎓

还要再确认一点。用3个网格时,要检查\"渐近一致比(Asymptotic Range)\":


$$ \frac{\text{GCI}_{23}}{r^{\hat{p}} \cdot \text{GCI}_{12}} \approx 1 $$

这个值接近1说明解已进入渐近范围,Richardson外推可信。偏离1太远可能说明网格还太粗,或有奇点等问题。


Validation — 有效性确认

Validation实验的要求

🧑‍🎓

Validation用的实验与普通实验有区别吗?


🎓

大不一样。ASME V&V 10对Validation实验提出以下要求:


  • 边界条件完整计测 — 仿真用到的所有边界条件(温度、位移、荷载、流速等)都要实测
  • 初始条件记录 — 残余应力、初始温度分布等也需要
  • 计测不确定性定量化 — 传感器精度、重复精度、空间分辨率等都要明确
  • 与仿真的独立性 — 看到实验结果后调整模型参数(\"调参\")是禁止的

最后一点最难。\"调到与实验一致\"不是Validation,那叫Calibration(标定)。


Validation Metrics

🧑‍🎓

\"计算与实验吻合\"怎样定量判断?


🎓

用Validation Metrics。代表性的有:


  1. 相对误差: $E_{\text{rel}} = |S - D| / D$ — 最简单但在 $D \approx 0$ 处发散
  2. Validation Metric (Oberkampf & Barone): 考虑概率分布的积分型指标
  3. Area Validation Metric: 响应曲线(时间历程、分布)的面积差异标准化指标
$$ V = 1 - \frac{1}{D_{\text{range}}} \int_{\Omega} \left| S(x) - D(x) \right| \, dx $$

$V = 1$ 完全吻合,$V = 0$ 完全不一致。实务上通常 $V > 0.9$ 认为吻合良好。


🧑‍🎓

只比一个点的值不行,要比整个分布。


🎓

对。只有峰值应力吻合,但应力分布完全不同的话,模型不能算妥当。V&V 10推荐选择多个SRQ(System Response Quantities)来全面检证。


实务应用

监管产业的V&V要求

🧑‍🎓

所有行业都必须做V&V吗?


🎓

法律上强制的是\"监管产业\":


  • 核能 — 美国NRC(核管会)要求提交仿真结果时附上V&V报告。10 CFR 50中有V&V流程的规定
  • 航空航天 — FAA(美国联邦航空局)的Advisory Circular AC 25.571中有FEM损伤容限分析的V&V指南
  • 医疗器械 — FDA(食品药品监督部)推荐以ASME V&V 40为基础的Computational Modeling信心实证

汽车、工程机械等没有法律义务,但为了避免产品诉讼或内部品质标准,越来越多企业采用。


V&V报告的写法

🧑‍🎓

V&V报告要写什么?有实务用的模板吗?


🎓

基于ASME V&V 10的报告必填项目是:


  1. 概念模型 — 物理现象的抽象化、假设(线性/非线性、2D/3D、定常/非定常)
  2. 数学模型 — 控制方程、本构关系、边界条件
  3. 计算模型 — 网格规格、要素类型、求解器设定、收敛准则
  4. Code Verification结果 — 使用过的benchmark、收敛次数
  5. Solution Verification结果 — GCI值、网格收敛曲线
  6. Validation结果 — 与实验对比、Validation Metrics值
  7. 不确定性定量化 — 输入参数的不确定性、传播结果
  8. 适用范围明示 — 本模型的妥当性成立条件范围

特别是第8项,必须明确指出\"本模型仅在200℃以下、应变率1000/s以下经过有效性验证\"这样的限制条件。


实务检查清单

先进动向与V&V 40

V&V 40 — 医疗器械的计算建模

🧑‍🎓

V&V 40是医疗器械专用对吧?为什么医疗器械单独有规范?


🎓

因为涉及人命。V&V 40-2018的最大特点是\"CREDIBILITY(可信性)框架\"。模型的可信性从4个因素评估:


  • Verification — 代码·解的验证
  • Validation — 与实验对比
  • Applicability — 使用条件是否在Validation范围内
  • Context of Use — 对决策的影响(风险基础)

重点是\"Context of Use\"。用来预测人工关节耐久性(影响上市批准)的模型需要高可信性,但用于产品设计初期筛选的模型可以接受较低可信性。


🧑‍🎓

风险大小决定V&V严格程度?


🎓

完全正确。V&V 40用风险矩阵,基于模型影响度(Model Influence)与决策重大性(Decision Consequence)两轴来决定V&V要求级别。FDA也正式支持这种方法,2023年发布了关于Computational Modeling的指南。


🧑‍🎓

近来UQ(Uncertainty Quantification)特别受关注。


🎓

UQ是V&V的\"下一个前沿\"。最新动向包括:


  • 贝叶斯估计的Model Calibration — 用MCMC或代理模型(GPR、PCE)进行参数同定
  • Epistemic UQ — 当数据不足时,用Dempster-Shafer理论或P-box(概率盒)表达\"知识不确定性\"
  • Digital Twin联动 — 实时传感器数据对模型进行逐次更新的自适应V&V
  • 机器学习与V&V — 将V&V概念应用于ML模型预测的动向(AIAA-2023论文等)

V&V常见误区

误区1: 本意是Validation结果变成了Calibration

🧑‍🎓

V&V中容易失败的模式有吗?


🎓

最常见的失败是\"本意是Validation结果却变成了Calibration\"。持续调整材料常数或边界条件直到与实验吻合——这是Calibration,不是Validation。


正确的流程是:

  1. 用Calibration实验数据来同定参数
  2. 不同的Validation实验数据(未用于Calibration的)来验证模型妥当性

用于Calibration的数据来验证Validation,就像看了试题后学习再得100分一样。


误区2: 网格收敛确认被省略

🧑‍🎓

\"计算成本高所以跳过网格收敛确认\",实务上这种情况很常见吧。


🎓

跳过网格收敛确认的Validation是沙上之塔。\"计算与实验吻合!\"也许只是网格粗糙的误差与物理模型误差相互抵消了。


如果计算成本困难:

  • 局部GCI — 只在关键区域做收敛确认
  • p法推估 — 提高要素次数而不增加网格数来做收敛确认
  • 自适应网格细分(AMR) — 让求解器自动在需要的地方细分

误区3: 关注量只有一个

🧑‍🎓

峰值应力只要吻合就可以了?


🎓

不行。V&V 10推荐用多个SRQ(System Response Quantities)进行验证。例如结构分析:


  • 最大应力(值与位置两者)
  • 位移分布
  • 固有振动数(多个模式)
  • 接触反力(接触问题时)

峰值应力吻合但位移场完全不同,说明模型物理妥当性低。\"碰巧吻合\"与\"本质正确\"的区分需要多个SRQ的交叉验证。


🧑‍🎓

V&V的全体框架明白了。先通过Verification确保数值正确性,再通过Validation确保物理正确性。两者都要定量地做。


🎓

理解完美。\"仿真结果正确吗?\"——这个根本问题的回答,ASME V&V规范给出了现阶段最好的体系。实务虽然完美V&V很难,但尽量按体系来做的话,仿真结果的可信性会大幅提升。


CAE技术日新月异。— Project NovaSolver致力于将最新研究成果桥接到实务。

ASME V&V规范实务中的课题请告诉我们

Project NovaSolver面对CAE工程师日常遇到的课题——设置的复杂性、计算成本、结果解释——致力于解决。你的实务经验成为更好工具开发的原动力。

咨询(准备中)
本文的评价
感谢您的回答!
有参考
价值
想要
更详细
报告
错误
有参考价值
0
想要更详细
0
报告错误
0
由 NovaSolver Contributors 撰写
匿名工程师 & AI — 网站地图
查看个人资料