A7ETPFXEHA2RM4LINSBVMJJ3G62NF7Q5ZQOKJPNJK3YOQ5WS5HKAC
24A4OZBZBQ6QXIQ3EOOCQIBTOWRA32TMSQ4CCL3LKIJVJPKZFHVQC
GECUITHDXKCWB7HBCM7EA5Q56JDDWUVUWHMW2K6OM7UW36DFAZ3QC
E3MBKFT4GEFDAGZQQW4OROY5F6FWC46G6MRH54GDYTGO7O5YSRIAC
KCIWCVZOHG44WBOLKI2XK33WPHPRI5FWCETF4AOGTPZISKCW3CLQC
BSMJ4V7GV3EOGY4KCSTOJQUOFE2OOCIKQETE4WC2WRNLWBQIBW3QC
722HZ7UFINNE3YKSYKP2NHZ5XEG5QQLQHSKC7PREJZR3EX6RDYUAC
BPRNUTY7MHK7LK4EY5MY5OFFG3ABOL7LWXD574L35M74YSQPULFAC
BVR7DVINVPQG7PA6Z7QYVYNQ43YZL7XCC6AOMSMWMGAAB2Q43STAC
2DKSL6DKZAIYQUJGDULORCKU5K4Z5Z3W4RIKQYDSLKMCNQNDZFBAC
FEMASUBNU32NSG4DNXZX54CGCA57PVRGYO46L3A6F2EJ4BCSJ3SAC
check_valid(leveldata, groupdata, rd.vi, rd.tl);
check_valid(leveldata, groupdata, rd.vi, rd.tl, [&]() {
ostringstream buf;
buf << "CallFunction iteration " << cctkGH->cctk_iteration << " "
<< attribute->where << ": " << attribute->thorn
<< "::" << attribute->routine << " checking input";
return buf.str();
});
check_valid(leveldata, groupdata, wr.vi, wr.tl);
check_valid(leveldata, groupdata, wr.vi, wr.tl, [&]() {
ostringstream buf;
buf << "CallFunction iteration " << cctkGH->cctk_iteration << " "
<< attribute->where << ": " << attribute->thorn
<< "::" << attribute->routine << " checking output";
return buf.str();
});
check_valid(coarseleveldata, coarsegroupdata, vi, tl);
check_valid(leveldata, groupdata, vi, tl);
check_valid(coarseleveldata, coarsegroupdata, vi, tl, [&]() {
return "SyncGroupsByDirI on coarse level before prolongation";
});
check_valid(leveldata, groupdata, vi, tl, [&]() {
return "SyncGroupsByDirI on fine level before prolongation";
});
{0.0}, {&*groupdata.mfab.at(tl)}, {0.0}, 0, 0, groupdata.numvars,
ghext->amrcore->Geom(level - 1), ghext->amrcore->Geom(level),
cphysbc, 0, fphysbc, 0, reffact, interpolator, bcs, 0);
{0.0}, {&*groupdata.mfab.at(tl)}, {0.0}, 0, 0,
groupdata.numvars, ghext->amrcore->Geom(level - 1),
ghext->amrcore->Geom(level), cphysbc, 0, fphysbc, 0, reffact,
interpolator, bcs, 0);
void check_valid(const GHExt::LevelData &leveldata,
const GHExt::LevelData::GroupData &groupdata, int vi, int tl);
void check_valid(
const GHExt::LevelData &leveldata,
const GHExt::LevelData::GroupData &groupdata, int vi, int tl,
const function<string()> &msg);