3. 验证与确认的基本概念

在CFD工程实践中,一个常见的误区是把“算得收敛”等同于“算得正确”。残差下降、监控点稳定,只说明数值迭代趋于稳定,并不保证所求解的物理问题、边界条件与真实工况一致。为系统回答“结果是否可信”,V&V(Verification and Validation)体系把可信度拆成两个必须分别回答的问题:Verification(验证)回答“方程解得对不对”,Validation(确认)回答“方程建得对不对”。二者顺序不可颠倒,也不能互相替代。

一、Verification与Validation的区别

Verification关注的是数值解与数学模型之间的一致性,即代码是否忠实实现了离散方程、离散方程的解是否足够接近其精确解。它又可细分为代码验证(Code Verification)与解验证(Solution Verification)。代码验证检查软件实现是否无缺陷,常用制造解方法(MMS)或与解析解对比;解验证则针对具体算例估计离散误差,核心手段是网格收敛性研究(如Richardson外推、GCI指数)。

Validation关注的是数学模型与真实物理之间的一致性,即控制方程、本构关系、边界条件、物性参数是否足以描述目标现象。它必须依赖实验数据,通过比较仿真量与实验量来评估模型误差,并给出不确定度区间。若实验本身不确定度大于模型误差,则确认结论不成立。

两者的关键差异可归纳为:Verification的参照物是“数学精确解”,Validation的参照物是“物理实测值”;Verification的误差来源是离散与迭代,Validation的误差来源是建模假设与输入参数。工程上常说的“先验证后确认”,正是要求先排除数值误差,再讨论物理误差,否则确认结论会被数值误差污染。

V&V 双通道:数值误差与模型误差的分工 Verification 验证 问题:方程解得对不对? 代码验证 Code Verification MMS制造解 / 解析解对比 / 量纲检查 解验证 Solution Verification 网格收敛 / Richardson外推 / GCI 参照物:数学精确解 误差源:离散误差 + 迭代误差 输出:数值不确定度 U_num Validation 确认 问题:方程建得对不对? 模型确认 Model Validation 实验对比 / 参数标定 / 适用域界定 不确定度量化 UQ 实验不确定度 + 输入参数不确定度 参照物:物理实测值 误差源:建模假设 + 输入参数 输出:模型不确定度 U_model 先 后 总可信度:U_total² ≈ U_num² + U_model² + U_input²

二、预测能力成熟度

V&V不是一次性动作,而是一个随证据积累逐级提升的过程。预测能力成熟度(Predictive Capability Maturity)描述的是:在给定应用场景下,我们对模型预测结果有多大把握。它通常从低到高分为若干等级,典型划分如下。

等级状态描述典型证据
M1 概念级仅完成建模,未做系统验证网格无关性未做,无实验对比
M2 部分验证代码验证通过,解验证初步完成MMS通过,GCI已估计
M3 单元确认针对单一物理现象完成确认与基准实验对比,误差在U内
M4 系统确认多物理耦合、多工况确认覆盖适用域,UQ完整
M5 预测可信外推至未测工况仍可信有外推验证与持续监测

成熟度提升的关键不是“多算几个算例”,而是每一级都要有可追溯的证据链:输入参数来源、网格与时间步设置、实验数据不确定度、对比指标与判定阈值。工程评审中,若无法说明当前处于哪一级,预测结论就难以被采信。

三、ASME V&V 20与AIAA指南的核心要求

ASME V&V 20(2009)针对CFD与传热计算,给出了确认的定量框架。其核心是:确认误差 E = S − D,其中 S 为仿真值,D 为实验值;比较 E 与确认不确定度 U_val。U_val 由数值不确定度 U_num、输入参数不确定度 U_input、实验不确定度 U_D 合成。若 |E| ≤ U_val,则模型在给定工况下被确认;否则需分析误差来源或缩小适用域。

AIAA(1998,后经更新)的指南更强调流程与文档,核心要求包括:明确代码验证与解验证的区分;要求网格收敛指数GCI报告;要求实验数据具备不确定度;要求确认层级从单元到系统逐级推进;并要求记录所有假设与限制。两份文件共同强调:没有不确定度的对比不是确认,只是“看起来像”。

示例:某管道内湍流换热算例,仿真得到出口平均温度 S = 352.4 K,实验值 D = 350.0 K,实验标准不确定度 U_D = 1.2 K,数值不确定度 U_num = 0.8 K,输入参数不确定度 U_input = 0.6 K。则 U_val = √(0.8² + 0.6² + 1.2²) ≈ 1.56 K,确认误差 E = 2.4 K。因 |E| > U_val,该工况下模型未被确认,需检查湍流模型或入口边界。此数据为教学示例,非实测结果。

实操建议:做确认前先固定网格与时间步,完成GCI估计;实验数据必须给出不确定度与测点位置;对比量应选择对物理最敏感、实验最可靠的积分量或局部量,避免只对比“好看”的云图。

常见错误:用同一套网格既做解验证又做确认;把实验值当作“真值”而不计其不确定度;只报告误差百分比而不报告U_val;在未做代码验证的情况下直接做确认。这些都会导致可信度结论虚高。

综上,Verification与Validation是两条独立但必须串联的证据链:前者保证数值解可信,后者保证物理模型可信。预测能力成熟度是对这条证据链积累程度的度量,而ASME V&V 20与AIAA指南则提供了可操作的定量判定与文档要求。只有把U_num、U_input、U_D都显式量化,确认结论才具备工程意义。