diff options
Diffstat (limited to 'Carpet/CarpetSlab')
-rw-r--r-- | Carpet/CarpetSlab/src/GetHyperslab.cc | 11 | ||||
-rw-r--r-- | Carpet/CarpetSlab/src/slab.cc | 10 |
2 files changed, 9 insertions, 12 deletions
diff --git a/Carpet/CarpetSlab/src/GetHyperslab.cc b/Carpet/CarpetSlab/src/GetHyperslab.cc index 1c9e687cc..9a4e07117 100644 --- a/Carpet/CarpetSlab/src/GetHyperslab.cc +++ b/Carpet/CarpetSlab/src/GetHyperslab.cc @@ -171,7 +171,7 @@ namespace CarpetSlab { // Create collector data object void* myhdata = rank==collect_proc ? hdata : 0; - gdata* const alldata = mydata->make_typed(-1); + gdata* const alldata = mydata->make_typed (-1, error_centered, op_sync); alldata->allocate (hextent, collect_proc, myhdata); // Done with the temporary stuff @@ -186,10 +186,9 @@ namespace CarpetSlab { mydata = (*myff)(tl, rl, component, mglevel); // Calculate overlapping extents - const bboxset<int,dim> myextents - = ((mydd->boxes.at(mglevel).at(rl).at(component).sync_not - | mydd->boxes.at(mglevel).at(rl).at(component).interior) - & hextent); + bboxset<int,dim> myextents = + mydd->boxes.at(mglevel).at(rl).at(component).interior & hextent; + myextents.normalize(); // Loop over overlapping extents for (bboxset<int,dim>::const_iterator ext_iter = myextents.begin(); @@ -213,7 +212,7 @@ namespace CarpetSlab { for (int proc=0; proc<CCTK_nProcs(cgh); ++proc) { if (proc != collect_proc) { void* myhdata = rank==proc ? hdata : 0; - tmpdata.at(proc) = mydata->make_typed(-1); + tmpdata.at(proc) = mydata->make_typed (-1, error_centered, op_sync); tmpdata.at(proc)->allocate (alldata->extent(), proc, myhdata); tmpdata.at(proc)->copy_from (state.at(proc), alldata, alldata->extent()); } diff --git a/Carpet/CarpetSlab/src/slab.cc b/Carpet/CarpetSlab/src/slab.cc index 7bb364033..ba88e16a6 100644 --- a/Carpet/CarpetSlab/src/slab.cc +++ b/Carpet/CarpetSlab/src/slab.cc @@ -204,7 +204,7 @@ namespace CarpetSlab { // Create collector data object void* myhdata = rank==collect_proc ? hdata : 0; - gdata* const alldata = mydata->make_typed(-1); + gdata* const alldata = mydata->make_typed (-1, error_centered, op_sync); alldata->allocate (hextent, collect_proc, myhdata); // Done with the temporary stuff @@ -219,10 +219,8 @@ namespace CarpetSlab { mydata = (*myff)(tl, rl, component, mglevel); // Calculate overlapping extents - const bboxset<int,dim> myextents - = ((mydd->boxes.at(mglevel).at(rl).at(component).sync_not - | mydd->boxes.at(mglevel).at(rl).at(component).interior) - & hextent); + const bboxset<int,dim> myextents = + mydd->boxes.at(mglevel).at(rl).at(component).interior & hextent; // Loop over overlapping extents for (bboxset<int,dim>::const_iterator ext_iter = myextents.begin(); @@ -246,7 +244,7 @@ namespace CarpetSlab { for (int proc=0; proc<CCTK_nProcs(cgh); ++proc) { if (proc != collect_proc) { void* myhdata = rank==proc ? hdata : 0; - tmpdata.at(proc) = mydata->make_typed(-1); + tmpdata.at(proc) = mydata->make_typed (-1, error_centered, op_sync); tmpdata.at(proc)->allocate (alldata->extent(), proc, myhdata); tmpdata.at(proc)->copy_from (state.at(proc), alldata, alldata->extent()); } |