Files
CelerisLab/research/j3-offline-2026-10-12/REVIEW.md
T

69 lines
6.1 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.
# J3 已存轨迹的 CPU 空间/奇偶分析
2026-10-12。运行前固定定义;只读输入为`research/j3-lag-2026-10-12/trajectory.h5`,SHA256 `2b51f8ec5e0cc8ca72c73ac1b51dd611158368e6d6de791d85150fa111ea1986`。已有numpy 1.26.4、h5py 3.15.1,matplotlib可发现;不安装依赖、不导入CelerisLab/run_j1/pycuda、不初始化CUDA、不增加求解轨迹。只新增独立脚本、本目录小输出和一张图,原数据/checkpoint/报告/生产文件只读。
## 固定统计定义
输入521帧,绝对step=20760..21280;每帧1584节点,x=0..47、y=1..33。u/v各约6.30MiB,逐组件统计,CPU峰值内存控制远低于1GiB。不复制轨迹或写逐步全场;速度尺度固定.002。
1. lag2/4/8合法起点为n=0..520−L,分别519/517/513个。逐起点计算完整空间分量RMS,再对起点取算术均值;最大绝对差取所有起点/节点最大值;同时记录带符号空间均值的起点均值和/.002归一结果。沿用原lag1/16/519定义,仅诊断,不改验收。
2. 偶/奇按绝对step分组,ne=261、no=260。每节点delta=mean_even−mean_odd。报告每区delta空间RMS、最大绝对值、带符号空间均值。总方差var=mean_t((a−mean_all)^2),分母521;奇偶组间解释方差B=(ne/521)*(no/521)*delta²,等价于按实际帧数加权的两组均值偏差平方。区内解释比例为sum(B)/sum(var),不用不平衡的简单半半权重,不假设独立随机样本。
3. 固定区域:bottom y=1(48点)、top y=33(48点)、interior y=2..32(1488点),三者构成不交叠全域;另列top4 y=30..33(192点),作为重叠补充而非第四个分区。每区分量RMS=sqrt(mean_region(var));波动能量份额=sum_region(var)/sum_all(var);集中度=份额/节点比例;另报区域奇偶解释比例。
4. 比较delta的空间有符号均值与RMS,均匀空间分量占delta能量比例为mean(delta)²/mean(delta²)。同时给内部和边界数值;不能将空间平均抵消解释成没有局部波动。
5. 一张4panel图:u/v每节点时间波动RMS和u/v奇偶delta,坐标为上述格点位置,标出物理top/bottom、底slot及top4范围,颜色单位明确。仅输出小JSON/CSV/报告/原始CPU日志和图,不写新的全场序列。
分析前已核对输入SHA、形状及step范围。原J3归一5e−5稳态门槛失败保持,不能选择偶数lag改判;本轮只量化空间集中度/奇偶结构并给下一轮最小功能建议,不继续推导或追加诊断。
## 完成结果
CPU 分析退出码 0,新增求解步数 0;峰值 RSS 112.63 MiB。脚本末尾检查输入 SHA 未变,且未导入 CelerisLab、run_j1 或 pycuda。本次仅增加独立分析脚本和本目录输出,没有修改生产代码或旧报告。绘图缓存分析后删除。
| lag | 合法起点数 | u 平均空间 RMS 差 | v 平均空间 RMS 差 |
| --- | ---: | ---: | ---: |
| 2 | 519 | 2.649281e-8 | 3.051287e-8 |
| 4 | 517 | 3.455162e-8 | 3.931383e-8 |
| 8 | 513 | 4.079962e-8 | 4.646402e-8 |
下面能量指时间波动方差之和,不是流动总动能;集中度以均匀分布为 1。
| 分量/区域 | 节点比例 | 时间波动 RMS | 波动能量份额 | 集中度 | 区内奇偶解释比例 |
| --- | ---: | ---: | ---: | ---: | ---: |
| u 全域 | 100% | 3.364553e-8 | 100% | 1.000 | 18.9417% |
| u 底行 | 3.0303% | 3.283614e-9 | 0.0289% | 0.010 | 0.1648% |
| u 顶行 | 3.0303% | 3.297410e-9 | 0.0291% | 0.010 | 2.0618% |
| u 内部 | 93.9394% | 3.470384e-8 | 99.9420% | 1.064 | 18.9520% |
| u 顶部四行 | 12.1212% | 2.603805e-8 | 7.2595% | 0.599 | 7.8382% |
| v 全域 | 100% | 7.375266e-8 | 100% | 1.000 | 75.6536% |
| v 底行 | 3.0303% | 5.133726e-9 | 0.0147% | 0.005 | 0.1861% |
| v 顶行 | 3.0303% | 1.365301e-7 | 10.3845% | 3.427 | 59.0306% |
| v 内部 | 93.9394% | 7.202938e-8 | 89.6008% | 0.954 | 77.5926% |
| v 顶部四行 | 12.1212% | 1.146411e-7 | 29.2867% | 2.416 | 73.8537% |
顶部四行与内部、顶行重叠,不能与其他行相加。完整精度、带符号均值、最大差和归一值保留在 results.json、lags.csv、regions.csv。
v 的奇偶差空间均值为 2.494708e-9,空间 RMS 为 1.282990e-7;均匀空间分量仅占奇偶差能量的 0.03781%。u 对应比例为 0.00004371%。图中可见延伸到内部的交替空间结构,v 顶部较集中,但内部仍贡献大部分波动能量。这些结果说明奇偶步关联明显,不能据此认定随机噪声、FP32 平台或唯一成因。
![时间波动和奇偶差定位](localization.png)
## 实际建议与停止点
全域 v 时间波动 RMS 为喷口幅值 0.002 的 0.00369%。在当前小网格、正幅值案例和这段短窗口内,量级较小,初步判断可用于 Jet 形态演示;这不构成长时间载荷、精度、AMR 或稳态验收证据。原归一 5e-5 稳态门槛仍失败,不以偶数 lag 更小为由改判。
建议下一轮依次补以下最小验证,本轮均未执行:
1. 真实 checkpoint 短续跑一致性:从现有保存点比较连续运行与保存/加载后续跑 8–16 步的状态;不重放前 20760 步。已有无推进恢复检查不足以替代此项。
2. 零幅值对照:按原有有界判据检查静止态、伪速度和质量,确认无喷流驱动时的行为。
3. 负幅值:同案例、原判据验证反向流动及边界行为。
本轮至此停止,不追加轨迹、频谱诊断或理论推导。
## 可复核运行记录
工作目录 /home/frank14f/CelerisLab;实际命令如下,仅设置当前进程环境:
```bash
env PYTHONPATH=/home/frank14f/CelerisLab/src PYTHONDONTWRITEBYTECODE=1 MPLCONFIGDIR=/home/frank14f/CelerisLab/research/j3-offline-2026-10-12/.plot-cache /home/frank14f/anaconda3/envs/pycuda_3_10/bin/python tests/validation/analyze_j3_saved_frames.py > research/j3-offline-2026-10-12/cpu-analysis.log 2>&1
```
脚本为 tests/validation/analyze_j3_saved_frames.py;为了保护已存结果,发现 results.json 存在时会拒绝重跑。原始日志保留在 cpu-analysis.log。输入 SHA256 为本文开头值,脚本 SHA256 为 `438f67dac682b94c4950626f8de4fdcde48c3a4e9ecf8fdf1b0ada4b6e0e781a`,图 SHA256 为 `a72907638e32b0ecfc2205bea438e7b408f40aad86217ce6ad9b4877840c9cfc`。