diff options
Diffstat (limited to 'src/macro/DETG_guts.h')
-rw-r--r-- | src/macro/DETG_guts.h | 57 |
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 |