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 solves a bug we found in the diagnostics:
In rare occasions (since commit 5d4bb74, but not on the commit before), the beam IO would show undefined behaviour in parallel runs. Although in the print statement in
SaveRealProperty
showed the correct values, the openPMD file had NaNs or 0s in there.This was presumably caused by altering the data before it was flushed. Before #453, beam and field data were dumped together at the end of the step. Now, the beam is written to file before the plasma loop. However, there was still only one flushing to file at the end of the time step (so after the beam was altered).
This is fixed in this PR and the bug does not appear anymore.
Using the following input script, the bug may be reproduced (reproducible with GCC, but not with Clang):
const
isconst
)