[hvpic-k-devel] Dump infrastructure for (almost) all fields#123
Merged
nphtan merged 27 commits intoMay 28, 2026
Conversation
for half-dt push, only need E field stencils
Non-NGP shape accumulates into ghosts; copy local BC ghosts into adjacent live cells (no reflection implemented yet, to match old CPU Hybrid-VPIC)
Send accumulated current/rho in ghosts to remote edges Using Nigel's GPU-aware MPI interface, but no halo exchange yet
Used in vpic/initialize.cc
…shock test decks to match new requirements.
…d with new members.
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 modifies dump infrastructure to handle all fields, using 64-bit masks, excepting struct-pad variables + vestigial material_id fields.
WARNING: this is a breaking change, user's translate scripts and decks may need to be updated with following two edits:
Order of output fields has changed in binary dumps. User may need to modify translate scripts to skip over cbx0,cby0,cbz0,te0 fields, as done in commit 896784c. Why was change made? In
src/vpic/dump_strategy.h, the list offlag_keysis re-ordered to exactly match field_t struct layout, for sanity's sake (less mental overhead when reading or debugging relevant code). I don't see any good reason, other than conservatism, for the prior ordering of dumped fields inflag_keys)Change
char varlist[512]tochar varlist[1024]in user decks, when requestingallorallvarsorallfieldsdump, to accommodate a much longer list of descriptive field names. User will get segfaults otherwise.