-
Notifications
You must be signed in to change notification settings - Fork 29
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
Ext: MeshRefinement #252
base: upcoming-2.0.0
Are you sure you want to change the base?
Ext: MeshRefinement #252
Conversation
I see two major issues with the current state of mesh refinement:
|
Potential directions for HDF5 support of MR in openPMD: |
This is clearly motivated specifically with a patch-based refinement strategy in mind, and as such probably works very well. However, I would like to point out that this structure would seem quite alien to other refined mesh approaches (tree-based or individuall-cell-based ones). Deliberately grouping mesh data by refinement level does not come natural to them! Sorry about this nonproductive comment, as I do not have a suggestion for a suitable, more general approach. There certainly is merit in the proposal as it is specified here, but you might want to adapt a more specific name ("PatchBasedMeshRefinement"), as to not encumber future applications with different approaches. |
Adds a simple convention for mesh refinement.
Description
This adds a naming convention to efficiently identify levels of a refined mesh.
Affected Components
base
(cosmetic)EXT: MeshRefinement
Logic Changes
Adds a naming convention through record suffixes for meshes that can be used to identify refined meshes.
Allows two ways to store a refined mesh: through one record per refinement level (e.g. for ADIOS) or through one record per refinement level and patch (for non-contiguous refinements).
Writer Changes
A writer can suffix the meshes to express levels.
openPMD-api
: https://github.com/openPMD/openPMD-apiWarpX
: openPMD: Support for mesh refinement ECP-WarpX/WarpX#1842Reader Changes
A reader can group mesh-refined records visually or build an MR structure.
Good candidates:
yt
: https://github.com/yt-project/ytParaView
: ...Unaffected for now:
openPMD-validator
: https://github.com/openPMD/openPMD-validatoropenPMD-viewer
: https://github.com/openPMD/openPMD-viewerVisIt
: https://github.com/openPMD/openPMD-visit-pluginconverter
: https://github.com/openPMD/openPMD-converteropenPMD-api
: https://github.com/openPMD/openPMD-apiData Updater
New functionality. No data update needed.