diff options
author | Erik Schnetter <schnetter@cct.lsu.edu> | 2005-11-19 21:21:00 +0000 |
---|---|---|
committer | Erik Schnetter <schnetter@cct.lsu.edu> | 2005-11-19 21:21:00 +0000 |
commit | a8d081b00bc4c07166f6827b48026a792acb3dee (patch) | |
tree | 2094122167ad2ce619f8abb9e7429a128276300c /Carpet/Carpet | |
parent | 0e0d0a99b6966b6ff900d754eea6a43af36ffe24 (diff) |
UNDO: Carpet: Store grid spacing per map instead of globally
Store the coarse grid spacing per individual map instead of globally.
Set and unset the grid spacing when entering or leaving singlemap
mode, not global mode. This breaks code that tries to access the
coarse grid spacing in the cGH in global mode.
darcs-hash:20051119212129-dae7b-ca0ccee9a08c988e44b9024b69e17da2d78d8cba.gz
Diffstat (limited to 'Carpet/Carpet')
-rw-r--r-- | Carpet/Carpet/src/Recompose.cc | 4 | ||||
-rw-r--r-- | Carpet/Carpet/src/SetupGH.cc | 6 | ||||
-rw-r--r-- | Carpet/Carpet/src/modes.cc | 40 | ||||
-rw-r--r-- | Carpet/Carpet/src/variables.cc | 4 | ||||
-rw-r--r-- | Carpet/Carpet/src/variables.hh | 4 |
5 files changed, 19 insertions, 39 deletions
diff --git a/Carpet/Carpet/src/Recompose.cc b/Carpet/Carpet/src/Recompose.cc index 8e2a6c7f8..1b19853c3 100644 --- a/Carpet/Carpet/src/Recompose.cc +++ b/Carpet/Carpet/src/Recompose.cc @@ -217,8 +217,8 @@ namespace Carpet { for (int ml=0; ml<hh.mglevels(); ++ml) { for (int rl=0; rl<hh.reflevels(); ++rl) { for (int c=0; c<hh.components(rl); ++c) { - const rvect origin = origin_space.at(m).at(0); - const rvect delta = delta_space.at(m); + const rvect origin = origin_space.at(0); + const rvect delta = delta_space; const ivect lower = hh.extents().at(ml).at(rl).at(c).lower(); const ivect upper = hh.extents().at(ml).at(rl).at(c).upper(); const int convfact = ipow(mgfact, ml); diff --git a/Carpet/Carpet/src/SetupGH.cc b/Carpet/Carpet/src/SetupGH.cc index 0376da045..921e75006 100644 --- a/Carpet/Carpet/src/SetupGH.cc +++ b/Carpet/Carpet/src/SetupGH.cc @@ -437,11 +437,7 @@ namespace Carpet { for (int ml=0; ml<mglevels; ++ml) { leveltimes.at(ml).resize (maxreflevels); } - origin_space.resize (maps); - delta_space.resize (maps); - for (int m=0; m<maps; ++m) { - origin_space.at(m).resize (mglevels); - } + origin_space.resize (mglevels); // Enable prolongating do_prolongate = true; diff --git a/Carpet/Carpet/src/modes.cc b/Carpet/Carpet/src/modes.cc index 7e63816b3..9669097f5 100644 --- a/Carpet/Carpet/src/modes.cc +++ b/Carpet/Carpet/src/modes.cc @@ -75,13 +75,12 @@ namespace Carpet { // TODO: this could also just be "mglevel" instead cgh->cctk_convlevel = basemglevel + mglevel; - // Set time delta + // Set time and space delta cgh->cctk_delta_time = delta_time * mglevelfact; -// // Set space delta -// for (int d=0; d<dim; ++d) { -// cgh->cctk_origin_space[d] = origin_space.at(mglevel)[d]; -// cgh->cctk_delta_space[d] = delta_space[d] * mglevelfact; -// } + for (int d=0; d<dim; ++d) { + cgh->cctk_origin_space[d] = origin_space.at(mglevel)[d]; + cgh->cctk_delta_space[d] = delta_space[d] * mglevelfact; + } // Set array information for (int group=0; group<CCTK_NumGroups(); ++group) { @@ -162,16 +161,15 @@ namespace Carpet { if (mglevel == -1) return; // early return - // Save and unset time delta + // Save and unset time and space delta delta_time = cgh->cctk_delta_time / mglevelfact; cgh->cctk_delta_time = 0.0; -// // Save and unset space delta -// for (int d=0; d<dim; ++d) { -// origin_space.at(mglevel)[d] = cgh->cctk_origin_space[d]; -// delta_space[d] = cgh->cctk_delta_space[d] / mglevelfact; -// cgh->cctk_origin_space[d] = -424242.0; -// cgh->cctk_delta_space[d] = 0.0; -// } + for (int d=0; d<dim; ++d) { + origin_space.at(mglevel)[d] = cgh->cctk_origin_space[d]; + delta_space[d] = cgh->cctk_delta_space[d] / mglevelfact; + cgh->cctk_origin_space[d] = -424242.0; + cgh->cctk_delta_space[d] = 0.0; + } // Set array information for (int group=0; group<CCTK_NumGroups(); ++group) { @@ -293,12 +291,6 @@ namespace Carpet { carpetGH.map = map = m; - // Set space delta - for (int d=0; d<dim; ++d) { - cgh->cctk_origin_space[d] = origin_space.at(map).at(mglevel)[d]; - cgh->cctk_delta_space[d] = delta_space.at(map)[d] * mglevelfact; - } - // Set grid shape const ibbox& coarseext = vdd.at(map)->bases.at(mglevel).at(0 ).exterior; const ibbox& baseext = vdd.at(map)->bases.at(mglevel).at(reflevel).exterior; @@ -331,14 +323,6 @@ namespace Carpet { if (map == -1) return; // early return - // Save and unset space delta - for (int d=0; d<dim; ++d) { - origin_space.at(map).at(mglevel)[d] = cgh->cctk_origin_space[d]; - delta_space.at(map)[d] = cgh->cctk_delta_space[d] / mglevelfact; - cgh->cctk_origin_space[d] = -424242.0; - cgh->cctk_delta_space[d] = 0.0; - } - // Unset grid shape ivect::ref(cgh->cctk_levoff) = deadbeef; ivect::ref(cgh->cctk_levoffdenom) = 0; diff --git a/Carpet/Carpet/src/variables.cc b/Carpet/Carpet/src/variables.cc index 81b9a9ecb..fdd499419 100644 --- a/Carpet/Carpet/src/variables.cc +++ b/Carpet/Carpet/src/variables.cc @@ -75,8 +75,8 @@ namespace Carpet { vector<vector<CCTK_REAL> > leveltimes; // [mglevel][reflevel] CCTK_REAL delta_time; - vector<vector<vect<CCTK_REAL,dim> > > origin_space; // [map][mglevel] - vector<vect<CCTK_REAL,dim> > delta_space; // [map] + vector<vect<CCTK_REAL,dim> > origin_space; // [mglevel] + vect<CCTK_REAL,dim> delta_space; diff --git a/Carpet/Carpet/src/variables.hh b/Carpet/Carpet/src/variables.hh index b2981ee24..2d8a6d294 100644 --- a/Carpet/Carpet/src/variables.hh +++ b/Carpet/Carpet/src/variables.hh @@ -104,8 +104,8 @@ namespace Carpet { extern vector<vector<CCTK_REAL> > leveltimes; // [mglevel][reflevel] extern CCTK_REAL delta_time; - extern vector<vector<vect<CCTK_REAL,dim> > > origin_space; // [map][mglevel] - extern vector<vect<CCTK_REAL,dim> > delta_space; // [map] + extern vector<vect<CCTK_REAL,dim> > origin_space; // [mglevel] + extern vect<CCTK_REAL,dim> delta_space; |