From fad7a92c64fd6f401d5f325deeb37952f48358c4 Mon Sep 17 00:00:00 2001 From: Ian Hinder Date: Fri, 27 Jan 2012 15:28:46 -0600 Subject: Regenerate SimpleWaveCaKernel --- Examples/SimpleWaveCaKernel/cakernel.ccl | 4 +- Examples/SimpleWaveCaKernel/param.ccl | 4 +- Examples/SimpleWaveCaKernel/schedule.ccl | 6 +- .../SimpleWaveCaKernel/src/CaKernel__calc_rhs.code | 13 ++-- .../src/CaKernel__initial_gaussian.code | 75 ++++++++++++++++++++++ .../src/CaKernel__initial_sine.code | 74 --------------------- Examples/SimpleWaveCaKernel/src/CaKernel__rk1.code | 7 +- 7 files changed, 96 insertions(+), 87 deletions(-) create mode 100644 Examples/SimpleWaveCaKernel/src/CaKernel__initial_gaussian.code delete mode 100644 Examples/SimpleWaveCaKernel/src/CaKernel__initial_sine.code (limited to 'Examples') diff --git a/Examples/SimpleWaveCaKernel/cakernel.ccl b/Examples/SimpleWaveCaKernel/cakernel.ccl index b68af03..81db8b6 100644 --- a/Examples/SimpleWaveCaKernel/cakernel.ccl +++ b/Examples/SimpleWaveCaKernel/cakernel.ccl @@ -1,4 +1,4 @@ -CCTK_CUDA_KERNEL initial_sine TYPE=gpu_cuda/3dblock STENCIL="0,0,0,0,0,0" TILE="8,8,8" SHARECODE=yes +CCTK_CUDA_KERNEL initial_gaussian TYPE=gpu_cuda/3dblock STENCIL="0,0,0,0,0,0" TILE="8,8,8" SHARECODE=yes { CCTK_CUDA_KERNEL_VARIABLE cached=yes intent=out { @@ -19,7 +19,7 @@ CCTK_CUDA_KERNEL initial_sine TYPE=gpu_cuda/3dblock STENCIL="0,0,0,0,0,0" TILE=" "x" } -CCTK_CUDA_KERNEL calc_rhs TYPE=gpu_cuda/3dblock STENCIL="0,0,0,0,0,0" TILE="8,8,8" SHARECODE=yes +CCTK_CUDA_KERNEL calc_rhs TYPE=gpu_cuda/3dblock STENCIL="1,1,1,1,1,1" TILE="8,8,8" SHARECODE=yes { CCTK_CUDA_KERNEL_VARIABLE cached=yes intent=in { diff --git a/Examples/SimpleWaveCaKernel/param.ccl b/Examples/SimpleWaveCaKernel/param.ccl index 3b9211b..ecb8b5e 100644 --- a/Examples/SimpleWaveCaKernel/param.ccl +++ b/Examples/SimpleWaveCaKernel/param.ccl @@ -47,7 +47,7 @@ CCTK_INT other_timelevels "Number of active timelevels for non-evolved grid func } 1 restricted: -CCTK_INT initial_sine_calc_every "initial_sine_calc_every" STEERABLE=ALWAYS +CCTK_INT initial_gaussian_calc_every "initial_gaussian_calc_every" STEERABLE=ALWAYS { *:* :: "" } 1 @@ -65,7 +65,7 @@ CCTK_INT rk1_calc_every "rk1_calc_every" STEERABLE=ALWAYS } 1 restricted: -CCTK_INT initial_sine_calc_offset "initial_sine_calc_offset" STEERABLE=ALWAYS +CCTK_INT initial_gaussian_calc_offset "initial_gaussian_calc_offset" STEERABLE=ALWAYS { *:* :: "" } 0 diff --git a/Examples/SimpleWaveCaKernel/schedule.ccl b/Examples/SimpleWaveCaKernel/schedule.ccl index 3b4b30e..4af3bff 100644 --- a/Examples/SimpleWaveCaKernel/schedule.ccl +++ b/Examples/SimpleWaveCaKernel/schedule.ccl @@ -39,14 +39,16 @@ schedule SimpleWaveCaKernel_RegisterSymmetries in SymmetryRegister OPTIONS: meta } "register symmetries" -schedule CAKERNEL_Launch_initial_sine AT INITIAL +schedule CAKERNEL_Launch_initial_gaussian AT INITIAL { LANG: C -} "initial_sine" +} "initial_gaussian" schedule CAKERNEL_Launch_calc_rhs at EVOL { LANG: C + SYNC: phi_grhs + SYNC: pi_grhs } "calc_rhs" schedule CAKERNEL_Launch_rk1 at EVOL after calc_rhs diff --git a/Examples/SimpleWaveCaKernel/src/CaKernel__calc_rhs.code b/Examples/SimpleWaveCaKernel/src/CaKernel__calc_rhs.code index 35ba87e..40d5b56 100644 --- a/Examples/SimpleWaveCaKernel/src/CaKernel__calc_rhs.code +++ b/Examples/SimpleWaveCaKernel/src/CaKernel__calc_rhs.code @@ -1,8 +1,11 @@ +#undef KRANC_DIFF_FUNCTIONS #define KRANC_C - #include "Differencing.h" #include "GenericFD.h" +#define KRANC_GFOFFSET3D(u,i,j,k) I3D(u,i,j,k) + + /* Define macros used in calculations */ #define INITVALUE (42) #define QAD(x) (SQR(SQR(x))) @@ -10,8 +13,6 @@ #define SQR(x) ((x) * (x)) #define CUB(x) ((x) * (x) * (x)) -#define CCTK_GFINDEX3D(u,i,j,k) I3D(u,i,j,k) - CAKERNEL_calc_rhs_Begin /* Include user-supplied include files */ @@ -60,11 +61,15 @@ CAKERNEL_calc_rhs_Begin /* Include user supplied include files */ /* Precompute derivatives */ + CCTK_REAL const PDstandard2nd11phi = PDstandard2nd11(phi); + CCTK_REAL const PDstandard2nd22phi = PDstandard2nd22(phi); + CCTK_REAL const PDstandard2nd33phi = PDstandard2nd33(phi); /* Calculate temporaries and grid functions */ CCTK_REAL phirhsL = piL; - CCTK_REAL pirhsL = phiL; + CCTK_REAL pirhsL = PDstandard2nd11phi + PDstandard2nd22phi + + PDstandard2nd33phi; /* Copy local copies back to grid functions */ I3D(phirhs,0,0,0) = phirhsL; diff --git a/Examples/SimpleWaveCaKernel/src/CaKernel__initial_gaussian.code b/Examples/SimpleWaveCaKernel/src/CaKernel__initial_gaussian.code new file mode 100644 index 0000000..e4b571b --- /dev/null +++ b/Examples/SimpleWaveCaKernel/src/CaKernel__initial_gaussian.code @@ -0,0 +1,75 @@ +#undef KRANC_DIFF_FUNCTIONS +#define KRANC_C +#include "Differencing.h" +#include "GenericFD.h" + +#define KRANC_GFOFFSET3D(u,i,j,k) I3D(u,i,j,k) + + +/* Define macros used in calculations */ +#define INITVALUE (42) +#define QAD(x) (SQR(SQR(x))) +#define INV(x) ((1.0) / (x)) +#define SQR(x) ((x) * (x)) +#define CUB(x) ((x) * (x) * (x)) + +CAKERNEL_initial_gaussian_Begin + + /* Include user-supplied include files */ + + /* Initialise finite differencing variables */ + CCTK_REAL const dx = params.cagh_dx; + CCTK_REAL const dy = params.cagh_dy; + CCTK_REAL const dz = params.cagh_dz; + CCTK_REAL const dt = params.cagh_dt; + CCTK_REAL const t = params.cagh_time; + CCTK_REAL const dxi = INV(dx); + CCTK_REAL const dyi = INV(dy); + CCTK_REAL const dzi = INV(dz); + CCTK_REAL const khalf = 0.5; + CCTK_REAL const kthird = 1/3.0; + CCTK_REAL const ktwothird = 2.0/3.0; + CCTK_REAL const kfourthird = 4.0/3.0; + CCTK_REAL const keightthird = 8.0/3.0; + CCTK_REAL const hdxi = 0.5 * dxi; + CCTK_REAL const hdyi = 0.5 * dyi; + CCTK_REAL const hdzi = 0.5 * dzi; + + /* Initialize predefined quantities */ + 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 p1odx2 = INV(SQR(dx)); + CCTK_REAL const p1ody2 = INV(SQR(dy)); + CCTK_REAL const p1odz2 = INV(SQR(dz)); + + /* Assign local copies of arrays functions */ + + + + /* Calculate temporaries and arrays functions */ + + /* Copy local copies back to grid functions */ + CAKERNEL_initial_gaussian_Computations_Begin + + /* Assign local copies of grid functions */ + + CCTK_REAL xL = I3D(x,0,0,0); + + + /* Include user supplied include files */ + + /* Precompute derivatives */ + + /* Calculate temporaries and grid functions */ + CCTK_REAL phiL = exp(-100.*SQR(xL + t)); + + CCTK_REAL piL = -200.*(xL + t)*exp(-100.*SQR(xL + t)); + + /* Copy local copies back to grid functions */ + I3D(phi,0,0,0) = phiL; + I3D(pi,0,0,0) = piL; + + CAKERNEL_initial_gaussian_Computations_End + +CAKERNEL_initial_gaussian_End diff --git a/Examples/SimpleWaveCaKernel/src/CaKernel__initial_sine.code b/Examples/SimpleWaveCaKernel/src/CaKernel__initial_sine.code deleted file mode 100644 index e030f4f..0000000 --- a/Examples/SimpleWaveCaKernel/src/CaKernel__initial_sine.code +++ /dev/null @@ -1,74 +0,0 @@ -#define KRANC_C - -#include "Differencing.h" -#include "GenericFD.h" - -/* Define macros used in calculations */ -#define INITVALUE (42) -#define QAD(x) (SQR(SQR(x))) -#define INV(x) ((1.0) / (x)) -#define SQR(x) ((x) * (x)) -#define CUB(x) ((x) * (x) * (x)) - -#define CCTK_GFINDEX3D(u,i,j,k) I3D(u,i,j,k) - -CAKERNEL_initial_sine_Begin - - /* Include user-supplied include files */ - - /* Initialise finite differencing variables */ - CCTK_REAL const dx = params.cagh_dx; - CCTK_REAL const dy = params.cagh_dy; - CCTK_REAL const dz = params.cagh_dz; - CCTK_REAL const dt = params.cagh_dt; - CCTK_REAL const t = params.cagh_time; - CCTK_REAL const dxi = INV(dx); - CCTK_REAL const dyi = INV(dy); - CCTK_REAL const dzi = INV(dz); - CCTK_REAL const khalf = 0.5; - CCTK_REAL const kthird = 1/3.0; - CCTK_REAL const ktwothird = 2.0/3.0; - CCTK_REAL const kfourthird = 4.0/3.0; - CCTK_REAL const keightthird = 8.0/3.0; - CCTK_REAL const hdxi = 0.5 * dxi; - CCTK_REAL const hdyi = 0.5 * dyi; - CCTK_REAL const hdzi = 0.5 * dzi; - - /* Initialize predefined quantities */ - 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 p1odx2 = INV(SQR(dx)); - CCTK_REAL const p1ody2 = INV(SQR(dy)); - CCTK_REAL const p1odz2 = INV(SQR(dz)); - - /* Assign local copies of arrays functions */ - - - - /* Calculate temporaries and arrays functions */ - - /* Copy local copies back to grid functions */ - CAKERNEL_initial_sine_Computations_Begin - - /* Assign local copies of grid functions */ - - CCTK_REAL xL = I3D(x,0,0,0); - - - /* Include user supplied include files */ - - /* Precompute derivatives */ - - /* Calculate temporaries and grid functions */ - CCTK_REAL phiL = Sin(2*Pi*(xL - t)); - - CCTK_REAL piL = -2*Pi*Cos(2*Pi*(xL - t)); - - /* Copy local copies back to grid functions */ - I3D(phi,0,0,0) = phiL; - I3D(pi,0,0,0) = piL; - - CAKERNEL_initial_sine_Computations_End - -CAKERNEL_initial_sine_End diff --git a/Examples/SimpleWaveCaKernel/src/CaKernel__rk1.code b/Examples/SimpleWaveCaKernel/src/CaKernel__rk1.code index 03c5376..3a7e9f3 100644 --- a/Examples/SimpleWaveCaKernel/src/CaKernel__rk1.code +++ b/Examples/SimpleWaveCaKernel/src/CaKernel__rk1.code @@ -1,8 +1,11 @@ +#undef KRANC_DIFF_FUNCTIONS #define KRANC_C - #include "Differencing.h" #include "GenericFD.h" +#define KRANC_GFOFFSET3D(u,i,j,k) I3D(u,i,j,k) + + /* Define macros used in calculations */ #define INITVALUE (42) #define QAD(x) (SQR(SQR(x))) @@ -10,8 +13,6 @@ #define SQR(x) ((x) * (x)) #define CUB(x) ((x) * (x) * (x)) -#define CCTK_GFINDEX3D(u,i,j,k) I3D(u,i,j,k) - CAKERNEL_rk1_Begin /* Include user-supplied include files */ -- cgit v1.2.3