Files
admin 792daa6feb 初始化项目:规划文档 + FFU 洁净室流场实时仿真 Demo
- 规划文档 01-07:愿景 / 架构 / 路线图 / 数据与AI / 风险 / 参考 / FFU Demo
- 演示图:系统架构、数据流水线、里程碑路线图(SVG + PNG)
- FFU Demo:D2Q9 LBM 高保真(360x270, 76s)+ 粗网格快速代理(120x90, 7.3s, 16-27x 加速)
- 趋势验证:速度 r=0.95 / 粒子 r=0.83 / 温度 r=0.68
- 工具链:仿真脚本、快速代理、图表生成器、SVG->PNG 转换
2026-09-18 00:05:18 +08:00

106 lines
4.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 04 · 数据方案与 AI 模型
## 1. 数据工厂(Fluent → 数据集)
### 1.1 自动化链路
```
参数配置(YAML) → PyFluent 会话 → 几何/网格生成 → 求解设置 → 求解 → 场量导出(VTK/HDF5)
```
**关键工程点**
| 问题 | 方案 |
| --- | --- |
| 长时间批量运行 | 调度器 + 断点续跑 + 失败重试 + 日志追踪 |
| 网格不一致 | 参数化网格模板,统一拓扑或统一目标分辨率 |
| 收敛判据 | 残差 + 监测量(Cd/Cl/压降)双判据 |
| 异常剔除 | 收敛性、网格质量、物理合理性三重检查 |
| 存储 | HDF5 分块压缩(训练)+ VTK(可视化)双写 |
### 1.2 数据集设计
| 数据集 | 内容 | 规模(首期) | 用途 |
| --- | --- | --- | --- |
| D1 稳态 2D | 圆柱绕流,Re ∈ [50, 300] | ≥ 500 工况 | 场回归基线 |
| D2 瞬态 2D | 同上,20 组时间序列 | 20 × 500 帧 | 时间推进 |
| D3 稳态 3D | NACA 翼型族,Ma/攻角扫描 | ≥ 300 工况 | 3D 泛化 |
| D4 稳态 3D | Ahmed body 简化车体 | ≥ 100 工况 | 工业场景 |
| D5 FFU 洁净室 | 送风/回风/热源/尘源参数 | ≥ 200 工况 | 数字孪生 Demo |
**样本结构(HDF5)**
```
/sample_0001
├── inputs/ # Re, 攻角, 几何参数, 边界条件 (标量 + 小数组)
├── coords/ # 网格坐标 (N, 2/3)
├── fields/ # U(N,3), p(N), k(N), omega(N) ...
└── meta/ # 工况 ID, 求解器设置, 收敛残差
```
### 1.3 数据工程规范
- **无量纲化**:以特征长度/来流速度归一化,降低分布漂移;
- **场归一化**:逐通道 z-score 或 min-max,统计量随模型一起版本化;
- **增广**:旋转、镜像、缩放(仅限物理对称场景);
- **划分**:按参数区间外推划分(OOD 测试集),而非随机划分。
## 2. 模型选型
### 2.1 主力:FNO(傅里叶神经算子)
- **原理**:在频域做谱卷积,学习函数空间之间的映射,分辨率无关;
- **输入**:参数 + 坐标网格(或隐式网格);
- **输出**:场量(U, p, ...);
- **优势**:训练稳定、推理快、对规则网格精度高;
- **局限**:非结构网格需插值,复杂几何边界处理弱。
### 2.2 备选与补充
| 模型 | 何时用 | 关键点 |
| --- | --- | --- |
| DeepONet | FNO 精度不足时并行验证 | 分支/主干网络,适合低维参数 |
| PINN | 数据稀缺、反问题 | NS 残差直接进损失,训练慢 |
| MeshGraphNet | 复杂几何、非结构网格 | 图消息传递,几何泛化好 |
| Latent Dynamics | 长时推演加速 | 自编码器 + 潜空间时间推进 |
| Transformer 算子 | 大尺度长程依赖 | 数据需求大,探索性 |
### 2.3 物理约束(贯穿所有模型)
| 约束 | 形式 | 作用 |
| --- | --- | --- |
| 连续性 | ‖∇·u‖² 惩罚 | 抑制散度漂移 |
| 动量残差 | ‖∂u/∂t + (u·∇)u + ∇p/ρ - ν∇²u‖² | 物理一致性 |
| 边界条件 | 壁面/入口/出口损失项 | 边界精度 |
| 守恒校正 | 投影法后处理 | 硬约束兜底 |
| 频谱监督 | 涡量谱 / 能谱匹配 | 湍流结构保真 |
## 3. 训练策略
- **两阶段**:先纯数据预训练 → 再物理约束微调;
- **课程学习**:先稳态后瞬态,先低 Re 后高 Re;
- **长时推演**:教师强制 → 逐步放开自回归,配合 scheduled sampling;
- **分布式**:AMP + DDP,大模型用 FSDP + 梯度检查点;
- **实验管理**:Hydra 配置 + MLflow 指标追踪,全配置可复现。
## 4. 评估体系
| 维度 | 指标 | 目标 |
| --- | --- | --- |
| 场精度 | 相对 L2 误差(U, p) | < 5%(2D)/ < 8%(3D) |
| 结构精度 | 涡量谱、湍动能分布 | 谱斜率误差 < 10% |
| 积分量 | Cd / Cl / 压降 | 误差 < 5% |
| 稳定性 | 1000 步 rollout 发散率 | 0 发散 |
| 泛化 | OOD 参数区间误差退化 | < 2 倍 |
| 效率 | 单步延迟 / 加速比 | < 10 ms / > 1000x |
| 可信度 | 不确定性校准误差 | ECE < 0.1 |
## 5. 快速代理基线(已落地)
仓库内 `tools/ffu_surrogate.py` 提供了一条**不依赖训练**的快速代理基线:
- **方法**:1/3 分辨率网格上运行同一套 D2Q9 LBM,准稳态后双线性重建到全分辨率;
- **性能**:端到端 < 8 s(精细真值 76 s,加速 16-27x);
- **精度**:与精细解全场相关系数 速度 r=0.95 / 粒子 r=0.83 / 温度 r=0.68;
- **意义**:在 AI 模型成熟前先打通"快速出图 + 趋势验证"链路,同时作为 AI 模型的对照基线。