Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

CFDriver_skill — OpenFOAM 算例配置 Agent Skill(内置双版本官方源码背板)

一个可挂载到 AI 编程助手(Claude / Copilot / Cursor 等支持 Agent Skill 的智能体)的领域技能包。 挂载后,智能体获得为 OpenFOAM 双版本生成、修改、静态校验 CFD 算例配置文件与自定义模型编译脚手架的专业能力, 并以内置的两套完整官方源码为“反幻觉背板”,禁止凭记忆杜撰字典键名与 C++ API。

  • Foundation 版 OpenFOAM-10.org,经典 simpleFoam / interFoam 独立求解器)
  • ESI 版 OpenFOAM-v2306.com,与 v2406 同系)

本技能只生成配置与代码(system/ + constant/ + 0/ + 自定义模型源码 + 编译脚手架)。 blockMesh / snappyHexMesh / 求解器 / wmake 的实际运行交给你本机安装的 OpenFOAM。


能做什么

场景 产出
从零搭建标准算例 完整 system/ constant/ 0.orig/,可直接 blockMesh → 求解器
绕流 / 内流 / 多相 / 传热 / 自然对流 / 反应 匹配求解器 + 湍流模型 + 边界条件的一整套字典
修改已有算例 定位求解器与字段,按需最小改动,BC 改在 0.orig/
论文算法植入 核对量纲后落地 BC/IC/常数/时间步,写进 constant/ 字典
自定义模型(dragModel / turbulence / fvOptions) Foo.H/Foo.C + Make/files + Make/options,照官方源码骨架写 wmake libso

每次交付都附三份总览MANIFEST.md(文件清单)、ALGORITHM.md(物理/数值方案+官方源码依据)、TUNING.md(问题与调优)。


快速开始

1. 获取完整包(含官方源码背板,推荐)

到本仓库 Releases 下载 CFDriver_skill.zip(约 147 MB,已内置 OpenFOAM-10 + v2306 完整 applications/solvers + src + tutorials),解压后把 openfoam-case-builder/ 目录挂载为智能体的 Skill。

CFDriver_skill/
├── openfoam-case-builder/      ← 挂载这个目录
│   ├── SKILL.md
│   ├── reference/
│   ├── templates/
│   └── backplane/
│       ├── SOURCE_MAP.md
│       └── vendor/
│           ├── OpenFOAM-10/    ← 完整官方源码(背板)
│           └── OpenFOAM-v2306/ ← 完整官方源码(背板)
└── _shared/

2. 仅克隆脚手架(本仓库 git 内容,不含大源码)

git clone https://github.com/LZF1111/CFDriver_skill.git
cd CFDriver_skill/openfoam-case-builder/backplane
# 按需拉官方源码到 vendor/(联网)或登记本机 OpenFOAM 安装(离线)
bash fetch_sources.sh clone     # 或 pwsh ./fetch_sources.ps1 clone

框架:三层“反幻觉背板”

智能体写字典或 C++ 模型最容易犯的错就是凭记忆猜键名和 API(OpenFOAM 两版差异大、字段检查严,少一个 scalar 就 FOAM exiting)。本技能用三层背板消除这一点:

① SOURCE_MAP.md(指针索引,随包)
   每类任务 → 官方源码里的具体文件/类/宏/tutorial
        │
        ▼
② fetch_sources.*(按需获取)
   git 稀疏/浅克隆官方源码 → vendor/  或  登记本机安装路径(离线)
        │
        ▼
③ vendor/ 完整官方源码(本包已内置实拷)
   OpenFOAM-10 + OpenFOAM-v2306 的 applications/solvers + src + tutorials

强制流程:写任何字典/模型前 → 查 SOURCE_MAP.md 定位官方参考 → read_file 打开对齐类结构/注册宏/字段 → 照骨架改数 → 在 ALGORITHM.md 标注参照的源码路径可回溯。

双版本差异(SOURCE_MAP 内置对照表)

OpenFOAM-10 (Foundation) v2306 (ESI)
湍流模型根目录 src/MomentumTransportModels/ src/TurbulenceModels/
湍流字典 constant/momentumTransport constant/turbulenceProperties
粘度字典 physicalProperties transportProperties
RAS 键 RAS { model kOmegaSST; } RAS { RASModel kOmegaSST; }
源项框架 src/fvModels + src/fvConstraints src/fvOptions

选定版本后全程一致,并写在 MANIFEST.md 顶部。


目录结构

openfoam-case-builder/
├── SKILL.md                       # 技能入口:纪律 + 工作流 + 交付契约
├── reference/                     # 按需读取的领域细节
│   ├── dictionaries.md            #   字典字段/量纲表/离散格式/线性求解器
│   ├── boundary-conditions.md     #   inlet/outlet/wall/atmosphere 各场 BC 速查
│   ├── solvers.md                 #   求解器选型
│   ├── custom-model-compile.md    #   wmake 脚手架 + runTimeSelection 注册 + 论文植入
│   └── error-patterns.md          #   高频报错与修法
├── templates/                     # 可直接拷贝改数的骨架
│   ├── system/ constant/ 0.orig/  #   不可压稳态 + 单相水 kOmegaSST
│   └── overviews/                 #   MANIFEST/ALGORITHM/TUNING 模板
└── backplane/
    ├── SOURCE_MAP.md              # 官方源码指针索引 + 双版本差异表
    ├── fetch_sources.sh / .ps1    # status / clone / link 三模式
    └── vendor/                    # 官方源码落地处(完整包在 Release 内)

核心纪律(技能内置,节选)

  1. 不凭记忆手写复杂字典;优先克隆 vendor/<版本>/tutorials/ 里最贴近的官方算例做骨架。
  2. 一个 case = system/ + constant/ + 0/ 三目录,判据是有没有 system/controlDict
  3. 永远先建 0.orig/cp -r 0.orig 0,绝不直接编辑 0/
  4. 量纲必须对:k=[0 2 -2 0 0 0 0]、epsilon=[0 2 -3 …]、omega=[0 0 -1 …]、nu=[0 2 -1 …]。
  5. 每个 patch 的每个场独立写 BC,不合并。
  6. 论文植入先核对单位量纲(cm/s vs m/s、K vs °C、bar vs Pa),有歧义先问。

License

MIT(本技能脚手架)。backplane/vendor/ 内为 OpenFOAM 官方源码,版权归各自项目所有(OpenFOAM-10: GPL-3.0 / OpenFOAM Foundation;v2306: GPL-3.0 / OpenCFD-ESI),仅作为查询背板内置,请遵循其原始许可。

About

OpenFOAM 双版本(v2306/OF-10) 算例配置 Agent Skill,内置官方源码反幻觉背板

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages