aboutsummaryrefslogtreecommitdiff
path: root/Examples/SimpleWaveOpenCL/src/Differencing.h
diff options
context:
space:
mode:
authorIan Hinder <ian.hinder@aei.mpg.de>2012-01-31 14:22:14 -0600
committerIan Hinder <ian.hinder@aei.mpg.de>2012-01-31 14:22:14 -0600
commit658fa6fcb2dfea4354d734af7cb3d946e54342fa (patch)
treef15b719dea2b3dc6a96816b611d80c3b8482a3a2 /Examples/SimpleWaveOpenCL/src/Differencing.h
parent40d9f7919784643c3a1e3ccb3f6883b1eb81e121 (diff)
Generate SimpleWaveOpenCL
Diffstat (limited to 'Examples/SimpleWaveOpenCL/src/Differencing.h')
-rw-r--r--Examples/SimpleWaveOpenCL/src/Differencing.h75
1 files changed, 75 insertions, 0 deletions
diff --git a/Examples/SimpleWaveOpenCL/src/Differencing.h b/Examples/SimpleWaveOpenCL/src/Differencing.h
new file mode 100644
index 0000000..476bbe1
--- /dev/null
+++ b/Examples/SimpleWaveOpenCL/src/Differencing.h
@@ -0,0 +1,75 @@
+static char const * const differencing =
+"#ifndef KRANC_DIFF_FUNCTIONS\n"
+"# define PDstandard2nd1(u) ((-KRANC_GFOFFSET3D(u,-1,0,0) + KRANC_GFOFFSET3D(u,1,0,0))*p1o2dx)\n"
+"#else\n"
+"# define PDstandard2nd1(u) (PDstandard2nd1_impl(u,p1o2dx,cdj,cdk))\n"
+"static CCTK_REAL PDstandard2nd1_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o2dx, ptrdiff_t const cdj, ptrdiff_t const cdk) CCTK_ATTRIBUTE_NOINLINE CCTK_ATTRIBUTE_UNUSED;\n"
+"static CCTK_REAL PDstandard2nd1_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o2dx, ptrdiff_t const cdj, ptrdiff_t const cdk)\n"
+"{\n"
+" ptrdiff_t const cdi=sizeof(CCTK_REAL);\n"
+" return (-KRANC_GFOFFSET3D(u,-1,0,0) + KRANC_GFOFFSET3D(u,1,0,0))*p1o2dx;\n"
+"}\n"
+"#endif\n"
+"\n"
+"#ifndef KRANC_DIFF_FUNCTIONS\n"
+"# define PDstandard2nd2(u) ((-KRANC_GFOFFSET3D(u,0,-1,0) + KRANC_GFOFFSET3D(u,0,1,0))*p1o2dy)\n"
+"#else\n"
+"# define PDstandard2nd2(u) (PDstandard2nd2_impl(u,p1o2dy,cdj,cdk))\n"
+"static CCTK_REAL PDstandard2nd2_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o2dy, ptrdiff_t const cdj, ptrdiff_t const cdk) CCTK_ATTRIBUTE_NOINLINE CCTK_ATTRIBUTE_UNUSED;\n"
+"static CCTK_REAL PDstandard2nd2_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o2dy, ptrdiff_t const cdj, ptrdiff_t const cdk)\n"
+"{\n"
+" ptrdiff_t const cdi=sizeof(CCTK_REAL);\n"
+" return (-KRANC_GFOFFSET3D(u,0,-1,0) + KRANC_GFOFFSET3D(u,0,1,0))*p1o2dy;\n"
+"}\n"
+"#endif\n"
+"\n"
+"#ifndef KRANC_DIFF_FUNCTIONS\n"
+"# define PDstandard2nd3(u) ((-KRANC_GFOFFSET3D(u,0,0,-1) + KRANC_GFOFFSET3D(u,0,0,1))*p1o2dz)\n"
+"#else\n"
+"# define PDstandard2nd3(u) (PDstandard2nd3_impl(u,p1o2dz,cdj,cdk))\n"
+"static CCTK_REAL PDstandard2nd3_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o2dz, ptrdiff_t const cdj, ptrdiff_t const cdk) CCTK_ATTRIBUTE_NOINLINE CCTK_ATTRIBUTE_UNUSED;\n"
+"static CCTK_REAL PDstandard2nd3_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1o2dz, ptrdiff_t const cdj, ptrdiff_t const cdk)\n"
+"{\n"
+" ptrdiff_t const cdi=sizeof(CCTK_REAL);\n"
+" return (-KRANC_GFOFFSET3D(u,0,0,-1) + KRANC_GFOFFSET3D(u,0,0,1))*p1o2dz;\n"
+"}\n"
+"#endif\n"
+"\n"
+"#ifndef KRANC_DIFF_FUNCTIONS\n"
+"# define PDstandard2nd11(u) ((-2*KRANC_GFOFFSET3D(u,0,0,0) + KRANC_GFOFFSET3D(u,-1,0,0) + KRANC_GFOFFSET3D(u,1,0,0))*p1odx2)\n"
+"#else\n"
+"# define PDstandard2nd11(u) (PDstandard2nd11_impl(u,p1odx2,cdj,cdk))\n"
+"static CCTK_REAL PDstandard2nd11_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1odx2, ptrdiff_t const cdj, ptrdiff_t const cdk) CCTK_ATTRIBUTE_NOINLINE CCTK_ATTRIBUTE_UNUSED;\n"
+"static CCTK_REAL PDstandard2nd11_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1odx2, ptrdiff_t const cdj, ptrdiff_t const cdk)\n"
+"{\n"
+" ptrdiff_t const cdi=sizeof(CCTK_REAL);\n"
+" return (-2*KRANC_GFOFFSET3D(u,0,0,0) + KRANC_GFOFFSET3D(u,-1,0,0) + KRANC_GFOFFSET3D(u,1,0,0))*p1odx2;\n"
+"}\n"
+"#endif\n"
+"\n"
+"#ifndef KRANC_DIFF_FUNCTIONS\n"
+"# define PDstandard2nd22(u) ((-2*KRANC_GFOFFSET3D(u,0,0,0) + KRANC_GFOFFSET3D(u,0,-1,0) + KRANC_GFOFFSET3D(u,0,1,0))*p1ody2)\n"
+"#else\n"
+"# define PDstandard2nd22(u) (PDstandard2nd22_impl(u,p1ody2,cdj,cdk))\n"
+"static CCTK_REAL PDstandard2nd22_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1ody2, ptrdiff_t const cdj, ptrdiff_t const cdk) CCTK_ATTRIBUTE_NOINLINE CCTK_ATTRIBUTE_UNUSED;\n"
+"static CCTK_REAL PDstandard2nd22_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1ody2, ptrdiff_t const cdj, ptrdiff_t const cdk)\n"
+"{\n"
+" ptrdiff_t const cdi=sizeof(CCTK_REAL);\n"
+" return (-2*KRANC_GFOFFSET3D(u,0,0,0) + KRANC_GFOFFSET3D(u,0,-1,0) + KRANC_GFOFFSET3D(u,0,1,0))*p1ody2;\n"
+"}\n"
+"#endif\n"
+"\n"
+"#ifndef KRANC_DIFF_FUNCTIONS\n"
+"# define PDstandard2nd33(u) ((-2*KRANC_GFOFFSET3D(u,0,0,0) + KRANC_GFOFFSET3D(u,0,0,-1) + KRANC_GFOFFSET3D(u,0,0,1))*p1odz2)\n"
+"#else\n"
+"# define PDstandard2nd33(u) (PDstandard2nd33_impl(u,p1odz2,cdj,cdk))\n"
+"static CCTK_REAL PDstandard2nd33_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1odz2, ptrdiff_t const cdj, ptrdiff_t const cdk) CCTK_ATTRIBUTE_NOINLINE CCTK_ATTRIBUTE_UNUSED;\n"
+"static CCTK_REAL PDstandard2nd33_impl(CCTK_REAL const* restrict const u, CCTK_REAL const p1odz2, ptrdiff_t const cdj, ptrdiff_t const cdk)\n"
+"{\n"
+" ptrdiff_t const cdi=sizeof(CCTK_REAL);\n"
+" return (-2*KRANC_GFOFFSET3D(u,0,0,0) + KRANC_GFOFFSET3D(u,0,0,-1) + KRANC_GFOFFSET3D(u,0,0,1))*p1odz2;\n"
+"}\n"
+"#endif\n"
+"\n"
+""
+;