diff options
Diffstat (limited to 'src/GeneralizedPolynomial-Uniform/Lagrange-tensor-product/1d.cube.order3.smooth0.c')
-rw-r--r-- | src/GeneralizedPolynomial-Uniform/Lagrange-tensor-product/1d.cube.order3.smooth0.c | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/src/GeneralizedPolynomial-Uniform/Lagrange-tensor-product/1d.cube.order3.smooth0.c b/src/GeneralizedPolynomial-Uniform/Lagrange-tensor-product/1d.cube.order3.smooth0.c new file mode 100644 index 0000000..f814878 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/Lagrange-tensor-product/1d.cube.order3.smooth0.c @@ -0,0 +1,58 @@ +/* $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/fetch.h" +#include "../common/evaluate.h" +#include "../common/store.h" + +/* function prototype */ +#define FUNCTION_NAME LocalInterp_U_LagrTP_1d_cube30 +#include "../template.h" + +#define N_DIMS 1 +#define MOLECULE_MIN_M -1 +#define MOLECULE_MAX_M 2 +#define MOLECULE_SIZE 4 + +/* which derivative ops do we support? */ +#define HAVE_OP_I +#define HAVE_OP_DX +#define HAVE_OP_DXX + +#define XYZ x +#define FP_XYZ fp x +#define STRIDE_IJK stride_i +#define JACOBIAN_MIJK_STRIDE Jacobian_mi_stride + +#define DATA_STRUCT data_struct_1d_cube_size4 +#define COEFFS_STRUCT coeffs_struct_1d_cube_size4 + +#define FETCH_DATA_REAL LocalInterp_fetch_1d_cube4_r +#define FETCH_DATA_REAL4 LocalInterp_fetch_1d_cube4_r4 +#define FETCH_DATA_REAL8 LocalInterp_fetch_1d_cube4_r8 +#define FETCH_DATA_REAL16 LocalInterp_fetch_1d_cube4_r16 +#define FETCH_DATA_COMPLEX LocalInterp_fetch_1d_cube4_c +#define FETCH_DATA_COMPLEX8 LocalInterp_fetch_1d_cube4_c8 +#define FETCH_DATA_COMPLEX16 LocalInterp_fetch_1d_cube4_c16 +#define FETCH_DATA_COMPLEX32 LocalInterp_fetch_1d_cube4_c32 + +#define EVALUATE_MOLECULE LocalInterp_eval_1d_cube4 + +#define STORE_COEFFS LocalInterp_store_1d_cube4 + +/* note pathnames are all relative to "../template.c" */ +#define COEFFS_I_COMPUTE_FILE_NAME "Lagrange-tensor-product/1d.coeffs/1d.cube.order3.smooth0/coeffs-I.compute.c" +#define COEFFS_DX_COMPUTE_FILE_NAME "Lagrange-tensor-product/1d.coeffs/1d.cube.order3.smooth0/coeffs-dx.compute.c" +#define COEFFS_DXX_COMPUTE_FILE_NAME "Lagrange-tensor-product/1d.coeffs/1d.cube.order3.smooth0/coeffs-dxx.compute.c" + +/* actual code */ +#include "../template.c" |