aboutsummaryrefslogtreecommitdiff
path: root/src/macro/DETG_guts.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/macro/DETG_guts.h')
-rw-r--r--src/macro/DETG_guts.h57
1 files changed, 57 insertions, 0 deletions
diff --git a/src/macro/DETG_guts.h b/src/macro/DETG_guts.h
new file mode 100644
index 0000000..a9025ec
--- /dev/null
+++ b/src/macro/DETG_guts.h
@@ -0,0 +1,57 @@
+/*
+DETG_guts.h
+
+Macro to calculate the determinants of the conformal and
+physical 3-metric
+
+Gabrielle Allen, 5th November 1998
+
+*/
+
+#ifndef DETG_GUTS
+#define DETG_GUTS
+
+#ifdef FCODE
+
+ DETG_PSI4 = DETG_PSI**4
+
+ DETG_TEMPXX = DETG_GYY*DETG_GZZ - DETG_GYZ*DETG_GYZ
+ DETG_TEMPXY = DETG_GXZ*DETG_GYZ - DETG_GXY*DETG_GZZ
+ DETG_TEMPXZ = -DETG_GXZ*DETG_GYY + DETG_GXY*DETG_GYZ
+ DETG_TEMPYY = DETG_GXX*DETG_GZZ - DETG_GXZ*DETG_GXZ
+ DETG_TEMPYZ = DETG_GXY*DETG_GXZ - DETG_GXX*DETG_GYZ
+ DETG_TEMPZZ = DETG_GXX*DETG_GYY - DETG_GXY*DETG_GXY
+
+/* This is the conformal determinant */
+ DETG_DETCG = (DETG_TEMPXX*DETG_GXX +
+ & DETG_TEMPXY*DETG_GXY + DETG_TEMPXZ*DETG_GXZ)
+
+/* This is the physical determinat */
+ DETG_DETG = DETG_PSI4**3*DETG_DETCG
+
+#endif
+
+#ifdef CCODE
+
+#define Cal(x,y,z) ((x)?(y):(z))
+#define Power(x,y) (pow((double) (x), (double) (y)))
+
+DET_PSI4 = ((conformal_state != CONFORMAL_METRIC)?1:Power(DETG_PSI,4));
+
+DETG_TEMPXX = DETG_GYY*DETG_GZZ - DETG_GYZ*DETG_GYZ;
+DETG_TEMPXY = DETG_GXZ*DETG_GYZ - DETG_GXY*DETG_GZZ;
+DETG_TEMPXZ = -DETG_GXZ*DETG_GYY + DETG_GXY*DETG_GYZ;
+DETG_TEMPYY = DETG_GXX*DETG_GZZ - DETG_GXZ*DETG_GXZ;
+DETG_TEMPYZ = DETG_GXY*DETG_GXZ - DETG_GXX*DETG_GYZ;
+DETG_TEMPZZ = DETG_GXX*DETG_GYY - DETG_GXY*DETG_GXY;
+
+/* This is the conformal determinant */
+DETG_DETCG = (DETG_TEMPXX*DETG_GXX +
+ DETG_TEMPXY*DETG_GXY + DETG_TEMPXZ*DETG_GXZ);
+
+/* This is the physical determinat */
+DETG_DETG = DET_PSI4*DET_PSI4*DET_PSI4*DETG_DETCG
+
+#endif
+
+#endif