Skip to content

Commit 720f015

Browse files
logan-ncclaude
andcommitted
FFS - EXPERIMENT - Verify Delta-prime and wall time for PR #398
The original PR evidence used forward-integrator cases, which emit no BVP Delta-prime at all, so route (a) had never been checked against the observable that section 19 showed can break silently. Ran diiid_n1_riccati and gal_resistive_diiid. Tearing-consumed quantities are unchanged: PEST3 Delta diagonal 0.01%, Delta-prime matrix norm 0.03%, inner-layer Delta 0.00%. The headline 16.73% on the raw BVP diagonal is a single element (q=5) that runs 1e5 -> -1319 -> -2369 and changes sign across the mpsi ladder on BOTH versions, so it cannot discriminate between them. Records that route (a) does not improve Delta-prime convergence either, flagging the unconverged q=5 element as a pre-existing issue worth its own investigation. Wall time improves on all three cases. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
1 parent 6146ac7 commit 720f015

1 file changed

Lines changed: 41 additions & 0 deletions

File tree

handoff/issue376/RESULTS.md

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -846,6 +846,47 @@ was different in kind — it *was* confirmed by wall clock (harness runtime 202
846846
**Corollary for future work**: step count is not a proxy for cost here, and et[1] is not a proxy for
847847
correctness. Any deep-core optimisation must be judged on wall time **and** Δ′.
848848

849+
## 20. Δ′ and wall time for PR #398 (the check that was missing)
850+
851+
The §17 evidence used `diiid_n1`/`solovev_n1`, which run `integrator = "forward"` and therefore
852+
**emit no BVP Δ′ matrix at all** — so route (a) had never been checked against Δ′, the observable
853+
that §19 showed can break while et[1] looks fine. Closed with the dedicated cases.
854+
855+
`diiid_n1_riccati`: Δ′ BVP diagonal **16.73%**, raw side-major 2.35%, delta_coil 1.26%, et[1] 0.10%,
856+
singular surfaces/psi/q unchanged, ODE steps 1649 → 1358, runtime 202.5 → 192.8 s.
857+
858+
`gal_resistive_diiid` — what the tearing/matching path actually consumes:
859+
860+
| quantity | diff |
861+
|---|---|
862+
| gal PEST3 Δ diagonal | **0.01%** |
863+
| ‖gal Δ′ matrix‖ | **0.03%** |
864+
| gal D_I / α per surface | 0.00% |
865+
| ‖gal inner-layer Δ‖ | 0.00% |
866+
| ‖gal Δ_coil block‖ | 0.80% |
867+
| ‖gal match cout‖ | 1.38% |
868+
869+
**The 16.73% is one element.** Δ′ BVP diagonal across an mpsi ladder on the riccati deck:
870+
871+
| mpsi | develop | route (a) |
872+
|---|---|---|
873+
| 256 | [9.7, −1.9, −13.1, **103024**, 336.0] | [9.7, −1.9, −13.1, **102768**, 336.1] |
874+
| 512 | [7.2, −5.2, −16.6, **−1319.5**, 61.4] | [7.2, −5.2, −16.6, **−1293.2**, 61.5] |
875+
| 1024 | [8.6, −5.5, −16.1, **−2368.8**, 55.1] | [8.6, −5.5, −16.1, **−2368.0**, 55.6] |
876+
| drift vs prev mpsi | 174% → 79.5% | 174.7% → 83.1% |
877+
878+
The 4th entry (q=5) runs 1e5 → −1319 → −2369 and **changes sign — it is not converged in mpsi on
879+
either version**, so it cannot discriminate between them. The other four entries agree between
880+
versions at every grid; full-diagonal agreement is 0.25% / 2.0% / 0.03% at mpsi 256 / 512 / 1024.
881+
882+
**Route (a) does not improve Δ′ convergence either** (174.7%/83.1% vs 174.0%/79.5%). The unconverged
883+
q=5 Δ′ element is pre-existing, is arguably more concerning than anything in #398, and deserves its
884+
own investigation — it means BVP Δ′ at that surface is not trustworthy at these resolutions today.
885+
886+
Wall time improves on every case: forward `diiid_n1` 210.6 → 184.5 s, `diiid_n1_riccati`
887+
202.5 → 192.8 s, `gal_resistive_diiid` 216.8 → 213.6 s. (Earlier a single identical "Runtime" row
888+
appeared in both case reports — that was an aggregate; these are per-case and differ.)
889+
849890
## Implications / ranked follow-ups
850891

851892
1. **Use the two-pass auto grid** (`mpsi=0`, `psi_accuracy`) — already the example default; it

0 commit comments

Comments
 (0)