Skip to content

Commit

Permalink
openPMD: no BP5 Group Based
Browse files Browse the repository at this point in the history
Disallow BP5 with group based encoding, because it creates
files that cannot be read back efficiently.

What works: BP4 f, BP4 g, BP4 v (still experimental), BP5 f,
BP5 v (still experimental), H5 f, H5 g.
  • Loading branch information
ax3l committed Mar 5, 2025
1 parent 47235b9 commit 58e6e4c
Showing 1 changed file with 7 additions and 0 deletions.
7 changes: 7 additions & 0 deletions Source/Diagnostics/FlushFormats/FlushFormatOpenPMD.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,13 @@ FlushFormatOpenPMD::FlushFormatOpenPMD (const std::string& diag_name)
encoding = openPMD::IterationEncoding::fileBased;
}

// BP5 does not support groupBased (metadata explosion)
if ((openpmd_backend == "bp5" || openpmd_backend == "bp") &&
(encoding == openPMD::IterationEncoding::groupBased))
{
throw std::runtime_error("BeamMonitor: groupBased encoding not supported for BP5.");
}

std::string diag_type_str;
pp_diag_name.get("diag_type", diag_type_str);
if (diag_type_str == "BackTransformed")
Expand Down

0 comments on commit 58e6e4c

Please sign in to comment.