aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorroland.haas@physics.gatech.edu <roland.haas@physics.gatech.edu>2012-02-04 18:14:56 -0800
committerroland.haas@physics.gatech.edu <roland.haas@physics.gatech.edu>2012-02-04 18:14:56 -0800
commit1fa65d0210a9d2634bb35608826b260d3eb11cda (patch)
treeea8528fb3408a9216f498da5d225857089508b6d
parent831486e924922dde1fa13838e632ae7b07079f53 (diff)
CarpetInterp2: provide function to check if fasterp_setup is out of date
CarpetInterp2 tests if a fasterp_setup_t object is out of date (older than the current regridding epoch) before it uses it. This patch exports this test to user code so that they can check each time they want to interpolate if they have to re-create the setup object. It has the advantage of hiding the internal decision criterion from the user.
-rw-r--r--Carpet/CarpetInterp2/src/fasterp.cc4
-rw-r--r--Carpet/CarpetInterp2/src/fasterp.hh10
2 files changed, 11 insertions, 3 deletions
diff --git a/Carpet/CarpetInterp2/src/fasterp.cc b/Carpet/CarpetInterp2/src/fasterp.cc
index 54848d6dc..9b8fd956b 100644
--- a/Carpet/CarpetInterp2/src/fasterp.cc
+++ b/Carpet/CarpetInterp2/src/fasterp.cc
@@ -1071,9 +1071,7 @@ namespace CarpetInterp2 {
DECLARE_CCTK_PARAMETERS;
// Check regridding epoch
- if (regridding_epoch != (reflevel == -1 ?
- Carpet::regridding_epoch :
- Carpet::level_regridding_epochs.AT(reflevel)))
+ if (outofdate())
{
if (reflevel == -1) {
CCTK_VWarn (CCTK_WARN_ABORT, __LINE__, __FILE__, CCTK_THORNSTRING,
diff --git a/Carpet/CarpetInterp2/src/fasterp.hh b/Carpet/CarpetInterp2/src/fasterp.hh
index f02a93c02..138084d1d 100644
--- a/Carpet/CarpetInterp2/src/fasterp.hh
+++ b/Carpet/CarpetInterp2/src/fasterp.hh
@@ -317,6 +317,16 @@ namespace CarpetInterp2 {
{
return recv_descr.npoints;
}
+
+ bool
+ outofdate ()
+ const
+ {
+ return
+ regridding_epoch != (reflevel == -1 ?
+ Carpet::regridding_epoch :
+ Carpet::level_regridding_epochs.AT(reflevel));
+ }
};