blob: 97788258b5613cc54d4ac96f7145d8874d18917c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
/* $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_Herm_2cube_2
#include "../template.h"
#define N_DIMS 2
#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_DY
#define HAVE_OP_DXX
#define HAVE_OP_DXY
#define HAVE_OP_DYY
#define XYZ x, y
#define FP_XYZ fp x, fp y
#define STRIDE_IJK stride_i, stride_j
#define JACOBIAN_MIJK_STRIDE Jacobian_mi_stride, Jacobian_mj_stride
#define DATA_STRUCT data_struct_2d_cube_size4
#define COEFFS_STRUCT coeffs_struct_2d_cube_size4
#define LOAD_DATA_REAL AEILocalInterp_load_2dcube4_r
#define LOAD_DATA_REAL4 AEILocalInterp_load_2dcube4_r4
#define LOAD_DATA_REAL8 AEILocalInterp_load_2dcube4_r8
#define LOAD_DATA_REAL16 AEILocalInterp_load_2dcube4_r16
#define LOAD_DATA_COMPLEX AEILocalInterp_load_2dcube4_c
#define LOAD_DATA_COMPLEX8 AEILocalInterp_load_2dcube4_c8
#define LOAD_DATA_COMPLEX16 AEILocalInterp_load_2dcube4_c16
#define LOAD_DATA_COMPLEX32 AEILocalInterp_load_2dcube4_c32
#define EVALUATE_MOLECULE AEILocalInterp_eval_2dcube4
#define STORE_COEFFS AEILocalInterp_store_2dcube4
/* note pathnames are all relative to "../template.c" */
#define COEFFS_I_COMPUTE_FILE_NAME "Hermite/2d.coeffs/2d.cube.order2/coeffs-I.compute.c"
#define COEFFS_DX_COMPUTE_FILE_NAME "Hermite/2d.coeffs/2d.cube.order2/coeffs-dx.compute.c"
#define COEFFS_DY_COMPUTE_FILE_NAME "Hermite/2d.coeffs/2d.cube.order2/coeffs-dy.compute.c"
#define COEFFS_DXX_COMPUTE_FILE_NAME "Hermite/2d.coeffs/2d.cube.order2/coeffs-dxx.compute.c"
#define COEFFS_DXY_COMPUTE_FILE_NAME "Hermite/2d.coeffs/2d.cube.order2/coeffs-dxy.compute.c"
#define COEFFS_DYY_COMPUTE_FILE_NAME "Hermite/2d.coeffs/2d.cube.order2/coeffs-dyy.compute.c"
/* actual code */
#include "../template.c"
|