aboutsummaryrefslogtreecommitdiff
path: root/Carpet/Carpet/src/Recompose.cc
diff options
context:
space:
mode:
Diffstat (limited to 'Carpet/Carpet/src/Recompose.cc')
-rw-r--r--Carpet/Carpet/src/Recompose.cc10
1 files changed, 6 insertions, 4 deletions
diff --git a/Carpet/Carpet/src/Recompose.cc b/Carpet/Carpet/src/Recompose.cc
index 9654ecefd..6f18fb657 100644
--- a/Carpet/Carpet/src/Recompose.cc
+++ b/Carpet/Carpet/src/Recompose.cc
@@ -1165,12 +1165,13 @@ namespace Carpet {
void
SplitRegions_Automatic (cGH const * const cctkGH,
vector<region_t> & superregs,
- vector<region_t> & regs)
+ vector<region_t> & regs,
+ bvect const & no_split_dims)
{
assert (regs.empty());
vector<vector<region_t> > superregss (1, superregs);
vector<vector<region_t> > regss (1);
- SplitRegionsMaps_Automatic (cctkGH, superregss, regss);
+ SplitRegionsMaps_Automatic (cctkGH, superregss, regss, no_split_dims);
assert (superregss.size() == 1);
superregs = superregss.AT(0);
assert (regss.size() == 1);
@@ -1595,7 +1596,8 @@ namespace Carpet {
void
SplitRegionsMaps_Automatic (cGH const * const cctkGH,
vector<vector<region_t> > & superregss,
- vector<vector<region_t> > & regss)
+ vector<vector<region_t> > & regss,
+ bvect const & no_split_dims)
{
DECLARE_CCTK_PARAMETERS;
@@ -1710,7 +1712,7 @@ namespace Carpet {
for (int r=0, p=0; r<nregs; p+=mynprocs.AT(r), ++r) {
if (recompose_verbose) cout << "SRMA superreg[" << r << "] " << superregs.AT(r) << endl;
// bvect const dims = false;
- bvect const dims = not split_components;
+ bvect const dims = not split_components || no_split_dims;
SplitRegionsMaps_Automatic_Recursively
(dims, p, mynprocs.AT(r), superregs.AT(r), newregs);
} // for r