aboutsummaryrefslogtreecommitdiff
path: root/Carpet/CarpetRegrid
diff options
context:
space:
mode:
authorschnetter <>2002-03-26 12:22:00 +0000
committerschnetter <>2002-03-26 12:22:00 +0000
commit6608429cdf7fe663b485204b292b163979c6dce2 (patch)
treef190e1eaf9419401d6c7ac9535ff65f2790500f2 /Carpet/CarpetRegrid
parent6597a97dd2dbee2fec4a83dc831af3a0db072017 (diff)
Added CCTK_FILEVERSION macros.
darcs-hash:20020326122225-07bb3-0c7746df97fb64f00918be1bee33191fb9d44b0b.gz
Diffstat (limited to 'Carpet/CarpetRegrid')
-rw-r--r--Carpet/CarpetRegrid/src/regrid.cc32
1 files changed, 30 insertions, 2 deletions
diff --git a/Carpet/CarpetRegrid/src/regrid.cc b/Carpet/CarpetRegrid/src/regrid.cc
index 0e53e6d6b..80ec139fa 100644
--- a/Carpet/CarpetRegrid/src/regrid.cc
+++ b/Carpet/CarpetRegrid/src/regrid.cc
@@ -22,9 +22,13 @@
#include "carpet.hh"
#include "regrid.hh"
-static const char* rcsid = "$Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetRegrid/src/regrid.cc,v 1.12 2002/03/23 20:20:57 schnetter Exp $";
+static const char* rcsid = "$Header: /home/eschnett/C/carpet/Carpet/Carpet/CarpetRegrid/src/regrid.cc,v 1.13 2002/03/26 13:22:31 schnetter Exp $";
-CCTK_FILEVERSION(Carpet_regrid_cc)
+CCTK_FILEVERSION(CarpetRegrid_regrid_cc)
+
+
+
+#undef AUTOMATIC_BOUNDARIES
@@ -170,7 +174,11 @@ namespace CarpetRegrid {
abort();
}
+#ifdef AUTOMATIC_BOUNDARIES
+ assert (obl.size() == 0);
+#else
assert (bbl.size() == obl.size());
+#endif
// transform bbox list into bbox vector
vector<ibbox> bbs;
@@ -180,6 +188,23 @@ namespace CarpetRegrid {
++it) {
bbs.push_back (*it);
}
+#ifdef AUTOMATIC_BOUNDARIES
+ vector<bvect> obs;
+ obs.resize (bbs.size());
+ for (int c=0; c<(int)bbs.size(); ++c) {
+ ivect extlo = hh->baseextent.lower();
+ ivect extup = hh->baseextent.upper();
+ ivect str = bbs[c].stride();
+ for (int d=0; d<dim; ++d) {
+ // Decide what is an outer boundary.
+ // Allow it to be one grid point to the interior.
+ assert (bbs[c].lower()[d] >= extlo[d]);
+ obs[c][d][0] = bbs[c].lower()[d] <= extlo[d] + str[d];
+ assert (bbs[c].upper()[d] <= extup[d]);
+ obs[c][d][1] = bbs[c].upper()[d] >= extup[d] - str[d];
+ }
+ }
+#else
vector<bvect> obs;
obs.reserve (obl.size());
for (list<bvect>::const_iterator it = obl.begin();
@@ -187,6 +212,9 @@ namespace CarpetRegrid {
++it) {
obs.push_back (*it);
}
+#endif
+
+
// TODO: ensure nesting properties