From 825bd3b6c5f50fe34eba0a8445a6185dc5a53373 Mon Sep 17 00:00:00 2001 From: Roland Haas Date: Wed, 5 Sep 2012 20:09:21 -0400 Subject: Carpet: try to mimic enter_local_modes timelevel handling in AfterRoutine and BeforeRoutine in particular one has to handle routine that are called on past timelevels during PostRegrid (or init_3_levels which likely currently fails). This requires more work yet. --- Carpet/Carpet/src/Requirements.cc | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/Carpet/Carpet/src/Requirements.cc b/Carpet/Carpet/src/Requirements.cc index 068610e66..eda688e3c 100644 --- a/Carpet/Carpet/src/Requirements.cc +++ b/Carpet/Carpet/src/Requirements.cc @@ -866,8 +866,12 @@ namespace Carpet { int const timelevels = int(tls.size()); assert(timelevel != -1); assert(timelevels >= clause.min_num_timelevels()); - for (int tl=0; tl 1 ? timelevel : 0; + for (int tl=mintl; tl<=maxtl; ++tl) { + if (timelevel==-1 or clause.active_on_timelevel(tl-tl_of)) { gridpoint_t const& gp = tls.AT(tl); gp.check_state(clause, function_data, vi, rl, m, tl); } @@ -937,8 +941,12 @@ namespace Carpet { int const timelevels = int(tls.size()); assert(timelevel != -1); assert(timelevels >= clause.min_num_timelevels()); - for (int tl=0; tl 1 ? timelevel : 0; + for (int tl=mintl; tl<=maxtl; ++tl) { + if (timelevel==-1 or clause.active_on_timelevel(tl-tl_of)) { gridpoint_t& gp = tls.AT(tl); gp.update_state(clause); } -- cgit v1.2.3