Follow-up to #281, which fixed the GAR precession normalization. The git archaeology done for that review shows the clar RLAR bounce-average branch has a defect with the same root cause, and makes the correction factors precise.
Origin
In PENT (pent/profile.f, 2013-2015), the pitch variable was dimensional: vpar = 1 - lmda*b, so lmda carried units of 1/Tesla. The CLAR formulas were consistent with that convention:
wbbar = pi*SQRT(2*epsr*lmda*bo)/(4*q*ro*ellipk) ! lmda*bo dimensionless
wdbar = (2*q*lmda*(E/K - 0.5)/(ro**2*epsr))*wdfac ! lmda ~ 1/bo scale
bhat = SQRT(2*T/mass)
dhat = T/chrg
Both wbbar*bhat and wdbar*dhat are true frequencies under lmda ~ 1/T.
In the PENT->PENTRC rewrite (da0e6067, June 2015), the pitch became dimensionless: vpar = 1 - (lmda/bo)*b, i.e. Lambda = lmda_pent*bo. The clar formulas were carried over textually verbatim (pentrc/torque.F90:447-451). Substituting lmda_pent = Lambda/bo:
kappa maps exactly (PENT's kk = (1/bo - lmda(1-eps))/(2*eps*lmda) becomes PENTRC's kk = (1 - lmda(1-eps))/(2*eps*lmda)), so the trapped-space geometry is correct, but
wbbar retains a spurious sqrt(bo): SQRT(2*epsr*lmda*bo) should be SQRT(2*epsr*lmda)
wdbar retains a spurious bo: the denominator should be bo*ro**2*epsr
So clar currently reports omega_b inflated by sqrt(bo) (~1.4-2.3x) and omega_D inflated by bo (~2-5.3x). The fs(:,3) action channel also scales with the inflated wbbar.
What this does NOT affect
Verification status
This is an analytic + historical claim; it has not yet been checked against an independent reference operator the way #281 was. Prediction for anyone re-running #281's slope-vs-reference measurement on the clar branch: slope magnitude sqrt(bo) for omega_b and bo for omega_D before the fix, ~1 after. Noted in #281 as "the reduced-large-aspect-ratio branch has its own dimensional oddities"; this issue pins down the factors and their origin.
Fix PR incoming.
Follow-up to #281, which fixed the GAR precession normalization. The git archaeology done for that review shows the
clarRLAR bounce-average branch has a defect with the same root cause, and makes the correction factors precise.Origin
In PENT (
pent/profile.f, 2013-2015), the pitch variable was dimensional:vpar = 1 - lmda*b, solmdacarried units of 1/Tesla. The CLAR formulas were consistent with that convention:Both
wbbar*bhatandwdbar*dhatare true frequencies underlmda ~ 1/T.In the PENT->PENTRC rewrite (
da0e6067, June 2015), the pitch became dimensionless:vpar = 1 - (lmda/bo)*b, i.e.Lambda = lmda_pent*bo. Theclarformulas were carried over textually verbatim (pentrc/torque.F90:447-451). Substitutinglmda_pent = Lambda/bo:kappamaps exactly (PENT'skk = (1/bo - lmda(1-eps))/(2*eps*lmda)becomes PENTRC'skk = (1 - lmda(1-eps))/(2*eps*lmda)), so the trapped-space geometry is correct, butwbbarretains a spurioussqrt(bo):SQRT(2*epsr*lmda*bo)should beSQRT(2*epsr*lmda)wdbarretains a spuriousbo: the denominator should bebo*ro**2*epsrSo
clarcurrently reportsomega_binflated bysqrt(bo)(~1.4-2.3x) andomega_Dinflated bybo(~2-5.3x). Thefs(:,3)action channel also scales with the inflatedwbbar.What this does NOT affect
rlarmethod's flux-surface estimators (wbhat/wdhat,torque.F90:335-336) are built fromwtran/wgyroand are dimensionally sound — PENTRC: omega_D in the GAR branch carries a spurious major radius #281 usedwdhatas its sanity check.Verification status
This is an analytic + historical claim; it has not yet been checked against an independent reference operator the way #281 was. Prediction for anyone re-running #281's slope-vs-reference measurement on the
clarbranch: slope magnitudesqrt(bo)foromega_bandboforomega_Dbefore the fix, ~1 after. Noted in #281 as "the reduced-large-aspect-ratio branch has its own dimensional oddities"; this issue pins down the factors and their origin.Fix PR incoming.