agentleFS
Neil2DPNeil2DP/cst-paper-sim-skills/skills/em-simulation-pipeline/SKILL.md

em-simulation-pipeline

Skill2 starsChanged 2 months agoMITView on GitHub

论文复现全流程:拿到一篇天线/电磁论文 → 理解设计逻辑 → 提取参数建模 → Python解析计算 → CST全波仿真 → 结果验证对比。集成 vision 技能的多模态识图能力处理论文附图和模型截图。触发词:复现这篇论文、帮我复现、复现论文、照着论文建模、验证这篇论文的结果、跑一遍这个论文。

The file

Files
SKILL.md

论文复现全流程

你要做什么

给我一篇论文,我帮你把它的核心设计从头到尾复现出来,验证论文结果是真是假、可不可重复。

复现流程

论文PDF
  ↓
Phase1: 读懂文章 → 提取所有设计参数 → 输出 model_spec.yaml
  │         └── vision.js 提取论文附图中的结构、尺寸、曲线
  ↓
Phase1.5: 公式预扫雷 → 输出 formula_audit_report.md
  │         └── 调用 /paper-formula-falsify 检查承重公式有无笔误/量纲/约束硬伤
  ↓
Phase2: 用解析公式做快速验算 → 输出 theory_results.json
  ↓
Phase3: 用CST建模仿真 → 输出 cst_results.json + .cst 项目
  │         └── vision.js 对比模型截图 vs 论文结构图
  ↓
Phase4: 三方对比(论文 vs 理论 vs 仿真)→ 复现结论报告
  │         └── vision.js 对比仿真结果图 vs 论文结果图
  ↓
Phase5: 不吻合时溯源排查 → 修正后重跑
  │         └── vision.js 辅助诊断异常
  ↓
Phase6: 优化设计 → 参数扫参/贝叶斯优化

各阶段说明

Phase 1 — 理解论文、提取参数

把论文里作者做了什么、怎么做的、参数是多少,全部结构化地提取出来。

文字提取(底层模型直接处理):

  • 几何参数:每层材料、每个尺寸、单位,一个不落
  • 激励/边界条件:端口类型、边界设置、入射波
  • 求解器设置:频段、网格类型与密度、收敛判据
  • 设计公式:论文引用的公式和适用范围

图片提取(vision.js 处理 — 关键新增能力):

  • 天线结构图 → 理解几何关系和层叠顺序
  • 尺寸标注图 → 提取所有标注的变量和数值
  • 加工实物图 → 发现论文正文未提及的装配细节
  • 结果曲线图 → 获取 benchmark 的大致范围
  • 等效电路 / 馈电网络图 → 理解馈电拓扑

📋 详细提取方法见 /vision 技能中的"论文参数提取专用提示词"

输出:

  • model_spec.yaml — 结构化参数,含 vision_extractions 字段记录图片提取结果
  • paper_notes.md — 图文交叉验证后的设计逻辑解读
  • figures/ — 关键图片及 vision.js 返回的描述文本

必填项目:

  • 几何参数:每层材料、每个尺寸、单位,一个不落
  • 激励/边界条件:端口类型、边界设置、入射波
  • 求解器设置:频段、网格类型与密度、收敛判据
  • 结果指标:论文展示的 S参数/方向图/增益/效率等 benchmark 值
  • 隐式假设:作者没说但实际影响结果的因素(导体损耗算了吗?基板是无界的吗?等等)
  • vision_extractions:从图片中提取的信息来源记录

→ 详见 /paper-parser

Phase 1.5 — 公式预扫雷(新增)

Phase 1 产出 model_spec.yaml 后、Phase 2 消费它之前,先对论文的承重公式做一次硬伤扫描,避免把笔误带入后续 CST 仿真浪费数小时。

动作:调用 /paper-formula-falsify,输入为 model_spec.yaml 中记录的"设计公式"字段(承重公式 2-4 个)。

检查 5 类硬伤:

  1. 笔误 — 上下标/符号抄错(如 steering vector 下标错导致矩阵秩退化)
  2. 符号重载 — 同一符号多处含义不同
  3. 约束不等价 — 闭式解 ≠ 声称的优化目标
  4. 算法不收敛 — 循环终止条件不可达
  5. 量纲/域 — 等式两边量纲或 dB/线性不一致

产出:

  • formula_audit_report.md — 人类可读的证伪报告(含承重公式清单、发现硬伤、复现警示、定级汇总)
  • falsify_*.py — 数值实验脚本
  • *.png — 数值图

分支决策(根据审计定级):

定级含义处理方式
CRITICAL阻断复现⛔ 暂停 pipeline,先勘误公式,回写修正版到 model_spec.yaml,再进 Phase 2
MAJOR数学不成立⚠️ 标记警示,Phase 2 用修正后公式,Phase 5 排查时加入"公式嫌疑"
MINOR漏报边界💡 记录,不阻断,继续
CLEARED审计确认无问题✅ 直接进 Phase 2

💡 为什么要这一步:paper-formula-falsify 曾发现"steering vector 下标笔误照抄直接秩退化"的案例。没有预扫雷的话,这种 bug 要到 Phase 5 偏差溯源时才能发现(浪费整轮 CST 时间)。公式审计只需 10 分钟,能省掉几小时的仿真调试。

→ 详见 /paper-formula-falsify

Phase 2 — 解析计算快速验证

动 CST 之前,先用解析/半解析方法算一遍,快速确认:

  • 谐振频率大概在哪里
  • 方向图主瓣方向对不对
  • 阻抗是否在合理范围

覆盖:阵因子、腔模理论、传输线模型、方向图合成

⚠️ 注意:此处用的是 Phase 1.5 已验证的公式。若 Phase 1.5 发现 MAJOR/CRITICAL 级硬伤,用勘误后版本的公式,不要裸抄论文原文公式。

Phase 3 — CST 全波仿真

用 cst Python API 驱动建模、求解、导出结果。 所有几何尺寸用变量驱动(方便后续扫参优化)。

建模后视觉验证(vision.js):

  1. CST 建模完成后,在 CST GUI 中截图
  2. 用 vision.js 对比 CST 截图 vs 论文结构图:
    node vision.js "cst_model.png" "对比这张CST模型截图和论文图,
    检查:天线形状是否一致、馈线位置、基板比例、端口位置、地的尺寸"
  3. 如发现明显差异 → 修改建模脚本 → 重新建模 → 再次截图验证
  4. 视觉确认通过后才进入求解

→ 详见 /cst-automation 和 /cst-modeling-guide

Phase 4 — 复现结论

论文声称值 ↔ 解析理论值 ↔ CST仿真值 三方对比:

数据对比:

  • S参数偏差多少?方向图吻合吗?
  • 不吻合的话,问题出在哪?几何?材料?网格?还是论文本身有问题?

视觉对比(vision.js):

  • 将 CST 结果图与论文结果图并排截图
  • 用 vision.js 做视觉交叉验证:
    node vision.js "compare_results.png" "左侧是CST仿真结果,右侧是论文结果,
    对比S11曲线的谐振频率、深度、带宽趋势是否一致"
  • 视觉对比可以捕捉数据对比容易遗漏的曲线形貌差异

验收汇报产物(2026-08-15 增补):

  • Phase4 分析前,先委托 cst-result-report 把本批全部仿真结果整理成图文汇报 (指标表 + 分组对比图 + 论文对照拼接图 + 仿真结果汇总_<任务>_YYYYMMDD.md)
  • 该汇报是本阶段三方对比的数据底座,也是给导师/负责人的验收文件; em-verification 在它之上做深度归因,不重复做结果呈现

→ 详见 /em-verification

Phase 5 — 偏差溯源

不吻合时的排查顺序:

  1. 几何尺寸是否与论文一致?(查 model_check_report.json)
  2. 材料参数(εr, tanδ)是否准确?
  3. 网格是否收敛?→ 建议细化后再跑一遍
  4. 边界条件是否匹配真实物理场景?
  5. 端口设置和去嵌是否正确?
  6. CST 模型截图 vs 论文结构图(vision.js 视觉确认)
  7. 论文本身是否美化了数据、漏了关键参数?
  8. 公式本身是否有 CRITICAL/MAJOR 硬伤?(查 Phase 1.5 的 formula_audit_report.md——若之前跳过了 Phase 1.5,此时必须补做)

Phase 6 — 优化设计

复现成功后,基于验证过的模型做优化设计:

  • 参数化扫参
  • CST 内置优化器
  • 贝叶斯优化

详见工作流设计文档 02_论文到CST自动化工作流设计.md


复现结论报告

最终输出一份清晰的复现报告:

  • 哪些结果复现成功
  • 哪些有偏差(以及可能的原因)
  • 哪些论文数据存疑
  • vision.js 视觉对比的发现(如有)

AI 能力边界

我能做需要你做
提取论文里的所有设计参数判断参数物理上是否合理
调用 vision.js 读取论文附图和模型截图将论文图片导出为 PNG/JPG
写 Python 解析计算代码选择最合适的算法
生成 CST 建模脚本调试网格收敛/求解发散
自动对比三组数据、标出偏差判断偏差是否可接受
猜测偏差原因、建议修正方向做物理层面的最终判断
vision.js 视觉对比曲线趋势精确数字化曲线数据点

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.