Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multipole boundary data #291

Merged
merged 13 commits into from
Jan 11, 2025
Merged

Multipole boundary data #291

merged 13 commits into from
Jan 11, 2025

Conversation

mrhardman
Copy link
Collaborator

@mrhardman mrhardman commented Nov 8, 2024

Option to calculate boundary data from a multipole expansion. Effective, fast, and accurate if velocity domain is large enough. Further testing likely required. The option permits the collision operator to run at very large resolutions, by avoiding the need to compute integration weights, but the actual speedup of the simulation at runtime appears to be small for the examples tested. A potentially useful feature for future work.

Now featuring three (enum) options for calculating the boundary data:

  • boundary_data_option = "direct_integration". The classic option
  • boundary_data_option = "multipole_expansion". Boundary data computed from a direct multipole expansion of the definition of the Rosenbluth potentials, up to 8th order in the expansion.
  • boundary_data_option = "delta_f_multipole". A variation on "multipole_expansion" where the multipole is only used for the Non-Maxwellian part of the distribution function, and the exact analytical results are used for the Maxwellian piece. Slightly slower than "multipole_expansion", but likely to perform better on grids with smaller vpa.L and vperp.L when the solution is closer to Maxwellian.

These features are tested in fokker_planck_tests.jl. Further simulations are required to test the performance of these features.

@mrhardman mrhardman requested a review from johnomotani November 8, 2024 17:18
@mrhardman mrhardman marked this pull request as draft November 9, 2024 19:02
…tions for the calculation of the Rosenbluth potentials.
…he exact results for the Rosenbluth potentials for the Maxwellian piece of F, and multipole for the rest. Tests extended to this option. Rename boundary_data -> boundary_data_option to make internal code easier to follow.
…tion across cores in delta_f_multipole option.
@mrhardman mrhardman marked this pull request as ready for review November 14, 2024 11:31
…tate of code. Unclear how examples/fokker_planck/ tests passed with variables out of namespace, now corrected.
@mrhardman mrhardman mentioned this pull request Jan 2, 2025
@johnomotani johnomotani merged commit 372e71b into master Jan 11, 2025
21 checks passed
@johnomotani johnomotani deleted the multipole-boundary-data branch January 11, 2025 12:56
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.

2 participants