aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authoreschnett <eschnett@4f5cb9a8-4dd8-4c2d-9bbd-173fa4467843>2011-04-03 19:14:44 +0000
committereschnett <eschnett@4f5cb9a8-4dd8-4c2d-9bbd-173fa4467843>2011-04-03 19:14:44 +0000
commit8cad4ddc15c11888344dc7b4f66dd91b70b321fc (patch)
tree1c8a3aa11f355bd5466081d0f27ae90ff9e9e827 /src
parent50d42a3f2c07f9f6d8820b32ec58af6c82621c32 (diff)
Update code as generated by current version of Kranc
git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/WeylScal4/trunk@69 4f5cb9a8-4dd8-4c2d-9bbd-173fa4467843
Diffstat (limited to 'src')
-rw-r--r--src/Boundaries.cc41
-rw-r--r--src/RegisterMoL.cc16
-rw-r--r--src/RegisterSymmetries.cc29
-rw-r--r--src/Startup.cc10
-rw-r--r--src/psis_calc_2nd.cc1269
-rw-r--r--src/psis_calc_4th.cc1269
6 files changed, 2634 insertions, 0 deletions
diff --git a/src/Boundaries.cc b/src/Boundaries.cc
new file mode 100644
index 0000000..080cfc4
--- /dev/null
+++ b/src/Boundaries.cc
@@ -0,0 +1,41 @@
+/* File produced by Kranc */
+
+#include "cctk.h"
+#include "cctk_Arguments.h"
+#include "cctk_Parameters.h"
+#include "cctk_Faces.h"
+#include "util_Table.h"
+#include "Symmetry.h"
+
+
+/* the boundary treatment is split into 3 steps: */
+/* 1. excision */
+/* 2. symmetries */
+/* 3. "other" boundary conditions, e.g. radiative */
+
+/* to simplify scheduling and testing, the 3 steps */
+/* are currently applied in separate functions */
+
+
+extern "C" void WeylScal4_CheckBoundaries(CCTK_ARGUMENTS)
+{
+ DECLARE_CCTK_ARGUMENTS;
+ DECLARE_CCTK_PARAMETERS;
+
+ return;
+}
+
+extern "C" void WeylScal4_SelectBoundConds(CCTK_ARGUMENTS)
+{
+ DECLARE_CCTK_ARGUMENTS;
+ DECLARE_CCTK_PARAMETERS;
+
+ CCTK_INT ierr = 0;
+ return;
+}
+
+
+
+/* template for entries in parameter file:
+*/
+
diff --git a/src/RegisterMoL.cc b/src/RegisterMoL.cc
new file mode 100644
index 0000000..261ce08
--- /dev/null
+++ b/src/RegisterMoL.cc
@@ -0,0 +1,16 @@
+/* File produced by Kranc */
+
+#include "cctk.h"
+#include "cctk_Arguments.h"
+#include "cctk_Parameters.h"
+
+extern "C" void WeylScal4_RegisterVars(CCTK_ARGUMENTS)
+{
+ DECLARE_CCTK_ARGUMENTS;
+ DECLARE_CCTK_PARAMETERS;
+
+ CCTK_INT ierr = 0;
+
+ /* Register all the evolved grid functions with MoL */
+ return;
+}
diff --git a/src/RegisterSymmetries.cc b/src/RegisterSymmetries.cc
new file mode 100644
index 0000000..9471e31
--- /dev/null
+++ b/src/RegisterSymmetries.cc
@@ -0,0 +1,29 @@
+/* File produced by Kranc */
+
+#include "cctk.h"
+#include "cctk_Arguments.h"
+#include "cctk_Parameters.h"
+#include "Symmetry.h"
+
+extern "C" void WeylScal4_RegisterSymmetries(CCTK_ARGUMENTS)
+{
+ DECLARE_CCTK_ARGUMENTS;
+ DECLARE_CCTK_PARAMETERS;
+
+
+ /* array holding symmetry definitions */
+ CCTK_INT sym[3];
+
+
+ /* Register symmetries of grid functions */
+ sym[0] = -1;
+ sym[1] = -1;
+ sym[2] = -1;
+ SetCartSymVN(cctkGH, sym, "WeylScal4::Psi4i");
+
+ sym[0] = 1;
+ sym[1] = 1;
+ sym[2] = 1;
+ SetCartSymVN(cctkGH, sym, "WeylScal4::Psi4r");
+
+}
diff --git a/src/Startup.cc b/src/Startup.cc
new file mode 100644
index 0000000..35f9e21
--- /dev/null
+++ b/src/Startup.cc
@@ -0,0 +1,10 @@
+/* File produced by Kranc */
+
+#include "cctk.h"
+
+extern "C" int WeylScal4_Startup(void)
+{
+ const char * banner = "WeylScal4";
+ CCTK_RegisterBanner(banner);
+ return 0;
+}
diff --git a/src/psis_calc_2nd.cc b/src/psis_calc_2nd.cc
new file mode 100644
index 0000000..e000a3c
--- /dev/null
+++ b/src/psis_calc_2nd.cc
@@ -0,0 +1,1269 @@
+/* File produced by Kranc */
+
+#define KRANC_C
+
+#include <assert.h>
+#include <math.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include "cctk.h"
+#include "cctk_Arguments.h"
+#include "cctk_Parameters.h"
+#include "GenericFD.h"
+#include "Differencing.h"
+
+/* Define macros used in calculations */
+#define INITVALUE (42)
+#define QAD(x) (SQR(SQR(x)))
+#define INV(x) ((1.0) / (x))
+#define SQR(x) ((x) * (x))
+#define CUB(x) ((x) * (x) * (x))
+
+extern "C" void psis_calc_2nd_SelectBCs(CCTK_ARGUMENTS)
+{
+ DECLARE_CCTK_ARGUMENTS;
+ DECLARE_CCTK_PARAMETERS;
+
+ CCTK_INT ierr = 0;
+ ierr = Boundary_SelectGroupForBC(cctkGH, CCTK_ALL_FACES, GenericFD_GetBoundaryWidth(cctkGH), -1 /* no table */, "WeylScal4::Psi4i_group","flat");
+ if (ierr < 0)
+ CCTK_WARN(1, "Failed to register flat BC for WeylScal4::Psi4i_group.");
+ ierr = Boundary_SelectGroupForBC(cctkGH, CCTK_ALL_FACES, GenericFD_GetBoundaryWidth(cctkGH), -1 /* no table */, "WeylScal4::Psi4r_group","flat");
+ if (ierr < 0)
+ CCTK_WARN(1, "Failed to register flat BC for WeylScal4::Psi4r_group.");
+ return;
+}
+
+static void psis_calc_2nd_Body(cGH const * restrict const cctkGH, int const dir, int const face, CCTK_REAL const normal[3], CCTK_REAL const tangentA[3], CCTK_REAL const tangentB[3], int const min[3], int const max[3], int const n_subblock_gfs, CCTK_REAL * restrict const subblock_gfs[])
+{
+ DECLARE_CCTK_ARGUMENTS;
+ DECLARE_CCTK_PARAMETERS;
+
+
+ /* Declare the variables used for looping over grid points */
+ CCTK_INT i, j, k;
+ // CCTK_INT index = INITVALUE;
+
+ /* Declare finite differencing variables */
+
+ if (verbose > 1)
+ {
+ CCTK_VInfo(CCTK_THORNSTRING,"Entering psis_calc_2nd_Body");
+ }
+
+ if (cctk_iteration % psis_calc_2nd_calc_every != psis_calc_2nd_calc_offset)
+ {
+ return;
+ }
+
+ const char *groups[] = {"admbase::curv","admbase::metric","grid::coordinates","WeylScal4::Psi4i_group","WeylScal4::Psi4r_group"};
+ GenericFD_AssertGroupStorage(cctkGH, "psis_calc_2nd", 5, groups);
+
+ /* Include user-supplied include files */
+
+ /* Initialise finite differencing variables */
+ ptrdiff_t const di = 1;
+ ptrdiff_t const dj = CCTK_GFINDEX3D(cctkGH,0,1,0) - CCTK_GFINDEX3D(cctkGH,0,0,0);
+ ptrdiff_t const dk = CCTK_GFINDEX3D(cctkGH,0,0,1) - CCTK_GFINDEX3D(cctkGH,0,0,0);
+ CCTK_REAL const dx = ToReal(CCTK_DELTA_SPACE(0));
+ CCTK_REAL const dy = ToReal(CCTK_DELTA_SPACE(1));
+ CCTK_REAL const dz = ToReal(CCTK_DELTA_SPACE(2));
+ CCTK_REAL const dxi = INV(dx);
+ CCTK_REAL const dyi = INV(dy);
+ CCTK_REAL const dzi = INV(dz);
+ CCTK_REAL const khalf = 0.5;
+ CCTK_REAL const kthird = 1/3.0;
+ CCTK_REAL const ktwothird = 2.0/3.0;
+ CCTK_REAL const kfourthird = 4.0/3.0;
+ CCTK_REAL const keightthird = 8.0/3.0;
+ CCTK_REAL const hdxi = 0.5 * dxi;
+ CCTK_REAL const hdyi = 0.5 * dyi;
+ CCTK_REAL const hdzi = 0.5 * dzi;
+
+ /* Initialize predefined quantities */
+ CCTK_REAL const p1o12dx = 0.0833333333333333333333333333333*INV(dx);
+ CCTK_REAL const p1o12dy = 0.0833333333333333333333333333333*INV(dy);
+ CCTK_REAL const p1o12dz = 0.0833333333333333333333333333333*INV(dz);
+ CCTK_REAL const p1o144dxdy = 0.00694444444444444444444444444444*INV(dx)*INV(dy);
+ CCTK_REAL const p1o144dxdz = 0.00694444444444444444444444444444*INV(dx)*INV(dz);
+ CCTK_REAL const p1o144dydz = 0.00694444444444444444444444444444*INV(dy)*INV(dz);
+ CCTK_REAL const p1o2dx = 0.5*INV(dx);
+ CCTK_REAL const p1o2dy = 0.5*INV(dy);
+ CCTK_REAL const p1o2dz = 0.5*INV(dz);
+ CCTK_REAL const p1o4dxdy = 0.25*INV(dx)*INV(dy);
+ CCTK_REAL const p1o4dxdz = 0.25*INV(dx)*INV(dz);
+ CCTK_REAL const p1o4dydz = 0.25*INV(dy)*INV(dz);
+ CCTK_REAL const p1odx = INV(dx);
+ CCTK_REAL const p1odx2 = INV(SQR(dx));
+ CCTK_REAL const p1odxdy = INV(dx)*INV(dy);
+ CCTK_REAL const p1odxdz = INV(dx)*INV(dz);
+ CCTK_REAL const p1ody = INV(dy);
+ CCTK_REAL const p1ody2 = INV(SQR(dy));
+ CCTK_REAL const p1odydz = INV(dy)*INV(dz);
+ CCTK_REAL const p1odz = INV(dz);
+ CCTK_REAL const p1odz2 = INV(SQR(dz));
+ CCTK_REAL const pm1o12dx2 = -0.0833333333333333333333333333333*INV(SQR(dx));
+ CCTK_REAL const pm1o12dy2 = -0.0833333333333333333333333333333*INV(SQR(dy));
+ CCTK_REAL const pm1o12dz2 = -0.0833333333333333333333333333333*INV(SQR(dz));
+ CCTK_REAL const pm1o2dx = -0.5*INV(dx);
+ CCTK_REAL const pm1o2dy = -0.5*INV(dy);
+ CCTK_REAL const pm1o2dz = -0.5*INV(dz);
+
+ /* Loop over the grid points */
+ for (k = min[2]; k < max[2]; k++)
+ {
+ for (j = min[1]; j < max[1]; j++)
+ {
+ for (i = min[0]; i < max[0]; i++)
+ {
+ int const index = CCTK_GFINDEX3D(cctkGH,i,j,k) ;
+
+ /* Assign local copies of grid functions */
+ CCTK_REAL gxxL = gxx[index];
+ CCTK_REAL gxyL = gxy[index];
+ CCTK_REAL gxzL = gxz[index];
+ CCTK_REAL gyyL = gyy[index];
+ CCTK_REAL gyzL = gyz[index];
+ CCTK_REAL gzzL = gzz[index];
+ CCTK_REAL kxxL = kxx[index];
+ CCTK_REAL kxyL = kxy[index];
+ CCTK_REAL kxzL = kxz[index];
+ CCTK_REAL kyyL = kyy[index];
+ CCTK_REAL kyzL = kyz[index];
+ CCTK_REAL kzzL = kzz[index];
+ CCTK_REAL xL = x[index];
+ CCTK_REAL yL = y[index];
+ CCTK_REAL zL = z[index];
+
+ /* Include user supplied include files */
+
+ /* Precompute derivatives */
+ CCTK_REAL const PDstandard2nd1gxx = PDstandard2nd1(&gxx[index]);
+ CCTK_REAL const PDstandard2nd2gxx = PDstandard2nd2(&gxx[index]);
+ CCTK_REAL const PDstandard2nd3gxx = PDstandard2nd3(&gxx[index]);
+ CCTK_REAL const PDstandard2nd22gxx = PDstandard2nd22(&gxx[index]);
+ CCTK_REAL const PDstandard2nd33gxx = PDstandard2nd33(&gxx[index]);
+ CCTK_REAL const PDstandard2nd23gxx = PDstandard2nd23(&gxx[index]);
+ CCTK_REAL const PDstandard2nd1gxy = PDstandard2nd1(&gxy[index]);
+ CCTK_REAL const PDstandard2nd2gxy = PDstandard2nd2(&gxy[index]);
+ CCTK_REAL const PDstandard2nd3gxy = PDstandard2nd3(&gxy[index]);
+ CCTK_REAL const PDstandard2nd33gxy = PDstandard2nd33(&gxy[index]);
+ CCTK_REAL const PDstandard2nd12gxy = PDstandard2nd12(&gxy[index]);
+ CCTK_REAL const PDstandard2nd13gxy = PDstandard2nd13(&gxy[index]);
+ CCTK_REAL const PDstandard2nd23gxy = PDstandard2nd23(&gxy[index]);
+ CCTK_REAL const PDstandard2nd1gxz = PDstandard2nd1(&gxz[index]);
+ CCTK_REAL const PDstandard2nd2gxz = PDstandard2nd2(&gxz[index]);
+ CCTK_REAL const PDstandard2nd3gxz = PDstandard2nd3(&gxz[index]);
+ CCTK_REAL const PDstandard2nd22gxz = PDstandard2nd22(&gxz[index]);
+ CCTK_REAL const PDstandard2nd12gxz = PDstandard2nd12(&gxz[index]);
+ CCTK_REAL const PDstandard2nd13gxz = PDstandard2nd13(&gxz[index]);
+ CCTK_REAL const PDstandard2nd23gxz = PDstandard2nd23(&gxz[index]);
+ CCTK_REAL const PDstandard2nd1gyy = PDstandard2nd1(&gyy[index]);
+ CCTK_REAL const PDstandard2nd2gyy = PDstandard2nd2(&gyy[index]);
+ CCTK_REAL const PDstandard2nd3gyy = PDstandard2nd3(&gyy[index]);
+ CCTK_REAL const PDstandard2nd11gyy = PDstandard2nd11(&gyy[index]);
+ CCTK_REAL const PDstandard2nd33gyy = PDstandard2nd33(&gyy[index]);
+ CCTK_REAL const PDstandard2nd13gyy = PDstandard2nd13(&gyy[index]);
+ CCTK_REAL const PDstandard2nd1gyz = PDstandard2nd1(&gyz[index]);
+ CCTK_REAL const PDstandard2nd2gyz = PDstandard2nd2(&gyz[index]);
+ CCTK_REAL const PDstandard2nd3gyz = PDstandard2nd3(&gyz[index]);
+ CCTK_REAL const PDstandard2nd11gyz = PDstandard2nd11(&gyz[index]);
+ CCTK_REAL const PDstandard2nd12gyz = PDstandard2nd12(&gyz[index]);
+ CCTK_REAL const PDstandard2nd13gyz = PDstandard2nd13(&gyz[index]);
+ CCTK_REAL const PDstandard2nd23gyz = PDstandard2nd23(&gyz[index]);
+ CCTK_REAL const PDstandard2nd1gzz = PDstandard2nd1(&gzz[index]);
+ CCTK_REAL const PDstandard2nd2gzz = PDstandard2nd2(&gzz[index]);
+ CCTK_REAL const PDstandard2nd3gzz = PDstandard2nd3(&gzz[index]);
+ CCTK_REAL const PDstandard2nd11gzz = PDstandard2nd11(&gzz[index]);
+ CCTK_REAL const PDstandard2nd22gzz = PDstandard2nd22(&gzz[index]);
+ CCTK_REAL const PDstandard2nd12gzz = PDstandard2nd12(&gzz[index]);
+ CCTK_REAL const PDstandard2nd2kxx = PDstandard2nd2(&kxx[index]);
+ CCTK_REAL const PDstandard2nd3kxx = PDstandard2nd3(&kxx[index]);
+ CCTK_REAL const PDstandard2nd1kxy = PDstandard2nd1(&kxy[index]);
+ CCTK_REAL const PDstandard2nd2kxy = PDstandard2nd2(&kxy[index]);
+ CCTK_REAL const PDstandard2nd3kxy = PDstandard2nd3(&kxy[index]);
+ CCTK_REAL const PDstandard2nd1kxz = PDstandard2nd1(&kxz[index]);
+ CCTK_REAL const PDstandard2nd2kxz = PDstandard2nd2(&kxz[index]);
+ CCTK_REAL const PDstandard2nd3kxz = PDstandard2nd3(&kxz[index]);
+ CCTK_REAL const PDstandard2nd1kyy = PDstandard2nd1(&kyy[index]);
+ CCTK_REAL const PDstandard2nd3kyy = PDstandard2nd3(&kyy[index]);
+ CCTK_REAL const PDstandard2nd1kyz = PDstandard2nd1(&kyz[index]);
+ CCTK_REAL const PDstandard2nd2kyz = PDstandard2nd2(&kyz[index]);
+ CCTK_REAL const PDstandard2nd3kyz = PDstandard2nd3(&kyz[index]);
+ CCTK_REAL const PDstandard2nd1kzz = PDstandard2nd1(&kzz[index]);
+ CCTK_REAL const PDstandard2nd2kzz = PDstandard2nd2(&kzz[index]);
+
+ /* Calculate temporaries and grid functions */
+ CCTK_REAL detg = 2*gxyL*gxzL*gyzL + gzzL*(gxxL*gyyL - SQR(gxyL)) -
+ gyyL*SQR(gxzL) - gxxL*SQR(gyzL);
+
+ CCTK_REAL invdetg = INV(detg);
+
+ CCTK_REAL gInv11 = invdetg*(gyyL*gzzL - SQR(gyzL));
+
+ CCTK_REAL gInv12 = (gxzL*gyzL - gxyL*gzzL)*invdetg;
+
+ CCTK_REAL gInv13 = (-(gxzL*gyyL) + gxyL*gyzL)*invdetg;
+
+ CCTK_REAL gInv21 = (gxzL*gyzL - gxyL*gzzL)*invdetg;
+
+ CCTK_REAL gInv22 = invdetg*(gxxL*gzzL - SQR(gxzL));
+
+ CCTK_REAL gInv23 = (gxyL*gxzL - gxxL*gyzL)*invdetg;
+
+ CCTK_REAL gInv31 = (-(gxzL*gyyL) + gxyL*gyzL)*invdetg;
+
+ CCTK_REAL gInv32 = (gxyL*gxzL - gxxL*gyzL)*invdetg;
+
+ CCTK_REAL gInv33 = invdetg*(gxxL*gyyL - SQR(gxyL));
+
+ CCTK_REAL gamma111 = 0.5*(gInv11*PDstandard2nd1gxx +
+ 2*(gInv12*PDstandard2nd1gxy + gInv13*PDstandard2nd1gxz) -
+ gInv12*PDstandard2nd2gxx - gInv13*PDstandard2nd3gxx);
+
+ CCTK_REAL gamma211 = 0.5*(gInv21*PDstandard2nd1gxx +
+ 2*(gInv22*PDstandard2nd1gxy + gInv23*PDstandard2nd1gxz) -
+ gInv22*PDstandard2nd2gxx - gInv23*PDstandard2nd3gxx);
+
+ CCTK_REAL gamma311 = 0.5*(gInv31*PDstandard2nd1gxx +
+ 2*(gInv32*PDstandard2nd1gxy + gInv33*PDstandard2nd1gxz) -
+ gInv32*PDstandard2nd2gxx - gInv33*PDstandard2nd3gxx);
+
+ CCTK_REAL gamma121 = 0.5*(gInv12*PDstandard2nd1gyy +
+ gInv11*PDstandard2nd2gxx + gInv13*(PDstandard2nd1gyz +
+ PDstandard2nd2gxz - PDstandard2nd3gxy));
+
+ CCTK_REAL gamma221 = 0.5*(gInv22*PDstandard2nd1gyy +
+ gInv21*PDstandard2nd2gxx + gInv23*(PDstandard2nd1gyz +
+ PDstandard2nd2gxz - PDstandard2nd3gxy));
+
+ CCTK_REAL gamma321 = 0.5*(gInv32*PDstandard2nd1gyy +
+ gInv31*PDstandard2nd2gxx + gInv33*(PDstandard2nd1gyz +
+ PDstandard2nd2gxz - PDstandard2nd3gxy));
+
+ CCTK_REAL gamma131 = 0.5*(gInv13*PDstandard2nd1gzz +
+ gInv11*PDstandard2nd3gxx + gInv12*(PDstandard2nd1gyz -
+ PDstandard2nd2gxz + PDstandard2nd3gxy));
+
+ CCTK_REAL gamma231 = 0.5*(gInv23*PDstandard2nd1gzz +
+ gInv21*PDstandard2nd3gxx + gInv22*(PDstandard2nd1gyz -
+ PDstandard2nd2gxz + PDstandard2nd3gxy));
+
+ CCTK_REAL gamma331 = 0.5*(gInv33*PDstandard2nd1gzz +
+ gInv31*PDstandard2nd3gxx + gInv32*(PDstandard2nd1gyz -
+ PDstandard2nd2gxz + PDstandard2nd3gxy));
+
+ CCTK_REAL gamma122 = 0.5*(gInv11*(-PDstandard2nd1gyy +
+ 2*PDstandard2nd2gxy) + gInv12*PDstandard2nd2gyy +
+ gInv13*(2*PDstandard2nd2gyz - PDstandard2nd3gyy));
+
+ CCTK_REAL gamma222 = 0.5*(gInv21*(-PDstandard2nd1gyy +
+ 2*PDstandard2nd2gxy) + gInv22*PDstandard2nd2gyy +
+ gInv23*(2*PDstandard2nd2gyz - PDstandard2nd3gyy));
+
+ CCTK_REAL gamma322 = 0.5*(gInv31*(-PDstandard2nd1gyy +
+ 2*PDstandard2nd2gxy) + gInv32*PDstandard2nd2gyy +
+ gInv33*(2*PDstandard2nd2gyz - PDstandard2nd3gyy));
+
+ CCTK_REAL gamma132 = 0.5*(gInv13*PDstandard2nd2gzz +
+ gInv11*(-PDstandard2nd1gyz + PDstandard2nd2gxz + PDstandard2nd3gxy) +
+ gInv12*PDstandard2nd3gyy);
+
+ CCTK_REAL gamma232 = 0.5*(gInv23*PDstandard2nd2gzz +
+ gInv21*(-PDstandard2nd1gyz + PDstandard2nd2gxz + PDstandard2nd3gxy) +
+ gInv22*PDstandard2nd3gyy);
+
+ CCTK_REAL gamma332 = 0.5*(gInv33*PDstandard2nd2gzz +
+ gInv31*(-PDstandard2nd1gyz + PDstandard2nd2gxz + PDstandard2nd3gxy) +
+ gInv32*PDstandard2nd3gyy);
+
+ CCTK_REAL gamma133 = 0.5*(gInv11*(-PDstandard2nd1gzz +
+ 2*PDstandard2nd3gxz) + gInv12*(-PDstandard2nd2gzz +
+ 2*PDstandard2nd3gyz) + gInv13*PDstandard2nd3gzz);
+
+ CCTK_REAL gamma233 = 0.5*(gInv21*(-PDstandard2nd1gzz +
+ 2*PDstandard2nd3gxz) + gInv22*(-PDstandard2nd2gzz +
+ 2*PDstandard2nd3gyz) + gInv23*PDstandard2nd3gzz);
+
+ CCTK_REAL gamma333 = 0.5*(gInv31*(-PDstandard2nd1gzz +
+ 2*PDstandard2nd3gxz) + gInv32*(-PDstandard2nd2gzz +
+ 2*PDstandard2nd3gyz) + gInv33*PDstandard2nd3gzz);
+
+ CCTK_REAL xmoved = xL - ToReal(xorig);
+
+ CCTK_REAL ymoved = yL - ToReal(yorig);
+
+ CCTK_REAL zmoved = zL - ToReal(zorig);
+
+ CCTK_REAL va1 = -ymoved;
+
+ CCTK_REAL va2 = xmoved + ToReal(offset);
+
+ CCTK_REAL va3 = 0;
+
+ CCTK_REAL vb1 = xmoved + ToReal(offset);
+
+ CCTK_REAL vb2 = ymoved;
+
+ CCTK_REAL vb3 = zmoved;
+
+ CCTK_REAL vc1 = ((-(gInv13*va2) + gInv12*va3)*vb1 + (gInv13*va1 -
+ gInv11*va3)*vb2 + (-(gInv12*va1) + gInv11*va2)*vb3)*sqrt(detg);
+
+ CCTK_REAL vc2 = ((-(gInv23*va2) + gInv22*va3)*vb1 + (gInv23*va1 -
+ gInv21*va3)*vb2 + (-(gInv22*va1) + gInv21*va2)*vb3)*sqrt(detg);
+
+ CCTK_REAL vc3 = ((-(gInv33*va2) + gInv32*va3)*vb1 + (gInv33*va1 -
+ gInv31*va3)*vb2 + (-(gInv32*va1) + gInv31*va2)*vb3)*sqrt(detg);
+
+ CCTK_REAL wa1 = va1;
+
+ CCTK_REAL wa2 = va2;
+
+ CCTK_REAL wa3 = va3;
+
+ CCTK_REAL omega11 = 2*(gyzL*wa2*wa3 + wa1*(gxyL*wa2 + gxzL*wa3)) +
+ gxxL*SQR(wa1) + gyyL*SQR(wa2) + gzzL*SQR(wa3);
+
+ CCTK_REAL ea1 = wa1*INV(sqrt(omega11));
+
+ CCTK_REAL ea2 = wa2*INV(sqrt(omega11));
+
+ CCTK_REAL ea3 = wa3*INV(sqrt(omega11));
+
+ CCTK_REAL omega12 = ea1*(gxxL*vb1 + gxyL*vb2 + gxzL*vb3) +
+ ea2*(gxyL*vb1 + gyyL*vb2 + gyzL*vb3) + ea3*(gxzL*vb1 + gyzL*vb2 +
+ gzzL*vb3);
+
+ CCTK_REAL wb1 = -(ea1*omega12) + vb1;
+
+ CCTK_REAL wb2 = -(ea2*omega12) + vb2;
+
+ CCTK_REAL wb3 = -(ea3*omega12) + vb3;
+
+ CCTK_REAL omega22 = 2*(gyzL*wb2*wb3 + wb1*(gxyL*wb2 + gxzL*wb3)) +
+ gxxL*SQR(wb1) + gyyL*SQR(wb2) + gzzL*SQR(wb3);
+
+ CCTK_REAL eb1 = wb1*INV(sqrt(omega22));
+
+ CCTK_REAL eb2 = wb2*INV(sqrt(omega22));
+
+ CCTK_REAL eb3 = wb3*INV(sqrt(omega22));
+
+ CCTK_REAL omega13 = ea1*(gxxL*vc1 + gxyL*vc2 + gxzL*vc3) +
+ ea2*(gxyL*vc1 + gyyL*vc2 + gyzL*vc3) + ea3*(gxzL*vc1 + gyzL*vc2 +
+ gzzL*vc3);
+
+ CCTK_REAL omega23 = eb1*(gxxL*vc1 + gxyL*vc2 + gxzL*vc3) +
+ eb2*(gxyL*vc1 + gyyL*vc2 + gyzL*vc3) + eb3*(gxzL*vc1 + gyzL*vc2 +
+ gzzL*vc3);
+
+ CCTK_REAL wc1 = -(ea1*omega13) - eb1*omega23 + vc1;
+
+ CCTK_REAL wc2 = -(ea2*omega13) - eb2*omega23 + vc2;
+
+ CCTK_REAL wc3 = -(ea3*omega13) - eb3*omega23 + vc3;
+
+ CCTK_REAL omega33 = 2*(gyzL*wc2*wc3 + wc1*(gxyL*wc2 + gxzL*wc3)) +
+ gxxL*SQR(wc1) + gyyL*SQR(wc2) + gzzL*SQR(wc3);
+
+ CCTK_REAL ec1 = wc1*INV(sqrt(omega33));
+
+ CCTK_REAL ec2 = wc2*INV(sqrt(omega33));
+
+ CCTK_REAL ec3 = wc3*INV(sqrt(omega33));
+
+ CCTK_REAL isqrt2 = 0.707106781186547524;
+
+ CCTK_REAL n1 = -(eb1*isqrt2);
+
+ CCTK_REAL n2 = -(eb2*isqrt2);
+
+ CCTK_REAL n3 = -(eb3*isqrt2);
+
+ CCTK_REAL rm1 = ec1*isqrt2;
+
+ CCTK_REAL rm2 = ec2*isqrt2;
+
+ CCTK_REAL rm3 = ec3*isqrt2;
+
+ CCTK_REAL im1 = ea1*isqrt2;
+
+ CCTK_REAL im2 = ea2*isqrt2;
+
+ CCTK_REAL im3 = ea3*isqrt2;
+
+ CCTK_REAL rmbar1 = ec1*isqrt2;
+
+ CCTK_REAL rmbar2 = ec2*isqrt2;
+
+ CCTK_REAL rmbar3 = ec3*isqrt2;
+
+ CCTK_REAL imbar1 = -(ea1*isqrt2);
+
+ CCTK_REAL imbar2 = -(ea2*isqrt2);
+
+ CCTK_REAL imbar3 = -(ea3*isqrt2);
+
+ CCTK_REAL nn = isqrt2;
+
+ CCTK_REAL R1111 = 0;
+
+ CCTK_REAL R1112 = 0;
+
+ CCTK_REAL R1113 = 0;
+
+ CCTK_REAL R1121 = 0;
+
+ CCTK_REAL R1122 = 0;
+
+ CCTK_REAL R1123 = 0;
+
+ CCTK_REAL R1131 = 0;
+
+ CCTK_REAL R1132 = 0;
+
+ CCTK_REAL R1133 = 0;
+
+ CCTK_REAL R1211 = 0;
+
+ CCTK_REAL R1212 = 0.5*((4*gamma121*gamma221 -
+ 2*gamma111*gamma222)*gxyL + (4*gamma121*gamma321 -
+ 2*gamma111*gamma322)*gxzL + (4*gamma221*gamma321 -
+ 2*gamma211*gamma322)*gyzL - 2*(gamma111*gamma122*gxxL +
+ gamma122*gamma211*gxyL + gamma122*gamma311*gxzL +
+ gamma211*gamma222*gyyL + gamma222*gamma311*gyzL +
+ gamma311*gamma322*gzzL) - PDstandard2nd11gyy + 2*PDstandard2nd12gxy -
+ PDstandard2nd22gxx + 2*gxxL*SQR(gamma121) + 2*gyyL*SQR(gamma221) +
+ 2*gzzL*SQR(gamma321));
+
+ CCTK_REAL R1213 = (gamma121*gamma131 - gamma111*gamma132)*gxxL +
+ (-(gamma132*gamma211) + gamma131*gamma221 + gamma121*gamma231 -
+ gamma111*gamma232)*gxyL + (-(gamma132*gamma311) + gamma131*gamma321 +
+ gamma121*gamma331 - gamma111*gamma332)*gxzL + (gamma221*gamma231 -
+ gamma211*gamma232)*gyyL + (-(gamma232*gamma311) + gamma231*gamma321 +
+ gamma221*gamma331 - gamma211*gamma332)*gyzL + (gamma321*gamma331 -
+ gamma311*gamma332)*gzzL + 0.5*(-PDstandard2nd11gyz + PDstandard2nd12gxz
+ + PDstandard2nd13gxy - PDstandard2nd23gxx);
+
+ CCTK_REAL R1221 = (-2*gamma121*gamma221 + gamma111*gamma222)*gxyL +
+ (-2*gamma121*gamma321 + gamma111*gamma322)*gxzL +
+ gamma122*(gamma111*gxxL + gamma211*gxyL + gamma311*gxzL) +
+ (-2*gamma221*gamma321 + gamma211*gamma322)*gyzL +
+ gamma222*(gamma211*gyyL + gamma311*gyzL) - PDstandard2nd12gxy +
+ 0.5*(PDstandard2nd11gyy + PDstandard2nd22gxx) - gxxL*SQR(gamma121) -
+ gyyL*SQR(gamma221) + gzzL*(gamma311*gamma322 - SQR(gamma321));
+
+ CCTK_REAL R1222 = 0;
+
+ CCTK_REAL R1223 = (gamma122*gamma131 - gamma121*gamma132)*gxxL +
+ (-(gamma132*gamma221) + gamma131*gamma222 + gamma122*gamma231 -
+ gamma121*gamma232)*gxyL + (-(gamma132*gamma321) + gamma131*gamma322 +
+ gamma122*gamma331 - gamma121*gamma332)*gxzL + (gamma222*gamma231 -
+ gamma221*gamma232)*gyyL + (-(gamma232*gamma321) + gamma231*gamma322 +
+ gamma222*gamma331 - gamma221*gamma332)*gyzL + (gamma322*gamma331 -
+ gamma321*gamma332)*gzzL + 0.5*(-PDstandard2nd12gyz + PDstandard2nd13gyy
+ + PDstandard2nd22gxz - PDstandard2nd23gxy);
+
+ CCTK_REAL R1231 = (-(gamma121*gamma131) + gamma111*gamma132)*gxxL +
+ (gamma132*gamma211 - gamma131*gamma221 - gamma121*gamma231 +
+ gamma111*gamma232)*gxyL + (gamma132*gamma311 - gamma131*gamma321 -
+ gamma121*gamma331 + gamma111*gamma332)*gxzL + (-(gamma221*gamma231) +
+ gamma211*gamma232)*gyyL + (gamma232*gamma311 - gamma231*gamma321 -
+ gamma221*gamma331 + gamma211*gamma332)*gyzL + (-(gamma321*gamma331) +
+ gamma311*gamma332)*gzzL + 0.5*(PDstandard2nd11gyz - PDstandard2nd12gxz
+ - PDstandard2nd13gxy + PDstandard2nd23gxx);
+
+ CCTK_REAL R1232 = (-(gamma122*gamma131) + gamma121*gamma132)*gxxL +
+ (gamma132*gamma221 - gamma131*gamma222 - gamma122*gamma231 +
+ gamma121*gamma232)*gxyL + (gamma132*gamma321 - gamma131*gamma322 -
+ gamma122*gamma331 + gamma121*gamma332)*gxzL + (-(gamma222*gamma231) +
+ gamma221*gamma232)*gyyL + (gamma232*gamma321 - gamma231*gamma322 -
+ gamma222*gamma331 + gamma221*gamma332)*gyzL + (-(gamma322*gamma331) +
+ gamma321*gamma332)*gzzL + 0.5*(PDstandard2nd12gyz - PDstandard2nd13gyy
+ - PDstandard2nd22gxz + PDstandard2nd23gxy);
+
+ CCTK_REAL R1233 = 0;
+
+ CCTK_REAL R1311 = 0;
+
+ CCTK_REAL R1312 = (gamma121*gamma131 - gamma111*gamma132)*gxxL +
+ (-(gamma132*gamma211) + gamma131*gamma221 + gamma121*gamma231 -
+ gamma111*gamma232)*gxyL + (-(gamma132*gamma311) + gamma131*gamma321 +
+ gamma121*gamma331 - gamma111*gamma332)*gxzL + (gamma221*gamma231 -
+ gamma211*gamma232)*gyyL + (-(gamma232*gamma311) + gamma231*gamma321 +
+ gamma221*gamma331 - gamma211*gamma332)*gyzL + (gamma321*gamma331 -
+ gamma311*gamma332)*gzzL + 0.5*(-PDstandard2nd11gyz + PDstandard2nd12gxz
+ + PDstandard2nd13gxy - PDstandard2nd23gxx);
+
+ CCTK_REAL R1313 = 0.5*((4*gamma131*gamma231 -
+ 2*gamma111*gamma233)*gxyL + (4*gamma131*gamma331 -
+ 2*gamma111*gamma333)*gxzL + (4*gamma231*gamma331 -
+ 2*gamma211*gamma333)*gyzL - 2*(gamma111*gamma133*gxxL +
+ gamma133*gamma211*gxyL + gamma133*gamma311*gxzL +
+ gamma211*gamma233*gyyL + gamma233*gamma311*gyzL +
+ gamma311*gamma333*gzzL) - PDstandard2nd11gzz + 2*PDstandard2nd13gxz -
+ PDstandard2nd33gxx + 2*gxxL*SQR(gamma131) + 2*gyyL*SQR(gamma231) +
+ 2*gzzL*SQR(gamma331));
+
+ CCTK_REAL R1321 = (-(gamma121*gamma131) + gamma111*gamma132)*gxxL +
+ (gamma132*gamma211 - gamma131*gamma221 - gamma121*gamma231 +
+ gamma111*gamma232)*gxyL + (gamma132*gamma311 - gamma131*gamma321 -
+ gamma121*gamma331 + gamma111*gamma332)*gxzL + (-(gamma221*gamma231) +
+ gamma211*gamma232)*gyyL + (gamma232*gamma311 - gamma231*gamma321 -
+ gamma221*gamma331 + gamma211*gamma332)*gyzL + (-(gamma321*gamma331) +
+ gamma311*gamma332)*gzzL + 0.5*(PDstandard2nd11gyz - PDstandard2nd12gxz
+ - PDstandard2nd13gxy + PDstandard2nd23gxx);
+
+ CCTK_REAL R1322 = 0;
+
+ CCTK_REAL R1323 = (gamma131*gamma132 - gamma121*gamma133)*gxxL +
+ (-(gamma133*gamma221) + gamma132*gamma231 + gamma131*gamma232 -
+ gamma121*gamma233)*gxyL + (-(gamma133*gamma321) + gamma132*gamma331 +
+ gamma131*gamma332 - gamma121*gamma333)*gxzL + (gamma231*gamma232 -
+ gamma221*gamma233)*gyyL + (-(gamma233*gamma321) + gamma232*gamma331 +
+ gamma231*gamma332 - gamma221*gamma333)*gyzL + (gamma331*gamma332 -
+ gamma321*gamma333)*gzzL + 0.5*(-PDstandard2nd12gzz + PDstandard2nd13gyz
+ + PDstandard2nd23gxz - PDstandard2nd33gxy);
+
+ CCTK_REAL R1331 = (-2*gamma131*gamma231 + gamma111*gamma233)*gxyL +
+ (-2*gamma131*gamma331 + gamma111*gamma333)*gxzL +
+ gamma133*(gamma111*gxxL + gamma211*gxyL + gamma311*gxzL) +
+ (-2*gamma231*gamma331 + gamma211*gamma333)*gyzL +
+ gamma233*(gamma211*gyyL + gamma311*gyzL) - PDstandard2nd13gxz +
+ 0.5*(PDstandard2nd11gzz + PDstandard2nd33gxx) - gxxL*SQR(gamma131) -
+ gyyL*SQR(gamma231) + gzzL*(gamma311*gamma333 - SQR(gamma331));
+
+ CCTK_REAL R1332 = (-(gamma131*gamma132) + gamma121*gamma133)*gxxL +
+ (gamma133*gamma221 - gamma132*gamma231 - gamma131*gamma232 +
+ gamma121*gamma233)*gxyL + (gamma133*gamma321 - gamma132*gamma331 -
+ gamma131*gamma332 + gamma121*gamma333)*gxzL + (-(gamma231*gamma232) +
+ gamma221*gamma233)*gyyL + (gamma233*gamma321 - gamma232*gamma331 -
+ gamma231*gamma332 + gamma221*gamma333)*gyzL + (-(gamma331*gamma332) +
+ gamma321*gamma333)*gzzL + 0.5*(PDstandard2nd12gzz - PDstandard2nd13gyz
+ - PDstandard2nd23gxz + PDstandard2nd33gxy);
+
+ CCTK_REAL R1333 = 0;
+
+ CCTK_REAL R2111 = 0;
+
+ CCTK_REAL R2112 = (-2*gamma121*gamma221 + gamma111*gamma222)*gxyL +
+ (-2*gamma121*gamma321 + gamma111*gamma322)*gxzL +
+ gamma122*(gamma111*gxxL + gamma211*gxyL + gamma311*gxzL) +
+ (-2*gamma221*gamma321 + gamma211*gamma322)*gyzL +
+ gamma222*(gamma211*gyyL + gamma311*gyzL) - PDstandard2nd12gxy +
+ 0.5*(PDstandard2nd11gyy + PDstandard2nd22gxx) - gxxL*SQR(gamma121) -
+ gyyL*SQR(gamma221) + gzzL*(gamma311*gamma322 - SQR(gamma321));
+
+ CCTK_REAL R2113 = (-(gamma121*gamma131) + gamma111*gamma132)*gxxL +
+ (gamma132*gamma211 - gamma131*gamma221 - gamma121*gamma231 +
+ gamma111*gamma232)*gxyL + (gamma132*gamma311 - gamma131*gamma321 -
+ gamma121*gamma331 + gamma111*gamma332)*gxzL + (-(gamma221*gamma231) +
+ gamma211*gamma232)*gyyL + (gamma232*gamma311 - gamma231*gamma321 -
+ gamma221*gamma331 + gamma211*gamma332)*gyzL + (-(gamma321*gamma331) +
+ gamma311*gamma332)*gzzL + 0.5*(PDstandard2nd11gyz - PDstandard2nd12gxz
+ - PDstandard2nd13gxy + PDstandard2nd23gxx);
+
+ CCTK_REAL R2121 = 0.5*((4*gamma121*gamma221 -
+ 2*gamma111*gamma222)*gxyL + (4*gamma121*gamma321 -
+ 2*gamma111*gamma322)*gxzL + (4*gamma221*gamma321 -
+ 2*gamma211*gamma322)*gyzL - 2*(gamma111*gamma122*gxxL +
+ gamma122*gamma211*gxyL + gamma122*gamma311*gxzL +
+ gamma211*gamma222*gyyL + gamma222*gamma311*gyzL +
+ gamma311*gamma322*gzzL) - PDstandard2nd11gyy + 2*PDstandard2nd12gxy -
+ PDstandard2nd22gxx + 2*gxxL*SQR(gamma121) + 2*gyyL*SQR(gamma221) +
+ 2*gzzL*SQR(gamma321));
+
+ CCTK_REAL R2122 = 0;
+
+ CCTK_REAL R2123 = (-(gamma122*gamma131) + gamma121*gamma132)*gxxL +
+ (gamma132*gamma221 - gamma131*gamma222 - gamma122*gamma231 +
+ gamma121*gamma232)*gxyL + (gamma132*gamma321 - gamma131*gamma322 -
+ gamma122*gamma331 + gamma121*gamma332)*gxzL + (-(gamma222*gamma231) +
+ gamma221*gamma232)*gyyL + (gamma232*gamma321 - gamma231*gamma322 -
+ gamma222*gamma331 + gamma221*gamma332)*gyzL + (-(gamma322*gamma331) +
+ gamma321*gamma332)*gzzL + 0.5*(PDstandard2nd12gyz - PDstandard2nd13gyy
+ - PDstandard2nd22gxz + PDstandard2nd23gxy);
+
+ CCTK_REAL R2131 = (gamma121*gamma131 - gamma111*gamma132)*gxxL +
+ (-(gamma132*gamma211) + gamma131*gamma221 + gamma121*gamma231 -
+ gamma111*gamma232)*gxyL + (-(gamma132*gamma311) + gamma131*gamma321 +
+ gamma121*gamma331 - gamma111*gamma332)*gxzL + (gamma221*gamma231 -
+ gamma211*gamma232)*gyyL + (-(gamma232*gamma311) + gamma231*gamma321 +
+ gamma221*gamma331 - gamma211*gamma332)*gyzL + (gamma321*gamma331 -
+ gamma311*gamma332)*gzzL + 0.5*(-PDstandard2nd11gyz + PDstandard2nd12gxz
+ + PDstandard2nd13gxy - PDstandard2nd23gxx);
+
+ CCTK_REAL R2132 = (gamma122*gamma131 - gamma121*gamma132)*gxxL +
+ (-(gamma132*gamma221) + gamma131*gamma222 + gamma122*gamma231 -
+ gamma121*gamma232)*gxyL + (-(gamma132*gamma321) + gamma131*gamma322 +
+ gamma122*gamma331 - gamma121*gamma332)*gxzL + (gamma222*gamma231 -
+ gamma221*gamma232)*gyyL + (-(gamma232*gamma321) + gamma231*gamma322 +
+ gamma222*gamma331 - gamma221*gamma332)*gyzL + (gamma322*gamma331 -
+ gamma321*gamma332)*gzzL + 0.5*(-PDstandard2nd12gyz + PDstandard2nd13gyy
+ + PDstandard2nd22gxz - PDstandard2nd23gxy);
+
+ CCTK_REAL R2133 = 0;
+
+ CCTK_REAL R2211 = 0;
+
+ CCTK_REAL R2212 = 0;
+
+ CCTK_REAL R2213 = 0;
+
+ CCTK_REAL R2221 = 0;
+
+ CCTK_REAL R2222 = 0;
+
+ CCTK_REAL R2223 = 0;
+
+ CCTK_REAL R2231 = 0;
+
+ CCTK_REAL R2232 = 0;
+
+ CCTK_REAL R2233 = 0;
+
+ CCTK_REAL R2311 = 0;
+
+ CCTK_REAL R2312 = (gamma122*gamma131 - gamma121*gamma132)*gxxL +
+ (-(gamma132*gamma221) + gamma131*gamma222 + gamma122*gamma231 -
+ gamma121*gamma232)*gxyL + (-(gamma132*gamma321) + gamma131*gamma322 +
+ gamma122*gamma331 - gamma121*gamma332)*gxzL + (gamma222*gamma231 -
+ gamma221*gamma232)*gyyL + (-(gamma232*gamma321) + gamma231*gamma322 +
+ gamma222*gamma331 - gamma221*gamma332)*gyzL + (gamma322*gamma331 -
+ gamma321*gamma332)*gzzL + 0.5*(-PDstandard2nd12gyz + PDstandard2nd13gyy
+ + PDstandard2nd22gxz - PDstandard2nd23gxy);
+
+ CCTK_REAL R2313 = (gamma131*gamma132 - gamma121*gamma133)*gxxL +
+ (-(gamma133*gamma221) + gamma132*gamma231 + gamma131*gamma232 -
+ gamma121*gamma233)*gxyL + (-(gamma133*gamma321) + gamma132*gamma331 +
+ gamma131*gamma332 - gamma121*gamma333)*gxzL + (gamma231*gamma232 -
+ gamma221*gamma233)*gyyL + (-(gamma233*gamma321) + gamma232*gamma331 +
+ gamma231*gamma332 - gamma221*gamma333)*gyzL + (gamma331*gamma332 -
+ gamma321*gamma333)*gzzL + 0.5*(-PDstandard2nd12gzz + PDstandard2nd13gyz
+ + PDstandard2nd23gxz - PDstandard2nd33gxy);
+
+ CCTK_REAL R2321 = (-(gamma122*gamma131) + gamma121*gamma132)*gxxL +
+ (gamma132*gamma221 - gamma131*gamma222 - gamma122*gamma231 +
+ gamma121*gamma232)*gxyL + (gamma132*gamma321 - gamma131*gamma322 -
+ gamma122*gamma331 + gamma121*gamma332)*gxzL + (-(gamma222*gamma231) +
+ gamma221*gamma232)*gyyL + (gamma232*gamma321 - gamma231*gamma322 -
+ gamma222*gamma331 + gamma221*gamma332)*gyzL + (-(gamma322*gamma331) +
+ gamma321*gamma332)*gzzL + 0.5*(PDstandard2nd12gyz - PDstandard2nd13gyy
+ - PDstandard2nd22gxz + PDstandard2nd23gxy);
+
+ CCTK_REAL R2322 = 0;
+
+ CCTK_REAL R2323 = 0.5*((4*gamma132*gamma232 -
+ 2*gamma122*gamma233)*gxyL + (4*gamma132*gamma332 -
+ 2*gamma122*gamma333)*gxzL + (4*gamma232*gamma332 -
+ 2*gamma222*gamma333)*gyzL - 2*(gamma122*gamma133*gxxL +
+ gamma133*gamma222*gxyL + gamma133*gamma322*gxzL +
+ gamma222*gamma233*gyyL + gamma233*gamma322*gyzL +
+ gamma322*gamma333*gzzL) - PDstandard2nd22gzz + 2*PDstandard2nd23gyz -
+ PDstandard2nd33gyy + 2*gxxL*SQR(gamma132) + 2*gyyL*SQR(gamma232) +
+ 2*gzzL*SQR(gamma332));
+
+ CCTK_REAL R2331 = (-(gamma131*gamma132) + gamma121*gamma133)*gxxL +
+ (gamma133*gamma221 - gamma132*gamma231 - gamma131*gamma232 +
+ gamma121*gamma233)*gxyL + (gamma133*gamma321 - gamma132*gamma331 -
+ gamma131*gamma332 + gamma121*gamma333)*gxzL + (-(gamma231*gamma232) +
+ gamma221*gamma233)*gyyL + (gamma233*gamma321 - gamma232*gamma331 -
+ gamma231*gamma332 + gamma221*gamma333)*gyzL + (-(gamma331*gamma332) +
+ gamma321*gamma333)*gzzL + 0.5*(PDstandard2nd12gzz - PDstandard2nd13gyz
+ - PDstandard2nd23gxz + PDstandard2nd33gxy);
+
+ CCTK_REAL R2332 = (-2*gamma132*gamma232 + gamma122*gamma233)*gxyL +
+ (-2*gamma132*gamma332 + gamma122*gamma333)*gxzL +
+ gamma133*(gamma122*gxxL + gamma222*gxyL + gamma322*gxzL) +
+ (-2*gamma232*gamma332 + gamma222*gamma333)*gyzL +
+ gamma233*(gamma222*gyyL + gamma322*gyzL) - PDstandard2nd23gyz +
+ 0.5*(PDstandard2nd22gzz + PDstandard2nd33gyy) - gxxL*SQR(gamma132) -
+ gyyL*SQR(gamma232) + gzzL*(gamma322*gamma333 - SQR(gamma332));
+
+ CCTK_REAL R2333 = 0;
+
+ CCTK_REAL R3111 = 0;
+
+ CCTK_REAL R3112 = (-(gamma121*gamma131) + gamma111*gamma132)*gxxL +
+ (gamma132*gamma211 - gamma131*gamma221 - gamma121*gamma231 +
+ gamma111*gamma232)*gxyL + (gamma132*gamma311 - gamma131*gamma321 -
+ gamma121*gamma331 + gamma111*gamma332)*gxzL + (-(gamma221*gamma231) +
+ gamma211*gamma232)*gyyL + (gamma232*gamma311 - gamma231*gamma321 -
+ gamma221*gamma331 + gamma211*gamma332)*gyzL + (-(gamma321*gamma331) +
+ gamma311*gamma332)*gzzL + 0.5*(PDstandard2nd11gyz - PDstandard2nd12gxz
+ - PDstandard2nd13gxy + PDstandard2nd23gxx);
+
+ CCTK_REAL R3113 = (-2*gamma131*gamma231 + gamma111*gamma233)*gxyL +
+ (-2*gamma131*gamma331 + gamma111*gamma333)*gxzL +
+ gamma133*(gamma111*gxxL + gamma211*gxyL + gamma311*gxzL) +
+ (-2*gamma231*gamma331 + gamma211*gamma333)*gyzL +
+ gamma233*(gamma211*gyyL + gamma311*gyzL) - PDstandard2nd13gxz +
+ 0.5*(PDstandard2nd11gzz + PDstandard2nd33gxx) - gxxL*SQR(gamma131) -
+ gyyL*SQR(gamma231) + gzzL*(gamma311*gamma333 - SQR(gamma331));
+
+ CCTK_REAL R3121 = (gamma121*gamma131 - gamma111*gamma132)*gxxL +
+ (-(gamma132*gamma211) + gamma131*gamma221 + gamma121*gamma231 -
+ gamma111*gamma232)*gxyL + (-(gamma132*gamma311) + gamma131*gamma321 +
+ gamma121*gamma331 - gamma111*gamma332)*gxzL + (gamma221*gamma231 -
+ gamma211*gamma232)*gyyL + (-(gamma232*gamma311) + gamma231*gamma321 +
+ gamma221*gamma331 - gamma211*gamma332)*gyzL + (gamma321*gamma331 -
+ gamma311*gamma332)*gzzL + 0.5*(-PDstandard2nd11gyz + PDstandard2nd12gxz
+ + PDstandard2nd13gxy - PDstandard2nd23gxx);
+
+ CCTK_REAL R3122 = 0;
+
+ CCTK_REAL R3123 = (-(gamma131*gamma132) + gamma121*gamma133)*gxxL +
+ (gamma133*gamma221 - gamma132*gamma231 - gamma131*gamma232 +
+ gamma121*gamma233)*gxyL + (gamma133*gamma321 - gamma132*gamma331 -
+ gamma131*gamma332 + gamma121*gamma333)*gxzL + (-(gamma231*gamma232) +
+ gamma221*gamma233)*gyyL + (gamma233*gamma321 - gamma232*gamma331 -
+ gamma231*gamma332 + gamma221*gamma333)*gyzL + (-(gamma331*gamma332) +
+ gamma321*gamma333)*gzzL + 0.5*(PDstandard2nd12gzz - PDstandard2nd13gyz
+ - PDstandard2nd23gxz + PDstandard2nd33gxy);
+
+ CCTK_REAL R3131 = 0.5*((4*gamma131*gamma231 -
+ 2*gamma111*gamma233)*gxyL + (4*gamma131*gamma331 -
+ 2*gamma111*gamma333)*gxzL + (4*gamma231*gamma331 -
+ 2*gamma211*gamma333)*gyzL - 2*(gamma111*gamma133*gxxL +
+ gamma133*gamma211*gxyL + gamma133*gamma311*gxzL +
+ gamma211*gamma233*gyyL + gamma233*gamma311*gyzL +
+ gamma311*gamma333*gzzL) - PDstandard2nd11gzz + 2*PDstandard2nd13gxz -
+ PDstandard2nd33gxx + 2*gxxL*SQR(gamma131) + 2*gyyL*SQR(gamma231) +
+ 2*gzzL*SQR(gamma331));
+
+ CCTK_REAL R3132 = (gamma131*gamma132 - gamma121*gamma133)*gxxL +
+ (-(gamma133*gamma221) + gamma132*gamma231 + gamma131*gamma232 -
+ gamma121*gamma233)*gxyL + (-(gamma133*gamma321) + gamma132*gamma331 +
+ gamma131*gamma332 - gamma121*gamma333)*gxzL + (gamma231*gamma232 -
+ gamma221*gamma233)*gyyL + (-(gamma233*gamma321) + gamma232*gamma331 +
+ gamma231*gamma332 - gamma221*gamma333)*gyzL + (gamma331*gamma332 -
+ gamma321*gamma333)*gzzL + 0.5*(-PDstandard2nd12gzz + PDstandard2nd13gyz
+ + PDstandard2nd23gxz - PDstandard2nd33gxy);
+
+ CCTK_REAL R3133 = 0;
+
+ CCTK_REAL R3211 = 0;
+
+ CCTK_REAL R3212 = (-(gamma122*gamma131) + gamma121*gamma132)*gxxL +
+ (gamma132*gamma221 - gamma131*gamma222 - gamma122*gamma231 +
+ gamma121*gamma232)*gxyL + (gamma132*gamma321 - gamma131*gamma322 -
+ gamma122*gamma331 + gamma121*gamma332)*gxzL + (-(gamma222*gamma231) +
+ gamma221*gamma232)*gyyL + (gamma232*gamma321 - gamma231*gamma322 -
+ gamma222*gamma331 + gamma221*gamma332)*gyzL + (-(gamma322*gamma331) +
+ gamma321*gamma332)*gzzL + 0.5*(PDstandard2nd12gyz - PDstandard2nd13gyy
+ - PDstandard2nd22gxz + PDstandard2nd23gxy);
+
+ CCTK_REAL R3213 = (-(gamma131*gamma132) + gamma121*gamma133)*gxxL +
+ (gamma133*gamma221 - gamma132*gamma231 - gamma131*gamma232 +
+ gamma121*gamma233)*gxyL + (gamma133*gamma321 - gamma132*gamma331 -
+ gamma131*gamma332 + gamma121*gamma333)*gxzL + (-(gamma231*gamma232) +
+ gamma221*gamma233)*gyyL + (gamma233*gamma321 - gamma232*gamma331 -
+ gamma231*gamma332 + gamma221*gamma333)*gyzL + (-(gamma331*gamma332) +
+ gamma321*gamma333)*gzzL + 0.5*(PDstandard2nd12gzz - PDstandard2nd13gyz
+ - PDstandard2nd23gxz + PDstandard2nd33gxy);
+
+ CCTK_REAL R3221 = (gamma122*gamma131 - gamma121*gamma132)*gxxL +
+ (-(gamma132*gamma221) + gamma131*gamma222 + gamma122*gamma231 -
+ gamma121*gamma232)*gxyL + (-(gamma132*gamma321) + gamma131*gamma322 +
+ gamma122*gamma331 - gamma121*gamma332)*gxzL + (gamma222*gamma231 -
+ gamma221*gamma232)*gyyL + (-(gamma232*gamma321) + gamma231*gamma322 +
+ gamma222*gamma331 - gamma221*gamma332)*gyzL + (gamma322*gamma331 -
+ gamma321*gamma332)*gzzL + 0.5*(-PDstandard2nd12gyz + PDstandard2nd13gyy
+ + PDstandard2nd22gxz - PDstandard2nd23gxy);
+
+ CCTK_REAL R3222 = 0;
+
+ CCTK_REAL R3223 = (-2*gamma132*gamma232 + gamma122*gamma233)*gxyL +
+ (-2*gamma132*gamma332 + gamma122*gamma333)*gxzL +
+ gamma133*(gamma122*gxxL + gamma222*gxyL + gamma322*gxzL) +
+ (-2*gamma232*gamma332 + gamma222*gamma333)*gyzL +
+ gamma233*(gamma222*gyyL + gamma322*gyzL) - PDstandard2nd23gyz +
+ 0.5*(PDstandard2nd22gzz + PDstandard2nd33gyy) - gxxL*SQR(gamma132) -
+ gyyL*SQR(gamma232) + gzzL*(gamma322*gamma333 - SQR(gamma332));
+
+ CCTK_REAL R3231 = (gamma131*gamma132 - gamma121*gamma133)*gxxL +
+ (-(gamma133*gamma221) + gamma132*gamma231 + gamma131*gamma232 -
+ gamma121*gamma233)*gxyL + (-(gamma133*gamma321) + gamma132*gamma331 +
+ gamma131*gamma332 - gamma121*gamma333)*gxzL + (gamma231*gamma232 -
+ gamma221*gamma233)*gyyL + (-(gamma233*gamma321) + gamma232*gamma331 +
+ gamma231*gamma332 - gamma221*gamma333)*gyzL + (gamma331*gamma332 -
+ gamma321*gamma333)*gzzL + 0.5*(-PDstandard2nd12gzz + PDstandard2nd13gyz
+ + PDstandard2nd23gxz - PDstandard2nd33gxy);
+
+ CCTK_REAL R3232 = 0.5*((4*gamma132*gamma232 -
+ 2*gamma122*gamma233)*gxyL + (4*gamma132*gamma332 -
+ 2*gamma122*gamma333)*gxzL + (4*gamma232*gamma332 -
+ 2*gamma222*gamma333)*gyzL - 2*(gamma122*gamma133*gxxL +
+ gamma133*gamma222*gxyL + gamma133*gamma322*gxzL +
+ gamma222*gamma233*gyyL + gamma233*gamma322*gyzL +
+ gamma322*gamma333*gzzL) - PDstandard2nd22gzz + 2*PDstandard2nd23gyz -
+ PDstandard2nd33gyy + 2*gxxL*SQR(gamma132) + 2*gyyL*SQR(gamma232) +
+ 2*gzzL*SQR(gamma332));
+
+ CCTK_REAL R3233 = 0;
+
+ CCTK_REAL R3311 = 0;
+
+ CCTK_REAL R3312 = 0;
+
+ CCTK_REAL R3313 = 0;
+
+ CCTK_REAL R3321 = 0;
+
+ CCTK_REAL R3322 = 0;
+
+ CCTK_REAL R3323 = 0;
+
+ CCTK_REAL R3331 = 0;
+
+ CCTK_REAL R3332 = 0;
+
+ CCTK_REAL R3333 = 0;
+
+ CCTK_REAL R4p1111 = R1111;
+
+ CCTK_REAL R4p1112 = R1112;
+
+ CCTK_REAL R4p1113 = R1113;
+
+ CCTK_REAL R4p1121 = R1121;
+
+ CCTK_REAL R4p1122 = R1122;
+
+ CCTK_REAL R4p1123 = R1123;
+
+ CCTK_REAL R4p1131 = R1131;
+
+ CCTK_REAL R4p1132 = R1132;
+
+ CCTK_REAL R4p1133 = R1133;
+
+ CCTK_REAL R4p1211 = R1211;
+
+ CCTK_REAL R4p1212 = kxxL*kyyL + R1212 - SQR(kxyL);
+
+ CCTK_REAL R4p1213 = -(kxyL*kxzL) + kxxL*kyzL + R1213;
+
+ CCTK_REAL R4p1221 = -(kxxL*kyyL) + R1221 + SQR(kxyL);
+
+ CCTK_REAL R4p1222 = R1222;
+
+ CCTK_REAL R4p1223 = -(kxzL*kyyL) + kxyL*kyzL + R1223;
+
+ CCTK_REAL R4p1231 = kxyL*kxzL - kxxL*kyzL + R1231;
+
+ CCTK_REAL R4p1232 = kxzL*kyyL - kxyL*kyzL + R1232;
+
+ CCTK_REAL R4p1233 = R1233;
+
+ CCTK_REAL R4p1311 = R1311;
+
+ CCTK_REAL R4p1312 = -(kxyL*kxzL) + kxxL*kyzL + R1312;
+
+ CCTK_REAL R4p1313 = kxxL*kzzL + R1313 - SQR(kxzL);
+
+ CCTK_REAL R4p1321 = kxyL*kxzL - kxxL*kyzL + R1321;
+
+ CCTK_REAL R4p1322 = R1322;
+
+ CCTK_REAL R4p1323 = -(kxzL*kyzL) + kxyL*kzzL + R1323;
+
+ CCTK_REAL R4p1331 = -(kxxL*kzzL) + R1331 + SQR(kxzL);
+
+ CCTK_REAL R4p1332 = kxzL*kyzL - kxyL*kzzL + R1332;
+
+ CCTK_REAL R4p1333 = R1333;
+
+ CCTK_REAL R4p2111 = R2111;
+
+ CCTK_REAL R4p2112 = -(kxxL*kyyL) + R2112 + SQR(kxyL);
+
+ CCTK_REAL R4p2113 = kxyL*kxzL - kxxL*kyzL + R2113;
+
+ CCTK_REAL R4p2121 = kxxL*kyyL + R2121 - SQR(kxyL);
+
+ CCTK_REAL R4p2122 = R2122;
+
+ CCTK_REAL R4p2123 = kxzL*kyyL - kxyL*kyzL + R2123;
+
+ CCTK_REAL R4p2131 = -(kxyL*kxzL) + kxxL*kyzL + R2131;
+
+ CCTK_REAL R4p2132 = -(kxzL*kyyL) + kxyL*kyzL + R2132;
+
+ CCTK_REAL R4p2133 = R2133;
+
+ CCTK_REAL R4p2211 = R2211;
+
+ CCTK_REAL R4p2212 = R2212;
+
+ CCTK_REAL R4p2213 = R2213;
+
+ CCTK_REAL R4p2221 = R2221;
+
+ CCTK_REAL R4p2222 = R2222;
+
+ CCTK_REAL R4p2223 = R2223;
+
+ CCTK_REAL R4p2231 = R2231;
+
+ CCTK_REAL R4p2232 = R2232;
+
+ CCTK_REAL R4p2233 = R2233;
+
+ CCTK_REAL R4p2311 = R2311;
+
+ CCTK_REAL R4p2312 = -(kxzL*kyyL) + kxyL*kyzL + R2312;
+
+ CCTK_REAL R4p2313 = -(kxzL*kyzL) + kxyL*kzzL + R2313;
+
+ CCTK_REAL R4p2321 = kxzL*kyyL - kxyL*kyzL + R2321;
+
+ CCTK_REAL R4p2322 = R2322;
+
+ CCTK_REAL R4p2323 = kyyL*kzzL + R2323 - SQR(kyzL);
+
+ CCTK_REAL R4p2331 = kxzL*kyzL - kxyL*kzzL + R2331;
+
+ CCTK_REAL R4p2332 = -(kyyL*kzzL) + R2332 + SQR(kyzL);
+
+ CCTK_REAL R4p2333 = R2333;
+
+ CCTK_REAL R4p3111 = R3111;
+
+ CCTK_REAL R4p3112 = kxyL*kxzL - kxxL*kyzL + R3112;
+
+ CCTK_REAL R4p3113 = -(kxxL*kzzL) + R3113 + SQR(kxzL);
+
+ CCTK_REAL R4p3121 = -(kxyL*kxzL) + kxxL*kyzL + R3121;
+
+ CCTK_REAL R4p3122 = R3122;
+
+ CCTK_REAL R4p3123 = kxzL*kyzL - kxyL*kzzL + R3123;
+
+ CCTK_REAL R4p3131 = kxxL*kzzL + R3131 - SQR(kxzL);
+
+ CCTK_REAL R4p3132 = -(kxzL*kyzL) + kxyL*kzzL + R3132;
+
+ CCTK_REAL R4p3133 = R3133;
+
+ CCTK_REAL R4p3211 = R3211;
+
+ CCTK_REAL R4p3212 = kxzL*kyyL - kxyL*kyzL + R3212;
+
+ CCTK_REAL R4p3213 = kxzL*kyzL - kxyL*kzzL + R3213;
+
+ CCTK_REAL R4p3221 = -(kxzL*kyyL) + kxyL*kyzL + R3221;
+
+ CCTK_REAL R4p3222 = R3222;
+
+ CCTK_REAL R4p3223 = -(kyyL*kzzL) + R3223 + SQR(kyzL);
+
+ CCTK_REAL R4p3231 = -(kxzL*kyzL) + kxyL*kzzL + R3231;
+
+ CCTK_REAL R4p3232 = kyyL*kzzL + R3232 - SQR(kyzL);
+
+ CCTK_REAL R4p3233 = R3233;
+
+ CCTK_REAL R4p3311 = R3311;
+
+ CCTK_REAL R4p3312 = R3312;
+
+ CCTK_REAL R4p3313 = R3313;
+
+ CCTK_REAL R4p3321 = R3321;
+
+ CCTK_REAL R4p3322 = R3322;
+
+ CCTK_REAL R4p3323 = R3323;
+
+ CCTK_REAL R4p3331 = R3331;
+
+ CCTK_REAL R4p3332 = R3332;
+
+ CCTK_REAL R4p3333 = R3333;
+
+ CCTK_REAL Ro111 = 0;
+
+ CCTK_REAL Ro112 = gamma121*kxxL + (-gamma111 + gamma221)*kxyL +
+ gamma321*kxzL - gamma211*kyyL - gamma311*kyzL + PDstandard2nd1kxy -
+ PDstandard2nd2kxx;
+
+ CCTK_REAL Ro113 = gamma131*kxxL + gamma231*kxyL + (-gamma111 +
+ gamma331)*kxzL - gamma211*kyzL - gamma311*kzzL + PDstandard2nd1kxz -
+ PDstandard2nd3kxx;
+
+ CCTK_REAL Ro121 = -(gamma121*kxxL) + (gamma111 - gamma221)*kxyL -
+ gamma321*kxzL + gamma211*kyyL + gamma311*kyzL - PDstandard2nd1kxy +
+ PDstandard2nd2kxx;
+
+ CCTK_REAL Ro122 = 0;
+
+ CCTK_REAL Ro123 = gamma131*kxyL - gamma121*kxzL + gamma231*kyyL +
+ (-gamma221 + gamma331)*kyzL - gamma321*kzzL + PDstandard2nd2kxz -
+ PDstandard2nd3kxy;
+
+ CCTK_REAL Ro131 = -(gamma131*kxxL) - gamma231*kxyL + (gamma111 -
+ gamma331)*kxzL + gamma211*kyzL + gamma311*kzzL - PDstandard2nd1kxz +
+ PDstandard2nd3kxx;
+
+ CCTK_REAL Ro132 = -(gamma131*kxyL) + gamma121*kxzL - gamma231*kyyL +
+ (gamma221 - gamma331)*kyzL + gamma321*kzzL - PDstandard2nd2kxz +
+ PDstandard2nd3kxy;
+
+ CCTK_REAL Ro133 = 0;
+
+ CCTK_REAL Ro211 = 0;
+
+ CCTK_REAL Ro212 = gamma122*kxxL + (-gamma121 + gamma222)*kxyL +
+ gamma322*kxzL - gamma221*kyyL - gamma321*kyzL + PDstandard2nd1kyy -
+ PDstandard2nd2kxy;
+
+ CCTK_REAL Ro213 = gamma132*kxxL + gamma232*kxyL + (-gamma121 +
+ gamma332)*kxzL - gamma221*kyzL - gamma321*kzzL + PDstandard2nd1kyz -
+ PDstandard2nd3kxy;
+
+ CCTK_REAL Ro221 = -(gamma122*kxxL) + (gamma121 - gamma222)*kxyL -
+ gamma322*kxzL + gamma221*kyyL + gamma321*kyzL - PDstandard2nd1kyy +
+ PDstandard2nd2kxy;
+
+ CCTK_REAL Ro222 = 0;
+
+ CCTK_REAL Ro223 = gamma132*kxyL - gamma122*kxzL + gamma232*kyyL +
+ (-gamma222 + gamma332)*kyzL - gamma322*kzzL + PDstandard2nd2kyz -
+ PDstandard2nd3kyy;
+
+ CCTK_REAL Ro231 = -(gamma132*kxxL) - gamma232*kxyL + (gamma121 -
+ gamma332)*kxzL + gamma221*kyzL + gamma321*kzzL - PDstandard2nd1kyz +
+ PDstandard2nd3kxy;
+
+ CCTK_REAL Ro232 = -(gamma132*kxyL) + gamma122*kxzL - gamma232*kyyL +
+ (gamma222 - gamma332)*kyzL + gamma322*kzzL - PDstandard2nd2kyz +
+ PDstandard2nd3kyy;
+
+ CCTK_REAL Ro233 = 0;
+
+ CCTK_REAL Ro311 = 0;
+
+ CCTK_REAL Ro312 = gamma132*kxxL + (-gamma131 + gamma232)*kxyL +
+ gamma332*kxzL - gamma231*kyyL - gamma331*kyzL + PDstandard2nd1kyz -
+ PDstandard2nd2kxz;
+
+ CCTK_REAL Ro313 = gamma133*kxxL + gamma233*kxyL + (-gamma131 +
+ gamma333)*kxzL - gamma231*kyzL - gamma331*kzzL + PDstandard2nd1kzz -
+ PDstandard2nd3kxz;
+
+ CCTK_REAL Ro321 = -(gamma132*kxxL) + (gamma131 - gamma232)*kxyL -
+ gamma332*kxzL + gamma231*kyyL + gamma331*kyzL - PDstandard2nd1kyz +
+ PDstandard2nd2kxz;
+
+ CCTK_REAL Ro322 = 0;
+
+ CCTK_REAL Ro323 = gamma133*kxyL - gamma132*kxzL + gamma233*kyyL +
+ (-gamma232 + gamma333)*kyzL - gamma332*kzzL + PDstandard2nd2kzz -
+ PDstandard2nd3kyz;
+
+ CCTK_REAL Ro331 = -(gamma133*kxxL) - gamma233*kxyL + (gamma131 -
+ gamma333)*kxzL + gamma231*kyzL + gamma331*kzzL - PDstandard2nd1kzz +
+ PDstandard2nd3kxz;
+
+ CCTK_REAL Ro332 = -(gamma133*kxyL) + gamma132*kxzL - gamma233*kyyL +
+ (gamma232 - gamma333)*kyzL + gamma332*kzzL - PDstandard2nd2kzz +
+ PDstandard2nd3kyz;
+
+ CCTK_REAL Ro333 = 0;
+
+ CCTK_REAL Rojo11 = gInv11*R1111 + gInv12*R1112 + gInv13*R1113 +
+ gInv21*R1211 + gInv23*(-(kxyL*kxzL) + kxxL*kyzL + R1213) + gInv31*R1311
+ + gInv32*(-(kxyL*kxzL) + kxxL*kyzL + R1312) + gInv22*(kxxL*kyyL + R1212
+ - SQR(kxyL)) + gInv33*(kxxL*kzzL + R1313 - SQR(kxzL));
+
+ CCTK_REAL Rojo12 = gInv11*R1121 + gInv13*(kxyL*kxzL - kxxL*kyzL +
+ R1123) + gInv21*R1221 + gInv22*R1222 + gInv23*R1223 + gInv31*R1321 +
+ gInv32*(-(kxzL*kyyL) + kxyL*kyzL + R1322) + gInv33*(-(kxzL*kyzL) +
+ kxyL*kzzL + R1323) + gInv12*(-(kxxL*kyyL) + R1122 + SQR(kxyL));
+
+ CCTK_REAL Rojo13 = gInv11*R1131 + gInv12*(kxyL*kxzL - kxxL*kyzL +
+ R1132) + gInv21*R1231 + gInv22*(kxzL*kyyL - kxyL*kyzL + R1232) +
+ gInv23*(kxzL*kyzL - kxyL*kzzL + R1233) + gInv31*R1331 + gInv32*R1332 +
+ gInv33*R1333 + gInv13*(-(kxxL*kzzL) + R1133 + SQR(kxzL));
+
+ CCTK_REAL Rojo21 = gInv11*R2111 + gInv12*R2112 + gInv13*R2113 +
+ gInv22*R2212 + gInv23*(-(kxzL*kyyL) + kxyL*kyzL + R2213) +
+ gInv31*(kxyL*kxzL - kxxL*kyzL + R2311) + gInv32*R2312 +
+ gInv33*(-(kxzL*kyzL) + kxyL*kzzL + R2313) + gInv21*(-(kxxL*kyyL) +
+ R2211 + SQR(kxyL));
+
+ CCTK_REAL Rojo22 = gInv12*R2122 + gInv13*(kxzL*kyyL - kxyL*kyzL +
+ R2123) + gInv21*R2221 + gInv22*R2222 + gInv23*R2223 + gInv31*(kxzL*kyyL
+ - kxyL*kyzL + R2321) + gInv32*R2322 + gInv11*(kxxL*kyyL + R2121 -
+ SQR(kxyL)) + gInv33*(kyyL*kzzL + R2323 - SQR(kyzL));
+
+ CCTK_REAL Rojo23 = gInv11*(-(kxyL*kxzL) + kxxL*kyzL + R2131) +
+ gInv12*R2132 + gInv13*(kxzL*kyzL - kxyL*kzzL + R2133) +
+ gInv21*(-(kxzL*kyyL) + kxyL*kyzL + R2231) + gInv22*R2232 + gInv31*R2331
+ + gInv32*R2332 + gInv33*R2333 + gInv23*(-(kyyL*kzzL) + R2233 +
+ SQR(kyzL));
+
+ CCTK_REAL Rojo31 = gInv11*R3111 + gInv12*R3112 + gInv13*R3113 +
+ gInv21*(kxyL*kxzL - kxxL*kyzL + R3211) + gInv22*(kxzL*kyyL - kxyL*kyzL
+ + R3212) + gInv23*R3213 + gInv32*(kxzL*kyzL - kxyL*kzzL + R3312) +
+ gInv33*R3313 + gInv31*(-(kxxL*kzzL) + R3311 + SQR(kxzL));
+
+ CCTK_REAL Rojo32 = gInv11*(-(kxyL*kxzL) + kxxL*kyzL + R3121) +
+ gInv12*(-(kxzL*kyyL) + kxyL*kyzL + R3122) + gInv13*R3123 + gInv21*R3221
+ + gInv22*R3222 + gInv23*R3223 + gInv31*(kxzL*kyzL - kxyL*kzzL + R3321)
+ + gInv33*R3323 + gInv32*(-(kyyL*kzzL) + R3322 + SQR(kyzL));
+
+ CCTK_REAL Rojo33 = gInv12*(-(kxzL*kyzL) + kxyL*kzzL + R3132) +
+ gInv13*R3133 + gInv21*(-(kxzL*kyzL) + kxyL*kzzL + R3231) + gInv23*R3233
+ + gInv31*R3331 + gInv32*R3332 + gInv33*R3333 + gInv11*(kxxL*kzzL +
+ R3131 - SQR(kxzL)) + gInv22*(kyyL*kzzL + R3232 - SQR(kyzL));
+
+ CCTK_REAL Psi4rL = 2*nn*(-(n1*((imbar2*imbar3 - rmbar2*rmbar3)*Ro213 +
+ imbar1*(imbar2*(Ro112 + Ro211) + imbar3*(Ro113 + Ro311)) -
+ rmbar1*(rmbar2*(Ro112 + Ro211) + rmbar3*(Ro113 + Ro311)) +
+ (imbar2*imbar3 - rmbar2*rmbar3)*Ro312 + Ro111*(SQR(imbar1) -
+ SQR(rmbar1)) + Ro212*(SQR(imbar2) - SQR(rmbar2)) + Ro313*(SQR(imbar3) -
+ SQR(rmbar3)))) - n2*((imbar2*imbar3 - rmbar2*rmbar3)*Ro223 +
+ imbar1*(imbar2*(Ro122 + Ro221) + imbar3*(Ro123 + Ro321)) -
+ rmbar1*(rmbar2*(Ro122 + Ro221) + rmbar3*(Ro123 + Ro321)) +
+ (imbar2*imbar3 - rmbar2*rmbar3)*Ro322 + Ro121*(SQR(imbar1) -
+ SQR(rmbar1)) + Ro222*(SQR(imbar2) - SQR(rmbar2)) + Ro323*(SQR(imbar3) -
+ SQR(rmbar3))) - n3*((imbar2*imbar3 - rmbar2*rmbar3)*Ro233 +
+ imbar1*(imbar2*(Ro132 + Ro231) + imbar3*(Ro133 + Ro331)) -
+ rmbar1*(rmbar2*(Ro132 + Ro231) + rmbar3*(Ro133 + Ro331)) +
+ (imbar2*imbar3 - rmbar2*rmbar3)*Ro332 + Ro131*(SQR(imbar1) -
+ SQR(rmbar1)) + Ro232*(SQR(imbar2) - SQR(rmbar2)) + Ro333*(SQR(imbar3) -
+ SQR(rmbar3)))) - SQR(nn)*((imbar2*imbar3 - rmbar2*rmbar3)*Rojo23 +
+ imbar1*(imbar2*(Rojo12 + Rojo21) + imbar3*(Rojo13 + Rojo31)) -
+ rmbar1*(rmbar2*(Rojo12 + Rojo21) + rmbar3*(Rojo13 + Rojo31)) +
+ (imbar2*imbar3 - rmbar2*rmbar3)*Rojo32 + Rojo11*(SQR(imbar1) -
+ SQR(rmbar1)) + Rojo22*(SQR(imbar2) - SQR(rmbar2)) + Rojo33*(SQR(imbar3)
+ - SQR(rmbar3))) + n1*(-(imbar1*(imbar2*(n1*(R4p1112 + R4p1211) +
+ n2*(R4p1122 + R4p1221) + n3*(R4p1132 + R4p1231)) + imbar3*(n1*(R4p1113
+ + R4p1311) + n2*(R4p1123 + R4p1321) + n3*(R4p1133 + R4p1331)))) -
+ imbar2*imbar3*(n1*(R4p1213 + R4p1312) + n2*(R4p1223 + R4p1322) +
+ n3*(R4p1233 + R4p1332)) + n1*R4p1211*rmbar1*rmbar2 +
+ n2*R4p1221*rmbar1*rmbar2 + n3*R4p1231*rmbar1*rmbar2 +
+ n1*R4p1113*rmbar1*rmbar3 + n2*R4p1123*rmbar1*rmbar3 +
+ n3*R4p1133*rmbar1*rmbar3 + n1*R4p1311*rmbar1*rmbar3 +
+ n2*R4p1321*rmbar1*rmbar3 + n3*R4p1331*rmbar1*rmbar3 +
+ n1*R4p1213*rmbar2*rmbar3 + n2*R4p1223*rmbar2*rmbar3 +
+ n3*R4p1233*rmbar2*rmbar3 + n1*R4p1312*rmbar2*rmbar3 +
+ n2*R4p1322*rmbar2*rmbar3 + n3*R4p1332*rmbar2*rmbar3 - (n1*R4p1111 +
+ n2*R4p1121 + n3*R4p1131)*SQR(imbar1) - (n1*R4p1212 + n2*R4p1222 +
+ n3*R4p1232)*SQR(imbar2) + n1*(R4p1112*rmbar1*rmbar2 -
+ R4p1313*SQR(imbar3)) + n2*(R4p1122*rmbar1*rmbar2 - R4p1323*SQR(imbar3))
+ + n3*(R4p1132*rmbar1*rmbar2 - R4p1333*SQR(imbar3)) +
+ n1*R4p1111*SQR(rmbar1) + n2*R4p1121*SQR(rmbar1) +
+ n3*R4p1131*SQR(rmbar1) + n1*R4p1212*SQR(rmbar2) +
+ n2*R4p1222*SQR(rmbar2) + n3*R4p1232*SQR(rmbar2) +
+ n1*R4p1313*SQR(rmbar3) + n2*R4p1323*SQR(rmbar3) +
+ n3*R4p1333*SQR(rmbar3)) + n2*(-(imbar1*(imbar2*(n1*(R4p2112 + R4p2211)
+ + n2*(R4p2122 + R4p2221) + n3*(R4p2132 + R4p2231)) +
+ imbar3*(n1*(R4p2113 + R4p2311) + n2*(R4p2123 + R4p2321) + n3*(R4p2133 +
+ R4p2331)))) - imbar2*imbar3*(n1*(R4p2213 + R4p2312) + n2*(R4p2223 +
+ R4p2322) + n3*(R4p2233 + R4p2332)) + n1*R4p2211*rmbar1*rmbar2 +
+ n2*R4p2221*rmbar1*rmbar2 + n3*R4p2231*rmbar1*rmbar2 +
+ n1*R4p2113*rmbar1*rmbar3 + n2*R4p2123*rmbar1*rmbar3 +
+ n3*R4p2133*rmbar1*rmbar3 + n1*R4p2311*rmbar1*rmbar3 +
+ n2*R4p2321*rmbar1*rmbar3 + n3*R4p2331*rmbar1*rmbar3 +
+ n1*R4p2213*rmbar2*rmbar3 + n2*R4p2223*rmbar2*rmbar3 +
+ n3*R4p2233*rmbar2*rmbar3 + n1*R4p2312*rmbar2*rmbar3 +
+ n2*R4p2322*rmbar2*rmbar3 + n3*R4p2332*rmbar2*rmbar3 - (n1*R4p2111 +
+ n2*R4p2121 + n3*R4p2131)*SQR(imbar1) - (n1*R4p2212 + n2*R4p2222 +
+ n3*R4p2232)*SQR(imbar2) + n1*(R4p2112*rmbar1*rmbar2 -
+ R4p2313*SQR(imbar3)) + n2*(R4p2122*rmbar1*rmbar2 - R4p2323*SQR(imbar3))
+ + n3*(R4p2132*rmbar1*rmbar2 - R4p2333*SQR(imbar3)) +
+ n1*R4p2111*SQR(rmbar1) + n2*R4p2121*SQR(rmbar1) +
+ n3*R4p2131*SQR(rmbar1) + n1*R4p2212*SQR(rmbar2) +
+ n2*R4p2222*SQR(rmbar2) + n3*R4p2232*SQR(rmbar2) +
+ n1*R4p2313*SQR(rmbar3) + n2*R4p2323*SQR(rmbar3) +
+ n3*R4p2333*SQR(rmbar3)) + n3*(-(imbar1*(imbar2*(n1*(R4p3112 + R4p3211)
+ + n2*(R4p3122 + R4p3221) + n3*(R4p3132 + R4p3231)) +
+ imbar3*(n1*(R4p3113 + R4p3311) + n2*(R4p3123 + R4p3321) + n3*(R4p3133 +
+ R4p3331)))) - imbar2*imbar3*(n1*(R4p3213 + R4p3312) + n2*(R4p3223 +
+ R4p3322) + n3*(R4p3233 + R4p3332)) + n1*R4p3211*rmbar1*rmbar2 +
+ n2*R4p3221*rmbar1*rmbar2 + n3*R4p3231*rmbar1*rmbar2 +
+ n1*R4p3113*rmbar1*rmbar3 + n2*R4p3123*rmbar1*rmbar3 +
+ n3*R4p3133*rmbar1*rmbar3 + n1*R4p3311*rmbar1*rmbar3 +
+ n2*R4p3321*rmbar1*rmbar3 + n3*R4p3331*rmbar1*rmbar3 +
+ n1*R4p3213*rmbar2*rmbar3 + n2*R4p3223*rmbar2*rmbar3 +
+ n3*R4p3233*rmbar2*rmbar3 + n1*R4p3312*rmbar2*rmbar3 +
+ n2*R4p3322*rmbar2*rmbar3 + n3*R4p3332*rmbar2*rmbar3 - (n1*R4p3111 +
+ n2*R4p3121 + n3*R4p3131)*SQR(imbar1) - (n1*R4p3212 + n2*R4p3222 +
+ n3*R4p3232)*SQR(imbar2) + n1*(R4p3112*rmbar1*rmbar2 -
+ R4p3313*SQR(imbar3)) + n2*(R4p3122*rmbar1*rmbar2 - R4p3323*SQR(imbar3))
+ + n3*(R4p3132*rmbar1*rmbar2 - R4p3333*SQR(imbar3)) +
+ n1*R4p3111*SQR(rmbar1) + n2*R4p3121*SQR(rmbar1) +
+ n3*R4p3131*SQR(rmbar1) + n1*R4p3212*SQR(rmbar2) +
+ n2*R4p3222*SQR(rmbar2) + n3*R4p3232*SQR(rmbar2) +
+ n1*R4p3313*SQR(rmbar3) + n2*R4p3323*SQR(rmbar3) +
+ n3*R4p3333*SQR(rmbar3));
+
+ CCTK_REAL Psi4iL = -(n1*(im1*(n1*(2*R4p1111*rm1 + R4p1112*rm2 +
+ R4p1211*rm2 + R4p1113*rm3 + R4p1311*rm3) + n2*(2*R4p1121*rm1 +
+ R4p1122*rm2 + R4p1221*rm2 + R4p1123*rm3 + R4p1321*rm3) +
+ n3*(2*R4p1131*rm1 + R4p1132*rm2 + R4p1231*rm2 + R4p1133*rm3 +
+ R4p1331*rm3)) + im2*(n1*(R4p1112*rm1 + R4p1211*rm1 + 2*R4p1212*rm2 +
+ R4p1213*rm3 + R4p1312*rm3) + n2*(R4p1122*rm1 + R4p1221*rm1 +
+ 2*R4p1222*rm2 + R4p1223*rm3 + R4p1322*rm3) + n3*(R4p1132*rm1 +
+ R4p1231*rm1 + 2*R4p1232*rm2 + R4p1233*rm3 + R4p1332*rm3)) +
+ im3*(n1*(R4p1113*rm1 + R4p1311*rm1 + R4p1213*rm2 + R4p1312*rm2 +
+ 2*R4p1313*rm3) + n2*(R4p1123*rm1 + R4p1321*rm1 + R4p1223*rm2 +
+ R4p1322*rm2 + 2*R4p1323*rm3) + n3*(R4p1133*rm1 + R4p1331*rm1 +
+ R4p1233*rm2 + R4p1332*rm2 + 2*R4p1333*rm3)))) -
+ n2*(im1*(n1*(2*R4p2111*rm1 + R4p2112*rm2 + R4p2211*rm2 + R4p2113*rm3 +
+ R4p2311*rm3) + n2*(2*R4p2121*rm1 + R4p2122*rm2 + R4p2221*rm2 +
+ R4p2123*rm3 + R4p2321*rm3) + n3*(2*R4p2131*rm1 + R4p2132*rm2 +
+ R4p2231*rm2 + R4p2133*rm3 + R4p2331*rm3)) + im2*(n1*(R4p2112*rm1 +
+ R4p2211*rm1 + 2*R4p2212*rm2 + R4p2213*rm3 + R4p2312*rm3) +
+ n2*(R4p2122*rm1 + R4p2221*rm1 + 2*R4p2222*rm2 + R4p2223*rm3 +
+ R4p2322*rm3) + n3*(R4p2132*rm1 + R4p2231*rm1 + 2*R4p2232*rm2 +
+ R4p2233*rm3 + R4p2332*rm3)) + im3*(n1*(R4p2113*rm1 + R4p2311*rm1 +
+ R4p2213*rm2 + R4p2312*rm2 + 2*R4p2313*rm3) + n2*(R4p2123*rm1 +
+ R4p2321*rm1 + R4p2223*rm2 + R4p2322*rm2 + 2*R4p2323*rm3) +
+ n3*(R4p2133*rm1 + R4p2331*rm1 + R4p2233*rm2 + R4p2332*rm2 +
+ 2*R4p2333*rm3))) - n3*(im1*(n1*(2*R4p3111*rm1 + R4p3112*rm2 +
+ R4p3211*rm2 + R4p3113*rm3 + R4p3311*rm3) + n2*(2*R4p3121*rm1 +
+ R4p3122*rm2 + R4p3221*rm2 + R4p3123*rm3 + R4p3321*rm3) +
+ n3*(2*R4p3131*rm1 + R4p3132*rm2 + R4p3231*rm2 + R4p3133*rm3 +
+ R4p3331*rm3)) + im2*(n1*(R4p3112*rm1 + R4p3211*rm1 + 2*R4p3212*rm2 +
+ R4p3213*rm3 + R4p3312*rm3) + n2*(R4p3122*rm1 + R4p3221*rm1 +
+ 2*R4p3222*rm2 + R4p3223*rm3 + R4p3322*rm3) + n3*(R4p3132*rm1 +
+ R4p3231*rm1 + 2*R4p3232*rm2 + R4p3233*rm3 + R4p3332*rm3)) +
+ im3*(n1*(R4p3113*rm1 + R4p3311*rm1 + R4p3213*rm2 + R4p3312*rm2 +
+ 2*R4p3313*rm3) + n2*(R4p3123*rm1 + R4p3321*rm1 + R4p3223*rm2 +
+ R4p3322*rm2 + 2*R4p3323*rm3) + n3*(R4p3133*rm1 + R4p3331*rm1 +
+ R4p3233*rm2 + R4p3332*rm2 + 2*R4p3333*rm3))) -
+ 2*nn*(im1*(n1*(2*rm1*Ro111 + rm2*(Ro112 + Ro211) + rm3*(Ro113 + Ro311))
+ + n2*(2*rm1*Ro121 + rm2*(Ro122 + Ro221) + rm3*(Ro123 + Ro321)) +
+ n3*(2*rm1*Ro131 + rm2*(Ro132 + Ro231) + rm3*(Ro133 + Ro331))) +
+ im2*(n1*(rm1*(Ro112 + Ro211) + 2*rm2*Ro212 + rm3*(Ro213 + Ro312)) +
+ n2*(rm1*(Ro122 + Ro221) + 2*rm2*Ro222 + rm3*(Ro223 + Ro322)) +
+ n3*(rm1*(Ro132 + Ro231) + 2*rm2*Ro232 + rm3*(Ro233 + Ro332))) +
+ im3*(n1*(rm1*(Ro113 + Ro311) + rm2*(Ro213 + Ro312) + 2*rm3*Ro313) +
+ n2*(rm1*(Ro123 + Ro321) + rm2*(Ro223 + Ro322) + 2*rm3*Ro323) +
+ n3*(rm1*(Ro133 + Ro331) + rm2*(Ro233 + Ro332) + 2*rm3*Ro333))) -
+ (im1*(2*rm1*Rojo11 + rm2*(Rojo12 + Rojo21) + rm3*(Rojo13 + Rojo31)) +
+ im2*(rm1*(Rojo12 + Rojo21) + 2*rm2*Rojo22 + rm3*(Rojo23 + Rojo32)) +
+ im3*(rm1*(Rojo13 + Rojo31) + rm2*(Rojo23 + Rojo32) +
+ 2*rm3*Rojo33))*SQR(nn);
+
+
+ /* Copy local copies back to grid functions */
+ Psi4i[index] = Psi4iL;
+ Psi4r[index] = Psi4rL;
+ }
+ }
+ }
+}
+
+extern "C" void psis_calc_2nd(CCTK_ARGUMENTS)
+{
+ DECLARE_CCTK_ARGUMENTS;
+ DECLARE_CCTK_PARAMETERS;
+
+ GenericFD_LoopOverInterior(cctkGH, &psis_calc_2nd_Body);
+}
diff --git a/src/psis_calc_4th.cc b/src/psis_calc_4th.cc
new file mode 100644
index 0000000..d339e95
--- /dev/null
+++ b/src/psis_calc_4th.cc
@@ -0,0 +1,1269 @@
+/* File produced by Kranc */
+
+#define KRANC_C
+
+#include <assert.h>
+#include <math.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include "cctk.h"
+#include "cctk_Arguments.h"
+#include "cctk_Parameters.h"
+#include "GenericFD.h"
+#include "Differencing.h"
+
+/* Define macros used in calculations */
+#define INITVALUE (42)
+#define QAD(x) (SQR(SQR(x)))
+#define INV(x) ((1.0) / (x))
+#define SQR(x) ((x) * (x))
+#define CUB(x) ((x) * (x) * (x))
+
+extern "C" void psis_calc_4th_SelectBCs(CCTK_ARGUMENTS)
+{
+ DECLARE_CCTK_ARGUMENTS;
+ DECLARE_CCTK_PARAMETERS;
+
+ CCTK_INT ierr = 0;
+ ierr = Boundary_SelectGroupForBC(cctkGH, CCTK_ALL_FACES, GenericFD_GetBoundaryWidth(cctkGH), -1 /* no table */, "WeylScal4::Psi4i_group","flat");
+ if (ierr < 0)
+ CCTK_WARN(1, "Failed to register flat BC for WeylScal4::Psi4i_group.");
+ ierr = Boundary_SelectGroupForBC(cctkGH, CCTK_ALL_FACES, GenericFD_GetBoundaryWidth(cctkGH), -1 /* no table */, "WeylScal4::Psi4r_group","flat");
+ if (ierr < 0)
+ CCTK_WARN(1, "Failed to register flat BC for WeylScal4::Psi4r_group.");
+ return;
+}
+
+static void psis_calc_4th_Body(cGH const * restrict const cctkGH, int const dir, int const face, CCTK_REAL const normal[3], CCTK_REAL const tangentA[3], CCTK_REAL const tangentB[3], int const min[3], int const max[3], int const n_subblock_gfs, CCTK_REAL * restrict const subblock_gfs[])
+{
+ DECLARE_CCTK_ARGUMENTS;
+ DECLARE_CCTK_PARAMETERS;
+
+
+ /* Declare the variables used for looping over grid points */
+ CCTK_INT i, j, k;
+ // CCTK_INT index = INITVALUE;
+
+ /* Declare finite differencing variables */
+
+ if (verbose > 1)
+ {
+ CCTK_VInfo(CCTK_THORNSTRING,"Entering psis_calc_4th_Body");
+ }
+
+ if (cctk_iteration % psis_calc_4th_calc_every != psis_calc_4th_calc_offset)
+ {
+ return;
+ }
+
+ const char *groups[] = {"admbase::curv","admbase::metric","grid::coordinates","WeylScal4::Psi4i_group","WeylScal4::Psi4r_group"};
+ GenericFD_AssertGroupStorage(cctkGH, "psis_calc_4th", 5, groups);
+
+ /* Include user-supplied include files */
+
+ /* Initialise finite differencing variables */
+ ptrdiff_t const di = 1;
+ ptrdiff_t const dj = CCTK_GFINDEX3D(cctkGH,0,1,0) - CCTK_GFINDEX3D(cctkGH,0,0,0);
+ ptrdiff_t const dk = CCTK_GFINDEX3D(cctkGH,0,0,1) - CCTK_GFINDEX3D(cctkGH,0,0,0);
+ CCTK_REAL const dx = ToReal(CCTK_DELTA_SPACE(0));
+ CCTK_REAL const dy = ToReal(CCTK_DELTA_SPACE(1));
+ CCTK_REAL const dz = ToReal(CCTK_DELTA_SPACE(2));
+ CCTK_REAL const dxi = INV(dx);
+ CCTK_REAL const dyi = INV(dy);
+ CCTK_REAL const dzi = INV(dz);
+ CCTK_REAL const khalf = 0.5;
+ CCTK_REAL const kthird = 1/3.0;
+ CCTK_REAL const ktwothird = 2.0/3.0;
+ CCTK_REAL const kfourthird = 4.0/3.0;
+ CCTK_REAL const keightthird = 8.0/3.0;
+ CCTK_REAL const hdxi = 0.5 * dxi;
+ CCTK_REAL const hdyi = 0.5 * dyi;
+ CCTK_REAL const hdzi = 0.5 * dzi;
+
+ /* Initialize predefined quantities */
+ CCTK_REAL const p1o12dx = 0.0833333333333333333333333333333*INV(dx);
+ CCTK_REAL const p1o12dy = 0.0833333333333333333333333333333*INV(dy);
+ CCTK_REAL const p1o12dz = 0.0833333333333333333333333333333*INV(dz);
+ CCTK_REAL const p1o144dxdy = 0.00694444444444444444444444444444*INV(dx)*INV(dy);
+ CCTK_REAL const p1o144dxdz = 0.00694444444444444444444444444444*INV(dx)*INV(dz);
+ CCTK_REAL const p1o144dydz = 0.00694444444444444444444444444444*INV(dy)*INV(dz);
+ CCTK_REAL const p1o2dx = 0.5*INV(dx);
+ CCTK_REAL const p1o2dy = 0.5*INV(dy);
+ CCTK_REAL const p1o2dz = 0.5*INV(dz);
+ CCTK_REAL const p1o4dxdy = 0.25*INV(dx)*INV(dy);
+ CCTK_REAL const p1o4dxdz = 0.25*INV(dx)*INV(dz);
+ CCTK_REAL const p1o4dydz = 0.25*INV(dy)*INV(dz);
+ CCTK_REAL const p1odx = INV(dx);
+ CCTK_REAL const p1odx2 = INV(SQR(dx));
+ CCTK_REAL const p1odxdy = INV(dx)*INV(dy);
+ CCTK_REAL const p1odxdz = INV(dx)*INV(dz);
+ CCTK_REAL const p1ody = INV(dy);
+ CCTK_REAL const p1ody2 = INV(SQR(dy));
+ CCTK_REAL const p1odydz = INV(dy)*INV(dz);
+ CCTK_REAL const p1odz = INV(dz);
+ CCTK_REAL const p1odz2 = INV(SQR(dz));
+ CCTK_REAL const pm1o12dx2 = -0.0833333333333333333333333333333*INV(SQR(dx));
+ CCTK_REAL const pm1o12dy2 = -0.0833333333333333333333333333333*INV(SQR(dy));
+ CCTK_REAL const pm1o12dz2 = -0.0833333333333333333333333333333*INV(SQR(dz));
+ CCTK_REAL const pm1o2dx = -0.5*INV(dx);
+ CCTK_REAL const pm1o2dy = -0.5*INV(dy);
+ CCTK_REAL const pm1o2dz = -0.5*INV(dz);
+
+ /* Loop over the grid points */
+ for (k = min[2]; k < max[2]; k++)
+ {
+ for (j = min[1]; j < max[1]; j++)
+ {
+ for (i = min[0]; i < max[0]; i++)
+ {
+ int const index = CCTK_GFINDEX3D(cctkGH,i,j,k) ;
+
+ /* Assign local copies of grid functions */
+ CCTK_REAL gxxL = gxx[index];
+ CCTK_REAL gxyL = gxy[index];
+ CCTK_REAL gxzL = gxz[index];
+ CCTK_REAL gyyL = gyy[index];
+ CCTK_REAL gyzL = gyz[index];
+ CCTK_REAL gzzL = gzz[index];
+ CCTK_REAL kxxL = kxx[index];
+ CCTK_REAL kxyL = kxy[index];
+ CCTK_REAL kxzL = kxz[index];
+ CCTK_REAL kyyL = kyy[index];
+ CCTK_REAL kyzL = kyz[index];
+ CCTK_REAL kzzL = kzz[index];
+ CCTK_REAL xL = x[index];
+ CCTK_REAL yL = y[index];
+ CCTK_REAL zL = z[index];
+
+ /* Include user supplied include files */
+
+ /* Precompute derivatives */
+ CCTK_REAL const PDstandard4th1gxx = PDstandard4th1(&gxx[index]);
+ CCTK_REAL const PDstandard4th2gxx = PDstandard4th2(&gxx[index]);
+ CCTK_REAL const PDstandard4th3gxx = PDstandard4th3(&gxx[index]);
+ CCTK_REAL const PDstandard4th22gxx = PDstandard4th22(&gxx[index]);
+ CCTK_REAL const PDstandard4th33gxx = PDstandard4th33(&gxx[index]);
+ CCTK_REAL const PDstandard4th23gxx = PDstandard4th23(&gxx[index]);
+ CCTK_REAL const PDstandard4th1gxy = PDstandard4th1(&gxy[index]);
+ CCTK_REAL const PDstandard4th2gxy = PDstandard4th2(&gxy[index]);
+ CCTK_REAL const PDstandard4th3gxy = PDstandard4th3(&gxy[index]);
+ CCTK_REAL const PDstandard4th33gxy = PDstandard4th33(&gxy[index]);
+ CCTK_REAL const PDstandard4th12gxy = PDstandard4th12(&gxy[index]);
+ CCTK_REAL const PDstandard4th13gxy = PDstandard4th13(&gxy[index]);
+ CCTK_REAL const PDstandard4th23gxy = PDstandard4th23(&gxy[index]);
+ CCTK_REAL const PDstandard4th1gxz = PDstandard4th1(&gxz[index]);
+ CCTK_REAL const PDstandard4th2gxz = PDstandard4th2(&gxz[index]);
+ CCTK_REAL const PDstandard4th3gxz = PDstandard4th3(&gxz[index]);
+ CCTK_REAL const PDstandard4th22gxz = PDstandard4th22(&gxz[index]);
+ CCTK_REAL const PDstandard4th12gxz = PDstandard4th12(&gxz[index]);
+ CCTK_REAL const PDstandard4th13gxz = PDstandard4th13(&gxz[index]);
+ CCTK_REAL const PDstandard4th23gxz = PDstandard4th23(&gxz[index]);
+ CCTK_REAL const PDstandard4th1gyy = PDstandard4th1(&gyy[index]);
+ CCTK_REAL const PDstandard4th2gyy = PDstandard4th2(&gyy[index]);
+ CCTK_REAL const PDstandard4th3gyy = PDstandard4th3(&gyy[index]);
+ CCTK_REAL const PDstandard4th11gyy = PDstandard4th11(&gyy[index]);
+ CCTK_REAL const PDstandard4th33gyy = PDstandard4th33(&gyy[index]);
+ CCTK_REAL const PDstandard4th13gyy = PDstandard4th13(&gyy[index]);
+ CCTK_REAL const PDstandard4th1gyz = PDstandard4th1(&gyz[index]);
+ CCTK_REAL const PDstandard4th2gyz = PDstandard4th2(&gyz[index]);
+ CCTK_REAL const PDstandard4th3gyz = PDstandard4th3(&gyz[index]);
+ CCTK_REAL const PDstandard4th11gyz = PDstandard4th11(&gyz[index]);
+ CCTK_REAL const PDstandard4th12gyz = PDstandard4th12(&gyz[index]);
+ CCTK_REAL const PDstandard4th13gyz = PDstandard4th13(&gyz[index]);
+ CCTK_REAL const PDstandard4th23gyz = PDstandard4th23(&gyz[index]);
+ CCTK_REAL const PDstandard4th1gzz = PDstandard4th1(&gzz[index]);
+ CCTK_REAL const PDstandard4th2gzz = PDstandard4th2(&gzz[index]);
+ CCTK_REAL const PDstandard4th3gzz = PDstandard4th3(&gzz[index]);
+ CCTK_REAL const PDstandard4th11gzz = PDstandard4th11(&gzz[index]);
+ CCTK_REAL const PDstandard4th22gzz = PDstandard4th22(&gzz[index]);
+ CCTK_REAL const PDstandard4th12gzz = PDstandard4th12(&gzz[index]);
+ CCTK_REAL const PDstandard4th2kxx = PDstandard4th2(&kxx[index]);
+ CCTK_REAL const PDstandard4th3kxx = PDstandard4th3(&kxx[index]);
+ CCTK_REAL const PDstandard4th1kxy = PDstandard4th1(&kxy[index]);
+ CCTK_REAL const PDstandard4th2kxy = PDstandard4th2(&kxy[index]);
+ CCTK_REAL const PDstandard4th3kxy = PDstandard4th3(&kxy[index]);
+ CCTK_REAL const PDstandard4th1kxz = PDstandard4th1(&kxz[index]);
+ CCTK_REAL const PDstandard4th2kxz = PDstandard4th2(&kxz[index]);
+ CCTK_REAL const PDstandard4th3kxz = PDstandard4th3(&kxz[index]);
+ CCTK_REAL const PDstandard4th1kyy = PDstandard4th1(&kyy[index]);
+ CCTK_REAL const PDstandard4th3kyy = PDstandard4th3(&kyy[index]);
+ CCTK_REAL const PDstandard4th1kyz = PDstandard4th1(&kyz[index]);
+ CCTK_REAL const PDstandard4th2kyz = PDstandard4th2(&kyz[index]);
+ CCTK_REAL const PDstandard4th3kyz = PDstandard4th3(&kyz[index]);
+ CCTK_REAL const PDstandard4th1kzz = PDstandard4th1(&kzz[index]);
+ CCTK_REAL const PDstandard4th2kzz = PDstandard4th2(&kzz[index]);
+
+ /* Calculate temporaries and grid functions */
+ CCTK_REAL detg = 2*gxyL*gxzL*gyzL + gzzL*(gxxL*gyyL - SQR(gxyL)) -
+ gyyL*SQR(gxzL) - gxxL*SQR(gyzL);
+
+ CCTK_REAL invdetg = INV(detg);
+
+ CCTK_REAL gInv11 = invdetg*(gyyL*gzzL - SQR(gyzL));
+
+ CCTK_REAL gInv12 = (gxzL*gyzL - gxyL*gzzL)*invdetg;
+
+ CCTK_REAL gInv13 = (-(gxzL*gyyL) + gxyL*gyzL)*invdetg;
+
+ CCTK_REAL gInv21 = (gxzL*gyzL - gxyL*gzzL)*invdetg;
+
+ CCTK_REAL gInv22 = invdetg*(gxxL*gzzL - SQR(gxzL));
+
+ CCTK_REAL gInv23 = (gxyL*gxzL - gxxL*gyzL)*invdetg;
+
+ CCTK_REAL gInv31 = (-(gxzL*gyyL) + gxyL*gyzL)*invdetg;
+
+ CCTK_REAL gInv32 = (gxyL*gxzL - gxxL*gyzL)*invdetg;
+
+ CCTK_REAL gInv33 = invdetg*(gxxL*gyyL - SQR(gxyL));
+
+ CCTK_REAL gamma111 = 0.5*(gInv11*PDstandard4th1gxx +
+ 2*(gInv12*PDstandard4th1gxy + gInv13*PDstandard4th1gxz) -
+ gInv12*PDstandard4th2gxx - gInv13*PDstandard4th3gxx);
+
+ CCTK_REAL gamma211 = 0.5*(gInv21*PDstandard4th1gxx +
+ 2*(gInv22*PDstandard4th1gxy + gInv23*PDstandard4th1gxz) -
+ gInv22*PDstandard4th2gxx - gInv23*PDstandard4th3gxx);
+
+ CCTK_REAL gamma311 = 0.5*(gInv31*PDstandard4th1gxx +
+ 2*(gInv32*PDstandard4th1gxy + gInv33*PDstandard4th1gxz) -
+ gInv32*PDstandard4th2gxx - gInv33*PDstandard4th3gxx);
+
+ CCTK_REAL gamma121 = 0.5*(gInv12*PDstandard4th1gyy +
+ gInv11*PDstandard4th2gxx + gInv13*(PDstandard4th1gyz +
+ PDstandard4th2gxz - PDstandard4th3gxy));
+
+ CCTK_REAL gamma221 = 0.5*(gInv22*PDstandard4th1gyy +
+ gInv21*PDstandard4th2gxx + gInv23*(PDstandard4th1gyz +
+ PDstandard4th2gxz - PDstandard4th3gxy));
+
+ CCTK_REAL gamma321 = 0.5*(gInv32*PDstandard4th1gyy +
+ gInv31*PDstandard4th2gxx + gInv33*(PDstandard4th1gyz +
+ PDstandard4th2gxz - PDstandard4th3gxy));
+
+ CCTK_REAL gamma131 = 0.5*(gInv13*PDstandard4th1gzz +
+ gInv11*PDstandard4th3gxx + gInv12*(PDstandard4th1gyz -
+ PDstandard4th2gxz + PDstandard4th3gxy));
+
+ CCTK_REAL gamma231 = 0.5*(gInv23*PDstandard4th1gzz +
+ gInv21*PDstandard4th3gxx + gInv22*(PDstandard4th1gyz -
+ PDstandard4th2gxz + PDstandard4th3gxy));
+
+ CCTK_REAL gamma331 = 0.5*(gInv33*PDstandard4th1gzz +
+ gInv31*PDstandard4th3gxx + gInv32*(PDstandard4th1gyz -
+ PDstandard4th2gxz + PDstandard4th3gxy));
+
+ CCTK_REAL gamma122 = 0.5*(gInv11*(-PDstandard4th1gyy +
+ 2*PDstandard4th2gxy) + gInv12*PDstandard4th2gyy +
+ gInv13*(2*PDstandard4th2gyz - PDstandard4th3gyy));
+
+ CCTK_REAL gamma222 = 0.5*(gInv21*(-PDstandard4th1gyy +
+ 2*PDstandard4th2gxy) + gInv22*PDstandard4th2gyy +
+ gInv23*(2*PDstandard4th2gyz - PDstandard4th3gyy));
+
+ CCTK_REAL gamma322 = 0.5*(gInv31*(-PDstandard4th1gyy +
+ 2*PDstandard4th2gxy) + gInv32*PDstandard4th2gyy +
+ gInv33*(2*PDstandard4th2gyz - PDstandard4th3gyy));
+
+ CCTK_REAL gamma132 = 0.5*(gInv13*PDstandard4th2gzz +
+ gInv11*(-PDstandard4th1gyz + PDstandard4th2gxz + PDstandard4th3gxy) +
+ gInv12*PDstandard4th3gyy);
+
+ CCTK_REAL gamma232 = 0.5*(gInv23*PDstandard4th2gzz +
+ gInv21*(-PDstandard4th1gyz + PDstandard4th2gxz + PDstandard4th3gxy) +
+ gInv22*PDstandard4th3gyy);
+
+ CCTK_REAL gamma332 = 0.5*(gInv33*PDstandard4th2gzz +
+ gInv31*(-PDstandard4th1gyz + PDstandard4th2gxz + PDstandard4th3gxy) +
+ gInv32*PDstandard4th3gyy);
+
+ CCTK_REAL gamma133 = 0.5*(gInv11*(-PDstandard4th1gzz +
+ 2*PDstandard4th3gxz) + gInv12*(-PDstandard4th2gzz +
+ 2*PDstandard4th3gyz) + gInv13*PDstandard4th3gzz);
+
+ CCTK_REAL gamma233 = 0.5*(gInv21*(-PDstandard4th1gzz +
+ 2*PDstandard4th3gxz) + gInv22*(-PDstandard4th2gzz +
+ 2*PDstandard4th3gyz) + gInv23*PDstandard4th3gzz);
+
+ CCTK_REAL gamma333 = 0.5*(gInv31*(-PDstandard4th1gzz +
+ 2*PDstandard4th3gxz) + gInv32*(-PDstandard4th2gzz +
+ 2*PDstandard4th3gyz) + gInv33*PDstandard4th3gzz);
+
+ CCTK_REAL xmoved = xL - ToReal(xorig);
+
+ CCTK_REAL ymoved = yL - ToReal(yorig);
+
+ CCTK_REAL zmoved = zL - ToReal(zorig);
+
+ CCTK_REAL va1 = -ymoved;
+
+ CCTK_REAL va2 = xmoved + ToReal(offset);
+
+ CCTK_REAL va3 = 0;
+
+ CCTK_REAL vb1 = xmoved + ToReal(offset);
+
+ CCTK_REAL vb2 = ymoved;
+
+ CCTK_REAL vb3 = zmoved;
+
+ CCTK_REAL vc1 = ((-(gInv13*va2) + gInv12*va3)*vb1 + (gInv13*va1 -
+ gInv11*va3)*vb2 + (-(gInv12*va1) + gInv11*va2)*vb3)*sqrt(detg);
+
+ CCTK_REAL vc2 = ((-(gInv23*va2) + gInv22*va3)*vb1 + (gInv23*va1 -
+ gInv21*va3)*vb2 + (-(gInv22*va1) + gInv21*va2)*vb3)*sqrt(detg);
+
+ CCTK_REAL vc3 = ((-(gInv33*va2) + gInv32*va3)*vb1 + (gInv33*va1 -
+ gInv31*va3)*vb2 + (-(gInv32*va1) + gInv31*va2)*vb3)*sqrt(detg);
+
+ CCTK_REAL wa1 = va1;
+
+ CCTK_REAL wa2 = va2;
+
+ CCTK_REAL wa3 = va3;
+
+ CCTK_REAL omega11 = 2*(gyzL*wa2*wa3 + wa1*(gxyL*wa2 + gxzL*wa3)) +
+ gxxL*SQR(wa1) + gyyL*SQR(wa2) + gzzL*SQR(wa3);
+
+ CCTK_REAL ea1 = wa1*INV(sqrt(omega11));
+
+ CCTK_REAL ea2 = wa2*INV(sqrt(omega11));
+
+ CCTK_REAL ea3 = wa3*INV(sqrt(omega11));
+
+ CCTK_REAL omega12 = ea1*(gxxL*vb1 + gxyL*vb2 + gxzL*vb3) +
+ ea2*(gxyL*vb1 + gyyL*vb2 + gyzL*vb3) + ea3*(gxzL*vb1 + gyzL*vb2 +
+ gzzL*vb3);
+
+ CCTK_REAL wb1 = -(ea1*omega12) + vb1;
+
+ CCTK_REAL wb2 = -(ea2*omega12) + vb2;
+
+ CCTK_REAL wb3 = -(ea3*omega12) + vb3;
+
+ CCTK_REAL omega22 = 2*(gyzL*wb2*wb3 + wb1*(gxyL*wb2 + gxzL*wb3)) +
+ gxxL*SQR(wb1) + gyyL*SQR(wb2) + gzzL*SQR(wb3);
+
+ CCTK_REAL eb1 = wb1*INV(sqrt(omega22));
+
+ CCTK_REAL eb2 = wb2*INV(sqrt(omega22));
+
+ CCTK_REAL eb3 = wb3*INV(sqrt(omega22));
+
+ CCTK_REAL omega13 = ea1*(gxxL*vc1 + gxyL*vc2 + gxzL*vc3) +
+ ea2*(gxyL*vc1 + gyyL*vc2 + gyzL*vc3) + ea3*(gxzL*vc1 + gyzL*vc2 +
+ gzzL*vc3);
+
+ CCTK_REAL omega23 = eb1*(gxxL*vc1 + gxyL*vc2 + gxzL*vc3) +
+ eb2*(gxyL*vc1 + gyyL*vc2 + gyzL*vc3) + eb3*(gxzL*vc1 + gyzL*vc2 +
+ gzzL*vc3);
+
+ CCTK_REAL wc1 = -(ea1*omega13) - eb1*omega23 + vc1;
+
+ CCTK_REAL wc2 = -(ea2*omega13) - eb2*omega23 + vc2;
+
+ CCTK_REAL wc3 = -(ea3*omega13) - eb3*omega23 + vc3;
+
+ CCTK_REAL omega33 = 2*(gyzL*wc2*wc3 + wc1*(gxyL*wc2 + gxzL*wc3)) +
+ gxxL*SQR(wc1) + gyyL*SQR(wc2) + gzzL*SQR(wc3);
+
+ CCTK_REAL ec1 = wc1*INV(sqrt(omega33));
+
+ CCTK_REAL ec2 = wc2*INV(sqrt(omega33));
+
+ CCTK_REAL ec3 = wc3*INV(sqrt(omega33));
+
+ CCTK_REAL isqrt2 = 0.707106781186547524;
+
+ CCTK_REAL n1 = -(eb1*isqrt2);
+
+ CCTK_REAL n2 = -(eb2*isqrt2);
+
+ CCTK_REAL n3 = -(eb3*isqrt2);
+
+ CCTK_REAL rm1 = ec1*isqrt2;
+
+ CCTK_REAL rm2 = ec2*isqrt2;
+
+ CCTK_REAL rm3 = ec3*isqrt2;
+
+ CCTK_REAL im1 = ea1*isqrt2;
+
+ CCTK_REAL im2 = ea2*isqrt2;
+
+ CCTK_REAL im3 = ea3*isqrt2;
+
+ CCTK_REAL rmbar1 = ec1*isqrt2;
+
+ CCTK_REAL rmbar2 = ec2*isqrt2;
+
+ CCTK_REAL rmbar3 = ec3*isqrt2;
+
+ CCTK_REAL imbar1 = -(ea1*isqrt2);
+
+ CCTK_REAL imbar2 = -(ea2*isqrt2);
+
+ CCTK_REAL imbar3 = -(ea3*isqrt2);
+
+ CCTK_REAL nn = isqrt2;
+
+ CCTK_REAL R1111 = 0;
+
+ CCTK_REAL R1112 = 0;
+
+ CCTK_REAL R1113 = 0;
+
+ CCTK_REAL R1121 = 0;
+
+ CCTK_REAL R1122 = 0;
+
+ CCTK_REAL R1123 = 0;
+
+ CCTK_REAL R1131 = 0;
+
+ CCTK_REAL R1132 = 0;
+
+ CCTK_REAL R1133 = 0;
+
+ CCTK_REAL R1211 = 0;
+
+ CCTK_REAL R1212 = 0.5*((4*gamma121*gamma221 -
+ 2*gamma111*gamma222)*gxyL + (4*gamma121*gamma321 -
+ 2*gamma111*gamma322)*gxzL + (4*gamma221*gamma321 -
+ 2*gamma211*gamma322)*gyzL - 2*(gamma111*gamma122*gxxL +
+ gamma122*gamma211*gxyL + gamma122*gamma311*gxzL +
+ gamma211*gamma222*gyyL + gamma222*gamma311*gyzL +
+ gamma311*gamma322*gzzL) - PDstandard4th11gyy + 2*PDstandard4th12gxy -
+ PDstandard4th22gxx + 2*gxxL*SQR(gamma121) + 2*gyyL*SQR(gamma221) +
+ 2*gzzL*SQR(gamma321));
+
+ CCTK_REAL R1213 = (gamma121*gamma131 - gamma111*gamma132)*gxxL +
+ (-(gamma132*gamma211) + gamma131*gamma221 + gamma121*gamma231 -
+ gamma111*gamma232)*gxyL + (-(gamma132*gamma311) + gamma131*gamma321 +
+ gamma121*gamma331 - gamma111*gamma332)*gxzL + (gamma221*gamma231 -
+ gamma211*gamma232)*gyyL + (-(gamma232*gamma311) + gamma231*gamma321 +
+ gamma221*gamma331 - gamma211*gamma332)*gyzL + (gamma321*gamma331 -
+ gamma311*gamma332)*gzzL + 0.5*(-PDstandard4th11gyz + PDstandard4th12gxz
+ + PDstandard4th13gxy - PDstandard4th23gxx);
+
+ CCTK_REAL R1221 = (-2*gamma121*gamma221 + gamma111*gamma222)*gxyL +
+ (-2*gamma121*gamma321 + gamma111*gamma322)*gxzL +
+ gamma122*(gamma111*gxxL + gamma211*gxyL + gamma311*gxzL) +
+ (-2*gamma221*gamma321 + gamma211*gamma322)*gyzL +
+ gamma222*(gamma211*gyyL + gamma311*gyzL) - PDstandard4th12gxy +
+ 0.5*(PDstandard4th11gyy + PDstandard4th22gxx) - gxxL*SQR(gamma121) -
+ gyyL*SQR(gamma221) + gzzL*(gamma311*gamma322 - SQR(gamma321));
+
+ CCTK_REAL R1222 = 0;
+
+ CCTK_REAL R1223 = (gamma122*gamma131 - gamma121*gamma132)*gxxL +
+ (-(gamma132*gamma221) + gamma131*gamma222 + gamma122*gamma231 -
+ gamma121*gamma232)*gxyL + (-(gamma132*gamma321) + gamma131*gamma322 +
+ gamma122*gamma331 - gamma121*gamma332)*gxzL + (gamma222*gamma231 -
+ gamma221*gamma232)*gyyL + (-(gamma232*gamma321) + gamma231*gamma322 +
+ gamma222*gamma331 - gamma221*gamma332)*gyzL + (gamma322*gamma331 -
+ gamma321*gamma332)*gzzL + 0.5*(-PDstandard4th12gyz + PDstandard4th13gyy
+ + PDstandard4th22gxz - PDstandard4th23gxy);
+
+ CCTK_REAL R1231 = (-(gamma121*gamma131) + gamma111*gamma132)*gxxL +
+ (gamma132*gamma211 - gamma131*gamma221 - gamma121*gamma231 +
+ gamma111*gamma232)*gxyL + (gamma132*gamma311 - gamma131*gamma321 -
+ gamma121*gamma331 + gamma111*gamma332)*gxzL + (-(gamma221*gamma231) +
+ gamma211*gamma232)*gyyL + (gamma232*gamma311 - gamma231*gamma321 -
+ gamma221*gamma331 + gamma211*gamma332)*gyzL + (-(gamma321*gamma331) +
+ gamma311*gamma332)*gzzL + 0.5*(PDstandard4th11gyz - PDstandard4th12gxz
+ - PDstandard4th13gxy + PDstandard4th23gxx);
+
+ CCTK_REAL R1232 = (-(gamma122*gamma131) + gamma121*gamma132)*gxxL +
+ (gamma132*gamma221 - gamma131*gamma222 - gamma122*gamma231 +
+ gamma121*gamma232)*gxyL + (gamma132*gamma321 - gamma131*gamma322 -
+ gamma122*gamma331 + gamma121*gamma332)*gxzL + (-(gamma222*gamma231) +
+ gamma221*gamma232)*gyyL + (gamma232*gamma321 - gamma231*gamma322 -
+ gamma222*gamma331 + gamma221*gamma332)*gyzL + (-(gamma322*gamma331) +
+ gamma321*gamma332)*gzzL + 0.5*(PDstandard4th12gyz - PDstandard4th13gyy
+ - PDstandard4th22gxz + PDstandard4th23gxy);
+
+ CCTK_REAL R1233 = 0;
+
+ CCTK_REAL R1311 = 0;
+
+ CCTK_REAL R1312 = (gamma121*gamma131 - gamma111*gamma132)*gxxL +
+ (-(gamma132*gamma211) + gamma131*gamma221 + gamma121*gamma231 -
+ gamma111*gamma232)*gxyL + (-(gamma132*gamma311) + gamma131*gamma321 +
+ gamma121*gamma331 - gamma111*gamma332)*gxzL + (gamma221*gamma231 -
+ gamma211*gamma232)*gyyL + (-(gamma232*gamma311) + gamma231*gamma321 +
+ gamma221*gamma331 - gamma211*gamma332)*gyzL + (gamma321*gamma331 -
+ gamma311*gamma332)*gzzL + 0.5*(-PDstandard4th11gyz + PDstandard4th12gxz
+ + PDstandard4th13gxy - PDstandard4th23gxx);
+
+ CCTK_REAL R1313 = 0.5*((4*gamma131*gamma231 -
+ 2*gamma111*gamma233)*gxyL + (4*gamma131*gamma331 -
+ 2*gamma111*gamma333)*gxzL + (4*gamma231*gamma331 -
+ 2*gamma211*gamma333)*gyzL - 2*(gamma111*gamma133*gxxL +
+ gamma133*gamma211*gxyL + gamma133*gamma311*gxzL +
+ gamma211*gamma233*gyyL + gamma233*gamma311*gyzL +
+ gamma311*gamma333*gzzL) - PDstandard4th11gzz + 2*PDstandard4th13gxz -
+ PDstandard4th33gxx + 2*gxxL*SQR(gamma131) + 2*gyyL*SQR(gamma231) +
+ 2*gzzL*SQR(gamma331));
+
+ CCTK_REAL R1321 = (-(gamma121*gamma131) + gamma111*gamma132)*gxxL +
+ (gamma132*gamma211 - gamma131*gamma221 - gamma121*gamma231 +
+ gamma111*gamma232)*gxyL + (gamma132*gamma311 - gamma131*gamma321 -
+ gamma121*gamma331 + gamma111*gamma332)*gxzL + (-(gamma221*gamma231) +
+ gamma211*gamma232)*gyyL + (gamma232*gamma311 - gamma231*gamma321 -
+ gamma221*gamma331 + gamma211*gamma332)*gyzL + (-(gamma321*gamma331) +
+ gamma311*gamma332)*gzzL + 0.5*(PDstandard4th11gyz - PDstandard4th12gxz
+ - PDstandard4th13gxy + PDstandard4th23gxx);
+
+ CCTK_REAL R1322 = 0;
+
+ CCTK_REAL R1323 = (gamma131*gamma132 - gamma121*gamma133)*gxxL +
+ (-(gamma133*gamma221) + gamma132*gamma231 + gamma131*gamma232 -
+ gamma121*gamma233)*gxyL + (-(gamma133*gamma321) + gamma132*gamma331 +
+ gamma131*gamma332 - gamma121*gamma333)*gxzL + (gamma231*gamma232 -
+ gamma221*gamma233)*gyyL + (-(gamma233*gamma321) + gamma232*gamma331 +
+ gamma231*gamma332 - gamma221*gamma333)*gyzL + (gamma331*gamma332 -
+ gamma321*gamma333)*gzzL + 0.5*(-PDstandard4th12gzz + PDstandard4th13gyz
+ + PDstandard4th23gxz - PDstandard4th33gxy);
+
+ CCTK_REAL R1331 = (-2*gamma131*gamma231 + gamma111*gamma233)*gxyL +
+ (-2*gamma131*gamma331 + gamma111*gamma333)*gxzL +
+ gamma133*(gamma111*gxxL + gamma211*gxyL + gamma311*gxzL) +
+ (-2*gamma231*gamma331 + gamma211*gamma333)*gyzL +
+ gamma233*(gamma211*gyyL + gamma311*gyzL) - PDstandard4th13gxz +
+ 0.5*(PDstandard4th11gzz + PDstandard4th33gxx) - gxxL*SQR(gamma131) -
+ gyyL*SQR(gamma231) + gzzL*(gamma311*gamma333 - SQR(gamma331));
+
+ CCTK_REAL R1332 = (-(gamma131*gamma132) + gamma121*gamma133)*gxxL +
+ (gamma133*gamma221 - gamma132*gamma231 - gamma131*gamma232 +
+ gamma121*gamma233)*gxyL + (gamma133*gamma321 - gamma132*gamma331 -
+ gamma131*gamma332 + gamma121*gamma333)*gxzL + (-(gamma231*gamma232) +
+ gamma221*gamma233)*gyyL + (gamma233*gamma321 - gamma232*gamma331 -
+ gamma231*gamma332 + gamma221*gamma333)*gyzL + (-(gamma331*gamma332) +
+ gamma321*gamma333)*gzzL + 0.5*(PDstandard4th12gzz - PDstandard4th13gyz
+ - PDstandard4th23gxz + PDstandard4th33gxy);
+
+ CCTK_REAL R1333 = 0;
+
+ CCTK_REAL R2111 = 0;
+
+ CCTK_REAL R2112 = (-2*gamma121*gamma221 + gamma111*gamma222)*gxyL +
+ (-2*gamma121*gamma321 + gamma111*gamma322)*gxzL +
+ gamma122*(gamma111*gxxL + gamma211*gxyL + gamma311*gxzL) +
+ (-2*gamma221*gamma321 + gamma211*gamma322)*gyzL +
+ gamma222*(gamma211*gyyL + gamma311*gyzL) - PDstandard4th12gxy +
+ 0.5*(PDstandard4th11gyy + PDstandard4th22gxx) - gxxL*SQR(gamma121) -
+ gyyL*SQR(gamma221) + gzzL*(gamma311*gamma322 - SQR(gamma321));
+
+ CCTK_REAL R2113 = (-(gamma121*gamma131) + gamma111*gamma132)*gxxL +
+ (gamma132*gamma211 - gamma131*gamma221 - gamma121*gamma231 +
+ gamma111*gamma232)*gxyL + (gamma132*gamma311 - gamma131*gamma321 -
+ gamma121*gamma331 + gamma111*gamma332)*gxzL + (-(gamma221*gamma231) +
+ gamma211*gamma232)*gyyL + (gamma232*gamma311 - gamma231*gamma321 -
+ gamma221*gamma331 + gamma211*gamma332)*gyzL + (-(gamma321*gamma331) +
+ gamma311*gamma332)*gzzL + 0.5*(PDstandard4th11gyz - PDstandard4th12gxz
+ - PDstandard4th13gxy + PDstandard4th23gxx);
+
+ CCTK_REAL R2121 = 0.5*((4*gamma121*gamma221 -
+ 2*gamma111*gamma222)*gxyL + (4*gamma121*gamma321 -
+ 2*gamma111*gamma322)*gxzL + (4*gamma221*gamma321 -
+ 2*gamma211*gamma322)*gyzL - 2*(gamma111*gamma122*gxxL +
+ gamma122*gamma211*gxyL + gamma122*gamma311*gxzL +
+ gamma211*gamma222*gyyL + gamma222*gamma311*gyzL +
+ gamma311*gamma322*gzzL) - PDstandard4th11gyy + 2*PDstandard4th12gxy -
+ PDstandard4th22gxx + 2*gxxL*SQR(gamma121) + 2*gyyL*SQR(gamma221) +
+ 2*gzzL*SQR(gamma321));
+
+ CCTK_REAL R2122 = 0;
+
+ CCTK_REAL R2123 = (-(gamma122*gamma131) + gamma121*gamma132)*gxxL +
+ (gamma132*gamma221 - gamma131*gamma222 - gamma122*gamma231 +
+ gamma121*gamma232)*gxyL + (gamma132*gamma321 - gamma131*gamma322 -
+ gamma122*gamma331 + gamma121*gamma332)*gxzL + (-(gamma222*gamma231) +
+ gamma221*gamma232)*gyyL + (gamma232*gamma321 - gamma231*gamma322 -
+ gamma222*gamma331 + gamma221*gamma332)*gyzL + (-(gamma322*gamma331) +
+ gamma321*gamma332)*gzzL + 0.5*(PDstandard4th12gyz - PDstandard4th13gyy
+ - PDstandard4th22gxz + PDstandard4th23gxy);
+
+ CCTK_REAL R2131 = (gamma121*gamma131 - gamma111*gamma132)*gxxL +
+ (-(gamma132*gamma211) + gamma131*gamma221 + gamma121*gamma231 -
+ gamma111*gamma232)*gxyL + (-(gamma132*gamma311) + gamma131*gamma321 +
+ gamma121*gamma331 - gamma111*gamma332)*gxzL + (gamma221*gamma231 -
+ gamma211*gamma232)*gyyL + (-(gamma232*gamma311) + gamma231*gamma321 +
+ gamma221*gamma331 - gamma211*gamma332)*gyzL + (gamma321*gamma331 -
+ gamma311*gamma332)*gzzL + 0.5*(-PDstandard4th11gyz + PDstandard4th12gxz
+ + PDstandard4th13gxy - PDstandard4th23gxx);
+
+ CCTK_REAL R2132 = (gamma122*gamma131 - gamma121*gamma132)*gxxL +
+ (-(gamma132*gamma221) + gamma131*gamma222 + gamma122*gamma231 -
+ gamma121*gamma232)*gxyL + (-(gamma132*gamma321) + gamma131*gamma322 +
+ gamma122*gamma331 - gamma121*gamma332)*gxzL + (gamma222*gamma231 -
+ gamma221*gamma232)*gyyL + (-(gamma232*gamma321) + gamma231*gamma322 +
+ gamma222*gamma331 - gamma221*gamma332)*gyzL + (gamma322*gamma331 -
+ gamma321*gamma332)*gzzL + 0.5*(-PDstandard4th12gyz + PDstandard4th13gyy
+ + PDstandard4th22gxz - PDstandard4th23gxy);
+
+ CCTK_REAL R2133 = 0;
+
+ CCTK_REAL R2211 = 0;
+
+ CCTK_REAL R2212 = 0;
+
+ CCTK_REAL R2213 = 0;
+
+ CCTK_REAL R2221 = 0;
+
+ CCTK_REAL R2222 = 0;
+
+ CCTK_REAL R2223 = 0;
+
+ CCTK_REAL R2231 = 0;
+
+ CCTK_REAL R2232 = 0;
+
+ CCTK_REAL R2233 = 0;
+
+ CCTK_REAL R2311 = 0;
+
+ CCTK_REAL R2312 = (gamma122*gamma131 - gamma121*gamma132)*gxxL +
+ (-(gamma132*gamma221) + gamma131*gamma222 + gamma122*gamma231 -
+ gamma121*gamma232)*gxyL + (-(gamma132*gamma321) + gamma131*gamma322 +
+ gamma122*gamma331 - gamma121*gamma332)*gxzL + (gamma222*gamma231 -
+ gamma221*gamma232)*gyyL + (-(gamma232*gamma321) + gamma231*gamma322 +
+ gamma222*gamma331 - gamma221*gamma332)*gyzL + (gamma322*gamma331 -
+ gamma321*gamma332)*gzzL + 0.5*(-PDstandard4th12gyz + PDstandard4th13gyy
+ + PDstandard4th22gxz - PDstandard4th23gxy);
+
+ CCTK_REAL R2313 = (gamma131*gamma132 - gamma121*gamma133)*gxxL +
+ (-(gamma133*gamma221) + gamma132*gamma231 + gamma131*gamma232 -
+ gamma121*gamma233)*gxyL + (-(gamma133*gamma321) + gamma132*gamma331 +
+ gamma131*gamma332 - gamma121*gamma333)*gxzL + (gamma231*gamma232 -
+ gamma221*gamma233)*gyyL + (-(gamma233*gamma321) + gamma232*gamma331 +
+ gamma231*gamma332 - gamma221*gamma333)*gyzL + (gamma331*gamma332 -
+ gamma321*gamma333)*gzzL + 0.5*(-PDstandard4th12gzz + PDstandard4th13gyz
+ + PDstandard4th23gxz - PDstandard4th33gxy);
+
+ CCTK_REAL R2321 = (-(gamma122*gamma131) + gamma121*gamma132)*gxxL +
+ (gamma132*gamma221 - gamma131*gamma222 - gamma122*gamma231 +
+ gamma121*gamma232)*gxyL + (gamma132*gamma321 - gamma131*gamma322 -
+ gamma122*gamma331 + gamma121*gamma332)*gxzL + (-(gamma222*gamma231) +
+ gamma221*gamma232)*gyyL + (gamma232*gamma321 - gamma231*gamma322 -
+ gamma222*gamma331 + gamma221*gamma332)*gyzL + (-(gamma322*gamma331) +
+ gamma321*gamma332)*gzzL + 0.5*(PDstandard4th12gyz - PDstandard4th13gyy
+ - PDstandard4th22gxz + PDstandard4th23gxy);
+
+ CCTK_REAL R2322 = 0;
+
+ CCTK_REAL R2323 = 0.5*((4*gamma132*gamma232 -
+ 2*gamma122*gamma233)*gxyL + (4*gamma132*gamma332 -
+ 2*gamma122*gamma333)*gxzL + (4*gamma232*gamma332 -
+ 2*gamma222*gamma333)*gyzL - 2*(gamma122*gamma133*gxxL +
+ gamma133*gamma222*gxyL + gamma133*gamma322*gxzL +
+ gamma222*gamma233*gyyL + gamma233*gamma322*gyzL +
+ gamma322*gamma333*gzzL) - PDstandard4th22gzz + 2*PDstandard4th23gyz -
+ PDstandard4th33gyy + 2*gxxL*SQR(gamma132) + 2*gyyL*SQR(gamma232) +
+ 2*gzzL*SQR(gamma332));
+
+ CCTK_REAL R2331 = (-(gamma131*gamma132) + gamma121*gamma133)*gxxL +
+ (gamma133*gamma221 - gamma132*gamma231 - gamma131*gamma232 +
+ gamma121*gamma233)*gxyL + (gamma133*gamma321 - gamma132*gamma331 -
+ gamma131*gamma332 + gamma121*gamma333)*gxzL + (-(gamma231*gamma232) +
+ gamma221*gamma233)*gyyL + (gamma233*gamma321 - gamma232*gamma331 -
+ gamma231*gamma332 + gamma221*gamma333)*gyzL + (-(gamma331*gamma332) +
+ gamma321*gamma333)*gzzL + 0.5*(PDstandard4th12gzz - PDstandard4th13gyz
+ - PDstandard4th23gxz + PDstandard4th33gxy);
+
+ CCTK_REAL R2332 = (-2*gamma132*gamma232 + gamma122*gamma233)*gxyL +
+ (-2*gamma132*gamma332 + gamma122*gamma333)*gxzL +
+ gamma133*(gamma122*gxxL + gamma222*gxyL + gamma322*gxzL) +
+ (-2*gamma232*gamma332 + gamma222*gamma333)*gyzL +
+ gamma233*(gamma222*gyyL + gamma322*gyzL) - PDstandard4th23gyz +
+ 0.5*(PDstandard4th22gzz + PDstandard4th33gyy) - gxxL*SQR(gamma132) -
+ gyyL*SQR(gamma232) + gzzL*(gamma322*gamma333 - SQR(gamma332));
+
+ CCTK_REAL R2333 = 0;
+
+ CCTK_REAL R3111 = 0;
+
+ CCTK_REAL R3112 = (-(gamma121*gamma131) + gamma111*gamma132)*gxxL +
+ (gamma132*gamma211 - gamma131*gamma221 - gamma121*gamma231 +
+ gamma111*gamma232)*gxyL + (gamma132*gamma311 - gamma131*gamma321 -
+ gamma121*gamma331 + gamma111*gamma332)*gxzL + (-(gamma221*gamma231) +
+ gamma211*gamma232)*gyyL + (gamma232*gamma311 - gamma231*gamma321 -
+ gamma221*gamma331 + gamma211*gamma332)*gyzL + (-(gamma321*gamma331) +
+ gamma311*gamma332)*gzzL + 0.5*(PDstandard4th11gyz - PDstandard4th12gxz
+ - PDstandard4th13gxy + PDstandard4th23gxx);
+
+ CCTK_REAL R3113 = (-2*gamma131*gamma231 + gamma111*gamma233)*gxyL +
+ (-2*gamma131*gamma331 + gamma111*gamma333)*gxzL +
+ gamma133*(gamma111*gxxL + gamma211*gxyL + gamma311*gxzL) +
+ (-2*gamma231*gamma331 + gamma211*gamma333)*gyzL +
+ gamma233*(gamma211*gyyL + gamma311*gyzL) - PDstandard4th13gxz +
+ 0.5*(PDstandard4th11gzz + PDstandard4th33gxx) - gxxL*SQR(gamma131) -
+ gyyL*SQR(gamma231) + gzzL*(gamma311*gamma333 - SQR(gamma331));
+
+ CCTK_REAL R3121 = (gamma121*gamma131 - gamma111*gamma132)*gxxL +
+ (-(gamma132*gamma211) + gamma131*gamma221 + gamma121*gamma231 -
+ gamma111*gamma232)*gxyL + (-(gamma132*gamma311) + gamma131*gamma321 +
+ gamma121*gamma331 - gamma111*gamma332)*gxzL + (gamma221*gamma231 -
+ gamma211*gamma232)*gyyL + (-(gamma232*gamma311) + gamma231*gamma321 +
+ gamma221*gamma331 - gamma211*gamma332)*gyzL + (gamma321*gamma331 -
+ gamma311*gamma332)*gzzL + 0.5*(-PDstandard4th11gyz + PDstandard4th12gxz
+ + PDstandard4th13gxy - PDstandard4th23gxx);
+
+ CCTK_REAL R3122 = 0;
+
+ CCTK_REAL R3123 = (-(gamma131*gamma132) + gamma121*gamma133)*gxxL +
+ (gamma133*gamma221 - gamma132*gamma231 - gamma131*gamma232 +
+ gamma121*gamma233)*gxyL + (gamma133*gamma321 - gamma132*gamma331 -
+ gamma131*gamma332 + gamma121*gamma333)*gxzL + (-(gamma231*gamma232) +
+ gamma221*gamma233)*gyyL + (gamma233*gamma321 - gamma232*gamma331 -
+ gamma231*gamma332 + gamma221*gamma333)*gyzL + (-(gamma331*gamma332) +
+ gamma321*gamma333)*gzzL + 0.5*(PDstandard4th12gzz - PDstandard4th13gyz
+ - PDstandard4th23gxz + PDstandard4th33gxy);
+
+ CCTK_REAL R3131 = 0.5*((4*gamma131*gamma231 -
+ 2*gamma111*gamma233)*gxyL + (4*gamma131*gamma331 -
+ 2*gamma111*gamma333)*gxzL + (4*gamma231*gamma331 -
+ 2*gamma211*gamma333)*gyzL - 2*(gamma111*gamma133*gxxL +
+ gamma133*gamma211*gxyL + gamma133*gamma311*gxzL +
+ gamma211*gamma233*gyyL + gamma233*gamma311*gyzL +
+ gamma311*gamma333*gzzL) - PDstandard4th11gzz + 2*PDstandard4th13gxz -
+ PDstandard4th33gxx + 2*gxxL*SQR(gamma131) + 2*gyyL*SQR(gamma231) +
+ 2*gzzL*SQR(gamma331));
+
+ CCTK_REAL R3132 = (gamma131*gamma132 - gamma121*gamma133)*gxxL +
+ (-(gamma133*gamma221) + gamma132*gamma231 + gamma131*gamma232 -
+ gamma121*gamma233)*gxyL + (-(gamma133*gamma321) + gamma132*gamma331 +
+ gamma131*gamma332 - gamma121*gamma333)*gxzL + (gamma231*gamma232 -
+ gamma221*gamma233)*gyyL + (-(gamma233*gamma321) + gamma232*gamma331 +
+ gamma231*gamma332 - gamma221*gamma333)*gyzL + (gamma331*gamma332 -
+ gamma321*gamma333)*gzzL + 0.5*(-PDstandard4th12gzz + PDstandard4th13gyz
+ + PDstandard4th23gxz - PDstandard4th33gxy);
+
+ CCTK_REAL R3133 = 0;
+
+ CCTK_REAL R3211 = 0;
+
+ CCTK_REAL R3212 = (-(gamma122*gamma131) + gamma121*gamma132)*gxxL +
+ (gamma132*gamma221 - gamma131*gamma222 - gamma122*gamma231 +
+ gamma121*gamma232)*gxyL + (gamma132*gamma321 - gamma131*gamma322 -
+ gamma122*gamma331 + gamma121*gamma332)*gxzL + (-(gamma222*gamma231) +
+ gamma221*gamma232)*gyyL + (gamma232*gamma321 - gamma231*gamma322 -
+ gamma222*gamma331 + gamma221*gamma332)*gyzL + (-(gamma322*gamma331) +
+ gamma321*gamma332)*gzzL + 0.5*(PDstandard4th12gyz - PDstandard4th13gyy
+ - PDstandard4th22gxz + PDstandard4th23gxy);
+
+ CCTK_REAL R3213 = (-(gamma131*gamma132) + gamma121*gamma133)*gxxL +
+ (gamma133*gamma221 - gamma132*gamma231 - gamma131*gamma232 +
+ gamma121*gamma233)*gxyL + (gamma133*gamma321 - gamma132*gamma331 -
+ gamma131*gamma332 + gamma121*gamma333)*gxzL + (-(gamma231*gamma232) +
+ gamma221*gamma233)*gyyL + (gamma233*gamma321 - gamma232*gamma331 -
+ gamma231*gamma332 + gamma221*gamma333)*gyzL + (-(gamma331*gamma332) +
+ gamma321*gamma333)*gzzL + 0.5*(PDstandard4th12gzz - PDstandard4th13gyz
+ - PDstandard4th23gxz + PDstandard4th33gxy);
+
+ CCTK_REAL R3221 = (gamma122*gamma131 - gamma121*gamma132)*gxxL +
+ (-(gamma132*gamma221) + gamma131*gamma222 + gamma122*gamma231 -
+ gamma121*gamma232)*gxyL + (-(gamma132*gamma321) + gamma131*gamma322 +
+ gamma122*gamma331 - gamma121*gamma332)*gxzL + (gamma222*gamma231 -
+ gamma221*gamma232)*gyyL + (-(gamma232*gamma321) + gamma231*gamma322 +
+ gamma222*gamma331 - gamma221*gamma332)*gyzL + (gamma322*gamma331 -
+ gamma321*gamma332)*gzzL + 0.5*(-PDstandard4th12gyz + PDstandard4th13gyy
+ + PDstandard4th22gxz - PDstandard4th23gxy);
+
+ CCTK_REAL R3222 = 0;
+
+ CCTK_REAL R3223 = (-2*gamma132*gamma232 + gamma122*gamma233)*gxyL +
+ (-2*gamma132*gamma332 + gamma122*gamma333)*gxzL +
+ gamma133*(gamma122*gxxL + gamma222*gxyL + gamma322*gxzL) +
+ (-2*gamma232*gamma332 + gamma222*gamma333)*gyzL +
+ gamma233*(gamma222*gyyL + gamma322*gyzL) - PDstandard4th23gyz +
+ 0.5*(PDstandard4th22gzz + PDstandard4th33gyy) - gxxL*SQR(gamma132) -
+ gyyL*SQR(gamma232) + gzzL*(gamma322*gamma333 - SQR(gamma332));
+
+ CCTK_REAL R3231 = (gamma131*gamma132 - gamma121*gamma133)*gxxL +
+ (-(gamma133*gamma221) + gamma132*gamma231 + gamma131*gamma232 -
+ gamma121*gamma233)*gxyL + (-(gamma133*gamma321) + gamma132*gamma331 +
+ gamma131*gamma332 - gamma121*gamma333)*gxzL + (gamma231*gamma232 -
+ gamma221*gamma233)*gyyL + (-(gamma233*gamma321) + gamma232*gamma331 +
+ gamma231*gamma332 - gamma221*gamma333)*gyzL + (gamma331*gamma332 -
+ gamma321*gamma333)*gzzL + 0.5*(-PDstandard4th12gzz + PDstandard4th13gyz
+ + PDstandard4th23gxz - PDstandard4th33gxy);
+
+ CCTK_REAL R3232 = 0.5*((4*gamma132*gamma232 -
+ 2*gamma122*gamma233)*gxyL + (4*gamma132*gamma332 -
+ 2*gamma122*gamma333)*gxzL + (4*gamma232*gamma332 -
+ 2*gamma222*gamma333)*gyzL - 2*(gamma122*gamma133*gxxL +
+ gamma133*gamma222*gxyL + gamma133*gamma322*gxzL +
+ gamma222*gamma233*gyyL + gamma233*gamma322*gyzL +
+ gamma322*gamma333*gzzL) - PDstandard4th22gzz + 2*PDstandard4th23gyz -
+ PDstandard4th33gyy + 2*gxxL*SQR(gamma132) + 2*gyyL*SQR(gamma232) +
+ 2*gzzL*SQR(gamma332));
+
+ CCTK_REAL R3233 = 0;
+
+ CCTK_REAL R3311 = 0;
+
+ CCTK_REAL R3312 = 0;
+
+ CCTK_REAL R3313 = 0;
+
+ CCTK_REAL R3321 = 0;
+
+ CCTK_REAL R3322 = 0;
+
+ CCTK_REAL R3323 = 0;
+
+ CCTK_REAL R3331 = 0;
+
+ CCTK_REAL R3332 = 0;
+
+ CCTK_REAL R3333 = 0;
+
+ CCTK_REAL R4p1111 = R1111;
+
+ CCTK_REAL R4p1112 = R1112;
+
+ CCTK_REAL R4p1113 = R1113;
+
+ CCTK_REAL R4p1121 = R1121;
+
+ CCTK_REAL R4p1122 = R1122;
+
+ CCTK_REAL R4p1123 = R1123;
+
+ CCTK_REAL R4p1131 = R1131;
+
+ CCTK_REAL R4p1132 = R1132;
+
+ CCTK_REAL R4p1133 = R1133;
+
+ CCTK_REAL R4p1211 = R1211;
+
+ CCTK_REAL R4p1212 = kxxL*kyyL + R1212 - SQR(kxyL);
+
+ CCTK_REAL R4p1213 = -(kxyL*kxzL) + kxxL*kyzL + R1213;
+
+ CCTK_REAL R4p1221 = -(kxxL*kyyL) + R1221 + SQR(kxyL);
+
+ CCTK_REAL R4p1222 = R1222;
+
+ CCTK_REAL R4p1223 = -(kxzL*kyyL) + kxyL*kyzL + R1223;
+
+ CCTK_REAL R4p1231 = kxyL*kxzL - kxxL*kyzL + R1231;
+
+ CCTK_REAL R4p1232 = kxzL*kyyL - kxyL*kyzL + R1232;
+
+ CCTK_REAL R4p1233 = R1233;
+
+ CCTK_REAL R4p1311 = R1311;
+
+ CCTK_REAL R4p1312 = -(kxyL*kxzL) + kxxL*kyzL + R1312;
+
+ CCTK_REAL R4p1313 = kxxL*kzzL + R1313 - SQR(kxzL);
+
+ CCTK_REAL R4p1321 = kxyL*kxzL - kxxL*kyzL + R1321;
+
+ CCTK_REAL R4p1322 = R1322;
+
+ CCTK_REAL R4p1323 = -(kxzL*kyzL) + kxyL*kzzL + R1323;
+
+ CCTK_REAL R4p1331 = -(kxxL*kzzL) + R1331 + SQR(kxzL);
+
+ CCTK_REAL R4p1332 = kxzL*kyzL - kxyL*kzzL + R1332;
+
+ CCTK_REAL R4p1333 = R1333;
+
+ CCTK_REAL R4p2111 = R2111;
+
+ CCTK_REAL R4p2112 = -(kxxL*kyyL) + R2112 + SQR(kxyL);
+
+ CCTK_REAL R4p2113 = kxyL*kxzL - kxxL*kyzL + R2113;
+
+ CCTK_REAL R4p2121 = kxxL*kyyL + R2121 - SQR(kxyL);
+
+ CCTK_REAL R4p2122 = R2122;
+
+ CCTK_REAL R4p2123 = kxzL*kyyL - kxyL*kyzL + R2123;
+
+ CCTK_REAL R4p2131 = -(kxyL*kxzL) + kxxL*kyzL + R2131;
+
+ CCTK_REAL R4p2132 = -(kxzL*kyyL) + kxyL*kyzL + R2132;
+
+ CCTK_REAL R4p2133 = R2133;
+
+ CCTK_REAL R4p2211 = R2211;
+
+ CCTK_REAL R4p2212 = R2212;
+
+ CCTK_REAL R4p2213 = R2213;
+
+ CCTK_REAL R4p2221 = R2221;
+
+ CCTK_REAL R4p2222 = R2222;
+
+ CCTK_REAL R4p2223 = R2223;
+
+ CCTK_REAL R4p2231 = R2231;
+
+ CCTK_REAL R4p2232 = R2232;
+
+ CCTK_REAL R4p2233 = R2233;
+
+ CCTK_REAL R4p2311 = R2311;
+
+ CCTK_REAL R4p2312 = -(kxzL*kyyL) + kxyL*kyzL + R2312;
+
+ CCTK_REAL R4p2313 = -(kxzL*kyzL) + kxyL*kzzL + R2313;
+
+ CCTK_REAL R4p2321 = kxzL*kyyL - kxyL*kyzL + R2321;
+
+ CCTK_REAL R4p2322 = R2322;
+
+ CCTK_REAL R4p2323 = kyyL*kzzL + R2323 - SQR(kyzL);
+
+ CCTK_REAL R4p2331 = kxzL*kyzL - kxyL*kzzL + R2331;
+
+ CCTK_REAL R4p2332 = -(kyyL*kzzL) + R2332 + SQR(kyzL);
+
+ CCTK_REAL R4p2333 = R2333;
+
+ CCTK_REAL R4p3111 = R3111;
+
+ CCTK_REAL R4p3112 = kxyL*kxzL - kxxL*kyzL + R3112;
+
+ CCTK_REAL R4p3113 = -(kxxL*kzzL) + R3113 + SQR(kxzL);
+
+ CCTK_REAL R4p3121 = -(kxyL*kxzL) + kxxL*kyzL + R3121;
+
+ CCTK_REAL R4p3122 = R3122;
+
+ CCTK_REAL R4p3123 = kxzL*kyzL - kxyL*kzzL + R3123;
+
+ CCTK_REAL R4p3131 = kxxL*kzzL + R3131 - SQR(kxzL);
+
+ CCTK_REAL R4p3132 = -(kxzL*kyzL) + kxyL*kzzL + R3132;
+
+ CCTK_REAL R4p3133 = R3133;
+
+ CCTK_REAL R4p3211 = R3211;
+
+ CCTK_REAL R4p3212 = kxzL*kyyL - kxyL*kyzL + R3212;
+
+ CCTK_REAL R4p3213 = kxzL*kyzL - kxyL*kzzL + R3213;
+
+ CCTK_REAL R4p3221 = -(kxzL*kyyL) + kxyL*kyzL + R3221;
+
+ CCTK_REAL R4p3222 = R3222;
+
+ CCTK_REAL R4p3223 = -(kyyL*kzzL) + R3223 + SQR(kyzL);
+
+ CCTK_REAL R4p3231 = -(kxzL*kyzL) + kxyL*kzzL + R3231;
+
+ CCTK_REAL R4p3232 = kyyL*kzzL + R3232 - SQR(kyzL);
+
+ CCTK_REAL R4p3233 = R3233;
+
+ CCTK_REAL R4p3311 = R3311;
+
+ CCTK_REAL R4p3312 = R3312;
+
+ CCTK_REAL R4p3313 = R3313;
+
+ CCTK_REAL R4p3321 = R3321;
+
+ CCTK_REAL R4p3322 = R3322;
+
+ CCTK_REAL R4p3323 = R3323;
+
+ CCTK_REAL R4p3331 = R3331;
+
+ CCTK_REAL R4p3332 = R3332;
+
+ CCTK_REAL R4p3333 = R3333;
+
+ CCTK_REAL Ro111 = 0;
+
+ CCTK_REAL Ro112 = gamma121*kxxL + (-gamma111 + gamma221)*kxyL +
+ gamma321*kxzL - gamma211*kyyL - gamma311*kyzL + PDstandard4th1kxy -
+ PDstandard4th2kxx;
+
+ CCTK_REAL Ro113 = gamma131*kxxL + gamma231*kxyL + (-gamma111 +
+ gamma331)*kxzL - gamma211*kyzL - gamma311*kzzL + PDstandard4th1kxz -
+ PDstandard4th3kxx;
+
+ CCTK_REAL Ro121 = -(gamma121*kxxL) + (gamma111 - gamma221)*kxyL -
+ gamma321*kxzL + gamma211*kyyL + gamma311*kyzL - PDstandard4th1kxy +
+ PDstandard4th2kxx;
+
+ CCTK_REAL Ro122 = 0;
+
+ CCTK_REAL Ro123 = gamma131*kxyL - gamma121*kxzL + gamma231*kyyL +
+ (-gamma221 + gamma331)*kyzL - gamma321*kzzL + PDstandard4th2kxz -
+ PDstandard4th3kxy;
+
+ CCTK_REAL Ro131 = -(gamma131*kxxL) - gamma231*kxyL + (gamma111 -
+ gamma331)*kxzL + gamma211*kyzL + gamma311*kzzL - PDstandard4th1kxz +
+ PDstandard4th3kxx;
+
+ CCTK_REAL Ro132 = -(gamma131*kxyL) + gamma121*kxzL - gamma231*kyyL +
+ (gamma221 - gamma331)*kyzL + gamma321*kzzL - PDstandard4th2kxz +
+ PDstandard4th3kxy;
+
+ CCTK_REAL Ro133 = 0;
+
+ CCTK_REAL Ro211 = 0;
+
+ CCTK_REAL Ro212 = gamma122*kxxL + (-gamma121 + gamma222)*kxyL +
+ gamma322*kxzL - gamma221*kyyL - gamma321*kyzL + PDstandard4th1kyy -
+ PDstandard4th2kxy;
+
+ CCTK_REAL Ro213 = gamma132*kxxL + gamma232*kxyL + (-gamma121 +
+ gamma332)*kxzL - gamma221*kyzL - gamma321*kzzL + PDstandard4th1kyz -
+ PDstandard4th3kxy;
+
+ CCTK_REAL Ro221 = -(gamma122*kxxL) + (gamma121 - gamma222)*kxyL -
+ gamma322*kxzL + gamma221*kyyL + gamma321*kyzL - PDstandard4th1kyy +
+ PDstandard4th2kxy;
+
+ CCTK_REAL Ro222 = 0;
+
+ CCTK_REAL Ro223 = gamma132*kxyL - gamma122*kxzL + gamma232*kyyL +
+ (-gamma222 + gamma332)*kyzL - gamma322*kzzL + PDstandard4th2kyz -
+ PDstandard4th3kyy;
+
+ CCTK_REAL Ro231 = -(gamma132*kxxL) - gamma232*kxyL + (gamma121 -
+ gamma332)*kxzL + gamma221*kyzL + gamma321*kzzL - PDstandard4th1kyz +
+ PDstandard4th3kxy;
+
+ CCTK_REAL Ro232 = -(gamma132*kxyL) + gamma122*kxzL - gamma232*kyyL +
+ (gamma222 - gamma332)*kyzL + gamma322*kzzL - PDstandard4th2kyz +
+ PDstandard4th3kyy;
+
+ CCTK_REAL Ro233 = 0;
+
+ CCTK_REAL Ro311 = 0;
+
+ CCTK_REAL Ro312 = gamma132*kxxL + (-gamma131 + gamma232)*kxyL +
+ gamma332*kxzL - gamma231*kyyL - gamma331*kyzL + PDstandard4th1kyz -
+ PDstandard4th2kxz;
+
+ CCTK_REAL Ro313 = gamma133*kxxL + gamma233*kxyL + (-gamma131 +
+ gamma333)*kxzL - gamma231*kyzL - gamma331*kzzL + PDstandard4th1kzz -
+ PDstandard4th3kxz;
+
+ CCTK_REAL Ro321 = -(gamma132*kxxL) + (gamma131 - gamma232)*kxyL -
+ gamma332*kxzL + gamma231*kyyL + gamma331*kyzL - PDstandard4th1kyz +
+ PDstandard4th2kxz;
+
+ CCTK_REAL Ro322 = 0;
+
+ CCTK_REAL Ro323 = gamma133*kxyL - gamma132*kxzL + gamma233*kyyL +
+ (-gamma232 + gamma333)*kyzL - gamma332*kzzL + PDstandard4th2kzz -
+ PDstandard4th3kyz;
+
+ CCTK_REAL Ro331 = -(gamma133*kxxL) - gamma233*kxyL + (gamma131 -
+ gamma333)*kxzL + gamma231*kyzL + gamma331*kzzL - PDstandard4th1kzz +
+ PDstandard4th3kxz;
+
+ CCTK_REAL Ro332 = -(gamma133*kxyL) + gamma132*kxzL - gamma233*kyyL +
+ (gamma232 - gamma333)*kyzL + gamma332*kzzL - PDstandard4th2kzz +
+ PDstandard4th3kyz;
+
+ CCTK_REAL Ro333 = 0;
+
+ CCTK_REAL Rojo11 = gInv11*R1111 + gInv12*R1112 + gInv13*R1113 +
+ gInv21*R1211 + gInv23*(-(kxyL*kxzL) + kxxL*kyzL + R1213) + gInv31*R1311
+ + gInv32*(-(kxyL*kxzL) + kxxL*kyzL + R1312) + gInv22*(kxxL*kyyL + R1212
+ - SQR(kxyL)) + gInv33*(kxxL*kzzL + R1313 - SQR(kxzL));
+
+ CCTK_REAL Rojo12 = gInv11*R1121 + gInv13*(kxyL*kxzL - kxxL*kyzL +
+ R1123) + gInv21*R1221 + gInv22*R1222 + gInv23*R1223 + gInv31*R1321 +
+ gInv32*(-(kxzL*kyyL) + kxyL*kyzL + R1322) + gInv33*(-(kxzL*kyzL) +
+ kxyL*kzzL + R1323) + gInv12*(-(kxxL*kyyL) + R1122 + SQR(kxyL));
+
+ CCTK_REAL Rojo13 = gInv11*R1131 + gInv12*(kxyL*kxzL - kxxL*kyzL +
+ R1132) + gInv21*R1231 + gInv22*(kxzL*kyyL - kxyL*kyzL + R1232) +
+ gInv23*(kxzL*kyzL - kxyL*kzzL + R1233) + gInv31*R1331 + gInv32*R1332 +
+ gInv33*R1333 + gInv13*(-(kxxL*kzzL) + R1133 + SQR(kxzL));
+
+ CCTK_REAL Rojo21 = gInv11*R2111 + gInv12*R2112 + gInv13*R2113 +
+ gInv22*R2212 + gInv23*(-(kxzL*kyyL) + kxyL*kyzL + R2213) +
+ gInv31*(kxyL*kxzL - kxxL*kyzL + R2311) + gInv32*R2312 +
+ gInv33*(-(kxzL*kyzL) + kxyL*kzzL + R2313) + gInv21*(-(kxxL*kyyL) +
+ R2211 + SQR(kxyL));
+
+ CCTK_REAL Rojo22 = gInv12*R2122 + gInv13*(kxzL*kyyL - kxyL*kyzL +
+ R2123) + gInv21*R2221 + gInv22*R2222 + gInv23*R2223 + gInv31*(kxzL*kyyL
+ - kxyL*kyzL + R2321) + gInv32*R2322 + gInv11*(kxxL*kyyL + R2121 -
+ SQR(kxyL)) + gInv33*(kyyL*kzzL + R2323 - SQR(kyzL));
+
+ CCTK_REAL Rojo23 = gInv11*(-(kxyL*kxzL) + kxxL*kyzL + R2131) +
+ gInv12*R2132 + gInv13*(kxzL*kyzL - kxyL*kzzL + R2133) +
+ gInv21*(-(kxzL*kyyL) + kxyL*kyzL + R2231) + gInv22*R2232 + gInv31*R2331
+ + gInv32*R2332 + gInv33*R2333 + gInv23*(-(kyyL*kzzL) + R2233 +
+ SQR(kyzL));
+
+ CCTK_REAL Rojo31 = gInv11*R3111 + gInv12*R3112 + gInv13*R3113 +
+ gInv21*(kxyL*kxzL - kxxL*kyzL + R3211) + gInv22*(kxzL*kyyL - kxyL*kyzL
+ + R3212) + gInv23*R3213 + gInv32*(kxzL*kyzL - kxyL*kzzL + R3312) +
+ gInv33*R3313 + gInv31*(-(kxxL*kzzL) + R3311 + SQR(kxzL));
+
+ CCTK_REAL Rojo32 = gInv11*(-(kxyL*kxzL) + kxxL*kyzL + R3121) +
+ gInv12*(-(kxzL*kyyL) + kxyL*kyzL + R3122) + gInv13*R3123 + gInv21*R3221
+ + gInv22*R3222 + gInv23*R3223 + gInv31*(kxzL*kyzL - kxyL*kzzL + R3321)
+ + gInv33*R3323 + gInv32*(-(kyyL*kzzL) + R3322 + SQR(kyzL));
+
+ CCTK_REAL Rojo33 = gInv12*(-(kxzL*kyzL) + kxyL*kzzL + R3132) +
+ gInv13*R3133 + gInv21*(-(kxzL*kyzL) + kxyL*kzzL + R3231) + gInv23*R3233
+ + gInv31*R3331 + gInv32*R3332 + gInv33*R3333 + gInv11*(kxxL*kzzL +
+ R3131 - SQR(kxzL)) + gInv22*(kyyL*kzzL + R3232 - SQR(kyzL));
+
+ CCTK_REAL Psi4rL = 2*nn*(-(n1*((imbar2*imbar3 - rmbar2*rmbar3)*Ro213 +
+ imbar1*(imbar2*(Ro112 + Ro211) + imbar3*(Ro113 + Ro311)) -
+ rmbar1*(rmbar2*(Ro112 + Ro211) + rmbar3*(Ro113 + Ro311)) +
+ (imbar2*imbar3 - rmbar2*rmbar3)*Ro312 + Ro111*(SQR(imbar1) -
+ SQR(rmbar1)) + Ro212*(SQR(imbar2) - SQR(rmbar2)) + Ro313*(SQR(imbar3) -
+ SQR(rmbar3)))) - n2*((imbar2*imbar3 - rmbar2*rmbar3)*Ro223 +
+ imbar1*(imbar2*(Ro122 + Ro221) + imbar3*(Ro123 + Ro321)) -
+ rmbar1*(rmbar2*(Ro122 + Ro221) + rmbar3*(Ro123 + Ro321)) +
+ (imbar2*imbar3 - rmbar2*rmbar3)*Ro322 + Ro121*(SQR(imbar1) -
+ SQR(rmbar1)) + Ro222*(SQR(imbar2) - SQR(rmbar2)) + Ro323*(SQR(imbar3) -
+ SQR(rmbar3))) - n3*((imbar2*imbar3 - rmbar2*rmbar3)*Ro233 +
+ imbar1*(imbar2*(Ro132 + Ro231) + imbar3*(Ro133 + Ro331)) -
+ rmbar1*(rmbar2*(Ro132 + Ro231) + rmbar3*(Ro133 + Ro331)) +
+ (imbar2*imbar3 - rmbar2*rmbar3)*Ro332 + Ro131*(SQR(imbar1) -
+ SQR(rmbar1)) + Ro232*(SQR(imbar2) - SQR(rmbar2)) + Ro333*(SQR(imbar3) -
+ SQR(rmbar3)))) - SQR(nn)*((imbar2*imbar3 - rmbar2*rmbar3)*Rojo23 +
+ imbar1*(imbar2*(Rojo12 + Rojo21) + imbar3*(Rojo13 + Rojo31)) -
+ rmbar1*(rmbar2*(Rojo12 + Rojo21) + rmbar3*(Rojo13 + Rojo31)) +
+ (imbar2*imbar3 - rmbar2*rmbar3)*Rojo32 + Rojo11*(SQR(imbar1) -
+ SQR(rmbar1)) + Rojo22*(SQR(imbar2) - SQR(rmbar2)) + Rojo33*(SQR(imbar3)
+ - SQR(rmbar3))) + n1*(-(imbar1*(imbar2*(n1*(R4p1112 + R4p1211) +
+ n2*(R4p1122 + R4p1221) + n3*(R4p1132 + R4p1231)) + imbar3*(n1*(R4p1113
+ + R4p1311) + n2*(R4p1123 + R4p1321) + n3*(R4p1133 + R4p1331)))) -
+ imbar2*imbar3*(n1*(R4p1213 + R4p1312) + n2*(R4p1223 + R4p1322) +
+ n3*(R4p1233 + R4p1332)) + n1*R4p1211*rmbar1*rmbar2 +
+ n2*R4p1221*rmbar1*rmbar2 + n3*R4p1231*rmbar1*rmbar2 +
+ n1*R4p1113*rmbar1*rmbar3 + n2*R4p1123*rmbar1*rmbar3 +
+ n3*R4p1133*rmbar1*rmbar3 + n1*R4p1311*rmbar1*rmbar3 +
+ n2*R4p1321*rmbar1*rmbar3 + n3*R4p1331*rmbar1*rmbar3 +
+ n1*R4p1213*rmbar2*rmbar3 + n2*R4p1223*rmbar2*rmbar3 +
+ n3*R4p1233*rmbar2*rmbar3 + n1*R4p1312*rmbar2*rmbar3 +
+ n2*R4p1322*rmbar2*rmbar3 + n3*R4p1332*rmbar2*rmbar3 - (n1*R4p1111 +
+ n2*R4p1121 + n3*R4p1131)*SQR(imbar1) - (n1*R4p1212 + n2*R4p1222 +
+ n3*R4p1232)*SQR(imbar2) + n1*(R4p1112*rmbar1*rmbar2 -
+ R4p1313*SQR(imbar3)) + n2*(R4p1122*rmbar1*rmbar2 - R4p1323*SQR(imbar3))
+ + n3*(R4p1132*rmbar1*rmbar2 - R4p1333*SQR(imbar3)) +
+ n1*R4p1111*SQR(rmbar1) + n2*R4p1121*SQR(rmbar1) +
+ n3*R4p1131*SQR(rmbar1) + n1*R4p1212*SQR(rmbar2) +
+ n2*R4p1222*SQR(rmbar2) + n3*R4p1232*SQR(rmbar2) +
+ n1*R4p1313*SQR(rmbar3) + n2*R4p1323*SQR(rmbar3) +
+ n3*R4p1333*SQR(rmbar3)) + n2*(-(imbar1*(imbar2*(n1*(R4p2112 + R4p2211)
+ + n2*(R4p2122 + R4p2221) + n3*(R4p2132 + R4p2231)) +
+ imbar3*(n1*(R4p2113 + R4p2311) + n2*(R4p2123 + R4p2321) + n3*(R4p2133 +
+ R4p2331)))) - imbar2*imbar3*(n1*(R4p2213 + R4p2312) + n2*(R4p2223 +
+ R4p2322) + n3*(R4p2233 + R4p2332)) + n1*R4p2211*rmbar1*rmbar2 +
+ n2*R4p2221*rmbar1*rmbar2 + n3*R4p2231*rmbar1*rmbar2 +
+ n1*R4p2113*rmbar1*rmbar3 + n2*R4p2123*rmbar1*rmbar3 +
+ n3*R4p2133*rmbar1*rmbar3 + n1*R4p2311*rmbar1*rmbar3 +
+ n2*R4p2321*rmbar1*rmbar3 + n3*R4p2331*rmbar1*rmbar3 +
+ n1*R4p2213*rmbar2*rmbar3 + n2*R4p2223*rmbar2*rmbar3 +
+ n3*R4p2233*rmbar2*rmbar3 + n1*R4p2312*rmbar2*rmbar3 +
+ n2*R4p2322*rmbar2*rmbar3 + n3*R4p2332*rmbar2*rmbar3 - (n1*R4p2111 +
+ n2*R4p2121 + n3*R4p2131)*SQR(imbar1) - (n1*R4p2212 + n2*R4p2222 +
+ n3*R4p2232)*SQR(imbar2) + n1*(R4p2112*rmbar1*rmbar2 -
+ R4p2313*SQR(imbar3)) + n2*(R4p2122*rmbar1*rmbar2 - R4p2323*SQR(imbar3))
+ + n3*(R4p2132*rmbar1*rmbar2 - R4p2333*SQR(imbar3)) +
+ n1*R4p2111*SQR(rmbar1) + n2*R4p2121*SQR(rmbar1) +
+ n3*R4p2131*SQR(rmbar1) + n1*R4p2212*SQR(rmbar2) +
+ n2*R4p2222*SQR(rmbar2) + n3*R4p2232*SQR(rmbar2) +
+ n1*R4p2313*SQR(rmbar3) + n2*R4p2323*SQR(rmbar3) +
+ n3*R4p2333*SQR(rmbar3)) + n3*(-(imbar1*(imbar2*(n1*(R4p3112 + R4p3211)
+ + n2*(R4p3122 + R4p3221) + n3*(R4p3132 + R4p3231)) +
+ imbar3*(n1*(R4p3113 + R4p3311) + n2*(R4p3123 + R4p3321) + n3*(R4p3133 +
+ R4p3331)))) - imbar2*imbar3*(n1*(R4p3213 + R4p3312) + n2*(R4p3223 +
+ R4p3322) + n3*(R4p3233 + R4p3332)) + n1*R4p3211*rmbar1*rmbar2 +
+ n2*R4p3221*rmbar1*rmbar2 + n3*R4p3231*rmbar1*rmbar2 +
+ n1*R4p3113*rmbar1*rmbar3 + n2*R4p3123*rmbar1*rmbar3 +
+ n3*R4p3133*rmbar1*rmbar3 + n1*R4p3311*rmbar1*rmbar3 +
+ n2*R4p3321*rmbar1*rmbar3 + n3*R4p3331*rmbar1*rmbar3 +
+ n1*R4p3213*rmbar2*rmbar3 + n2*R4p3223*rmbar2*rmbar3 +
+ n3*R4p3233*rmbar2*rmbar3 + n1*R4p3312*rmbar2*rmbar3 +
+ n2*R4p3322*rmbar2*rmbar3 + n3*R4p3332*rmbar2*rmbar3 - (n1*R4p3111 +
+ n2*R4p3121 + n3*R4p3131)*SQR(imbar1) - (n1*R4p3212 + n2*R4p3222 +
+ n3*R4p3232)*SQR(imbar2) + n1*(R4p3112*rmbar1*rmbar2 -
+ R4p3313*SQR(imbar3)) + n2*(R4p3122*rmbar1*rmbar2 - R4p3323*SQR(imbar3))
+ + n3*(R4p3132*rmbar1*rmbar2 - R4p3333*SQR(imbar3)) +
+ n1*R4p3111*SQR(rmbar1) + n2*R4p3121*SQR(rmbar1) +
+ n3*R4p3131*SQR(rmbar1) + n1*R4p3212*SQR(rmbar2) +
+ n2*R4p3222*SQR(rmbar2) + n3*R4p3232*SQR(rmbar2) +
+ n1*R4p3313*SQR(rmbar3) + n2*R4p3323*SQR(rmbar3) +
+ n3*R4p3333*SQR(rmbar3));
+
+ CCTK_REAL Psi4iL = -(n1*(im1*(n1*(2*R4p1111*rm1 + R4p1112*rm2 +
+ R4p1211*rm2 + R4p1113*rm3 + R4p1311*rm3) + n2*(2*R4p1121*rm1 +
+ R4p1122*rm2 + R4p1221*rm2 + R4p1123*rm3 + R4p1321*rm3) +
+ n3*(2*R4p1131*rm1 + R4p1132*rm2 + R4p1231*rm2 + R4p1133*rm3 +
+ R4p1331*rm3)) + im2*(n1*(R4p1112*rm1 + R4p1211*rm1 + 2*R4p1212*rm2 +
+ R4p1213*rm3 + R4p1312*rm3) + n2*(R4p1122*rm1 + R4p1221*rm1 +
+ 2*R4p1222*rm2 + R4p1223*rm3 + R4p1322*rm3) + n3*(R4p1132*rm1 +
+ R4p1231*rm1 + 2*R4p1232*rm2 + R4p1233*rm3 + R4p1332*rm3)) +
+ im3*(n1*(R4p1113*rm1 + R4p1311*rm1 + R4p1213*rm2 + R4p1312*rm2 +
+ 2*R4p1313*rm3) + n2*(R4p1123*rm1 + R4p1321*rm1 + R4p1223*rm2 +
+ R4p1322*rm2 + 2*R4p1323*rm3) + n3*(R4p1133*rm1 + R4p1331*rm1 +
+ R4p1233*rm2 + R4p1332*rm2 + 2*R4p1333*rm3)))) -
+ n2*(im1*(n1*(2*R4p2111*rm1 + R4p2112*rm2 + R4p2211*rm2 + R4p2113*rm3 +
+ R4p2311*rm3) + n2*(2*R4p2121*rm1 + R4p2122*rm2 + R4p2221*rm2 +
+ R4p2123*rm3 + R4p2321*rm3) + n3*(2*R4p2131*rm1 + R4p2132*rm2 +
+ R4p2231*rm2 + R4p2133*rm3 + R4p2331*rm3)) + im2*(n1*(R4p2112*rm1 +
+ R4p2211*rm1 + 2*R4p2212*rm2 + R4p2213*rm3 + R4p2312*rm3) +
+ n2*(R4p2122*rm1 + R4p2221*rm1 + 2*R4p2222*rm2 + R4p2223*rm3 +
+ R4p2322*rm3) + n3*(R4p2132*rm1 + R4p2231*rm1 + 2*R4p2232*rm2 +
+ R4p2233*rm3 + R4p2332*rm3)) + im3*(n1*(R4p2113*rm1 + R4p2311*rm1 +
+ R4p2213*rm2 + R4p2312*rm2 + 2*R4p2313*rm3) + n2*(R4p2123*rm1 +
+ R4p2321*rm1 + R4p2223*rm2 + R4p2322*rm2 + 2*R4p2323*rm3) +
+ n3*(R4p2133*rm1 + R4p2331*rm1 + R4p2233*rm2 + R4p2332*rm2 +
+ 2*R4p2333*rm3))) - n3*(im1*(n1*(2*R4p3111*rm1 + R4p3112*rm2 +
+ R4p3211*rm2 + R4p3113*rm3 + R4p3311*rm3) + n2*(2*R4p3121*rm1 +
+ R4p3122*rm2 + R4p3221*rm2 + R4p3123*rm3 + R4p3321*rm3) +
+ n3*(2*R4p3131*rm1 + R4p3132*rm2 + R4p3231*rm2 + R4p3133*rm3 +
+ R4p3331*rm3)) + im2*(n1*(R4p3112*rm1 + R4p3211*rm1 + 2*R4p3212*rm2 +
+ R4p3213*rm3 + R4p3312*rm3) + n2*(R4p3122*rm1 + R4p3221*rm1 +
+ 2*R4p3222*rm2 + R4p3223*rm3 + R4p3322*rm3) + n3*(R4p3132*rm1 +
+ R4p3231*rm1 + 2*R4p3232*rm2 + R4p3233*rm3 + R4p3332*rm3)) +
+ im3*(n1*(R4p3113*rm1 + R4p3311*rm1 + R4p3213*rm2 + R4p3312*rm2 +
+ 2*R4p3313*rm3) + n2*(R4p3123*rm1 + R4p3321*rm1 + R4p3223*rm2 +
+ R4p3322*rm2 + 2*R4p3323*rm3) + n3*(R4p3133*rm1 + R4p3331*rm1 +
+ R4p3233*rm2 + R4p3332*rm2 + 2*R4p3333*rm3))) -
+ 2*nn*(im1*(n1*(2*rm1*Ro111 + rm2*(Ro112 + Ro211) + rm3*(Ro113 + Ro311))
+ + n2*(2*rm1*Ro121 + rm2*(Ro122 + Ro221) + rm3*(Ro123 + Ro321)) +
+ n3*(2*rm1*Ro131 + rm2*(Ro132 + Ro231) + rm3*(Ro133 + Ro331))) +
+ im2*(n1*(rm1*(Ro112 + Ro211) + 2*rm2*Ro212 + rm3*(Ro213 + Ro312)) +
+ n2*(rm1*(Ro122 + Ro221) + 2*rm2*Ro222 + rm3*(Ro223 + Ro322)) +
+ n3*(rm1*(Ro132 + Ro231) + 2*rm2*Ro232 + rm3*(Ro233 + Ro332))) +
+ im3*(n1*(rm1*(Ro113 + Ro311) + rm2*(Ro213 + Ro312) + 2*rm3*Ro313) +
+ n2*(rm1*(Ro123 + Ro321) + rm2*(Ro223 + Ro322) + 2*rm3*Ro323) +
+ n3*(rm1*(Ro133 + Ro331) + rm2*(Ro233 + Ro332) + 2*rm3*Ro333))) -
+ (im1*(2*rm1*Rojo11 + rm2*(Rojo12 + Rojo21) + rm3*(Rojo13 + Rojo31)) +
+ im2*(rm1*(Rojo12 + Rojo21) + 2*rm2*Rojo22 + rm3*(Rojo23 + Rojo32)) +
+ im3*(rm1*(Rojo13 + Rojo31) + rm2*(Rojo23 + Rojo32) +
+ 2*rm3*Rojo33))*SQR(nn);
+
+
+ /* Copy local copies back to grid functions */
+ Psi4i[index] = Psi4iL;
+ Psi4r[index] = Psi4rL;
+ }
+ }
+ }
+}
+
+extern "C" void psis_calc_4th(CCTK_ARGUMENTS)
+{
+ DECLARE_CCTK_ARGUMENTS;
+ DECLARE_CCTK_PARAMETERS;
+
+ GenericFD_LoopOverInterior(cctkGH, &psis_calc_4th_Body);
+}