Files
SystemSimulationApp/docs/other/节点修复后同一Amesim文件曲线对比-2026-09-14.md
T

101 lines
9.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 节点修复后:同一 Amesim 文件、相同输入的曲线对比
## 结论
本次已重新运行当前八支路 `tests/data/test_mql.ame` 及其平台对应模型,比较 **Amesim、平台修复前、平台修复后** 三组结果。每组比较 238 条曲线,包含压力、温度、节点参考端焓流/质量流、气室容积/质量/容积功率、活塞容积/变化率、机械位移/速度、接触力和信号。
**节点焓流修复使主要差异显著下降,但不能宣布所有结果完全一致。** 在 0–0.15 s、0.1 ms 采样下,最大温差由 124.930 K 降至 1.175 K,最大压差由 267.642 kPa 降至 13.607 kPa,最大节点焓流差由 1.459 MW 降至 51.183 kW。收紧双方误差限后,剩余差异仍然存在。
气室容积和做功也已比较到纳秒采样尺度。但该文件的活塞直接连接 PNCH012,且预设 `dvol1..4` 均为零,因此这些曲线验证了直接连接的动态容积行为,**不能单独证明“活塞经节点传递容积”及“非零预设 dvol 积分”两种工况的修复**;后两者的依据仍是上一轮专项回归。
## 1. 同一模型与输入一致性
来源为用户工作区中的当前文件;本次没有改动原文件:
| 文件 | SHA-256 |
| --- | --- |
| `tests/data/test_mql.ame` | `251b2f17c24ea02c1ab48f9f441a0ec38e7920627ea7e6870392326424a517c5` |
| `tests/data/test-mql-8-corrected.json` | `60ed16c71b72be4ae71ca7980f4f8cdcdf6b4c4c4c8950863c2390960b71ced4` |
使用已有图纸审计器重新核查类型、拓扑和逐端口连接,映射不按曲线拟合选择。结果:
- 157 个元件、178 条连接、1,092 项公开参数一致,参数变更数与连接变更数均为 0。
- 1,015 项图纸参数与归档内实际 `.param`/`.data` 运行参数交叉核验通过。
- 所比较的初始压力最大差 `1.92e-7 Pa`、初始温度最大差 `3.64e-12 K`;气室容积/质量、机械位移/速度的初值差为 0。
- 原文件的两个 UD00 保持**非循环**,没有沿用之前循环实验的修改。
审计记录:[原始输入审计](F:/Master/SystemSimulationApp/test/node-fixes-amesim-20260914/audit/audit.json)、[最终 AME 与平台副本的参数及时间设置审计](F:/Master/SystemSimulationApp/test/node-fixes-amesim-20260914/full/aligned-audit/audit.json)。
## 2. 运行方式与采样
Amesim 端从同一 `.ame` 归档提取其生成的程序和运行输入,重新执行原生程序,未复用归档中的旧结果。`.cir`、`.param`、`.data`、`.state`、生成 C 和 EXE 在提取后均与源归档逐字节核对;只调整副本 `.sim` 前五个已知运行设置。所有 Amesim 运行均正常结束。
平台通过对应 JSON→XML→网络→原生 C 编译与执行路径运行。修复前基线在隔离模块中加载 Git HEAD 中修复前的扩展生成器;两组使用同样的输入、当前物性内核和当前求解器,仅改变本轮节点/容积生成逻辑,没有覆盖生产代码。基线提交和源码哈希见 [manifest.json](F:/Master/SystemSimulationApp/test/node-fixes-amesim-20260914/manifest.json)。
| 比较区间 | 两端输出间隔 | 两端误差限数值 | 用途 |
| --- | --- | --- | --- |
| 0–50 s | 0.01 s | 1e-8 | 完整运行,5,001 个共同网格点 |
| 0–0.15 s | 0.0001 s | 1e-8 | 启动阶段,1,501 点 |
| 0–0.15 s | 0.0001 s | 1e-10 | 剩余差异的容差敏感性检查 |
| 0–2 μs | 2 ns | 1e-10 | 捕捉快速压缩与体积功率,1,001 点 |
所有区间均从同一初值重新开始,不接续已有状态;最大积分步长均为 `1e30 s`。Amesim 保留源文件其他积分选项,平台使用 CVODE BDF。误差限数字一致不代表两套积分器的内部误差权重和算法完全相同。
曲线在共同时间网格上线性插值,没有调整时间轴拟合、改变物理参数、交换元件或任意翻转符号。Amesim 表压加 101300 Pa 转为绝对压力,g/g/s 转 kg/kg/s,cm³ 转 m³,L/min 转 m³/s。节点参考端质量流和焓流统一取**送入参考侧储气元件为正**,对应 Amesim 的 `dm2`/`dh2`。
所有“最大差”均指所注明网格上的最大差,不是未采样时刻的连续时间全局极值;更密集启动采样得到的最大差必须同时报告。
## 3. 焓流修复的曲线效果
下表每一列取对应物理量的全部已映射曲线中的最大绝对差,最差元件可能随修复变化。
| 物理量 | 0–50 s 修复前 | 0–50 s 修复后 | 0–0.15 s 细采样修复前 | 0–0.15 s 细采样修复后 |
| --- | ---: | ---: | ---: | ---: |
| 压力 | 163.286 kPa | 0.07165 kPa | 267.642 kPa | **13.607 kPa** |
| 温度 | 105.215 K | 0.35581 K | 124.930 K | **1.17465 K** |
| 节点参考端焓流 | 8.007 kW | 0.02481 kW | 1,459.272 kW | **51.183 kW** |
| 接触力 | 5,128.545 N | 2.243 N | 8,347.077 N | **150.358 N** |
细采样中,修复后最大压差出现在 `PNL0001_14.p` 的 0.0001 s,约为该曲线参考峰值的 0.0384%;最大温差出现在 `PNL0001_14.T` 的同一时刻,约为参考峰值的 0.0160%;最大焓流差出现在 `P4NODE2_2` 的 0.0002 s,约为参考峰值的 0.0370%。这些是按参考曲线峰值归一化的差值,不是逐点相对误差。
![启动阶段:叠加曲线和误差](F:/Master/SystemSimulationApp/test/node-fixes-amesim-20260914/startup-comparison.png)
![完整 50 秒曲线](F:/Master/SystemSimulationApp/test/node-fixes-amesim-20260914/full-comparison.png)
## 4. PNCH012 容积与体积功率
原模型的载荷信号包含 `1e17 N`,气室迅速被压缩到容积下限。对第 15 个 PNCH012,初始有效容积 15 L,Amesim 与平台在 **32 ns 的首个命中下限采样点**都达到 0.15 L。普通 0.1 ms/0.01 s 采样已经错过压缩过程,因此不能用后续恒定容积和零功率曲线作为完整验证。
补充 0–2 μs、2 ns 采样后:
- 八个气室容积最大差为 `1.716e-13 m³`。
- 气室容积功率最大差约 `5.307e5 W`;对应参考峰值约 `1.109e13 W`,归一化最大差约 `4.786e-6%`。
- 两边均在容积受下限限制后把有效变化率置零,并停止该容积做功项。
Amesim 的总有效 `dvol` 不是直接保存变量,本次按原 PNCH012 子模型规则,从保存的活塞/节点输入求和,并包含容积下限条件,再计算 `-p_abs*dvol`。直接用原始活塞变化率而忽略气室下限,会人为算出 Amesim 气室实际没有施加的巨大做功;本报告没有采用那种计算。
![最初 80 纳秒的容积、功率、压力和温度](F:/Master/SystemSimulationApp/test/node-fixes-amesim-20260914/volume-comparison.png)
这一快速压缩阶段修复前后基本相同,是因为该文件的活塞均直接连接气室,且该阶段未显著触发本轮混合支路焓流缺陷。不能把这张图当作经节点传递容积或非零预设变化率的专项验证。
## 5. 仍存在的差异与判断边界
把启动实验双方误差限从 `1e-8` 收紧到 `1e-10` 后,修复后的最大压差仍约 13.459 kPa,最大温差约 1.185 K,最大节点焓流差约 51.078 kW,最大接触力差约 148.477 N。剩余差异没有随容差收紧而明显消失,因此不能将其全部归结为普通积分容差;本次没有进一步修改物性或管阻公式来拟合 Amesim。
自由质量块 #9 在原文件中无限位且受巨大载荷,50 s 位移约 `3.968e16 m`。修复后该曲线最大绝对差约 `4.062e6 m`,按该曲线峰值归一化约 `1.024e-8%`。该量必须报告其尺度,不能把绝对数值当作正常毫米级行程的误差,也不能省略它而宣称所有机械量绝对误差都很小。
本次结论是:**相同物理输入下,修复确实消除了主要节点能量遗漏,整段结果明显接近 Amesim;仍有小幅差异,尚未在本次实验中完成逐项归因。** 原模型未覆盖的两种容积工况仍应以专项测试或另建 Amesim 专项模型验证。
## 6. 可复现产物
- [包含本次 50 秒结果和运行设置的 Amesim 副本](F:/Master/SystemSimulationApp/test/node-fixes-amesim-20260914/full/test_mql.ame)
- [同参数的平台 JSON 副本](F:/Master/SystemSimulationApp/test/node-fixes-amesim-20260914/full/platform.json)
- [238 条曲线映射及单位换算](F:/Master/SystemSimulationApp/test/node-fixes-amesim-20260914/curve-mapping.json)
- [全部区间误差统计](F:/Master/SystemSimulationApp/test/node-fixes-amesim-20260914/comparison-summary.json)
- [全程三组曲线 CSV](F:/Master/SystemSimulationApp/test/node-fixes-amesim-20260914/full/curves.csv)
- [启动细采样三组曲线 CSV](F:/Master/SystemSimulationApp/test/node-fixes-amesim-20260914/startup/curves.csv)
- [容积快速压缩三组曲线 CSV](F:/Master/SystemSimulationApp/test/node-fixes-amesim-20260914/volume-startup/curves.csv)
- [运行脚本](F:/Master/SystemSimulationApp/test/node-fixes-amesim-20260914/run_comparison.py)、[分析脚本](F:/Master/SystemSimulationApp/test/node-fixes-amesim-20260914/analyze.py)、[绘图脚本](F:/Master/SystemSimulationApp/test/node-fixes-amesim-20260914/plot.py)
原始 Amesim 结果保存在各区间的 `amesim/test_mql_.results`,平台原始结果保存在 `before/result.json` 和 `after/result.json`。运行日志、参数审计、输入与输出哈希均保留在同一实验目录。本次没有修改生产代码或源 AME/JSON。