# 22 · 机理 / PDE 题作战手册(A 类连续介质) > 何时加载:Phase 0 判定为 **A 类物理/连续问题**,或题目给出控制方程、物性公式、烘房/炉温/流体/传热传质时序。 > 来源:2026 国赛 A(药材烘干)完整四问实战。规则按题型写,不绑定那一道题的数字。 > 验证项清单在 `17-paired-verification.md` 的 **V-PDE**,此处不重复。 数据题把附件当样本;机理题把附件当 **边界驱动、物性、几何**。用 C 题的「缺失值→插补→回归」套路会毁掉 A 题。 ## 1. Phase 1:先建单位字典,默认不清洗 1. 打开每个附件,记录:工作表、列名、行数、**单位**、时间范围、是否允许外推。 2. 生成 `1_数据/data_contract.json`(仍然强制)。把 scaffold 预置的 `units-template.md` 复制为 `1_数据/units.md` 并填完:每个符号的输入单位、内核单位、输出单位。 3. **附件只读**。脚本不得原地覆盖 `1_数据/` 或赛题附带的结果模板。 4. 默认 **不平滑、不删点、不改值**。只有用户确认、且敏感性证明「改了会翻转结论」时才动原始序列。 5. 题目没给的参数(潜热、焓输运、未知系数)禁止虚构。选项只有:问用户、保持参数化、带标签的敏感性、或声明无法定量。 ## 2. 内核单位(违反即数值灾难) | 层 | 单位 | |---|---| | 计算内核 | SI:m、s、K、kg | | 输入/输出 | 可按题目用 cm、h、°C,只在边界转换 | - 含 `\exp(-E/T)`、阿伦尼乌斯的公式,`T` **必须用开尔文**。误用摄氏度会让指数项失真一个数量级。 - 禁止在同一数组里混用 cm/m、h/s、°C/K。 - 变量名带单位后缀或在文件头列出,例如 `temperature_k`、`radius_m`、`time_s`。 - 非有限值、负含水率、负扩散系数、负半径、时间倒序 → 报错退出,禁止截断后继续算。 ## 3. 每问强制三件套(写完才能编码) 路径:`2_代码/0N_问题N/model.md`、`decision_log.md`,以及 `4_论文/materials/problem_N.md`。 **model.md** 必须写清:目标与输出、题目事实 vs 新增假设、符号与单位、控制方程、初边值、参数来源、离散方法、验收标准、风险。每个公式标注来源:题目 / 附件 / 推导 / 新假设。 **decision_log.md** 必须写清:选项、选择、证据、不做某实验的原因和触发条件。 **problem_N.md** 必须写清:结论数字(含单位和判据)、图号、局限、复现命令。 没有这三件套,禁止把结果写入论文或官方模板。 ## 4. 可接受模型的七条门槛 同时满足才能叫「可接受」;否则只能叫候选或探索: 1. **问题对应**:输入、输出、终止判据直接回答当前小问。「各处达标」不能用平均值代替,必须检查最慢位置(圆柱干燥通常是圆心)。 2. **物理一致**:单位、通量方向、初边值合理;零驱动不变,更热更干边界趋势正确;能算则报告质量/能量收支。 3. **假设最小且可检验**:每项简化写清省掉什么、为何、适用范围。两个模型验收无差异时选更简单的。 4. **数值可靠**:给定范围内定义明确;通过稳定性、非负性、网格**和**时间步收敛。设置一变结论就翻 → 必须报不确定度。 5. **参数可识别**:凡估计的量有来源;不能用同一批数据调参后声称预测成功。无独立观测时只做解析极限、量级或交叉实现,**不得声称经验精度**。 6. **可复现**:任何人凭仓库、固定依赖和一条入口命令能复现。每次最终运行写 `run_manifest.json`(输入、网格、步长、代码哈希、环境、命令)。 7. **交付合规且有增益**:结果符合模板;复杂模型若未改变决策或未通过更多验证,不得替换已验证的简单模型。 「可接受」≠「正确」。论文必须保留适用范围和系统偏差。 ## 5. 数值硬规则 - **先小模型再加机制**:常数物性 → 变物性 → 长期终点 → 移动边界。禁止一上来三维+潜热。 - **奇点单独处理**:柱/球坐标 `r=0` 必须写对称边界,禁止把 `1/r` 通式直接代入圆心。 - **隐式/非线性**:记录容差、最大迭代次数、未收敛处置。求解失败时禁止暗中放宽容差、减少输出或换模型。 - **网格因时间尺度而变,不是模型不一致**:短时程粗网格够用;拉到数天后近表面边界层变窄,必须加密。论文里用一张表解释四问为何 `dr/dt` 不同。 - **数据结束之后的边界**:观测时序用尽后若继续积分,必须显式假设(末值保持 / 外推 / 截断),并用实验量化对终点的影响。 - **官方结果模板**:先复制到输出目录再填;填完后**回读**关键单元格,与内存结果比对。 ## 6. 递进小问:禁止当独立题并行 A 类常见结构是 **Q1 ⊂ Q2 ⊂ Q3 ⊂ Q4**(同一物理对象逐步加真实机制)。 - 不得按 `18` 把四问同时交给子 Agent。后一问必须能复现前一问在相同设置下的结果(回归锁死)。 - 跨问共用的 `h`、`hm`、初值必须同源;差异只能来自题目要求的机制(物性、几何、时长)。 - 两个方向相反的机制同时出现时(例如「路径变短」vs「组织变密」),必须做 **效应分解**:固定其它因素,分别报告各机制的贡献和净效应,禁止只报一个净值。 ## 7. 实验默认关闭 资料阅读、量纲、一次确定性单测、题意直接决定的实现 → **不**开并行实验。先有可运行基准。 仅在这些情况写任务卡并等用户批准:有会翻转结论的竞争方案;守恒/收敛未过;新机制可能改提交值;需要独立实现排错。 任务卡预先定义:唯一决策、零假设、候选(默认 ≤3)、固定因素、指标、阈值、预算、停止条件。每轮只改一个因素。候选失败的结论只能是「尚无可接受模型」。 隔离方式见 `18-parallel-subagents.md` 的「实验隔离」节:独立 worktree,禁止改主分支和附件。 ## 8. 图件 国赛评委按黑白打印。机理题图必须: - 灰阶 + 线型 + 标记三重区分,禁止只靠颜色; - 标注坐标、单位、图例、时间基准、数据来源、模型来源、生成脚本; - 同时出 PNG(300 dpi)和矢量(PDF/SVG); - 不靠平滑线掩盖震荡或不收敛。 样式入口:`assets/plot-style.py` 的灰阶栈。 ## 9. 复现入口 每问一条命令,例如: ```bash python 2_代码/01_问题1/solve_q1.py python 2_代码/01_问题1/verify_q1.py ``` `run_manifest.json` 最少字段:`problem`、`command`、`inputs`、`parameters`(含网格与步长)、`code_hashes`、`environment`、`timestamp`。 ## 10. 2026A 对照(只作量级与结构参考) 完整可复现仓库:https://github.com/ciyuan1234/MCM_2026 | 问 | 结构 | 参考结论 | |---|---|---| | 1 | 短时程、常数物性 | 表面先升温先失水,圆心 30 min 内几乎不动 | | 2 | 变物性、数小时 | 传热已完成,传质远未完成 | | 3 | 全周期终点 | 最慢点达标时间约 2.4 天量级 | | 4 | 收缩几何 + 修正物性 | 两机制近乎抵消,净加速约一成 | 数字以该仓库 `docs/overview.md` 为准。本 skill 只借用其**流程**,不把具体小时数写进其它题目。 ## 11. 论文怎么写 写法在 `05-abstract-and-writing.md` §1.8,不在这里重复。建模产物(model.md、run_manifest、V-PDE)齐了才能进 Phase 3。