diff options
author | Erik Schnetter <schnetter@cct.lsu.edu> | 2011-04-17 18:04:35 -0400 |
---|---|---|
committer | Barry Wardell <barry.wardell@gmail.com> | 2011-12-14 18:26:06 +0000 |
commit | 2c1495501189f7c53e7de3f1046d38d60cf8d97f (patch) | |
tree | c335b79e6e818bfe18e42a0df3f8cf0792dba996 /Carpet/Carpet/src/Recompose.cc | |
parent | 1f0c516da0bc5f60d4da40b58118831db19ed363 (diff) |
Carpet: Use hg::baseextent instead of Carpet::maxspacereflevelfact
Use hg::baseextent instead of Carpet::maxspacereflevelfact to
determine the stride of a refinement level, because this works
independent of the stride on the finest level.
Diffstat (limited to 'Carpet/Carpet/src/Recompose.cc')
-rw-r--r-- | Carpet/Carpet/src/Recompose.cc | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/Carpet/Carpet/src/Recompose.cc b/Carpet/Carpet/src/Recompose.cc index 29eba4337..dfdeec847 100644 --- a/Carpet/Carpet/src/Recompose.cc +++ b/Carpet/Carpet/src/Recompose.cc @@ -463,14 +463,16 @@ namespace Carpet { const rvect origin = domainspecs.AT(m).exterior_min; const rvect delta = (domainspecs.AT(m).exterior_max - domainspecs.AT(m).exterior_min) / rvect (domainspecs.AT(m).npoints - 1); const ibbox & ext = superregss.AT(rl).AT(c).extent; - const ivect & lower = ext.lower(); - const ivect & upper = ext.upper(); + const ivect & ilower = ext.lower(); + const ivect & iupper = ext.upper(); const ivect & levfact = spacereffacts.AT(rl); + const ibbox & base = hh.baseextent(0,0); + const ivect & bstride = base.stride(); cout << " [" << rl << "][" << m << "][" << c << "]" << " exterior: " - << origin + delta * rvect(lower) / rvect(maxspacereflevelfact) + << origin + delta * rvect(ilower) / rvect(bstride) << " : " - << origin + delta * rvect(upper) / rvect(maxspacereflevelfact) + << origin + delta * rvect(iupper) / rvect(bstride) << " : " << delta / rvect(levfact) << eol; } @@ -539,15 +541,17 @@ namespace Carpet { const rvect origin = domainspecs.AT(m).exterior_min; const rvect delta = (domainspecs.AT(m).exterior_max - domainspecs.AT(m).exterior_min) / rvect (domainspecs.AT(m).npoints - 1); const ibbox ext = hh.extent(ml,rl,c); - const ivect & lower = ext.lower(); - const ivect & upper = ext.upper(); + const ivect & ilower = ext.lower(); + const ivect & iupper = ext.upper(); const int convfact = ipow(mgfact, ml); const ivect levfact = spacereffacts.AT(rl); + const ibbox & base = hh.baseextent(ml,0); + const ivect & bstride = base.stride(); cout << " [" << ml << "][" << rl << "][" << m << "][" << c << "]" << " exterior: " - << origin + delta * rvect(lower) / rvect(maxspacereflevelfact) + << origin + delta * rvect(ilower) / rvect(bstride) << " : " - << origin + delta * rvect(upper) / rvect(maxspacereflevelfact) + << origin + delta * rvect(iupper) / rvect(bstride) << " : " << delta * rvect(convfact) / rvect(levfact) << eol; } @@ -564,11 +568,13 @@ namespace Carpet { const ivect upper = dd.light_boxes.AT(ml).AT(rl).AT(c).exterior.upper(); const int convfact = ipow(mgfact, ml); const ivect levfact = spacereffacts.AT(rl); + const ibbox & base = hh.baseextent(ml,0); + const ivect & bstride = base.stride(); cout << " [" << ml << "][" << rl << "][" << m << "][" << c << "]" << " exterior: " - << origin + delta * rvect(lower) / rvect(maxspacereflevelfact) + << origin + delta * rvect(lower) / rvect(bstride) << " : " - << origin + delta * rvect(upper) / rvect(maxspacereflevelfact) + << origin + delta * rvect(upper) / rvect(bstride) << " : " << delta * rvect(convfact) / rvect(levfact) << eol; } |