You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PR #100 cut RABE over to the merged libneo boozer_sub. To keep the golden record valid with no logic change, libneo restored the splined sqrt_g_ss output gated on use_B_r (itpplasma/libneo#335), and compute_nabla_s reads that splined value, as before.
The more accurate alternative
nabla_s = |grad s| can be computed directly from the VMEC metric at the Boozer->VMEC back-mapped angles, bypassing the field3d spline interpolation of sqrt_g_ss:
All three calls are public in libneo boozer_sub / spline_vmec_sub. This drops a spline-interpolation layer, so it is strictly closer to the true metric.
Difference and tradeoff
At the golden grid (grid_refinement=6, multharm=6) the splined and direct values differ by ~1.5e-6 — the exact uniform drift seen on Use libneo boozer_sub; drop rabe local converter #100, since every output carries the dr_dAtheta proportional to 1/nabla_s prefactor.
At coarse grids the gap is larger (~1e-2 at multharm=3).
Cost: a boozer_to_vmec Newton solve per nabla_s evaluation.
Context
PR #100 cut RABE over to the merged libneo
boozer_sub. To keep the golden record valid with no logic change, libneo restored the splinedsqrt_g_ssoutput gated onuse_B_r(itpplasma/libneo#335), andcompute_nabla_sreads that splined value, as before.The more accurate alternative
nabla_s = |grad s|can be computed directly from the VMEC metric at the Boozer->VMEC back-mapped angles, bypassing thefield3dspline interpolation ofsqrt_g_ss:All three calls are public in libneo
boozer_sub/spline_vmec_sub. This drops a spline-interpolation layer, so it is strictly closer to the true metric.Difference and tradeoff
grid_refinement=6, multharm=6) the splined and direct values differ by ~1.5e-6 — the exact uniform drift seen on Use libneo boozer_sub; drop rabe local converter #100, since every output carries thedr_dAtheta proportional to 1/nabla_sprefactor.boozer_to_vmecNewton solve pernabla_sevaluation.Action when adopted
compute_nabla_swith the direct-metric path (already prototyped on Use libneo boozer_sub; drop rabe local converter #100 history).make golden_update) on the pinned nix toolchain — outputs shift by ~1.5e-6.sqrt_g_ssconsumer, the gated restore can be dropped fromboozer_sub.