Vignesh Gopakumar
  • Home
  • Research
  • Talks
  • Blog

Claims register

Every number quoted anywhere in this log has a row here, and pages show it from this register, so it cannot drift between pages. Claims are never deleted: a wrong one is marked retracted and kept, with a link to the erratum.

Status:

  • tested: asserted by a named test in the suite at the stated commit
  • measured: from a recorded run or study at the stated commit
  • preliminary: measured, with a caveat named in the row
  • reviewed: passed a human review gate
  • superseded: replaced by a newer claim
  • retracted: wrong; see the errata

tested claims are checked by the test suite, which is run in full, and again with every UKAEA-gated code disabled, before each publish. The code is in a private repository whose continuous-integration results are not part of this log, so a claim is tested at its stated commit, not re-checked automatically between publishes. reviewed claims passed the M1 physicist review (1 Oct 2026), which the owner did as reviewer of record; the gate and the tolerances it set are on the decisions page.

ID Claim Value Status Evidence Commit
C-001 Toy Tier A scenario runs 100 coupled steps under jit
exact; profiles finite and positive, edge condition respected
100 steps tested tests/regression/test_toy_loop.py::test_100_steps_under_jit 79285af
C-002 Final fixed-point residual per step, toy scenario, relaxed Picard iteration
order of magnitude; 6 iterations at relaxation 0.7
3 × 10-5 measured solver comparison, entry 01
tkit run configs/scenarios/toy.yaml with loop.solver=picard
91d4e55
C-003 Final fixed-point residual per step, toy scenario, Newton-Raphson with line search
order of magnitude; 4 iterations; test asserts < 1e-9
10-14 tested tests/regression/test_toy_loop.py::test_newton_converges_quadratically 91d4e55
C-004 Cost of Newton relative to Picard per run, toy scenario, 100 steps on CPU
8.8 s vs 0.04 s; dominated by the dense 150x150 Jacobian (ceiling K-002)
200× slower measured solver comparison, entry 01 91d4e55
C-005 Final residual on the stiff toy settings where Picard stalls (Picard 2e-2, Newton 3e-11)
Picard stalls at 2e-2 and is reported, not hidden
3 × 10-11 tested tests/regression/test_toy_loop.py::test_newton_converges_where_picard_stalls 91d4e55
C-006 Agreement between the fixed-step scan over the transport code's step function and that code's own driver, same configuration
test asserts < 1e-10
10-13 tested tests/regression/test_torax_loop.py::test_scan_matches_torax_driver 61aa774
C-007 Stored ITER hybrid ramp-up reference reproduced by the fixed-step loop at the reference's own 2 s step
test asserts < 1e-10
10-14 tested tests/regression/test_torax_loop.py::test_rampup_reference_steps_reproduced 61aa774
C-008 Reverse-mode gradient of stored energy through three coupled transport steps, checked against central finite differences
forward and reverse mode agree to 1e-9
10-6 tested tests/diff/test_torax_gradients.py::test_grad_through_torax_steps_fd_checked 61aa774
C-009 Stored thermal energy from the converted profiles versus the transport code's own value, ITER hybrid (impurity pressure included)
test asserts 1e-10 at every output time
10-16 tested tests/regression/test_torax_backend.py::test_stored_energy_identity 3ae5531
C-010 Total heating power from the converted sources versus the transport code's own value
test tolerance; agreement observed to 5 significant figures
better than 10−8 tested tests/regression/test_torax_backend.py::test_heating_power_identity 3ae5531
C-011 Effect on stored energy at t = 80 s of removing the non-converged steps in the ITER hybrid ramp-up by lowering the line-search floor (53.998 vs 53.999 MJ)
6 non-converged steps at dt = 0.5 s become 0; residual tolerance unchanged
2 × 10−5 relative measured line-search study, entry 05 ae294c9
C-012 Core electron temperature difference between 1 s and 0.25 s fixed steps at t = 2 s of the ITER hybrid ramp-up (initial transient; falls to 0.4% by t = 80 s)
first-order convergence in dt
18% measured time-convergence study, entry 03 61aa774
C-013 Departure of the published adaptive-step ITER hybrid flat-top reference from the dt -> 0 answer at t = 2 s
5% at t = 5 s; reference steps up to 0.42 s
Caveat: the benchmark tolerance and whether to compare at the published or a converged step are still open (decision pending)
34% preliminary time-convergence study, entry 03 61aa774
C-014 Guarded transport with an always-open guard reproduces the unwrapped neural transport model
bit-identical on T_e and n_e over 8 steps; fallback fraction 0
bit-identical tested tests/regression/test_torax_guard.py::test_open_guard_reproduces_plain_qlknn_exactly 26f89fb
C-015 Guarded transport with an always-closed guard reproduces the pure fallback model
fallback fraction 1
10-12 tested tests/regression/test_torax_guard.py::test_empty_guard_equals_pure_fallback 26f89fb
C-016 Error introduced by wrapping the neural transport model before the post-processing defaults were carried to the wrapper (a bug, since fixed)
cause: a radial smoothing width injected by the model's own configuration validator
5% measured identity check, entry 04 26f89fb
C-017 Absorbed power of the analytic Gaussian radio-frequency heating model versus the requested power
deposition and driven current peak within one grid cell of the requested radius
10-6 tested tests/physics/test_rf_deposition.py::test_absorbed_power_equals_request ae294c9
C-018 Plasma current of the MAST-U-like free-boundary equilibrium versus the requested 620 kA
magnetic axis at R = 0.99 m, Z = -0.05 m
10-3 tested tests/physics/test_freegsnke_mastu.py::test_solve_reproduces_requested_plasma 8dc8425
C-019 Free-boundary solver convergence for the MAST-U-like diverted plasma
26 of 100 allowed iterations; about 43 s on one CPU
4 × 10-10 measured MAST-U forward solve, entry 06 8dc8425
C-020 Integral of dV/drho over the MAST-U-like equilibrium recovers the enclosed volume
test asserts 2%; area reconstruction ceiling K-004
2% tested tests/physics/test_freegsnke_mastu.py::test_ids_is_complete_and_valid 8dc8425
C-021 Toroidal-flux radius versus geometric minor radius for the MAST-U-like equilibrium (0.83 m vs 0.55 m), which must not be conflated on a spherical tokamak
ordering asserted by test
a factor of 1.52 tested tests/physics/test_freegsnke_mastu.py::test_adapter_round_trip_and_resampling 8dc8425
C-022 Error in the outermost flux-surface area when reconstructed by counting grid cells inside the surface, for a diverted plasma (why the volume-based formula is used instead)
2% agreement at mid-radius
32% measured area reconstruction check, entry 06 8dc8425
C-023 Wall-clock time to simulate 80 s of the ITER hybrid ramp-up on one datacentre GPU, after compilation
90 s wall time in total, of which about 70 s is one-off compilation; reference run reproduces bit for bit
under 4 s measured reference generation, entry 02 3ae5531
C-024 IMAS round trip (data structure -> IDS -> data structure) preserves values and coordinates for the equilibrium, core_profiles, core_transport and core_sources records, including a netCDF file round trip
test asserts rtol 1e-14; each IDS also passes the Data Dictionary's validate()
10-14 tested tests/unit/test_adapters_roundtrip.py dfc01a7
C-025 Toy scenario, 100 coupled steps, wall time once compiled on one datacentre GPU (M0, relaxed Picard iteration)
2.5 s including compilation
0.4 s measured M0 report
tkit run configs/scenarios/toy.yaml
79285af
C-026 Single-step particle and energy balance of the implicit transport solve (change in content equals integrated source minus edge loss)
test tolerance
10-10 tested tests/conservation/test_balance.py::test_particle_balance_single_step, ::test_energy_balance_single_step dfc01a7
C-027 Per-step particle and energy balance reconstructed from the recorded trace of a full coupled run, whether or not the nonlinear iteration converged
test tolerance; holds because of the corrector solve
10-9 tested tests/conservation/test_balance.py::test_loop_balance_exact_from_trace dfc01a7
C-028 Reverse-mode gradient of stored energy with respect to heating power and transport stiffness through 20 coupled toy steps, checked against central finite differences
forward and reverse mode agree to 1e-9
2 × 10-5 tested tests/diff/test_gradients.py::test_grad_finite_and_fd_checked dfc01a7
C-029 Tests passing at the close of M0, run in full and again with every gated code disabled
same 42 in both modes; lint and type checks clean
42 tests measured M0 report 79285af
C-030 Toroidal-flux radius at the boundary versus geometric minor radius, ITER hybrid reference runs (2.747 m vs 2.000 m)
read from the stored reference runs
a factor of 1.37 measured ITER hybrid reference runs (rho_b and a_minor outputs) 3ae5531
C-031 ASCOT5 smoke test, analytic ITER field at R = 7 m versus the vacuum 1/R value from 5.3 T at 6.2 m
confirms the compiled library loads, builds inputs and evaluates fields
2% tested tests/unit/test_external_codes.py::test_ascot5_library ae294c9
C-032 Normalised electron temperature gradient R/L_Te at rho = 0.26 on the ITER hybrid ramp-up at t = 80 s, the Tokamak Toolkit's feature convention versus QLKNN's (6.80 vs 5.73); at rho = 0.90 the two are 16.89 vs 25.22 (-33%)
rho = 0.50: 7.76 vs 7.26; rho = 0.74: 9.03 vs 10.47
+19% measured feature-convention comparison on the stored ITER hybrid ramp-up reference, 2026-09-30 8dc8425
C-033 Exported boundary flux radius versus the source code's own value, for TORAX (ITER hybrid, 2.746910 m; minor radius 2.0 m) and FreeGSNKE (MAST-U-like, 0.83 m; minor radius 0.55 m), after the K-007 fix
test tolerance, both codes
10-12 tested tests/regression/test_torax_backend.py::test_equilibrium_export_matches_torax_flux_radius, tests/physics/test_freegsnke_mastu.py::test_equilibrium_export_matches_source_flux_radius 6b0845c
C-034 Shortfall in stored thermal energy computed from the converted profiles before the impurity ions' pressure was included, ITER hybrid
consistent across output times; falls to C-009 once impurity pressure is added
0.3% low measured conversion check, entry 2 3ae5531
C-035 Per-step global energy balance of TORAX's discrete equations, rebuilt from TORAX's own coefficients, ITER hybrid ramp-up benchmark at its reference settings (Newton, 2 s steps); relative residual = |residual| / (|storage| + |edge| + |sources| + |pinning|)
test bound on fine-tolerance steps (8 steps); measured over the full 80 s (40 steps): max 1.2e-7, median 2e-10; 8e-5 on the 3 steps where Newton reached only its coarse tolerance
better than 10-6 tested tests/conservation/test_torax_balance.py::test_rampup_benchmark_balance fb5a0b5
C-036 Per-step global particle (electron) balance, same reconstruction and runs as C-035
test bound; measured max 1.4e-11 over the 80 s ramp-up, 7e-12 on the flat-top
better than 10-10 tested tests/conservation/test_torax_balance.py::test_rampup_benchmark_balance, ::test_newton_step_conserves_energy_and_particles fb5a0b5
C-037 Share of the per-step energy balance left unaccounted for by the flat-top reference's solver (linear, one predictor-corrector step), ITER hybrid flat-top, 0.05 s steps, median of the first 6 steps; five corrector steps reduce it to 0.09%
per step 0.6-2.1%; test asserts 0.1-5% and a reduction by more than 5x with five corrector steps
about 0.8% tested tests/conservation/test_torax_balance.py::test_linear_predictor_corrector_energy_defect_is_coefficient_lag fb5a0b5
C-038 Share of the heating power removed by the pedestal model's adaptive pinning source, ITER hybrid ramp-up, every step from t = 4 s to 80 s (20.6 of 23.5 MW at t = 80 s); the power conducted through the last closed flux surface is 1.5-10% of the heating over the same steps
range over 39 steps; test asserts more than 50% on 7 steps
87–98% reviewed run_balance over the 80 s ramp-up (40 fixed 2 s steps), 2026-09-30; bound in tests/conservation/test_torax_balance.py::test_rampup_benchmark_balance fb5a0b5
C-039 Edge term of the rebuilt TORAX balance versus the flux through the last face computed separately from the face gradient, all four evolving channels
test tolerance; measured agreement about 1e-14
10-10 tested tests/conservation/test_torax_balance.py::test_edge_term_is_the_last_face_flux fb5a0b5
C-040 Per-step metric records received by the tracking server's client, toy scenario of 100 steps run end to end through the command line with the Simvue mirror in offline mode (no network); the local record holds the same 100, one per step, stamped with the simulation time
exact
100 of 100 steps tested tests/regression/test_cli_tracking.py::test_run_with_simvue_offline, ::test_run_logs_every_step e8e1d6f
C-041 Share of the heating power conducted out through the last closed flux surface (the balance's edge term), ITER hybrid ramp-up, every step from t = 4 s to 80 s (2.3 of 23.5 MW at t = 80 s); the rest of the C-038 balance is the change in stored energy (0.1-2.9%)
range over 39 steps
1.5–10% measured run_balance over the 80 s ramp-up (40 fixed 2 s steps), 2026-09-30 fb5a0b5
C-042 ASCOT5's D-T alpha birth rate (AFSI, thermal reactants) on TORAX's profiles over TORAX's own birth rate (P_alpha / 3.5 MeV), ITER hybrid flat-top at t = 5 s
AFSI Monte Carlo, 1600 samples per cell; the test asserts 2% with 400 samples
1.002 tested tests/physics/test_ascot_alpha.py::test_afsi_birth_rate_matches_torax; job 2257707 d81df2d
C-043 Share of alpha markers lost across the separatrix before slowing down, 640 markers, guiding-centre orbit tolerance (ADAPTIVE_TOL_ORBIT) 1e-5 versus 1e-6, same markers
113 and 4 of 640 markers
18% at 10-5, 0.6% at 10-6 measured cluster job 2257707, runs CHECK_TOL_PROD and CHECK_TOL_TIGHT d81df2d
C-044 Alpha heating of ions computed by ASCOT5 at orbit tolerance 1e-5 versus 1e-6, same 640 markers, ITER hybrid flat-top at t = 5 s
Monte Carlo, 640 markers
13.2 MW at 10-5, 25.0 MW at 10-6 (TORAX: 24.8 MW) measured cluster job 2257707, runs CHECK_TOL_PROD and CHECK_TOL_TIGHT d81df2d
C-045 Total alpha heating on TORAX's cells, ASCOT5 (640 markers, tolerance 1e-6) versus TORAX's local alpha model, ITER hybrid flat-top at t = 5 s; electron fraction 0.649 in both
+4.4%: +0.7% alpha energy (3.52 vs 3.5 MeV) and birth-rate noise, about +2% from the deposition moments over-closing the energy books, +1.6% from interpolation onto TORAX's cells; preliminary (640 markers, tolerance convergence not shown, OQ-11)
Superseded by C-059
73.6 MW vs 70.5 MW superseded job 2257707 run CHECK_TOL_TIGHT; tkit ascot-apply apply_summary.json ac911c3
C-046 Stored thermal energy after continuing TORAX from t = 5 s to 7 s with the ASCOT5 alpha profiles held fixed, relative to TORAX's own t = 5 s alpha profiles held fixed
T_e profile 0.3%, T_i 0.6% (relative L2); ASCOT5 profiles from 640 markers
-0.005% measured tkit ascot-apply on job 2257707 CHECK_TOL_TIGHT, duration 2 s ac911c3
C-047 Effect of holding the alpha heating fixed for 2 s (TORAX's own t = 5 s profiles) instead of evolving it with TORAX's local model, on stored thermal energy at t = 7 s; the local model's alpha power rises from 70.5 to 77.5 MW over those 2 s
single run
-0.3% (central T_e -1.0%) reviewed tkit ascot-apply, restart_frozen vs restart_local ac911c3
C-048 NRMSD between the paper's TORAX and RAPTOR curves, recomputed from the curves read out of the vector paths of Fig. 6 of the TORAX paper (arXiv:2406.06718v4), against the value printed in each panel (T_i, T_e, n_e, psi, q)
to the printed precision; axes calibrated from tick marks to 6e-5 of the axis range
all five printed values reproduced (1.102, 0.712, 0.026, 0.414, 0.701% vs 1.1, 0.71, 0.03, 0.41, 0.70%) tested tests/regression/test_raptor_benchmark.py::test_extracted_curves_reproduce_the_printed_nrmsd 1d64c0c
C-049 Agreement between the Tokamak Toolkit's fixed-step scan over TORAX's step function and TORAX's own driver on the RAPTOR L-mode benchmark (200 steps of 0.05 s; T_e, T_i, n_e, psi; relative L2, max over output times)
agreed tolerance 1e-10 (OQ-5); same at dt = 0.025, 0.0125, 0.00625 s
better than 10-13 measured tkit benchmark-raptor --dt 0.05 (runs/raptor/dt0.05.json)
python -m tkit.cli benchmark-raptor --dt 0.05 --balance
1d64c0c
C-050 NRMSD of the Tokamak Toolkit's run (TORAX 1.4.3, published settings) against RAPTOR at t = 10 s, ITER L-mode benchmark of the TORAX paper, for T_i, T_e, n_e, psi, q; the paper's own TORAX run against RAPTOR in brackets
M1 acceptance gate (physicist review, OQ-5, 1 Oct 2026): <= 2% for T_i, T_e, psi, q and <= 0.1% for n_e, n_i; extraction error below 0.01 percentage points (C-048)
T_i 1.23% (1.1%), T_e 0.28% (0.71%), n_e 0.03% (0.03%), psi 0.49% (0.41%), q 0.69% (0.70%) reviewed tests/regression/test_raptor_benchmark.py::test_published_settings_pass_the_m1_acceptance_gate 1d64c0c
C-051 NRMSD of the Tokamak Toolkit's run (TORAX 1.4.3) against the paper's own TORAX run at t = 10 s, same case and settings, i.e. the change between TORAX versions plus the config translation
regression test bound 0.6% on the six profiles
T_i 0.13%, T_e 0.50%, n_e 0.01%, psi 0.08%, q 0.16%; Ohmic power density 3.6% reviewed tests/regression/test_raptor_benchmark.py::test_published_settings_against_fig6 1d64c0c
C-052 Change in the t = 10 s NRMSD against RAPTOR (T_i, T_e, n_e, psi, q) between the published time step 0.05 s and 0.00625 s (three halvings, no non-converged steps)
first-order convergence; t = 10 s is close to stationary
at most 0.006 percentage points measured tkit benchmark-raptor --dt 0.05, 0.025, 0.0125, 0.00625 (runs/raptor/dt*.json) 1d64c0c
C-053 Largest relative deviation of the line-averaged ion temperature from RAPTOR's during the transient (at t = 0.2 s), at the published time step 0.05 s and at 0.00625 s; the paper reports a maximum transient deviation of about 2.5% for its TORAX run
M1 acceptance gate on the line-averaged traces: <= 5% (physicist review, OQ-5, 1 Oct 2026); the paper's TORAX run used dt = 0.05 s; the Tokamak Toolkit at 0.05 s follows it to 0.14%
2.4% at dt = 0.05 s, 2.9% at dt = 0.00625 s (1.0% at t = 10 s) reviewed tkit benchmark-raptor (runs/raptor/dt0.05.json, dt0.00625.json) df8ee7d
C-054 Per-step global energy and particle balance on the RAPTOR L-mode benchmark at its published settings (Newton, 5 corrector steps, dt = 0.05 s), every one of 200 steps converged
agreed 1e-6 per converged step (OQ-5); test covers 20 steps, run covers 200
energy 1.1 × 10-7, particles 3 × 10-13 tested tests/conservation/test_torax_balance.py::test_raptor_lmode_benchmark_balance 1d64c0c
C-055 Reverse-mode gradient of stored energy with respect to the initial electron temperature through three Newton-solved TORAX steps of the RAPTOR L-mode benchmark, against central finite differences
test asserts 1e-7; forward mode equals it since 8aa70ee (C-062, K-009 lifted)
6 × 10-9 tested tests/diff/test_torax_gradients.py::test_grad_through_newton_benchmark_steps_fd_checked df8ee7d
C-056 NRMSD of the ion density against the paper's TORAX run at t = 10 s with TORAX 1.4's temperature-dependent neon charge (8.1 at the edge) versus neon fixed at Z = 10 as in the paper's Table II
single runs
0.35% with the computed charge, 0.009% with Z = 10 measured TORAX driver on configs/benchmarks/raptor_lmode with and without impurity Z_override 1d64c0c
C-057 Alpha markers of the 6400-marker production run (orbit tolerance 1e-6, second cluster job) stopped by ASCOT5's per-marker time cap of 600 s while still energetic, and the share of the birth power left in them; ASCOT5 charges each marker the wall time of its whole vectorised batch, so the cap did not mean CPU time per marker
exact count; the run's profiles are discarded
2823 of 6400 markers, 18% of the birth power measured cluster job 2286956, run PROD, end condition CPUMAX d7318f7
C-058 Share of the alpha birth power deposited to ions, ASCOT5 orbit tolerance 1e-6 versus 1e-7 (two complete 640-marker runs from separate jobs, different marker samples), ITER hybrid flat-top at t = 5 s; the electron share is 0.660 versus 0.661, and deposited plus lost power exceeds the birth power by 2.2% versus 0.4%
640 markers per run; Monte Carlo noise not measured separately
0.348 at 10-6, 0.331 at 10-7 reviewed job 2257707 CHECK_TOL_TIGHT (1e-6) and job 2286956 CHECK_TOL_TIGHT (1e-7) c8eaf6e
C-059 Total alpha heating on TORAX's cells, ASCOT5 (640 markers, tolerance 1e-7, all markers finished) versus TORAX's local alpha model, ITER hybrid flat-top at t = 5 s; electron fraction 0.667 versus 0.649
+2.4%, equal to the markers' birth power excess over TORAX's alpha power, of which 1.0% is explained (AFSI rate +0.4%, 3.52 vs 3.5 MeV +0.6%) and 1.4% is not; radial shape not resolved by 640 markers (heating centroid 0.376 vs 0.355 at 1e-6, TORAX 0.362)
Superseded by C-064
72.2 MW vs 70.5 MW reviewed job 2286956 CHECK_TOL_TIGHT; tkit ascot-profiles + ascot-apply (apply_tol1e-7) c8eaf6e
C-060 Effect on TORAX of the ASCOT5 alpha heating (tolerance 1e-7, 640 markers) held fixed from t = 5 s to 7 s, against TORAX's own t = 5 s alpha profiles held fixed, ITER hybrid flat-top; stored thermal energy, with central T_e and the temperature profiles
single run
Superseded by C-067
+0.03% in stored energy (central T_e +0.5%, T_e and T_i profiles 0.6%) reviewed tkit ascot-apply on job 2286956 CHECK_TOL_TIGHT, duration 2 s c8eaf6e
C-061 M1 acceptance tolerance against RAPTOR on the published ITER L-mode case, set at the M1 physicist review; NRMSD of the t = 10 s profiles (T_i, T_e, psi, q; densities), and the maximum relative deviation of the line-averaged T_e, T_i, n_e traces over 0-10 s; fusion and Ohmic powers reported, not gated
a limit, not a measurement: owner as physicist reviewer, OQ-5, 1 Oct 2026
profiles ≤ 2% (densities ≤ 0.1%), traces ≤ 5% reviewed tkit.physics.raptor_benchmark.ACCEPTANCE; tests/regression/test_raptor_benchmark.py::test_published_settings_pass_the_m1_acceptance_gate 023d5db
C-062 Forward-mode (jacfwd) versus reverse-mode gradient of stored energy with respect to the initial electron temperature through three Newton-solved TORAX steps of the RAPTOR L-mode benchmark, with tkit's value-preserving patch to TORAX's trapped-particle fraction (before it, forward mode returned NaN); stored energy with and without the patch identical to the last bit
test asserts 1e-12
2 × 10-15 (NaN before the fix) tested tests/diff/test_torax_gradients.py::test_forward_mode_through_newton_matches_reverse 8aa70ee
C-063 Weighted mean birth energy of the ASCOT5 alpha markers (6400 markers, third cluster job), drawn from AFSI's birth distribution for the ITER hybrid flat-top at t = 5 s, against the 3.52 MeV used for the expected birth power; the marker weights sum to AFSI's birth rate exactly, so this ratio is the whole of the markers' birth-power excess (K-011)
±0.004 MeV (standard error of the mean over 6400 markers); the 640-marker samples give 3.565-3.586 MeV, which is why earlier jobs put the excess at 1.3-1.4%
3.573 MeV, 1.5% above 3.52 MeV measured cluster job 2287778, run PROD; tkit ascot-profiles prints the mean
python -m tkit.cli ascot-profiles alpha_t5.h5 data/reference/iterhybrid_predictor_corrector.nc --run PROD --out prod.npz
fcd8ce5
C-064 Total alpha heating on TORAX's cells, ASCOT5 production run (6400 markers, orbit tolerance 1e-7, all markers finished) versus TORAX's local alpha model, ITER hybrid flat-top at t = 5 s; electron fraction 0.664 versus 0.649
+1.8%. Birth power is 2.5% above TORAX's alpha power, fully accounted for: AFSI rate +0.4%, 3.52 vs 3.5 MeV +0.6%, mean birth energy above 3.52 MeV +1.5% (C-063). Then losses -0.7%, thermalised markers -0.8%, energy books +0.6%, interpolation onto TORAX's cells +0.2%
71.8 MW vs 70.5 MW measured job 2287778 PROD; tkit ascot-apply (apply_prod)
python -m tkit.cli ascot-apply alpha_t5.npz data/reference/iterhybrid_predictor_corrector.nc --duration 2 --out apply_prod
fcd8ce5
C-065 Radial position of the alpha heating on TORAX's cells, ASCOT5 production run versus TORAX's local model, ITER hybrid flat-top at t = 5 s; power-weighted mean radius and the radius inside which half the power is deposited (normalised toroidal flux radius)
the three 640-marker samples give centroids 0.371-0.376 and half-power radii 0.329-0.343, outside TORAX's in every sample; inside rho_tor_norm 0.3 the profile is not resolved cell by cell (K-012)
centroid 0.370 vs 0.362, half-power radius 0.331 vs 0.325 measured job 2287778 PROD and CHECK_TOL_*, job 2286956 CHECK_TOL_TIGHT; tkit ascot-apply heating summary
python blog/figures/make_ascot_alpha_profile.py JOBDIR PREVJOBDIR
fcd8ce5
C-066 Change in alpha heating from tightening the ASCOT5 orbit tolerance from 1e-7 to 1e-8, the same 640 markers, ITER hybrid flat-top at t = 5 s; electron and ion heating
single pair of runs; lost markers 5 vs 6. Energy books 1.0049 at 1e-7 and 1.0057 at 1e-8: the remaining 0.5% overshoot does not shrink with the tolerance
electrons -0.16%, ions +0.08% measured cluster job 2287778, runs CHECK_TOL_PROD (1e-7) and CHECK_TOL_TIGHT (1e-8) fcd8ce5
C-067 Effect on TORAX of the ASCOT5 production alpha heating (6400 markers, tolerance 1e-7) held fixed from t = 5 s to 7 s, against TORAX's own t = 5 s alpha profiles held fixed, ITER hybrid flat-top; stored thermal energy, with central T_e and the temperature profiles
single run
-0.009% in stored energy (central T_e +0.3%, T_e and T_i profiles 0.4% and 0.5%) measured tkit ascot-apply on job 2287778 PROD, duration 2 s
python -m tkit.cli ascot-apply alpha_t5.npz data/reference/iterhybrid_predictor_corrector.nc --duration 2 --out apply_prod
2138b3c
C-068 Cost of one TGLF case (SAT2, both magnetic-field perturbations, three species) on inputs drawn from the M2 MAST-U and ITER sampling spaces, one AMD EPYC core per case
512 cases, single job; the 256-worker dataset jobs measured 3.3 s per case (C-074)
2.2-2.5 s per case alone, 2.6 s median in a 64-worker pool; about 700 core-hours per 10^6 cases measured cluster job 2293936 (OQ-14), scripts/oq14_tglf_timing.py
python scripts/oq14_tglf_timing.py
3fb1fe2
C-069 Install checks of the GACODE build (commit f34a9dd) on the cluster's CPU nodes; TGLF and CGYRO regression suites, TORAX's in-process TGLF wrapper and TORAX's TGLF transport-model tests
each suite's own tolerances
TGLF 9/9 regression cases; tglf2py wrapper 11/11; TORAX TGLF transport-model tests 3/3; CGYRO 21/21 measured login-node builds 2026-10-02 and cluster job 2293936 (OQ-14) 3fb1fe2
C-070 TGLF as TORAX's transport model on TORAX's iterhybrid_predictor_corrector case, TORAX 1.4.3 with the upstream TGLF patch, legacy TGLF defaults, no transport radial domain
single run
fails at the first step: NaN fluxes on the axis face, about 10^6 gyro-Bohm units on the edge face (K-015) measured cluster job 2293936 (OQ-14), scripts/oq14_torax_tglf.py 3fb1fe2
C-071 TGLF dataset tglf-mastu-v1, 10^5 Latin-hypercube points of the approved MAST-U region (sampling space version 2) under the alpha_MHD cap; cases that TGLF completed with finite fluxes
exact count
100000 of 100000 cases completed, all six fluxes finite measured cluster job 2300218; dataset sha256 104e3015...; Simvue run tglf-dataset-mastu, tag dataset-m2-tglf-mastu-v1
python -m tkit.datasets.tglf_dataset mastu --n 100000 --workers 256
887245e
C-072 TGLF dataset tglf-iter-v1, 10^5 Latin-hypercube points of the approved ITER region (sampling space version 2) under the alpha_MHD cap; cases that TGLF completed with finite fluxes
exact count
100000 of 100000 cases completed, all six fluxes finite measured cluster job 2300314; dataset sha256 3f6ee151...; Simvue run tglf-dataset-iter, tag dataset-m2-tglf-iter-v1
python -m tkit.datasets.tglf_dataset iter --n 100000 --workers 256
887245e
C-073 Fraction of Latin-hypercube draws kept under the fixed alpha_MHD cap (MAST-U 4, ITER 2), and what the cap does to the kept q and beta_e
exact for these datasets
MAST-U 0.490 kept (220936 drawn), ITER 0.425 (258597 drawn); kept mean beta_e 23-25% below the box mean on both; kept median q 1.90 (MAST-U) and 1.73 (ITER, sampled log-uniform over 1.02-11.1) measured dataset metadata (sampling) and inputs of C-071, C-072 887245e
C-074 Cost of generating each 10^5-case TGLF dataset on one 256-core CPU node
two jobs
91.6 core-h (MAST-U) and 92.4 core-h (ITER); 3.3 s per case mean; 35 min wall per job measured per-case wall times stored in C-071, C-072; jobs 2300218, 2300314 887245e
C-075 Fraction of dataset cases whose total heat flux Q_e + Q_i exceeds 10^4 gyro-Bohm units (TGLF's normalisation)
exact for these datasets; not yet explained (K-019)
MAST-U 0.283 above 104 and 0.122 above 105; ITER 0.097 above 104 and 0.0065 above 105 preliminary outputs of C-071, C-072 887245e
C-076 Fraction of each dataset's points whose geometry input lies inside the 1st-99th percentile envelope of the same input measured on the equilibria's flux surfaces, per input
exact for these datasets; per-input table in tglf_domain.csv
MAST-U 0.72 (triangularity) to 0.94 (q); ITER 0.63 (q) to 0.94 (triangularity shear) measured blog/figures/make_tglf_domain.py on C-071, C-072
python blog/figures/make_tglf_domain.py
887245e

© Copyright 2026 Vignesh Gopakumar

 
 
Code and first draft by Claude (Anthropic), working to a brief by Vignesh Gopakumar, who reviewed and approved this page. How this is built · Tokamak Toolkit home