aboutsummaryrefslogtreecommitdiff
path: root/src/macro/DXXDG_guts.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/macro/DXXDG_guts.h')
-rw-r--r--src/macro/DXXDG_guts.h50
1 files changed, 36 insertions, 14 deletions
diff --git a/src/macro/DXXDG_guts.h b/src/macro/DXXDG_guts.h
index 997a62b..89dcedf 100644
--- a/src/macro/DXXDG_guts.h
+++ b/src/macro/DXXDG_guts.h
@@ -20,33 +20,55 @@
#ifdef FCODE
- DXXDG_OODX2 = 1D0/(dx*dx)
+#include "ADM_Derivative.h"
/* Factor involving 2nd derivative of conformal factor */
IF (conformal_state .eq. 0) THEN
DXXDG_FAC = 0
ELSE
- DXXDG_FAC = DXDG_PSI4*(4*DXXDG_DXXDPSI_O_PSI + 12*DXDG_DXDPSI_O_PSI*DXDG_DXDPSI_O_PSI)
+ DXXDG_FAC = DXDG_PSI4*(4*DXXDG_DXXDPSI_O_PSI \
+ + 12*DXDG_DXDPSI_O_PSI*DXDG_DXDPSI_O_PSI)
ENDIF
/* Now calculate the second derivatives */
- DXXDG_DXXDGXX = 2*DXDCG_DXDCGXX*DXDG_FAC+DXXDG_FAC*DXDG_GXX+DXDG_PSI4 \
- *DXXDG_OODX2*(DXDCG_GXX_IP-2*DXDG_GXX+DXDCG_GXX_IM)
- DXXDG_DXXDGXY = 2*DXDCG_DXDCGXY*DXDG_FAC+DXXDG_FAC*DXDG_GXY+DXDG_PSI4 \
- *DXXDG_OODX2*(DXDCG_GXY_IP-2*DXDG_GXY+DXDCG_GXY_IM)
+ if (spatial_order.eq.2) then
+ DXXDG_DXXDGXX = 2*DXDCG_DXDCGXX*DXDG_FAC + DXXDG_FAC*DXDG_GXX \
+ + DXDG_PSI4*ADM_DXX_2(gxx,i,j,k)
- DXXDG_DXXDGXZ = 2*DXDCG_DXDCGXZ*DXDG_FAC+DXXDG_FAC*DXDG_GXZ+DXDG_PSI4 \
- *DXXDG_OODX2*(DXDCG_GXZ_IP-2*DXDG_GXZ+DXDCG_GXZ_IM)
+ DXXDG_DXXDGXY = 2*DXDCG_DXDCGXY*DXDG_FAC + DXXDG_FAC*DXDG_GXY \
+ + DXDG_PSI4*ADM_DXX_2(gxy,i,j,k)
- DXXDG_DXXDGYY = 2*DXDCG_DXDCGYY*DXDG_FAC+DXXDG_FAC*DXDG_GYY+DXDG_PSI4 \
- *DXXDG_OODX2*(DXDCG_GYY_IP-2*DXDG_GYY+DXDCG_GYY_IM)
+ DXXDG_DXXDGXZ = 2*DXDCG_DXDCGXZ*DXDG_FAC + DXXDG_FAC*DXDG_GXZ \
+ + DXDG_PSI4*ADM_DXX_2(gxz,i,j,k)
- DXXDG_DXXDGYZ = 2*DXDCG_DXDCGYZ*DXDG_FAC+DXXDG_FAC*DXDG_GYZ+DXDG_PSI4 \
- *DXXDG_OODX2*(DXDCG_GYZ_IP-2*DXDG_GYZ+DXDCG_GYZ_IM)
+ DXXDG_DXXDGYY = 2*DXDCG_DXDCGYY*DXDG_FAC + DXXDG_FAC*DXDG_GYY \
+ + DXDG_PSI4*ADM_DXX_2(gyy,i,j,k)
- DXXDG_DXXDGZZ = 2*DXDCG_DXDCGZZ*DXDG_FAC+DXXDG_FAC*DXDG_GZZ+DXDG_PSI4 \
- *DXXDG_OODX2*(DXDCG_GZZ_IP-2*DXDG_GZZ+DXDCG_GZZ_IM)
+ DXXDG_DXXDGYZ = 2*DXDCG_DXDCGYZ*DXDG_FAC + DXXDG_FAC*DXDG_GYZ \
+ + DXDG_PSI4*ADM_DXX_2(gyz,i,j,k)
+
+ DXXDG_DXXDGZZ = 2*DXDCG_DXDCGZZ*DXDG_FAC + DXXDG_FAC*DXDG_GZZ \
+ + DXDG_PSI4*ADM_DXX_2(gzz,i,j,k)
+ else
+ DXXDG_DXXDGXX = 2*DXDCG_DXDCGXX*DXDG_FAC + DXXDG_FAC*DXDG_GXX \
+ + DXDG_PSI4*ADM_DXX_4(gxx,i,j,k)
+
+ DXXDG_DXXDGXY = 2*DXDCG_DXDCGXY*DXDG_FAC + DXXDG_FAC*DXDG_GXY \
+ + DXDG_PSI4*ADM_DXX_4(gxy,i,j,k)
+
+ DXXDG_DXXDGXZ = 2*DXDCG_DXDCGXZ*DXDG_FAC + DXXDG_FAC*DXDG_GXZ \
+ + DXDG_PSI4*ADM_DXX_4(gxz,i,j,k)
+
+ DXXDG_DXXDGYY = 2*DXDCG_DXDCGYY*DXDG_FAC + DXXDG_FAC*DXDG_GYY \
+ + DXDG_PSI4*ADM_DXX_4(gyy,i,j,k)
+
+ DXXDG_DXXDGYZ = 2*DXDCG_DXDCGYZ*DXDG_FAC + DXXDG_FAC*DXDG_GYZ \
+ + DXDG_PSI4*ADM_DXX_4(gyz,i,j,k)
+
+ DXXDG_DXXDGZZ = 2*DXDCG_DXDCGZZ*DXDG_FAC + DXXDG_FAC*DXDG_GZZ \
+ + DXDG_PSI4*ADM_DXX_4(gzz,i,j,k)
+ end if
#endif