Mesh refinement: enable longitudinal refinement#565
Closed
SeverinDiederichs wants to merge 14 commits into
Closed
Conversation
… grid in SortBeamParticlesPerSlice
15 tasks
9 tasks
9 tasks
Member
Author
|
outdated by #574 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR enables longitudinal refinement for the refined level.
This is done in the following way:
The beam is binned per level. In the loop over the slices of the coarse grid, a sub-loop over the refined grid is done. For a refinement ratio of 4, 4 slices are calculated.
Additionally, in the
InterpolateBoundaries, the correct longitudinal index is used in the coarse grid. This enables parallel runs.This PR is tested in a parallel run in vacuum.
Additionally, I tested it with in a combined version with #561 and 564 in the blowout/ion motion case. However, the longitudinal refinement produces small step like ripples.

This was resolved by using a linear interpolation longitudinally. The fields
Psi, Ez, Bzare also shifted to thePrevious1slice.Bx, Bywere already available. Then, a linear interpolation between the previous and the current slice is used. The ripples disappear:constisconst)