diff options
Diffstat (limited to 'src/psis_calc_4th.cc')
-rw-r--r-- | src/psis_calc_4th.cc | 376 |
1 files changed, 321 insertions, 55 deletions
diff --git a/src/psis_calc_4th.cc b/src/psis_calc_4th.cc index 9aa697e..d6fc90d 100644 --- a/src/psis_calc_4th.cc +++ b/src/psis_calc_4th.cc @@ -57,7 +57,24 @@ static void psis_calc_4th_Body(cGH const * restrict const cctkGH, int const dir, const char *groups[] = {"admbase::curv","admbase::metric","grid::coordinates","WeylScal4::Psi4i_group","WeylScal4::Psi4r_group"}; GenericFD_AssertGroupStorage(cctkGH, "psis_calc_4th", 5, groups); - GenericFD_EnsureStencilFits(cctkGH, "psis_calc_4th", 2, 2, 2); + switch(fdOrder) + { + case 2: + GenericFD_EnsureStencilFits(cctkGH, "psis_calc_4th", 2, 2, 2); + break; + + case 4: + GenericFD_EnsureStencilFits(cctkGH, "psis_calc_4th", 2, 2, 2); + break; + + case 6: + GenericFD_EnsureStencilFits(cctkGH, "psis_calc_4th", 2, 2, 2); + break; + + case 8: + GenericFD_EnsureStencilFits(cctkGH, "psis_calc_4th", 2, 2, 2); + break; + } /* Include user-supplied include files */ @@ -91,12 +108,30 @@ static void psis_calc_4th_Body(cGH const * restrict const cctkGH, int const dir, 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 p1o180dx2 = 0.00555555555555555555555555555556*INV(SQR(dx)); + CCTK_REAL const p1o180dy2 = 0.00555555555555555555555555555556*INV(SQR(dy)); + CCTK_REAL const p1o180dz2 = 0.00555555555555555555555555555556*INV(SQR(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 p1o3600dxdy = 0.000277777777777777777777777777778*INV(dx)*INV(dy); + CCTK_REAL const p1o3600dxdz = 0.000277777777777777777777777777778*INV(dx)*INV(dz); + CCTK_REAL const p1o3600dydz = 0.000277777777777777777777777777778*INV(dy)*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 p1o5040dx2 = 0.000198412698412698412698412698413*INV(SQR(dx)); + CCTK_REAL const p1o5040dy2 = 0.000198412698412698412698412698413*INV(SQR(dy)); + CCTK_REAL const p1o5040dz2 = 0.000198412698412698412698412698413*INV(SQR(dz)); + CCTK_REAL const p1o60dx = 0.0166666666666666666666666666667*INV(dx); + CCTK_REAL const p1o60dy = 0.0166666666666666666666666666667*INV(dy); + CCTK_REAL const p1o60dz = 0.0166666666666666666666666666667*INV(dz); + CCTK_REAL const p1o705600dxdy = 1.41723356009070294784580498866e-6*INV(dx)*INV(dy); + CCTK_REAL const p1o705600dxdz = 1.41723356009070294784580498866e-6*INV(dx)*INV(dz); + CCTK_REAL const p1o705600dydz = 1.41723356009070294784580498866e-6*INV(dy)*INV(dz); + CCTK_REAL const p1o840dx = 0.00119047619047619047619047619048*INV(dx); + CCTK_REAL const p1o840dy = 0.00119047619047619047619047619048*INV(dy); + CCTK_REAL const p1o840dz = 0.00119047619047619047619047619048*INV(dz); CCTK_REAL const p1odx = INV(dx); CCTK_REAL const p1odx2 = INV(SQR(dx)); CCTK_REAL const p1odxdy = INV(dx)*INV(dy); @@ -143,60 +178,291 @@ static void psis_calc_4th_Body(cGH const * restrict const cctkGH, int const dir, /* 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]); + CCTK_REAL PDstandard4th1gxx; + CCTK_REAL PDstandard4th2gxx; + CCTK_REAL PDstandard4th3gxx; + CCTK_REAL PDstandard4th22gxx; + CCTK_REAL PDstandard4th33gxx; + CCTK_REAL PDstandard4th23gxx; + CCTK_REAL PDstandard4th1gxy; + CCTK_REAL PDstandard4th2gxy; + CCTK_REAL PDstandard4th3gxy; + CCTK_REAL PDstandard4th33gxy; + CCTK_REAL PDstandard4th12gxy; + CCTK_REAL PDstandard4th13gxy; + CCTK_REAL PDstandard4th23gxy; + CCTK_REAL PDstandard4th1gxz; + CCTK_REAL PDstandard4th2gxz; + CCTK_REAL PDstandard4th3gxz; + CCTK_REAL PDstandard4th22gxz; + CCTK_REAL PDstandard4th12gxz; + CCTK_REAL PDstandard4th13gxz; + CCTK_REAL PDstandard4th23gxz; + CCTK_REAL PDstandard4th1gyy; + CCTK_REAL PDstandard4th2gyy; + CCTK_REAL PDstandard4th3gyy; + CCTK_REAL PDstandard4th11gyy; + CCTK_REAL PDstandard4th33gyy; + CCTK_REAL PDstandard4th13gyy; + CCTK_REAL PDstandard4th1gyz; + CCTK_REAL PDstandard4th2gyz; + CCTK_REAL PDstandard4th3gyz; + CCTK_REAL PDstandard4th11gyz; + CCTK_REAL PDstandard4th12gyz; + CCTK_REAL PDstandard4th13gyz; + CCTK_REAL PDstandard4th23gyz; + CCTK_REAL PDstandard4th1gzz; + CCTK_REAL PDstandard4th2gzz; + CCTK_REAL PDstandard4th3gzz; + CCTK_REAL PDstandard4th11gzz; + CCTK_REAL PDstandard4th22gzz; + CCTK_REAL PDstandard4th12gzz; + CCTK_REAL PDstandard4th2kxx; + CCTK_REAL PDstandard4th3kxx; + CCTK_REAL PDstandard4th1kxy; + CCTK_REAL PDstandard4th2kxy; + CCTK_REAL PDstandard4th3kxy; + CCTK_REAL PDstandard4th1kxz; + CCTK_REAL PDstandard4th2kxz; + CCTK_REAL PDstandard4th3kxz; + CCTK_REAL PDstandard4th1kyy; + CCTK_REAL PDstandard4th3kyy; + CCTK_REAL PDstandard4th1kyz; + CCTK_REAL PDstandard4th2kyz; + CCTK_REAL PDstandard4th3kyz; + CCTK_REAL PDstandard4th1kzz; + CCTK_REAL PDstandard4th2kzz; + + switch(fdOrder) + { + case 2: + PDstandard4th1gxx = PDstandard4th1(&gxx[index]); + PDstandard4th2gxx = PDstandard4th2(&gxx[index]); + PDstandard4th3gxx = PDstandard4th3(&gxx[index]); + PDstandard4th22gxx = PDstandard4th22(&gxx[index]); + PDstandard4th33gxx = PDstandard4th33(&gxx[index]); + PDstandard4th23gxx = PDstandard4th23(&gxx[index]); + PDstandard4th1gxy = PDstandard4th1(&gxy[index]); + PDstandard4th2gxy = PDstandard4th2(&gxy[index]); + PDstandard4th3gxy = PDstandard4th3(&gxy[index]); + PDstandard4th33gxy = PDstandard4th33(&gxy[index]); + PDstandard4th12gxy = PDstandard4th12(&gxy[index]); + PDstandard4th13gxy = PDstandard4th13(&gxy[index]); + PDstandard4th23gxy = PDstandard4th23(&gxy[index]); + PDstandard4th1gxz = PDstandard4th1(&gxz[index]); + PDstandard4th2gxz = PDstandard4th2(&gxz[index]); + PDstandard4th3gxz = PDstandard4th3(&gxz[index]); + PDstandard4th22gxz = PDstandard4th22(&gxz[index]); + PDstandard4th12gxz = PDstandard4th12(&gxz[index]); + PDstandard4th13gxz = PDstandard4th13(&gxz[index]); + PDstandard4th23gxz = PDstandard4th23(&gxz[index]); + PDstandard4th1gyy = PDstandard4th1(&gyy[index]); + PDstandard4th2gyy = PDstandard4th2(&gyy[index]); + PDstandard4th3gyy = PDstandard4th3(&gyy[index]); + PDstandard4th11gyy = PDstandard4th11(&gyy[index]); + PDstandard4th33gyy = PDstandard4th33(&gyy[index]); + PDstandard4th13gyy = PDstandard4th13(&gyy[index]); + PDstandard4th1gyz = PDstandard4th1(&gyz[index]); + PDstandard4th2gyz = PDstandard4th2(&gyz[index]); + PDstandard4th3gyz = PDstandard4th3(&gyz[index]); + PDstandard4th11gyz = PDstandard4th11(&gyz[index]); + PDstandard4th12gyz = PDstandard4th12(&gyz[index]); + PDstandard4th13gyz = PDstandard4th13(&gyz[index]); + PDstandard4th23gyz = PDstandard4th23(&gyz[index]); + PDstandard4th1gzz = PDstandard4th1(&gzz[index]); + PDstandard4th2gzz = PDstandard4th2(&gzz[index]); + PDstandard4th3gzz = PDstandard4th3(&gzz[index]); + PDstandard4th11gzz = PDstandard4th11(&gzz[index]); + PDstandard4th22gzz = PDstandard4th22(&gzz[index]); + PDstandard4th12gzz = PDstandard4th12(&gzz[index]); + PDstandard4th2kxx = PDstandard4th2(&kxx[index]); + PDstandard4th3kxx = PDstandard4th3(&kxx[index]); + PDstandard4th1kxy = PDstandard4th1(&kxy[index]); + PDstandard4th2kxy = PDstandard4th2(&kxy[index]); + PDstandard4th3kxy = PDstandard4th3(&kxy[index]); + PDstandard4th1kxz = PDstandard4th1(&kxz[index]); + PDstandard4th2kxz = PDstandard4th2(&kxz[index]); + PDstandard4th3kxz = PDstandard4th3(&kxz[index]); + PDstandard4th1kyy = PDstandard4th1(&kyy[index]); + PDstandard4th3kyy = PDstandard4th3(&kyy[index]); + PDstandard4th1kyz = PDstandard4th1(&kyz[index]); + PDstandard4th2kyz = PDstandard4th2(&kyz[index]); + PDstandard4th3kyz = PDstandard4th3(&kyz[index]); + PDstandard4th1kzz = PDstandard4th1(&kzz[index]); + PDstandard4th2kzz = PDstandard4th2(&kzz[index]); + break; + + case 4: + PDstandard4th1gxx = PDstandard4th1(&gxx[index]); + PDstandard4th2gxx = PDstandard4th2(&gxx[index]); + PDstandard4th3gxx = PDstandard4th3(&gxx[index]); + PDstandard4th22gxx = PDstandard4th22(&gxx[index]); + PDstandard4th33gxx = PDstandard4th33(&gxx[index]); + PDstandard4th23gxx = PDstandard4th23(&gxx[index]); + PDstandard4th1gxy = PDstandard4th1(&gxy[index]); + PDstandard4th2gxy = PDstandard4th2(&gxy[index]); + PDstandard4th3gxy = PDstandard4th3(&gxy[index]); + PDstandard4th33gxy = PDstandard4th33(&gxy[index]); + PDstandard4th12gxy = PDstandard4th12(&gxy[index]); + PDstandard4th13gxy = PDstandard4th13(&gxy[index]); + PDstandard4th23gxy = PDstandard4th23(&gxy[index]); + PDstandard4th1gxz = PDstandard4th1(&gxz[index]); + PDstandard4th2gxz = PDstandard4th2(&gxz[index]); + PDstandard4th3gxz = PDstandard4th3(&gxz[index]); + PDstandard4th22gxz = PDstandard4th22(&gxz[index]); + PDstandard4th12gxz = PDstandard4th12(&gxz[index]); + PDstandard4th13gxz = PDstandard4th13(&gxz[index]); + PDstandard4th23gxz = PDstandard4th23(&gxz[index]); + PDstandard4th1gyy = PDstandard4th1(&gyy[index]); + PDstandard4th2gyy = PDstandard4th2(&gyy[index]); + PDstandard4th3gyy = PDstandard4th3(&gyy[index]); + PDstandard4th11gyy = PDstandard4th11(&gyy[index]); + PDstandard4th33gyy = PDstandard4th33(&gyy[index]); + PDstandard4th13gyy = PDstandard4th13(&gyy[index]); + PDstandard4th1gyz = PDstandard4th1(&gyz[index]); + PDstandard4th2gyz = PDstandard4th2(&gyz[index]); + PDstandard4th3gyz = PDstandard4th3(&gyz[index]); + PDstandard4th11gyz = PDstandard4th11(&gyz[index]); + PDstandard4th12gyz = PDstandard4th12(&gyz[index]); + PDstandard4th13gyz = PDstandard4th13(&gyz[index]); + PDstandard4th23gyz = PDstandard4th23(&gyz[index]); + PDstandard4th1gzz = PDstandard4th1(&gzz[index]); + PDstandard4th2gzz = PDstandard4th2(&gzz[index]); + PDstandard4th3gzz = PDstandard4th3(&gzz[index]); + PDstandard4th11gzz = PDstandard4th11(&gzz[index]); + PDstandard4th22gzz = PDstandard4th22(&gzz[index]); + PDstandard4th12gzz = PDstandard4th12(&gzz[index]); + PDstandard4th2kxx = PDstandard4th2(&kxx[index]); + PDstandard4th3kxx = PDstandard4th3(&kxx[index]); + PDstandard4th1kxy = PDstandard4th1(&kxy[index]); + PDstandard4th2kxy = PDstandard4th2(&kxy[index]); + PDstandard4th3kxy = PDstandard4th3(&kxy[index]); + PDstandard4th1kxz = PDstandard4th1(&kxz[index]); + PDstandard4th2kxz = PDstandard4th2(&kxz[index]); + PDstandard4th3kxz = PDstandard4th3(&kxz[index]); + PDstandard4th1kyy = PDstandard4th1(&kyy[index]); + PDstandard4th3kyy = PDstandard4th3(&kyy[index]); + PDstandard4th1kyz = PDstandard4th1(&kyz[index]); + PDstandard4th2kyz = PDstandard4th2(&kyz[index]); + PDstandard4th3kyz = PDstandard4th3(&kyz[index]); + PDstandard4th1kzz = PDstandard4th1(&kzz[index]); + PDstandard4th2kzz = PDstandard4th2(&kzz[index]); + break; + + case 6: + PDstandard4th1gxx = PDstandard4th1(&gxx[index]); + PDstandard4th2gxx = PDstandard4th2(&gxx[index]); + PDstandard4th3gxx = PDstandard4th3(&gxx[index]); + PDstandard4th22gxx = PDstandard4th22(&gxx[index]); + PDstandard4th33gxx = PDstandard4th33(&gxx[index]); + PDstandard4th23gxx = PDstandard4th23(&gxx[index]); + PDstandard4th1gxy = PDstandard4th1(&gxy[index]); + PDstandard4th2gxy = PDstandard4th2(&gxy[index]); + PDstandard4th3gxy = PDstandard4th3(&gxy[index]); + PDstandard4th33gxy = PDstandard4th33(&gxy[index]); + PDstandard4th12gxy = PDstandard4th12(&gxy[index]); + PDstandard4th13gxy = PDstandard4th13(&gxy[index]); + PDstandard4th23gxy = PDstandard4th23(&gxy[index]); + PDstandard4th1gxz = PDstandard4th1(&gxz[index]); + PDstandard4th2gxz = PDstandard4th2(&gxz[index]); + PDstandard4th3gxz = PDstandard4th3(&gxz[index]); + PDstandard4th22gxz = PDstandard4th22(&gxz[index]); + PDstandard4th12gxz = PDstandard4th12(&gxz[index]); + PDstandard4th13gxz = PDstandard4th13(&gxz[index]); + PDstandard4th23gxz = PDstandard4th23(&gxz[index]); + PDstandard4th1gyy = PDstandard4th1(&gyy[index]); + PDstandard4th2gyy = PDstandard4th2(&gyy[index]); + PDstandard4th3gyy = PDstandard4th3(&gyy[index]); + PDstandard4th11gyy = PDstandard4th11(&gyy[index]); + PDstandard4th33gyy = PDstandard4th33(&gyy[index]); + PDstandard4th13gyy = PDstandard4th13(&gyy[index]); + PDstandard4th1gyz = PDstandard4th1(&gyz[index]); + PDstandard4th2gyz = PDstandard4th2(&gyz[index]); + PDstandard4th3gyz = PDstandard4th3(&gyz[index]); + PDstandard4th11gyz = PDstandard4th11(&gyz[index]); + PDstandard4th12gyz = PDstandard4th12(&gyz[index]); + PDstandard4th13gyz = PDstandard4th13(&gyz[index]); + PDstandard4th23gyz = PDstandard4th23(&gyz[index]); + PDstandard4th1gzz = PDstandard4th1(&gzz[index]); + PDstandard4th2gzz = PDstandard4th2(&gzz[index]); + PDstandard4th3gzz = PDstandard4th3(&gzz[index]); + PDstandard4th11gzz = PDstandard4th11(&gzz[index]); + PDstandard4th22gzz = PDstandard4th22(&gzz[index]); + PDstandard4th12gzz = PDstandard4th12(&gzz[index]); + PDstandard4th2kxx = PDstandard4th2(&kxx[index]); + PDstandard4th3kxx = PDstandard4th3(&kxx[index]); + PDstandard4th1kxy = PDstandard4th1(&kxy[index]); + PDstandard4th2kxy = PDstandard4th2(&kxy[index]); + PDstandard4th3kxy = PDstandard4th3(&kxy[index]); + PDstandard4th1kxz = PDstandard4th1(&kxz[index]); + PDstandard4th2kxz = PDstandard4th2(&kxz[index]); + PDstandard4th3kxz = PDstandard4th3(&kxz[index]); + PDstandard4th1kyy = PDstandard4th1(&kyy[index]); + PDstandard4th3kyy = PDstandard4th3(&kyy[index]); + PDstandard4th1kyz = PDstandard4th1(&kyz[index]); + PDstandard4th2kyz = PDstandard4th2(&kyz[index]); + PDstandard4th3kyz = PDstandard4th3(&kyz[index]); + PDstandard4th1kzz = PDstandard4th1(&kzz[index]); + PDstandard4th2kzz = PDstandard4th2(&kzz[index]); + break; + + case 8: + PDstandard4th1gxx = PDstandard4th1(&gxx[index]); + PDstandard4th2gxx = PDstandard4th2(&gxx[index]); + PDstandard4th3gxx = PDstandard4th3(&gxx[index]); + PDstandard4th22gxx = PDstandard4th22(&gxx[index]); + PDstandard4th33gxx = PDstandard4th33(&gxx[index]); + PDstandard4th23gxx = PDstandard4th23(&gxx[index]); + PDstandard4th1gxy = PDstandard4th1(&gxy[index]); + PDstandard4th2gxy = PDstandard4th2(&gxy[index]); + PDstandard4th3gxy = PDstandard4th3(&gxy[index]); + PDstandard4th33gxy = PDstandard4th33(&gxy[index]); + PDstandard4th12gxy = PDstandard4th12(&gxy[index]); + PDstandard4th13gxy = PDstandard4th13(&gxy[index]); + PDstandard4th23gxy = PDstandard4th23(&gxy[index]); + PDstandard4th1gxz = PDstandard4th1(&gxz[index]); + PDstandard4th2gxz = PDstandard4th2(&gxz[index]); + PDstandard4th3gxz = PDstandard4th3(&gxz[index]); + PDstandard4th22gxz = PDstandard4th22(&gxz[index]); + PDstandard4th12gxz = PDstandard4th12(&gxz[index]); + PDstandard4th13gxz = PDstandard4th13(&gxz[index]); + PDstandard4th23gxz = PDstandard4th23(&gxz[index]); + PDstandard4th1gyy = PDstandard4th1(&gyy[index]); + PDstandard4th2gyy = PDstandard4th2(&gyy[index]); + PDstandard4th3gyy = PDstandard4th3(&gyy[index]); + PDstandard4th11gyy = PDstandard4th11(&gyy[index]); + PDstandard4th33gyy = PDstandard4th33(&gyy[index]); + PDstandard4th13gyy = PDstandard4th13(&gyy[index]); + PDstandard4th1gyz = PDstandard4th1(&gyz[index]); + PDstandard4th2gyz = PDstandard4th2(&gyz[index]); + PDstandard4th3gyz = PDstandard4th3(&gyz[index]); + PDstandard4th11gyz = PDstandard4th11(&gyz[index]); + PDstandard4th12gyz = PDstandard4th12(&gyz[index]); + PDstandard4th13gyz = PDstandard4th13(&gyz[index]); + PDstandard4th23gyz = PDstandard4th23(&gyz[index]); + PDstandard4th1gzz = PDstandard4th1(&gzz[index]); + PDstandard4th2gzz = PDstandard4th2(&gzz[index]); + PDstandard4th3gzz = PDstandard4th3(&gzz[index]); + PDstandard4th11gzz = PDstandard4th11(&gzz[index]); + PDstandard4th22gzz = PDstandard4th22(&gzz[index]); + PDstandard4th12gzz = PDstandard4th12(&gzz[index]); + PDstandard4th2kxx = PDstandard4th2(&kxx[index]); + PDstandard4th3kxx = PDstandard4th3(&kxx[index]); + PDstandard4th1kxy = PDstandard4th1(&kxy[index]); + PDstandard4th2kxy = PDstandard4th2(&kxy[index]); + PDstandard4th3kxy = PDstandard4th3(&kxy[index]); + PDstandard4th1kxz = PDstandard4th1(&kxz[index]); + PDstandard4th2kxz = PDstandard4th2(&kxz[index]); + PDstandard4th3kxz = PDstandard4th3(&kxz[index]); + PDstandard4th1kyy = PDstandard4th1(&kyy[index]); + PDstandard4th3kyy = PDstandard4th3(&kyy[index]); + PDstandard4th1kyz = PDstandard4th1(&kyz[index]); + PDstandard4th2kyz = PDstandard4th2(&kyz[index]); + PDstandard4th3kyz = PDstandard4th3(&kyz[index]); + PDstandard4th1kzz = PDstandard4th1(&kzz[index]); + PDstandard4th2kzz = PDstandard4th2(&kzz[index]); + break; + } /* Calculate temporaries and grid functions */ CCTK_REAL detg = 2*gxyL*gxzL*gyzL + gzzL*(gxxL*gyyL - SQR(gxyL)) - |