aboutsummaryrefslogtreecommitdiff
path: root/src/Lagrange-tensor-product/3d.cube.order5.smooth0.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/Lagrange-tensor-product/3d.cube.order5.smooth0.c')
-rw-r--r--src/Lagrange-tensor-product/3d.cube.order5.smooth0.c71
1 files changed, 71 insertions, 0 deletions
diff --git a/src/Lagrange-tensor-product/3d.cube.order5.smooth0.c b/src/Lagrange-tensor-product/3d.cube.order5.smooth0.c
new file mode 100644
index 0000000..90e7246
--- /dev/null
+++ b/src/Lagrange-tensor-product/3d.cube.order5.smooth0.c
@@ -0,0 +1,71 @@
+/* $Header$ */
+
+#include <math.h>
+#include <limits.h>
+#include <stdlib.h>
+#include <string.h>
+#include <stdio.h>
+
+#include "util_ErrorCodes.h"
+#include "cctk.h"
+#include "../InterpLocalUniform.h"
+#include "../common/structs.h"
+#include "../common/load.h"
+#include "../common/evaluate.h"
+#include "../common/store.h"
+
+/* function prototype */
+#define FUNCTION_NAME AEILocalInterp_U_LagTP_3cube_50
+#include "../template.h"
+
+#define N_DIMS 3
+#define MOLECULE_MIN_M -2
+#define MOLECULE_MAX_M 3
+#define MOLECULE_SIZE 6
+
+/* which derivative ops do we support? */
+#define HAVE_OP_I
+#define HAVE_OP_DX
+#define HAVE_OP_DY
+#define HAVE_OP_DZ
+#define HAVE_OP_DXX
+#define HAVE_OP_DXY
+#define HAVE_OP_DXZ
+#define HAVE_OP_DYY
+#define HAVE_OP_DYZ
+#define HAVE_OP_DZZ
+
+#define XYZ x, y, z
+#define FP_XYZ fp x, fp y, fp z
+#define STRIDE_IJK stride_i, stride_j, stride_k
+#define JACOBIAN_MIJK_STRIDE Jacobian_mi_stride, Jacobian_mj_stride, Jacobian_mk_stride
+
+#define DATA_STRUCT data_struct_3d_cube_size6
+#define COEFFS_STRUCT coeffs_struct_3d_cube_size6
+
+#define LOAD_DATA_REAL AEILocalInterp_load_3dcube6_r
+#define LOAD_DATA_REAL4 AEILocalInterp_load_3dcube6_r4
+#define LOAD_DATA_REAL8 AEILocalInterp_load_3dcube6_r8
+#define LOAD_DATA_REAL16 AEILocalInterp_load_3dcube6_r16
+#define LOAD_DATA_COMPLEX AEILocalInterp_load_3dcube6_c
+#define LOAD_DATA_COMPLEX8 AEILocalInterp_load_3dcube6_c8
+#define LOAD_DATA_COMPLEX16 AEILocalInterp_load_3dcube6_c16
+#define LOAD_DATA_COMPLEX32 AEILocalInterp_load_3dcube6_c32
+
+#define EVALUATE_MOLECULE AEILocalInterp_eval_3dcube6
+
+#define STORE_COEFFS AEILocalInterp_store_3dcube6
+
+#define COEFFS_I_COMPUTE_FILE_NAME "Lagrange-tensor-product/3d.coeffs/3d.cube.order5.smooth0/coeffs-I.compute.c"
+#define COEFFS_DX_COMPUTE_FILE_NAME "Lagrange-tensor-product/3d.coeffs/3d.cube.order5.smooth0/coeffs-dx.compute.c"
+#define COEFFS_DY_COMPUTE_FILE_NAME "Lagrange-tensor-product/3d.coeffs/3d.cube.order5.smooth0/coeffs-dy.compute.c"
+#define COEFFS_DZ_COMPUTE_FILE_NAME "Lagrange-tensor-product/3d.coeffs/3d.cube.order5.smooth0/coeffs-dz.compute.c"
+#define COEFFS_DXX_COMPUTE_FILE_NAME "Lagrange-tensor-product/3d.coeffs/3d.cube.order5.smooth0/coeffs-dxx.compute.c"
+#define COEFFS_DXY_COMPUTE_FILE_NAME "Lagrange-tensor-product/3d.coeffs/3d.cube.order5.smooth0/coeffs-dxy.compute.c"
+#define COEFFS_DXZ_COMPUTE_FILE_NAME "Lagrange-tensor-product/3d.coeffs/3d.cube.order5.smooth0/coeffs-dxz.compute.c"
+#define COEFFS_DYY_COMPUTE_FILE_NAME "Lagrange-tensor-product/3d.coeffs/3d.cube.order5.smooth0/coeffs-dyy.compute.c"
+#define COEFFS_DYZ_COMPUTE_FILE_NAME "Lagrange-tensor-product/3d.coeffs/3d.cube.order5.smooth0/coeffs-dyz.compute.c"
+#define COEFFS_DZZ_COMPUTE_FILE_NAME "Lagrange-tensor-product/3d.coeffs/3d.cube.order5.smooth0/coeffs-dzz.compute.c"
+
+/* actual code */
+#include "../template.c"