diff options
author | Ian Hinder <ian.hinder@aei.mpg.de> | 2011-06-13 11:38:32 +0200 |
---|---|---|
committer | Ian Hinder <ian.hinder@aei.mpg.de> | 2011-06-13 11:38:32 +0200 |
commit | eaba1d7ded1a44744ce01e00572322954d66e441 (patch) | |
tree | 5d87e36dc3fe8f2b928632ae7325166de239d711 | |
parent | 61220c062e507837841bb3e2490efd3bb6f4864f (diff) |
Regenerate ML_ADMQuantities and ML_WaveToyFO
-rw-r--r-- | ML_ADMQuantities/src/ML_ADMQuantities.cc | 149 | ||||
-rw-r--r-- | ML_ADMQuantities_MP/src/ML_ADMQuantities_MP.cc | 308 | ||||
-rw-r--r-- | ML_ADMQuantities_O2/src/ML_ADMQuantities_O2.cc | 149 | ||||
-rw-r--r-- | ML_WaveToyFO/interface.ccl | 3 | ||||
-rw-r--r-- | ML_WaveToyFO/src/Differencing.h | 156 | ||||
-rw-r--r-- | ML_WaveToyFO/src/WTFO_Gaussian.cc | 9 | ||||
-rw-r--r-- | ML_WaveToyFO/src/WTFO_RHS.cc | 10 | ||||
-rw-r--r-- | ML_WaveToyFO/src/WTFO_constraints.cc | 10 |
8 files changed, 492 insertions, 302 deletions
diff --git a/ML_ADMQuantities/src/ML_ADMQuantities.cc b/ML_ADMQuantities/src/ML_ADMQuantities.cc index 597cd72..7f3aa62 100644 --- a/ML_ADMQuantities/src/ML_ADMQuantities.cc +++ b/ML_ADMQuantities/src/ML_ADMQuantities.cc @@ -484,15 +484,16 @@ static void ML_ADMQuantities_Body(cGH const * restrict const cctkGH, int const d CCTK_REAL Xtn3 = Gt311*gtu11 + Gt322*gtu22 + 2*(Gt312*gtu21 + Gt313*gtu31 + Gt323*gtu32) + Gt333*gtu33; - CCTK_REAL Rt11 = 3*(Gt111*Gtlu111 + Gt112*Gtlu112 + Gt113*Gtlu113) + - 2*(Gt211*Gtlu121 + Gt212*Gtlu122 + Gt213*Gtlu123 + Gt311*Gtlu131 + - Gt312*Gtlu132 + Gt313*Gtlu133) + Gt211*Gtlu211 + Gt212*Gtlu212 + + CCTK_REAL Rt11 = 0.5*(6*(Gt111*Gtlu111 + Gt112*Gtlu112 + + Gt113*Gtlu113) + 4*(Gt211*Gtlu121 + Gt212*Gtlu122 + Gt213*Gtlu123 + + Gt311*Gtlu131 + Gt312*Gtlu132 + Gt313*Gtlu133) - + gtu11*PDstandardNth11gt11 - 2*gtu21*PDstandardNth12gt11 - + 2*gtu31*PDstandardNth13gt11 + 2*(Gt211*Gtlu211 + Gt212*Gtlu212 + Gt213*Gtlu213 + Gt311*Gtlu311 + Gt312*Gtlu312 + Gt313*Gtlu313 + - gt11L*PDstandardNth1Xt1 + gt12L*PDstandardNth1Xt2 + - gt13L*PDstandardNth1Xt3 + 0.5*(-(gtu11*PDstandardNth11gt11) - - 2*gtu21*PDstandardNth12gt11 - 2*gtu31*PDstandardNth13gt11 - - gtu22*PDstandardNth22gt11 - 2*gtu32*PDstandardNth23gt11 - - gtu33*PDstandardNth33gt11) + Gtl111*Xtn1 + Gtl112*Xtn2 + Gtl113*Xtn3; + gt11L*PDstandardNth1Xt1) + 2*gt12L*PDstandardNth1Xt2 + + 2*gt13L*PDstandardNth1Xt3 - gtu22*PDstandardNth22gt11 - + 2*gtu32*PDstandardNth23gt11 - gtu33*PDstandardNth33gt11 + 2*Gtl111*Xtn1 + + 2*Gtl112*Xtn2 + 2*Gtl113*Xtn3); CCTK_REAL Rt12 = 0.5*(4*(Gt211*Gtlu221 + Gt212*Gtlu222 + Gt213*Gtlu223) + 2*(Gt112*Gtlu111 + Gt122*Gtlu112 + Gt123*Gtlu113 + @@ -524,15 +525,16 @@ static void ML_ADMQuantities_Body(cGH const * restrict const cctkGH, int const d gt13L*PDstandardNth3Xt3 + Gtl113*Xtn1 + Gtl311*Xtn1 + Gtl123*Xtn2 + Gtl312*Xtn2 + Gtl133*Xtn3 + Gtl313*Xtn3); - CCTK_REAL Rt22 = Gt112*(Gtlu121 + 2*Gtlu211) + Gt122*(Gtlu122 + - 2*Gtlu212) + Gt123*(Gtlu123 + 2*Gtlu213) + 3*(Gt212*Gtlu221 + - Gt222*Gtlu222 + Gt223*Gtlu223) + 2*(Gt312*Gtlu231 + Gt322*Gtlu232 + - Gt323*Gtlu233) + Gt312*Gtlu321 + Gt322*Gtlu322 + Gt323*Gtlu323 + - gt12L*PDstandardNth2Xt1 + gt22L*PDstandardNth2Xt2 + - gt23L*PDstandardNth2Xt3 + 0.5*(-(gtu11*PDstandardNth11gt22) - - 2*gtu21*PDstandardNth12gt22 - 2*gtu31*PDstandardNth13gt22 - - gtu22*PDstandardNth22gt22 - 2*gtu32*PDstandardNth23gt22 - - gtu33*PDstandardNth33gt22) + Gtl212*Xtn1 + Gtl222*Xtn2 + Gtl223*Xtn3; + CCTK_REAL Rt22 = 0.5*(6*(Gt212*Gtlu221 + Gt222*Gtlu222 + + Gt223*Gtlu223) + 4*(Gt112*Gtlu211 + Gt122*Gtlu212 + Gt123*Gtlu213 + + Gt312*Gtlu231 + Gt322*Gtlu232 + Gt323*Gtlu233) - + gtu11*PDstandardNth11gt22 - 2*gtu21*PDstandardNth12gt22 - + 2*gtu31*PDstandardNth13gt22 - gtu22*PDstandardNth22gt22 - + 2*gtu32*PDstandardNth23gt22 + 2*(Gt112*Gtlu121 + Gt122*Gtlu122 + + Gt123*Gtlu123 + Gt312*Gtlu321 + Gt322*Gtlu322 + Gt323*Gtlu323 + + gt12L*PDstandardNth2Xt1) + 2*gt22L*PDstandardNth2Xt2 + + 2*gt23L*PDstandardNth2Xt3 - gtu33*PDstandardNth33gt22 + 2*Gtl212*Xtn1 + + 2*Gtl222*Xtn2 + 2*Gtl223*Xtn3); CCTK_REAL Rt23 = 0.5*(2*(Gt112*Gtlu131 + Gt122*Gtlu132 + Gt123*Gtlu133 + Gt113*Gtlu211 + Gt123*Gtlu212 + Gt133*Gtlu213 + Gt213*Gtlu221 + @@ -549,21 +551,21 @@ static void ML_ADMQuantities_Body(cGH const * restrict const cctkGH, int const d gt23L*PDstandardNth3Xt3 + Gtl213*Xtn1 + Gtl312*Xtn1 + Gtl223*Xtn2 + Gtl322*Xtn2 + Gtl233*Xtn3 + Gtl323*Xtn3); - CCTK_REAL Rt33 = Gt113*(Gtlu131 + 2*Gtlu311) + Gt123*(Gtlu132 + - 2*Gtlu312) + Gt133*(Gtlu133 + 2*Gtlu313) + Gt213*(Gtlu231 + 2*Gtlu321) - + Gt223*(Gtlu232 + 2*Gtlu322) + Gt233*(Gtlu233 + 2*Gtlu323) + - 3*(Gt313*Gtlu331 + Gt323*Gtlu332 + Gt333*Gtlu333) + - 0.5*(-(gtu11*PDstandardNth11gt33) - 2*gtu21*PDstandardNth12gt33 - - 2*gtu31*PDstandardNth13gt33 - gtu22*PDstandardNth22gt33 - - 2*gtu32*PDstandardNth23gt33 - gtu33*PDstandardNth33gt33) + - gt13L*PDstandardNth3Xt1 + gt23L*PDstandardNth3Xt2 + - gt33L*PDstandardNth3Xt3 + Gtl313*Xtn1 + Gtl323*Xtn2 + Gtl333*Xtn3; + CCTK_REAL Rt33 = 0.5*(4*(Gt113*Gtlu311 + Gt123*Gtlu312 + Gt133*Gtlu313 + + Gt213*Gtlu321 + Gt223*Gtlu322 + Gt233*Gtlu323) + 6*(Gt313*Gtlu331 + + Gt323*Gtlu332 + Gt333*Gtlu333) - gtu11*PDstandardNth11gt33 - + 2*gtu21*PDstandardNth12gt33 - 2*gtu31*PDstandardNth13gt33 - + gtu22*PDstandardNth22gt33 - 2*gtu32*PDstandardNth23gt33 - + gtu33*PDstandardNth33gt33 + 2*(Gt113*Gtlu131 + Gt123*Gtlu132 + + Gt133*Gtlu133 + Gt213*Gtlu231 + Gt223*Gtlu232 + Gt233*Gtlu233 + + gt13L*PDstandardNth3Xt1) + 2*gt23L*PDstandardNth3Xt2 + + 2*gt33L*PDstandardNth3Xt3 + 2*Gtl313*Xtn1 + 2*Gtl323*Xtn2 + + 2*Gtl333*Xtn3); CCTK_REAL trRt = gtu11*Rt11 + gtu22*Rt22 + 2*(gtu21*Rt12 + gtu31*Rt13 + gtu32*Rt23) + gtu33*Rt33; - CCTK_REAL ephi = - IfThen(ToReal(conformalMethod),INV(sqrt(phiL)),exp(phiL)); + CCTK_REAL ephi = IfThen(conformalMethod,INV(sqrt(phiL)),exp(phiL)); CCTK_REAL Atm11 = At11L*gtu11 + At12L*gtu21 + At13L*gtu31; @@ -598,60 +600,67 @@ static void ML_ADMQuantities_Body(cGH const * restrict const cctkGH, int const d beta3L*eTzzL)*INV(alphaL); CCTK_REAL MadmL = - 0.01989436788648691697111047042156429525431*(-((Gt111*Gtlu111 + - Gt112*Gtlu112 + Gt113*Gtlu113 + Gt211*Gtlu121 + Gt212*Gtlu122 + - Gt213*Gtlu123 + Gt311*Gtlu131 + Gt312*Gtlu132 + Gt313*Gtlu133)*gtu11) + + 0.01989436788648691697111047042156429525431*((-(Gt111*Gtlu111) - + Gt112*Gtlu112 - Gt113*Gtlu113 - Gt211*Gtlu121 - Gt212*Gtlu122 - + Gt213*Gtlu123 - Gt311*Gtlu131 - Gt312*Gtlu132 - Gt313*Gtlu133)*gtu11 + (-(Gt122*Gtlu112) - Gt123*Gtlu113 - Gt222*Gtlu122 - Gt223*Gtlu123 - Gt322*Gtlu132 - Gt323*Gtlu133 - Gt111*Gtlu211 + Gt112*(-Gtlu111 - Gtlu212) - Gt113*Gtlu213 - Gt211*Gtlu221 + Gt212*(-Gtlu121 - Gtlu222) - Gt213*Gtlu223 - Gt311*Gtlu231 + Gt312*(-Gtlu131 - Gtlu232) - - Gt313*Gtlu233)*gtu21 - (Gt112*Gtlu211 + Gt122*Gtlu212 + Gt123*Gtlu213 + - Gt212*Gtlu221 + Gt222*Gtlu222 + Gt223*Gtlu223 + Gt312*Gtlu231 + - Gt322*Gtlu232 + Gt323*Gtlu233)*gtu22 + (-(Gt123*Gtlu112) - - Gt133*Gtlu113 - Gt223*Gtlu122 - Gt233*Gtlu123 - Gt323*Gtlu132 - - Gt333*Gtlu133 - Gt111*Gtlu311 - Gt112*Gtlu312 + Gt113*(-Gtlu111 - - Gtlu313) - Gt211*Gtlu321 - Gt212*Gtlu322 + Gt213*(-Gtlu121 - Gtlu323) - - Gt311*Gtlu331 - Gt312*Gtlu332 + Gt313*(-Gtlu131 - Gtlu333))*gtu31 + - (-(Gt113*Gtlu211) - Gt133*Gtlu213 - Gt213*Gtlu221 - Gt233*Gtlu223 - - Gt313*Gtlu231 - Gt333*Gtlu233 - Gt112*Gtlu311 - Gt122*Gtlu312 + - Gt123*(-Gtlu212 - Gtlu313) - Gt212*Gtlu321 - Gt222*Gtlu322 + - Gt223*(-Gtlu222 - Gtlu323) - Gt312*Gtlu331 - Gt322*Gtlu332 + - Gt323*(-Gtlu232 - Gtlu333))*gtu32 - (Gt113*Gtlu311 + Gt123*Gtlu312 + - Gt133*Gtlu313 + Gt213*Gtlu321 + Gt223*Gtlu322 + Gt233*Gtlu323 + - Gt313*Gtlu331 + Gt323*Gtlu332 + Gt333*Gtlu333)*gtu33 + trRt - ephi*trRt - + pow(ephi,5)*(2*Atm12*Atm21 + 2.*Atm13*Atm31 + 2.*Atm23*Atm32 + + Gt313*Gtlu233)*gtu21 + (-(Gt112*Gtlu211) - Gt122*Gtlu212 - + Gt123*Gtlu213 - Gt212*Gtlu221 - Gt222*Gtlu222 - Gt223*Gtlu223 - + Gt312*Gtlu231 - Gt322*Gtlu232 - Gt323*Gtlu233)*gtu22 + + (-(Gt123*Gtlu112) - Gt133*Gtlu113 - Gt223*Gtlu122 - Gt233*Gtlu123 - + Gt323*Gtlu132 - Gt333*Gtlu133 - Gt111*Gtlu311 - Gt112*Gtlu312 + + Gt113*(-Gtlu111 - Gtlu313) - Gt211*Gtlu321 - Gt212*Gtlu322 + + Gt213*(-Gtlu121 - Gtlu323) - Gt311*Gtlu331 - Gt312*Gtlu332 + + Gt313*(-Gtlu131 - Gtlu333))*gtu31 + (-(Gt113*Gtlu211) - Gt133*Gtlu213 - + Gt213*Gtlu221 - Gt233*Gtlu223 - Gt313*Gtlu231 - Gt333*Gtlu233 - + Gt112*Gtlu311 - Gt122*Gtlu312 + Gt123*(-Gtlu212 - Gtlu313) - + Gt212*Gtlu321 - Gt222*Gtlu322 + Gt223*(-Gtlu222 - Gtlu323) - + Gt312*Gtlu331 - Gt322*Gtlu332 + Gt323*(-Gtlu232 - Gtlu333))*gtu32 + + (-(Gt113*Gtlu311) - Gt123*Gtlu312 - Gt133*Gtlu313 - Gt213*Gtlu321 - + Gt223*Gtlu322 - Gt233*Gtlu323 - Gt313*Gtlu331 - Gt323*Gtlu332 - + Gt333*Gtlu333)*gtu33 + trRt - ephi*trRt + pow(ephi,5)*(2*Atm12*Atm21 + + 2.*Atm13*Atm31 + 2.*Atm23*Atm32 + 50.26548245743669181540229413247204614715*rho + SQR(Atm11) + SQR(Atm22) + SQR(Atm33) - 0.6666666666666666666666666666666666666667*SQR(trKL))); CCTK_REAL Jadm1L = - 0.01989436788648691697111047042156429525431*(2*Atm23 - 2*Atm32 + - (-(At11L*dgtu113) - 2*At12L*dgtu213 - At22L*dgtu223 - 2*At13L*dgtu313 - - 2*At23L*dgtu323 - At33L*dgtu333 + - 1.33333333333333333333333333333*PDstandardNth3trK + - 50.26548245743669181540229413247204614715*S3)*yL + (At11L*dgtu112 + - At22L*dgtu222 + 2*(At12L*dgtu212 + At13L*dgtu312 + At23L*dgtu322) + - At33L*dgtu332 - 1.33333333333333333333333333333*PDstandardNth2trK - - 50.26548245743669181540229413247204614715*S2)*zL)*pow(ephi,6); + ((-0.01989436788648691697111047042156429525431*(At11L*dgtu113 + + At22L*dgtu223 + At33L*dgtu333) + + 0.02652582384864922262814729389541906033908*PDstandardNth3trK + + 1.*S3)*yL - 0.03978873577297383394222094084312859050861*(Atm32 + + (At12L*dgtu213 + At13L*dgtu313 + At23L*dgtu323)*yL) + + (0.01989436788648691697111047042156429525431*(At11L*dgtu112 + + At22L*dgtu222 + At33L*dgtu332) - + 0.02652582384864922262814729389541906033908*PDstandardNth2trK - + 1.*S2)*zL + 0.03978873577297383394222094084312859050861*(Atm23 + + (At12L*dgtu212 + At13L*dgtu312 + At23L*dgtu322)*zL))*pow(ephi,6); CCTK_REAL Jadm2L = - 0.01989436788648691697111047042156429525431*(-2*Atm13 + 2*Atm31 + - (At11L*dgtu113 + At22L*dgtu223 + 2*(At12L*dgtu213 + At13L*dgtu313 + - At23L*dgtu323) + At33L*dgtu333 - - 1.33333333333333333333333333333*PDstandardNth3trK - - 50.26548245743669181540229413247204614715*S3)*xL + (-(At11L*dgtu111) - - 2*At12L*dgtu211 - At22L*dgtu221 - 2*At13L*dgtu311 - 2*At23L*dgtu321 - - At33L*dgtu331 + 1.33333333333333333333333333333*PDstandardNth1trK + - 50.26548245743669181540229413247204614715*S1)*zL)*pow(ephi,6); + ((0.01989436788648691697111047042156429525431*(At11L*dgtu113 + + At22L*dgtu223 + At33L*dgtu333) - + 0.02652582384864922262814729389541906033908*PDstandardNth3trK - + 1.*S3)*xL + 0.03978873577297383394222094084312859050861*(Atm31 + + (At12L*dgtu213 + At13L*dgtu313 + At23L*dgtu323)*xL) + + (-0.01989436788648691697111047042156429525431*(At11L*dgtu111 + + At22L*dgtu221 + At33L*dgtu331) + + 0.02652582384864922262814729389541906033908*PDstandardNth1trK + + 1.*S1)*zL - 0.03978873577297383394222094084312859050861*(Atm13 + + (At12L*dgtu211 + At13L*dgtu311 + At23L*dgtu321)*zL))*pow(ephi,6); CCTK_REAL Jadm3L = - 0.01989436788648691697111047042156429525431*(2*Atm12 - 2*Atm21 + - (-(At11L*dgtu112) - 2*At12L*dgtu212 - At22L*dgtu222 - 2*At13L*dgtu312 - - 2*At23L*dgtu322 - At33L*dgtu332 + - 1.33333333333333333333333333333*PDstandardNth2trK + - 50.26548245743669181540229413247204614715*S2)*xL + (At11L*dgtu111 + - At22L*dgtu221 + 2*(At12L*dgtu211 + At13L*dgtu311 + At23L*dgtu321) + - At33L*dgtu331 - 1.33333333333333333333333333333*PDstandardNth1trK - - 50.26548245743669181540229413247204614715*S1)*yL)*pow(ephi,6); + ((-0.01989436788648691697111047042156429525431*(At11L*dgtu112 + + At22L*dgtu222 + At33L*dgtu332) + + 0.02652582384864922262814729389541906033908*PDstandardNth2trK + + 1.*S2)*xL - 0.03978873577297383394222094084312859050861*(Atm21 + + (At12L*dgtu212 + At13L*dgtu312 + At23L*dgtu322)*xL) + + (0.01989436788648691697111047042156429525431*(At11L*dgtu111 + + At22L*dgtu221 + At33L*dgtu331) - + 0.02652582384864922262814729389541906033908*PDstandardNth1trK - + 1.*S1)*yL + 0.03978873577297383394222094084312859050861*(Atm12 + + (At12L*dgtu211 + At13L*dgtu311 + At23L*dgtu321)*yL))*pow(ephi,6); /* Copy local copies back to grid functions */ Jadm1[index] = Jadm1L; diff --git a/ML_ADMQuantities_MP/src/ML_ADMQuantities_MP.cc b/ML_ADMQuantities_MP/src/ML_ADMQuantities_MP.cc index 9c770d3..b8e41cb 100644 --- a/ML_ADMQuantities_MP/src/ML_ADMQuantities_MP.cc +++ b/ML_ADMQuantities_MP/src/ML_ADMQuantities_MP.cc @@ -718,49 +718,50 @@ static void ML_ADMQuantities_MP_Body(cGH const * restrict const cctkGH, int cons Gt213*Gtlu213 + Gt311*Gtlu311 + Gt312*Gtlu312 + Gt313*Gtlu313 + J11L*(gt11L*PDstandardNth1Xt1 + gt12L*PDstandardNth1Xt2 + gt13L*PDstandardNth1Xt3) + J21L*(gt11L*PDstandardNth2Xt1 + - gt12L*PDstandardNth2Xt2 + gt13L*PDstandardNth2Xt3) + - J31L*(gt11L*PDstandardNth3Xt1 + gt12L*PDstandardNth3Xt2 + - gt13L*PDstandardNth3Xt3) + Gtl111*Xtn1 + Gtl112*Xtn2 + Gtl113*Xtn3 + - 0.5*(-2*(gtu21*(J11L*J12L*PDstandardNth11gt11 + - J12L*J21L*PDstandardNth12gt11 + J11L*J22L*PDstandardNth12gt11 + - J12L*J31L*PDstandardNth13gt11 + J11L*J32L*PDstandardNth13gt11 + - dJ112L*PDstandardNth1gt11 + J21L*J22L*PDstandardNth22gt11 + - J22L*J31L*PDstandardNth23gt11 + J21L*J32L*PDstandardNth23gt11 + - dJ212L*PDstandardNth2gt11 + J31L*J32L*PDstandardNth33gt11 + - dJ312L*PDstandardNth3gt11) + gtu31*(J11L*J13L*PDstandardNth11gt11 + - J13L*J21L*PDstandardNth12gt11 + J11L*J23L*PDstandardNth12gt11 + - J13L*J31L*PDstandardNth13gt11 + J11L*J33L*PDstandardNth13gt11 + - dJ113L*PDstandardNth1gt11 + J21L*J23L*PDstandardNth22gt11 + - J23L*J31L*PDstandardNth23gt11 + J21L*J33L*PDstandardNth23gt11 + - dJ213L*PDstandardNth2gt11 + J31L*J33L*PDstandardNth33gt11 + - dJ313L*PDstandardNth3gt11) + gtu32*(J12L*J13L*PDstandardNth11gt11 + - J13L*J22L*PDstandardNth12gt11 + J12L*J23L*PDstandardNth12gt11 + - J13L*J32L*PDstandardNth13gt11 + J12L*J33L*PDstandardNth13gt11 + - dJ123L*PDstandardNth1gt11 + J22L*J23L*PDstandardNth22gt11 + - J23L*J32L*PDstandardNth23gt11 + J22L*J33L*PDstandardNth23gt11 + - dJ223L*PDstandardNth2gt11 + J32L*J33L*PDstandardNth33gt11 + - dJ323L*PDstandardNth3gt11)) - gtu11*(2*J11L*J21L*PDstandardNth12gt11 + + gt12L*PDstandardNth2Xt2 + gt13L*PDstandardNth2Xt3) - + gtu21*(J11L*J12L*PDstandardNth11gt11 + J12L*J21L*PDstandardNth12gt11 + + J11L*J22L*PDstandardNth12gt11 + J12L*J31L*PDstandardNth13gt11 + + J11L*J32L*PDstandardNth13gt11 + dJ112L*PDstandardNth1gt11 + + J21L*J22L*PDstandardNth22gt11 + J22L*J31L*PDstandardNth23gt11 + + J21L*J32L*PDstandardNth23gt11 + dJ212L*PDstandardNth2gt11 + + J31L*J32L*PDstandardNth33gt11 + dJ312L*PDstandardNth3gt11) - + gtu31*(J11L*J13L*PDstandardNth11gt11 + J13L*J21L*PDstandardNth12gt11 + + J11L*J23L*PDstandardNth12gt11 + J13L*J31L*PDstandardNth13gt11 + + J11L*J33L*PDstandardNth13gt11 + dJ113L*PDstandardNth1gt11 + + J21L*J23L*PDstandardNth22gt11 + J23L*J31L*PDstandardNth23gt11 + + J21L*J33L*PDstandardNth23gt11 + dJ213L*PDstandardNth2gt11 + + J31L*J33L*PDstandardNth33gt11 + dJ313L*PDstandardNth3gt11) - + gtu32*(J12L*J13L*PDstandardNth11gt11 + J13L*J22L*PDstandardNth12gt11 + + J12L*J23L*PDstandardNth12gt11 + J13L*J32L*PDstandardNth13gt11 + + J12L*J33L*PDstandardNth13gt11 + dJ123L*PDstandardNth1gt11 + + J22L*J23L*PDstandardNth22gt11 + J23L*J32L*PDstandardNth23gt11 + + J22L*J33L*PDstandardNth23gt11 + dJ223L*PDstandardNth2gt11 + + J32L*J33L*PDstandardNth33gt11 + dJ323L*PDstandardNth3gt11) + + gt11L*J31L*PDstandardNth3Xt1 + gt12L*J31L*PDstandardNth3Xt2 + + gt13L*J31L*PDstandardNth3Xt3 + Gtl111*Xtn1 + Gtl112*Xtn2 + Gtl113*Xtn3 + - 0.5*gtu11*(2*J11L*J21L*PDstandardNth12gt11 + 2*J11L*J31L*PDstandardNth13gt11 + dJ111L*PDstandardNth1gt11 + 2*J21L*J31L*PDstandardNth23gt11 + dJ211L*PDstandardNth2gt11 + dJ311L*PDstandardNth3gt11 + PDstandardNth11gt11*SQR(J11L) + PDstandardNth22gt11*SQR(J21L) + PDstandardNth33gt11*SQR(J31L)) - - gtu22*(2*J12L*J22L*PDstandardNth12gt11 + + 0.5*gtu22*(2*J12L*J22L*PDstandardNth12gt11 + 2*J12L*J32L*PDstandardNth13gt11 + dJ122L*PDstandardNth1gt11 + 2*J22L*J32L*PDstandardNth23gt11 + dJ222L*PDstandardNth2gt11 + dJ322L*PDstandardNth3gt11 + PDstandardNth11gt11*SQR(J12L) + PDstandardNth22gt11*SQR(J22L) + PDstandardNth33gt11*SQR(J32L)) - - gtu33*(2*J13L*J23L*PDstandardNth12gt11 + + 0.5*gtu33*(2*J13L*J23L*PDstandardNth12gt11 + 2*J13L*J33L*PDstandardNth13gt11 + dJ133L*PDstandardNth1gt11 + 2*J23L*J33L*PDstandardNth23gt11 + dJ233L*PDstandardNth2gt11 + dJ333L*PDstandardNth3gt11 + PDstandardNth11gt11*SQR(J13L) + - PDstandardNth22gt11*SQR(J23L) + PDstandardNth33gt11*SQR(J33L))); - - CCTK_REAL Rt12 = Gt122*Gtlu112 + Gt123*Gtlu113 + (Gt111 + - Gt212)*Gtlu121 + Gt222*Gtlu122 + (Gt113 + Gt223)*Gtlu123 + - Gt322*Gtlu132 + Gt323*Gtlu133 + Gt111*Gtlu211 + Gt112*(Gtlu111 + - Gtlu122 + Gtlu212) + Gt113*Gtlu213 + 2*(Gt211*Gtlu221 + Gt212*Gtlu222 + - Gt213*Gtlu223) + Gt311*(Gtlu231 + Gtlu321) + Gt312*(Gtlu131 + Gtlu232 + - Gtlu322) + Gt313*(Gtlu233 + Gtlu323) + 0.5*((gt12L*J11L + + PDstandardNth22gt11*SQR(J23L) + PDstandardNth33gt11*SQR(J33L)); + + CCTK_REAL Rt12 = 0.5*(4*(Gt211*Gtlu221 + Gt212*Gtlu222 + + Gt213*Gtlu223) + 2*(Gt112*Gtlu111 + Gt122*Gtlu112 + Gt123*Gtlu113 + + Gt111*Gtlu121 + Gt212*Gtlu121 + Gt112*Gtlu122 + Gt222*Gtlu122 + + Gt113*Gtlu123 + Gt223*Gtlu123 + Gt312*Gtlu131 + Gt322*Gtlu132 + + Gt323*Gtlu133 + Gt111*Gtlu211 + Gt112*Gtlu212 + Gt113*Gtlu213 + + Gt311*Gtlu231 + Gt312*Gtlu232 + Gt313*Gtlu233 + Gt311*Gtlu321 + + Gt312*Gtlu322 + Gt313*Gtlu323) + (gt12L*J11L + gt11L*J12L)*PDstandardNth1Xt1 + (gt22L*J11L + gt12L*J12L)*PDstandardNth1Xt2 + (gt23L*J11L + gt13L*J12L)*PDstandardNth1Xt3 + (gt12L*J21L + @@ -805,14 +806,14 @@ static void ML_ADMQuantities_MP_Body(cGH const * restrict const cctkGH, int cons dJ333L*PDstandardNth3gt12 + PDstandardNth11gt12*SQR(J13L) + PDstandardNth22gt12*SQR(J23L) + PDstandardNth33gt12*SQR(J33L))); - CCTK_REAL Rt13 = Gt123*Gtlu112 + Gt133*Gtlu113 + Gt223*Gtlu122 + - Gt233*Gtlu123 + (Gt111 + Gt313)*Gtlu131 + (Gt112 + Gt323)*Gtlu132 + - Gt333*Gtlu133 + Gt111*Gtlu311 + Gt112*Gtlu312 + Gt113*(Gtlu111 + - Gtlu133 + Gtlu313) + Gt211*(Gtlu231 + Gtlu321) + Gt212*(Gtlu232 + - Gtlu322) + Gt213*(Gtlu121 + Gtlu233 + Gtlu323) + 2*(Gt311*Gtlu331 + - Gt312*Gtlu332 + Gt313*Gtlu333) + 0.5*((gt13L*J11L + - gt11L*J13L)*PDstandardNth1Xt1 + (gt23L*J11L + - gt12L*J13L)*PDstandardNth1Xt2 + (gt33L*J11L + + CCTK_REAL Rt13 = 0.5*(2*(Gt113*Gtlu111 + Gt123*Gtlu112 + Gt133*Gtlu113 + + Gt213*Gtlu121 + Gt223*Gtlu122 + Gt233*Gtlu123 + Gt111*Gtlu131 + + Gt313*Gtlu131 + Gt112*Gtlu132 + Gt323*Gtlu132 + Gt113*Gtlu133 + + Gt333*Gtlu133 + Gt211*Gtlu231 + Gt212*Gtlu232 + Gt213*Gtlu233 + + Gt111*Gtlu311 + Gt112*Gtlu312 + Gt113*Gtlu313 + Gt211*Gtlu321 + + Gt212*Gtlu322 + Gt213*Gtlu323) + 4*(Gt311*Gtlu331 + Gt312*Gtlu332 + + Gt313*Gtlu333) + (gt13L*J11L + gt11L*J13L)*PDstandardNth1Xt1 + + (gt23L*J11L + gt12L*J13L)*PDstandardNth1Xt2 + (gt33L*J11L + gt13L*J13L)*PDstandardNth1Xt3 + (gt13L*J21L + gt11L*J23L)*PDstandardNth2Xt1 + (gt23L*J21L + gt12L*J23L)*PDstandardNth2Xt2 + (gt33L*J21L + @@ -861,49 +862,50 @@ static void ML_ADMQuantities_MP_Body(cGH const * restrict const cctkGH, int cons Gt323*Gtlu233) + Gt312*Gtlu321 + Gt322*Gtlu322 + Gt323*Gtlu323 + J12L*(gt12L*PDstandardNth1Xt1 + gt22L*PDstandardNth1Xt2 + gt23L*PDstandardNth1Xt3) + J22L*(gt12L*PDstandardNth2Xt1 + - gt22L*PDstandardNth2Xt2 + gt23L*PDstandardNth2Xt3) + - J32L*(gt12L*PDstandardNth3Xt1 + gt22L*PDstandardNth3Xt2 + - gt23L*PDstandardNth3Xt3) + Gtl212*Xtn1 + Gtl222*Xtn2 + Gtl223*Xtn3 + - 0.5*(-2*(gtu21*(J11L*J12L*PDstandardNth11gt22 + - J12L*J21L*PDstandardNth12gt22 + J11L*J22L*PDstandardNth12gt22 + - J12L*J31L*PDstandardNth13gt22 + J11L*J32L*PDstandardNth13gt22 + - dJ112L*PDstandardNth1gt22 + J21L*J22L*PDstandardNth22gt22 + - J22L*J31L*PDstandardNth23gt22 + J21L*J32L*PDstandardNth23gt22 + - dJ212L*PDstandardNth2gt22 + J31L*J32L*PDstandardNth33gt22 + - dJ312L*PDstandardNth3gt22) + gtu31*(J11L*J13L*PDstandardNth11gt22 + - J13L*J21L*PDstandardNth12gt22 + J11L*J23L*PDstandardNth12gt22 + - J13L*J31L*PDstandardNth13gt22 + J11L*J33L*PDstandardNth13gt22 + - dJ113L*PDstandardNth1gt22 + J21L*J23L*PDstandardNth22gt22 + - J23L*J31L*PDstandardNth23gt22 + J21L*J33L*PDstandardNth23gt22 + - dJ213L*PDstandardNth2gt22 + J31L*J33L*PDstandardNth33gt22 + - dJ313L*PDstandardNth3gt22) + gtu32*(J12L*J13L*PDstandardNth11gt22 + - J13L*J22L*PDstandardNth12gt22 + J12L*J23L*PDstandardNth12gt22 + - J13L*J32L*PDstandardNth13gt22 + J12L*J33L*PDstandardNth13gt22 + - dJ123L*PDstandardNth1gt22 + J22L*J23L*PDstandardNth22gt22 + - J23L*J32L*PDstandardNth23gt22 + J22L*J33L*PDstandardNth23gt22 + - dJ223L*PDstandardNth2gt22 + J32L*J33L*PDstandardNth33gt22 + - dJ323L*PDstandardNth3gt22)) - gtu11*(2*J11L*J21L*PDstandardNth12gt22 + + gt22L*PDstandardNth2Xt2 + gt23L*PDstandardNth2Xt3) - + gtu21*(J11L*J12L*PDstandardNth11gt22 + J12L*J21L*PDstandardNth12gt22 + + J11L*J22L*PDstandardNth12gt22 + J12L*J31L*PDstandardNth13gt22 + + J11L*J32L*PDstandardNth13gt22 + dJ112L*PDstandardNth1gt22 + + J21L*J22L*PDstandardNth22gt22 + J22L*J31L*PDstandardNth23gt22 + + J21L*J32L*PDstandardNth23gt22 + dJ212L*PDstandardNth2gt22 + + J31L*J32L*PDstandardNth33gt22 + dJ312L*PDstandardNth3gt22) - + gtu31*(J11L*J13L*PDstandardNth11gt22 + J13L*J21L*PDstandardNth12gt22 + + J11L*J23L*PDstandardNth12gt22 + J13L*J31L*PDstandardNth13gt22 + + J11L*J33L*PDstandardNth13gt22 + dJ113L*PDstandardNth1gt22 + + J21L*J23L*PDstandardNth22gt22 + J23L*J31L*PDstandardNth23gt22 + + J21L*J33L*PDstandardNth23gt22 + dJ213L*PDstandardNth2gt22 + + J31L*J33L*PDstandardNth33gt22 + dJ313L*PDstandardNth3gt22) - + gtu32*(J12L*J13L*PDstandardNth11gt22 + J13L*J22L*PDstandardNth12gt22 + + J12L*J23L*PDstandardNth12gt22 + J13L*J32L*PDstandardNth13gt22 + + J12L*J33L*PDstandardNth13gt22 + dJ123L*PDstandardNth1gt22 + + J22L*J23L*PDstandardNth22gt22 + J23L*J32L*PDstandardNth23gt22 + + J22L*J33L*PDstandardNth23gt22 + dJ223L*PDstandardNth2gt22 + + J32L*J33L*PDstandardNth33gt22 + dJ323L*PDstandardNth3gt22) + + gt12L*J32L*PDstandardNth3Xt1 + gt22L*J32L*PDstandardNth3Xt2 + + gt23L*J32L*PDstandardNth3Xt3 + Gtl212*Xtn1 + Gtl222*Xtn2 + Gtl223*Xtn3 + - 0.5*gtu11*(2*J11L*J21L*PDstandardNth12gt22 + 2*J11L*J31L*PDstandardNth13gt22 + dJ111L*PDstandardNth1gt22 + 2*J21L*J31L*PDstandardNth23gt22 + dJ211L*PDstandardNth2gt22 + dJ311L*PDstandardNth3gt22 + PDstandardNth11gt22*SQR(J11L) + PDstandardNth22gt22*SQR(J21L) + PDstandardNth33gt22*SQR(J31L)) - - gtu22*(2*J12L*J22L*PDstandardNth12gt22 + + 0.5*gtu22*(2*J12L*J22L*PDstandardNth12gt22 + 2*J12L*J32L*PDstandardNth13gt22 + dJ122L*PDstandardNth1gt22 + 2*J22L*J32L*PDstandardNth23gt22 + dJ222L*PDstandardNth2gt22 + dJ322L*PDstandardNth3gt22 + PDstandardNth11gt22*SQR(J12L) + PDstandardNth22gt22*SQR(J22L) + PDstandardNth33gt22*SQR(J32L)) - - gtu33*(2*J13L*J23L*PDstandardNth12gt22 + + 0.5*gtu33*(2*J13L*J23L*PDstandardNth12gt22 + 2*J13L*J33L*PDstandardNth13gt22 + dJ133L*PDstandardNth1gt22 + 2*J23L*J33L*PDstandardNth23gt22 + dJ233L*PDstandardNth2gt22 + dJ333L*PDstandardNth3gt22 + PDstandardNth11gt22*SQR(J13L) + - PDstandardNth22gt22*SQR(J23L) + PDstandardNth33gt22*SQR(J33L))); - - CCTK_REAL Rt23 = Gt113*Gtlu211 + Gt133*Gtlu213 + Gt213*Gtlu221 + - Gt233*Gtlu223 + (Gt212 + Gt313)*Gtlu231 + (Gt222 + Gt323)*Gtlu232 + - Gt333*Gtlu233 + Gt112*(Gtlu131 + Gtlu311) + Gt122*(Gtlu132 + Gtlu312) + - Gt123*(Gtlu133 + Gtlu212 + Gtlu313) + Gt212*Gtlu321 + Gt222*Gtlu322 + - Gt223*(Gtlu222 + Gtlu233 + Gtlu323) + 2*(Gt312*Gtlu331 + Gt322*Gtlu332 - + Gt323*Gtlu333) + 0.5*((gt13L*J12L + gt12L*J13L)*PDstandardNth1Xt1 + + PDstandardNth22gt22*SQR(J23L) + PDstandardNth33gt22*SQR(J33L)); + + CCTK_REAL Rt23 = 0.5*(2*(Gt112*Gtlu131 + Gt122*Gtlu132 + Gt123*Gtlu133 + + Gt113*Gtlu211 + Gt123*Gtlu212 + Gt133*Gtlu213 + Gt213*Gtlu221 + + Gt223*Gtlu222 + Gt233*Gtlu223 + Gt212*Gtlu231 + Gt313*Gtlu231 + + Gt222*Gtlu232 + Gt323*Gtlu232 + Gt223*Gtlu233 + Gt333*Gtlu233 + + Gt112*Gtlu311 + Gt122*Gtlu312 + Gt123*Gtlu313 + Gt212*Gtlu321 + + Gt222*Gtlu322 + Gt223*Gtlu323) + 4*(Gt312*Gtlu331 + Gt322*Gtlu332 + + Gt323*Gtlu333) + (gt13L*J12L + gt12L*J13L)*PDstandardNth1Xt1 + (gt23L*J12L + gt22L*J13L)*PDstandardNth1Xt2 + (gt33L*J12L + gt23L*J13L)*PDstandardNth1Xt3 + (gt13L*J22L + gt12L*J23L)*PDstandardNth2Xt1 + (gt23L*J22L + @@ -953,48 +955,47 @@ static void ML_ADMQuantities_MP_Body(cGH const * restrict const cctkGH, int cons 3*(Gt313*Gtlu331 + Gt323*Gtlu332 + Gt333*Gtlu333) + J13L*(gt13L*PDstandardNth1Xt1 + gt23L*PDstandardNth1Xt2 + gt33L*PDstandardNth1Xt3) + J23L*(gt13L*PDstandardNth2Xt1 + - gt23L*PDstandardNth2Xt2 + gt33L*PDstandardNth2Xt3) + - J33L*(gt13L*PDstandardNth3Xt1 + gt23L*PDstandardNth3Xt2 + - gt33L*PDstandardNth3Xt3) + Gtl313*Xtn1 + Gtl323*Xtn2 + Gtl333*Xtn3 + - 0.5*(-2*(gtu21*(J11L*J12L*PDstandardNth11gt33 + - J12L*J21L*PDstandardNth12gt33 + J11L*J22L*PDstandardNth12gt33 + - J12L*J31L*PDstandardNth13gt33 + J11L*J32L*PDstandardNth13gt33 + - dJ112L*PDstandardNth1gt33 + J21L*J22L*PDstandardNth22gt33 + - J22L*J31L*PDstandardNth23gt33 + J21L*J32L*PDstandardNth23gt33 + - dJ212L*PDstandardNth2gt33 + J31L*J32L*PDstandardNth33gt33 + - dJ312L*PDstandardNth3gt33) + gtu31*(J11L*J13L*PDstandardNth11gt33 + - J13L*J21L*PDstandardNth12gt33 + J11L*J23L*PDstandardNth12gt33 + - J13L*J31L*PDstandardNth13gt33 + J11L*J33L*PDstandardNth13gt33 + - dJ113L*PDstandardNth1gt33 + J21L*J23L*PDstandardNth22gt33 + - J23L*J31L*PDstandardNth23gt33 + J21L*J33L*PDstandardNth23gt33 + - dJ213L*PDstandardNth2gt33 + J31L*J33L*PDstandardNth33gt33 + - dJ313L*PDstandardNth3gt33) + gtu32*(J12L*J13L*PDstandardNth11gt33 + - J13L*J22L*PDstandardNth12gt33 + J12L*J23L*PDstandardNth12gt33 + - J13L*J32L*PDstandardNth13gt33 + J12L*J33L*PDstandardNth13gt33 + - dJ123L*PDstandardNth1gt33 + J22L*J23L*PDstandardNth22gt33 + - J23L*J32L*PDstandardNth23gt33 + J22L*J33L*PDstandardNth23gt33 + - dJ223L*PDstandardNth2gt33 + J32L*J33L*PDstandardNth33gt33 + - dJ323L*PDstandardNth3gt33)) - gtu11*(2*J11L*J21L*PDstandardNth12gt33 + + gt23L*PDstandardNth2Xt2 + gt33L*PDstandardNth2Xt3) - + gtu21*(J11L*J12L*PDstandardNth11gt33 + J12L*J21L*PDstandardNth12gt33 + + J11L*J22L*PDstandardNth12gt33 + J12L*J31L*PDstandardNth13gt33 + + J11L*J32L*PDstandardNth13gt33 + dJ112L*PDstandardNth1gt33 + + J21L*J22L*PDstandardNth22gt33 + J22L*J31L*PDstandardNth23gt33 + + J21L*J32L*PDstandardNth23gt33 + dJ212L*PDstandardNth2gt33 + + J31L*J32L*PDstandardNth33gt33 + dJ312L*PDstandardNth3gt33) - + gtu31*(J11L*J13L*PDstandardNth11gt33 + J13L*J21L*PDstandardNth12gt33 + + J11L*J23L*PDstandardNth12gt33 + J13L*J31L*PDstandardNth13gt33 + + J11L*J33L*PDstandardNth13gt33 + dJ113L*PDstandardNth1gt33 + + J21L*J23L*PDstandardNth22gt33 + J23L*J31L*PDstandardNth23gt33 + + J21L*J33L*PDstandardNth23gt33 + dJ213L*PDstandardNth2gt33 + + J31L*J33L*PDstandardNth33gt33 + dJ313L*PDstandardNth3gt33) - + gtu32*(J12L*J13L*PDstandardNth11gt33 + J13L*J22L*PDstandardNth12gt33 + + J12L*J23L*PDstandardNth12gt33 + J13L*J32L*PDstandardNth13gt33 + + J12L*J33L*PDstandardNth13gt33 + dJ123L*PDstandardNth1gt33 + + J22L*J23L*PDstandardNth22gt33 + J23L*J32L*PDstandardNth23gt33 + + J22L*J33L*PDstandardNth23gt33 + dJ223L*PDstandardNth2gt33 + + J32L*J33L*PDstandardNth33gt33 + dJ323L*PDstandardNth3gt33) + + gt13L*J33L*PDstandardNth3Xt1 + gt23L*J33L*PDstandardNth3Xt2 + + gt33L*J33L*PDstandardNth3Xt3 + Gtl313*Xtn1 + Gtl323*Xtn2 + Gtl333*Xtn3 + - 0.5*gtu11*(2*J11L*J21L*PDstandardNth12gt33 + 2*J11L*J31L*PDstandardNth13gt33 + dJ111L*PDstandardNth1gt33 + 2*J21L*J31L*PDstandardNth23gt33 + dJ211L*PDstandardNth2gt33 + dJ311L*PDstandardNth3gt33 + PDstandardNth11gt33*SQR(J11L) + PDstandardNth22gt33*SQR(J21L) + PDstandardNth33gt33*SQR(J31L)) - - gtu22*(2*J12L*J22L*PDstandardNth12gt33 + + 0.5*gtu22*(2*J12L*J22L*PDstandardNth12gt33 + 2*J12L*J32L*PDstandardNth13gt33 + dJ122L*PDstandardNth1gt33 + 2*J22L*J32L*PDstandardNth23gt33 + dJ222L*PDstandardNth2gt33 + dJ322L*PDstandardNth3gt33 + PDstandardNth11gt33*SQR(J12L) + PDstandardNth22gt33*SQR(J22L) + PDstandardNth33gt33*SQR(J32L)) - - gtu33*(2*J13L*J23L*PDstandardNth12gt33 + + 0.5*gtu33*(2*J13L*J23L*PDstandardNth12gt33 + 2*J13L*J33L*PDstandardNth13gt33 + dJ133L*PDstandardNth1gt33 + 2*J23L*J33L*PDstandardNth23gt33 + dJ233L*PDstandardNth2gt33 + dJ333L*PDstandardNth3gt33 + PDstandardNth11gt33*SQR(J13L) + - PDstandardNth22gt33*SQR(J23L) + PDstandardNth33gt33*SQR(J33L))); + PDstandardNth22gt33*SQR(J23L) + PDstandardNth33gt33*SQR(J33L)); CCTK_REAL trRt = gtu11*Rt11 + gtu22*Rt22 + 2*(gtu21*Rt12 + gtu31*Rt13 + gtu32*Rt23) + gtu33*Rt33; - CCTK_REAL ephi = - IfThen(ToReal(conformalMethod),INV(sqrt(phiL)),exp(phiL)); + CCTK_REAL ephi = IfThen(conformalMethod,INV(sqrt(phiL)),exp(phiL)); CCTK_REAL Atm11 = At11L*gtu11 + At12L*gtu21 + At13L*gtu31; @@ -1029,66 +1030,79 @@ static void ML_ADMQuantities_MP_Body(cGH const * restrict const cctkGH, int cons beta3L*eTzzL)*INV(alphaL); CCTK_REAL MadmL = - 0.01989436788648691697111047042156429525431*(-((Gt111*Gtlu111 + - Gt112*Gtlu112 + Gt113*Gtlu113 + Gt211*Gtlu121 + Gt212*Gtlu122 + - Gt213*Gtlu123 + Gt311*Gtlu131 + Gt312*Gtlu132 + Gt313*Gtlu133)*gtu11) + + 0.01989436788648691697111047042156429525431*((-(Gt111*Gtlu111) - + Gt112*Gtlu112 - Gt113*Gtlu113 - Gt211*Gtlu121 - Gt212*Gtlu122 - + Gt213*Gtlu123 - Gt311*Gtlu131 - Gt312*Gtlu132 - Gt313*Gtlu133)*gtu11 + (-(Gt122*Gtlu112) - Gt123*Gtlu113 - Gt222*Gtlu122 - Gt223*Gtlu123 - Gt322*Gtlu132 - Gt323*Gtlu133 - Gt111*Gtlu211 + Gt112*(-Gtlu111 - Gtlu212) - Gt113*Gtlu213 - Gt211*Gtlu221 + Gt212*(-Gtlu121 - Gtlu222) - Gt213*Gtlu223 - Gt311*Gtlu231 + Gt312*(-Gtlu131 - Gtlu232) - - Gt313*Gtlu233)*gtu21 - (Gt112*Gtlu211 + Gt122*Gtlu212 + Gt123*Gtlu213 + - Gt212*Gtlu221 + Gt222*Gtlu222 + Gt223*Gtlu223 + Gt312*Gtlu231 + - Gt322*Gtlu232 + Gt323*Gtlu233)*gtu22 + (-(Gt123*Gtlu112) - - Gt133*Gtlu113 - Gt223*Gtlu122 - Gt233*Gtlu123 - Gt323*Gtlu132 - - Gt333*Gtlu133 - Gt111*Gtlu311 - Gt112*Gtlu312 + Gt113*(-Gtlu111 - - Gtlu313) - Gt211*Gtlu321 - Gt212*Gtlu322 + Gt213*(-Gtlu121 - Gtlu323) - - Gt311*Gtlu331 - Gt312*Gtlu332 + Gt313*(-Gtlu131 - Gtlu333))*gtu31 + - (-(Gt113*Gtlu211) - Gt133*Gtlu213 - Gt213*Gtlu221 - Gt233*Gtlu223 - - Gt313*Gtlu231 - Gt333*Gtlu233 - Gt112*Gtlu311 - Gt122*Gtlu312 + - Gt123*(-Gtlu212 - Gtlu313) - Gt212*Gtlu321 - Gt222*Gtlu322 + - Gt223*(-Gtlu222 - Gtlu323) - Gt312*Gtlu331 - Gt322*Gtlu332 + - Gt323*(-Gtlu232 - Gtlu333))*gtu32 - (Gt113*Gtlu311 + Gt123*Gtlu312 + - Gt133*Gtlu313 + Gt213*Gtlu321 + Gt223*Gtlu322 + Gt233*Gtlu323 + - Gt313*Gtlu331 + Gt323*Gtlu332 + Gt333*Gtlu333)*gtu33 + trRt - ephi*trRt - + pow(ephi,5)*(2*Atm12*Atm21 + 2.*Atm13*Atm31 + 2.*Atm23*Atm32 + + Gt313*Gtlu233)*gtu21 + (-(Gt112*Gtlu211) - Gt122*Gtlu212 - + Gt123*Gtlu213 - Gt212*Gtlu221 - Gt222*Gtlu222 - Gt223*Gtlu223 - + Gt312*Gtlu231 - Gt322*Gtlu232 - Gt323*Gtlu233)*gtu22 + + (-(Gt123*Gtlu112) - Gt133*Gtlu113 - Gt223*Gtlu122 - Gt233*Gtlu123 - + Gt323*Gtlu132 - Gt333*Gtlu133 - Gt111*Gtlu311 - Gt112*Gtlu312 + + Gt113*(-Gtlu111 - Gtlu313) - Gt211*Gtlu321 - Gt212*Gtlu322 + + Gt213*(-Gtlu121 - Gtlu323) - Gt311*Gtlu331 - Gt312*Gtlu332 + + Gt313*(-Gtlu131 - Gtlu333))*gtu31 + (-(Gt113*Gtlu211) - Gt133*Gtlu213 - + Gt213*Gtlu221 - Gt233*Gtlu223 - Gt313*Gtlu231 - Gt333*Gtlu233 - + Gt112*Gtlu311 - Gt122*Gtlu312 + Gt123*(-Gtlu212 - Gtlu313) - + Gt212*Gtlu321 - Gt222*Gtlu322 + Gt223*(-Gtlu222 - Gtlu323) - + Gt312*Gtlu331 - Gt322*Gtlu332 + Gt323*(-Gtlu232 - Gtlu333))*gtu32 + + (-(Gt113*Gtlu311) - Gt123*Gtlu312 - Gt133*Gtlu313 - Gt213*Gtlu321 - + Gt223*Gtlu322 - Gt233*Gtlu323 - Gt313*Gtlu331 - Gt323*Gtlu332 - + Gt333*Gtlu333)*gtu33 + trRt - ephi*trRt + pow(ephi,5)*(2*Atm12*Atm21 + + 2.*Atm13*Atm31 + 2.*Atm23*Atm32 + 50.26548245743669181540229413247204614715*rho + SQR(Atm11) + SQR(Atm22) + SQR(Atm33) - 0.6666666666666666666666666666666666666667*SQR(trKL))); CCTK_REAL Jadm1L = - 0.01989436788648691697111047042156429525431*(2*Atm23 - 2*Atm32 + - (-(At11L*dgtu113) - 2*At12L*dgtu213 - At22L*dgtu223 - 2*At13L*dgtu313 - - 2*At23L*dgtu323 - At33L*dgtu333 + - 1.33333333333333333333333333333*(J13L*PDstandardNth1trK + - J23L*PDstandardNth2trK + J33L*PDstandardNth3trK) + - 50.26548245743669181540229413247204614715*S3)*yL + (At11L*dgtu112 + - At22L*dgtu222 + 2*(At12L*dgtu212 + At13L*dgtu312 + At23L*dgtu322) + - At33L*dgtu332 - 1.33333333333333333333333333333*(J12L*PDstandardNth1trK - + J22L*PDstandardNth2trK + J32L*PDstandardNth3trK) - - 50.26548245743669181540229413247204614715*S2)*zL)*pow(ephi,6); + ((-0.01989436788648691697111047042156429525431*(At11L*dgtu113 + + At22L*dgtu223 + At33L*dgtu333) + + 0.02652582384864922262814729389541906033908*J33L*PDstandardNth3trK + + 1.*S3)*yL - 0.03978873577297383394222094084312859050861*(Atm32 + + (At12L*dgtu213 + At13L*dgtu313 + At23L*dgtu323)*yL) + + (0.01989436788648691697111047042156429525431*(At11L*dgtu112 + + At22L*dgtu222 + At33L*dgtu332) - + 0.02652582384864922262814729389541906033908*J32L*PDstandardNth3trK - + 1.*S2)*zL + 0.03978873577297383394222094084312859050861*(Atm23 + + (At12L*dgtu212 + At13L*dgtu312 + At23L*dgtu322)*zL) + + PDstandardNth1trK*(0.02652582384864922262814729389541906033908*J13L*yL + - 0.02652582384864922262814729389541906033908*J12L*zL) + + PDstandardNth2trK*(0.02652582384864922262814729389541906033908*J23L*yL + - 0.02652582384864922262814729389541906033908*J22L*zL))*pow(ephi,6); CCTK_REAL Jadm2L = - 0.01989436788648691697111047042156429525431*(-2*Atm13 + 2*Atm31 + - (At11L*dgtu113 + At22L*dgtu223 + 2*(At12L*dgtu213 + At13L*dgtu313 + - At23L*dgtu323) + At33L*dgtu333 - - 1.33333333333333333333333333333*(J13L*PDstandardNth1trK + - J23L*PDstandardNth2trK + J33L*PDstandardNth3trK) - - 50.26548245743669181540229413247204614715*S3)*xL + (-(At11L*dgtu111) - - 2*At12L*dgtu211 - At22L*dgtu221 - 2*At13L*dgtu311 - 2*At23L*dgtu321 - - At33L*dgtu331 + 1.33333333333333333333333333333*(J11L*PDstandardNth1trK - + J21L*PDstandardNth2trK + J31L*PDstandardNth3trK) + - 50.26548245743669181540229413247204614715*S1)*zL)*pow(ephi,6); + ((0.01989436788648691697111047042156429525431*(At11L*dgtu113 + + At22L*dgtu223 + At33L*dgtu333) - + 0.02652582384864922262814729389541906033908*J33L*PDstandardNth3trK - + 1.*S3)*xL + 0.03978873577297383394222094084312859050861*(Atm31 + + (At12L*dgtu213 + At13L*dgtu313 + At23L*dgtu323)*xL) + + (-0.01989436788648691697111047042156429525431*(At11L*dgtu111 + + At22L*dgtu221 + At33L*dgtu331) + + 0.02652582384864922262814729389541906033908*J31L*PDstandardNth3trK + + 1.*S1)*zL - 0.03978873577297383394222094084312859050861*(Atm13 + + (At12L*dgtu211 + At13L*dgtu311 + At23L*dgtu321)*zL) + + PDstandardNth1trK*(-0.02652582384864922262814729389541906033908*J13L*xL + + 0.02652582384864922262814729389541906033908*J11L*zL) + + PDstandardNth2trK*(-0.02652582384864922262814729389541906033908*J23L*xL + + 0.02652582384864922262814729389541906033908*J21L*zL))*pow(ephi,6); CCTK_REAL Jadm3L = - 0.01989436788648691697111047042156429525431*(2*Atm12 - 2*Atm21 + - (-(At11L*dgtu112) - 2*At12L*dgtu212 - At22L*dgtu222 - 2*At13L*dgtu312 - - 2*At23L*dgtu322 - At33L*dgtu332 + - 1.33333333333333333333333333333*(J12L*PDstandardNth1trK + - J22L*PDstandardNth2trK + J32L*PDstandardNth3trK) + - 50.26548245743669181540229413247204614715*S2)*xL + (At11L*dgtu111 + - At22L*dgtu221 + 2*(At12L*dgtu211 + At13L*dgtu311 + At23L*dgtu321) + - At33L*dgtu331 - 1.33333333333333333333333333333*(J11L*PDstandardNth1trK - + J21L*PDstandardNth2trK + J31L*PDstandardNth3trK) - - 50.26548245743669181540229413247204614715*S1)*yL)*pow(ephi,6); + ((-0.01989436788648691697111047042156429525431*(At11L*dgtu112 + + At22L*dgtu222 + At33L*dgtu332) + + 0.02652582384864922262814729389541906033908*J32L*PDstandardNth3trK + + 1.*S2)*xL - 0.03978873577297383394222094084312859050861*(Atm21 + + (At12L*dgtu212 + At13L*dgtu312 + At23L*dgtu322)*xL) + + (0.01989436788648691697111047042156429525431*(At11L*dgtu111 + + At22L*dgtu221 + At33L*dgtu331) - + 0.02652582384864922262814729389541906033908*J31L*PDstandardNth3trK - + 1.*S1)*yL + 0.03978873577297383394222094084312859050861*(Atm12 + + (At12L*dgtu211 + At13L*dgtu311 + At23L*dgtu321)*yL) + + PDstandardNth1trK*(0.02652582384864922262814729389541906033908*J12L*xL + - 0.02652582384864922262814729389541906033908*J11L*yL) + + PDstandardNth2trK*(0.02652582384864922262814729389541906033908*J22L*xL + - 0.02652582384864922262814729389541906033908*J21L*yL))*pow(ephi,6); /* Copy local copies back to grid functions */ Jadm1[index] = Jadm1L; diff --git a/ML_ADMQuantities_O2/src/ML_ADMQuantities_O2.cc b/ML_ADMQuantities_O2/src/ML_ADMQuantities_O2.cc index b7b168a..132be5e 100644 --- a/ML_ADMQuantities_O2/src/ML_ADMQuantities_O2.cc +++ b/ML_ADMQuantities_O2/src/ML_ADMQuantities_O2.cc @@ -487,15 +487,16 @@ static void ML_ADMQuantities_O2_Body(cGH const * restrict const cctkGH, int cons CCTK_REAL Xtn3 = Gt311*gtu11 + Gt322*gtu22 + 2*(Gt312*gtu21 + Gt313*gtu31 + Gt323*gtu32) + Gt333*gtu33; - CCTK_REAL Rt11 = 3*(Gt111*Gtlu111 + Gt112*Gtlu112 + Gt113*Gtlu113) + - 2*(Gt211*Gtlu121 + Gt212*Gtlu122 + Gt213*Gtlu123 + Gt311*Gtlu131 + - Gt312*Gtlu132 + Gt313*Gtlu133) + Gt211*Gtlu211 + Gt212*Gtlu212 + + CCTK_REAL Rt11 = 0.5*(6*(Gt111*Gtlu111 + Gt112*Gtlu112 + + Gt113*Gtlu113) + 4*(Gt211*Gtlu121 + Gt212*Gtlu122 + Gt213*Gtlu123 + + Gt311*Gtlu131 + Gt312*Gtlu132 + Gt313*Gtlu133) - + gtu11*PDstandardNth11gt11 - 2*gtu21*PDstandardNth12gt11 - + 2*gtu31*PDstandardNth13gt11 + 2*(Gt211*Gtlu211 + Gt212*Gtlu212 + Gt213*Gtlu213 + Gt311*Gtlu311 + Gt312*Gtlu312 + Gt313*Gtlu313 + - gt11L*PDstandardNth1Xt1 + gt12L*PDstandardNth1Xt2 + - gt13L*PDstandardNth1Xt3 + 0.5*(-(gtu11*PDstandardNth11gt11) - - 2*gtu21*PDstandardNth12gt11 - 2*gtu31*PDstandardNth13gt11 - - gtu22*PDstandardNth22gt11 - 2*gtu32*PDstandardNth23gt11 - - gtu33*PDstandardNth33gt11) + Gtl111*Xtn1 + Gtl112*Xtn2 + Gtl113*Xtn3; + gt11L*PDstandardNth1Xt1) + 2*gt12L*PDstandardNth1Xt2 + + 2*gt13L*PDstandardNth1Xt3 - gtu22*PDstandardNth22gt11 - + 2*gtu32*PDstandardNth23gt11 - gtu33*PDstandardNth33gt11 + 2*Gtl111*Xtn1 + + 2*Gtl112*Xtn2 + 2*Gtl113*Xtn3); CCTK_REAL Rt12 = 0.5*(4*(Gt211*Gtlu221 + Gt212*Gtlu222 + Gt213*Gtlu223) + 2*(Gt112*Gtlu111 + Gt122*Gtlu112 + Gt123*Gtlu113 + @@ -527,15 +528,16 @@ static void ML_ADMQuantities_O2_Body(cGH const * restrict const cctkGH, int cons gt13L*PDstandardNth3Xt3 + Gtl113*Xtn1 + Gtl311*Xtn1 + Gtl123*Xtn2 + Gtl312*Xtn2 + Gtl133*Xtn3 + Gtl313*Xtn3); - CCTK_REAL Rt22 = Gt112*(Gtlu121 + 2*Gtlu211) + Gt122*(Gtlu122 + - 2*Gtlu212) + Gt123*(Gtlu123 + 2*Gtlu213) + 3*(Gt212*Gtlu221 + - Gt222*Gtlu222 + Gt223*Gtlu223) + 2*(Gt312*Gtlu231 + Gt322*Gtlu232 + - Gt323*Gtlu233) + Gt312*Gtlu321 + Gt322*Gtlu322 + Gt323*Gtlu323 + - gt12L*PDstandardNth2Xt1 + gt22L*PDstandardNth2Xt2 + - gt23L*PDstandardNth2Xt3 + 0.5*(-(gtu11*PDstandardNth11gt22) - - 2*gtu21*PDstandardNth12gt22 - 2*gtu31*PDstandardNth13gt22 - - gtu22*PDstandardNth22gt22 - 2*gtu32*PDstandardNth23gt22 - - gtu33*PDstandardNth33gt22) + Gtl212*Xtn1 + Gtl222*Xtn2 + Gtl223*Xtn3; + CCTK_REAL Rt22 = 0.5*(6*(Gt212*Gtlu221 + Gt222*Gtlu222 + + Gt223*Gtlu223) + 4*(Gt112*Gtlu211 + Gt122*Gtlu212 + Gt123*Gtlu213 + + Gt312*Gtlu231 + Gt322*Gtlu232 + Gt323*Gtlu233) - + gtu11*PDstandardNth11gt22 - 2*gtu21*PDstandardNth12gt22 - + 2*gtu31*PDstandardNth13gt22 - gtu22*PDstandardNth22gt22 - + 2*gtu32*PDstandardNth23gt22 + 2*(Gt112*Gtlu121 + Gt122*Gtlu122 + + Gt123*Gtlu123 + Gt312*Gtlu321 + Gt322*Gtlu322 + Gt323*Gtlu323 + + gt12L*PDstandardNth2Xt1) + 2*gt22L*PDstandardNth2Xt2 + + 2*gt23L*PDstandardNth2Xt3 - gtu33*PDstandardNth33gt22 + 2*Gtl212*Xtn1 + + 2*Gtl222*Xtn2 + 2*Gtl223*Xtn3); CCTK_REAL Rt23 = 0.5*(2*(Gt112*Gtlu131 + Gt122*Gtlu132 + Gt123*Gtlu133 + Gt113*Gtlu211 + Gt123*Gtlu212 + Gt133*Gtlu213 + Gt213*Gtlu221 + @@ -552,21 +554,21 @@ static void ML_ADMQuantities_O2_Body(cGH const * restrict const cctkGH, int cons gt23L*PDstandardNth3Xt3 + Gtl213*Xtn1 + Gtl312*Xtn1 + Gtl223*Xtn2 + Gtl322*Xtn2 + Gtl233*Xtn3 + Gtl323*Xtn3); - CCTK_REAL Rt33 = Gt113*(Gtlu131 + 2*Gtlu311) + Gt123*(Gtlu132 + - 2*Gtlu312) + Gt133*(Gtlu133 + 2*Gtlu313) + Gt213*(Gtlu231 + 2*Gtlu321) - + Gt223*(Gtlu232 + 2*Gtlu322) + Gt233*(Gtlu233 + 2*Gtlu323) + - 3*(Gt313*Gtlu331 + Gt323*Gtlu332 + Gt333*Gtlu333) + - 0.5*(-(gtu11*PDstandardNth11gt33) - 2*gtu21*PDstandardNth12gt33 - - 2*gtu31*PDstandardNth13gt33 - gtu22*PDstandardNth22gt33 - - 2*gtu32*PDstandardNth23gt33 - gtu33*PDstandardNth33gt33) + - gt13L*PDstandardNth3Xt1 + gt23L*PDstandardNth3Xt2 + - gt33L*PDstandardNth3Xt3 + Gtl313*Xtn1 + Gtl323*Xtn2 + Gtl333*Xtn3; + CCTK_REAL Rt33 = 0.5*(4*(Gt113*Gtlu311 + Gt123*Gtlu312 + Gt133*Gtlu313 + + Gt213*Gtlu321 + Gt223*Gtlu322 + Gt233*Gtlu323) + 6*(Gt313*Gtlu331 + + Gt323*Gtlu332 + Gt333*Gtlu333) - gtu11*PDstandardNth11gt33 - + 2*gtu21*PDstandardNth12gt33 - 2*gtu31*PDstandardNth13gt33 - + gtu22*PDstandardNth22gt33 - 2*gtu32*PDstandardNth23gt33 - + gtu33*PDstandardNth33gt33 + 2*(Gt113*Gtlu131 + Gt123*Gtlu132 + + Gt133*Gtlu133 + Gt213*Gtlu231 + Gt223*Gtlu232 + Gt233*Gtlu233 + + gt13L*PDstandardNth3Xt1) + 2*gt23L*PDstandardNth3Xt2 + + 2*gt33L*PDstandardNth3Xt3 + 2*Gtl313*Xtn1 + 2*Gtl323*Xtn2 + + 2*Gtl333*Xtn3); CCTK_REAL trRt = gtu11*Rt11 + gtu22*Rt22 + 2*(gtu21*Rt12 + gtu31*Rt13 + gtu32*Rt23) + gtu33*Rt33; - CCTK_REAL ephi = - IfThen(ToReal(conformalMethod),INV(sqrt(phiL)),exp(phiL)); + CCTK_REAL ephi = IfThen(conformalMethod,INV(sqrt(phiL)),exp(phiL)); CCTK_REAL Atm11 = At11L*gtu11 + At12L*gtu21 + At13L*gtu31; @@ -601,60 +603,67 @@ static void ML_ADMQuantities_O2_Body(cGH const * restrict const cctkGH, int cons beta3L*eTzzL)*INV(alphaL); CCTK_REAL MadmL = - 0.01989436788648691697111047042156429525431*(-((Gt111*Gtlu111 + - Gt112*Gtlu112 + Gt113*Gtlu113 + Gt211*Gtlu121 + Gt212*Gtlu122 + - Gt213*Gtlu123 + Gt311*Gtlu131 + Gt312*Gtlu132 + Gt313*Gtlu133)*gtu11) + + 0.01989436788648691697111047042156429525431*((-(Gt111*Gtlu111) - + Gt112*Gtlu112 - Gt113*Gtlu113 - Gt211*Gtlu121 - Gt212*Gtlu122 - + Gt213*Gtlu123 - Gt311*Gtlu131 - Gt312*Gtlu132 - Gt313*Gtlu133)*gtu11 + (-(Gt122*Gtlu112) - Gt123*Gtlu113 - Gt222*Gtlu122 - Gt223*Gtlu123 - Gt322*Gtlu132 - Gt323*Gtlu133 - Gt111*Gtlu211 + Gt112*(-Gtlu111 - Gtlu212) - Gt113*Gtlu213 - Gt211*Gtlu221 + Gt212*(-Gtlu121 - Gtlu222) - Gt213*Gtlu223 - Gt311*Gtlu231 + Gt312*(-Gtlu131 - Gtlu232) - - Gt313*Gtlu233)*gtu21 - (Gt112*Gtlu211 + Gt122*Gtlu212 + Gt123*Gtlu213 + - Gt212*Gtlu221 + Gt222*Gtlu222 + Gt223*Gtlu223 + Gt312*Gtlu231 + - Gt322*Gtlu232 + Gt323*Gtlu233)*gtu22 + (-(Gt123*Gtlu112) - - Gt133*Gtlu113 - Gt223*Gtlu122 - Gt233*Gtlu123 - Gt323*Gtlu132 - - Gt333*Gtlu133 - Gt111*Gtlu311 - Gt112*Gtlu312 + Gt113*(-Gtlu111 - - Gtlu313) - Gt211*Gtlu321 - Gt212*Gtlu322 + Gt213*(-Gtlu121 - Gtlu323) - - Gt311*Gtlu331 - Gt312*Gtlu332 + Gt313*(-Gtlu131 - Gtlu333))*gtu31 + - (-(Gt113*Gtlu211) - Gt133*Gtlu213 - Gt213*Gtlu221 - Gt233*Gtlu223 - - Gt313*Gtlu231 - Gt333*Gtlu233 - Gt112*Gtlu311 - Gt122*Gtlu312 + - Gt123*(-Gtlu212 - Gtlu313) - Gt212*Gtlu321 - Gt222*Gtlu322 + - Gt223*(-Gtlu222 - Gtlu323) - Gt312*Gtlu331 - Gt322*Gtlu332 + - Gt323*(-Gtlu232 - Gtlu333))*gtu32 - (Gt113*Gtlu311 + Gt123*Gtlu312 + - Gt133*Gtlu313 + Gt213*Gtlu321 + Gt223*Gtlu322 + Gt233*Gtlu323 + - Gt313*Gtlu331 + Gt323*Gtlu332 + Gt333*Gtlu333)*gtu33 + trRt - ephi*trRt - + pow(ephi,5)*(2*Atm12*Atm21 + 2.*Atm13*Atm31 + 2.*Atm23*Atm32 + + Gt313*Gtlu233)*gtu21 + (-(Gt112*Gtlu211) - Gt122*Gtlu212 - + Gt123*Gtlu213 - Gt212*Gtlu221 - Gt222*Gtlu222 - Gt223*Gtlu223 - + Gt312*Gtlu231 - Gt322*Gtlu232 - Gt323*Gtlu233)*gtu22 + + (-(Gt123*Gtlu112) - Gt133*Gtlu113 - Gt223*Gtlu122 - Gt233*Gtlu123 - + Gt323*Gtlu132 - Gt333*Gtlu133 - Gt111*Gtlu311 - Gt112*Gtlu312 + + Gt113*(-Gtlu111 - Gtlu313) - Gt211*Gtlu321 - Gt212*Gtlu322 + + Gt213*(-Gtlu121 - Gtlu323) - Gt311*Gtlu331 - Gt312*Gtlu332 + + Gt313*(-Gtlu131 - Gtlu333))*gtu31 + (-(Gt113*Gtlu211) - Gt133*Gtlu213 - + Gt213*Gtlu221 - Gt233*Gtlu223 - Gt313*Gtlu231 - Gt333*Gtlu233 - + Gt112*Gtlu311 - Gt122*Gtlu312 + Gt123*(-Gtlu212 - Gtlu313) - + Gt212*Gtlu321 - Gt222*Gtlu322 + Gt223*(-Gtlu222 - Gtlu323) - + Gt312*Gtlu331 - Gt322*Gtlu332 + Gt323*(-Gtlu232 - Gtlu333))*gtu32 + + (-(Gt113*Gtlu311) - Gt123*Gtlu312 - Gt133*Gtlu313 - Gt213*Gtlu321 - + Gt223*Gtlu322 - Gt233*Gtlu323 - Gt313*Gtlu331 - Gt323*Gtlu332 - + Gt333*Gtlu333)*gtu33 + trRt - ephi*trRt + pow(ephi,5)*(2*Atm12*Atm21 + + 2.*Atm13*Atm31 + 2.*Atm23*Atm32 + 50.26548245743669181540229413247204614715*rho + SQR(Atm11) + SQR(Atm22) + SQR(Atm33) - 0.6666666666666666666666666666666666666667*SQR(trKL))); CCTK_REAL Jadm1L = - 0.01989436788648691697111047042156429525431*(2*Atm23 - 2*Atm32 + - (-(At11L*dgtu113) - 2*At12L*dgtu213 - At22L*dgtu223 - 2*At13L*dgtu313 - - 2*At23L*dgtu323 - At33L*dgtu333 + - 1.33333333333333333333333333333*PDstandardNth3trK + - 50.26548245743669181540229413247204614715*S3)*yL + (At11L*dgtu112 + - At22L*dgtu222 + 2*(At12L*dgtu212 + At13L*dgtu312 + At23L*dgtu322) + - At33L*dgtu332 - 1.33333333333333333333333333333*PDstandardNth2trK - - 50.26548245743669181540229413247204614715*S2)*zL)*pow(ephi,6); + ((-0.01989436788648691697111047042156429525431*(At11L*dgtu113 + + At22L*dgtu223 + At33L*dgtu333) + + 0.02652582384864922262814729389541906033908*PDstandardNth3trK + + 1.*S3)*yL - 0.03978873577297383394222094084312859050861*(Atm32 + + (At12L*dgtu213 + At13L*dgtu313 + At23L*dgtu323)*yL) + + (0.01989436788648691697111047042156429525431*(At11L*dgtu112 + + At22L*dgtu222 + At33L*dgtu332) - + 0.02652582384864922262814729389541906033908*PDstandardNth2trK - + 1.*S2)*zL + 0.03978873577297383394222094084312859050861*(Atm23 + + (At12L*dgtu212 + At13L*dgtu312 + At23L*dgtu322)*zL))*pow(ephi,6); CCTK_REAL Jadm2L = - 0.01989436788648691697111047042156429525431*(-2*Atm13 + 2*Atm31 + - (At11L*dgtu113 + At22L*dgtu223 + 2*(At12L*dgtu213 + At13L*dgtu313 + - At23L*dgtu323) + At33L*dgtu333 - - 1.33333333333333333333333333333*PDstandardNth3trK - - 50.26548245743669181540229413247204614715*S3)*xL + (-(At11L*dgtu111) - - 2*At12L*dgtu211 - At22L*dgtu221 - 2*At13L*dgtu311 - 2*At23L*dgtu321 - - At33L*dgtu331 + 1.33333333333333333333333333333*PDstandardNth1trK + - 50.26548245743669181540229413247204614715*S1)*zL)*pow(ephi,6); + ((0.01989436788648691697111047042156429525431*(At11L*dgtu113 + + At22L*dgtu223 + At33L*dgtu333) - + 0.02652582384864922262814729389541906033908*PDstandardNth3trK - + 1.*S3)*xL + 0.03978873577297383394222094084312859050861*(Atm31 + + (At12L*dgtu213 + At13L*dgtu313 + At23L*dgtu323)*xL) + + (-0.01989436788648691697111047042156429525431*(At11L*dgtu111 + + At22L*dgtu221 + At33L*dgtu331) + + 0.02652582384864922262814729389541906033908*PDstandardNth1trK + + 1.*S1)*zL - 0.03978873577297383394222094084312859050861*(Atm13 + + (At12L*dgtu211 + At13L*dgtu311 + At23L*dgtu321)*zL))*pow(ephi,6); CCTK_REAL Jadm3L = - 0.01989436788648691697111047042156429525431*(2*Atm12 - 2*Atm21 + - (-(At11L*dgtu112) - 2*At12L*dgtu212 - At22L*dgtu222 - 2*At13L*dgtu312 - - 2*At23L*dgtu322 - At33L*dgtu332 + - 1.33333333333333333333333333333*PDstandardNth2trK + - 50.26548245743669181540229413247204614715*S2)*xL + (At11L*dgtu111 + - At22L*dgtu221 + 2*(At12L*dgtu211 + At13L*dgtu311 + At23L*dgtu321) + - At33L*dgtu331 - 1.33333333333333333333333333333*PDstandardNth1trK - - 50.26548245743669181540229413247204614715*S1)*yL)*pow(ephi,6); + ((-0.01989436788648691697111047042156429525431*(At11L*dgtu112 + + At22L*dgtu222 + At33L*dgtu332) + + 0.02652582384864922262814729389541906033908*PDstandardNth2trK + + 1.*S2)*xL - 0.03978873577297383394222094084312859050861*(Atm21 + + (At12L*dgtu212 + At13L*dgtu312 + At23L*dgtu322)*xL) + + (0.01989436788648691697111047042156429525431*(At11L*dgtu111 + + At22L*dgtu221 + At33L*dgtu331) - + 0.02652582384864922262814729389541906033908*PDstandardNth1trK - + 1.*S1)*yL + 0.03978873577297383394222094084312859050861*(Atm12 + + (At12L*dgtu211 + At13L*dgtu311 + At23L*dgtu321)*yL))*pow(ephi,6); /* Copy local copies back to grid functions */ Jadm1[index] = Jadm1L; diff --git a/ML_WaveToyFO/interface.ccl b/ML_WaveToyFO/interface.ccl index e70550f..20aaeb3 100644 --- a/ML_WaveToyFO/interface.ccl +++ b/ML_WaveToyFO/interface.ccl @@ -18,6 +18,9 @@ USES FUNCTION MoLRegisterEvolved SUBROUTINE Diff_coeff(CCTK_POINTER_TO_CONST IN cctkGH, CCTK_INT IN dir, CCTK_INT IN nsize, CCTK_INT OUT ARRAY imin, CCTK_INT OUT ARRAY imax, CCTK_REAL OUT ARRAY q, CCTK_INT IN table_handle) USES FUNCTION Diff_coeff +CCTK_INT FUNCTION MultiPatch_GetMap(CCTK_POINTER_TO_CONST IN cctkGH) +USES FUNCTION MultiPatch_GetMap + CCTK_INT FUNCTION Boundary_SelectGroupForBC(CCTK_POINTER_TO_CONST IN GH, CCTK_INT IN faces, CCTK_INT IN boundary_width, CCTK_INT IN table_handle, CCTK_STRING IN group_name, CCTK_STRING IN bc_name) USES FUNCTION Boundary_SelectGroupForBC diff --git a/ML_WaveToyFO/src/Differencing.h b/ML_WaveToyFO/src/Differencing.h index 49ee0ba..cd495e5 100644 --- a/ML_WaveToyFO/src/Differencing.h +++ b/ML_WaveToyFO/src/Differencing.h @@ -1,12 +1,144 @@ -#define PDstandardNth1(u) (p1o12dx*(-8*(u)[di*(-1)+dj*(0)+dk*(0)] + 8*(u)[di*(1)+dj*(0)+dk*(0)] + (u)[di*(-2)+dj*(0)+dk*(0)] - (u)[di*(2)+dj*(0)+dk*(0)])) -#define PDstandardNth2(u) (p1o12dy*(-8*(u)[di*(0)+dj*(-1)+dk*(0)] + 8*(u)[di*(0)+dj*(1)+dk*(0)] + (u)[di*(0)+dj*(-2)+dk*(0)] - (u)[di*(0)+dj*(2)+dk*(0)])) -#define PDstandardNth3(u) (p1o12dz*(-8*(u)[di*(0)+dj*(0)+dk*(-1)] + 8*(u)[di*(0)+dj*(0)+dk*(1)] + (u)[di*(0)+dj*(0)+dk*(-2)] - (u)[di*(0)+dj*(0)+dk*(2)])) -#define PDstandardNth11(u) (pm1o12dx2*(30*(u)[di*(0)+dj*(0)+dk*(0)] - 16*((u)[di*(-1)+dj*(0)+dk*(0)] + (u)[di*(1)+dj*(0)+dk*(0)]) + (u)[di*(-2)+dj*(0)+dk*(0)] + (u)[di*(2)+dj*(0)+dk*(0)])) -#define PDstandardNth22(u) (pm1o12dy2*(30*(u)[di*(0)+dj*(0)+dk*(0)] - 16*((u)[di*(0)+dj*(-1)+dk*(0)] + (u)[di*(0)+dj*(1)+dk*(0)]) + (u)[di*(0)+dj*(-2)+dk*(0)] + (u)[di*(0)+dj*(2)+dk*(0)])) -#define PDstandardNth33(u) (pm1o12dz2*(30*(u)[di*(0)+dj*(0)+dk*(0)] - 16*((u)[di*(0)+dj*(0)+dk*(-1)] + (u)[di*(0)+dj*(0)+dk*(1)]) + (u)[di*(0)+dj*(0)+dk*(-2)] + (u)[di*(0)+dj*(0)+dk*(2)])) -#define PDstandardNth12(u) (p1o144dxdy*(-64*((u)[di*(-1)+dj*(1)+dk*(0)] + (u)[di*(1)+dj*(-1)+dk*(0)]) + 64*((u)[di*(-1)+dj*(-1)+dk*(0)] + (u)[di*(1)+dj*(1)+dk*(0)]) + 8*((u)[di*(-1)+dj*(2)+dk*(0)] + (u)[di*(1)+dj*(-2)+dk*(0)] + (u)[di*(-2)+dj*(1)+dk*(0)] + (u)[di*(2)+dj*(-1)+dk*(0)]) - 8*((u)[di*(-1)+dj*(-2)+dk*(0)] + (u)[di*(1)+dj*(2)+dk*(0)] + (u)[di*(-2)+dj*(-1)+dk*(0)] + (u)[di*(2)+dj*(1)+dk*(0)]) + (u)[di*(-2)+dj*(-2)+dk*(0)] - (u)[di*(-2)+dj*(2)+dk*(0)] - (u)[di*(2)+dj*(-2)+dk*(0)] + (u)[di*(2)+dj*(2)+dk*(0)])) -#define PDstandardNth13(u) (p1o144dxdz*(-64*((u)[di*(-1)+dj*(0)+dk*(1)] + (u)[di*(1)+dj*(0)+dk*(-1)]) + 64*((u)[di*(-1)+dj*(0)+dk*(-1)] + (u)[di*(1)+dj*(0)+dk*(1)]) + 8*((u)[di*(-1)+dj*(0)+dk*(2)] + (u)[di*(1)+dj*(0)+dk*(-2)] + (u)[di*(-2)+dj*(0)+dk*(1)] + (u)[di*(2)+dj*(0)+dk*(-1)]) - 8*((u)[di*(-1)+dj*(0)+dk*(-2)] + (u)[di*(1)+dj*(0)+dk*(2)] + (u)[di*(-2)+dj*(0)+dk*(-1)] + (u)[di*(2)+dj*(0)+dk*(1)]) + (u)[di*(-2)+dj*(0)+dk*(-2)] - (u)[di*(-2)+dj*(0)+dk*(2)] - (u)[di*(2)+dj*(0)+dk*(-2)] + (u)[di*(2)+dj*(0)+dk*(2)])) -#define PDstandardNth21(u) (p1o144dxdy*(-64*((u)[di*(-1)+dj*(1)+dk*(0)] + (u)[di*(1)+dj*(-1)+dk*(0)]) + 64*((u)[di*(-1)+dj*(-1)+dk*(0)] + (u)[di*(1)+dj*(1)+dk*(0)]) + 8*((u)[di*(-1)+dj*(2)+dk*(0)] + (u)[di*(1)+dj*(-2)+dk*(0)] + (u)[di*(-2)+dj*(1)+dk*(0)] + (u)[di*(2)+dj*(-1)+dk*(0)]) - 8*((u)[di*(-1)+dj*(-2)+dk*(0)] + (u)[di*(1)+dj*(2)+dk*(0)] + (u)[di*(-2)+dj*(-1)+dk*(0)] + (u)[di*(2)+dj*(1)+dk*(0)]) + (u)[di*(-2)+dj*(-2)+dk*(0)] - (u)[di*(-2)+dj*(2)+dk*(0)] - (u)[di*(2)+dj*(-2)+dk*(0)] + (u)[di*(2)+dj*(2)+dk*(0)])) -#define PDstandardNth23(u) (p1o144dydz*(-64*((u)[di*(0)+dj*(-1)+dk*(1)] + (u)[di*(0)+dj*(1)+dk*(-1)]) + 64*((u)[di*(0)+dj*(-1)+dk*(-1)] + (u)[di*(0)+dj*(1)+dk*(1)]) + 8*((u)[di*(0)+dj*(-1)+dk*(2)] + (u)[di*(0)+dj*(1)+dk*(-2)] + (u)[di*(0)+dj*(-2)+dk*(1)] + (u)[di*(0)+dj*(2)+dk*(-1)]) - 8*((u)[di*(0)+dj*(-1)+dk*(-2)] + (u)[di*(0)+dj*(1)+dk*(2)] + (u)[di*(0)+dj*(-2)+dk*(-1)] + (u)[di*(0)+dj*(2)+dk*(1)]) + (u)[di*(0)+dj*(-2)+dk*(-2)] - (u)[di*(0)+dj*(-2)+dk*(2)] - (u)[di*(0)+dj*(2)+dk*(-2)] + (u)[di*(0)+dj*(2)+dk*(2)])) -#define PDstandardNth31(u) (p1o144dxdz*(-64*((u)[di*(-1)+dj*(0)+dk*(1)] + (u)[di*(1)+dj*(0)+dk*(-1)]) + 64*((u)[di*(-1)+dj*(0)+dk*(-1)] + (u)[di*(1)+dj*(0)+dk*(1)]) + 8*((u)[di*(-1)+dj*(0)+dk*(2)] + (u)[di*(1)+dj*(0)+dk*(-2)] + (u)[di*(-2)+dj*(0)+dk*(1)] + (u)[di*(2)+dj*(0)+dk*(-1)]) - 8*((u)[di*(-1)+dj*(0)+dk*(-2)] + (u)[di*(1)+dj*(0)+dk*(2)] + (u)[di*(-2)+dj*(0)+dk*(-1)] + (u)[di*(2)+dj*(0)+dk*(1)]) + (u)[di*(-2)+dj*(0)+dk*(-2)] - (u)[di*(-2)+dj*(0)+dk*(2)] - (u)[di*(2)+dj*(0)+dk*(-2)] + (u)[di*(2)+dj*(0)+dk*(2)])) -#define PDstandardNth32(u) (p1o144dydz*(-64*((u)[di*(0)+dj*(-1)+dk*(1)] + (u)[di*(0)+dj*(1)+dk*(-1)]) + 64*((u)[di*(0)+dj*(-1)+dk*(-1)] + (u)[di*(0)+dj*(1)+dk*(1)]) + 8*((u)[di*(0)+dj*(-1)+dk*(2)] + (u)[di*(0)+dj*(1)+dk*(-2)] + (u)[di*(0)+dj*(-2)+dk*(1)] + (u)[di*(0)+dj*(2)+dk*(-1)]) - 8*((u)[di*(0)+dj*(-1)+dk*(-2)] + (u)[di*(0)+dj*(1)+dk*(2)] + (u)[di*(0)+dj*(-2)+dk*(-1)] + (u)[di*(0)+dj*(2)+dk*(1)]) + (u)[di*(0)+dj*(-2)+dk*(-2)] - (u)[di*(0)+dj*(-2)+dk*(2)] - (u)[di*(0)+dj*(2)+dk*(-2)] + (u)[di*(0)+dj*(2)+dk*(2)])) +#ifndef KRANC_DIFF_FUNCTIONS +# define PDstandardNth1(u) ((-8*(*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(0)]) + 8*(*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(0)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(0)]))*p1o12dx) +#else +# define PDstandardNth1(u) (PDstandardNth1_impl(u,p1o12dx,cdj,cdk)) +static CCTK_REAL PDstandardNth1_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o12dx, ptrdiff_t const cdj, ptrdiff_t const cdk) CCTK_ATTRIBUTE_NOINLINE CCTK_ATTRIBUTE_UNUSED; +static CCTK_REAL PDstandardNth1_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o12dx, ptrdiff_t const cdj, ptrdiff_t const cdk) +{ + ptrdiff_t const cdi=sizeof(CCTK_REAL); + return (-8*(*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(0)]) + 8*(*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(0)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(0)]))*p1o12dx; +} +#endif + +#ifndef KRANC_DIFF_FUNCTIONS +# define PDstandardNth2(u) ((-8*(*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(0)]) + 8*(*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(0)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(0)]))*p1o12dy) +#else +# define PDstandardNth2(u) (PDstandardNth2_impl(u,p1o12dy,cdj,cdk)) +static CCTK_REAL PDstandardNth2_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o12dy, ptrdiff_t const cdj, ptrdiff_t const cdk) CCTK_ATTRIBUTE_NOINLINE CCTK_ATTRIBUTE_UNUSED; +static CCTK_REAL PDstandardNth2_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o12dy, ptrdiff_t const cdj, ptrdiff_t const cdk) +{ + ptrdiff_t const cdi=sizeof(CCTK_REAL); + return (-8*(*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(0)]) + 8*(*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(0)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(0)]))*p1o12dy; +} +#endif + +#ifndef KRANC_DIFF_FUNCTIONS +# define PDstandardNth3(u) ((-8*(*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(-1)]) + 8*(*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(-2)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(2)]))*p1o12dz) +#else +# define PDstandardNth3(u) (PDstandardNth3_impl(u,p1o12dz,cdj,cdk)) +static CCTK_REAL PDstandardNth3_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o12dz, ptrdiff_t const cdj, ptrdiff_t const cdk) CCTK_ATTRIBUTE_NOINLINE CCTK_ATTRIBUTE_UNUSED; +static CCTK_REAL PDstandardNth3_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o12dz, ptrdiff_t const cdj, ptrdiff_t const cdk) +{ + ptrdiff_t const cdi=sizeof(CCTK_REAL); + return (-8*(*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(-1)]) + 8*(*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(-2)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(2)]))*p1o12dz; +} +#endif + +#ifndef KRANC_DIFF_FUNCTIONS +# define PDstandardNth11(u) ((30*(*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(0)]) - 16*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(0)])) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(0)]))*pm1o12dx2) +#else +# define PDstandardNth11(u) (PDstandardNth11_impl(u,pm1o12dx2,cdj,cdk)) +static CCTK_REAL PDstandardNth11_impl(CCTK_REAL const* restrict const u, CCTK_REAL const pm1o12dx2, ptrdiff_t const cdj, ptrdiff_t const cdk) CCTK_ATTRIBUTE_NOINLINE CCTK_ATTRIBUTE_UNUSED; +static CCTK_REAL PDstandardNth11_impl(CCTK_REAL const* restrict const u, CCTK_REAL const pm1o12dx2, ptrdiff_t const cdj, ptrdiff_t const cdk) +{ + ptrdiff_t const cdi=sizeof(CCTK_REAL); + return (30*(*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(0)]) - 16*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(0)])) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(0)]))*pm1o12dx2; +} +#endif + +#ifndef KRANC_DIFF_FUNCTIONS +# define PDstandardNth22(u) ((30*(*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(0)]) - 16*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(0)])) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(0)]))*pm1o12dy2) +#else +# define PDstandardNth22(u) (PDstandardNth22_impl(u,pm1o12dy2,cdj,cdk)) +static CCTK_REAL PDstandardNth22_impl(CCTK_REAL const* restrict const u, CCTK_REAL const pm1o12dy2, ptrdiff_t const cdj, ptrdiff_t const cdk) CCTK_ATTRIBUTE_NOINLINE CCTK_ATTRIBUTE_UNUSED; +static CCTK_REAL PDstandardNth22_impl(CCTK_REAL const* restrict const u, CCTK_REAL const pm1o12dy2, ptrdiff_t const cdj, ptrdiff_t const cdk) +{ + ptrdiff_t const cdi=sizeof(CCTK_REAL); + return (30*(*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(0)]) - 16*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(0)])) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(0)]))*pm1o12dy2; +} +#endif + +#ifndef KRANC_DIFF_FUNCTIONS +# define PDstandardNth33(u) ((30*(*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(0)]) - 16*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(-1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(1)])) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(2)]))*pm1o12dz2) +#else +# define PDstandardNth33(u) (PDstandardNth33_impl(u,pm1o12dz2,cdj,cdk)) +static CCTK_REAL PDstandardNth33_impl(CCTK_REAL const* restrict const u, CCTK_REAL const pm1o12dz2, ptrdiff_t const cdj, ptrdiff_t const cdk) CCTK_ATTRIBUTE_NOINLINE CCTK_ATTRIBUTE_UNUSED; +static CCTK_REAL PDstandardNth33_impl(CCTK_REAL const* restrict const u, CCTK_REAL const pm1o12dz2, ptrdiff_t const cdj, ptrdiff_t const cdk) +{ + ptrdiff_t const cdi=sizeof(CCTK_REAL); + return (30*(*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(0)]) - 16*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(-1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(1)])) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(0)+cdk*(2)]))*pm1o12dz2; +} +#endif + +#ifndef KRANC_DIFF_FUNCTIONS +# define PDstandardNth12(u) ((-64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(-1)+cdk*(0)])) + 64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(-1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(1)+cdk*(0)])) + 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(-2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(-1)+cdk*(0)])) - 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(-2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(-1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(1)+cdk*(0)])) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(-2)+cdk*(0)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(2)+cdk*(0)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(-2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(2)+cdk*(0)]))*p1o144dxdy) +#else +# define PDstandardNth12(u) (PDstandardNth12_impl(u,p1o144dxdy,cdj,cdk)) +static CCTK_REAL PDstandardNth12_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o144dxdy, ptrdiff_t const cdj, ptrdiff_t const cdk) CCTK_ATTRIBUTE_NOINLINE CCTK_ATTRIBUTE_UNUSED; +static CCTK_REAL PDstandardNth12_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o144dxdy, ptrdiff_t const cdj, ptrdiff_t const cdk) +{ + ptrdiff_t const cdi=sizeof(CCTK_REAL); + return (-64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(-1)+cdk*(0)])) + 64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(-1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(1)+cdk*(0)])) + 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(-2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(-1)+cdk*(0)])) - 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(-2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(-1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(1)+cdk*(0)])) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(-2)+cdk*(0)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(2)+cdk*(0)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(-2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(2)+cdk*(0)]))*p1o144dxdy; +} +#endif + +#ifndef KRANC_DIFF_FUNCTIONS +# define PDstandardNth13(u) ((-64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(-1)])) + 64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(-1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(1)])) + 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(-1)])) - 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(-1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(1)])) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(-2)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(2)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(2)]))*p1o144dxdz) +#else +# define PDstandardNth13(u) (PDstandardNth13_impl(u,p1o144dxdz,cdj,cdk)) +static CCTK_REAL PDstandardNth13_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o144dxdz, ptrdiff_t const cdj, ptrdiff_t const cdk) CCTK_ATTRIBUTE_NOINLINE CCTK_ATTRIBUTE_UNUSED; +static CCTK_REAL PDstandardNth13_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o144dxdz, ptrdiff_t const cdj, ptrdiff_t const cdk) +{ + ptrdiff_t const cdi=sizeof(CCTK_REAL); + return (-64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(-1)])) + 64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(-1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(1)])) + 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(-1)])) - 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(-1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(1)])) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(-2)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(2)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(2)]))*p1o144dxdz; +} +#endif + +#ifndef KRANC_DIFF_FUNCTIONS +# define PDstandardNth21(u) ((-64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(-1)+cdk*(0)])) + 64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(-1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(1)+cdk*(0)])) + 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(-2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(-1)+cdk*(0)])) - 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(-2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(-1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(1)+cdk*(0)])) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(-2)+cdk*(0)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(2)+cdk*(0)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(-2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(2)+cdk*(0)]))*p1o144dxdy) +#else +# define PDstandardNth21(u) (PDstandardNth21_impl(u,p1o144dxdy,cdj,cdk)) +static CCTK_REAL PDstandardNth21_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o144dxdy, ptrdiff_t const cdj, ptrdiff_t const cdk) CCTK_ATTRIBUTE_NOINLINE CCTK_ATTRIBUTE_UNUSED; +static CCTK_REAL PDstandardNth21_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o144dxdy, ptrdiff_t const cdj, ptrdiff_t const cdk) +{ + ptrdiff_t const cdi=sizeof(CCTK_REAL); + return (-64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(-1)+cdk*(0)])) + 64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(-1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(1)+cdk*(0)])) + 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(-2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(-1)+cdk*(0)])) - 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(-2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(-1)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(1)+cdk*(0)])) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(-2)+cdk*(0)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(2)+cdk*(0)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(-2)+cdk*(0)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(2)+cdk*(0)]))*p1o144dxdy; +} +#endif + +#ifndef KRANC_DIFF_FUNCTIONS +# define PDstandardNth23(u) ((-64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(-1)])) + 64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(-1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(1)])) + 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(-1)])) - 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(-1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(1)])) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(-2)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(2)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(2)]))*p1o144dydz) +#else +# define PDstandardNth23(u) (PDstandardNth23_impl(u,p1o144dydz,cdj,cdk)) +static CCTK_REAL PDstandardNth23_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o144dydz, ptrdiff_t const cdj, ptrdiff_t const cdk) CCTK_ATTRIBUTE_NOINLINE CCTK_ATTRIBUTE_UNUSED; +static CCTK_REAL PDstandardNth23_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o144dydz, ptrdiff_t const cdj, ptrdiff_t const cdk) +{ + ptrdiff_t const cdi=sizeof(CCTK_REAL); + return (-64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(-1)])) + 64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(-1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(1)])) + 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(-1)])) - 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(-1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(1)])) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(-2)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(2)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(2)]))*p1o144dydz; +} +#endif + +#ifndef KRANC_DIFF_FUNCTIONS +# define PDstandardNth31(u) ((-64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(-1)])) + 64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(-1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(1)])) + 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(-1)])) - 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(-1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(1)])) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(-2)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(2)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(2)]))*p1o144dxdz) +#else +# define PDstandardNth31(u) (PDstandardNth31_impl(u,p1o144dxdz,cdj,cdk)) +static CCTK_REAL PDstandardNth31_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o144dxdz, ptrdiff_t const cdj, ptrdiff_t const cdk) CCTK_ATTRIBUTE_NOINLINE CCTK_ATTRIBUTE_UNUSED; +static CCTK_REAL PDstandardNth31_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o144dxdz, ptrdiff_t const cdj, ptrdiff_t const cdk) +{ + ptrdiff_t const cdi=sizeof(CCTK_REAL); + return (-64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(-1)])) + 64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(-1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(1)])) + 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(-1)])) - 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(-1)+cdj*(0)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(1)+cdj*(0)+cdk*(2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(-1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(1)])) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(-2)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(-2)+cdj*(0)+cdk*(2)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(2)+cdj*(0)+cdk*(2)]))*p1o144dxdz; +} +#endif + +#ifndef KRANC_DIFF_FUNCTIONS +# define PDstandardNth32(u) ((-64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(-1)])) + 64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(-1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(1)])) + 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(-1)])) - 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(-1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(1)])) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(-2)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(2)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(2)]))*p1o144dydz) +#else +# define PDstandardNth32(u) (PDstandardNth32_impl(u,p1o144dydz,cdj,cdk)) +static CCTK_REAL PDstandardNth32_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o144dydz, ptrdiff_t const cdj, ptrdiff_t const cdk) CCTK_ATTRIBUTE_NOINLINE CCTK_ATTRIBUTE_UNUSED; +static CCTK_REAL PDstandardNth32_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o144dydz, ptrdiff_t const cdj, ptrdiff_t const cdk) +{ + ptrdiff_t const cdi=sizeof(CCTK_REAL); + return (-64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(-1)])) + 64*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(-1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(1)])) + 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(-1)])) - 8*((*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-1)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(1)+cdk*(2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(-1)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(1)])) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(-2)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(-2)+cdk*(2)]) - (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(-2)]) + (*(CCTK_REAL const*)&((char const*)(u))[cdi*(0)+cdj*(2)+cdk*(2)]))*p1o144dydz; +} +#endif + diff --git a/ML_WaveToyFO/src/WTFO_Gaussian.cc b/ML_WaveToyFO/src/WTFO_Gaussian.cc index 30f3101..6711448 100644 --- a/ML_WaveToyFO/src/WTFO_Gaussian.cc +++ b/ML_WaveToyFO/src/WTFO_Gaussian.cc @@ -6,6 +6,7 @@ #include <math.h> #include <stdio.h> #include <stdlib.h> +#include <string.h> #include "cctk.h" #include "cctk_Arguments.h" #include "cctk_Parameters.h" @@ -41,15 +42,20 @@ static void WTFO_Gaussian_Body(cGH const * restrict const cctkGH, int const dir, const char *groups[] = {"ML_WaveToyFO::WT_rho","ML_WaveToyFO::WT_u","ML_WaveToyFO::WT_v"}; GenericFD_AssertGroupStorage(cctkGH, "WTFO_Gaussian", 3, 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); + ptrdiff_t const cdi = sizeof(CCTK_REAL) * di; + ptrdiff_t const cdj = sizeof(CCTK_REAL) * dj; + ptrdiff_t const cdk = sizeof(CCTK_REAL) * dk; 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 dt = ToReal(CCTK_DELTA_TIME); CCTK_REAL const dxi = INV(dx); CCTK_REAL const dyi = INV(dy); CCTK_REAL const dzi = INV(dz); @@ -83,6 +89,8 @@ static void WTFO_Gaussian_Body(cGH const * restrict const cctkGH, int const dir, /* Assign local copies of grid functions */ + + /* Include user supplied include files */ /* Precompute derivatives */ @@ -98,7 +106,6 @@ static void WTFO_Gaussian_Body(cGH const * restrict const cctkGH, int const dir, CCTK_REAL rhoL = 0; - /* Copy local copies back to grid functions */ rho[index] = rhoL; u[index] = uL; diff --git a/ML_WaveToyFO/src/WTFO_RHS.cc b/ML_WaveToyFO/src/WTFO_RHS.cc index 208608d..7141c11 100644 --- a/ML_WaveToyFO/src/WTFO_RHS.cc +++ b/ML_WaveToyFO/src/WTFO_RHS.cc @@ -6,6 +6,7 @@ #include <math.h> #include <stdio.h> #include <stdlib.h> +#include <string.h> #include "cctk.h" #include "cctk_Arguments.h" #include "cctk_Parameters.h" @@ -59,15 +60,21 @@ static void WTFO_RHS_Body(cGH const * restrict const cctkGH, int const dir, int const char *groups[] = {"ML_WaveToyFO::WT_rho","ML_WaveToyFO::WT_rhorhs","ML_WaveToyFO::WT_urhs","ML_WaveToyFO::WT_v","ML_WaveToyFO::WT_vrhs"}; GenericFD_AssertGroupStorage(cctkGH, "WTFO_RHS", 5, groups); + GenericFD_EnsureStencilFits(cctkGH, "WTFO_RHS", 2, 2, 2); + /* 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); + ptrdiff_t const cdi = sizeof(CCTK_REAL) * di; + ptrdiff_t const cdj = sizeof(CCTK_REAL) * dj; + ptrdiff_t const cdk = sizeof(CCTK_REAL) * dk; 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 dt = ToReal(CCTK_DELTA_TIME); CCTK_REAL const dxi = INV(dx); CCTK_REAL const dyi = INV(dy); CCTK_REAL const dzi = INV(dz); @@ -100,11 +107,13 @@ static void WTFO_RHS_Body(cGH const * restrict const cctkGH, int const dir, int ptrdiff_t const index = di*i + dj*j + dk*k; /* Assign local copies of grid functions */ + CCTK_REAL rhoL = rho[index]; CCTK_REAL v1L = v1[index]; CCTK_REAL v2L = v2[index]; CCTK_REAL v3L = v3[index]; + /* Include user supplied include files */ /* Precompute derivatives */ @@ -127,7 +136,6 @@ static void WTFO_RHS_Body(cGH const * restrict const cctkGH, int const dir, int CCTK_REAL v3rhsL = PDstandardNth3rho; - /* Copy local copies back to grid functions */ rhorhs[index] = rhorhsL; urhs[index] = urhsL; diff --git a/ML_WaveToyFO/src/WTFO_constraints.cc b/ML_WaveToyFO/src/WTFO_constraints.cc index 46748ad..2b3db6a 100644 --- a/ML_WaveToyFO/src/WTFO_constraints.cc +++ b/ML_WaveToyFO/src/WTFO_constraints.cc @@ -6,6 +6,7 @@ #include <math.h> #include <stdio.h> #include <stdlib.h> +#include <string.h> #include "cctk.h" #include "cctk_Arguments.h" #include "cctk_Parameters.h" @@ -53,15 +54,21 @@ static void WTFO_constraints_Body(cGH const * restrict const cctkGH, int const d const char *groups[] = {"ML_WaveToyFO::WT_v","ML_WaveToyFO::WT_w"}; GenericFD_AssertGroupStorage(cctkGH, "WTFO_constraints", 2, groups); + GenericFD_EnsureStencilFits(cctkGH, "WTFO_constraints", 2, 2, 2); + /* 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); + ptrdiff_t const cdi = sizeof(CCTK_REAL) * di; + ptrdiff_t const cdj = sizeof(CCTK_REAL) * dj; + ptrdiff_t const cdk = sizeof(CCTK_REAL) * dk; 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 dt = ToReal(CCTK_DELTA_TIME); CCTK_REAL const dxi = INV(dx); CCTK_REAL const dyi = INV(dy); CCTK_REAL const dzi = INV(dz); @@ -94,10 +101,12 @@ static void WTFO_constraints_Body(cGH const * restrict const cctkGH, int const d ptrdiff_t const index = di*i + dj*j + dk*k; /* Assign local copies of grid functions */ + CCTK_REAL v1L = v1[index]; CCTK_REAL v2L = v2[index]; CCTK_REAL v3L = v3[index]; + /* Include user supplied include files */ /* Precompute derivatives */ @@ -115,7 +124,6 @@ static void WTFO_constraints_Body(cGH const * restrict const cctkGH, int const d CCTK_REAL w3L = -PDstandardNth1v2 + PDstandardNth2v1; - /* Copy local copies back to grid functions */ w1[index] = w1L; w2[index] = w2L; |