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
{{ message }}
Repository navigation
InnerLayer.SLAYER - Build P_perp from D_perp by default, not chi_perp_e #508
The InnerLayer (IL) SLAYER model builds the perpendicular Prandtl number from the electron perpendicular heat diffusivity, P_⊥ = τ_R χ⊥,e / r_s² (src/InnerLayer/SLAYER/LayerParameters.jl, tau_perp = rs^2 / chi_perp; chi_perp is fed from the kinetic-file chi_e profile in src/Tearing/Runner/run_slayer.jl). In the Fitzpatrick layer formulation P_⊥ = τ_R / τ_⊥ is set by the perpendicular diffusivity D⊥, which combines c_β, η, χ⊥,e, χ⊥,i and the n, T gradients (Fitzpatrick, Phys. Plasmas 29, 032507 (2022), Eq. 16). χ⊥,e alone is not that quantity, so every SLAYER growth rate and frequency is computed with the wrong P_⊥.
Proposed change
#501 adds [SLAYER] P_perp_model and implements the D_perp closure, but keeps chi_perp_e as the default so that it moves no results. Once #501 merges:
make P_perp_model = "D_perp" the default;
keep chi_perp_e selectable for comparison with earlier results, documented as not the physical P_⊥;
keep chi_perp_e setting the critical-Δ dc_tmp, which is unaffected.
Who is affected
Every SLAYER run that does not set P_perp_model explicitly. SLAYER P_perp, Q_root, ω, and γ will move, including the diiid_slayer_n1 regression case, so the PR carries !. The D_perp closure needs a chi_i profile, which #501 adds to the kinetic HDF5 schema and to the DIII-D-like example kinetic file; the fallback when chi_i is absent should be decided in the PR.
#501 now makes D_perp the default itself (commit e5c67bb; the example deck and SLAYERControl default both read D_perp, and the harness keeps diiid_slayer_n1_chi_perp_e as the old-model baseline), so the follow-up PR this issue describes is no longer needed. Close with #501.
Activity
logan-nc commentedon Oct 27, 2026
#501 now makes
D_perpthe default itself (commit e5c67bb; the example deck andSLAYERControldefault both readD_perp, and the harness keepsdiiid_slayer_n1_chi_perp_eas the old-model baseline), so the follow-up PR this issue describes is no longer needed. Close with #501.