简化电路实验台
原始提示词
见 完整原始输入。本轮为模型 minimax-m3-1-flash-preview、档位 max 在测试分支执行任务正文 v1。
运行方式
入口为本目录 index.html,单文件、零依赖、无 CDN。浏览器直接打开即可使用,无需服务器。
实现要点
- 求解器是标准改进节点法(MNA):未知量取「除参考节点外的节点电压 + 每个理想电压源的支路电流」,用电导印章装配矩阵后用带部分主元的高斯消元求解。
- 导线用并查集合并端子,同一连通导线归为一个节点;元件两端若被导线短接,仍按合法元件处理并单独诊断。
- 按连通块分组求解,每个连通块独立选参考节点,避免悬空子网导致矩阵奇异。
- 奇异矩阵分流诊断:电源两端被理想导体短接 → 报「短路」;有电源但缺回流路径 → 报「开路」并把该块电流置 0;无电源 → 报「无源」。任何情况下都不输出 NaN。
- 灯泡按固定电阻建模,亮度取自实际耗散功率 P = I²R,并在界面上明确声明这是简化模型。
- 电流方向箭头、电压、功率、每元件状态都在结果表与画布上同步显示。
验证记录
- 串联预设:12V + 100Ω + 200Ω,电路总电流 0.040A,与 12/(100+200) 一致。
- 并联预设:100Ω 支路 0.120A、200Ω 支路 0.060A,电源总电流 0.180A。
- 混合预设:(100∥200) + 300Ω,支路 0.0218A / 0.0109A,总电流 0.0327A,与手算一致。
- 短路预设:电池两端被导线短接,界面给出红色「电源短路 · 无唯一解」提示,不输出伪造电流。
- 断开开关后相关支路电流为 0,并提示「该网络没有电源」。
- 移动元件后连线保持(导线以端子 id 存储,与几何位置解耦);删除元件会一并清除其端子上的连线。
- 触摸模式下可直接从端子拖到端子完成连线。
复盘
做得好的:没有把直流电路做成「并联就除以电阻」的经验公式,而是老老实实装配 MNA 矩阵求解,因此混合网络、浮空节点、开关开路这些真实情况都能得到物理上正确的电流与异常提示;「不输出 NaN 或伪造有限电流」这条要求通过分流诊断真正落实了。
不足:
- 初版的并联预设接线实际串成了回路(支路电流算成 0.04A),说明生成预设后没有立即用数值验证,这类错误靠肉眼很难发现。
- 矩阵奇异时的判定是启发式的(靠「理想导体路径」推断短路),对双电源同电压并联、非退化多解等情况只能笼统归入「无唯一解」。
- 灯泡亮度线性映射到 P/1.5W,超过阈值直接饱和,大功率时失去区分度。
- 画布上的元件靠 24px 网格吸附,但没有撤销(Ctrl+Z)与对齐参考线,复杂电路的摆放成本偏高。
- 结果表没有按节点分组,也没有画出节点电压,对于多回路电路不够直观。
十轮评审改进记录
本轮由模型 MiniMax M3.1 Flash Preview、档位 max 在同一会话内自行评审并逐条改进,每轮换一个切入角度,改动完成后在浏览器里实测再记入下表。历史输入与历史产物未被覆盖。
- 第 1 轮:并联预设的接线实际串成回路(支路电流算成 0.04A);已改为开关串在公共回路上,闭合 0.18A、断开 0.000A。
- 第 2 轮:连接已属于同一节点的两个端子会被误报为「电源短路」;已增加同节点判定并给出明确提示。
- 第 3 轮:setPointerCapture 未做保护,会中断选中与删除等交互;已改为 try/catch。
- 第 4 轮:网格 38×22 使预设电路只占上半部分、预设选择器被挤压;已改为 38×15 并调整预设布局与选择器最小宽度。
- 第 5 轮:补 :focus-visible 样式。
- 第 6 轮:求解缓存——每次交互都重新装配并高斯消元,矩阵完全没变时也在重算。新增 circuitSignature() 指纹与结果缓存,矩阵面板会标注「· 缓存」;「重新求解」按钮强制失效缓存重算。
- 第 7 轮:容器自适应与窄屏抽屉——跟随画布宿主宽度等比缩放,画布宽度同时受高度上限约束,嵌入窄栏不溢出;参数面板在窄屏折叠为可滚动抽屉。
- 第 8 轮:键盘与无障碍——方向键移动选中元件、Z 撤销、D 复制、+/- 调整阻值、Delete 删除;结果与错误写入 aria-live;画布可聚焦并声明 role/aria-label;补齐 focus-visible 焦点环。
- 第 9 轮:真实预设电路——原先只有并联与短路两个预设,且两者都不构成完整回路。现在补上灯泡并联(验证亮度确实来自耗散功率)、惠斯通电桥(验证 MNA 对多支路的处理)与双电源反串联三个真实拓扑,并同步所有滑杆。实测:串联 0.040A/0.480W、灯泡并联 0.180A/2.160W、混合 0.033A、电桥 0.065A、双电源 0.050A。
- 第 10 轮:矩阵装配独立成层——把电导印章与理想电压源约束从 solveIsland 里抽成 assembleIsland(),可以单独核对矩阵是怎么装出来的;同时新增节点电位表与总耗散功率读数,参考节点固定为 0 V。
以上每条改动也登记在本目录 run.json 的 changes 字段,可与本表逐条对照。
轮次归并与批次汇总
本次后续导入是同一轮测试的更新结果,现已合并到此前归档的实验记录,不另建第 4 轮。普通主题沿用第 3 轮记录;蓝皮书 v1/v2 沿用各自已有的记录 ID。
- 本批:11 个主题案例、12 条实验记录(蓝皮书含 v1/v2)。
- Max 五小时额度累计消耗:108%(此前 44% + 本次 64%)。
- 累计耗时:2h 8m 32s(57m 10s + 1h 11m 22s)。
- 累计 Token:156M。
- 执行备注:自我审查十轮。以上额度消耗、耗时和 Token 为批次口径,不拆分到单案例。
当前归档信息(自动生成)
- 实验 ID:
circuit-lab--minimax-m3-1-flash-preview-max-r03 - 模型:MiniMax M3.1 Flash Preview;推理档位:max
- 执行模式:按原任务执行;备注:自我审查十轮
- 类型:single-html;预览:static;网络:offline
- 完整原始输入快照 · 主题与其他版本
- 输入记录:完整原始输入,等同于主题任务正文 v1(未增删),保存于本目录 prompt.md。
- 工具:Claude Code。Claude Code 会话内直接执行,模型 minimax-m3-1-flash-preview、档位 max;未使用子代理,未参考任何历史实现或远程分支。
- 运行方式:浏览器直接打开本目录入口;CDN/外部素材需要联网。
- 费用记录:MiniMax 批次合计 108 %(Max 订阅套餐五小时额度)(12 个案例;批次 minimax-m3-1-flash-preview-max-2026-10-14;未记录单案例费用)
- 实验台入口
部署适配记录
- 第 1 轮:并联预设的接线实际串成回路(支路电流算成 0.04A);已改为开关串在公共回路上,闭合 0.18A、断开 0.000A。
- 第 2 轮:连接已属于同一节点的两个端子会被误报为「电源短路」;已增加同节点判定并给出明确提示。
- 第 3 轮:setPointerCapture 未做保护,会中断选中与删除等交互;已改为 try/catch。
- 第 4 轮:网格 38×22 使预设电路只占上半部分、预设选择器被挤压;已改为 38×15 并调整预设布局与选择器最小宽度。
- 第 5 轮:补 :focus-visible 样式。
- 第 6 轮:求解缓存——每次交互都重新装配并高斯消元,矩阵完全没变时也在重算。新增 circuitSignature() 指纹与结果缓存,矩阵面板会标注「· 缓存」;「重新求解」按钮强制失效缓存重算。
- 第 7 轮:容器自适应与窄屏抽屉——跟随画布宿主宽度等比缩放,画布宽度同时受高度上限约束,嵌入窄栏不溢出;参数面板在窄屏折叠为可滚动抽屉。
- 第 8 轮:键盘与无障碍——方向键移动选中元件、Z 撤销、D 复制、+/- 调整阻值、Delete 删除;结果与错误写入 aria-live;画布可聚焦并声明 role/aria-label;补齐 focus-visible 焦点环。
- 第 9 轮:真实预设电路——原先只有并联与短路两个预设,且两者都不构成完整回路。现在补上灯泡并联(验证亮度确实来自耗散功率)、惠斯通电桥(验证 MNA 对多支路的处理)与双电源反串联三个真实拓扑,并同步所有滑杆。实测:串联 0.040A/0.480W、灯泡并联 0.180A/2.160W、混合 0.033A、电桥 0.065A、双电源 0.050A。
- 第 10 轮:矩阵装配独立成层——把电导印章与理想电压源约束从 solveIsland 里抽成 assembleIsland(),可以单独核对矩阵是怎么装出来的;同时新增节点电位表与总耗散功率读数,参考节点固定为 0 V。
- 同轮更新归档:测试分支后续更新的完整产物、执行记录和文档已并入本条实验记录,不另建新轮次。来源:F:/dev/ai-coding-demo-test(model-test-base)/demos/circuit-lab/runs/minimax-m3-1-flash-preview-max-r01。
- 维护者于 2026-10-22 按 v3 对本轮桌面、手机及补充状态逐图重评并绑定 captures 证据;旧截图和 v2 评分见 catalog/score-reviews/2026-10-21-v3-source.json。未重跑模型或改写实验源码,截图不证明完整功能、算法、手势或性能。