Skip to content

fix(kim): align collisionless ion response with FP#224

Merged
marjohma merged 1 commit into
mainfrom
fix/collisionless-response-factors
Jul 14, 2026
Merged

fix(kim): align collisionless ion response with FP#224
marjohma merged 1 commit into
mainfrom
fix/collisionless-response-factors

Conversation

@marjohma

Copy link
Copy Markdown
Member

Summary

  • add the collisionless-ion response path while retaining the Fokker--Planck electron response
  • use a causal complex pole and consistent collisionless susceptibility prefactors
  • make collisionless tapering and m_phi handling consistent with the FP assembly
  • apply the local F0 term to every pair of overlapping hat functions, abs(l-lp) <= 1
  • add ion-only FP collision-frequency scaling and kernel diagnostics
  • add focused collisionless prefactor and assembly regression tests

Root cause

The collisionless charge assembly evaluated the local Debye/polarization F0
contribution only for l == lp. Linear finite-element basis functions also
overlap for nearest neighbours, so the first off-diagonal entries were omitted.
Those missing entries produced the approximately 1.6 amplitude discrepancy in
the ion-only m=7 potential even though the FP susceptibilities were already
close to their collisionless limits.

Result

After restoring the FP overlap condition, the ion-only m=7 peak-amplitude
ratio is 1.000, with a relative profile L2 difference of 10.2%. For m=6,
close to E_r=0, the peak-amplitude ratio is 1.021 and the relative L2
difference is 28.8%.

Validation

  • KIM executable builds on the latest main
  • collisionless prefactor and assembly tests pass
  • KIM diagnostics and sparse-solver tests pass
  • 38 Python benchmark tests pass
  • ion-only FP and collisionless m=6/m=7 cases were rerun successfully

@marjohma
marjohma force-pushed the fix/collisionless-response-factors branch from 2478174 to ddd7413 Compare July 14, 2026 14:07
@marjohma
marjohma merged commit 2722090 into main Jul 14, 2026
3 checks passed
@marjohma
marjohma deleted the fix/collisionless-response-factors branch July 14, 2026 14:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant