仿真可信度:怎样避免得到“彩色但错误”的结果 / Simulation Verification and Validation for Credible Results
📅 创建时间:2026-07-20 🏷️ 标签:#验证 #确认 #网格收敛 #结果校核 📚 前置知识:[[14-cpu-gpu-mpi-architecture]]
1. 三类错误
使用错误
单位、边界、材料、坐标或载荷设置错误。
数值错误
网格、时间步、迭代容差和离散格式造成误差。
模型错误
物理假设不能代表真实问题,例如忽略重要非线性或流固作用。
并行计算只能更快地完成数值过程,不能自动消除这三类错误。
2. 基本量纲和数量级检查
在查看云图前先估算:
- 船体排水体积与浮力数量级
- 动压
0.5ρU² - 梁弯曲位移和应力数量级
- 固有频率大致范围
- 总压力积分和总力
结果相差几个数量级通常首先检查单位。
3. 守恒和平衡
CFD
- 入口与出口质量流量
- 连续性误差
- 力积分方向
- 动量变化和外力是否合理
FEA
- 支撑反力总和是否平衡外载荷
- 力矩是否平衡
- 自由体是否存在非预期刚体运动
- 能量是否异常
4. 网格收敛
选择关键目标量,而不是只比较图片:
MarineFlow
- 总阻力
- 推力和扭矩
- 波高
- 压力系数
- 空化体积
SAM
- 代表点位移
- 截面应力
- 反力
- 固有频率
- 屈曲因子
粗、中、细网格结果应逐渐趋于稳定。
5. 时间步收敛
瞬态结果需要比较:
- 时间平均值
- 振幅
- 相位
- 主频
- 峰值
只比较某一个瞬间的云图容易受到相位差影响。
6. 残差与工程量
残差小表示离散方程得到较好满足,不代表:
- 网格足够细
- 湍流模型正确
- 边界条件真实
- 结构材料参数准确
应同时监控目标工程量。
7. 与解析解对比
复杂模型之前先验证简单问题:
- 层流管流
- 平板边界层
- 方腔流
- 悬臂梁
- 简支梁
- 单自由度振动
- 平板特征频率
解析解可以隔离软件流程和基础算法错误。
8. 与其他软件对比
SAM 手册特别说明了与 Nastran、Abaqus 对比时需要统一:
- 壳顶面/底面
- 积分点或节点结果
- 应力外推
- 节点平均
- 局部/全局坐标系
- 单位和单元类型
两个云图颜色相似不代表数值一致。
9. 并行一致性
串行和并行结果可能出现微小差异,因为浮点加法顺序变化:
text
(a+b)+c 与 a+(b+c) 在浮点中可能不同应建立容差比较,而不是要求所有二进制位完全相同。
如果差异随进程数显著扩大,需要检查:
- 并行边界交换
- 归约顺序
- 未初始化数据
- 竞态条件
- 分区相关算法
10. 试验和真实数据
流体
- 拖曳水池阻力
- 螺旋桨敞水试验
- 波高和压力测量
- 空化水筒观察
结构
- 静载试验
- 应变片
- 模态敲击试验
- 振动传感器
- 极限承载试验
试验本身也有测量误差和边界差异,需要进行不确定性分析。
11. 结果报告应包含
text
工程问题和目标
物理假设
几何简化
材料和流体参数来源
边界条件
网格与质量指标
求解器和收敛标准
并行环境
网格/时间步敏感性
验证数据
关键结果
不确定性和适用范围下一篇:[[16-integrated-cases]]