diff --git a/src/ForceFreeStates/Surfaces/Resist.jl b/src/ForceFreeStates/Surfaces/Resist.jl index ecfbcd0f8..fd4a4b46a 100644 --- a/src/ForceFreeStates/Surfaces/Resist.jl +++ b/src/ForceFreeStates/Surfaces/Resist.jl @@ -94,6 +94,8 @@ function resist_eval(sing::SingType, equil::Equilibrium.PlasmaEquilibrium, ff[itheta, 6] = dpsisq / bsq @views ff[itheta, :] .*= jac / v1 end + # Snap the repeated endpoint exactly equal to the start + @views ff[end, :] .= ff[1, :] itp = cubic_interp(equil.rzphi_ys, Series(ff); bc=PeriodicBC()) avg = FastInterpolations.integrate(itp) diff --git a/src/ForceFreeStates/Surfaces/ResistEval.jl b/src/ForceFreeStates/Surfaces/ResistEval.jl index 04953b6c0..09bd6dd80 100644 --- a/src/ForceFreeStates/Surfaces/ResistEval.jl +++ b/src/ForceFreeStates/Surfaces/ResistEval.jl @@ -165,6 +165,8 @@ function resist_geometry(equil::Equilibrium.PlasmaEquilibrium, ff[itheta, 7] = B_here @views ff[itheta, :] .*= jac / v1 end + # Snap the repeated endpoint exactly equal to the start + @views ff[end, :] .= ff[1, :] # Integrate each column around θ using the same periodic cubic-spline # integrator Mercier.jl uses