aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrhaas <rhaas@c3c03602-0f4f-0410-b3fa-d2c81c8a7dc5>2013-08-06 01:34:57 +0000
committerrhaas <rhaas@c3c03602-0f4f-0410-b3fa-d2c81c8a7dc5>2013-08-06 01:34:57 +0000
commit84e6c44587215f6ca45e2b2829e7b3eccd73981b (patch)
tree11ac4ab7621a2ee8b34b685dc6588f72a01b6995
parent9b8fb63abc14ea5260b8fe2ce73a32c16a60e3ca (diff)
correct vector component computation during interpolationHEADmaster
before (since rev 89) there was a bug where always the x component of a vector vel[] would be interpolated. An assert() would trigger if multiple vector components were interpolated at the same time. git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/RotatingSymmetry90/trunk@90 c3c03602-0f4f-0410-b3fa-d2c81c8a7dc5
-rw-r--r--src/interpolate.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/interpolate.c b/src/interpolate.c
index 4087119..985c419 100644
--- a/src/interpolate.c
+++ b/src/interpolate.c
@@ -710,7 +710,11 @@ Rot90_SymmetryInterpolate (CCTK_POINTER_TO_CONST const cctkGH,
(numvars == DIM && vectorlength == DIM));
tensortype = &vector;
basevar = firstvar;
- var = (vi - basevar) / vectorlength;
+ if (numvars == vectorlength) {
+ var = (vi - basevar);
+ } else {
+ var = (vi - basevar) / vectorlength;
+ }
} else if (CCTK_EQUALS (tensortypealias, "4u")
|| CCTK_EQUALS (tensortypealias, "4d"))
{