aboutsummaryrefslogtreecommitdiff
path: root/Carpet/Carpet/src/modes.cc
diff options
context:
space:
mode:
authorErik Schnetter <schnetter@cct.lsu.edu>2007-06-06 20:35:00 +0000
committerErik Schnetter <schnetter@cct.lsu.edu>2007-06-06 20:35:00 +0000
commit655377e610caecf75121b8b9689d3100ff852026 (patch)
tree1f3e0a543bd9240a6be7fcaf3a3ec663c6303e4d /Carpet/Carpet/src/modes.cc
parent3d629bc66083287138bca6d51c30d5c916dea45b (diff)
Carpet: Forbid accessing past timelevels in certain scheduling bins
Certain scheduling bins do not allow accessing past time levels. Set the grid function pointers to past time levels to null in these. darcs-hash:20070606203504-dae7b-df075bdeb5bea053b84d9e6f162796a5aac50540.gz
Diffstat (limited to 'Carpet/Carpet/src/modes.cc')
-rw-r--r--Carpet/Carpet/src/modes.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/Carpet/Carpet/src/modes.cc b/Carpet/Carpet/src/modes.cc
index bba8aa370..1f4e392c2 100644
--- a/Carpet/Carpet/src/modes.cc
+++ b/Carpet/Carpet/src/modes.cc
@@ -511,15 +511,16 @@ namespace Carpet {
assert (max_tl>=0);
const int active_tl = CCTK_ActiveTimeLevelsGI (cctkGH, group);
assert (active_tl>=0 and active_tl<=max_tl);
+ const int available_tl = do_allow_past_timelevels ? active_tl : 1;
- // assert (vhh.at(map)->is_local(reflevel,component));
+ // assert (vhh.at(map)->is_local(reflevel,component));
assert (group<(int)arrdata.size());
for (int var=0; var<numvars; ++var) {
assert (firstvar+var<CCTK_NumVars());
ggf * const ff = arrdata.at(group).at(map).data.at(var);
for (int tl=0; tl<max_tl; ++tl) {
- if (ff and tl<active_tl) {
+ if (ff and tl<available_tl) {
gdata * const data = (*ff) (tl, reflevel, component, mglevel);
assert (data);
cctkGH->data[firstvar+var][tl] = data->storage();