相较上一版 Jacobian 确定性复用更新,本次补齐事件边界一致性、结果两侧采样及接触事件定位;保留已有物性复用和组件力学公式。 - 统一 UD00 信号求值与下一事件查询的绝对时间边界,修复循环边界浮点舍入导致的阶段错位、重复或漏报,并覆盖零时长、多阶段及长周期场景。 - 引入原生输出语义 v2:保留规则网格真实时间,补充内部时间事件和状态事件的左邻及事件后采样,按保存时间、状态和离散模式重放结果。 - 两条代码生成路径均发出 LSTP 接触描述,默认定位间隙过零及非负力模式的力截断;仅在接受事件时更新防重复记录,增加 contactEvents 诊断计数。 - 补充 MASS/LSTP 独立事件实验、八路全曲线与驱动阶段配对评估,以及 Amesim 不连续点输出对照和力差定位报告;MASS 新增释放机制仍保留为独立实验。 - 保存局部 probe、context 访问与回退、shadow replay、R288 real skip/typed replay 及阀门数值尾部诊断工具和报告;未证明净收益的实验不启用为生产默认优化。 - 更新原生运行说明和元件建模规范,补充信号边界、输出语义、接触事件和实验依赖回归测试。 验证:五组专项回归共 34 项全部通过;37 个待提交 Python 文件语法检查通过;git diff --cached --check 通过。
340 lines
18 KiB
Markdown
340 lines
18 KiB
Markdown
# Context 访问级清单:实测数据
|
||
|
||
由 `analyze_context_access.py` 从访问事件生成。slot、Jacobian 和 position 均从 0 开始;group=-1 为 baseline。
|
||
|
||
以下以 Jacobian 200 为主案例,补充 position 52 的 PH 命中/未命中路径。完整逐次记录位于 `test/context-access-20260917/operations.json`;原始访问事件在 `audit/access.jsonl`。
|
||
|
||
## Jacobian 1,group 18,position 52
|
||
|
||
t=1.3389986581645337e-08;count 11 → 12;capacity=256;输出 `0.033351539732391834`;model evaluator 返回 `1`。
|
||
|
||
### 查询与首次匹配
|
||
|
||
| 顺序 | 类型 | 完整 key:p, T 或 h, R, cp, Tref, slope, mu, muT, S | medium kind | 首个匹配 slot | 扫描条数 |
|
||
|---|---|---|---|---|---|
|
||
| 1 | PH | `141437.08341422619, 200554.29912985844, 2077.2643940499802, 5193.1609851249505, 293.14999999999998, 0, 1.9599999999999999e-05, 293.14999999999998, 79.400000000000006` | 1 | 7 | 8 |
|
||
| 2 | PT | `141437.08341422619, 336.75814451285157, 2077.2643940499802, 5193.1609851249505, 293.14999999999998, 0, 1.9599999999999999e-05, 293.14999999999998, 79.400000000000006` | 1 | 7 | 8 |
|
||
| 3 | PT | `100000.73403195803, 293.15086386132788, 2077.2643940499802, 5193.1609851249505, 293.14999999999998, 0, 1.9599999999999999e-05, 293.14999999999998, 79.400000000000006` | 1 | miss | 11 |
|
||
|
||
### 实际选中后的字段读取
|
||
|
||
| 域 / slot | 字段 |
|
||
|---|---|
|
||
| pipes[28] | `valid` |
|
||
| states[7] | `T`, `isentropic_exponent`, `isentropic_factor`, `medium`, `medium.Tref`, `medium.cp`, `medium.real_helium`, `medium.slope`, `mu`, `p`, `rho`, `temperatures` |
|
||
| states[11] | `T`, `isentropic_exponent`, `isentropic_factor`, `jacobian`, `medium.R`, `medium.S`, `medium.Tref`, `medium.cp`, `medium.mu`, `medium.muT`, `medium.real_helium`, `medium.slope`, `p`, `rho`, `temperatures` |
|
||
|
||
查询扫描另外按短路次序读取 `valid & PT/H`、`p`、`T/h`、medium;未匹配项的字段不等于被用于物性计算。
|
||
|
||
### 选中后的 valid 测试
|
||
|
||
| 顺序 | slot | mask | 结果 |
|
||
|---|---|---|---|
|
||
| 1 | 7 | 8 | 8 |
|
||
| 2 | 7 | 16 | 16 |
|
||
| 3 | 11 | 16 | 0 |
|
||
| 4 | 11 | 4 | 0 |
|
||
| 5 | 7 | 4 | 4 |
|
||
|
||
### 必须保留的 probe 数据
|
||
|
||
保留入口 `states[0:11]` 的全部字段;此路径没有写已有物性条目。仅追加以下新条目,修改本 operation 的 pipe 槽;其余 pipe 槽保持 probe 值。
|
||
|
||
### 有序写入动作
|
||
|
||
| 顺序 | 目标 | 写入值 | 已知同值写入 |
|
||
|---|---|---|---|
|
||
| 1 | `context[0].count` | 12 | — |
|
||
| 2 | `states[11].*` | 完整 struct 清零(显式写入) | — |
|
||
| 3 | `states[11].medium` | 复制上述完整 medium | — |
|
||
| 4 | `states[11].p` | 100000.73403195803 | — |
|
||
| 5 | `states[11].T` | 293.15086386132788 | — |
|
||
| 6 | `states[11].valid` | 1 | — |
|
||
| 7 | `states[11].temperatures` | NULL | 是 |
|
||
| 8 | `states[11].jacobian` | 当前 context 的 Jacobian memo 指针 | — |
|
||
| 9 | `states[11].rho` | 0.16419111112032281 | — |
|
||
| 10 | `states[11].valid` | 5 | — |
|
||
| 11 | `states[11].isentropic_factor` | 0.59983509720368744 | — |
|
||
| 12 | `states[11].isentropic_exponent` | 0.4000169505487694 | — |
|
||
| 13 | `states[11].valid` | 21 | — |
|
||
| 14 | `pipes[28].valid` | 0 | 是 |
|
||
| 15 | `pipes[28].medium` | 复制上述完整 medium | — |
|
||
| 16 | `pipes[28].p1` | 141437.08341422619 | — |
|
||
| 17 | `pipes[28].p2` | 100000.73403195803 | — |
|
||
| 18 | `pipes[28].T` | 336.75814451285157 | — |
|
||
| 19 | `pipes[28].diameter` | 0.02 | — |
|
||
| 20 | `pipes[28].length` | 1 | — |
|
||
| 21 | `pipes[28].roughness` | 0.0022499999999999998 | — |
|
||
| 22 | `pipes[28].kind` | 1 | — |
|
||
| 23 | `pipes[28].flow` | 0.033351539732391834 | — |
|
||
| 24 | `pipes[28].valid` | 1 | — |
|
||
|
||
新条目分配分支均为 positive/finite key 且 `count < capacity`;每次在当前 count 追加,再 count++。未初始化槽的 struct 首次清零不计入“已知同值写入”。
|
||
|
||
### Fallback 原因
|
||
|
||
查询 key/首匹配逻辑条目不同、已消费字段或已测试 valid 位不同、容量不足转 scratch、observer 非空、pipe 命中分支改变,或无法建立无冲突的 slot 映射时,执行原 operation。此清单不授权放宽现有 guard。
|
||
|
||
## Jacobian 2,group 18,position 52
|
||
|
||
t=2.5903206074281044e-08;count 16 → 18;capacity=256;输出 `0.13649710784608116`;model evaluator 返回 `1`。
|
||
|
||
### 查询与首次匹配
|
||
|
||
| 顺序 | 类型 | 完整 key:p, T 或 h, R, cp, Tref, slope, mu, muT, S | medium kind | 首个匹配 slot | 扫描条数 |
|
||
|---|---|---|---|---|---|
|
||
| 1 | PH | `755686.80622119282, 1871284.0942772815, 2077.2643940499802, 5193.1609851249505, 293.14999999999998, 0, 1.9599999999999999e-05, 293.14999999999998, 79.400000000000006` | 1 | miss | 16 |
|
||
| 2 | PT | `755686.80622119282, 658.33729595925956, 2077.2643940499802, 5193.1609851249505, 293.14999999999998, 0, 1.9599999999999999e-05, 293.14999999999998, 79.400000000000006` | 1 | miss | 16 |
|
||
| 3 | PT | `755686.80622119282, 658.33729595925956, 2077.2643940499802, 5193.1609851249505, 293.14999999999998, 0, 1.9599999999999999e-05, 293.14999999999998, 79.400000000000006` | 1 | 16 | 17 |
|
||
| 4 | PT | `100004.87065313551, 293.15011545458538, 2077.2643940499802, 5193.1609851249505, 293.14999999999998, 0, 1.9599999999999999e-05, 293.14999999999998, 79.400000000000006` | 1 | miss | 17 |
|
||
|
||
### 实际选中后的字段读取
|
||
|
||
| 域 / slot | 字段 |
|
||
|---|---|
|
||
| pipes[28] | `valid` |
|
||
| states[16] | `T`, `isentropic_exponent`, `isentropic_factor`, `jacobian`, `medium`, `medium.R`, `medium.S`, `medium.Tref`, `medium.cp`, `medium.mu`, `medium.muT`, `medium.real_helium`, `medium.slope`, `mu`, `p`, `rho`, `temperatures` |
|
||
| states[17] | `T`, `isentropic_exponent`, `isentropic_factor`, `jacobian`, `medium.R`, `medium.S`, `medium.Tref`, `medium.cp`, `medium.mu`, `medium.muT`, `medium.real_helium`, `medium.slope`, `p`, `rho`, `temperatures` |
|
||
|
||
查询扫描另外按短路次序读取 `valid & PT/H`、`p`、`T/h`、medium;未匹配项的字段不等于被用于物性计算。
|
||
|
||
### 选中后的 valid 测试
|
||
|
||
| 顺序 | slot | mask | 结果 |
|
||
|---|---|---|---|
|
||
| 1 | 16 | 2 | 0 |
|
||
| 2 | 16 | 8 | 0 |
|
||
| 3 | 16 | 16 | 0 |
|
||
| 4 | 16 | 4 | 0 |
|
||
| 5 | 17 | 16 | 0 |
|
||
| 6 | 17 | 4 | 0 |
|
||
| 7 | 16 | 4 | 4 |
|
||
|
||
### 必须保留的 probe 数据
|
||
|
||
保留入口 `states[0:16]` 的全部字段;此路径没有写已有物性条目。仅追加以下新条目,修改本 operation 的 pipe 槽;其余 pipe 槽保持 probe 值。
|
||
|
||
### 有序写入动作
|
||
|
||
| 顺序 | 目标 | 写入值 | 已知同值写入 |
|
||
|---|---|---|---|
|
||
| 1 | `context[0].count` | 17 | — |
|
||
| 2 | `states[16].*` | 完整 struct 清零(显式写入) | — |
|
||
| 3 | `states[16].medium` | 复制上述完整 medium | — |
|
||
| 4 | `states[16].p` | 755686.80622119282 | — |
|
||
| 5 | `states[16].T` | 658.33729595925956 | — |
|
||
| 6 | `states[16].valid` | 1 | — |
|
||
| 7 | `states[16].temperatures` | NULL | 是 |
|
||
| 8 | `states[16].jacobian` | 当前 context 的 Jacobian memo 指针 | — |
|
||
| 9 | `states[16].h` | 1871284.0942772815 | — |
|
||
| 10 | `states[16].valid` | 3 | — |
|
||
| 11 | `states[16].mu` | 3.4336896373307344e-05 | — |
|
||
| 12 | `states[16].valid` | 11 | — |
|
||
| 13 | `states[16].rho` | 0.55213584825878159 | — |
|
||
| 14 | `states[16].valid` | 15 | — |
|
||
| 15 | `states[16].isentropic_factor` | 0.59936841974574895 | — |
|
||
| 16 | `states[16].isentropic_exponent` | 0.4000342868314512 | — |
|
||
| 17 | `states[16].valid` | 31 | — |
|
||
| 18 | `context[0].count` | 18 | — |
|
||
| 19 | `states[17].*` | 完整 struct 清零(显式写入) | — |
|
||
| 20 | `states[17].medium` | 复制上述完整 medium | — |
|
||
| 21 | `states[17].p` | 100004.87065313551 | — |
|
||
| 22 | `states[17].T` | 293.15011545458538 | — |
|
||
| 23 | `states[17].valid` | 1 | — |
|
||
| 24 | `states[17].temperatures` | NULL | 是 |
|
||
| 25 | `states[17].jacobian` | 当前 context 的 Jacobian memo 指针 | — |
|
||
| 26 | `states[17].rho` | 0.16419832110282509 | — |
|
||
| 27 | `states[17].valid` | 5 | — |
|
||
| 28 | `states[17].isentropic_factor` | 0.59983509001364188 | — |
|
||
| 29 | `states[17].isentropic_exponent` | 0.40001695130827536 | — |
|
||
| 30 | `states[17].valid` | 21 | — |
|
||
| 31 | `pipes[28].valid` | 0 | 是 |
|
||
| 32 | `pipes[28].medium` | 复制上述完整 medium | — |
|
||
| 33 | `pipes[28].p1` | 755686.80622119282 | — |
|
||
| 34 | `pipes[28].p2` | 100004.87065313551 | — |
|
||
| 35 | `pipes[28].T` | 658.33729595925956 | — |
|
||
| 36 | `pipes[28].diameter` | 0.02 | — |
|
||
| 37 | `pipes[28].length` | 1 | — |
|
||
| 38 | `pipes[28].roughness` | 0.0022499999999999998 | — |
|
||
| 39 | `pipes[28].kind` | 1 | — |
|
||
| 40 | `pipes[28].flow` | 0.13649710784608116 | — |
|
||
| 41 | `pipes[28].valid` | 1 | — |
|
||
|
||
新条目分配分支均为 positive/finite key 且 `count < capacity`;每次在当前 count 追加,再 count++。未初始化槽的 struct 首次清零不计入“已知同值写入”。
|
||
|
||
### Fallback 原因
|
||
|
||
查询 key/首匹配逻辑条目不同、已消费字段或已测试 valid 位不同、容量不足转 scratch、observer 非空、pipe 命中分支改变,或无法建立无冲突的 slot 映射时,执行原 operation。此清单不授权放宽现有 guard。
|
||
|
||
## Jacobian 200,group 6,position 16
|
||
|
||
t=0.37285444606381923;count 13 → 15;capacity=256;输出 `-3.34452871903457e-06`;model evaluator 返回 `1`。
|
||
|
||
### 查询与首次匹配
|
||
|
||
| 顺序 | 类型 | 完整 key:p, T 或 h, R, cp, Tref, slope, mu, muT, S | medium kind | 首个匹配 slot | 扫描条数 |
|
||
|---|---|---|---|---|---|
|
||
| 1 | PT | `15019678.822746754, 291.84964142606623, 2077.2643940499802, 5193.1609851249505, 293.14999999999998, 0, 1.9599999999999999e-05, 293.14999999999998, 79.400000000000006` | 1 | miss | 13 |
|
||
| 2 | PT | `15019662.638804033, 291.84951601402554, 2077.2643940499802, 5193.1609851249505, 293.14999999999998, 0, 1.9599999999999999e-05, 293.14999999999998, 79.400000000000006` | 1 | miss | 14 |
|
||
|
||
### 实际选中后的字段读取
|
||
|
||
| 域 / slot | 字段 |
|
||
|---|---|
|
||
| pipes[0] | `valid` |
|
||
| states[13] | `T`, `isentropic_exponent`, `isentropic_factor`, `jacobian`, `medium`, `medium.R`, `medium.S`, `medium.Tref`, `medium.cp`, `medium.mu`, `medium.muT`, `medium.real_helium`, `medium.slope`, `mu`, `p`, `rho`, `temperatures` |
|
||
| states[14] | `T`, `isentropic_exponent`, `isentropic_factor`, `jacobian`, `medium.R`, `medium.S`, `medium.Tref`, `medium.cp`, `medium.mu`, `medium.muT`, `medium.real_helium`, `medium.slope`, `p`, `rho`, `temperatures` |
|
||
|
||
查询扫描另外按短路次序读取 `valid & PT/H`、`p`、`T/h`、medium;未匹配项的字段不等于被用于物性计算。
|
||
|
||
### 选中后的 valid 测试
|
||
|
||
| 顺序 | slot | mask | 结果 |
|
||
|---|---|---|---|
|
||
| 1 | 13 | 8 | 0 |
|
||
| 2 | 13 | 16 | 0 |
|
||
| 3 | 13 | 4 | 0 |
|
||
| 4 | 14 | 16 | 0 |
|
||
| 5 | 14 | 4 | 0 |
|
||
| 6 | 13 | 4 | 4 |
|
||
|
||
### 必须保留的 probe 数据
|
||
|
||
保留入口 `states[0:13]` 的全部字段;此路径没有写已有物性条目。仅追加以下新条目,修改本 operation 的 pipe 槽;其余 pipe 槽保持 probe 值。
|
||
|
||
### 有序写入动作
|
||
|
||
| 顺序 | 目标 | 写入值 | 已知同值写入 |
|
||
|---|---|---|---|
|
||
| 1 | `context[0].count` | 14 | — |
|
||
| 2 | `states[13].*` | 完整 struct 清零(显式写入) | — |
|
||
| 3 | `states[13].medium` | 复制上述完整 medium | — |
|
||
| 4 | `states[13].p` | 15019678.822746754 | — |
|
||
| 5 | `states[13].T` | 291.84964142606623 | — |
|
||
| 6 | `states[13].valid` | 1 | — |
|
||
| 7 | `states[13].temperatures` | NULL | 是 |
|
||
| 8 | `states[13].jacobian` | 当前 context 的 Jacobian memo 指针 | — |
|
||
| 9 | `states[13].mu` | 1.9556955415450165e-05 | — |
|
||
| 10 | `states[13].valid` | 9 | — |
|
||
| 11 | `states[13].rho` | 23.797175883728954 | — |
|
||
| 12 | `states[13].valid` | 13 | — |
|
||
| 13 | `states[13].isentropic_factor` | 0.5638664372147334 | — |
|
||
| 14 | `states[13].isentropic_exponent` | 0.39880100414729064 | — |
|
||
| 15 | `states[13].valid` | 29 | — |
|
||
| 16 | `context[0].count` | 15 | — |
|
||
| 17 | `states[14].*` | 完整 struct 清零(显式写入) | — |
|
||
| 18 | `states[14].medium` | 复制上述完整 medium | — |
|
||
| 19 | `states[14].p` | 15019662.638804033 | — |
|
||
| 20 | `states[14].T` | 291.84951601402554 | — |
|
||
| 21 | `states[14].valid` | 1 | — |
|
||
| 22 | `states[14].temperatures` | NULL | 是 |
|
||
| 23 | `states[14].jacobian` | 当前 context 的 Jacobian memo 指针 | — |
|
||
| 24 | `states[14].rho` | 23.797161425154815 | — |
|
||
| 25 | `states[14].valid` | 5 | — |
|
||
| 26 | `states[14].isentropic_factor` | 0.56386646597889145 | — |
|
||
| 27 | `states[14].isentropic_exponent` | 0.39880100666377111 | — |
|
||
| 28 | `states[14].valid` | 21 | — |
|
||
| 29 | `pipes[0].valid` | 0 | 是 |
|
||
| 30 | `pipes[0].medium` | 复制上述完整 medium | — |
|
||
| 31 | `pipes[0].p1` | 15019662.638804033 | — |
|
||
| 32 | `pipes[0].p2` | 15019678.822746754 | — |
|
||
| 33 | `pipes[0].T` | 291.84964142606623 | — |
|
||
| 34 | `pipes[0].diameter` | 0.014 | — |
|
||
| 35 | `pipes[0].length` | 1 | — |
|
||
| 36 | `pipes[0].roughness` | 0.0032142857142857142 | — |
|
||
| 37 | `pipes[0].kind` | 1 | — |
|
||
| 38 | `pipes[0].flow` | -3.34452871903457e-06 | — |
|
||
| 39 | `pipes[0].valid` | 1 | — |
|
||
|
||
新条目分配分支均为 positive/finite key 且 `count < capacity`;每次在当前 count 追加,再 count++。未初始化槽的 struct 首次清零不计入“已知同值写入”。
|
||
|
||
### Fallback 原因
|
||
|
||
查询 key/首匹配逻辑条目不同、已消费字段或已测试 valid 位不同、容量不足转 scratch、observer 非空、pipe 命中分支改变,或无法建立无冲突的 slot 映射时,执行原 operation。此清单不授权放宽现有 guard。
|
||
|
||
## Jacobian 200,group 18,position 52
|
||
|
||
t=0.37285444606381923;count 75 → 77;capacity=256;输出 `-1.4080633385291488e-06`;model evaluator 返回 `1`。
|
||
|
||
### 查询与首次匹配
|
||
|
||
| 顺序 | 类型 | 完整 key:p, T 或 h, R, cp, Tref, slope, mu, muT, S | medium kind | 首个匹配 slot | 扫描条数 |
|
||
|---|---|---|---|---|---|
|
||
| 1 | PT | `15019625.056587901, 529.09774891777454, 2077.2643940499802, 5193.1609851249505, 293.14999999999998, 0, 1.9599999999999999e-05, 293.14999999999998, 79.400000000000006` | 1 | miss | 75 |
|
||
| 2 | PT | `15019613.376778807, 529.09758439456209, 2077.2643940499802, 5193.1609851249505, 293.14999999999998, 0, 1.9599999999999999e-05, 293.14999999999998, 79.400000000000006` | 1 | miss | 76 |
|
||
|
||
### 实际选中后的字段读取
|
||
|
||
| 域 / slot | 字段 |
|
||
|---|---|
|
||
| pipes[28] | `valid` |
|
||
| states[75] | `T`, `isentropic_exponent`, `isentropic_factor`, `jacobian`, `medium`, `medium.R`, `medium.S`, `medium.Tref`, `medium.cp`, `medium.mu`, `medium.muT`, `medium.real_helium`, `medium.slope`, `mu`, `p`, `rho`, `temperatures` |
|
||
| states[76] | `T`, `isentropic_exponent`, `isentropic_factor`, `jacobian`, `medium.R`, `medium.S`, `medium.Tref`, `medium.cp`, `medium.mu`, `medium.muT`, `medium.real_helium`, `medium.slope`, `p`, `rho`, `temperatures` |
|
||
|
||
查询扫描另外按短路次序读取 `valid & PT/H`、`p`、`T/h`、medium;未匹配项的字段不等于被用于物性计算。
|
||
|
||
### 选中后的 valid 测试
|
||
|
||
| 顺序 | slot | mask | 结果 |
|
||
|---|---|---|---|
|
||
| 1 | 75 | 8 | 0 |
|
||
| 2 | 75 | 16 | 0 |
|
||
| 3 | 75 | 4 | 0 |
|
||
| 4 | 76 | 16 | 0 |
|
||
| 5 | 76 | 4 | 0 |
|
||
| 6 | 75 | 4 | 4 |
|
||
|
||
### 必须保留的 probe 数据
|
||
|
||
保留入口 `states[0:75]` 的全部字段;此路径没有写已有物性条目。仅追加以下新条目,修改本 operation 的 pipe 槽;其余 pipe 槽保持 probe 值。
|
||
|
||
### 有序写入动作
|
||
|
||
| 顺序 | 目标 | 写入值 | 已知同值写入 |
|
||
|---|---|---|---|
|
||
| 1 | `context[0].count` | 76 | — |
|
||
| 2 | `states[75].*` | 完整 struct 清零(显式写入) | — |
|
||
| 3 | `states[75].medium` | 复制上述完整 medium | — |
|
||
| 4 | `states[75].p` | 15019625.056587901 | — |
|
||
| 5 | `states[75].T` | 529.09774891777454 | — |
|
||
| 6 | `states[75].valid` | 1 | — |
|
||
| 7 | `states[75].temperatures` | NULL | 是 |
|
||
| 8 | `states[75].jacobian` | 当前 context 的 Jacobian memo 指针 | — |
|
||
| 9 | `states[75].mu` | 2.9451615911502958e-05 | — |
|
||
| 10 | `states[75].valid` | 9 | — |
|
||
| 11 | `states[75].rho` | 13.352686365896215 | — |
|
||
| 12 | `states[75].valid` | 13 | — |
|
||
| 13 | `states[75].isentropic_factor` | 0.58140881158784896 | — |
|
||
| 14 | `states[75].isentropic_exponent` | 0.39986603165187307 | — |
|
||
| 15 | `states[75].valid` | 29 | — |
|
||
| 16 | `context[0].count` | 77 | — |
|
||
| 17 | `states[76].*` | 完整 struct 清零(显式写入) | — |
|
||
| 18 | `states[76].medium` | 复制上述完整 medium | — |
|
||
| 19 | `states[76].p` | 15019613.376778807 | — |
|
||
| 20 | `states[76].T` | 529.09758439456209 | — |
|
||
| 21 | `states[76].valid` | 1 | — |
|
||
| 22 | `states[76].temperatures` | NULL | 是 |
|
||
| 23 | `states[76].jacobian` | 当前 context 的 Jacobian memo 指针 | — |
|
||
| 24 | `states[76].rho` | 13.35268032881546 | — |
|
||
| 25 | `states[76].valid` | 5 | — |
|
||
| 26 | `states[76].isentropic_factor` | 0.58140882193020493 | — |
|
||
| 27 | `states[76].isentropic_exponent` | 0.39986603223234823 | — |
|
||
| 28 | `states[76].valid` | 21 | — |
|
||
| 29 | `pipes[28].valid` | 0 | 是 |
|
||
| 30 | `pipes[28].medium` | 复制上述完整 medium | — |
|
||
| 31 | `pipes[28].p1` | 15019613.376778807 | — |
|
||
| 32 | `pipes[28].p2` | 15019625.056587901 | — |
|
||
| 33 | `pipes[28].T` | 529.09774891777454 | — |
|
||
| 34 | `pipes[28].diameter` | 0.02 | — |
|
||
| 35 | `pipes[28].length` | 1 | — |
|
||
| 36 | `pipes[28].roughness` | 0.0022499999999999998 | — |
|
||
| 37 | `pipes[28].kind` | 1 | — |
|
||
| 38 | `pipes[28].flow` | -1.4080633385291488e-06 | — |
|
||
| 39 | `pipes[28].valid` | 1 | — |
|
||
|
||
新条目分配分支均为 positive/finite key 且 `count < capacity`;每次在当前 count 追加,再 count++。未初始化槽的 struct 首次清零不计入“已知同值写入”。
|
||
|
||
### Fallback 原因
|
||
|
||
查询 key/首匹配逻辑条目不同、已消费字段或已测试 valid 位不同、容量不足转 scratch、observer 非空、pipe 命中分支改变,或无法建立无冲突的 slot 映射时,执行原 operation。此清单不授权放宽现有 guard。
|