diff options
Diffstat (limited to 'src/interpolate.c')
-rw-r--r-- | src/interpolate.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/interpolate.c b/src/interpolate.c index e1fe564..d8cdcee 100644 --- a/src/interpolate.c +++ b/src/interpolate.c @@ -177,6 +177,7 @@ ReflectionSymmetry_Interpolate (CCTK_POINTER_TO_CONST restrict const cctkGH_, char tensortypealias[1000]; enum tensortype { UNKNOWN, SCALAR, VECTOR, TENSOR }; enum tensortype ttype; + CCTK_INT tensorparity; int tcomponent; int parities[3]; @@ -271,6 +272,18 @@ ReflectionSymmetry_Interpolate (CCTK_POINTER_TO_CONST restrict const cctkGH_, assert (0); } + ierr = Util_TableGetInt (table, & tensorparity, "tensorparity"); + if (ierr == UTIL_ERROR_TABLE_NO_SUCH_KEY) { + tensorparity = +1; + } else if (ierr<0) { + groupname = CCTK_GroupName(gi); + assert (groupname); + CCTK_VWarn (0, __LINE__, __FILE__, CCTK_THORNSTRING, + "Error in tensor parity declaration for group \"%s\"", + groupname); + free (groupname); + } + /* Calculate parities */ @@ -329,7 +342,7 @@ ReflectionSymmetry_Interpolate (CCTK_POINTER_TO_CONST restrict const cctkGH_, { for (n=0; n<N_interp_points; ++n) { - int parity = +1; + int parity = tensorparity; /* Is the point outside the domain? */ for (dir=0; dir<3; ++dir) { |