aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Carpet/CarpetSlab/src/GetHyperslab.cc11
-rw-r--r--Carpet/CarpetSlab/src/slab.cc10
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());
}