From 911d93503f33de2596f8aeb3f2f9dc73afdba318 Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Wed, 24 Oct 2012 00:11:59 -0400 Subject: Carpet, CarpetRegrid2: When comparing refined regions treat non-existing levels as empty --- Carpet/Carpet/src/Recompose.cc | 1 + Carpet/CarpetRegrid2/src/regrid.cc | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Carpet/Carpet/src/Recompose.cc b/Carpet/Carpet/src/Recompose.cc index 23f4676f7..6e1a519cd 100644 --- a/Carpet/Carpet/src/Recompose.cc +++ b/Carpet/Carpet/src/Recompose.cc @@ -2038,6 +2038,7 @@ namespace Carpet { vector > > const & regsss, vector > > > & regssss) { + regssss.resize(maps); for (int m = 0; m < maps; ++m) { MakeMultigridBoxes (cctkGH, m, regsss.AT(m), regssss.AT(m)); } // for m diff --git a/Carpet/CarpetRegrid2/src/regrid.cc b/Carpet/CarpetRegrid2/src/regrid.cc index 9b52a2d53..427d8b09b 100644 --- a/Carpet/CarpetRegrid2/src/regrid.cc +++ b/Carpet/CarpetRegrid2/src/regrid.cc @@ -845,6 +845,7 @@ namespace CarpetRegrid2 { bool level_did_change = false; for (int m = 0; m < maps; ++ m) { level_did_change = level_did_change or + int(old_superregsss.at(m).size()) <= rl or superregsss.at(m).at(rl) != old_superregsss.at(m).at(rl); } any_level_did_change = any_level_did_change or level_did_change; @@ -874,7 +875,7 @@ namespace CarpetRegrid2 { regsss.at(m).at(rl).swap(old_regssss.at(m).at(ml).at(rl)); } - }// if level did change + } // if level did change } // for rl // Make multigrid aware -- cgit v1.2.3