diff options
author | Erik Schnetter <schnetter@cct.lsu.edu> | 2007-06-06 20:35:00 +0000 |
---|---|---|
committer | Erik Schnetter <schnetter@cct.lsu.edu> | 2007-06-06 20:35:00 +0000 |
commit | 655377e610caecf75121b8b9689d3100ff852026 (patch) | |
tree | 1f3e0a543bd9240a6be7fcaf3a3ec663c6303e4d /Carpet/Carpet/src/modes.cc | |
parent | 3d629bc66083287138bca6d51c30d5c916dea45b (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.cc | 5 |
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(); |