← 返回 2026-05-14

AI CFD 科学家:基于物理感知智能体的开放式计算流体力学发现 AI CFD Scientist: Toward Open-Ended Computational Fluid Dynamics Discovery with Physics-Aware AI Agents

Nithin Somasekharan, Rabi Pathak, Manushri Dhanakoti, Tingwen Zhang, Ling Yue, Andy Zhu, Shaowu Pan 📅 2026-05-12 👍 2 2026-07-13 08:36
AI Scientist CFD OpenFOAM 大语言模型智能体 湍流模型发现 自动化科学发现 视觉-语言物理校验 计算流体力学

首个CFD AI科学家: VLM物理校验+源码修改, SA修正降Cf RMSE 7.89%

前置知识

雷诺平均Navier-Stokes方程与湍流闭合模型

RANS将Navier-Stokes方程按统计平均得到 $\overline{u_i u_j} = \frac{2}{3}k\delta_{ij} - \nu_t \left(\frac{\partial \overline{u}_i}{\partial x_j} + \frac{\partial \overline{u}_j}{\partial x_i}\right)$,但湍流黏性 $\nu_t$ 必须由闭合模型给出。常见的工程闭合包括标准 $k\text{-}\varepsilon$、可实现 $k\text{-}\varepsilon$、$k\text{-}\omega$ SST 以及本文反复用到的Spalart–Allmaras (SA) 一方程模型。这些模型的选择与系数直接影响壁面摩擦 $C_f$、分离、再附着长度等物理量,是CFD科研最核心的研究对象之一。

本文的核心任务 T1–T5 全都围绕湍流闭合模型展开比较、修改与发现,不理解 RANS 与 SA 这类模型就无法理解为什么 '代码修改' 是合法且有意义的科研变量。

网格无关性验证 (Mesh-Independence)

网格无关性是 CFD 的基础收敛门:将同一物理问题在粗网格与细网格上各跑一次,比较关心的物理量(如 $C_f$, $C_p$, 速度场 $|U|$)的相对差异。当差异低于阈值(本文取 5%)才认为数值收敛。本文的做法是保持拓扑与边界条件一致,仅对近壁面局部细化 $\sim 10\%$、整体区域细化 $\sim 5\%$,避免一次整体重新划分网格带来的拓扑差异。

这是本文提出的五大设计原则之一 P3,也是与 ARIS、DeepScientist 等通用 AI 科学家框架相比最关键的差异化能力——后者不做网格无关性就直接宣称结论。

LLM 智能体编排与工具调用

现代基于 LLM 的智能体框架(如 LangGraph / ReAct)把研究任务拆解为多个子智能体,每个智能体可以调用外部工具(Semantic Scholar 搜索、Python 脚本、编译器、仿真器),并通过结构化 JSON 在智能体之间传递 artifact(研究计划、需求段落、源代码、运行目录、图表清单)。这种 '专家撰写的 prompt + 结构化 artifact 流' 是把通用 chat 模型变成领域 AI 科学家的关键架构。

AI CFD Scientist 正是基于 LangGraph 工作流 + skills-based 模块实现五种智能体(知识检索、代码修改、实验执行、规划验证、论文写作)的协作,是理解整体架构的必备前置。

视觉-语言模型 (VLM) 用于科学图像验证

VLM(如 GPT-5.5 视觉通道、Qwen-VL)把图像与文本一起输入大模型,输出对图像内容的语言化判断。本文以两次独立的 VLM 调用实现 '质量过滤' 与 '物理正确性校验':(1) 判断渲染图像是否可读;(2) 检查流动分离、边界层、再附着等特征是否符合预期物理。这种 '图-物一致' 的检验在 CFD 等物理仿真中尤为关键——因为仿真器退出码为 0 不代表物理正确。

VLM 物理校验门是本文的标志性贡献,没有它就无法在 BFS、T5 等案例中捕获符号错误、错误后处理等 'silent failure'。

OpenFOAM 与 fvModels 运行时修补

OpenFOAM 是开源 CFD 求解器生态,求解器(如 simpleFoam、pimpleFoam)通过字典文件(constant/、system/、0/)控制边界条件、湍流模型与数值格式。'fvModels' 是 OpenFOAM 7+ 后的可扩展源项框架,允许在不重编译求解器的前提下运行时注入质量/动量/能量的源项 $S(\phi)$,通过 coded fvModel 即 C++ 字符串内联编译。本文的 T5 修正模块 quadRecTail 正是以这种 'runtime block' 形式交付,无需重编译求解器。

理解 OpenFOAM 的字典配置与 fvModels 的运行时源项机制,是把握本文 T3 自定义粘性库、T4 自定义 SA 模型、T5 coded fvModel 这三条代码修改路径如何实际生效的关键。

研究动机

基于 LLM 的 AI 科学家已经在软件级机器学习研究、化学生物学中闭环,但过去一两年把它们推广到高保真物理仿真器(如 CFD)异常困难。根本原因有三:(1) 求解器完成 ≠ 物理正确——后向台阶案例可以 '干净收敛' 却用错几何或报告错误符号的再附着长度,这种失败在求解器日志中完全不可见;(2) 物理校验门本身是科研对象而非事后步骤——网格无关性、参考数据对齐必须在声称结论之前确认,而不是事后假设;(3) 闭合模型本身就是研究变量——它存在于 C++ 源码而不是配置文件中,意味着 '修改源码' 进入了科研假设空间而不仅仅是配置切换。现有两条路线都只覆盖半个回路:通用 AI 科学家框架(AI Scientist-v2、ARIS、DeepScientist、Agent Laboratory 等)设计了文献综述、代码、绘图与写作流水线,但缺乏物理有效门,无法把 '跑得通的仿真' 升级为 '可辩护的科学论断';CFD 专属智能体(Foam-Agent、MetaOpenFOAM、OpenFOAMGPT、ChatCFD、turbulence.ai、FlamePilot 等)能够完成 case-setup、执行与部分后处理,却止步于发现回路,缺少视觉-语言物理校验门与开放性源码级发现。最接近的 turbulence.ai 仍闭源,且没有把 VLM 物理校验门、网格无关性门作为一等公民子系统暴露出来。

本文的目标是本文的具体目标是构建并开源一个面向 CFD 的端到端 AI 科学家 AI CFD Scientist,把以下子能力集成在一条可审视、可复现的工作流中:(i) 文献驱动的想法生成与新颖性过滤;(ii) 需求校验、求解器与边界条件可用性校验;(iii) OpenFOAM 端到端仿真执行;(iv) 在 case 本地编译 C++ 自定义模型库(不污染求解器源码);(v) 视觉-语言物理校验门,在结果被接受、重跑或写入论文前强制校验渲染流场;(vi) 与参考 DNS 数据对齐;(vii) 跨案例分析与 LaTeX 论文草稿生成;(viii) 开放式假说搜索——给定 DNS 参考数据,自动提出并测试 SA 模型修改以最小化 Cf RMSE。论文以 5 个具体 CFD 任务(4 个常规/代码修改 + 1 个开放式发现)评估这套闭环,并把通用 AI 科学家基线(ARIS, DeepScientist)放在共享 GPT-5.5 骨干与匹配 LLM 成本下做对比。

与已有工作不同的是,本文的独特切入角度是把 '物理有效门' 提升为系统的核心子系统,而不仅仅是一个后处理步骤。具体而言,作者将 CFD 实践提炼为五条设计原则 P1–P5:P1 物理有效不可从日志读出,必须图检;P2 源码修改是科研对象不是配置选项;P3 网格无关性是必备收敛门;P4 智能体不得为让失败案例跑通而偷换 swept variable 或放松判定;P5 论文每一个声明都必须对应一张图、一个数值或一条通过校验门的 case 解释,永远不能来自 LLM 先验。这套原则驱动的差异点是 'coded fvModels + VLM 物理校验门 + 网格无关性门 + 跨案例 LaTeX 写作回路' 四件套在单一可审视工作流中同时具备,turbulence.ai 之外的现有系统都没把这套 'CFD-specific scientific control flow' 暴露到一等的子系统层级,也没有任何框架支持开放式源码级发现(44 次迭代自主修改 SA 源代码并对照 DNS Cf 参考数据自动优化)。

核心方法

AI CFD Scientist 把 CFD 发现问题编码为一套专家撰写的 prompt、规范与执行路径,而不是一个通用聊天循环。整体思路是从一个自然语言研究主题出发,依次经过三种互补的 pathway:(1) Regular Experimentation 在固定求解器内做参数扫描;(2) Code Modification 在 {case}/customModels/ 下编译 case-local C++ 库以承载新物理模型;(3) Open-Ended Discovery 在外部假说搜索闭环中自主修改 SA 源项。直觉上,三条路径共享同一根 '能力总线'(文献检索、VLM 物理校验、网格无关性门、对比 DNS 参考数据、LaTeX 写作),区分在于 '是否修改源码' 与 '是否有外部目标函数'。架构上作者同时提供两种实现:基于 LangGraph 的 checkpointed 工作流做端到端编排;以及模块化的 skills-based 版本供其他编排器复用。两者的核心 agent 都以结构化 artifact 交换:study JSON, requirement 段落, source-edit plan, 运行目录, 图清单, interpretation JSON, 论文草稿。

核心创新点在于把 '图-物一致性校验' 与 '源码修改作为研究变量' 同时带入 AI 科学家流水线,这两点与已有方法有本质区别。第一个区别相对通用 AI 科学家:vLM physics-verification gate 接收 PyVista/matplotlib 渲染图,对其做两次调用——'质量过滤' 判断可读性,'物理校验' 判断分离、再附着、边界层等特征是否符合预期;当门拒绝时由 rerun controller 修订需求复用邻近成功 case 的松弛因子或数值格式。这种结构对通用 AI 科学家框架(ARIS、DeepScientist)完全缺失,是 AI CFD Scientist 能区分 'runnable simulation' 与 'defensible scientific claim' 的根本。第二个区别相对 CFD 专属智能体:turbulence.ai、Foam-Agent 等只到 case-setup 与执行,'修改 SA 模型 C++ 源码并编译' 没有作为一等公民子系统暴露,更没有开放式假说搜索与 DNS 对齐。具体的源码修改通过 'dependency-aware editor + compiler verifier' 双轨实现,并在迭代中以编译诊断作结构化反馈,配 smoke test 确保库可加载、场可解释。T5 中 44 次迭代自主提出的 quadRecTail 修正正是这条路线的产物。

方法步骤详情

完整方法流程可以拆解为以下几个互相串联的阶段。第一阶段文献检索与新颖性过滤(regular pathway 入口):literature-aware ideation agent 通过 Semantic Scholar 拉取相关记录,合成候选 gap 后输出结构化 study JSON,string-similarity novelty filter 拒绝近重复 idea 并触发 re-prompt。第二阶段需求规格化:specification agent 把每个实验压成 single-paragraph requirement,validator 检查求解器可用性、时间控制一致性、边界条件完整性、单位一致性,失败的走 repair prompt。第三阶段求解器执行:把通过校验的 requirement 交给 Foam-Agent 生成 case 字典、运行仿真并做低层错误纠正。第四阶段图渲染:interpreter agent 读 case 目录与 requirement 输出 diagnostic plan,visualization creator agent 写 PyVista/matplotlib 脚本渲染 PNG。第五阶段 VLM 物理校验门(实施原则 P1):对 PNG 连续做两次 VLM 调用——'quality filter' 判定可读性、'physics check' 判断流动特征是否符合预期并驱动 rerun controller 与 writer 写作。第六阶段网格无关性门(实施 P3):用 baseline + refined 网格(~10% 近壁 / ~5% bulk 细化)跑相同模型/BC/数值,比较 $|U|, p, C_f, C_p$ 等 QoI 的 percent differences,5% 阈值触发 Richardson/GCI 升级。第七阶段代码修改(Code Modification pathway):code-mod agent 生成 C++ 源码与字典编辑,编译到 {case}/customModels/libcustomModels.so;编译诊断作为结构化反馈,smoke test 验证库加载。第八阶段开放式发现(Open-Ended Discovery pathway,外层 hypothesis loop):给定 DNS 参考 $C_f(x/h)$,自主提出 'source-code edit / 系数调节 / 新诊断脚本' 三类候选,调用 code-mod + regular 路径编译并执行,用用户指定 comparator(默认 $C_f$ RMSE)打分;只有分数优于 baseline 且 VLM 门接受时 checkpoint 并晋升到下一轮。第九阶段写作回路(P4, P5 落实):analysis agent 渲染跨案例论文级配图,writer agent 拿到文献束 + study JSON + per-case requirement + source-edit 历史 + 图清单 + 分析文本后起草 LaTeX,编译后由 reviewer agent 对格式化、声明-证据对齐、参考文献覆盖、冗余度提出 critique 并修订,直至通过或预算耗尽。

技术新颖性

技术新颖性体现在以下几个层面。其一,作者把四条 'CFD-specific validity gate'——VLM 物理校验门、网格无关性门、需求校验器、rerun controller——作为一等公民子系统暴露,这是通用 AI 科学家框架没有的;turbulence.ai 之外的其他 CFD 智能体也未同时具备。其二,case-local C++ 编译流水线以 wmake + 编译诊断反馈闭环实现 '修改源码但污染求解器',并通过 smoke test 保证新源可解释,这是 Foam-Agent 等 RAG-only 系统无法提供的工程接口。其三,T5 的开放式 44-iteration discovery 证明开放式源码级 hypothesis search 可在共享 GPT-5.5 骨干上端到端运行,最终产物以 coded fvModels 块交付而非静态源码,避免了重编译。其四,planted-failure ablation 给出 VLM 门的 14/16 检测率与 4 类失败模式分类(missing_deliverable, wrong_magnitude_metric, broken_postprocessing, convergence_not_settled),这是首个针对 AI-for-CFD 物理校验门的受控消融。其五,跨框架对照(vs ARIS/DeepScientist)同时按 capability 与 TIQ/SRQ/OEI 三轴 rubric 报告,论文强调 '能力的差异不在能否编译自定义模型,三家都能做到,而在 CFD-specific control flow 是否完备'。

AI CFD Scientist 的整体架构
Figure 1: AI CFD Scientist 的整体架构

实验结果

在 5 个 GPT-5.5 任务上 AI CFD Scientist 完成端到端运行。T1 后向台阶湍流敏感度(Reh=25.4k,4 RANS closure:std. k-ε, realizable k-ε, k-ω SST, SA)在 26.9k–38.1k 网格上做 mesh-independence study,VLM 物理校验门捕获了 reattachment 提取器的符号错误并把 k-ε 输出标为 '与分离流物理不一致',SST 与 SA 拓扑最合理;系统有意 withheld 排序结论。T2 喷射/羽流 7 次 Re 扫描(Re=60–600)在 35,156 cells 一致网格上恢复中心线 Ux 缩放(0.09→0.60 m/s),case-006 被标为异常(centerline-mean collapse)。T3 自定义粘性代码修改路径生成 $\nu(\dot{\gamma}) = \nu_\infty + k \max(\dot{\gamma}, \dot{\gamma}_{\min})^{n-1}$ 并一次编译通过;6 case 跑至稳态,n=1 时与 Newtonian 解析 (1.5 m/s) 误差 <0.5%,扫描下中心线速度变化 3.8%(1.4542–1.5231 m/s)。T4 自定义 SA 修改器 +APG 修正乘子编译为 libCustomSA.so;6 case 中 APG=0 control 与 built-in SA 完全一致至四位小数(Umax=1.5959 m/s 两侧),证明 custom code path 不扰动原求解器;APG 扫描带来 ~1.25% Umax 敏感性(1.5759–1.5959 m/s),并对 6 variant 渲染 Cf overlay 对照 DNS。T5 开放式发现:44 次迭代给出 quadRecTail 修正 $$S_{extra} = \left(C_{rec}G_{rec} - C_{sink}G_{sink} + C_{src}G_{src} - C_{tail}G_{tail}\right) |\nabla U| \tilde{\nu}$$ 每个 $G_*(x, y_w) = \exp\left(-\frac{(x-x_*)^2}{2\sigma_*^2}\right)\exp(-y_w/L_{y,*})$ 是 wall-normalized Gaussian patch;最佳迭代 $C_{rec}=2.12, C_{sink}=2.25, C_{src}=1.2, C_{tail}=0.75$ 把下壁面 Cf RMSE 由 baseline SA 的 0.004297 降到 0.003958(−7.89%,周期山脊 Reh=5600,DNS 参考 = Krank et al.)。planted-failure ablation:4 类 × 4 种共 16 失败 + 4 个 control,VLM 门 14/16 检测,缺失交付、错误量纲、坏后处理三类 4/4,convergence_not_settled 仅 2/4,因为缩短 endTime 在视觉上仍然完整。跨框架对照(vs ARIS, DeepScientist,GPT-5.5 共享,T1–T4):AI CFD Scientist 在 capability 矩阵中独有 mesh-independence, VLM 物理校验, DNS 对齐与 figure-grounded LaTeX writer;TIQ/SRQ/OEI 三轴 rubric 上 AI CFD Scientist 在每个任务以 S 或 P 评级,基线多为 P/W,且 ARIS/DeepScientist 在 OEI(idea generation)轴上全部 X——意味着它们跑通仿真但无法自主生成可辩护的科学 idea。

AI CFD Scientist 与通用 AI Scientist / CFD 智能体的 capability 定位表
Table 1: AI CFD Scientist 与通用 AI Scientist / CFD 智能体的 capability 定位表
AI CFD Scientist GPT-5.5 五任务概述表
Table 2: AI CFD Scientist GPT-5.5 五任务概述表
VLM 物理校验门的 planted-failure ablation
Table 3: VLM 物理校验门的 planted-failure ablation
AI CFD Scientist 与 ARIS / DeepScientist 在 T1–T4 的能力对比(共享 GPT-5.5)
Table 4: AI CFD Scientist 与 ARIS / DeepScientist 在 T1–T4 的能力对比(共享 GPT-5.5)
T1–T4 在匹配 GPT-5.5 下的 per-task quality rubric
Table 5: T1–T4 在匹配 GPT-5.5 下的 per-task quality rubric
案例研究的代表性物理量(图 a–d)
Figure 2: 案例研究的代表性物理量(图 a–d)
T5 开放式发现 pathway 的 worked-example trace
Figure 3: T5 开放式发现 pathway 的 worked-example trace
查看结构化数据
任务指标本文基线提升
T5 开放式发现 (周期山脊, Reh=5600) 下壁面 Cf RMSE 0.003958 (quadRecFine12 / quadRecTail) 0.004297 (built-in SA) −7.89% (相对 built-in SA)
T1 BFS 湍流 sensitivity (4 RANS) VLM 门误检/漏检 捕获 reattachment 符号错误 + 拒判 k-ε 一致性 无基准(baseline 框架缺失 VLM 门) 定性优势:T1 中主动 withheld 排序以避免给出不可辩护结论
T2 喷射羽流 Re 扫描 中心线 Ux 恢复 Uc,max 由 0.09 提到 0.60 m/s(Re=60→600) ARIS / DeepScientist 无 mesh/参考对齐 AI CFD Scientist 标注 f(Re) 为 unresolved on missing metadata
T3 自定义粘性库 Newtonian limit 验证 (n=1 中心线) 误差 <0.5% vs 解析 1.5 m/s 无(Newtonian 通道解析基线) 首次编译通过即满足 Newtonian 退化
T4 自定义 SA + APG APG=0 control 与 built-in SA 一致性 Umax=1.5959 m/s(两侧完全一致至 4 位小数) built-in SA Umax=1.5959 m/s custom code path 不扰动原求解器;APG 扫描诱导 1.25% Umax 灵敏度 (1.5759–1.5959 m/s)
VLM 物理校验门 (planted-failure ablation) 16 planted failures 检测率 14/16(87.5%) 0/16(solver-level check 等价于 0) missing_deliverable, wrong_magnitude_metric, broken_postprocessing 各 4/4;convergence_not_settled 2/4
跨框架对照 (T1–T4 capability 覆盖) 独有子系统数 Mesh-independence, VLM physics gate, DNS alignment, Figure-grounded LaTeX, Conservative unresolved verdict 全部 ✓ ARIS / DeepScientist 5 项中 4 项 ✗ 在 capability 与 scientific-pipeline 完整度上明确胜出

局限与改进

作者公开承认的局限是:(i) 单一骨干——所有数字使用 GPT-5.5 (Codex) 单一 LLM,未做 LLM sweep 与额外基线对比,主因是 token 成本;(ii) 手工评估——目前不存在自动化的 CFD 论文评分 rubric,跨框架对比的 Table 5 来自专家人工读 artifact;(iii) 监督式而非无人发布——框架是 'supervised scientific assistance',不是 unattended publication;(iv) cross-geometry transfer 在 T5 的 quadRecTail 上尚未验证,只在 periodic hill Re=5600 上观察;(v) VLM 门对 convergence_not_settled 仅 2/4——缩短 endTime 的 simulation 在视觉上仍然完整,难以仅凭图检抓到。基于结果的独立观察还有:(a) 报告的 7.89% Cf RMSE 改进对应 single geometry + single Re 数,建议作者在扩展 Re 范围或更换几何(backward-facing step、asymmetric diffuser)上跑一遍泛化;(b) 论文未报告 wall-clock 与 GPU 资源,44 次迭代 + mesh-independence 双网格跑下来的成本仅以 Section I token 表展示,缺工程细节;(c) VLM 物理校验门只在单一 GPT-5.5 视觉通道评估,没有给出不同 VLM backbone 间的方差与一致性。

独立分析的弱点

独立分析的最主要弱点有四个。第一个是物理校验门对收敛性不充分情形的弱感知——planted-failure ablation 显示 convergence_not_settled 仅 2/4,因为缩短 endTime 在图上仍可读。改进方向是把物理校验门与 '瞬态残差时间序列' 与 '能量谱' 结合,例如对最后 5% 时间窗做 \|d\|$\partial U / \partial t\|$ 与 DNS 谱斜率的偏离检验。第二个是开放式发现缺乏跨几何与跨 Re 验证——quadRecTail 在 periodic hill Re=5600 上降低 7.89%,但因 $G_*$ 是 hard-coded wall-normalized Gaussian,泛化到 BFS 或 diffuser 时可能反而劣化 Cf。改进方向是 (i) 引入可学习几何编码代替硬编码 x_*;(ii) 把 hard-coded $L_{y,*}$ 换成与 $\delta_{99}$ 绑定的自适应长度尺度,使同一组系数在不同几何上 self-scale。第三个是 LLM 锁定于单一骨干——所有 5 个任务都用 GPT-5.5,未给其余 backbone(Claude、Gemini、Qwen、DeepSeek)任一对比,也未做 open-source/small-model 评估。改进方向是补一份 backbone sweep,至少覆盖 (closed-source flagship, open-source large, open-source mid-size) 三档以讨论 AI CFD Scientist 的 '模型依赖度'。第四个是评测完全人工,缺自动 metric。改进方向是构建 'log-log 残差比 + VLM verdict 投票 + 自动 CFD-rubric' 三件套:前者从求解器日志读残差归一化比值,后者做多 VLM 一致性投票,最后对论文草稿做自动 CFD-rubric(包含 mesh 独立、声明-证据对齐、参考覆盖、Claim-No-Hallucination)。

未来方向

作者提出两点明确方向:(i) LLM sweep——把 5 个任务在更多骨干与开源模型上重跑以分离 backbone 效应与 system 贡献;(ii) 自动化 CFD paper rubric——目前无自动化评分工具,未来希望社区一起构建。基于 quadRecTail 的成功延伸,本人识别三条可能方向:(a) quadrupolar source 概念可推广到 k-ε 与 SST——把 4 个 wall-normalized Gaussian 替换成可学习的 KERNEL basis;(b) 把 mesh-independence 门从 simulated 推到 learned,使 VLM 在 fine-mesh 渲染前预先预测是否需要升级;(c) 多目标开放式发现——同时优化 Cf 与 Cp 或 separation length 以避免 single-metric overfit,例如 Pareto 前沿解存储到 checkpoint pool。此外,由于 quadRecTail 通过 coded fvModels 注入,未来可以 'runtime 在线改源' 把 'AI-in-the-loop turbulence control' 引入风洞实时仿真。

复现评估

复现评估较高:作者明确开源 'code, prompts, and run artifacts' 在 https://github.com/csml-rpi/cfd-scientist 仓库,5 个任务的 case 目录、solver 日志、自定义 C++ 库、图清单、论文草稿均承诺 release。论文同时提供 LangGraph checkpointed workflow 与 modular skills-based 实现两种形态供其他编排器复用。算力方面未明确披露 GPU 类型与小时数,但 Section I 报告 token 用量与估算成本(GPT-5.5 backbone),且 44 次迭代 + mesh-independence 双网格 + 6 finalist 的开放式发现属于典型单 GPU 工作站(Tesla A100 级别)数天量级的任务。复现难度评估为中等:CFD 经验上属高级研究员数天级别——需要在 OpenFOAM(含 foam-extend 与 ESI 分支差异)、wmake 编译链、PyVista/matplotlib 渲染、Semantic Scholar API、VLM API(如 GPT-5.5 视觉通道)之外,还要会用 LangGraph 编排与 coded fvModels。潜在风险:(i) GPT-5.5 视觉通道的输出分布未来可能漂移,复现 VLM 14/16 检测率的不确定;(ii) OpenFOAM 版本对 fvModels API 的影响需要在 README 上固化版本钉子(建议 pin foam-extend 或 OpenFOAM-v2312+);(iii) DNS 参考数据(如 Krank et al. periodic hill Re=5600)需要明确 license 与来源链接。