#2653: Carpet PreSync triggering syncs for all refinement levels unnecessarily
Reporter:Samuel Cupp
Status:new
Milestone:
Version:
Type:bug
Priority:major
Component:Carpet

In Carpet, the function PreSyncGroups calls SyncProlongateGroups to automatically sync variables based on the reads and writes. I include the function below.

void PreSyncGroups(cFunctionData *attribute, cGH *cctkGH,
                   const std::vector<int> &pre_groups) {
  DECLARE_CCTK_PARAMETERS;

  assert(not CCTK_EQUALS(presync_mode, "off") and
         not CCTK_EQUALS(presync_mode, "warn-only"));

  if (pre_groups.empty())
    return;

  if (reflevel > 0) {
    // recurse to check that all coarsers--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2653/carpet-presync-triggering-syncs-for-all