diff options
author | jthorn <jthorn@df1f8a13-aa1d-4dd4-9681-27ded5b42416> | 2002-08-18 15:05:50 +0000 |
---|---|---|
committer | jthorn <jthorn@df1f8a13-aa1d-4dd4-9681-27ded5b42416> | 2002-08-18 15:05:50 +0000 |
commit | 7be0a94bec4b4e89c433e5380fce2cf84e5e0681 (patch) | |
tree | 9d538be4e92709f55ca4d07a8b8f42fca1d04940 /src | |
parent | 36dedc21ced19dff3791de3c640eef34932cf6ec (diff) |
new directory for files common to multiple interpolation operators
git-svn-id: http://svn.cactuscode.org/arrangements/CactusBase/LocalInterp/trunk@79 df1f8a13-aa1d-4dd4-9681-27ded5b42416
Diffstat (limited to 'src')
253 files changed, 13408 insertions, 0 deletions
diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/coeff-I.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/coeff-I.dcl.c new file mode 100644 index 0000000..0069517 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/coeff-I.dcl.c @@ -0,0 +1,2 @@ +fp coeff_I_0, + coeff_I_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/coeff-I.store.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/coeff-I.store.c new file mode 100644 index 0000000..585cac0 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/coeff-I.store.c @@ -0,0 +1,2 @@ +COEFF(0) = coeff_I_0; +COEFF(1) = coeff_I_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/coeff-dx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/coeff-dx.dcl.c new file mode 100644 index 0000000..e5b0620 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/coeff-dx.dcl.c @@ -0,0 +1,2 @@ +fp coeff_dx_0, + coeff_dx_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/coeff-dx.store.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/coeff-dx.store.c new file mode 100644 index 0000000..eb49618 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/coeff-dx.store.c @@ -0,0 +1,2 @@ +COEFF(0) = factor * coeff_dx_0; +COEFF(1) = factor * coeff_dx_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/data-var.assign.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/data-var.assign.c new file mode 100644 index 0000000..652f644 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/data-var.assign.c @@ -0,0 +1,2 @@ +data_0 = DATA(0); +data_p1 = DATA(1); diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/data-var.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/data-var.dcl.c new file mode 100644 index 0000000..3719a9b --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/data-var.dcl.c @@ -0,0 +1,2 @@ +fp data_0, + data_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/interp-I.compute.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/interp-I.compute.c new file mode 100644 index 0000000..276ea36 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/interp-I.compute.c @@ -0,0 +1,3 @@ +result = + coeff_I_0*data_0 + + coeff_I_p1*data_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/interp-dx.compute.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/interp-dx.compute.c new file mode 100644 index 0000000..eb6b63a --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size2/interp-dx.compute.c @@ -0,0 +1,3 @@ +result = + coeff_dx_0*data_0 + + coeff_dx_p1*data_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/coeff-I.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/coeff-I.dcl.c new file mode 100644 index 0000000..01c8883 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/coeff-I.dcl.c @@ -0,0 +1,3 @@ +fp coeff_I_m1, + coeff_I_0, + coeff_I_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/coeff-I.store.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/coeff-I.store.c new file mode 100644 index 0000000..7a3e7d0 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/coeff-I.store.c @@ -0,0 +1,3 @@ +COEFF(-1) = coeff_I_m1; +COEFF(0) = coeff_I_0; +COEFF(1) = coeff_I_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/coeff-dx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/coeff-dx.dcl.c new file mode 100644 index 0000000..5c4daf6 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/coeff-dx.dcl.c @@ -0,0 +1,3 @@ +fp coeff_dx_m1, + coeff_dx_0, + coeff_dx_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/coeff-dx.store.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/coeff-dx.store.c new file mode 100644 index 0000000..672d338 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/coeff-dx.store.c @@ -0,0 +1,3 @@ +COEFF(-1) = factor * coeff_dx_m1; +COEFF(0) = factor * coeff_dx_0; +COEFF(1) = factor * coeff_dx_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/coeff-dxx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/coeff-dxx.dcl.c new file mode 100644 index 0000000..36c909e --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/coeff-dxx.dcl.c @@ -0,0 +1,3 @@ +fp coeff_dxx_m1, + coeff_dxx_0, + coeff_dxx_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/coeff-dxx.store.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/coeff-dxx.store.c new file mode 100644 index 0000000..72b7d92 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/coeff-dxx.store.c @@ -0,0 +1,3 @@ +COEFF(-1) = factor * coeff_dxx_m1; +COEFF(0) = factor * coeff_dxx_0; +COEFF(1) = factor * coeff_dxx_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/data-var.assign.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/data-var.assign.c new file mode 100644 index 0000000..0229a3c --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/data-var.assign.c @@ -0,0 +1,3 @@ +data_m1 = DATA(-1); +data_0 = DATA(0); +data_p1 = DATA(1); diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/data-var.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/data-var.dcl.c new file mode 100644 index 0000000..a38b9e6 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/data-var.dcl.c @@ -0,0 +1,3 @@ +fp data_m1, + data_0, + data_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/interp-I.compute.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/interp-I.compute.c new file mode 100644 index 0000000..46cfcbc --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/interp-I.compute.c @@ -0,0 +1,4 @@ +result = + coeff_I_m1*data_m1 + + coeff_I_0*data_0 + + coeff_I_p1*data_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/interp-dx.compute.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/interp-dx.compute.c new file mode 100644 index 0000000..cd754c6 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/interp-dx.compute.c @@ -0,0 +1,4 @@ +result = + coeff_dx_m1*data_m1 + + coeff_dx_0*data_0 + + coeff_dx_p1*data_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/interp-dxx.compute.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/interp-dxx.compute.c new file mode 100644 index 0000000..a4a5b16 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size3/interp-dxx.compute.c @@ -0,0 +1,4 @@ +result = + coeff_dxx_m1*data_m1 + + coeff_dxx_0*data_0 + + coeff_dxx_p1*data_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/coeff-I.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/coeff-I.dcl.c new file mode 100644 index 0000000..c79add1 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/coeff-I.dcl.c @@ -0,0 +1,4 @@ +fp coeff_I_m1, + coeff_I_0, + coeff_I_p1, + coeff_I_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/coeff-I.store.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/coeff-I.store.c new file mode 100644 index 0000000..6e02dfb --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/coeff-I.store.c @@ -0,0 +1,4 @@ +COEFF(-1) = coeff_I_m1; +COEFF(0) = coeff_I_0; +COEFF(1) = coeff_I_p1; +COEFF(2) = coeff_I_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/coeff-dx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/coeff-dx.dcl.c new file mode 100644 index 0000000..ab7b0cf --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/coeff-dx.dcl.c @@ -0,0 +1,4 @@ +fp coeff_dx_m1, + coeff_dx_0, + coeff_dx_p1, + coeff_dx_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/coeff-dx.store.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/coeff-dx.store.c new file mode 100644 index 0000000..ebf3b47 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/coeff-dx.store.c @@ -0,0 +1,4 @@ +COEFF(-1) = factor * coeff_dx_m1; +COEFF(0) = factor * coeff_dx_0; +COEFF(1) = factor * coeff_dx_p1; +COEFF(2) = factor * coeff_dx_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/coeff-dxx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/coeff-dxx.dcl.c new file mode 100644 index 0000000..6e56e96 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/coeff-dxx.dcl.c @@ -0,0 +1,4 @@ +fp coeff_dxx_m1, + coeff_dxx_0, + coeff_dxx_p1, + coeff_dxx_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/coeff-dxx.store.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/coeff-dxx.store.c new file mode 100644 index 0000000..487736f --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/coeff-dxx.store.c @@ -0,0 +1,4 @@ +COEFF(-1) = factor * coeff_dxx_m1; +COEFF(0) = factor * coeff_dxx_0; +COEFF(1) = factor * coeff_dxx_p1; +COEFF(2) = factor * coeff_dxx_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/data-var.assign.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/data-var.assign.c new file mode 100644 index 0000000..946cb6d --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/data-var.assign.c @@ -0,0 +1,4 @@ +data_m1 = DATA(-1); +data_0 = DATA(0); +data_p1 = DATA(1); +data_p2 = DATA(2); diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/data-var.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/data-var.dcl.c new file mode 100644 index 0000000..8f598d5 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/data-var.dcl.c @@ -0,0 +1,4 @@ +fp data_m1, + data_0, + data_p1, + data_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/interp-I.compute.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/interp-I.compute.c new file mode 100644 index 0000000..82eee03 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/interp-I.compute.c @@ -0,0 +1,5 @@ +result = + coeff_I_m1*data_m1 + + coeff_I_0*data_0 + + coeff_I_p1*data_p1 + + coeff_I_p2*data_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/interp-dx.compute.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/interp-dx.compute.c new file mode 100644 index 0000000..791ca6b --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/interp-dx.compute.c @@ -0,0 +1,5 @@ +result = + coeff_dx_m1*data_m1 + + coeff_dx_0*data_0 + + coeff_dx_p1*data_p1 + + coeff_dx_p2*data_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/interp-dxx.compute.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/interp-dxx.compute.c new file mode 100644 index 0000000..c2d6460 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size4/interp-dxx.compute.c @@ -0,0 +1,5 @@ +result = + coeff_dxx_m1*data_m1 + + coeff_dxx_0*data_0 + + coeff_dxx_p1*data_p1 + + coeff_dxx_p2*data_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/coeff-I.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/coeff-I.dcl.c new file mode 100644 index 0000000..cadcf4f --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/coeff-I.dcl.c @@ -0,0 +1,5 @@ +fp coeff_I_m2, + coeff_I_m1, + coeff_I_0, + coeff_I_p1, + coeff_I_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/coeff-I.store.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/coeff-I.store.c new file mode 100644 index 0000000..3721c92 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/coeff-I.store.c @@ -0,0 +1,5 @@ +COEFF(-2) = coeff_I_m2; +COEFF(-1) = coeff_I_m1; +COEFF(0) = coeff_I_0; +COEFF(1) = coeff_I_p1; +COEFF(2) = coeff_I_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/coeff-dx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/coeff-dx.dcl.c new file mode 100644 index 0000000..ca9bbfe --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/coeff-dx.dcl.c @@ -0,0 +1,5 @@ +fp coeff_dx_m2, + coeff_dx_m1, + coeff_dx_0, + coeff_dx_p1, + coeff_dx_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/coeff-dx.store.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/coeff-dx.store.c new file mode 100644 index 0000000..1dc93a4 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/coeff-dx.store.c @@ -0,0 +1,5 @@ +COEFF(-2) = factor * coeff_dx_m2; +COEFF(-1) = factor * coeff_dx_m1; +COEFF(0) = factor * coeff_dx_0; +COEFF(1) = factor * coeff_dx_p1; +COEFF(2) = factor * coeff_dx_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/coeff-dxx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/coeff-dxx.dcl.c new file mode 100644 index 0000000..b0aadfc --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/coeff-dxx.dcl.c @@ -0,0 +1,5 @@ +fp coeff_dxx_m2, + coeff_dxx_m1, + coeff_dxx_0, + coeff_dxx_p1, + coeff_dxx_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/coeff-dxx.store.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/coeff-dxx.store.c new file mode 100644 index 0000000..2d5fd79 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/coeff-dxx.store.c @@ -0,0 +1,5 @@ +COEFF(-2) = factor * coeff_dxx_m2; +COEFF(-1) = factor * coeff_dxx_m1; +COEFF(0) = factor * coeff_dxx_0; +COEFF(1) = factor * coeff_dxx_p1; +COEFF(2) = factor * coeff_dxx_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/data-var.assign.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/data-var.assign.c new file mode 100644 index 0000000..ee87b78 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/data-var.assign.c @@ -0,0 +1,5 @@ +data_m2 = DATA(-2); +data_m1 = DATA(-1); +data_0 = DATA(0); +data_p1 = DATA(1); +data_p2 = DATA(2); diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/data-var.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/data-var.dcl.c new file mode 100644 index 0000000..2fdf4d9 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/data-var.dcl.c @@ -0,0 +1,5 @@ +fp data_m2, + data_m1, + data_0, + data_p1, + data_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/interp-I.compute.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/interp-I.compute.c new file mode 100644 index 0000000..f283cb6 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/interp-I.compute.c @@ -0,0 +1,6 @@ +result = + coeff_I_m2*data_m2 + + coeff_I_m1*data_m1 + + coeff_I_0*data_0 + + coeff_I_p1*data_p1 + + coeff_I_p2*data_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/interp-dx.compute.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/interp-dx.compute.c new file mode 100644 index 0000000..f6673ec --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/interp-dx.compute.c @@ -0,0 +1,6 @@ +result = + coeff_dx_m2*data_m2 + + coeff_dx_m1*data_m1 + + coeff_dx_0*data_0 + + coeff_dx_p1*data_p1 + + coeff_dx_p2*data_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/interp-dxx.compute.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/interp-dxx.compute.c new file mode 100644 index 0000000..ab21a19 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size5/interp-dxx.compute.c @@ -0,0 +1,6 @@ +result = + coeff_dxx_m2*data_m2 + + coeff_dxx_m1*data_m1 + + coeff_dxx_0*data_0 + + coeff_dxx_p1*data_p1 + + coeff_dxx_p2*data_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/coeff-I.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/coeff-I.dcl.c new file mode 100644 index 0000000..2b98276 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/coeff-I.dcl.c @@ -0,0 +1,6 @@ +fp coeff_I_m2, + coeff_I_m1, + coeff_I_0, + coeff_I_p1, + coeff_I_p2, + coeff_I_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/coeff-I.store.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/coeff-I.store.c new file mode 100644 index 0000000..325435d --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/coeff-I.store.c @@ -0,0 +1,6 @@ +COEFF(-2) = coeff_I_m2; +COEFF(-1) = coeff_I_m1; +COEFF(0) = coeff_I_0; +COEFF(1) = coeff_I_p1; +COEFF(2) = coeff_I_p2; +COEFF(3) = coeff_I_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/coeff-dx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/coeff-dx.dcl.c new file mode 100644 index 0000000..82378bc --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/coeff-dx.dcl.c @@ -0,0 +1,6 @@ +fp coeff_dx_m2, + coeff_dx_m1, + coeff_dx_0, + coeff_dx_p1, + coeff_dx_p2, + coeff_dx_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/coeff-dx.store.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/coeff-dx.store.c new file mode 100644 index 0000000..3a03b04 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/coeff-dx.store.c @@ -0,0 +1,6 @@ +COEFF(-2) = factor * coeff_dx_m2; +COEFF(-1) = factor * coeff_dx_m1; +COEFF(0) = factor * coeff_dx_0; +COEFF(1) = factor * coeff_dx_p1; +COEFF(2) = factor * coeff_dx_p2; +COEFF(3) = factor * coeff_dx_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/coeff-dxx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/coeff-dxx.dcl.c new file mode 100644 index 0000000..b903ceb --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/coeff-dxx.dcl.c @@ -0,0 +1,6 @@ +fp coeff_dxx_m2, + coeff_dxx_m1, + coeff_dxx_0, + coeff_dxx_p1, + coeff_dxx_p2, + coeff_dxx_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/coeff-dxx.store.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/coeff-dxx.store.c new file mode 100644 index 0000000..d437161 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/coeff-dxx.store.c @@ -0,0 +1,6 @@ +COEFF(-2) = factor * coeff_dxx_m2; +COEFF(-1) = factor * coeff_dxx_m1; +COEFF(0) = factor * coeff_dxx_0; +COEFF(1) = factor * coeff_dxx_p1; +COEFF(2) = factor * coeff_dxx_p2; +COEFF(3) = factor * coeff_dxx_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/data-var.assign.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/data-var.assign.c new file mode 100644 index 0000000..3b1063a --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/data-var.assign.c @@ -0,0 +1,6 @@ +data_m2 = DATA(-2); +data_m1 = DATA(-1); +data_0 = DATA(0); +data_p1 = DATA(1); +data_p2 = DATA(2); +data_p3 = DATA(3); diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/data-var.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/data-var.dcl.c new file mode 100644 index 0000000..fa8151e --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/data-var.dcl.c @@ -0,0 +1,6 @@ +fp data_m2, + data_m1, + data_0, + data_p1, + data_p2, + data_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/interp-I.compute.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/interp-I.compute.c new file mode 100644 index 0000000..d5f93a0 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/interp-I.compute.c @@ -0,0 +1,7 @@ +result = + coeff_I_m2*data_m2 + + coeff_I_m1*data_m1 + + coeff_I_0*data_0 + + coeff_I_p1*data_p1 + + coeff_I_p2*data_p2 + + coeff_I_p3*data_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/interp-dx.compute.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/interp-dx.compute.c new file mode 100644 index 0000000..54a4c39 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/interp-dx.compute.c @@ -0,0 +1,7 @@ +result = + coeff_dx_m2*data_m2 + + coeff_dx_m1*data_m1 + + coeff_dx_0*data_0 + + coeff_dx_p1*data_p1 + + coeff_dx_p2*data_p2 + + coeff_dx_p3*data_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/interp-dxx.compute.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/interp-dxx.compute.c new file mode 100644 index 0000000..842312e --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size6/interp-dxx.compute.c @@ -0,0 +1,7 @@ +result = + coeff_dxx_m2*data_m2 + + coeff_dxx_m1*data_m1 + + coeff_dxx_0*data_0 + + coeff_dxx_p1*data_p1 + + coeff_dxx_p2*data_p2 + + coeff_dxx_p3*data_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/coeff-I.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/coeff-I.dcl.c new file mode 100644 index 0000000..ce86fb9 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/coeff-I.dcl.c @@ -0,0 +1,7 @@ +fp coeff_I_m3, + coeff_I_m2, + coeff_I_m1, + coeff_I_0, + coeff_I_p1, + coeff_I_p2, + coeff_I_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/coeff-I.store.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/coeff-I.store.c new file mode 100644 index 0000000..1b97834 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/coeff-I.store.c @@ -0,0 +1,7 @@ +COEFF(-3) = coeff_I_m3; +COEFF(-2) = coeff_I_m2; +COEFF(-1) = coeff_I_m1; +COEFF(0) = coeff_I_0; +COEFF(1) = coeff_I_p1; +COEFF(2) = coeff_I_p2; +COEFF(3) = coeff_I_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/coeff-dx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/coeff-dx.dcl.c new file mode 100644 index 0000000..a7cebad --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/coeff-dx.dcl.c @@ -0,0 +1,7 @@ +fp coeff_dx_m3, + coeff_dx_m2, + coeff_dx_m1, + coeff_dx_0, + coeff_dx_p1, + coeff_dx_p2, + coeff_dx_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/coeff-dx.store.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/coeff-dx.store.c new file mode 100644 index 0000000..7b76907 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/coeff-dx.store.c @@ -0,0 +1,7 @@ +COEFF(-3) = factor * coeff_dx_m3; +COEFF(-2) = factor * coeff_dx_m2; +COEFF(-1) = factor * coeff_dx_m1; +COEFF(0) = factor * coeff_dx_0; +COEFF(1) = factor * coeff_dx_p1; +COEFF(2) = factor * coeff_dx_p2; +COEFF(3) = factor * coeff_dx_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/coeff-dxx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/coeff-dxx.dcl.c new file mode 100644 index 0000000..58c0568 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/coeff-dxx.dcl.c @@ -0,0 +1,7 @@ +fp coeff_dxx_m3, + coeff_dxx_m2, + coeff_dxx_m1, + coeff_dxx_0, + coeff_dxx_p1, + coeff_dxx_p2, + coeff_dxx_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/coeff-dxx.store.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/coeff-dxx.store.c new file mode 100644 index 0000000..b65bc24 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/coeff-dxx.store.c @@ -0,0 +1,7 @@ +COEFF(-3) = factor * coeff_dxx_m3; +COEFF(-2) = factor * coeff_dxx_m2; +COEFF(-1) = factor * coeff_dxx_m1; +COEFF(0) = factor * coeff_dxx_0; +COEFF(1) = factor * coeff_dxx_p1; +COEFF(2) = factor * coeff_dxx_p2; +COEFF(3) = factor * coeff_dxx_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/data-var.assign.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/data-var.assign.c new file mode 100644 index 0000000..5375f17 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/data-var.assign.c @@ -0,0 +1,7 @@ +data_m3 = DATA(-3); +data_m2 = DATA(-2); +data_m1 = DATA(-1); +data_0 = DATA(0); +data_p1 = DATA(1); +data_p2 = DATA(2); +data_p3 = DATA(3); diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/data-var.dcl.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/data-var.dcl.c new file mode 100644 index 0000000..cdf1c5c --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/data-var.dcl.c @@ -0,0 +1,7 @@ +fp data_m3, + data_m2, + data_m1, + data_0, + data_p1, + data_p2, + data_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/interp-I.compute.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/interp-I.compute.c new file mode 100644 index 0000000..0405d21 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/interp-I.compute.c @@ -0,0 +1,8 @@ +result = + coeff_I_m3*data_m3 + + coeff_I_m2*data_m2 + + coeff_I_m1*data_m1 + + coeff_I_0*data_0 + + coeff_I_p1*data_p1 + + coeff_I_p2*data_p2 + + coeff_I_p3*data_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/interp-dx.compute.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/interp-dx.compute.c new file mode 100644 index 0000000..425e3d8 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/interp-dx.compute.c @@ -0,0 +1,8 @@ +result = + coeff_dx_m3*data_m3 + + coeff_dx_m2*data_m2 + + coeff_dx_m1*data_m1 + + coeff_dx_0*data_0 + + coeff_dx_p1*data_p1 + + coeff_dx_p2*data_p2 + + coeff_dx_p3*data_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/interp-dxx.compute.c b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/interp-dxx.compute.c new file mode 100644 index 0000000..045a2b6 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.cube.size7/interp-dxx.compute.c @@ -0,0 +1,8 @@ +result = + coeff_dxx_m3*data_m3 + + coeff_dxx_m2*data_m2 + + coeff_dxx_m1*data_m1 + + coeff_dxx_0*data_0 + + coeff_dxx_p1*data_p1 + + coeff_dxx_p2*data_p2 + + coeff_dxx_p3*data_p3; diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.log b/src/GeneralizedPolynomial-Uniform/common/1d.log new file mode 100644 index 0000000..c3e9168 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.log @@ -0,0 +1,1309 @@ + |\^/| Maple 7 (IBM INTEL LINUX) +._|\| |/|_. Copyright (c) 2001 by Waterloo Maple Inc. + \ MAPLE / All rights reserved. Maple is a registered trademark of + <____ ____> Waterloo Maple Inc. + | Type ? for help. +# util.maple -- misc utility routines +# $Id: util.maple,v 1.3 2002/05/19 13:12:18 jthorn Exp $ +> +# +# fix_rationals - convert numbers to RATIONAL() calls +# nonmatching_names - find names in a list which *don't* have a specified prefix +# sprint_numeric_list - convert a numeric list to a valid C identifier suffix +# print_name_list_dcl - print a C declaration for a list of names +# +# hypercube_points - compute all (integer) points in an N-dimensional hypercube +# +# ftruncate - truncate a file to zero length +# +> +################################################################################ +################################################################################ +################################################################################ +> +# +# This function converts all {integer, rational} subexpressions of its +# input except integer exponents and -1 factors in products, into function +# calls +# RATIONAL(num,den) +# This is useful in conjunction with the C() library function, since +# +# C( (1/3) * foo * bar ) +# t0 = foo*bar/3; +# +# generates a (slow) division (and runs the risk of mixed-mode-arithmetic +# problems), while +# +# C((1.0/3.0) * foo * bar); +# t0 = 0.3333333333*foo*bar; +# +# suffers from roundoff error. With this function, +# +# fix_rationals((1/3) * foo * bar); +# RATIONAL(1,3) foo bar +# C(%); +# t0 = RATIONAL(1.0,3.0)*foo*bar; +# +# which a C preprocessor macro can easily convert to the desired +# +# t0 = (1.0/3.0)*foo*bar; +# +# Additionally, this function can be told to leave certain types of +# subexpressions unconverged. For example, +# fix_rationals(expr, type, specfunc(integer, DATA)); +# will leave all subexpressions of the form DATA(integer arguments) +# unconverted. +# +# Arguments: +# expr = (in) The expression to be converted. +# inert_fn = (optional in) +# If specified, this argument should be a Boolean procedure +# or the name of a Boolean procedure. This procedure should +# take one or more argument, and return true if and only if +# the first argument should *not* be converted, i.e. if we +# should leave this expression unchanged. See the last +# example above. +# ... = (optional in) +# Any further arguments are passed as additional arguments to +# the inert_fn procedure. +# +> fix_rationals := +> proc( +> expr::{ +> algebraic, name = algebraic, +> list({algebraic, name = algebraic}), +> set ({algebraic, name = algebraic}) +> }, +> inert_fn::{name, procedure} +> ) +> local nn, k, +> base, power, fbase, fpower, +> fn, fn_args_list, +> num, den, mult; +> +# do we want to convert this expression? +> if ((nargs >= 2) and inert_fn(expr, args[3..nargs])) +> then return expr; +> end if; +> +# recurse over lists and sets +> if (type(expr, {list,set})) +> then return map(fix_rationals, expr, args[2..nargs]); +> end if; +> +# recurse over equation right hand sides +> if (type(expr, name = algebraic)) +> then return ( lhs(expr) = fix_rationals(rhs(expr), args[2..nargs]) ); +> end if; +> +# recurse over functions other than RATIONAL() +> if (type(expr, function)) +> then +> fn := op(0, expr); +> if (fn <> 'RATIONAL') +> then +> fn_args_list := [op(expr)]; +> fn_args_list := map(fix_rationals, fn_args_list, args[2..nargs]); +> fn; return '%'( op(fn_args_list) ); +> end if; +> end if; +> +> nn := nops(expr); +> +# recurse over sums +> if (type(expr, `+`)) +> then return sum('fix_rationals(op(k,expr), args[2..nargs])', 'k'=1..nn); +> end if; +> +# recurse over products +# ... leaving leading -1 factors intact, i.e. not converted to RATIONAL(-1,1) +> if (type(expr, `*`)) +> then +> if (op(1, expr) = -1) +> then return -1*fix_rationals(remove(type, expr, 'identical(-1)'), +> args[2..nargs]); +> else return product('fix_rationals(op(k,expr), args[2..nargs])', +> 'k'=1..nn); +> end if; +> end if; +> +# recurse over powers +# ... leaving integer exponents intact +> if (type(expr, `^`)) +> then +> base := op(1, expr); +> power := op(2, expr); +> +> fbase := fix_rationals(base, args[2..nargs]); +> if (type(power, integer)) +> then fpower := power; +> else fpower := fix_rationals(power, args[2..nargs]); +> end if; +> return fbase ^ fpower; +> end if; +> +# fix integers and fractions +> if (type(expr, integer)) +> then return 'RATIONAL'(expr, 1); +> end if; +> if (type(expr, fraction)) +> then +> num := op(1, expr); +> den := op(2, expr); +> +> return 'RATIONAL'(num, den); +> end if; +> +# turn Maple floating-point into integer fraction, then recursively fix that +> if (type(expr, float)) +> then +> mult := op(1, expr); +> power := op(2, expr); +> return fix_rationals(mult * 10^power, args[2..nargs]); +> end if; +> +# identity op on names +> if (type(expr, name)) +> then return expr; +> end if; +> +# unknown type +> error "%0", +> "unknown type for expr!", +> " whattype(expr) = ", whattype(expr), +> " expr = ", expr; +> end proc; +fix_rationals := proc(expr::{algebraic, name = algebraic, +list({algebraic, name = algebraic}), set({algebraic, name = algebraic})}, +inert_fn::{procedure, name}) +local nn, k, base, power, fbase, fpower, fn, fn_args_list, num, den, mult; + if 2 <= nargs and inert_fn(expr, args[3 .. nargs]) then return expr + end if; + if type(expr, {set, list}) then + return map(fix_rationals, expr, args[2 .. nargs]) + end if; + if type(expr, name = algebraic) then + return lhs(expr) = fix_rationals(rhs(expr), args[2 .. nargs]) + end if; + if type(expr, function) then + fn := op(0, expr); + if fn <> 'RATIONAL' then + fn_args_list := [op(expr)]; + fn_args_list := + map(fix_rationals, fn_args_list, args[2 .. nargs]); + fn; + return '%'(op(fn_args_list)) + end if + end if; + nn := nops(expr); + if type(expr, `+`) then return + sum('fix_rationals(op(k, expr), args[2 .. nargs])', 'k' = 1 .. nn) + end if; + if type(expr, `*`) then + if op(1, expr) = -1 then return -fix_rationals( + remove(type, expr, 'identical(-1)'), args[2 .. nargs]) + else return product('fix_rationals(op(k, expr), args[2 .. nargs])', + 'k' = 1 .. nn) + end if + end if; + if type(expr, `^`) then + base := op(1, expr); + power := op(2, expr); + fbase := fix_rationals(base, args[2 .. nargs]); + if type(power, integer) then fpower := power + else fpower := fix_rationals(power, args[2 .. nargs]) + end if; + return fbase^fpower + end if; + if type(expr, integer) then return 'RATIONAL'(expr, 1) end if; + if type(expr, fraction) then + num := op(1, expr); den := op(2, expr); return 'RATIONAL'(num, den) + end if; + if type(expr, float) then + mult := op(1, expr); + power := op(2, expr); + return fix_rationals(mult*10^power, args[2 .. nargs]) + end if; + if type(expr, name) then return expr end if; + error "%0", "unknown type for expr!", " whattype(expr) = ", + whattype(expr), " expr = ", expr +end proc + +> +################################################################################ +> +# +# This function finds names in a list which *don't* have a specified prefix. +# +# Arguments: +# name_list = A list of the names. +# prefix = The prefix we want to filter out. +# +# Results: +# This function returns the subset list of names which don't have the +# specified prefix. +# +> nonmatching_names := +> proc( name_list::list({name,string}), prefix::{name,string} ) +> +> select( proc(n) +> evalb(not StringTools[IsPrefix](prefix,n)); +> end proc +> , +> name_list +> ); +> end proc; +nonmatching_names := proc( +name_list::list({name, string}), prefix::{name, string}) + select(proc(n) evalb(not StringTools[IsPrefix](prefix, n)) end proc, + name_list) +end proc + +> +################################################################################ +> +# +# This function converts a numeric list to a string which is a valid +# C identifier suffix: elements are separated by "_", decimal points are +# replaced by "x", and all nonzero values have explicit +/- signs, which +# are replaced by "p"/"m". +# +# For example, [0,-3.5,+4] --> "0_m3x5_p4". +# +> sprint_numeric_list := +> proc(nlist::list(numeric)) +> +# generate preliminary string, eg "+0_-3.5_+4" +> map2(sprintf, "%+a", nlist); +> ListTools[Join](%, "_"); +> cat(op(%)); +> +# fixup bad characters +> StringTools[SubstituteAll](%, "+0", "0"); +> StringTools[CharacterMap](".+-", "xpm", %); +> +> return %; +> end proc; +sprint_numeric_list := proc(nlist::list(numeric)) + map2(sprintf, "%+a", nlist); + ListTools[Join](%, "_"); + cat(op(%)); + StringTools[SubstituteAll](%, "+0", "0"); + StringTools[CharacterMap](".+-", "xpm", %); + return % +end proc + +> +################################################################################ +> +# +# This function prints a C declaration for a list of names. +# +# Argument: +# name_list = A list of the names. +# name_type = The C type of the names, eg. "double". +# file_name = The file name to write the declaration to. This is +# truncated before writing. +# +> print_name_list_dcl := +> proc( name_list::list({name,string}), +> name_type::string, +> file_name::string ) +> local blanks, separator_string; +> +> ftruncate(file_name); +> +# a sequence of blanks with the same length as name_type +> seq(" ", i=1..length(name_type)); +> +# string to separate names +> separator_string := cat(",\n", %, " "); +> +> map(convert, name_list, string); +> ListTools[Join](%, separator_string); +> cat(op(%)); +> +> fprintf(file_name, +> "%s %s;\n", +> name_type, %); +> +> fclose(file_name); +> NULL; +> end proc; +print_name_list_dcl := proc( +name_list::list({name, string}), name_type::string, file_name::string) +local blanks, separator_string; + ftruncate(file_name); + seq(" ", i = 1 .. length(name_type)); + separator_string := cat(",\n", %, " "); + map(convert, name_list, string); + ListTools[Join](%, separator_string); + cat(op(%)); + fprintf(file_name, "%s %s;\n", name_type, %); + fclose(file_name); + NULL +end proc + +> +################################################################################ +################################################################################ +################################################################################ +> +# +# This function computes a list of all the (integer) points in an +# N-dimensional hypercube, in lexicographic order. The present +# implementation requires N <= 4. +# +# Arguments: +# cmin,cmax = N-element lists of cube minimum/maximum coordinates. +# +# Results: +# The function returns a set of d-element lists giving the coordinates. +# For example, +# hypercube([0,0], [2,1] +# returns +# { [0,0], [0,1], [1,0], [1,1], [2,0], [2,1] } +> hypercube_points := +> proc(cmin::list(integer), cmax::list(integer)) +> local N, i,j,k,l; +> +> N := nops(cmin); +> if (nops(cmax) <> N) +> then error +> "must have same number of dimensions for min and max coordinates!"; +> fi; +> +> if (N = 1) +> then return [seq([i], i=cmin[1]..cmax[1])]; +> elif (N = 2) +> then return [ +> seq( +> seq([i,j], j=cmin[2]..cmax[2]), +> i=cmin[1]..cmax[1]) +> ]; +> elif (N = 3) +> then return [ +> seq( +> seq( +> seq([i,j,k], k=cmin[3]..cmax[3]), +> j=cmin[2]..cmax[2] ), +> i=cmin[1]..cmax[1]) +> ]; +> elif (N = 4) +> then return [ +> seq( +> seq( +> seq( +> seq([i,j,k,l], l=cmin[4]..cmax[4]), +> k=cmin[3]..cmax[3] ), +> j=cmin[2]..cmax[2]), +> i=cmin[1]..cmax[1]) +> ]; +> else +> error "implementation restriction: must have N <= 4, got %1!", N; +> fi; +> end proc; +hypercube_points := proc(cmin::list(integer), cmax::list(integer)) +local N, i, j, k, l; + N := nops(cmin); + if nops(cmax) <> N then error + "must have same number of dimensions for min and max coordinates!" + end if; + if N = 1 then return [seq([i], i = cmin[1] .. cmax[1])] + elif N = 2 then return + [seq(seq([i, j], j = cmin[2] .. cmax[2]), i = cmin[1] .. cmax[1])] + elif N = 3 then return [seq( + seq(seq([i, j, k], k = cmin[3] .. cmax[3]), j = cmin[2] .. cmax[2]) + , i = cmin[1] .. cmax[1])] + elif N = 4 then return [seq(seq(seq( + seq([i, j, k, l], l = cmin[4] .. cmax[4]), k = cmin[3] .. cmax[3]), + j = cmin[2] .. cmax[2]), i = cmin[1] .. cmax[1])] + else error "implementation restriction: must have N <= 4, got %1!", N + end if +end proc + +> +################################################################################ +################################################################################ +################################################################################ +> +# +# This function truncates a file to 0 length if it exists, or creates +# it at that length if it doesn't exist. +# +# Arguments: +# file_name = (in) The name of the file. +# +> ftruncate := +> proc(file_name::string) +> fopen(file_name, 'WRITE'); +> fclose(%); +> NULL; +> end proc; +ftruncate := + + proc(file_name::string) fopen(file_name, 'WRITE'); fclose(%); NULL end proc + +# interpolate.maple -- compute generalized interpolation formulas/coefficients +# $Id: interpolate.maple,v 1.4 2002/05/14 15:52:50 jthorn Exp $ +> +# +# <<<representation of numbers, data values, etc>>> +# polynomial_interpolant - compute polynomial interpolant +# coeff_as_lc_of_data - coefficients of ... (linear combination of data) +# +# print_coeff__lc_of_data - print C code to compute coefficients +# print_data_var_assign - print C code to assign data-value variables +# print_interp_coeff_var_store - print C code to store coeff vars "somewhere" +# print_interp_cmpt__lc_of_data - print C code for computation of interpolant +# +# coeff_name - name of coefficient of data at a given [m] coordinate +# data_var_name - name of variable storing data value at a given [m] coordinate +# +> +################################################################################ +> +# +# ***** representation of numbers, data values, etc ***** +# +# We use RATIONAL(p.0,q.0) to denote the rational number p/q. +# +# We use DATA(...) to represent the data values being interpolated at a +# specified [m] coordinate, where the arguments are the [m] coordinates. +# +# We use COEFF(...) to represent the molecule coefficient at a specified +# [m] coordinate, where the arguments are the [m] coordinates. +# +# For example, the usual 1-D centered 2nd order 1st derivative molecule +# would be written +# RATIONAL(-1.0,2.0)*DATA(-1) + RATIONA(1.0,2.0)*DATA(1) +# and its coefficients as +# COEFF(-1) = RATIONAL(-1.0,2.0) +# COEFF(1) = RATIONAL(1.0,2.0) +# +> +################################################################################ +################################################################################ +################################################################################ +> +# +# This function computes a polynomial interpolant in any number of dimensions. +# +# Arguments: +# fn = The interpolation function. This should be a procedure in the +# coordinates, having the coefficients as global variables. For +# example, +# proc(x,y) c00 + c10*x + c01*y end proc +# coeff_list = A set of the interpolation coefficients (coefficients in +# the interpolation function), for example [c00, c10, c01]. +# coord_list = A list of the coordinates (independent variables in the +# interpolation function), for example [x,y]. +# posn_list = A list of positions (each a list of numeric values) where the +# interpolant is to use data, for example hypercube([0,0], [1,1]). +# Any positions may be used; if they're redundant (as in the +# example) the least-squares interpolant is computed. +# +# Results: +# This function returns the interpolating polynomial, in the form of +# an algebraic expression in the coordinates and the data values. +# +> polynomial_interpolant := +> proc( +> fn::procedure, coeff_list::list(name), +> coord_list::list(name), posn_list::list(list(numeric)) +> ) +> local posn, data_eqns, coeff_eqns; +> +# coefficients of interpolating polynomial +> data_eqns := { seq( fn(op(posn))='DATA'(op(posn)) , posn=posn_list ) }; +> coeff_eqns := linalg[leastsqrs](data_eqns, {op(coeff_list)}); +> if (has(coeff_eqns, '_t')) +> then error "interpolation coefficients aren't uniquely determined!"; +> end if; +> +# interpolant as a polynomial in the coordinates +> return subs(coeff_eqns, eval(fn))(op(coord_list)); +> end proc; +polynomial_interpolant := proc(fn::procedure, coeff_list::list(name), +coord_list::list(name), posn_list::list(list(numeric))) +local posn, data_eqns, coeff_eqns; + data_eqns := {seq(fn(op(posn)) = 'DATA'(op(posn)), posn = posn_list)}; + coeff_eqns := linalg[leastsqrs](data_eqns, {op(coeff_list)}); + if has(coeff_eqns, '_t') then + error "interpolation coefficients aren't uniquely determined!" + end if; + return subs(coeff_eqns, eval(fn))(op(coord_list)) +end proc + +> +################################################################################ +> +# +# This function takes as input an interpolating polynomial, expresses +# it as a linear combination of the data values, and returns the coefficeints +# of that form. +# +# Arguments: +# interpolant = The interpolating polynomial (an algebraic expression +# in the coordinates and the data values). +# posn_list = The same list of positions as was used to compute the +# interpolating polynomial. +# +# Results: +# This function returns the coefficients, as a list of equations of the +# form COEFF(...) = value , where each value is a polynomial in the +# coordinates. The order of the list matches that of posn_list. +# +> coeff_as_lc_of_data := +> proc( +> interpolant::algebraic, +> posn_list::list(list(numeric)) +> ) +> local data_list, interpolant_as_lc_of_data; +> +# interpolant as a linear combination of the data values +> data_list := [ seq( 'DATA'(op(posn)) , posn=posn_list ) ]; +> interpolant_as_lc_of_data := collect(interpolant, data_list); +> +# coefficients of the data values in the linear combination +> return map( +> proc(posn::list(numeric)) +> coeff(interpolant_as_lc_of_data, DATA(op(posn))); +> 'COEFF'(op(posn)) = %; +> end proc +> , +> posn_list +> ); +> end proc; +coeff_as_lc_of_data := proc( +interpolant::algebraic, posn_list::list(list(numeric))) +local data_list, interpolant_as_lc_of_data; + data_list := [seq('DATA'(op(posn)), posn = posn_list)]; + interpolant_as_lc_of_data := collect(interpolant, data_list); + return map(proc(posn::list(numeric)) + coeff(interpolant_as_lc_of_data, DATA(op(posn))); + 'COEFF'(op(posn)) = % + end proc, posn_list) +end proc + +> +################################################################################ +################################################################################ +################################################################################ +> +# +# This function prints C expressions for the coefficients of an +# interpolating polynomial. (The polynomial is expressed as linear +# combinations of the data values with coefficients which are +# RATIONAL(p,q) calls.) +# +# Arguments: +# coeff_list = A list of the coefficients, as returned from +# coeff_as_lc_of_data() . +# coeff_name_prefix = A prefix string for the coefficient names. +# temp_name_type = The C type to be used for Maple-introduced temporary +# names, eg. "double". +# file_name = The file name to write the coefficients to. This is +# truncated before writing. +# +> print_coeff__lc_of_data := +> proc( coeff_list::list(specfunc(numeric,COEFF) = algebraic), +> coeff_name_prefix::string, +> temp_name_type::string, +> file_name::string ) +> global `codegen/C/function/informed`; +> local coeff_list2, cmpt_list, temp_name_list; +> +# convert LHS of each equation from a COEFF() call (eg COEFF(-1,+1)) +# to a Maple/C variable name (eg coeff_I_m1_p1) +> coeff_list2 := map( +> proc(coeff_eqn::specfunc(numeric,COEFF) = algebraic) +> local posn; +> posn := [op(lhs(coeff_eqn))]; +> coeff_name(posn,coeff_name_prefix); +> convert(%, name); # codegen[C] wants LHS +> # to be an actual Maple *name* +> % = fix_rationals(rhs(coeff_eqn)); +> end proc +> , +> coeff_list +> ); +> +# +# generate the C code +# +> +# tell codegen[C] not to warn about unknown RATIONAL() and DATA() "fn calls" +# via undocumented :( global table +> `codegen/C/function/informed`['RATIONAL'] := true; +> `codegen/C/function/informed`['DATA'] := true; +> +> ftruncate(file_name); +> +# optimized computation sequence for all the coefficients +# (may use local variables t0,t1,t2,...) +> cmpt_list := [codegen[optimize](coeff_list2, tryhard)]; +> +# list of the t0,t1,t2,... local variables +> temp_name_list := nonmatching_names(map(lhs,cmpt_list), coeff_name_prefix); +> +# declare the t0,t1,t2,... local variables (if there are any) +> if (nops(temp_name_list) > 0) +> then print_name_list_dcl(%, temp_name_type, file_name); +> fi; +> +# now print the optimized computation sequence +> codegen[C](cmpt_list, filename=file_name); +> +> fclose(file_name); +> +> NULL; +> end proc; +print_coeff__lc_of_data := proc( +coeff_list::list(specfunc(numeric, COEFF) = algebraic), +coeff_name_prefix::string, temp_name_type::string, file_name::string) +local coeff_list2, cmpt_list, temp_name_list; +global `codegen/C/function/informed`; + coeff_list2 := map(proc( + coeff_eqn::(specfunc(numeric, COEFF) = algebraic)) + local posn; + posn := [op(lhs(coeff_eqn))]; + coeff_name(posn, coeff_name_prefix); + convert(%, name); + % = fix_rationals(rhs(coeff_eqn)) + end proc, coeff_list); + `codegen/C/function/informed`['RATIONAL'] := true; + `codegen/C/function/informed`['DATA'] := true; + ftruncate(file_name); + cmpt_list := [codegen[optimize](coeff_list2, tryhard)]; + temp_name_list := + nonmatching_names(map(lhs, cmpt_list), coeff_name_prefix); + if 0 < nops(temp_name_list) then + print_name_list_dcl(%, temp_name_type, file_name) + end if; + codegen[C](cmpt_list, filename = file_name); + fclose(file_name); + NULL +end proc + +> +################################################################################ +> +# +# This function prints a sequence of C expression to assign the data-value +# variables, eg +# data_m1_p1 = DATA(-1,1); +# +# Arguments: +# posn_list = The same list of positions as was used to compute the +# interpolating polynomial. +# data_var_name_prefix = A prefix string for the data variable names. +# file_name = The file name to write the coefficients to. This is +# truncated before writing. +# +> print_data_var_assign := +> proc( +> posn_list::list(list(numeric)), +> data_var_name_prefix::string, +> file_name::string +> ) +> +> ftruncate(file_name); +> map( +> proc(posn::list(numeric)) +> fprintf(file_name, +> "%s = %a;\n", +> data_var_name(posn,data_var_name_prefix), +> DATA(op(posn))); +> end proc +> , +> posn_list +> ); +> fclose(file_name); +> +> NULL; +> end proc; +print_data_var_assign := proc(posn_list::list(list(numeric)), +data_var_name_prefix::string, file_name::string) + ftruncate(file_name); + map(proc(posn::list(numeric)) + fprintf(file_name, "%s = %a;\n", + data_var_name(posn, data_var_name_prefix), DATA(op(posn))) + end proc, posn_list); + fclose(file_name); + NULL +end proc + +> +################################################################################ +> +# +# This function prints a sequence of C expression to store the interpolation +# coefficients in COEFF(...) expressions, eg +# COEFF(1,-1) = factor * coeff_dx_p1_m1; +# +# Arguments: +# posn_list = The same list of positions as was used to compute the +# interpolating polynomial. +# RHS_factor_name = If this string is non-empty, then the coefficient is +# multiplied by this factor before being stored, eg +# setting this to "factor" would give the example above. +# If this string is empty (""), the multiplication is +# omitted, eg +# COEFF(1,-1) = coeff_dx_p1_m1; +# coeff_name_prefix = A prefix string for the coefficient names. +# file_name = The file name to write the coefficients to. This is +# truncated before writing. +# +> print_interp_coeff_var_store := +> proc( +> posn_list::list(list(numeric)), +> RHS_factor_name::string, +> coeff_name_prefix::string, +> file_name::string +> ) +> +> ftruncate(file_name); +> map( +> proc(posn::list(numeric)) +> if (length(RHS_factor_name) > 0) +> then fprintf(file_name, +> "%a = %s * %s;\n", +> 'COEFF'(op(posn)), +> RHS_factor_name, +> coeff_name(posn,coeff_name_prefix)); +> else fprintf(file_name, +> "%a = %s;\n", +> 'COEFF'(op(posn)), +> coeff_name(posn,coeff_name_prefix)); +> end if; +> end proc +> , +> posn_list +> ); +> fclose(file_name); +> +> NULL; +> end proc; +print_interp_coeff_var_store := proc(posn_list::list(list(numeric)), +RHS_factor_name::string, coeff_name_prefix::string, file_name::string) + ftruncate(file_name); + map(proc(posn::list(numeric)) + if 0 < length(RHS_factor_name) then fprintf(file_name, + "%a = %s * %s;\n", 'COEFF'(op(posn)), RHS_factor_name, + coeff_name(posn, coeff_name_prefix)) + else fprintf(file_name, "%a = %s;\n", 'COEFF'(op(posn)), + coeff_name(posn, coeff_name_prefix)) + end if + end proc, posn_list); + fclose(file_name); + NULL +end proc + +> +################################################################################ +> +# +# This function prints a C expression to compute the interpolant, +# using the coefficients computed by print_coeff__lc_of_data() +# (i.e. expressing the interpolant as a linear combination of the +# data values). +# +# Arguments: +# posn_list = The same list of positions as was used to compute the +# interpolating polynomial. +# result_var_name = The (string) name of the variable to which the +# result is to be assigned. +# coeff_name_prefix = A prefix string for the coefficient names. +# data_var_name_prefix = A prefix string for the data variable names. +# file_name = The file name to write the coefficients to. This is +# truncated before writing. +# +> print_interp_cmpt__lc_of_data := +> proc( +> posn_list::list(list(numeric)), +> result_var_name::string, +> coeff_name_prefix::string, +> data_var_name_prefix::string, +> file_name::string +> ) +> +> ftruncate(file_name); +> +> fprintf(file_name, "%s =\n", result_var_name); +> +# list of "coeff*data_var" terms +> map( +> proc(posn::list(numeric)) +> sprintf("%s*%s", +> coeff_name(posn,coeff_name_prefix), +> data_var_name(posn,data_var_name_prefix)); +> end proc +> , +> posn_list +> ); +> +> ListTools[Join](%, "\n\t+ "); +> cat(op(%)); +> fprintf(file_name, "\t%s;\n", %); +> +> fclose(file_name); +> +> NULL; +> end proc; +print_interp_cmpt__lc_of_data := proc(posn_list::list(list(numeric)), +result_var_name::string, coeff_name_prefix::string, +data_var_name_prefix::string, file_name::string) + ftruncate(file_name); + fprintf(file_name, "%s =\n", result_var_name); + map(proc(posn::list(numeric)) + sprintf("%s*%s", coeff_name(posn, coeff_name_prefix), + data_var_name(posn, data_var_name_prefix)) + end proc, posn_list); + ListTools[Join](%, "\n\t+ "); + cat(op(%)); + fprintf(file_name, "\t%s;\n", %); + fclose(file_name); + NULL +end proc + +> +################################################################################ +################################################################################ +################################################################################ +> +# +# This function computes the name of the coefficient of the data at a +# given [m] position, i.e. it encapsulates our naming convention for this. +# +# Arguments: +# posn = (in) The [m] coordinates. +# name_prefix = A prefix string for the coefficient name. +# +# Results: +# The function returns the coefficient, as a Maple string. +# +> coeff_name := +> proc(posn::list(numeric), name_prefix::string) +> cat(name_prefix, sprint_numeric_list(posn)); +> end proc; +coeff_name := proc(posn::list(numeric), name_prefix::string) + cat(name_prefix, sprint_numeric_list(posn)) +end proc + +> +################################################################################ +> +# +# This function computes the name of the variable in which the C code +# will store the input data at a given [m] position, i.e. it encapsulates +# our naming convention for this. +# +# Arguments: +# posn = (in) The [m] coordinates. +# name_prefix = A prefix string for the variable name. +# +# Results: +# The function returns the variable name, as a Maple string. +# +> data_var_name := +> proc(posn::list(numeric), name_prefix::string) +> cat(name_prefix, sprint_numeric_list(posn)); +> end proc; +data_var_name := proc(posn::list(numeric), name_prefix::string) + cat(name_prefix, sprint_numeric_list(posn)) +end proc + +# Maple code to compute lists of point positions in hypercube-shaped molecules +# $Id: $ +> +################################################################################ +> +# +# 1D interpolation points +# +> posn_list_1d_size2 := hypercube_points([ 0], [+1]); + posn_list_1d_size2 := [[0], [1]] + +> posn_list_1d_size3 := hypercube_points([-1], [+1]); + posn_list_1d_size3 := [[-1], [0], [1]] + +> posn_list_1d_size4 := hypercube_points([-1], [+2]); + posn_list_1d_size4 := [[-1], [0], [1], [2]] + +> posn_list_1d_size5 := hypercube_points([-2], [+2]); + posn_list_1d_size5 := [[-2], [-1], [0], [1], [2]] + +> posn_list_1d_size6 := hypercube_points([-2], [+3]); + posn_list_1d_size6 := [[-2], [-1], [0], [1], [2], [3]] + +> posn_list_1d_size7 := hypercube_points([-3], [+3]); + posn_list_1d_size7 := [[-3], [-2], [-1], [0], [1], [2], [3]] + +> +################################################################################ +> +# +# 2D interpolation points (Fortran ordering) +# +> posn_list_2d_size2 := map(ListTools[Reverse], +> hypercube_points([ 0, 0], [+1,+1])); + posn_list_2d_size2 := [[0, 0], [1, 0], [0, 1], [1, 1]] + +> posn_list_2d_size3 := map(ListTools[Reverse], +> hypercube_points([-1,-1], [+1,+1])); +posn_list_2d_size3 := [[-1, -1], [0, -1], [1, -1], [-1, 0], [0, 0], [1, 0], + + [-1, 1], [0, 1], [1, 1]] + +> posn_list_2d_size4 := map(ListTools[Reverse], +> hypercube_points([-1,-1], [+2,+2])); +posn_list_2d_size4 := [[-1, -1], [0, -1], [1, -1], [2, -1], [-1, 0], [0, 0], + + [1, 0], [2, 0], [-1, 1], [0, 1], [1, 1], [2, 1], [-1, 2], [0, 2], [1, 2], + + [2, 2]] + +> posn_list_2d_size5 := map(ListTools[Reverse], +> hypercube_points([-2,-2], [+2,+2])); +posn_list_2d_size5 := [[-2, -2], [-1, -2], [0, -2], [1, -2], [2, -2], [-2, -1], + + [-1, -1], [0, -1], [1, -1], [2, -1], [-2, 0], [-1, 0], [0, 0], [1, 0], + + [2, 0], [-2, 1], [-1, 1], [0, 1], [1, 1], [2, 1], [-2, 2], [-1, 2], [0, 2], + + [1, 2], [2, 2]] + +> +################################################################################ +> +# +# 3D interpolation points (Fortran ordering) +# +> posn_list_3d_size2 := map(ListTools[Reverse], +> hypercube_points([ 0, 0, 0], [+1,+1,+1])); +posn_list_3d_size2 := [[0, 0, 0], [1, 0, 0], [0, 1, 0], [1, 1, 0], [0, 0, 1], + + [1, 0, 1], [0, 1, 1], [1, 1, 1]] + +> posn_list_3d_size3 := map(ListTools[Reverse], +> hypercube_points([-1,-1,-1], [+1,+1,+1])); +posn_list_3d_size3 := [[-1, -1, -1], [0, -1, -1], [1, -1, -1], [-1, 0, -1], + + [0, 0, -1], [1, 0, -1], [-1, 1, -1], [0, 1, -1], [1, 1, -1], [-1, -1, 0], + + [0, -1, 0], [1, -1, 0], [-1, 0, 0], [0, 0, 0], [1, 0, 0], [-1, 1, 0], + + [0, 1, 0], [1, 1, 0], [-1, -1, 1], [0, -1, 1], [1, -1, 1], [-1, 0, 1], + + [0, 0, 1], [1, 0, 1], [-1, 1, 1], [0, 1, 1], [1, 1, 1]] + +> posn_list_3d_size4 := map(ListTools[Reverse], +> hypercube_points([-1,-1,-1], [+2,+2,+2])); +posn_list_3d_size4 := [[-1, -1, -1], [0, -1, -1], [1, -1, -1], [2, -1, -1], + + [-1, 0, -1], [0, 0, -1], [1, 0, -1], [2, 0, -1], [-1, 1, -1], [0, 1, -1], + + [1, 1, -1], [2, 1, -1], [-1, 2, -1], [0, 2, -1], [1, 2, -1], [2, 2, -1], + + [-1, -1, 0], [0, -1, 0], [1, -1, 0], [2, -1, 0], [-1, 0, 0], [0, 0, 0], + + [1, 0, 0], [2, 0, 0], [-1, 1, 0], [0, 1, 0], [1, 1, 0], [2, 1, 0], + + [-1, 2, 0], [0, 2, 0], [1, 2, 0], [2, 2, 0], [-1, -1, 1], [0, -1, 1], + + [1, -1, 1], [2, -1, 1], [-1, 0, 1], [0, 0, 1], [1, 0, 1], [2, 0, 1], + + [-1, 1, 1], [0, 1, 1], [1, 1, 1], [2, 1, 1], [-1, 2, 1], [0, 2, 1], + + [1, 2, 1], [2, 2, 1], [-1, -1, 2], [0, -1, 2], [1, -1, 2], [2, -1, 2], + + [-1, 0, 2], [0, 0, 2], [1, 0, 2], [2, 0, 2], [-1, 1, 2], [0, 1, 2], + + [1, 1, 2], [2, 1, 2], [-1, 2, 2], [0, 2, 2], [1, 2, 2], [2, 2, 2]] + +> posn_list_3d_size5 := map(ListTools[Reverse], +> hypercube_points([-2,-2,-2], [+2,+2,+2])); +posn_list_3d_size5 := [[-2, -2, -2], [-1, -2, -2], [0, -2, -2], [1, -2, -2], + + [2, -2, -2], [-2, -1, -2], [-1, -1, -2], [0, -1, -2], [1, -1, -2], + + [2, -1, -2], [-2, 0, -2], [-1, 0, -2], [0, 0, -2], [1, 0, -2], [2, 0, -2], + + [-2, 1, -2], [-1, 1, -2], [0, 1, -2], [1, 1, -2], [2, 1, -2], [-2, 2, -2], + + [-1, 2, -2], [0, 2, -2], [1, 2, -2], [2, 2, -2], [-2, -2, -1], [-1, -2, -1], + + [0, -2, -1], [1, -2, -1], [2, -2, -1], [-2, -1, -1], [-1, -1, -1], + + [0, -1, -1], [1, -1, -1], [2, -1, -1], [-2, 0, -1], [-1, 0, -1], [0, 0, -1], + + [1, 0, -1], [2, 0, -1], [-2, 1, -1], [-1, 1, -1], [0, 1, -1], [1, 1, -1], + + [2, 1, -1], [-2, 2, -1], [-1, 2, -1], [0, 2, -1], [1, 2, -1], [2, 2, -1], + + [-2, -2, 0], [-1, -2, 0], [0, -2, 0], [1, -2, 0], [2, -2, 0], [-2, -1, 0], + + [-1, -1, 0], [0, -1, 0], [1, -1, 0], [2, -1, 0], [-2, 0, 0], [-1, 0, 0], + + [0, 0, 0], [1, 0, 0], [2, 0, 0], [-2, 1, 0], [-1, 1, 0], [0, 1, 0], + + [1, 1, 0], [2, 1, 0], [-2, 2, 0], [-1, 2, 0], [0, 2, 0], [1, 2, 0], + + [2, 2, 0], [-2, -2, 1], [-1, -2, 1], [0, -2, 1], [1, -2, 1], [2, -2, 1], + + [-2, -1, 1], [-1, -1, 1], [0, -1, 1], [1, -1, 1], [2, -1, 1], [-2, 0, 1], + + [-1, 0, 1], [0, 0, 1], [1, 0, 1], [2, 0, 1], [-2, 1, 1], [-1, 1, 1], + + [0, 1, 1], [1, 1, 1], [2, 1, 1], [-2, 2, 1], [-1, 2, 1], [0, 2, 1], + + [1, 2, 1], [2, 2, 1], [-2, -2, 2], [-1, -2, 2], [0, -2, 2], [1, -2, 2], + + [2, -2, 2], [-2, -1, 2], [-1, -1, 2], [0, -1, 2], [1, -1, 2], [2, -1, 2], + + [-2, 0, 2], [-1, 0, 2], [0, 0, 2], [1, 0, 2], [2, 0, 2], [-2, 1, 2], + + [-1, 1, 2], [0, 1, 2], [1, 1, 2], [2, 1, 2], [-2, 2, 2], [-1, 2, 2], + + [0, 2, 2], [1, 2, 2], [2, 2, 2]] + +# Maple code to compute common coefficients for all 1d interpolation schemes +# $Id: 1d.maple,v 1.4 2002/05/14 15:54:01 jthorn Exp $ +> +################################################################################ +> +# +# generic stuff for 1d, cube, size=2 +# +> +> data_var_list_1d_size2 := map(data_var_name, posn_list_1d_size2, "data_"); + data_var_list_1d_size2 := ["data_0", "data_p1"] + +> +> print_name_list_dcl(data_var_list_1d_size2, "fp", +> "1d.cube.size2/data-var.dcl.c"); +> print_data_var_assign(posn_list_1d_size2, "data_", +> "1d.cube.size2/data-var.assign.c"); +> +> print_interp_coeff_var_store(posn_list_1d_size2, "", "coeff_I_", +> "1d.cube.size2/coeff-I.store.c"); +> print_interp_coeff_var_store(posn_list_1d_size2, "factor", "coeff_dx_", +> "1d.cube.size2/coeff-dx.store.c"); +> +> print_name_list_dcl(map(coeff_name, posn_list_1d_size2, "coeff_I_"), "fp", +> "1d.cube.size2/coeff-I.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_1d_size2, "coeff_dx_"), "fp", +> "1d.cube.size2/coeff-dx.dcl.c"); +> +> print_interp_cmpt__lc_of_data(posn_list_1d_size2, +> "result", "coeff_I_", "data_", +> "1d.cube.size2/interp-I.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_1d_size2, +> "result", "coeff_dx_", "data_", +> "1d.cube.size2/interp-dx.compute.c"); +> +################################################################################ +> +# +# generic stuff for 1d, cube, size=3 +# +> +> data_var_list_1d_size3 := map(data_var_name, posn_list_1d_size3, "data_"); + data_var_list_1d_size3 := ["data_m1", "data_0", "data_p1"] + +> +> print_name_list_dcl(data_var_list_1d_size3, "fp", +> "1d.cube.size3/data-var.dcl.c"); +> print_data_var_assign(posn_list_1d_size3, "data_", +> "1d.cube.size3/data-var.assign.c"); +> +> print_interp_coeff_var_store(posn_list_1d_size3, "", "coeff_I_", +> "1d.cube.size3/coeff-I.store.c"); +> print_interp_coeff_var_store(posn_list_1d_size3, "factor", "coeff_dx_", +> "1d.cube.size3/coeff-dx.store.c"); +> print_interp_coeff_var_store(posn_list_1d_size3, "factor", "coeff_dxx_", +> "1d.cube.size3/coeff-dxx.store.c"); +> +> print_name_list_dcl(map(coeff_name, posn_list_1d_size3, "coeff_I_"), "fp", +> "1d.cube.size3/coeff-I.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_1d_size3, "coeff_dx_"), "fp", +> "1d.cube.size3/coeff-dx.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_1d_size3, "coeff_dxx_"), "fp", +> "1d.cube.size3/coeff-dxx.dcl.c"); +> +> print_interp_cmpt__lc_of_data(posn_list_1d_size3, +> "result", "coeff_I_", "data_", +> "1d.cube.size3/interp-I.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_1d_size3, +> "result", "coeff_dx_", "data_", +> "1d.cube.size3/interp-dx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_1d_size3, +> "result", "coeff_dxx_", "data_", +> "1d.cube.size3/interp-dxx.compute.c"); +> +################################################################################ +> +# +# generic stuff for 1d, cube, size=4 +# +> +> data_var_list_1d_size4 := map(data_var_name, posn_list_1d_size4, "data_"); + data_var_list_1d_size4 := ["data_m1", "data_0", "data_p1", "data_p2"] + +> +> print_name_list_dcl(data_var_list_1d_size4, "fp", +> "1d.cube.size4/data-var.dcl.c"); +> print_data_var_assign(posn_list_1d_size4, "data_", +> "1d.cube.size4/data-var.assign.c"); +> +> print_interp_coeff_var_store(posn_list_1d_size4, "", "coeff_I_", +> "1d.cube.size4/coeff-I.store.c"); +> print_interp_coeff_var_store(posn_list_1d_size4, "factor", "coeff_dx_", +> "1d.cube.size4/coeff-dx.store.c"); +> print_interp_coeff_var_store(posn_list_1d_size4, "factor", "coeff_dxx_", +> "1d.cube.size4/coeff-dxx.store.c"); +> +> print_name_list_dcl(map(coeff_name, posn_list_1d_size4, "coeff_I_"), "fp", +> "1d.cube.size4/coeff-I.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_1d_size4, "coeff_dx_"), "fp", +> "1d.cube.size4/coeff-dx.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_1d_size4, "coeff_dxx_"), "fp", +> "1d.cube.size4/coeff-dxx.dcl.c"); +> +> print_interp_cmpt__lc_of_data(posn_list_1d_size4, +> "result", "coeff_I_", "data_", +> "1d.cube.size4/interp-I.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_1d_size4, +> "result", "coeff_dx_", "data_", +> "1d.cube.size4/interp-dx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_1d_size4, +> "result", "coeff_dxx_", "data_", +> "1d.cube.size4/interp-dxx.compute.c"); +> +################################################################################ +> +# +# generic stuff for 1d, cube, size=5 +# +> +> data_var_list_1d_size5 := map(data_var_name, posn_list_1d_size5, "data_"); +data_var_list_1d_size5 := + + ["data_m2", "data_m1", "data_0", "data_p1", "data_p2"] + +> +> print_name_list_dcl(data_var_list_1d_size5, "fp", +> "1d.cube.size5/data-var.dcl.c"); +> print_data_var_assign(posn_list_1d_size5, "data_", +> "1d.cube.size5/data-var.assign.c"); +> +> print_interp_coeff_var_store(posn_list_1d_size5, "", "coeff_I_", +> "1d.cube.size5/coeff-I.store.c"); +> print_interp_coeff_var_store(posn_list_1d_size5, "factor", "coeff_dx_", +> "1d.cube.size5/coeff-dx.store.c"); +> print_interp_coeff_var_store(posn_list_1d_size5, "factor", "coeff_dxx_", +> "1d.cube.size5/coeff-dxx.store.c"); +> +> print_name_list_dcl(map(coeff_name, posn_list_1d_size5, "coeff_I_"), "fp", +> "1d.cube.size5/coeff-I.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_1d_size5, "coeff_dx_"), "fp", +> "1d.cube.size5/coeff-dx.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_1d_size5, "coeff_dxx_"), "fp", +> "1d.cube.size5/coeff-dxx.dcl.c"); +> +> print_interp_cmpt__lc_of_data(posn_list_1d_size5, +> "result", "coeff_I_", "data_", +> "1d.cube.size5/interp-I.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_1d_size5, +> "result", "coeff_dx_", "data_", +> "1d.cube.size5/interp-dx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_1d_size5, +> "result", "coeff_dxx_", "data_", +> "1d.cube.size5/interp-dxx.compute.c"); +> +################################################################################ +> +# +# generic stuff for 1d, cube, size=6 +# +> +> data_var_list_1d_size6 := map(data_var_name, posn_list_1d_size6, "data_"); +data_var_list_1d_size6 := + + ["data_m2", "data_m1", "data_0", "data_p1", "data_p2", "data_p3"] + +> +> print_name_list_dcl(data_var_list_1d_size6, "fp", +> "1d.cube.size6/data-var.dcl.c"); +> print_data_var_assign(posn_list_1d_size6, "data_", +> "1d.cube.size6/data-var.assign.c"); +> +> print_interp_coeff_var_store(posn_list_1d_size6, "", "coeff_I_", +> "1d.cube.size6/coeff-I.store.c"); +> print_interp_coeff_var_store(posn_list_1d_size6, "factor", "coeff_dx_", +> "1d.cube.size6/coeff-dx.store.c"); +> print_interp_coeff_var_store(posn_list_1d_size6, "factor", "coeff_dxx_", +> "1d.cube.size6/coeff-dxx.store.c"); +> +> print_name_list_dcl(map(coeff_name, posn_list_1d_size6, "coeff_I_"), "fp", +> "1d.cube.size6/coeff-I.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_1d_size6, "coeff_dx_"), "fp", +> "1d.cube.size6/coeff-dx.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_1d_size6, "coeff_dxx_"), "fp", +> "1d.cube.size6/coeff-dxx.dcl.c"); +> +> print_interp_cmpt__lc_of_data(posn_list_1d_size6, +> "result", "coeff_I_", "data_", +> "1d.cube.size6/interp-I.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_1d_size6, +> "result", "coeff_dx_", "data_", +> "1d.cube.size6/interp-dx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_1d_size6, +> "result", "coeff_dxx_", "data_", +> "1d.cube.size6/interp-dxx.compute.c"); +> +################################################################################ +> +# +# generic stuff for 1d, cube, size=7 +# +> +> data_var_list_1d_size7 := map(data_var_name, posn_list_1d_size7, "data_"); +data_var_list_1d_size7 := [ + + "data_m3", "data_m2", "data_m1", "data_0", "data_p1", "data_p2", "data_p3"] + +> +> print_name_list_dcl(data_var_list_1d_size7, "fp", +> "1d.cube.size7/data-var.dcl.c"); +> print_data_var_assign(posn_list_1d_size7, "data_", +> "1d.cube.size7/data-var.assign.c"); +> +> print_interp_coeff_var_store(posn_list_1d_size7, "", "coeff_I_", +> "1d.cube.size7/coeff-I.store.c"); +> print_interp_coeff_var_store(posn_list_1d_size7, "factor", "coeff_dx_", +> "1d.cube.size7/coeff-dx.store.c"); +> print_interp_coeff_var_store(posn_list_1d_size7, "factor", "coeff_dxx_", +> "1d.cube.size7/coeff-dxx.store.c"); +> +> print_name_list_dcl(map(coeff_name, posn_list_1d_size7, "coeff_I_"), "fp", +> "1d.cube.size7/coeff-I.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_1d_size7, "coeff_dx_"), "fp", +> "1d.cube.size7/coeff-dx.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_1d_size7, "coeff_dxx_"), "fp", +> "1d.cube.size7/coeff-dxx.dcl.c"); +> +> print_interp_cmpt__lc_of_data(posn_list_1d_size7, +> "result", "coeff_I_", "data_", +> "1d.cube.size7/interp-I.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_1d_size7, +> "result", "coeff_dx_", "data_", +> "1d.cube.size7/interp-dx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_1d_size7, +> "result", "coeff_dxx_", "data_", +> "1d.cube.size7/interp-dxx.compute.c"); +> +################################################################################ +> quit +bytes used=716820, alloc=655240, time=0.16 diff --git a/src/GeneralizedPolynomial-Uniform/common/1d.maple b/src/GeneralizedPolynomial-Uniform/common/1d.maple new file mode 100644 index 0000000..c51ed6c --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/1d.maple @@ -0,0 +1,219 @@ +# Maple code to compute common coefficients for all 1d interpolation schemes +# $Id$ + +################################################################################ + +# +# generic stuff for 1d, cube, size=2 +# + +data_var_list_1d_size2 := map(data_var_name, posn_list_1d_size2, "data_"); + +print_name_list_dcl(data_var_list_1d_size2, "fp", + "1d.cube.size2/data-var.dcl.c"); +print_data_var_assign(posn_list_1d_size2, "data_", + "1d.cube.size2/data-var.assign.c"); + +print_interp_coeff_var_store(posn_list_1d_size2, "", "coeff_I_", + "1d.cube.size2/coeff-I.store.c"); +print_interp_coeff_var_store(posn_list_1d_size2, "factor", "coeff_dx_", + "1d.cube.size2/coeff-dx.store.c"); + +print_name_list_dcl(map(coeff_name, posn_list_1d_size2, "coeff_I_"), "fp", + "1d.cube.size2/coeff-I.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_1d_size2, "coeff_dx_"), "fp", + "1d.cube.size2/coeff-dx.dcl.c"); + +print_interp_cmpt__lc_of_data(posn_list_1d_size2, + "result", "coeff_I_", "data_", + "1d.cube.size2/interp-I.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_1d_size2, + "result", "coeff_dx_", "data_", + "1d.cube.size2/interp-dx.compute.c"); + +################################################################################ + +# +# generic stuff for 1d, cube, size=3 +# + +data_var_list_1d_size3 := map(data_var_name, posn_list_1d_size3, "data_"); + +print_name_list_dcl(data_var_list_1d_size3, "fp", + "1d.cube.size3/data-var.dcl.c"); +print_data_var_assign(posn_list_1d_size3, "data_", + "1d.cube.size3/data-var.assign.c"); + +print_interp_coeff_var_store(posn_list_1d_size3, "", "coeff_I_", + "1d.cube.size3/coeff-I.store.c"); +print_interp_coeff_var_store(posn_list_1d_size3, "factor", "coeff_dx_", + "1d.cube.size3/coeff-dx.store.c"); +print_interp_coeff_var_store(posn_list_1d_size3, "factor", "coeff_dxx_", + "1d.cube.size3/coeff-dxx.store.c"); + +print_name_list_dcl(map(coeff_name, posn_list_1d_size3, "coeff_I_"), "fp", + "1d.cube.size3/coeff-I.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_1d_size3, "coeff_dx_"), "fp", + "1d.cube.size3/coeff-dx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_1d_size3, "coeff_dxx_"), "fp", + "1d.cube.size3/coeff-dxx.dcl.c"); + +print_interp_cmpt__lc_of_data(posn_list_1d_size3, + "result", "coeff_I_", "data_", + "1d.cube.size3/interp-I.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_1d_size3, + "result", "coeff_dx_", "data_", + "1d.cube.size3/interp-dx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_1d_size3, + "result", "coeff_dxx_", "data_", + "1d.cube.size3/interp-dxx.compute.c"); + +################################################################################ + +# +# generic stuff for 1d, cube, size=4 +# + +data_var_list_1d_size4 := map(data_var_name, posn_list_1d_size4, "data_"); + +print_name_list_dcl(data_var_list_1d_size4, "fp", + "1d.cube.size4/data-var.dcl.c"); +print_data_var_assign(posn_list_1d_size4, "data_", + "1d.cube.size4/data-var.assign.c"); + +print_interp_coeff_var_store(posn_list_1d_size4, "", "coeff_I_", + "1d.cube.size4/coeff-I.store.c"); +print_interp_coeff_var_store(posn_list_1d_size4, "factor", "coeff_dx_", + "1d.cube.size4/coeff-dx.store.c"); +print_interp_coeff_var_store(posn_list_1d_size4, "factor", "coeff_dxx_", + "1d.cube.size4/coeff-dxx.store.c"); + +print_name_list_dcl(map(coeff_name, posn_list_1d_size4, "coeff_I_"), "fp", + "1d.cube.size4/coeff-I.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_1d_size4, "coeff_dx_"), "fp", + "1d.cube.size4/coeff-dx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_1d_size4, "coeff_dxx_"), "fp", + "1d.cube.size4/coeff-dxx.dcl.c"); + +print_interp_cmpt__lc_of_data(posn_list_1d_size4, + "result", "coeff_I_", "data_", + "1d.cube.size4/interp-I.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_1d_size4, + "result", "coeff_dx_", "data_", + "1d.cube.size4/interp-dx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_1d_size4, + "result", "coeff_dxx_", "data_", + "1d.cube.size4/interp-dxx.compute.c"); + +################################################################################ + +# +# generic stuff for 1d, cube, size=5 +# + +data_var_list_1d_size5 := map(data_var_name, posn_list_1d_size5, "data_"); + +print_name_list_dcl(data_var_list_1d_size5, "fp", + "1d.cube.size5/data-var.dcl.c"); +print_data_var_assign(posn_list_1d_size5, "data_", + "1d.cube.size5/data-var.assign.c"); + +print_interp_coeff_var_store(posn_list_1d_size5, "", "coeff_I_", + "1d.cube.size5/coeff-I.store.c"); +print_interp_coeff_var_store(posn_list_1d_size5, "factor", "coeff_dx_", + "1d.cube.size5/coeff-dx.store.c"); +print_interp_coeff_var_store(posn_list_1d_size5, "factor", "coeff_dxx_", + "1d.cube.size5/coeff-dxx.store.c"); + +print_name_list_dcl(map(coeff_name, posn_list_1d_size5, "coeff_I_"), "fp", + "1d.cube.size5/coeff-I.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_1d_size5, "coeff_dx_"), "fp", + "1d.cube.size5/coeff-dx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_1d_size5, "coeff_dxx_"), "fp", + "1d.cube.size5/coeff-dxx.dcl.c"); + +print_interp_cmpt__lc_of_data(posn_list_1d_size5, + "result", "coeff_I_", "data_", + "1d.cube.size5/interp-I.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_1d_size5, + "result", "coeff_dx_", "data_", + "1d.cube.size5/interp-dx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_1d_size5, + "result", "coeff_dxx_", "data_", + "1d.cube.size5/interp-dxx.compute.c"); + +################################################################################ + +# +# generic stuff for 1d, cube, size=6 +# + +data_var_list_1d_size6 := map(data_var_name, posn_list_1d_size6, "data_"); + +print_name_list_dcl(data_var_list_1d_size6, "fp", + "1d.cube.size6/data-var.dcl.c"); +print_data_var_assign(posn_list_1d_size6, "data_", + "1d.cube.size6/data-var.assign.c"); + +print_interp_coeff_var_store(posn_list_1d_size6, "", "coeff_I_", + "1d.cube.size6/coeff-I.store.c"); +print_interp_coeff_var_store(posn_list_1d_size6, "factor", "coeff_dx_", + "1d.cube.size6/coeff-dx.store.c"); +print_interp_coeff_var_store(posn_list_1d_size6, "factor", "coeff_dxx_", + "1d.cube.size6/coeff-dxx.store.c"); + +print_name_list_dcl(map(coeff_name, posn_list_1d_size6, "coeff_I_"), "fp", + "1d.cube.size6/coeff-I.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_1d_size6, "coeff_dx_"), "fp", + "1d.cube.size6/coeff-dx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_1d_size6, "coeff_dxx_"), "fp", + "1d.cube.size6/coeff-dxx.dcl.c"); + +print_interp_cmpt__lc_of_data(posn_list_1d_size6, + "result", "coeff_I_", "data_", + "1d.cube.size6/interp-I.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_1d_size6, + "result", "coeff_dx_", "data_", + "1d.cube.size6/interp-dx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_1d_size6, + "result", "coeff_dxx_", "data_", + "1d.cube.size6/interp-dxx.compute.c"); + +################################################################################ + +# +# generic stuff for 1d, cube, size=7 +# + +data_var_list_1d_size7 := map(data_var_name, posn_list_1d_size7, "data_"); + +print_name_list_dcl(data_var_list_1d_size7, "fp", + "1d.cube.size7/data-var.dcl.c"); +print_data_var_assign(posn_list_1d_size7, "data_", + "1d.cube.size7/data-var.assign.c"); + +print_interp_coeff_var_store(posn_list_1d_size7, "", "coeff_I_", + "1d.cube.size7/coeff-I.store.c"); +print_interp_coeff_var_store(posn_list_1d_size7, "factor", "coeff_dx_", + "1d.cube.size7/coeff-dx.store.c"); +print_interp_coeff_var_store(posn_list_1d_size7, "factor", "coeff_dxx_", + "1d.cube.size7/coeff-dxx.store.c"); + +print_name_list_dcl(map(coeff_name, posn_list_1d_size7, "coeff_I_"), "fp", + "1d.cube.size7/coeff-I.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_1d_size7, "coeff_dx_"), "fp", + "1d.cube.size7/coeff-dx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_1d_size7, "coeff_dxx_"), "fp", + "1d.cube.size7/coeff-dxx.dcl.c"); + +print_interp_cmpt__lc_of_data(posn_list_1d_size7, + "result", "coeff_I_", "data_", + "1d.cube.size7/interp-I.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_1d_size7, + "result", "coeff_dx_", "data_", + "1d.cube.size7/interp-dx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_1d_size7, + "result", "coeff_dxx_", "data_", + "1d.cube.size7/interp-dxx.compute.c"); + +################################################################################ diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/coeff-I.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/coeff-I.dcl.c new file mode 100644 index 0000000..af64cc9 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/coeff-I.dcl.c @@ -0,0 +1,4 @@ +fp coeff_I_0_0, + coeff_I_p1_0, + coeff_I_0_p1, + coeff_I_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/coeff-I.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/coeff-I.store.c new file mode 100644 index 0000000..6305377 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/coeff-I.store.c @@ -0,0 +1,4 @@ +COEFF(0,0) = coeff_I_0_0; +COEFF(1,0) = coeff_I_p1_0; +COEFF(0,1) = coeff_I_0_p1; +COEFF(1,1) = coeff_I_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/coeff-dx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/coeff-dx.dcl.c new file mode 100644 index 0000000..7d73499 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/coeff-dx.dcl.c @@ -0,0 +1,4 @@ +fp coeff_dx_0_0, + coeff_dx_p1_0, + coeff_dx_0_p1, + coeff_dx_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/coeff-dx.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/coeff-dx.store.c new file mode 100644 index 0000000..21a0636 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/coeff-dx.store.c @@ -0,0 +1,4 @@ +COEFF(0,0) = factor * coeff_dx_0_0; +COEFF(1,0) = factor * coeff_dx_p1_0; +COEFF(0,1) = factor * coeff_dx_0_p1; +COEFF(1,1) = factor * coeff_dx_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/coeff-dy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/coeff-dy.dcl.c new file mode 100644 index 0000000..6f95065 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/coeff-dy.dcl.c @@ -0,0 +1,4 @@ +fp coeff_dy_0_0, + coeff_dy_p1_0, + coeff_dy_0_p1, + coeff_dy_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/coeff-dy.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/coeff-dy.store.c new file mode 100644 index 0000000..4362e3d --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/coeff-dy.store.c @@ -0,0 +1,4 @@ +COEFF(0,0) = factor * coeff_dy_0_0; +COEFF(1,0) = factor * coeff_dy_p1_0; +COEFF(0,1) = factor * coeff_dy_0_p1; +COEFF(1,1) = factor * coeff_dy_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/data-var.assign.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/data-var.assign.c new file mode 100644 index 0000000..9aceea0 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/data-var.assign.c @@ -0,0 +1,4 @@ +data_0_0 = DATA(0,0); +data_p1_0 = DATA(1,0); +data_0_p1 = DATA(0,1); +data_p1_p1 = DATA(1,1); diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/data-var.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/data-var.dcl.c new file mode 100644 index 0000000..b2090e4 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/data-var.dcl.c @@ -0,0 +1,4 @@ +fp data_0_0, + data_p1_0, + data_0_p1, + data_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/interp-I.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/interp-I.compute.c new file mode 100644 index 0000000..9253b6c --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/interp-I.compute.c @@ -0,0 +1,5 @@ +result = + coeff_I_0_0*data_0_0 + + coeff_I_p1_0*data_p1_0 + + coeff_I_0_p1*data_0_p1 + + coeff_I_p1_p1*data_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/interp-dx.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/interp-dx.compute.c new file mode 100644 index 0000000..c29ba6d --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/interp-dx.compute.c @@ -0,0 +1,5 @@ +result = + coeff_dx_0_0*data_0_0 + + coeff_dx_p1_0*data_p1_0 + + coeff_dx_0_p1*data_0_p1 + + coeff_dx_p1_p1*data_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/interp-dy.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/interp-dy.compute.c new file mode 100644 index 0000000..ca30ad0 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size2/interp-dy.compute.c @@ -0,0 +1,5 @@ +result = + coeff_dy_0_0*data_0_0 + + coeff_dy_p1_0*data_p1_0 + + coeff_dy_0_p1*data_0_p1 + + coeff_dy_p1_p1*data_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-I.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-I.dcl.c new file mode 100644 index 0000000..3f4b0cb --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-I.dcl.c @@ -0,0 +1,9 @@ +fp coeff_I_m1_m1, + coeff_I_0_m1, + coeff_I_p1_m1, + coeff_I_m1_0, + coeff_I_0_0, + coeff_I_p1_0, + coeff_I_m1_p1, + coeff_I_0_p1, + coeff_I_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-I.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-I.store.c new file mode 100644 index 0000000..5169a37 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-I.store.c @@ -0,0 +1,9 @@ +COEFF(-1,-1) = coeff_I_m1_m1; +COEFF(0,-1) = coeff_I_0_m1; +COEFF(1,-1) = coeff_I_p1_m1; +COEFF(-1,0) = coeff_I_m1_0; +COEFF(0,0) = coeff_I_0_0; +COEFF(1,0) = coeff_I_p1_0; +COEFF(-1,1) = coeff_I_m1_p1; +COEFF(0,1) = coeff_I_0_p1; +COEFF(1,1) = coeff_I_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dx.dcl.c new file mode 100644 index 0000000..3efed8a --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dx.dcl.c @@ -0,0 +1,9 @@ +fp coeff_dx_m1_m1, + coeff_dx_0_m1, + coeff_dx_p1_m1, + coeff_dx_m1_0, + coeff_dx_0_0, + coeff_dx_p1_0, + coeff_dx_m1_p1, + coeff_dx_0_p1, + coeff_dx_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dx.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dx.store.c new file mode 100644 index 0000000..bad0cff --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dx.store.c @@ -0,0 +1,9 @@ +COEFF(-1,-1) = factor * coeff_dx_m1_m1; +COEFF(0,-1) = factor * coeff_dx_0_m1; +COEFF(1,-1) = factor * coeff_dx_p1_m1; +COEFF(-1,0) = factor * coeff_dx_m1_0; +COEFF(0,0) = factor * coeff_dx_0_0; +COEFF(1,0) = factor * coeff_dx_p1_0; +COEFF(-1,1) = factor * coeff_dx_m1_p1; +COEFF(0,1) = factor * coeff_dx_0_p1; +COEFF(1,1) = factor * coeff_dx_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dxx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dxx.dcl.c new file mode 100644 index 0000000..2c62a96 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dxx.dcl.c @@ -0,0 +1,9 @@ +fp coeff_dxx_m1_m1, + coeff_dxx_0_m1, + coeff_dxx_p1_m1, + coeff_dxx_m1_0, + coeff_dxx_0_0, + coeff_dxx_p1_0, + coeff_dxx_m1_p1, + coeff_dxx_0_p1, + coeff_dxx_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dxx.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dxx.store.c new file mode 100644 index 0000000..d8dcd56 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dxx.store.c @@ -0,0 +1,9 @@ +COEFF(-1,-1) = factor * coeff_dxx_m1_m1; +COEFF(0,-1) = factor * coeff_dxx_0_m1; +COEFF(1,-1) = factor * coeff_dxx_p1_m1; +COEFF(-1,0) = factor * coeff_dxx_m1_0; +COEFF(0,0) = factor * coeff_dxx_0_0; +COEFF(1,0) = factor * coeff_dxx_p1_0; +COEFF(-1,1) = factor * coeff_dxx_m1_p1; +COEFF(0,1) = factor * coeff_dxx_0_p1; +COEFF(1,1) = factor * coeff_dxx_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dxy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dxy.dcl.c new file mode 100644 index 0000000..0b6a45b --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dxy.dcl.c @@ -0,0 +1,9 @@ +fp coeff_dxy_m1_m1, + coeff_dxy_0_m1, + coeff_dxy_p1_m1, + coeff_dxy_m1_0, + coeff_dxy_0_0, + coeff_dxy_p1_0, + coeff_dxy_m1_p1, + coeff_dxy_0_p1, + coeff_dxy_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dxy.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dxy.store.c new file mode 100644 index 0000000..72febae --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dxy.store.c @@ -0,0 +1,9 @@ +COEFF(-1,-1) = factor * coeff_dxy_m1_m1; +COEFF(0,-1) = factor * coeff_dxy_0_m1; +COEFF(1,-1) = factor * coeff_dxy_p1_m1; +COEFF(-1,0) = factor * coeff_dxy_m1_0; +COEFF(0,0) = factor * coeff_dxy_0_0; +COEFF(1,0) = factor * coeff_dxy_p1_0; +COEFF(-1,1) = factor * coeff_dxy_m1_p1; +COEFF(0,1) = factor * coeff_dxy_0_p1; +COEFF(1,1) = factor * coeff_dxy_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dy.dcl.c new file mode 100644 index 0000000..1aebea8 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dy.dcl.c @@ -0,0 +1,9 @@ +fp coeff_dy_m1_m1, + coeff_dy_0_m1, + coeff_dy_p1_m1, + coeff_dy_m1_0, + coeff_dy_0_0, + coeff_dy_p1_0, + coeff_dy_m1_p1, + coeff_dy_0_p1, + coeff_dy_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dy.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dy.store.c new file mode 100644 index 0000000..a24c8dd --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dy.store.c @@ -0,0 +1,9 @@ +COEFF(-1,-1) = factor * coeff_dy_m1_m1; +COEFF(0,-1) = factor * coeff_dy_0_m1; +COEFF(1,-1) = factor * coeff_dy_p1_m1; +COEFF(-1,0) = factor * coeff_dy_m1_0; +COEFF(0,0) = factor * coeff_dy_0_0; +COEFF(1,0) = factor * coeff_dy_p1_0; +COEFF(-1,1) = factor * coeff_dy_m1_p1; +COEFF(0,1) = factor * coeff_dy_0_p1; +COEFF(1,1) = factor * coeff_dy_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dyy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dyy.dcl.c new file mode 100644 index 0000000..52b76c9 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dyy.dcl.c @@ -0,0 +1,9 @@ +fp coeff_dyy_m1_m1, + coeff_dyy_0_m1, + coeff_dyy_p1_m1, + coeff_dyy_m1_0, + coeff_dyy_0_0, + coeff_dyy_p1_0, + coeff_dyy_m1_p1, + coeff_dyy_0_p1, + coeff_dyy_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dyy.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dyy.store.c new file mode 100644 index 0000000..51d8886 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/coeff-dyy.store.c @@ -0,0 +1,9 @@ +COEFF(-1,-1) = factor * coeff_dyy_m1_m1; +COEFF(0,-1) = factor * coeff_dyy_0_m1; +COEFF(1,-1) = factor * coeff_dyy_p1_m1; +COEFF(-1,0) = factor * coeff_dyy_m1_0; +COEFF(0,0) = factor * coeff_dyy_0_0; +COEFF(1,0) = factor * coeff_dyy_p1_0; +COEFF(-1,1) = factor * coeff_dyy_m1_p1; +COEFF(0,1) = factor * coeff_dyy_0_p1; +COEFF(1,1) = factor * coeff_dyy_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/data-var.assign.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/data-var.assign.c new file mode 100644 index 0000000..bb68189 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/data-var.assign.c @@ -0,0 +1,9 @@ +data_m1_m1 = DATA(-1,-1); +data_0_m1 = DATA(0,-1); +data_p1_m1 = DATA(1,-1); +data_m1_0 = DATA(-1,0); +data_0_0 = DATA(0,0); +data_p1_0 = DATA(1,0); +data_m1_p1 = DATA(-1,1); +data_0_p1 = DATA(0,1); +data_p1_p1 = DATA(1,1); diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/data-var.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/data-var.dcl.c new file mode 100644 index 0000000..77a064e --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/data-var.dcl.c @@ -0,0 +1,9 @@ +fp data_m1_m1, + data_0_m1, + data_p1_m1, + data_m1_0, + data_0_0, + data_p1_0, + data_m1_p1, + data_0_p1, + data_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/interp-I.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/interp-I.compute.c new file mode 100644 index 0000000..b9249fa --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/interp-I.compute.c @@ -0,0 +1,10 @@ +result = + coeff_I_m1_m1*data_m1_m1 + + coeff_I_0_m1*data_0_m1 + + coeff_I_p1_m1*data_p1_m1 + + coeff_I_m1_0*data_m1_0 + + coeff_I_0_0*data_0_0 + + coeff_I_p1_0*data_p1_0 + + coeff_I_m1_p1*data_m1_p1 + + coeff_I_0_p1*data_0_p1 + + coeff_I_p1_p1*data_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/interp-dx.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/interp-dx.compute.c new file mode 100644 index 0000000..f7d5f3a --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/interp-dx.compute.c @@ -0,0 +1,10 @@ +result = + coeff_dx_m1_m1*data_m1_m1 + + coeff_dx_0_m1*data_0_m1 + + coeff_dx_p1_m1*data_p1_m1 + + coeff_dx_m1_0*data_m1_0 + + coeff_dx_0_0*data_0_0 + + coeff_dx_p1_0*data_p1_0 + + coeff_dx_m1_p1*data_m1_p1 + + coeff_dx_0_p1*data_0_p1 + + coeff_dx_p1_p1*data_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/interp-dxx.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/interp-dxx.compute.c new file mode 100644 index 0000000..9764dbc --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/interp-dxx.compute.c @@ -0,0 +1,10 @@ +result = + coeff_dxx_m1_m1*data_m1_m1 + + coeff_dxx_0_m1*data_0_m1 + + coeff_dxx_p1_m1*data_p1_m1 + + coeff_dxx_m1_0*data_m1_0 + + coeff_dxx_0_0*data_0_0 + + coeff_dxx_p1_0*data_p1_0 + + coeff_dxx_m1_p1*data_m1_p1 + + coeff_dxx_0_p1*data_0_p1 + + coeff_dxx_p1_p1*data_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/interp-dxy.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/interp-dxy.compute.c new file mode 100644 index 0000000..5c9faa7 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/interp-dxy.compute.c @@ -0,0 +1,10 @@ +result = + coeff_dxy_m1_m1*data_m1_m1 + + coeff_dxy_0_m1*data_0_m1 + + coeff_dxy_p1_m1*data_p1_m1 + + coeff_dxy_m1_0*data_m1_0 + + coeff_dxy_0_0*data_0_0 + + coeff_dxy_p1_0*data_p1_0 + + coeff_dxy_m1_p1*data_m1_p1 + + coeff_dxy_0_p1*data_0_p1 + + coeff_dxy_p1_p1*data_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/interp-dy.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/interp-dy.compute.c new file mode 100644 index 0000000..d4eb9ca --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/interp-dy.compute.c @@ -0,0 +1,10 @@ +result = + coeff_dy_m1_m1*data_m1_m1 + + coeff_dy_0_m1*data_0_m1 + + coeff_dy_p1_m1*data_p1_m1 + + coeff_dy_m1_0*data_m1_0 + + coeff_dy_0_0*data_0_0 + + coeff_dy_p1_0*data_p1_0 + + coeff_dy_m1_p1*data_m1_p1 + + coeff_dy_0_p1*data_0_p1 + + coeff_dy_p1_p1*data_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/interp-dyy.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/interp-dyy.compute.c new file mode 100644 index 0000000..6ee2445 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size3/interp-dyy.compute.c @@ -0,0 +1,10 @@ +result = + coeff_dyy_m1_m1*data_m1_m1 + + coeff_dyy_0_m1*data_0_m1 + + coeff_dyy_p1_m1*data_p1_m1 + + coeff_dyy_m1_0*data_m1_0 + + coeff_dyy_0_0*data_0_0 + + coeff_dyy_p1_0*data_p1_0 + + coeff_dyy_m1_p1*data_m1_p1 + + coeff_dyy_0_p1*data_0_p1 + + coeff_dyy_p1_p1*data_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-I.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-I.dcl.c new file mode 100644 index 0000000..d35d81b --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-I.dcl.c @@ -0,0 +1,16 @@ +fp coeff_I_m1_m1, + coeff_I_0_m1, + coeff_I_p1_m1, + coeff_I_p2_m1, + coeff_I_m1_0, + coeff_I_0_0, + coeff_I_p1_0, + coeff_I_p2_0, + coeff_I_m1_p1, + coeff_I_0_p1, + coeff_I_p1_p1, + coeff_I_p2_p1, + coeff_I_m1_p2, + coeff_I_0_p2, + coeff_I_p1_p2, + coeff_I_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-I.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-I.store.c new file mode 100644 index 0000000..729b8ea --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-I.store.c @@ -0,0 +1,16 @@ +COEFF(-1,-1) = coeff_I_m1_m1; +COEFF(0,-1) = coeff_I_0_m1; +COEFF(1,-1) = coeff_I_p1_m1; +COEFF(2,-1) = coeff_I_p2_m1; +COEFF(-1,0) = coeff_I_m1_0; +COEFF(0,0) = coeff_I_0_0; +COEFF(1,0) = coeff_I_p1_0; +COEFF(2,0) = coeff_I_p2_0; +COEFF(-1,1) = coeff_I_m1_p1; +COEFF(0,1) = coeff_I_0_p1; +COEFF(1,1) = coeff_I_p1_p1; +COEFF(2,1) = coeff_I_p2_p1; +COEFF(-1,2) = coeff_I_m1_p2; +COEFF(0,2) = coeff_I_0_p2; +COEFF(1,2) = coeff_I_p1_p2; +COEFF(2,2) = coeff_I_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dx.dcl.c new file mode 100644 index 0000000..edfc9bb --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dx.dcl.c @@ -0,0 +1,16 @@ +fp coeff_dx_m1_m1, + coeff_dx_0_m1, + coeff_dx_p1_m1, + coeff_dx_p2_m1, + coeff_dx_m1_0, + coeff_dx_0_0, + coeff_dx_p1_0, + coeff_dx_p2_0, + coeff_dx_m1_p1, + coeff_dx_0_p1, + coeff_dx_p1_p1, + coeff_dx_p2_p1, + coeff_dx_m1_p2, + coeff_dx_0_p2, + coeff_dx_p1_p2, + coeff_dx_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dx.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dx.store.c new file mode 100644 index 0000000..c1bdc39 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dx.store.c @@ -0,0 +1,16 @@ +COEFF(-1,-1) = factor * coeff_dx_m1_m1; +COEFF(0,-1) = factor * coeff_dx_0_m1; +COEFF(1,-1) = factor * coeff_dx_p1_m1; +COEFF(2,-1) = factor * coeff_dx_p2_m1; +COEFF(-1,0) = factor * coeff_dx_m1_0; +COEFF(0,0) = factor * coeff_dx_0_0; +COEFF(1,0) = factor * coeff_dx_p1_0; +COEFF(2,0) = factor * coeff_dx_p2_0; +COEFF(-1,1) = factor * coeff_dx_m1_p1; +COEFF(0,1) = factor * coeff_dx_0_p1; +COEFF(1,1) = factor * coeff_dx_p1_p1; +COEFF(2,1) = factor * coeff_dx_p2_p1; +COEFF(-1,2) = factor * coeff_dx_m1_p2; +COEFF(0,2) = factor * coeff_dx_0_p2; +COEFF(1,2) = factor * coeff_dx_p1_p2; +COEFF(2,2) = factor * coeff_dx_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dxx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dxx.dcl.c new file mode 100644 index 0000000..b5add16 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dxx.dcl.c @@ -0,0 +1,16 @@ +fp coeff_dxx_m1_m1, + coeff_dxx_0_m1, + coeff_dxx_p1_m1, + coeff_dxx_p2_m1, + coeff_dxx_m1_0, + coeff_dxx_0_0, + coeff_dxx_p1_0, + coeff_dxx_p2_0, + coeff_dxx_m1_p1, + coeff_dxx_0_p1, + coeff_dxx_p1_p1, + coeff_dxx_p2_p1, + coeff_dxx_m1_p2, + coeff_dxx_0_p2, + coeff_dxx_p1_p2, + coeff_dxx_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dxx.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dxx.store.c new file mode 100644 index 0000000..e65fc6f --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dxx.store.c @@ -0,0 +1,16 @@ +COEFF(-1,-1) = factor * coeff_dxx_m1_m1; +COEFF(0,-1) = factor * coeff_dxx_0_m1; +COEFF(1,-1) = factor * coeff_dxx_p1_m1; +COEFF(2,-1) = factor * coeff_dxx_p2_m1; +COEFF(-1,0) = factor * coeff_dxx_m1_0; +COEFF(0,0) = factor * coeff_dxx_0_0; +COEFF(1,0) = factor * coeff_dxx_p1_0; +COEFF(2,0) = factor * coeff_dxx_p2_0; +COEFF(-1,1) = factor * coeff_dxx_m1_p1; +COEFF(0,1) = factor * coeff_dxx_0_p1; +COEFF(1,1) = factor * coeff_dxx_p1_p1; +COEFF(2,1) = factor * coeff_dxx_p2_p1; +COEFF(-1,2) = factor * coeff_dxx_m1_p2; +COEFF(0,2) = factor * coeff_dxx_0_p2; +COEFF(1,2) = factor * coeff_dxx_p1_p2; +COEFF(2,2) = factor * coeff_dxx_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dxy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dxy.dcl.c new file mode 100644 index 0000000..853b503 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dxy.dcl.c @@ -0,0 +1,16 @@ +fp coeff_dxy_m1_m1, + coeff_dxy_0_m1, + coeff_dxy_p1_m1, + coeff_dxy_p2_m1, + coeff_dxy_m1_0, + coeff_dxy_0_0, + coeff_dxy_p1_0, + coeff_dxy_p2_0, + coeff_dxy_m1_p1, + coeff_dxy_0_p1, + coeff_dxy_p1_p1, + coeff_dxy_p2_p1, + coeff_dxy_m1_p2, + coeff_dxy_0_p2, + coeff_dxy_p1_p2, + coeff_dxy_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dxy.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dxy.store.c new file mode 100644 index 0000000..442cfe8 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dxy.store.c @@ -0,0 +1,16 @@ +COEFF(-1,-1) = factor * coeff_dxy_m1_m1; +COEFF(0,-1) = factor * coeff_dxy_0_m1; +COEFF(1,-1) = factor * coeff_dxy_p1_m1; +COEFF(2,-1) = factor * coeff_dxy_p2_m1; +COEFF(-1,0) = factor * coeff_dxy_m1_0; +COEFF(0,0) = factor * coeff_dxy_0_0; +COEFF(1,0) = factor * coeff_dxy_p1_0; +COEFF(2,0) = factor * coeff_dxy_p2_0; +COEFF(-1,1) = factor * coeff_dxy_m1_p1; +COEFF(0,1) = factor * coeff_dxy_0_p1; +COEFF(1,1) = factor * coeff_dxy_p1_p1; +COEFF(2,1) = factor * coeff_dxy_p2_p1; +COEFF(-1,2) = factor * coeff_dxy_m1_p2; +COEFF(0,2) = factor * coeff_dxy_0_p2; +COEFF(1,2) = factor * coeff_dxy_p1_p2; +COEFF(2,2) = factor * coeff_dxy_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dy.dcl.c new file mode 100644 index 0000000..e27b5ff --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dy.dcl.c @@ -0,0 +1,16 @@ +fp coeff_dy_m1_m1, + coeff_dy_0_m1, + coeff_dy_p1_m1, + coeff_dy_p2_m1, + coeff_dy_m1_0, + coeff_dy_0_0, + coeff_dy_p1_0, + coeff_dy_p2_0, + coeff_dy_m1_p1, + coeff_dy_0_p1, + coeff_dy_p1_p1, + coeff_dy_p2_p1, + coeff_dy_m1_p2, + coeff_dy_0_p2, + coeff_dy_p1_p2, + coeff_dy_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dy.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dy.store.c new file mode 100644 index 0000000..fa3aefd --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dy.store.c @@ -0,0 +1,16 @@ +COEFF(-1,-1) = factor * coeff_dy_m1_m1; +COEFF(0,-1) = factor * coeff_dy_0_m1; +COEFF(1,-1) = factor * coeff_dy_p1_m1; +COEFF(2,-1) = factor * coeff_dy_p2_m1; +COEFF(-1,0) = factor * coeff_dy_m1_0; +COEFF(0,0) = factor * coeff_dy_0_0; +COEFF(1,0) = factor * coeff_dy_p1_0; +COEFF(2,0) = factor * coeff_dy_p2_0; +COEFF(-1,1) = factor * coeff_dy_m1_p1; +COEFF(0,1) = factor * coeff_dy_0_p1; +COEFF(1,1) = factor * coeff_dy_p1_p1; +COEFF(2,1) = factor * coeff_dy_p2_p1; +COEFF(-1,2) = factor * coeff_dy_m1_p2; +COEFF(0,2) = factor * coeff_dy_0_p2; +COEFF(1,2) = factor * coeff_dy_p1_p2; +COEFF(2,2) = factor * coeff_dy_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dyy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dyy.dcl.c new file mode 100644 index 0000000..ee37cfe --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dyy.dcl.c @@ -0,0 +1,16 @@ +fp coeff_dyy_m1_m1, + coeff_dyy_0_m1, + coeff_dyy_p1_m1, + coeff_dyy_p2_m1, + coeff_dyy_m1_0, + coeff_dyy_0_0, + coeff_dyy_p1_0, + coeff_dyy_p2_0, + coeff_dyy_m1_p1, + coeff_dyy_0_p1, + coeff_dyy_p1_p1, + coeff_dyy_p2_p1, + coeff_dyy_m1_p2, + coeff_dyy_0_p2, + coeff_dyy_p1_p2, + coeff_dyy_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dyy.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dyy.store.c new file mode 100644 index 0000000..3f29fbf --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/coeff-dyy.store.c @@ -0,0 +1,16 @@ +COEFF(-1,-1) = factor * coeff_dyy_m1_m1; +COEFF(0,-1) = factor * coeff_dyy_0_m1; +COEFF(1,-1) = factor * coeff_dyy_p1_m1; +COEFF(2,-1) = factor * coeff_dyy_p2_m1; +COEFF(-1,0) = factor * coeff_dyy_m1_0; +COEFF(0,0) = factor * coeff_dyy_0_0; +COEFF(1,0) = factor * coeff_dyy_p1_0; +COEFF(2,0) = factor * coeff_dyy_p2_0; +COEFF(-1,1) = factor * coeff_dyy_m1_p1; +COEFF(0,1) = factor * coeff_dyy_0_p1; +COEFF(1,1) = factor * coeff_dyy_p1_p1; +COEFF(2,1) = factor * coeff_dyy_p2_p1; +COEFF(-1,2) = factor * coeff_dyy_m1_p2; +COEFF(0,2) = factor * coeff_dyy_0_p2; +COEFF(1,2) = factor * coeff_dyy_p1_p2; +COEFF(2,2) = factor * coeff_dyy_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/data-var.assign.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/data-var.assign.c new file mode 100644 index 0000000..d0316f1 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/data-var.assign.c @@ -0,0 +1,16 @@ +data_m1_m1 = DATA(-1,-1); +data_0_m1 = DATA(0,-1); +data_p1_m1 = DATA(1,-1); +data_p2_m1 = DATA(2,-1); +data_m1_0 = DATA(-1,0); +data_0_0 = DATA(0,0); +data_p1_0 = DATA(1,0); +data_p2_0 = DATA(2,0); +data_m1_p1 = DATA(-1,1); +data_0_p1 = DATA(0,1); +data_p1_p1 = DATA(1,1); +data_p2_p1 = DATA(2,1); +data_m1_p2 = DATA(-1,2); +data_0_p2 = DATA(0,2); +data_p1_p2 = DATA(1,2); +data_p2_p2 = DATA(2,2); diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/data-var.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/data-var.dcl.c new file mode 100644 index 0000000..abbfb5d --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/data-var.dcl.c @@ -0,0 +1,16 @@ +fp data_m1_m1, + data_0_m1, + data_p1_m1, + data_p2_m1, + data_m1_0, + data_0_0, + data_p1_0, + data_p2_0, + data_m1_p1, + data_0_p1, + data_p1_p1, + data_p2_p1, + data_m1_p2, + data_0_p2, + data_p1_p2, + data_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/interp-I.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/interp-I.compute.c new file mode 100644 index 0000000..cf13e49 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/interp-I.compute.c @@ -0,0 +1,17 @@ +result = + coeff_I_m1_m1*data_m1_m1 + + coeff_I_0_m1*data_0_m1 + + coeff_I_p1_m1*data_p1_m1 + + coeff_I_p2_m1*data_p2_m1 + + coeff_I_m1_0*data_m1_0 + + coeff_I_0_0*data_0_0 + + coeff_I_p1_0*data_p1_0 + + coeff_I_p2_0*data_p2_0 + + coeff_I_m1_p1*data_m1_p1 + + coeff_I_0_p1*data_0_p1 + + coeff_I_p1_p1*data_p1_p1 + + coeff_I_p2_p1*data_p2_p1 + + coeff_I_m1_p2*data_m1_p2 + + coeff_I_0_p2*data_0_p2 + + coeff_I_p1_p2*data_p1_p2 + + coeff_I_p2_p2*data_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/interp-dx.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/interp-dx.compute.c new file mode 100644 index 0000000..69f9f56 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/interp-dx.compute.c @@ -0,0 +1,17 @@ +result = + coeff_dx_m1_m1*data_m1_m1 + + coeff_dx_0_m1*data_0_m1 + + coeff_dx_p1_m1*data_p1_m1 + + coeff_dx_p2_m1*data_p2_m1 + + coeff_dx_m1_0*data_m1_0 + + coeff_dx_0_0*data_0_0 + + coeff_dx_p1_0*data_p1_0 + + coeff_dx_p2_0*data_p2_0 + + coeff_dx_m1_p1*data_m1_p1 + + coeff_dx_0_p1*data_0_p1 + + coeff_dx_p1_p1*data_p1_p1 + + coeff_dx_p2_p1*data_p2_p1 + + coeff_dx_m1_p2*data_m1_p2 + + coeff_dx_0_p2*data_0_p2 + + coeff_dx_p1_p2*data_p1_p2 + + coeff_dx_p2_p2*data_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/interp-dxx.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/interp-dxx.compute.c new file mode 100644 index 0000000..9ce20a1 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/interp-dxx.compute.c @@ -0,0 +1,17 @@ +result = + coeff_dxx_m1_m1*data_m1_m1 + + coeff_dxx_0_m1*data_0_m1 + + coeff_dxx_p1_m1*data_p1_m1 + + coeff_dxx_p2_m1*data_p2_m1 + + coeff_dxx_m1_0*data_m1_0 + + coeff_dxx_0_0*data_0_0 + + coeff_dxx_p1_0*data_p1_0 + + coeff_dxx_p2_0*data_p2_0 + + coeff_dxx_m1_p1*data_m1_p1 + + coeff_dxx_0_p1*data_0_p1 + + coeff_dxx_p1_p1*data_p1_p1 + + coeff_dxx_p2_p1*data_p2_p1 + + coeff_dxx_m1_p2*data_m1_p2 + + coeff_dxx_0_p2*data_0_p2 + + coeff_dxx_p1_p2*data_p1_p2 + + coeff_dxx_p2_p2*data_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/interp-dxy.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/interp-dxy.compute.c new file mode 100644 index 0000000..5130c7b --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/interp-dxy.compute.c @@ -0,0 +1,17 @@ +result = + coeff_dxy_m1_m1*data_m1_m1 + + coeff_dxy_0_m1*data_0_m1 + + coeff_dxy_p1_m1*data_p1_m1 + + coeff_dxy_p2_m1*data_p2_m1 + + coeff_dxy_m1_0*data_m1_0 + + coeff_dxy_0_0*data_0_0 + + coeff_dxy_p1_0*data_p1_0 + + coeff_dxy_p2_0*data_p2_0 + + coeff_dxy_m1_p1*data_m1_p1 + + coeff_dxy_0_p1*data_0_p1 + + coeff_dxy_p1_p1*data_p1_p1 + + coeff_dxy_p2_p1*data_p2_p1 + + coeff_dxy_m1_p2*data_m1_p2 + + coeff_dxy_0_p2*data_0_p2 + + coeff_dxy_p1_p2*data_p1_p2 + + coeff_dxy_p2_p2*data_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/interp-dy.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/interp-dy.compute.c new file mode 100644 index 0000000..f671033 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/interp-dy.compute.c @@ -0,0 +1,17 @@ +result = + coeff_dy_m1_m1*data_m1_m1 + + coeff_dy_0_m1*data_0_m1 + + coeff_dy_p1_m1*data_p1_m1 + + coeff_dy_p2_m1*data_p2_m1 + + coeff_dy_m1_0*data_m1_0 + + coeff_dy_0_0*data_0_0 + + coeff_dy_p1_0*data_p1_0 + + coeff_dy_p2_0*data_p2_0 + + coeff_dy_m1_p1*data_m1_p1 + + coeff_dy_0_p1*data_0_p1 + + coeff_dy_p1_p1*data_p1_p1 + + coeff_dy_p2_p1*data_p2_p1 + + coeff_dy_m1_p2*data_m1_p2 + + coeff_dy_0_p2*data_0_p2 + + coeff_dy_p1_p2*data_p1_p2 + + coeff_dy_p2_p2*data_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/interp-dyy.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/interp-dyy.compute.c new file mode 100644 index 0000000..112e958 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size4/interp-dyy.compute.c @@ -0,0 +1,17 @@ +result = + coeff_dyy_m1_m1*data_m1_m1 + + coeff_dyy_0_m1*data_0_m1 + + coeff_dyy_p1_m1*data_p1_m1 + + coeff_dyy_p2_m1*data_p2_m1 + + coeff_dyy_m1_0*data_m1_0 + + coeff_dyy_0_0*data_0_0 + + coeff_dyy_p1_0*data_p1_0 + + coeff_dyy_p2_0*data_p2_0 + + coeff_dyy_m1_p1*data_m1_p1 + + coeff_dyy_0_p1*data_0_p1 + + coeff_dyy_p1_p1*data_p1_p1 + + coeff_dyy_p2_p1*data_p2_p1 + + coeff_dyy_m1_p2*data_m1_p2 + + coeff_dyy_0_p2*data_0_p2 + + coeff_dyy_p1_p2*data_p1_p2 + + coeff_dyy_p2_p2*data_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-I.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-I.dcl.c new file mode 100644 index 0000000..64d7a53 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-I.dcl.c @@ -0,0 +1,25 @@ +fp coeff_I_m2_m2, + coeff_I_m1_m2, + coeff_I_0_m2, + coeff_I_p1_m2, + coeff_I_p2_m2, + coeff_I_m2_m1, + coeff_I_m1_m1, + coeff_I_0_m1, + coeff_I_p1_m1, + coeff_I_p2_m1, + coeff_I_m2_0, + coeff_I_m1_0, + coeff_I_0_0, + coeff_I_p1_0, + coeff_I_p2_0, + coeff_I_m2_p1, + coeff_I_m1_p1, + coeff_I_0_p1, + coeff_I_p1_p1, + coeff_I_p2_p1, + coeff_I_m2_p2, + coeff_I_m1_p2, + coeff_I_0_p2, + coeff_I_p1_p2, + coeff_I_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-I.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-I.store.c new file mode 100644 index 0000000..e57f3f8 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-I.store.c @@ -0,0 +1,25 @@ +COEFF(-2,-2) = coeff_I_m2_m2; +COEFF(-1,-2) = coeff_I_m1_m2; +COEFF(0,-2) = coeff_I_0_m2; +COEFF(1,-2) = coeff_I_p1_m2; +COEFF(2,-2) = coeff_I_p2_m2; +COEFF(-2,-1) = coeff_I_m2_m1; +COEFF(-1,-1) = coeff_I_m1_m1; +COEFF(0,-1) = coeff_I_0_m1; +COEFF(1,-1) = coeff_I_p1_m1; +COEFF(2,-1) = coeff_I_p2_m1; +COEFF(-2,0) = coeff_I_m2_0; +COEFF(-1,0) = coeff_I_m1_0; +COEFF(0,0) = coeff_I_0_0; +COEFF(1,0) = coeff_I_p1_0; +COEFF(2,0) = coeff_I_p2_0; +COEFF(-2,1) = coeff_I_m2_p1; +COEFF(-1,1) = coeff_I_m1_p1; +COEFF(0,1) = coeff_I_0_p1; +COEFF(1,1) = coeff_I_p1_p1; +COEFF(2,1) = coeff_I_p2_p1; +COEFF(-2,2) = coeff_I_m2_p2; +COEFF(-1,2) = coeff_I_m1_p2; +COEFF(0,2) = coeff_I_0_p2; +COEFF(1,2) = coeff_I_p1_p2; +COEFF(2,2) = coeff_I_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dx.dcl.c new file mode 100644 index 0000000..965e5ab --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dx.dcl.c @@ -0,0 +1,25 @@ +fp coeff_dx_m2_m2, + coeff_dx_m1_m2, + coeff_dx_0_m2, + coeff_dx_p1_m2, + coeff_dx_p2_m2, + coeff_dx_m2_m1, + coeff_dx_m1_m1, + coeff_dx_0_m1, + coeff_dx_p1_m1, + coeff_dx_p2_m1, + coeff_dx_m2_0, + coeff_dx_m1_0, + coeff_dx_0_0, + coeff_dx_p1_0, + coeff_dx_p2_0, + coeff_dx_m2_p1, + coeff_dx_m1_p1, + coeff_dx_0_p1, + coeff_dx_p1_p1, + coeff_dx_p2_p1, + coeff_dx_m2_p2, + coeff_dx_m1_p2, + coeff_dx_0_p2, + coeff_dx_p1_p2, + coeff_dx_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dx.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dx.store.c new file mode 100644 index 0000000..7477d7a --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dx.store.c @@ -0,0 +1,25 @@ +COEFF(-2,-2) = factor * coeff_dx_m2_m2; +COEFF(-1,-2) = factor * coeff_dx_m1_m2; +COEFF(0,-2) = factor * coeff_dx_0_m2; +COEFF(1,-2) = factor * coeff_dx_p1_m2; +COEFF(2,-2) = factor * coeff_dx_p2_m2; +COEFF(-2,-1) = factor * coeff_dx_m2_m1; +COEFF(-1,-1) = factor * coeff_dx_m1_m1; +COEFF(0,-1) = factor * coeff_dx_0_m1; +COEFF(1,-1) = factor * coeff_dx_p1_m1; +COEFF(2,-1) = factor * coeff_dx_p2_m1; +COEFF(-2,0) = factor * coeff_dx_m2_0; +COEFF(-1,0) = factor * coeff_dx_m1_0; +COEFF(0,0) = factor * coeff_dx_0_0; +COEFF(1,0) = factor * coeff_dx_p1_0; +COEFF(2,0) = factor * coeff_dx_p2_0; +COEFF(-2,1) = factor * coeff_dx_m2_p1; +COEFF(-1,1) = factor * coeff_dx_m1_p1; +COEFF(0,1) = factor * coeff_dx_0_p1; +COEFF(1,1) = factor * coeff_dx_p1_p1; +COEFF(2,1) = factor * coeff_dx_p2_p1; +COEFF(-2,2) = factor * coeff_dx_m2_p2; +COEFF(-1,2) = factor * coeff_dx_m1_p2; +COEFF(0,2) = factor * coeff_dx_0_p2; +COEFF(1,2) = factor * coeff_dx_p1_p2; +COEFF(2,2) = factor * coeff_dx_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dxx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dxx.dcl.c new file mode 100644 index 0000000..9aa0041 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dxx.dcl.c @@ -0,0 +1,25 @@ +fp coeff_dxx_m2_m2, + coeff_dxx_m1_m2, + coeff_dxx_0_m2, + coeff_dxx_p1_m2, + coeff_dxx_p2_m2, + coeff_dxx_m2_m1, + coeff_dxx_m1_m1, + coeff_dxx_0_m1, + coeff_dxx_p1_m1, + coeff_dxx_p2_m1, + coeff_dxx_m2_0, + coeff_dxx_m1_0, + coeff_dxx_0_0, + coeff_dxx_p1_0, + coeff_dxx_p2_0, + coeff_dxx_m2_p1, + coeff_dxx_m1_p1, + coeff_dxx_0_p1, + coeff_dxx_p1_p1, + coeff_dxx_p2_p1, + coeff_dxx_m2_p2, + coeff_dxx_m1_p2, + coeff_dxx_0_p2, + coeff_dxx_p1_p2, + coeff_dxx_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dxx.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dxx.store.c new file mode 100644 index 0000000..4f30337 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dxx.store.c @@ -0,0 +1,25 @@ +COEFF(-2,-2) = factor * coeff_dxx_m2_m2; +COEFF(-1,-2) = factor * coeff_dxx_m1_m2; +COEFF(0,-2) = factor * coeff_dxx_0_m2; +COEFF(1,-2) = factor * coeff_dxx_p1_m2; +COEFF(2,-2) = factor * coeff_dxx_p2_m2; +COEFF(-2,-1) = factor * coeff_dxx_m2_m1; +COEFF(-1,-1) = factor * coeff_dxx_m1_m1; +COEFF(0,-1) = factor * coeff_dxx_0_m1; +COEFF(1,-1) = factor * coeff_dxx_p1_m1; +COEFF(2,-1) = factor * coeff_dxx_p2_m1; +COEFF(-2,0) = factor * coeff_dxx_m2_0; +COEFF(-1,0) = factor * coeff_dxx_m1_0; +COEFF(0,0) = factor * coeff_dxx_0_0; +COEFF(1,0) = factor * coeff_dxx_p1_0; +COEFF(2,0) = factor * coeff_dxx_p2_0; +COEFF(-2,1) = factor * coeff_dxx_m2_p1; +COEFF(-1,1) = factor * coeff_dxx_m1_p1; +COEFF(0,1) = factor * coeff_dxx_0_p1; +COEFF(1,1) = factor * coeff_dxx_p1_p1; +COEFF(2,1) = factor * coeff_dxx_p2_p1; +COEFF(-2,2) = factor * coeff_dxx_m2_p2; +COEFF(-1,2) = factor * coeff_dxx_m1_p2; +COEFF(0,2) = factor * coeff_dxx_0_p2; +COEFF(1,2) = factor * coeff_dxx_p1_p2; +COEFF(2,2) = factor * coeff_dxx_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dxy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dxy.dcl.c new file mode 100644 index 0000000..37cd8db --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dxy.dcl.c @@ -0,0 +1,25 @@ +fp coeff_dxy_m2_m2, + coeff_dxy_m1_m2, + coeff_dxy_0_m2, + coeff_dxy_p1_m2, + coeff_dxy_p2_m2, + coeff_dxy_m2_m1, + coeff_dxy_m1_m1, + coeff_dxy_0_m1, + coeff_dxy_p1_m1, + coeff_dxy_p2_m1, + coeff_dxy_m2_0, + coeff_dxy_m1_0, + coeff_dxy_0_0, + coeff_dxy_p1_0, + coeff_dxy_p2_0, + coeff_dxy_m2_p1, + coeff_dxy_m1_p1, + coeff_dxy_0_p1, + coeff_dxy_p1_p1, + coeff_dxy_p2_p1, + coeff_dxy_m2_p2, + coeff_dxy_m1_p2, + coeff_dxy_0_p2, + coeff_dxy_p1_p2, + coeff_dxy_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dxy.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dxy.store.c new file mode 100644 index 0000000..ae83bbb --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dxy.store.c @@ -0,0 +1,25 @@ +COEFF(-2,-2) = factor * coeff_dxy_m2_m2; +COEFF(-1,-2) = factor * coeff_dxy_m1_m2; +COEFF(0,-2) = factor * coeff_dxy_0_m2; +COEFF(1,-2) = factor * coeff_dxy_p1_m2; +COEFF(2,-2) = factor * coeff_dxy_p2_m2; +COEFF(-2,-1) = factor * coeff_dxy_m2_m1; +COEFF(-1,-1) = factor * coeff_dxy_m1_m1; +COEFF(0,-1) = factor * coeff_dxy_0_m1; +COEFF(1,-1) = factor * coeff_dxy_p1_m1; +COEFF(2,-1) = factor * coeff_dxy_p2_m1; +COEFF(-2,0) = factor * coeff_dxy_m2_0; +COEFF(-1,0) = factor * coeff_dxy_m1_0; +COEFF(0,0) = factor * coeff_dxy_0_0; +COEFF(1,0) = factor * coeff_dxy_p1_0; +COEFF(2,0) = factor * coeff_dxy_p2_0; +COEFF(-2,1) = factor * coeff_dxy_m2_p1; +COEFF(-1,1) = factor * coeff_dxy_m1_p1; +COEFF(0,1) = factor * coeff_dxy_0_p1; +COEFF(1,1) = factor * coeff_dxy_p1_p1; +COEFF(2,1) = factor * coeff_dxy_p2_p1; +COEFF(-2,2) = factor * coeff_dxy_m2_p2; +COEFF(-1,2) = factor * coeff_dxy_m1_p2; +COEFF(0,2) = factor * coeff_dxy_0_p2; +COEFF(1,2) = factor * coeff_dxy_p1_p2; +COEFF(2,2) = factor * coeff_dxy_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dy.dcl.c new file mode 100644 index 0000000..b90bf19 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dy.dcl.c @@ -0,0 +1,25 @@ +fp coeff_dy_m2_m2, + coeff_dy_m1_m2, + coeff_dy_0_m2, + coeff_dy_p1_m2, + coeff_dy_p2_m2, + coeff_dy_m2_m1, + coeff_dy_m1_m1, + coeff_dy_0_m1, + coeff_dy_p1_m1, + coeff_dy_p2_m1, + coeff_dy_m2_0, + coeff_dy_m1_0, + coeff_dy_0_0, + coeff_dy_p1_0, + coeff_dy_p2_0, + coeff_dy_m2_p1, + coeff_dy_m1_p1, + coeff_dy_0_p1, + coeff_dy_p1_p1, + coeff_dy_p2_p1, + coeff_dy_m2_p2, + coeff_dy_m1_p2, + coeff_dy_0_p2, + coeff_dy_p1_p2, + coeff_dy_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dy.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dy.store.c new file mode 100644 index 0000000..adc1413 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dy.store.c @@ -0,0 +1,25 @@ +COEFF(-2,-2) = factor * coeff_dy_m2_m2; +COEFF(-1,-2) = factor * coeff_dy_m1_m2; +COEFF(0,-2) = factor * coeff_dy_0_m2; +COEFF(1,-2) = factor * coeff_dy_p1_m2; +COEFF(2,-2) = factor * coeff_dy_p2_m2; +COEFF(-2,-1) = factor * coeff_dy_m2_m1; +COEFF(-1,-1) = factor * coeff_dy_m1_m1; +COEFF(0,-1) = factor * coeff_dy_0_m1; +COEFF(1,-1) = factor * coeff_dy_p1_m1; +COEFF(2,-1) = factor * coeff_dy_p2_m1; +COEFF(-2,0) = factor * coeff_dy_m2_0; +COEFF(-1,0) = factor * coeff_dy_m1_0; +COEFF(0,0) = factor * coeff_dy_0_0; +COEFF(1,0) = factor * coeff_dy_p1_0; +COEFF(2,0) = factor * coeff_dy_p2_0; +COEFF(-2,1) = factor * coeff_dy_m2_p1; +COEFF(-1,1) = factor * coeff_dy_m1_p1; +COEFF(0,1) = factor * coeff_dy_0_p1; +COEFF(1,1) = factor * coeff_dy_p1_p1; +COEFF(2,1) = factor * coeff_dy_p2_p1; +COEFF(-2,2) = factor * coeff_dy_m2_p2; +COEFF(-1,2) = factor * coeff_dy_m1_p2; +COEFF(0,2) = factor * coeff_dy_0_p2; +COEFF(1,2) = factor * coeff_dy_p1_p2; +COEFF(2,2) = factor * coeff_dy_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dyy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dyy.dcl.c new file mode 100644 index 0000000..45b91b2 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dyy.dcl.c @@ -0,0 +1,25 @@ +fp coeff_dyy_m2_m2, + coeff_dyy_m1_m2, + coeff_dyy_0_m2, + coeff_dyy_p1_m2, + coeff_dyy_p2_m2, + coeff_dyy_m2_m1, + coeff_dyy_m1_m1, + coeff_dyy_0_m1, + coeff_dyy_p1_m1, + coeff_dyy_p2_m1, + coeff_dyy_m2_0, + coeff_dyy_m1_0, + coeff_dyy_0_0, + coeff_dyy_p1_0, + coeff_dyy_p2_0, + coeff_dyy_m2_p1, + coeff_dyy_m1_p1, + coeff_dyy_0_p1, + coeff_dyy_p1_p1, + coeff_dyy_p2_p1, + coeff_dyy_m2_p2, + coeff_dyy_m1_p2, + coeff_dyy_0_p2, + coeff_dyy_p1_p2, + coeff_dyy_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dyy.store.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dyy.store.c new file mode 100644 index 0000000..288060a --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/coeff-dyy.store.c @@ -0,0 +1,25 @@ +COEFF(-2,-2) = factor * coeff_dyy_m2_m2; +COEFF(-1,-2) = factor * coeff_dyy_m1_m2; +COEFF(0,-2) = factor * coeff_dyy_0_m2; +COEFF(1,-2) = factor * coeff_dyy_p1_m2; +COEFF(2,-2) = factor * coeff_dyy_p2_m2; +COEFF(-2,-1) = factor * coeff_dyy_m2_m1; +COEFF(-1,-1) = factor * coeff_dyy_m1_m1; +COEFF(0,-1) = factor * coeff_dyy_0_m1; +COEFF(1,-1) = factor * coeff_dyy_p1_m1; +COEFF(2,-1) = factor * coeff_dyy_p2_m1; +COEFF(-2,0) = factor * coeff_dyy_m2_0; +COEFF(-1,0) = factor * coeff_dyy_m1_0; +COEFF(0,0) = factor * coeff_dyy_0_0; +COEFF(1,0) = factor * coeff_dyy_p1_0; +COEFF(2,0) = factor * coeff_dyy_p2_0; +COEFF(-2,1) = factor * coeff_dyy_m2_p1; +COEFF(-1,1) = factor * coeff_dyy_m1_p1; +COEFF(0,1) = factor * coeff_dyy_0_p1; +COEFF(1,1) = factor * coeff_dyy_p1_p1; +COEFF(2,1) = factor * coeff_dyy_p2_p1; +COEFF(-2,2) = factor * coeff_dyy_m2_p2; +COEFF(-1,2) = factor * coeff_dyy_m1_p2; +COEFF(0,2) = factor * coeff_dyy_0_p2; +COEFF(1,2) = factor * coeff_dyy_p1_p2; +COEFF(2,2) = factor * coeff_dyy_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/data-var.assign.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/data-var.assign.c new file mode 100644 index 0000000..054be56 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/data-var.assign.c @@ -0,0 +1,25 @@ +data_m2_m2 = DATA(-2,-2); +data_m1_m2 = DATA(-1,-2); +data_0_m2 = DATA(0,-2); +data_p1_m2 = DATA(1,-2); +data_p2_m2 = DATA(2,-2); +data_m2_m1 = DATA(-2,-1); +data_m1_m1 = DATA(-1,-1); +data_0_m1 = DATA(0,-1); +data_p1_m1 = DATA(1,-1); +data_p2_m1 = DATA(2,-1); +data_m2_0 = DATA(-2,0); +data_m1_0 = DATA(-1,0); +data_0_0 = DATA(0,0); +data_p1_0 = DATA(1,0); +data_p2_0 = DATA(2,0); +data_m2_p1 = DATA(-2,1); +data_m1_p1 = DATA(-1,1); +data_0_p1 = DATA(0,1); +data_p1_p1 = DATA(1,1); +data_p2_p1 = DATA(2,1); +data_m2_p2 = DATA(-2,2); +data_m1_p2 = DATA(-1,2); +data_0_p2 = DATA(0,2); +data_p1_p2 = DATA(1,2); +data_p2_p2 = DATA(2,2); diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/data-var.dcl.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/data-var.dcl.c new file mode 100644 index 0000000..006894f --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/data-var.dcl.c @@ -0,0 +1,25 @@ +fp data_m2_m2, + data_m1_m2, + data_0_m2, + data_p1_m2, + data_p2_m2, + data_m2_m1, + data_m1_m1, + data_0_m1, + data_p1_m1, + data_p2_m1, + data_m2_0, + data_m1_0, + data_0_0, + data_p1_0, + data_p2_0, + data_m2_p1, + data_m1_p1, + data_0_p1, + data_p1_p1, + data_p2_p1, + data_m2_p2, + data_m1_p2, + data_0_p2, + data_p1_p2, + data_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/interp-I.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/interp-I.compute.c new file mode 100644 index 0000000..63096fa --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/interp-I.compute.c @@ -0,0 +1,26 @@ +result = + coeff_I_m2_m2*data_m2_m2 + + coeff_I_m1_m2*data_m1_m2 + + coeff_I_0_m2*data_0_m2 + + coeff_I_p1_m2*data_p1_m2 + + coeff_I_p2_m2*data_p2_m2 + + coeff_I_m2_m1*data_m2_m1 + + coeff_I_m1_m1*data_m1_m1 + + coeff_I_0_m1*data_0_m1 + + coeff_I_p1_m1*data_p1_m1 + + coeff_I_p2_m1*data_p2_m1 + + coeff_I_m2_0*data_m2_0 + + coeff_I_m1_0*data_m1_0 + + coeff_I_0_0*data_0_0 + + coeff_I_p1_0*data_p1_0 + + coeff_I_p2_0*data_p2_0 + + coeff_I_m2_p1*data_m2_p1 + + coeff_I_m1_p1*data_m1_p1 + + coeff_I_0_p1*data_0_p1 + + coeff_I_p1_p1*data_p1_p1 + + coeff_I_p2_p1*data_p2_p1 + + coeff_I_m2_p2*data_m2_p2 + + coeff_I_m1_p2*data_m1_p2 + + coeff_I_0_p2*data_0_p2 + + coeff_I_p1_p2*data_p1_p2 + + coeff_I_p2_p2*data_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/interp-dx.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/interp-dx.compute.c new file mode 100644 index 0000000..f92b558 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/interp-dx.compute.c @@ -0,0 +1,26 @@ +result = + coeff_dx_m2_m2*data_m2_m2 + + coeff_dx_m1_m2*data_m1_m2 + + coeff_dx_0_m2*data_0_m2 + + coeff_dx_p1_m2*data_p1_m2 + + coeff_dx_p2_m2*data_p2_m2 + + coeff_dx_m2_m1*data_m2_m1 + + coeff_dx_m1_m1*data_m1_m1 + + coeff_dx_0_m1*data_0_m1 + + coeff_dx_p1_m1*data_p1_m1 + + coeff_dx_p2_m1*data_p2_m1 + + coeff_dx_m2_0*data_m2_0 + + coeff_dx_m1_0*data_m1_0 + + coeff_dx_0_0*data_0_0 + + coeff_dx_p1_0*data_p1_0 + + coeff_dx_p2_0*data_p2_0 + + coeff_dx_m2_p1*data_m2_p1 + + coeff_dx_m1_p1*data_m1_p1 + + coeff_dx_0_p1*data_0_p1 + + coeff_dx_p1_p1*data_p1_p1 + + coeff_dx_p2_p1*data_p2_p1 + + coeff_dx_m2_p2*data_m2_p2 + + coeff_dx_m1_p2*data_m1_p2 + + coeff_dx_0_p2*data_0_p2 + + coeff_dx_p1_p2*data_p1_p2 + + coeff_dx_p2_p2*data_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/interp-dxx.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/interp-dxx.compute.c new file mode 100644 index 0000000..699eb00 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/interp-dxx.compute.c @@ -0,0 +1,26 @@ +result = + coeff_dxx_m2_m2*data_m2_m2 + + coeff_dxx_m1_m2*data_m1_m2 + + coeff_dxx_0_m2*data_0_m2 + + coeff_dxx_p1_m2*data_p1_m2 + + coeff_dxx_p2_m2*data_p2_m2 + + coeff_dxx_m2_m1*data_m2_m1 + + coeff_dxx_m1_m1*data_m1_m1 + + coeff_dxx_0_m1*data_0_m1 + + coeff_dxx_p1_m1*data_p1_m1 + + coeff_dxx_p2_m1*data_p2_m1 + + coeff_dxx_m2_0*data_m2_0 + + coeff_dxx_m1_0*data_m1_0 + + coeff_dxx_0_0*data_0_0 + + coeff_dxx_p1_0*data_p1_0 + + coeff_dxx_p2_0*data_p2_0 + + coeff_dxx_m2_p1*data_m2_p1 + + coeff_dxx_m1_p1*data_m1_p1 + + coeff_dxx_0_p1*data_0_p1 + + coeff_dxx_p1_p1*data_p1_p1 + + coeff_dxx_p2_p1*data_p2_p1 + + coeff_dxx_m2_p2*data_m2_p2 + + coeff_dxx_m1_p2*data_m1_p2 + + coeff_dxx_0_p2*data_0_p2 + + coeff_dxx_p1_p2*data_p1_p2 + + coeff_dxx_p2_p2*data_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/interp-dxy.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/interp-dxy.compute.c new file mode 100644 index 0000000..57a6b8e --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/interp-dxy.compute.c @@ -0,0 +1,26 @@ +result = + coeff_dxy_m2_m2*data_m2_m2 + + coeff_dxy_m1_m2*data_m1_m2 + + coeff_dxy_0_m2*data_0_m2 + + coeff_dxy_p1_m2*data_p1_m2 + + coeff_dxy_p2_m2*data_p2_m2 + + coeff_dxy_m2_m1*data_m2_m1 + + coeff_dxy_m1_m1*data_m1_m1 + + coeff_dxy_0_m1*data_0_m1 + + coeff_dxy_p1_m1*data_p1_m1 + + coeff_dxy_p2_m1*data_p2_m1 + + coeff_dxy_m2_0*data_m2_0 + + coeff_dxy_m1_0*data_m1_0 + + coeff_dxy_0_0*data_0_0 + + coeff_dxy_p1_0*data_p1_0 + + coeff_dxy_p2_0*data_p2_0 + + coeff_dxy_m2_p1*data_m2_p1 + + coeff_dxy_m1_p1*data_m1_p1 + + coeff_dxy_0_p1*data_0_p1 + + coeff_dxy_p1_p1*data_p1_p1 + + coeff_dxy_p2_p1*data_p2_p1 + + coeff_dxy_m2_p2*data_m2_p2 + + coeff_dxy_m1_p2*data_m1_p2 + + coeff_dxy_0_p2*data_0_p2 + + coeff_dxy_p1_p2*data_p1_p2 + + coeff_dxy_p2_p2*data_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/interp-dy.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/interp-dy.compute.c new file mode 100644 index 0000000..74bfb00 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/interp-dy.compute.c @@ -0,0 +1,26 @@ +result = + coeff_dy_m2_m2*data_m2_m2 + + coeff_dy_m1_m2*data_m1_m2 + + coeff_dy_0_m2*data_0_m2 + + coeff_dy_p1_m2*data_p1_m2 + + coeff_dy_p2_m2*data_p2_m2 + + coeff_dy_m2_m1*data_m2_m1 + + coeff_dy_m1_m1*data_m1_m1 + + coeff_dy_0_m1*data_0_m1 + + coeff_dy_p1_m1*data_p1_m1 + + coeff_dy_p2_m1*data_p2_m1 + + coeff_dy_m2_0*data_m2_0 + + coeff_dy_m1_0*data_m1_0 + + coeff_dy_0_0*data_0_0 + + coeff_dy_p1_0*data_p1_0 + + coeff_dy_p2_0*data_p2_0 + + coeff_dy_m2_p1*data_m2_p1 + + coeff_dy_m1_p1*data_m1_p1 + + coeff_dy_0_p1*data_0_p1 + + coeff_dy_p1_p1*data_p1_p1 + + coeff_dy_p2_p1*data_p2_p1 + + coeff_dy_m2_p2*data_m2_p2 + + coeff_dy_m1_p2*data_m1_p2 + + coeff_dy_0_p2*data_0_p2 + + coeff_dy_p1_p2*data_p1_p2 + + coeff_dy_p2_p2*data_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/interp-dyy.compute.c b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/interp-dyy.compute.c new file mode 100644 index 0000000..aaec7a2 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.cube.size5/interp-dyy.compute.c @@ -0,0 +1,26 @@ +result = + coeff_dyy_m2_m2*data_m2_m2 + + coeff_dyy_m1_m2*data_m1_m2 + + coeff_dyy_0_m2*data_0_m2 + + coeff_dyy_p1_m2*data_p1_m2 + + coeff_dyy_p2_m2*data_p2_m2 + + coeff_dyy_m2_m1*data_m2_m1 + + coeff_dyy_m1_m1*data_m1_m1 + + coeff_dyy_0_m1*data_0_m1 + + coeff_dyy_p1_m1*data_p1_m1 + + coeff_dyy_p2_m1*data_p2_m1 + + coeff_dyy_m2_0*data_m2_0 + + coeff_dyy_m1_0*data_m1_0 + + coeff_dyy_0_0*data_0_0 + + coeff_dyy_p1_0*data_p1_0 + + coeff_dyy_p2_0*data_p2_0 + + coeff_dyy_m2_p1*data_m2_p1 + + coeff_dyy_m1_p1*data_m1_p1 + + coeff_dyy_0_p1*data_0_p1 + + coeff_dyy_p1_p1*data_p1_p1 + + coeff_dyy_p2_p1*data_p2_p1 + + coeff_dyy_m2_p2*data_m2_p2 + + coeff_dyy_m1_p2*data_m1_p2 + + coeff_dyy_0_p2*data_0_p2 + + coeff_dyy_p1_p2*data_p1_p2 + + coeff_dyy_p2_p2*data_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.log b/src/GeneralizedPolynomial-Uniform/common/2d.log new file mode 100644 index 0000000..835c96e --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.log @@ -0,0 +1,1314 @@ + |\^/| Maple 7 (IBM INTEL LINUX) +._|\| |/|_. Copyright (c) 2001 by Waterloo Maple Inc. + \ MAPLE / All rights reserved. Maple is a registered trademark of + <____ ____> Waterloo Maple Inc. + | Type ? for help. +# util.maple -- misc utility routines +# $Id: util.maple,v 1.3 2002/05/19 13:12:18 jthorn Exp $ +> +# +# fix_rationals - convert numbers to RATIONAL() calls +# nonmatching_names - find names in a list which *don't* have a specified prefix +# sprint_numeric_list - convert a numeric list to a valid C identifier suffix +# print_name_list_dcl - print a C declaration for a list of names +# +# hypercube_points - compute all (integer) points in an N-dimensional hypercube +# +# ftruncate - truncate a file to zero length +# +> +################################################################################ +################################################################################ +################################################################################ +> +# +# This function converts all {integer, rational} subexpressions of its +# input except integer exponents and -1 factors in products, into function +# calls +# RATIONAL(num,den) +# This is useful in conjunction with the C() library function, since +# +# C( (1/3) * foo * bar ) +# t0 = foo*bar/3; +# +# generates a (slow) division (and runs the risk of mixed-mode-arithmetic +# problems), while +# +# C((1.0/3.0) * foo * bar); +# t0 = 0.3333333333*foo*bar; +# +# suffers from roundoff error. With this function, +# +# fix_rationals((1/3) * foo * bar); +# RATIONAL(1,3) foo bar +# C(%); +# t0 = RATIONAL(1.0,3.0)*foo*bar; +# +# which a C preprocessor macro can easily convert to the desired +# +# t0 = (1.0/3.0)*foo*bar; +# +# Additionally, this function can be told to leave certain types of +# subexpressions unconverged. For example, +# fix_rationals(expr, type, specfunc(integer, DATA)); +# will leave all subexpressions of the form DATA(integer arguments) +# unconverted. +# +# Arguments: +# expr = (in) The expression to be converted. +# inert_fn = (optional in) +# If specified, this argument should be a Boolean procedure +# or the name of a Boolean procedure. This procedure should +# take one or more argument, and return true if and only if +# the first argument should *not* be converted, i.e. if we +# should leave this expression unchanged. See the last +# example above. +# ... = (optional in) +# Any further arguments are passed as additional arguments to +# the inert_fn procedure. +# +> fix_rationals := +> proc( +> expr::{ +> algebraic, name = algebraic, +> list({algebraic, name = algebraic}), +> set ({algebraic, name = algebraic}) +> }, +> inert_fn::{name, procedure} +> ) +> local nn, k, +> base, power, fbase, fpower, +> fn, fn_args_list, +> num, den, mult; +> +# do we want to convert this expression? +> if ((nargs >= 2) and inert_fn(expr, args[3..nargs])) +> then return expr; +> end if; +> +# recurse over lists and sets +> if (type(expr, {list,set})) +> then return map(fix_rationals, expr, args[2..nargs]); +> end if; +> +# recurse over equation right hand sides +> if (type(expr, name = algebraic)) +> then return ( lhs(expr) = fix_rationals(rhs(expr), args[2..nargs]) ); +> end if; +> +# recurse over functions other than RATIONAL() +> if (type(expr, function)) +> then +> fn := op(0, expr); +> if (fn <> 'RATIONAL') +> then +> fn_args_list := [op(expr)]; +> fn_args_list := map(fix_rationals, fn_args_list, args[2..nargs]); +> fn; return '%'( op(fn_args_list) ); +> end if; +> end if; +> +> nn := nops(expr); +> +# recurse over sums +> if (type(expr, `+`)) +> then return sum('fix_rationals(op(k,expr), args[2..nargs])', 'k'=1..nn); +> end if; +> +# recurse over products +# ... leaving leading -1 factors intact, i.e. not converted to RATIONAL(-1,1) +> if (type(expr, `*`)) +> then +> if (op(1, expr) = -1) +> then return -1*fix_rationals(remove(type, expr, 'identical(-1)'), +> args[2..nargs]); +> else return product('fix_rationals(op(k,expr), args[2..nargs])', +> 'k'=1..nn); +> end if; +> end if; +> +# recurse over powers +# ... leaving integer exponents intact +> if (type(expr, `^`)) +> then +> base := op(1, expr); +> power := op(2, expr); +> +> fbase := fix_rationals(base, args[2..nargs]); +> if (type(power, integer)) +> then fpower := power; +> else fpower := fix_rationals(power, args[2..nargs]); +> end if; +> return fbase ^ fpower; +> end if; +> +# fix integers and fractions +> if (type(expr, integer)) +> then return 'RATIONAL'(expr, 1); +> end if; +> if (type(expr, fraction)) +> then +> num := op(1, expr); +> den := op(2, expr); +> +> return 'RATIONAL'(num, den); +> end if; +> +# turn Maple floating-point into integer fraction, then recursively fix that +> if (type(expr, float)) +> then +> mult := op(1, expr); +> power := op(2, expr); +> return fix_rationals(mult * 10^power, args[2..nargs]); +> end if; +> +# identity op on names +> if (type(expr, name)) +> then return expr; +> end if; +> +# unknown type +> error "%0", +> "unknown type for expr!", +> " whattype(expr) = ", whattype(expr), +> " expr = ", expr; +> end proc; +fix_rationals := proc(expr::{algebraic, name = algebraic, +list({algebraic, name = algebraic}), set({algebraic, name = algebraic})}, +inert_fn::{procedure, name}) +local nn, k, base, power, fbase, fpower, fn, fn_args_list, num, den, mult; + if 2 <= nargs and inert_fn(expr, args[3 .. nargs]) then return expr + end if; + if type(expr, {set, list}) then + return map(fix_rationals, expr, args[2 .. nargs]) + end if; + if type(expr, name = algebraic) then + return lhs(expr) = fix_rationals(rhs(expr), args[2 .. nargs]) + end if; + if type(expr, function) then + fn := op(0, expr); + if fn <> 'RATIONAL' then + fn_args_list := [op(expr)]; + fn_args_list := + map(fix_rationals, fn_args_list, args[2 .. nargs]); + fn; + return '%'(op(fn_args_list)) + end if + end if; + nn := nops(expr); + if type(expr, `+`) then return + sum('fix_rationals(op(k, expr), args[2 .. nargs])', 'k' = 1 .. nn) + end if; + if type(expr, `*`) then + if op(1, expr) = -1 then return -fix_rationals( + remove(type, expr, 'identical(-1)'), args[2 .. nargs]) + else return product('fix_rationals(op(k, expr), args[2 .. nargs])', + 'k' = 1 .. nn) + end if + end if; + if type(expr, `^`) then + base := op(1, expr); + power := op(2, expr); + fbase := fix_rationals(base, args[2 .. nargs]); + if type(power, integer) then fpower := power + else fpower := fix_rationals(power, args[2 .. nargs]) + end if; + return fbase^fpower + end if; + if type(expr, integer) then return 'RATIONAL'(expr, 1) end if; + if type(expr, fraction) then + num := op(1, expr); den := op(2, expr); return 'RATIONAL'(num, den) + end if; + if type(expr, float) then + mult := op(1, expr); + power := op(2, expr); + return fix_rationals(mult*10^power, args[2 .. nargs]) + end if; + if type(expr, name) then return expr end if; + error "%0", "unknown type for expr!", " whattype(expr) = ", + whattype(expr), " expr = ", expr +end proc + +> +################################################################################ +> +# +# This function finds names in a list which *don't* have a specified prefix. +# +# Arguments: +# name_list = A list of the names. +# prefix = The prefix we want to filter out. +# +# Results: +# This function returns the subset list of names which don't have the +# specified prefix. +# +> nonmatching_names := +> proc( name_list::list({name,string}), prefix::{name,string} ) +> +> select( proc(n) +> evalb(not StringTools[IsPrefix](prefix,n)); +> end proc +> , +> name_list +> ); +> end proc; +nonmatching_names := proc( +name_list::list({name, string}), prefix::{name, string}) + select(proc(n) evalb(not StringTools[IsPrefix](prefix, n)) end proc, + name_list) +end proc + +> +################################################################################ +> +# +# This function converts a numeric list to a string which is a valid +# C identifier suffix: elements are separated by "_", decimal points are +# replaced by "x", and all nonzero values have explicit +/- signs, which +# are replaced by "p"/"m". +# +# For example, [0,-3.5,+4] --> "0_m3x5_p4". +# +> sprint_numeric_list := +> proc(nlist::list(numeric)) +> +# generate preliminary string, eg "+0_-3.5_+4" +> map2(sprintf, "%+a", nlist); +> ListTools[Join](%, "_"); +> cat(op(%)); +> +# fixup bad characters +> StringTools[SubstituteAll](%, "+0", "0"); +> StringTools[CharacterMap](".+-", "xpm", %); +> +> return %; +> end proc; +sprint_numeric_list := proc(nlist::list(numeric)) + map2(sprintf, "%+a", nlist); + ListTools[Join](%, "_"); + cat(op(%)); + StringTools[SubstituteAll](%, "+0", "0"); + StringTools[CharacterMap](".+-", "xpm", %); + return % +end proc + +> +################################################################################ +> +# +# This function prints a C declaration for a list of names. +# +# Argument: +# name_list = A list of the names. +# name_type = The C type of the names, eg. "double". +# file_name = The file name to write the declaration to. This is +# truncated before writing. +# +> print_name_list_dcl := +> proc( name_list::list({name,string}), +> name_type::string, +> file_name::string ) +> local blanks, separator_string; +> +> ftruncate(file_name); +> +# a sequence of blanks with the same length as name_type +> seq(" ", i=1..length(name_type)); +> +# string to separate names +> separator_string := cat(",\n", %, " "); +> +> map(convert, name_list, string); +> ListTools[Join](%, separator_string); +> cat(op(%)); +> +> fprintf(file_name, +> "%s %s;\n", +> name_type, %); +> +> fclose(file_name); +> NULL; +> end proc; +print_name_list_dcl := proc( +name_list::list({name, string}), name_type::string, file_name::string) +local blanks, separator_string; + ftruncate(file_name); + seq(" ", i = 1 .. length(name_type)); + separator_string := cat(",\n", %, " "); + map(convert, name_list, string); + ListTools[Join](%, separator_string); + cat(op(%)); + fprintf(file_name, "%s %s;\n", name_type, %); + fclose(file_name); + NULL +end proc + +> +################################################################################ +################################################################################ +################################################################################ +> +# +# This function computes a list of all the (integer) points in an +# N-dimensional hypercube, in lexicographic order. The present +# implementation requires N <= 4. +# +# Arguments: +# cmin,cmax = N-element lists of cube minimum/maximum coordinates. +# +# Results: +# The function returns a set of d-element lists giving the coordinates. +# For example, +# hypercube([0,0], [2,1] +# returns +# { [0,0], [0,1], [1,0], [1,1], [2,0], [2,1] } +> hypercube_points := +> proc(cmin::list(integer), cmax::list(integer)) +> local N, i,j,k,l; +> +> N := nops(cmin); +> if (nops(cmax) <> N) +> then error +> "must have same number of dimensions for min and max coordinates!"; +> fi; +> +> if (N = 1) +> then return [seq([i], i=cmin[1]..cmax[1])]; +> elif (N = 2) +> then return [ +> seq( +> seq([i,j], j=cmin[2]..cmax[2]), +> i=cmin[1]..cmax[1]) +> ]; +> elif (N = 3) +> then return [ +> seq( +> seq( +> seq([i,j,k], k=cmin[3]..cmax[3]), +> j=cmin[2]..cmax[2] ), +> i=cmin[1]..cmax[1]) +> ]; +> elif (N = 4) +> then return [ +> seq( +> seq( +> seq( +> seq([i,j,k,l], l=cmin[4]..cmax[4]), +> k=cmin[3]..cmax[3] ), +> j=cmin[2]..cmax[2]), +> i=cmin[1]..cmax[1]) +> ]; +> else +> error "implementation restriction: must have N <= 4, got %1!", N; +> fi; +> end proc; +hypercube_points := proc(cmin::list(integer), cmax::list(integer)) +local N, i, j, k, l; + N := nops(cmin); + if nops(cmax) <> N then error + "must have same number of dimensions for min and max coordinates!" + end if; + if N = 1 then return [seq([i], i = cmin[1] .. cmax[1])] + elif N = 2 then return + [seq(seq([i, j], j = cmin[2] .. cmax[2]), i = cmin[1] .. cmax[1])] + elif N = 3 then return [seq( + seq(seq([i, j, k], k = cmin[3] .. cmax[3]), j = cmin[2] .. cmax[2]) + , i = cmin[1] .. cmax[1])] + elif N = 4 then return [seq(seq(seq( + seq([i, j, k, l], l = cmin[4] .. cmax[4]), k = cmin[3] .. cmax[3]), + j = cmin[2] .. cmax[2]), i = cmin[1] .. cmax[1])] + else error "implementation restriction: must have N <= 4, got %1!", N + end if +end proc + +> +################################################################################ +################################################################################ +################################################################################ +> +# +# This function truncates a file to 0 length if it exists, or creates +# it at that length if it doesn't exist. +# +# Arguments: +# file_name = (in) The name of the file. +# +> ftruncate := +> proc(file_name::string) +> fopen(file_name, 'WRITE'); +> fclose(%); +> NULL; +> end proc; +ftruncate := + + proc(file_name::string) fopen(file_name, 'WRITE'); fclose(%); NULL end proc + +# interpolate.maple -- compute generalized interpolation formulas/coefficients +# $Id: interpolate.maple,v 1.4 2002/05/14 15:52:50 jthorn Exp $ +> +# +# <<<representation of numbers, data values, etc>>> +# polynomial_interpolant - compute polynomial interpolant +# coeff_as_lc_of_data - coefficients of ... (linear combination of data) +# +# print_coeff__lc_of_data - print C code to compute coefficients +# print_data_var_assign - print C code to assign data-value variables +# print_interp_coeff_var_store - print C code to store coeff vars "somewhere" +# print_interp_cmpt__lc_of_data - print C code for computation of interpolant +# +# coeff_name - name of coefficient of data at a given [m] coordinate +# data_var_name - name of variable storing data value at a given [m] coordinate +# +> +################################################################################ +> +# +# ***** representation of numbers, data values, etc ***** +# +# We use RATIONAL(p.0,q.0) to denote the rational number p/q. +# +# We use DATA(...) to represent the data values being interpolated at a +# specified [m] coordinate, where the arguments are the [m] coordinates. +# +# We use COEFF(...) to represent the molecule coefficient at a specified +# [m] coordinate, where the arguments are the [m] coordinates. +# +# For example, the usual 1-D centered 2nd order 1st derivative molecule +# would be written +# RATIONAL(-1.0,2.0)*DATA(-1) + RATIONA(1.0,2.0)*DATA(1) +# and its coefficients as +# COEFF(-1) = RATIONAL(-1.0,2.0) +# COEFF(1) = RATIONAL(1.0,2.0) +# +> +################################################################################ +################################################################################ +################################################################################ +> +# +# This function computes a polynomial interpolant in any number of dimensions. +# +# Arguments: +# fn = The interpolation function. This should be a procedure in the +# coordinates, having the coefficients as global variables. For +# example, +# proc(x,y) c00 + c10*x + c01*y end proc +# coeff_list = A set of the interpolation coefficients (coefficients in +# the interpolation function), for example [c00, c10, c01]. +# coord_list = A list of the coordinates (independent variables in the +# interpolation function), for example [x,y]. +# posn_list = A list of positions (each a list of numeric values) where the +# interpolant is to use data, for example hypercube([0,0], [1,1]). +# Any positions may be used; if they're redundant (as in the +# example) the least-squares interpolant is computed. +# +# Results: +# This function returns the interpolating polynomial, in the form of +# an algebraic expression in the coordinates and the data values. +# +> polynomial_interpolant := +> proc( +> fn::procedure, coeff_list::list(name), +> coord_list::list(name), posn_list::list(list(numeric)) +> ) +> local posn, data_eqns, coeff_eqns; +> +# coefficients of interpolating polynomial +> data_eqns := { seq( fn(op(posn))='DATA'(op(posn)) , posn=posn_list ) }; +> coeff_eqns := linalg[leastsqrs](data_eqns, {op(coeff_list)}); +> if (has(coeff_eqns, '_t')) +> then error "interpolation coefficients aren't uniquely determined!"; +> end if; +> +# interpolant as a polynomial in the coordinates +> return subs(coeff_eqns, eval(fn))(op(coord_list)); +> end proc; +polynomial_interpolant := proc(fn::procedure, coeff_list::list(name), +coord_list::list(name), posn_list::list(list(numeric))) +local posn, data_eqns, coeff_eqns; + data_eqns := {seq(fn(op(posn)) = 'DATA'(op(posn)), posn = posn_list)}; + coeff_eqns := linalg[leastsqrs](data_eqns, {op(coeff_list)}); + if has(coeff_eqns, '_t') then + error "interpolation coefficients aren't uniquely determined!" + end if; + return subs(coeff_eqns, eval(fn))(op(coord_list)) +end proc + +> +################################################################################ +> +# +# This function takes as input an interpolating polynomial, expresses +# it as a linear combination of the data values, and returns the coefficeints +# of that form. +# +# Arguments: +# interpolant = The interpolating polynomial (an algebraic expression +# in the coordinates and the data values). +# posn_list = The same list of positions as was used to compute the +# interpolating polynomial. +# +# Results: +# This function returns the coefficients, as a list of equations of the +# form COEFF(...) = value , where each value is a polynomial in the +# coordinates. The order of the list matches that of posn_list. +# +> coeff_as_lc_of_data := +> proc( +> interpolant::algebraic, +> posn_list::list(list(numeric)) +> ) +> local data_list, interpolant_as_lc_of_data; +> +# interpolant as a linear combination of the data values +> data_list := [ seq( 'DATA'(op(posn)) , posn=posn_list ) ]; +> interpolant_as_lc_of_data := collect(interpolant, data_list); +> +# coefficients of the data values in the linear combination +> return map( +> proc(posn::list(numeric)) +> coeff(interpolant_as_lc_of_data, DATA(op(posn))); +> 'COEFF'(op(posn)) = %; +> end proc +> , +> posn_list +> ); +> end proc; +coeff_as_lc_of_data := proc( +interpolant::algebraic, posn_list::list(list(numeric))) +local data_list, interpolant_as_lc_of_data; + data_list := [seq('DATA'(op(posn)), posn = posn_list)]; + interpolant_as_lc_of_data := collect(interpolant, data_list); + return map(proc(posn::list(numeric)) + coeff(interpolant_as_lc_of_data, DATA(op(posn))); + 'COEFF'(op(posn)) = % + end proc, posn_list) +end proc + +> +################################################################################ +################################################################################ +################################################################################ +> +# +# This function prints C expressions for the coefficients of an +# interpolating polynomial. (The polynomial is expressed as linear +# combinations of the data values with coefficients which are +# RATIONAL(p,q) calls.) +# +# Arguments: +# coeff_list = A list of the coefficients, as returned from +# coeff_as_lc_of_data() . +# coeff_name_prefix = A prefix string for the coefficient names. +# temp_name_type = The C type to be used for Maple-introduced temporary +# names, eg. "double". +# file_name = The file name to write the coefficients to. This is +# truncated before writing. +# +> print_coeff__lc_of_data := +> proc( coeff_list::list(specfunc(numeric,COEFF) = algebraic), +> coeff_name_prefix::string, +> temp_name_type::string, +> file_name::string ) +> global `codegen/C/function/informed`; +> local coeff_list2, cmpt_list, temp_name_list; +> +# convert LHS of each equation from a COEFF() call (eg COEFF(-1,+1)) +# to a Maple/C variable name (eg coeff_I_m1_p1) +> coeff_list2 := map( +> proc(coeff_eqn::specfunc(numeric,COEFF) = algebraic) +> local posn; +> posn := [op(lhs(coeff_eqn))]; +> coeff_name(posn,coeff_name_prefix); +> convert(%, name); # codegen[C] wants LHS +> # to be an actual Maple *name* +> % = fix_rationals(rhs(coeff_eqn)); +> end proc +> , +> coeff_list +> ); +> +# +# generate the C code +# +> +# tell codegen[C] not to warn about unknown RATIONAL() and DATA() "fn calls" +# via undocumented :( global table +> `codegen/C/function/informed`['RATIONAL'] := true; +> `codegen/C/function/informed`['DATA'] := true; +> +> ftruncate(file_name); +> +# optimized computation sequence for all the coefficients +# (may use local variables t0,t1,t2,...) +> cmpt_list := [codegen[optimize](coeff_list2, tryhard)]; +> +# list of the t0,t1,t2,... local variables +> temp_name_list := nonmatching_names(map(lhs,cmpt_list), coeff_name_prefix); +> +# declare the t0,t1,t2,... local variables (if there are any) +> if (nops(temp_name_list) > 0) +> then print_name_list_dcl(%, temp_name_type, file_name); +> fi; +> +# now print the optimized computation sequence +> codegen[C](cmpt_list, filename=file_name); +> +> fclose(file_name); +> +> NULL; +> end proc; +print_coeff__lc_of_data := proc( +coeff_list::list(specfunc(numeric, COEFF) = algebraic), +coeff_name_prefix::string, temp_name_type::string, file_name::string) +local coeff_list2, cmpt_list, temp_name_list; +global `codegen/C/function/informed`; + coeff_list2 := map(proc( + coeff_eqn::(specfunc(numeric, COEFF) = algebraic)) + local posn; + posn := [op(lhs(coeff_eqn))]; + coeff_name(posn, coeff_name_prefix); + convert(%, name); + % = fix_rationals(rhs(coeff_eqn)) + end proc, coeff_list); + `codegen/C/function/informed`['RATIONAL'] := true; + `codegen/C/function/informed`['DATA'] := true; + ftruncate(file_name); + cmpt_list := [codegen[optimize](coeff_list2, tryhard)]; + temp_name_list := + nonmatching_names(map(lhs, cmpt_list), coeff_name_prefix); + if 0 < nops(temp_name_list) then + print_name_list_dcl(%, temp_name_type, file_name) + end if; + codegen[C](cmpt_list, filename = file_name); + fclose(file_name); + NULL +end proc + +> +################################################################################ +> +# +# This function prints a sequence of C expression to assign the data-value +# variables, eg +# data_m1_p1 = DATA(-1,1); +# +# Arguments: +# posn_list = The same list of positions as was used to compute the +# interpolating polynomial. +# data_var_name_prefix = A prefix string for the data variable names. +# file_name = The file name to write the coefficients to. This is +# truncated before writing. +# +> print_data_var_assign := +> proc( +> posn_list::list(list(numeric)), +> data_var_name_prefix::string, +> file_name::string +> ) +> +> ftruncate(file_name); +> map( +> proc(posn::list(numeric)) +> fprintf(file_name, +> "%s = %a;\n", +> data_var_name(posn,data_var_name_prefix), +> DATA(op(posn))); +> end proc +> , +> posn_list +> ); +> fclose(file_name); +> +> NULL; +> end proc; +print_data_var_assign := proc(posn_list::list(list(numeric)), +data_var_name_prefix::string, file_name::string) + ftruncate(file_name); + map(proc(posn::list(numeric)) + fprintf(file_name, "%s = %a;\n", + data_var_name(posn, data_var_name_prefix), DATA(op(posn))) + end proc, posn_list); + fclose(file_name); + NULL +end proc + +> +################################################################################ +> +# +# This function prints a sequence of C expression to store the interpolation +# coefficients in COEFF(...) expressions, eg +# COEFF(1,-1) = factor * coeff_dx_p1_m1; +# +# Arguments: +# posn_list = The same list of positions as was used to compute the +# interpolating polynomial. +# RHS_factor_name = If this string is non-empty, then the coefficient is +# multiplied by this factor before being stored, eg +# setting this to "factor" would give the example above. +# If this string is empty (""), the multiplication is +# omitted, eg +# COEFF(1,-1) = coeff_dx_p1_m1; +# coeff_name_prefix = A prefix string for the coefficient names. +# file_name = The file name to write the coefficients to. This is +# truncated before writing. +# +> print_interp_coeff_var_store := +> proc( +> posn_list::list(list(numeric)), +> RHS_factor_name::string, +> coeff_name_prefix::string, +> file_name::string +> ) +> +> ftruncate(file_name); +> map( +> proc(posn::list(numeric)) +> if (length(RHS_factor_name) > 0) +> then fprintf(file_name, +> "%a = %s * %s;\n", +> 'COEFF'(op(posn)), +> RHS_factor_name, +> coeff_name(posn,coeff_name_prefix)); +> else fprintf(file_name, +> "%a = %s;\n", +> 'COEFF'(op(posn)), +> coeff_name(posn,coeff_name_prefix)); +> end if; +> end proc +> , +> posn_list +> ); +> fclose(file_name); +> +> NULL; +> end proc; +print_interp_coeff_var_store := proc(posn_list::list(list(numeric)), +RHS_factor_name::string, coeff_name_prefix::string, file_name::string) + ftruncate(file_name); + map(proc(posn::list(numeric)) + if 0 < length(RHS_factor_name) then fprintf(file_name, + "%a = %s * %s;\n", 'COEFF'(op(posn)), RHS_factor_name, + coeff_name(posn, coeff_name_prefix)) + else fprintf(file_name, "%a = %s;\n", 'COEFF'(op(posn)), + coeff_name(posn, coeff_name_prefix)) + end if + end proc, posn_list); + fclose(file_name); + NULL +end proc + +> +################################################################################ +> +# +# This function prints a C expression to compute the interpolant, +# using the coefficients computed by print_coeff__lc_of_data() +# (i.e. expressing the interpolant as a linear combination of the +# data values). +# +# Arguments: +# posn_list = The same list of positions as was used to compute the +# interpolating polynomial. +# result_var_name = The (string) name of the variable to which the +# result is to be assigned. +# coeff_name_prefix = A prefix string for the coefficient names. +# data_var_name_prefix = A prefix string for the data variable names. +# file_name = The file name to write the coefficients to. This is +# truncated before writing. +# +> print_interp_cmpt__lc_of_data := +> proc( +> posn_list::list(list(numeric)), +> result_var_name::string, +> coeff_name_prefix::string, +> data_var_name_prefix::string, +> file_name::string +> ) +> +> ftruncate(file_name); +> +> fprintf(file_name, "%s =\n", result_var_name); +> +# list of "coeff*data_var" terms +> map( +> proc(posn::list(numeric)) +> sprintf("%s*%s", +> coeff_name(posn,coeff_name_prefix), +> data_var_name(posn,data_var_name_prefix)); +> end proc +> , +> posn_list +> ); +> +> ListTools[Join](%, "\n\t+ "); +> cat(op(%)); +> fprintf(file_name, "\t%s;\n", %); +> +> fclose(file_name); +> +> NULL; +> end proc; +print_interp_cmpt__lc_of_data := proc(posn_list::list(list(numeric)), +result_var_name::string, coeff_name_prefix::string, +data_var_name_prefix::string, file_name::string) + ftruncate(file_name); + fprintf(file_name, "%s =\n", result_var_name); + map(proc(posn::list(numeric)) + sprintf("%s*%s", coeff_name(posn, coeff_name_prefix), + data_var_name(posn, data_var_name_prefix)) + end proc, posn_list); + ListTools[Join](%, "\n\t+ "); + cat(op(%)); + fprintf(file_name, "\t%s;\n", %); + fclose(file_name); + NULL +end proc + +> +################################################################################ +################################################################################ +################################################################################ +> +# +# This function computes the name of the coefficient of the data at a +# given [m] position, i.e. it encapsulates our naming convention for this. +# +# Arguments: +# posn = (in) The [m] coordinates. +# name_prefix = A prefix string for the coefficient name. +# +# Results: +# The function returns the coefficient, as a Maple string. +# +> coeff_name := +> proc(posn::list(numeric), name_prefix::string) +> cat(name_prefix, sprint_numeric_list(posn)); +> end proc; +coeff_name := proc(posn::list(numeric), name_prefix::string) + cat(name_prefix, sprint_numeric_list(posn)) +end proc + +> +################################################################################ +> +# +# This function computes the name of the variable in which the C code +# will store the input data at a given [m] position, i.e. it encapsulates +# our naming convention for this. +# +# Arguments: +# posn = (in) The [m] coordinates. +# name_prefix = A prefix string for the variable name. +# +# Results: +# The function returns the variable name, as a Maple string. +# +> data_var_name := +> proc(posn::list(numeric), name_prefix::string) +> cat(name_prefix, sprint_numeric_list(posn)); +> end proc; +data_var_name := proc(posn::list(numeric), name_prefix::string) + cat(name_prefix, sprint_numeric_list(posn)) +end proc + +# Maple code to compute lists of point positions in hypercube-shaped molecules +# $Id: $ +> +################################################################################ +> +# +# 1D interpolation points +# +> posn_list_1d_size2 := hypercube_points([ 0], [+1]); + posn_list_1d_size2 := [[0], [1]] + +> posn_list_1d_size3 := hypercube_points([-1], [+1]); + posn_list_1d_size3 := [[-1], [0], [1]] + +> posn_list_1d_size4 := hypercube_points([-1], [+2]); + posn_list_1d_size4 := [[-1], [0], [1], [2]] + +> posn_list_1d_size5 := hypercube_points([-2], [+2]); + posn_list_1d_size5 := [[-2], [-1], [0], [1], [2]] + +> posn_list_1d_size6 := hypercube_points([-2], [+3]); + posn_list_1d_size6 := [[-2], [-1], [0], [1], [2], [3]] + +> posn_list_1d_size7 := hypercube_points([-3], [+3]); + posn_list_1d_size7 := [[-3], [-2], [-1], [0], [1], [2], [3]] + +> +################################################################################ +> +# +# 2D interpolation points (Fortran ordering) +# +> posn_list_2d_size2 := map(ListTools[Reverse], +> hypercube_points([ 0, 0], [+1,+1])); + posn_list_2d_size2 := [[0, 0], [1, 0], [0, 1], [1, 1]] + +> posn_list_2d_size3 := map(ListTools[Reverse], +> hypercube_points([-1,-1], [+1,+1])); +posn_list_2d_size3 := [[-1, -1], [0, -1], [1, -1], [-1, 0], [0, 0], [1, 0], + + [-1, 1], [0, 1], [1, 1]] + +> posn_list_2d_size4 := map(ListTools[Reverse], +> hypercube_points([-1,-1], [+2,+2])); +posn_list_2d_size4 := [[-1, -1], [0, -1], [1, -1], [2, -1], [-1, 0], [0, 0], + + [1, 0], [2, 0], [-1, 1], [0, 1], [1, 1], [2, 1], [-1, 2], [0, 2], [1, 2], + + [2, 2]] + +> posn_list_2d_size5 := map(ListTools[Reverse], +> hypercube_points([-2,-2], [+2,+2])); +posn_list_2d_size5 := [[-2, -2], [-1, -2], [0, -2], [1, -2], [2, -2], [-2, -1], + + [-1, -1], [0, -1], [1, -1], [2, -1], [-2, 0], [-1, 0], [0, 0], [1, 0], + + [2, 0], [-2, 1], [-1, 1], [0, 1], [1, 1], [2, 1], [-2, 2], [-1, 2], [0, 2], + + [1, 2], [2, 2]] + +> +################################################################################ +> +# +# 3D interpolation points (Fortran ordering) +# +> posn_list_3d_size2 := map(ListTools[Reverse], +> hypercube_points([ 0, 0, 0], [+1,+1,+1])); +posn_list_3d_size2 := [[0, 0, 0], [1, 0, 0], [0, 1, 0], [1, 1, 0], [0, 0, 1], + + [1, 0, 1], [0, 1, 1], [1, 1, 1]] + +> posn_list_3d_size3 := map(ListTools[Reverse], +> hypercube_points([-1,-1,-1], [+1,+1,+1])); +posn_list_3d_size3 := [[-1, -1, -1], [0, -1, -1], [1, -1, -1], [-1, 0, -1], + + [0, 0, -1], [1, 0, -1], [-1, 1, -1], [0, 1, -1], [1, 1, -1], [-1, -1, 0], + + [0, -1, 0], [1, -1, 0], [-1, 0, 0], [0, 0, 0], [1, 0, 0], [-1, 1, 0], + + [0, 1, 0], [1, 1, 0], [-1, -1, 1], [0, -1, 1], [1, -1, 1], [-1, 0, 1], + + [0, 0, 1], [1, 0, 1], [-1, 1, 1], [0, 1, 1], [1, 1, 1]] + +> posn_list_3d_size4 := map(ListTools[Reverse], +> hypercube_points([-1,-1,-1], [+2,+2,+2])); +posn_list_3d_size4 := [[-1, -1, -1], [0, -1, -1], [1, -1, -1], [2, -1, -1], + + [-1, 0, -1], [0, 0, -1], [1, 0, -1], [2, 0, -1], [-1, 1, -1], [0, 1, -1], + + [1, 1, -1], [2, 1, -1], [-1, 2, -1], [0, 2, -1], [1, 2, -1], [2, 2, -1], + + [-1, -1, 0], [0, -1, 0], [1, -1, 0], [2, -1, 0], [-1, 0, 0], [0, 0, 0], + + [1, 0, 0], [2, 0, 0], [-1, 1, 0], [0, 1, 0], [1, 1, 0], [2, 1, 0], + + [-1, 2, 0], [0, 2, 0], [1, 2, 0], [2, 2, 0], [-1, -1, 1], [0, -1, 1], + + [1, -1, 1], [2, -1, 1], [-1, 0, 1], [0, 0, 1], [1, 0, 1], [2, 0, 1], + + [-1, 1, 1], [0, 1, 1], [1, 1, 1], [2, 1, 1], [-1, 2, 1], [0, 2, 1], + + [1, 2, 1], [2, 2, 1], [-1, -1, 2], [0, -1, 2], [1, -1, 2], [2, -1, 2], + + [-1, 0, 2], [0, 0, 2], [1, 0, 2], [2, 0, 2], [-1, 1, 2], [0, 1, 2], + + [1, 1, 2], [2, 1, 2], [-1, 2, 2], [0, 2, 2], [1, 2, 2], [2, 2, 2]] + +> posn_list_3d_size5 := map(ListTools[Reverse], +> hypercube_points([-2,-2,-2], [+2,+2,+2])); +posn_list_3d_size5 := [[-2, -2, -2], [-1, -2, -2], [0, -2, -2], [1, -2, -2], + + [2, -2, -2], [-2, -1, -2], [-1, -1, -2], [0, -1, -2], [1, -1, -2], + + [2, -1, -2], [-2, 0, -2], [-1, 0, -2], [0, 0, -2], [1, 0, -2], [2, 0, -2], + + [-2, 1, -2], [-1, 1, -2], [0, 1, -2], [1, 1, -2], [2, 1, -2], [-2, 2, -2], + + [-1, 2, -2], [0, 2, -2], [1, 2, -2], [2, 2, -2], [-2, -2, -1], [-1, -2, -1], + + [0, -2, -1], [1, -2, -1], [2, -2, -1], [-2, -1, -1], [-1, -1, -1], + + [0, -1, -1], [1, -1, -1], [2, -1, -1], [-2, 0, -1], [-1, 0, -1], [0, 0, -1], + + [1, 0, -1], [2, 0, -1], [-2, 1, -1], [-1, 1, -1], [0, 1, -1], [1, 1, -1], + + [2, 1, -1], [-2, 2, -1], [-1, 2, -1], [0, 2, -1], [1, 2, -1], [2, 2, -1], + + [-2, -2, 0], [-1, -2, 0], [0, -2, 0], [1, -2, 0], [2, -2, 0], [-2, -1, 0], + + [-1, -1, 0], [0, -1, 0], [1, -1, 0], [2, -1, 0], [-2, 0, 0], [-1, 0, 0], + + [0, 0, 0], [1, 0, 0], [2, 0, 0], [-2, 1, 0], [-1, 1, 0], [0, 1, 0], + + [1, 1, 0], [2, 1, 0], [-2, 2, 0], [-1, 2, 0], [0, 2, 0], [1, 2, 0], + + [2, 2, 0], [-2, -2, 1], [-1, -2, 1], [0, -2, 1], [1, -2, 1], [2, -2, 1], + + [-2, -1, 1], [-1, -1, 1], [0, -1, 1], [1, -1, 1], [2, -1, 1], [-2, 0, 1], + + [-1, 0, 1], [0, 0, 1], [1, 0, 1], [2, 0, 1], [-2, 1, 1], [-1, 1, 1], + + [0, 1, 1], [1, 1, 1], [2, 1, 1], [-2, 2, 1], [-1, 2, 1], [0, 2, 1], + + [1, 2, 1], [2, 2, 1], [-2, -2, 2], [-1, -2, 2], [0, -2, 2], [1, -2, 2], + + [2, -2, 2], [-2, -1, 2], [-1, -1, 2], [0, -1, 2], [1, -1, 2], [2, -1, 2], + + [-2, 0, 2], [-1, 0, 2], [0, 0, 2], [1, 0, 2], [2, 0, 2], [-2, 1, 2], + + [-1, 1, 2], [0, 1, 2], [1, 1, 2], [2, 1, 2], [-2, 2, 2], [-1, 2, 2], + + [0, 2, 2], [1, 2, 2], [2, 2, 2]] + +# Maple code to compute common coefficients for all 2d interpolation schemes +# $Id: 2d.maple,v 1.3 2002/05/14 15:54:01 jthorn Exp $ +> +################################################################################ +> +# +# generic stuff for 2d, cube, size=2 +# +> +> data_var_list_2d_size2 := map(data_var_name, posn_list_2d_size2, "data_"); + data_var_list_2d_size2 := ["data_0_0", "data_p1_0", "data_0_p1", "data_p1_p1"] + +> +> print_name_list_dcl(data_var_list_2d_size2, "fp", +> "2d.cube.size2/data-var.dcl.c"); +> print_data_var_assign(posn_list_2d_size2, "data_", +> "2d.cube.size2/data-var.assign.c"); +> +> print_interp_coeff_var_store(posn_list_2d_size2, "", "coeff_I_", +> "2d.cube.size2/coeff-I.store.c"); +> print_interp_coeff_var_store(posn_list_2d_size2, "factor", "coeff_dx_", +> "2d.cube.size2/coeff-dx.store.c"); +> print_interp_coeff_var_store(posn_list_2d_size2, "factor", "coeff_dy_", +> "2d.cube.size2/coeff-dy.store.c"); +> +> print_name_list_dcl(map(coeff_name, posn_list_2d_size2, "coeff_I_"), "fp", +> "2d.cube.size2/coeff-I.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_2d_size2, "coeff_dx_"), "fp", +> "2d.cube.size2/coeff-dx.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_2d_size2, "coeff_dy_"), "fp", +> "2d.cube.size2/coeff-dy.dcl.c"); +> +> print_interp_cmpt__lc_of_data(posn_list_2d_size2, +> "result", "coeff_I_", "data_", +> "2d.cube.size2/interp-I.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_2d_size2, +> "result", "coeff_dx_", "data_", +> "2d.cube.size2/interp-dx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_2d_size2, +> "result", "coeff_dy_", "data_", +> "2d.cube.size2/interp-dy.compute.c"); +> +################################################################################ +> +# +# generic stuff for 2d, cube, size=3 +# +> +> data_var_list_2d_size3 := map(data_var_name, posn_list_2d_size3, "data_"); +data_var_list_2d_size3 := ["data_m1_m1", "data_0_m1", "data_p1_m1", "data_m1_0", + + "data_0_0", "data_p1_0", "data_m1_p1", "data_0_p1", "data_p1_p1"] + +> +> print_name_list_dcl(data_var_list_2d_size3, "fp", +> "2d.cube.size3/data-var.dcl.c"); +> print_data_var_assign(posn_list_2d_size3, "data_", +> "2d.cube.size3/data-var.assign.c"); +> +> print_interp_coeff_var_store(posn_list_2d_size3, "", "coeff_I_", +> "2d.cube.size3/coeff-I.store.c"); +> print_interp_coeff_var_store(posn_list_2d_size3, "factor", "coeff_dx_", +> "2d.cube.size3/coeff-dx.store.c"); +> print_interp_coeff_var_store(posn_list_2d_size3, "factor", "coeff_dy_", +> "2d.cube.size3/coeff-dy.store.c"); +> print_interp_coeff_var_store(posn_list_2d_size3, "factor", "coeff_dxx_", +> "2d.cube.size3/coeff-dxx.store.c"); +> print_interp_coeff_var_store(posn_list_2d_size3, "factor", "coeff_dxy_", +> "2d.cube.size3/coeff-dxy.store.c"); +> print_interp_coeff_var_store(posn_list_2d_size3, "factor", "coeff_dyy_", +> "2d.cube.size3/coeff-dyy.store.c"); +> +> print_name_list_dcl(map(coeff_name, posn_list_2d_size3, "coeff_I_"), "fp", +> "2d.cube.size3/coeff-I.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_2d_size3, "coeff_dx_"), "fp", +> "2d.cube.size3/coeff-dx.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_2d_size3, "coeff_dy_"), "fp", +> "2d.cube.size3/coeff-dy.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_2d_size3, "coeff_dxx_"), "fp", +> "2d.cube.size3/coeff-dxx.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_2d_size3, "coeff_dxy_"), "fp", +> "2d.cube.size3/coeff-dxy.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_2d_size3, "coeff_dyy_"), "fp", +> "2d.cube.size3/coeff-dyy.dcl.c"); +> +> print_interp_cmpt__lc_of_data(posn_list_2d_size3, +> "result", "coeff_I_", "data_", +> "2d.cube.size3/interp-I.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_2d_size3, +> "result", "coeff_dx_", "data_", +> "2d.cube.size3/interp-dx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_2d_size3, +> "result", "coeff_dy_", "data_", +> "2d.cube.size3/interp-dy.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_2d_size3, +> "result", "coeff_dxx_", "data_", +> "2d.cube.size3/interp-dxx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_2d_size3, +> "result", "coeff_dxy_", "data_", +> "2d.cube.size3/interp-dxy.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_2d_size3, +> "result", "coeff_dyy_", "data_", +> "2d.cube.size3/interp-dyy.compute.c"); +> +################################################################################ +> +# +# generic stuff for 2d, cube, size=4 +# +> +> data_var_list_2d_size4 := map(data_var_name, posn_list_2d_size4, "data_"); +data_var_list_2d_size4 := ["data_m1_m1", "data_0_m1", "data_p1_m1", + + "data_p2_m1", "data_m1_0", "data_0_0", "data_p1_0", "data_p2_0", + + "data_m1_p1", "data_0_p1", "data_p1_p1", "data_p2_p1", "data_m1_p2", + + "data_0_p2", "data_p1_p2", "data_p2_p2"] + +> +> print_name_list_dcl(data_var_list_2d_size4, "fp", +> "2d.cube.size4/data-var.dcl.c"); +> print_data_var_assign(posn_list_2d_size4, "data_", +> "2d.cube.size4/data-var.assign.c"); +> +> print_interp_coeff_var_store(posn_list_2d_size4, "", "coeff_I_", +> "2d.cube.size4/coeff-I.store.c"); +> print_interp_coeff_var_store(posn_list_2d_size4, "factor", "coeff_dx_", +> "2d.cube.size4/coeff-dx.store.c"); +> print_interp_coeff_var_store(posn_list_2d_size4, "factor", "coeff_dy_", +> "2d.cube.size4/coeff-dy.store.c"); +> print_interp_coeff_var_store(posn_list_2d_size4, "factor", "coeff_dxx_", +> "2d.cube.size4/coeff-dxx.store.c"); +> print_interp_coeff_var_store(posn_list_2d_size4, "factor", "coeff_dxy_", +> "2d.cube.size4/coeff-dxy.store.c"); +> print_interp_coeff_var_store(posn_list_2d_size4, "factor", "coeff_dyy_", +> "2d.cube.size4/coeff-dyy.store.c"); +> +> print_name_list_dcl(map(coeff_name, posn_list_2d_size4, "coeff_I_"), "fp", +> "2d.cube.size4/coeff-I.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_2d_size4, "coeff_dx_"), "fp", +> "2d.cube.size4/coeff-dx.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_2d_size4, "coeff_dy_"), "fp", +> "2d.cube.size4/coeff-dy.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_2d_size4, "coeff_dxx_"), "fp", +> "2d.cube.size4/coeff-dxx.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_2d_size4, "coeff_dxy_"), "fp", +> "2d.cube.size4/coeff-dxy.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_2d_size4, "coeff_dyy_"), "fp", +> "2d.cube.size4/coeff-dyy.dcl.c"); +> +> print_interp_cmpt__lc_of_data(posn_list_2d_size4, +> "result", "coeff_I_", "data_", +> "2d.cube.size4/interp-I.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_2d_size4, +> "result", "coeff_dx_", "data_", +> "2d.cube.size4/interp-dx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_2d_size4, +> "result", "coeff_dy_", "data_", +> "2d.cube.size4/interp-dy.compute.c"); +bytes used=1000024, alloc=917336, time=0.17 +> print_interp_cmpt__lc_of_data(posn_list_2d_size4, +> "result", "coeff_dxx_", "data_", +> "2d.cube.size4/interp-dxx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_2d_size4, +> "result", "coeff_dxy_", "data_", +> "2d.cube.size4/interp-dxy.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_2d_size4, +> "result", "coeff_dyy_", "data_", +> "2d.cube.size4/interp-dyy.compute.c"); +> +################################################################################ +> +# +# generic stuff for 2d, cube, size=5 +# +> +> data_var_list_2d_size5 := map(data_var_name, posn_list_2d_size5, "data_"); +data_var_list_2d_size5 := ["data_m2_m2", "data_m1_m2", "data_0_m2", + + "data_p1_m2", "data_p2_m2", "data_m2_m1", "data_m1_m1", "data_0_m1", + + "data_p1_m1", "data_p2_m1", "data_m2_0", "data_m1_0", "data_0_0", + + "data_p1_0", "data_p2_0", "data_m2_p1", "data_m1_p1", "data_0_p1", + + "data_p1_p1", "data_p2_p1", "data_m2_p2", "data_m1_p2", "data_0_p2", + + "data_p1_p2", "data_p2_p2"] + +> +> print_name_list_dcl(data_var_list_2d_size5, "fp", +> "2d.cube.size5/data-var.dcl.c"); +> print_data_var_assign(posn_list_2d_size5, "data_", +> "2d.cube.size5/data-var.assign.c"); +> +> print_interp_coeff_var_store(posn_list_2d_size5, "", "coeff_I_", +> "2d.cube.size5/coeff-I.store.c"); +> print_interp_coeff_var_store(posn_list_2d_size5, "factor", "coeff_dx_", +> "2d.cube.size5/coeff-dx.store.c"); +> print_interp_coeff_var_store(posn_list_2d_size5, "factor", "coeff_dy_", +> "2d.cube.size5/coeff-dy.store.c"); +> print_interp_coeff_var_store(posn_list_2d_size5, "factor", "coeff_dxx_", +> "2d.cube.size5/coeff-dxx.store.c"); +> print_interp_coeff_var_store(posn_list_2d_size5, "factor", "coeff_dxy_", +> "2d.cube.size5/coeff-dxy.store.c"); +> print_interp_coeff_var_store(posn_list_2d_size5, "factor", "coeff_dyy_", +> "2d.cube.size5/coeff-dyy.store.c"); +> +> print_name_list_dcl(map(coeff_name, posn_list_2d_size5, "coeff_I_"), "fp", +> "2d.cube.size5/coeff-I.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_2d_size5, "coeff_dx_"), "fp", +> "2d.cube.size5/coeff-dx.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_2d_size5, "coeff_dy_"), "fp", +> "2d.cube.size5/coeff-dy.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_2d_size5, "coeff_dxx_"), "fp", +> "2d.cube.size5/coeff-dxx.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_2d_size5, "coeff_dxy_"), "fp", +> "2d.cube.size5/coeff-dxy.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_2d_size5, "coeff_dyy_"), "fp", +> "2d.cube.size5/coeff-dyy.dcl.c"); +> +> print_interp_cmpt__lc_of_data(posn_list_2d_size5, +> "result", "coeff_I_", "data_", +> "2d.cube.size5/interp-I.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_2d_size5, +> "result", "coeff_dx_", "data_", +> "2d.cube.size5/interp-dx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_2d_size5, +> "result", "coeff_dy_", "data_", +> "2d.cube.size5/interp-dy.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_2d_size5, +> "result", "coeff_dxx_", "data_", +> "2d.cube.size5/interp-dxx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_2d_size5, +> "result", "coeff_dxy_", "data_", +> "2d.cube.size5/interp-dxy.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_2d_size5, +> "result", "coeff_dyy_", "data_", +> "2d.cube.size5/interp-dyy.compute.c"); +> +################################################################################ +> quit +bytes used=1720848, alloc=917336, time=0.31 diff --git a/src/GeneralizedPolynomial-Uniform/common/2d.maple b/src/GeneralizedPolynomial-Uniform/common/2d.maple new file mode 100644 index 0000000..4a7b939 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/2d.maple @@ -0,0 +1,215 @@ +# Maple code to compute common coefficients for all 2d interpolation schemes +# $Id$ + +################################################################################ + +# +# generic stuff for 2d, cube, size=2 +# + +data_var_list_2d_size2 := map(data_var_name, posn_list_2d_size2, "data_"); + +print_name_list_dcl(data_var_list_2d_size2, "fp", + "2d.cube.size2/data-var.dcl.c"); +print_data_var_assign(posn_list_2d_size2, "data_", + "2d.cube.size2/data-var.assign.c"); + +print_interp_coeff_var_store(posn_list_2d_size2, "", "coeff_I_", + "2d.cube.size2/coeff-I.store.c"); +print_interp_coeff_var_store(posn_list_2d_size2, "factor", "coeff_dx_", + "2d.cube.size2/coeff-dx.store.c"); +print_interp_coeff_var_store(posn_list_2d_size2, "factor", "coeff_dy_", + "2d.cube.size2/coeff-dy.store.c"); + +print_name_list_dcl(map(coeff_name, posn_list_2d_size2, "coeff_I_"), "fp", + "2d.cube.size2/coeff-I.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_2d_size2, "coeff_dx_"), "fp", + "2d.cube.size2/coeff-dx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_2d_size2, "coeff_dy_"), "fp", + "2d.cube.size2/coeff-dy.dcl.c"); + +print_interp_cmpt__lc_of_data(posn_list_2d_size2, + "result", "coeff_I_", "data_", + "2d.cube.size2/interp-I.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_2d_size2, + "result", "coeff_dx_", "data_", + "2d.cube.size2/interp-dx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_2d_size2, + "result", "coeff_dy_", "data_", + "2d.cube.size2/interp-dy.compute.c"); + +################################################################################ + +# +# generic stuff for 2d, cube, size=3 +# + +data_var_list_2d_size3 := map(data_var_name, posn_list_2d_size3, "data_"); + +print_name_list_dcl(data_var_list_2d_size3, "fp", + "2d.cube.size3/data-var.dcl.c"); +print_data_var_assign(posn_list_2d_size3, "data_", + "2d.cube.size3/data-var.assign.c"); + +print_interp_coeff_var_store(posn_list_2d_size3, "", "coeff_I_", + "2d.cube.size3/coeff-I.store.c"); +print_interp_coeff_var_store(posn_list_2d_size3, "factor", "coeff_dx_", + "2d.cube.size3/coeff-dx.store.c"); +print_interp_coeff_var_store(posn_list_2d_size3, "factor", "coeff_dy_", + "2d.cube.size3/coeff-dy.store.c"); +print_interp_coeff_var_store(posn_list_2d_size3, "factor", "coeff_dxx_", + "2d.cube.size3/coeff-dxx.store.c"); +print_interp_coeff_var_store(posn_list_2d_size3, "factor", "coeff_dxy_", + "2d.cube.size3/coeff-dxy.store.c"); +print_interp_coeff_var_store(posn_list_2d_size3, "factor", "coeff_dyy_", + "2d.cube.size3/coeff-dyy.store.c"); + +print_name_list_dcl(map(coeff_name, posn_list_2d_size3, "coeff_I_"), "fp", + "2d.cube.size3/coeff-I.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_2d_size3, "coeff_dx_"), "fp", + "2d.cube.size3/coeff-dx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_2d_size3, "coeff_dy_"), "fp", + "2d.cube.size3/coeff-dy.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_2d_size3, "coeff_dxx_"), "fp", + "2d.cube.size3/coeff-dxx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_2d_size3, "coeff_dxy_"), "fp", + "2d.cube.size3/coeff-dxy.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_2d_size3, "coeff_dyy_"), "fp", + "2d.cube.size3/coeff-dyy.dcl.c"); + +print_interp_cmpt__lc_of_data(posn_list_2d_size3, + "result", "coeff_I_", "data_", + "2d.cube.size3/interp-I.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_2d_size3, + "result", "coeff_dx_", "data_", + "2d.cube.size3/interp-dx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_2d_size3, + "result", "coeff_dy_", "data_", + "2d.cube.size3/interp-dy.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_2d_size3, + "result", "coeff_dxx_", "data_", + "2d.cube.size3/interp-dxx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_2d_size3, + "result", "coeff_dxy_", "data_", + "2d.cube.size3/interp-dxy.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_2d_size3, + "result", "coeff_dyy_", "data_", + "2d.cube.size3/interp-dyy.compute.c"); + +################################################################################ + +# +# generic stuff for 2d, cube, size=4 +# + +data_var_list_2d_size4 := map(data_var_name, posn_list_2d_size4, "data_"); + +print_name_list_dcl(data_var_list_2d_size4, "fp", + "2d.cube.size4/data-var.dcl.c"); +print_data_var_assign(posn_list_2d_size4, "data_", + "2d.cube.size4/data-var.assign.c"); + +print_interp_coeff_var_store(posn_list_2d_size4, "", "coeff_I_", + "2d.cube.size4/coeff-I.store.c"); +print_interp_coeff_var_store(posn_list_2d_size4, "factor", "coeff_dx_", + "2d.cube.size4/coeff-dx.store.c"); +print_interp_coeff_var_store(posn_list_2d_size4, "factor", "coeff_dy_", + "2d.cube.size4/coeff-dy.store.c"); +print_interp_coeff_var_store(posn_list_2d_size4, "factor", "coeff_dxx_", + "2d.cube.size4/coeff-dxx.store.c"); +print_interp_coeff_var_store(posn_list_2d_size4, "factor", "coeff_dxy_", + "2d.cube.size4/coeff-dxy.store.c"); +print_interp_coeff_var_store(posn_list_2d_size4, "factor", "coeff_dyy_", + "2d.cube.size4/coeff-dyy.store.c"); + +print_name_list_dcl(map(coeff_name, posn_list_2d_size4, "coeff_I_"), "fp", + "2d.cube.size4/coeff-I.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_2d_size4, "coeff_dx_"), "fp", + "2d.cube.size4/coeff-dx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_2d_size4, "coeff_dy_"), "fp", + "2d.cube.size4/coeff-dy.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_2d_size4, "coeff_dxx_"), "fp", + "2d.cube.size4/coeff-dxx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_2d_size4, "coeff_dxy_"), "fp", + "2d.cube.size4/coeff-dxy.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_2d_size4, "coeff_dyy_"), "fp", + "2d.cube.size4/coeff-dyy.dcl.c"); + +print_interp_cmpt__lc_of_data(posn_list_2d_size4, + "result", "coeff_I_", "data_", + "2d.cube.size4/interp-I.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_2d_size4, + "result", "coeff_dx_", "data_", + "2d.cube.size4/interp-dx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_2d_size4, + "result", "coeff_dy_", "data_", + "2d.cube.size4/interp-dy.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_2d_size4, + "result", "coeff_dxx_", "data_", + "2d.cube.size4/interp-dxx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_2d_size4, + "result", "coeff_dxy_", "data_", + "2d.cube.size4/interp-dxy.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_2d_size4, + "result", "coeff_dyy_", "data_", + "2d.cube.size4/interp-dyy.compute.c"); + +################################################################################ + +# +# generic stuff for 2d, cube, size=5 +# + +data_var_list_2d_size5 := map(data_var_name, posn_list_2d_size5, "data_"); + +print_name_list_dcl(data_var_list_2d_size5, "fp", + "2d.cube.size5/data-var.dcl.c"); +print_data_var_assign(posn_list_2d_size5, "data_", + "2d.cube.size5/data-var.assign.c"); + +print_interp_coeff_var_store(posn_list_2d_size5, "", "coeff_I_", + "2d.cube.size5/coeff-I.store.c"); +print_interp_coeff_var_store(posn_list_2d_size5, "factor", "coeff_dx_", + "2d.cube.size5/coeff-dx.store.c"); +print_interp_coeff_var_store(posn_list_2d_size5, "factor", "coeff_dy_", + "2d.cube.size5/coeff-dy.store.c"); +print_interp_coeff_var_store(posn_list_2d_size5, "factor", "coeff_dxx_", + "2d.cube.size5/coeff-dxx.store.c"); +print_interp_coeff_var_store(posn_list_2d_size5, "factor", "coeff_dxy_", + "2d.cube.size5/coeff-dxy.store.c"); +print_interp_coeff_var_store(posn_list_2d_size5, "factor", "coeff_dyy_", + "2d.cube.size5/coeff-dyy.store.c"); + +print_name_list_dcl(map(coeff_name, posn_list_2d_size5, "coeff_I_"), "fp", + "2d.cube.size5/coeff-I.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_2d_size5, "coeff_dx_"), "fp", + "2d.cube.size5/coeff-dx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_2d_size5, "coeff_dy_"), "fp", + "2d.cube.size5/coeff-dy.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_2d_size5, "coeff_dxx_"), "fp", + "2d.cube.size5/coeff-dxx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_2d_size5, "coeff_dxy_"), "fp", + "2d.cube.size5/coeff-dxy.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_2d_size5, "coeff_dyy_"), "fp", + "2d.cube.size5/coeff-dyy.dcl.c"); + +print_interp_cmpt__lc_of_data(posn_list_2d_size5, + "result", "coeff_I_", "data_", + "2d.cube.size5/interp-I.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_2d_size5, + "result", "coeff_dx_", "data_", + "2d.cube.size5/interp-dx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_2d_size5, + "result", "coeff_dy_", "data_", + "2d.cube.size5/interp-dy.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_2d_size5, + "result", "coeff_dxx_", "data_", + "2d.cube.size5/interp-dxx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_2d_size5, + "result", "coeff_dxy_", "data_", + "2d.cube.size5/interp-dxy.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_2d_size5, + "result", "coeff_dyy_", "data_", + "2d.cube.size5/interp-dyy.compute.c"); + +################################################################################ diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-I.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-I.dcl.c new file mode 100644 index 0000000..601e5c7 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-I.dcl.c @@ -0,0 +1,8 @@ +fp coeff_I_0_0_0, + coeff_I_p1_0_0, + coeff_I_0_p1_0, + coeff_I_p1_p1_0, + coeff_I_0_0_p1, + coeff_I_p1_0_p1, + coeff_I_0_p1_p1, + coeff_I_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-I.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-I.store.c new file mode 100644 index 0000000..b90f5e0 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-I.store.c @@ -0,0 +1,8 @@ +COEFF(0,0,0) = coeff_I_0_0_0; +COEFF(1,0,0) = coeff_I_p1_0_0; +COEFF(0,1,0) = coeff_I_0_p1_0; +COEFF(1,1,0) = coeff_I_p1_p1_0; +COEFF(0,0,1) = coeff_I_0_0_p1; +COEFF(1,0,1) = coeff_I_p1_0_p1; +COEFF(0,1,1) = coeff_I_0_p1_p1; +COEFF(1,1,1) = coeff_I_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-dx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-dx.dcl.c new file mode 100644 index 0000000..c546b35 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-dx.dcl.c @@ -0,0 +1,8 @@ +fp coeff_dx_0_0_0, + coeff_dx_p1_0_0, + coeff_dx_0_p1_0, + coeff_dx_p1_p1_0, + coeff_dx_0_0_p1, + coeff_dx_p1_0_p1, + coeff_dx_0_p1_p1, + coeff_dx_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-dx.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-dx.store.c new file mode 100644 index 0000000..469dacf --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-dx.store.c @@ -0,0 +1,8 @@ +COEFF(0,0,0) = factor * coeff_dx_0_0_0; +COEFF(1,0,0) = factor * coeff_dx_p1_0_0; +COEFF(0,1,0) = factor * coeff_dx_0_p1_0; +COEFF(1,1,0) = factor * coeff_dx_p1_p1_0; +COEFF(0,0,1) = factor * coeff_dx_0_0_p1; +COEFF(1,0,1) = factor * coeff_dx_p1_0_p1; +COEFF(0,1,1) = factor * coeff_dx_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dx_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-dy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-dy.dcl.c new file mode 100644 index 0000000..4e5bbb6 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-dy.dcl.c @@ -0,0 +1,8 @@ +fp coeff_dy_0_0_0, + coeff_dy_p1_0_0, + coeff_dy_0_p1_0, + coeff_dy_p1_p1_0, + coeff_dy_0_0_p1, + coeff_dy_p1_0_p1, + coeff_dy_0_p1_p1, + coeff_dy_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-dy.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-dy.store.c new file mode 100644 index 0000000..cd659de --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-dy.store.c @@ -0,0 +1,8 @@ +COEFF(0,0,0) = factor * coeff_dy_0_0_0; +COEFF(1,0,0) = factor * coeff_dy_p1_0_0; +COEFF(0,1,0) = factor * coeff_dy_0_p1_0; +COEFF(1,1,0) = factor * coeff_dy_p1_p1_0; +COEFF(0,0,1) = factor * coeff_dy_0_0_p1; +COEFF(1,0,1) = factor * coeff_dy_p1_0_p1; +COEFF(0,1,1) = factor * coeff_dy_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dy_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-dz.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-dz.dcl.c new file mode 100644 index 0000000..3ee8587 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-dz.dcl.c @@ -0,0 +1,8 @@ +fp coeff_dz_0_0_0, + coeff_dz_p1_0_0, + coeff_dz_0_p1_0, + coeff_dz_p1_p1_0, + coeff_dz_0_0_p1, + coeff_dz_p1_0_p1, + coeff_dz_0_p1_p1, + coeff_dz_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-dz.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-dz.store.c new file mode 100644 index 0000000..30ae20c --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/coeff-dz.store.c @@ -0,0 +1,8 @@ +COEFF(0,0,0) = factor * coeff_dz_0_0_0; +COEFF(1,0,0) = factor * coeff_dz_p1_0_0; +COEFF(0,1,0) = factor * coeff_dz_0_p1_0; +COEFF(1,1,0) = factor * coeff_dz_p1_p1_0; +COEFF(0,0,1) = factor * coeff_dz_0_0_p1; +COEFF(1,0,1) = factor * coeff_dz_p1_0_p1; +COEFF(0,1,1) = factor * coeff_dz_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dz_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/data-var.assign.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/data-var.assign.c new file mode 100644 index 0000000..81a6619 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/data-var.assign.c @@ -0,0 +1,8 @@ +data_0_0_0 = DATA(0,0,0); +data_p1_0_0 = DATA(1,0,0); +data_0_p1_0 = DATA(0,1,0); +data_p1_p1_0 = DATA(1,1,0); +data_0_0_p1 = DATA(0,0,1); +data_p1_0_p1 = DATA(1,0,1); +data_0_p1_p1 = DATA(0,1,1); +data_p1_p1_p1 = DATA(1,1,1); diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/data-var.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/data-var.dcl.c new file mode 100644 index 0000000..f1e21eb --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/data-var.dcl.c @@ -0,0 +1,8 @@ +fp data_0_0_0, + data_p1_0_0, + data_0_p1_0, + data_p1_p1_0, + data_0_0_p1, + data_p1_0_p1, + data_0_p1_p1, + data_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/interp-I.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/interp-I.compute.c new file mode 100644 index 0000000..3997d06 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/interp-I.compute.c @@ -0,0 +1,9 @@ +result = + coeff_I_0_0_0*data_0_0_0 + + coeff_I_p1_0_0*data_p1_0_0 + + coeff_I_0_p1_0*data_0_p1_0 + + coeff_I_p1_p1_0*data_p1_p1_0 + + coeff_I_0_0_p1*data_0_0_p1 + + coeff_I_p1_0_p1*data_p1_0_p1 + + coeff_I_0_p1_p1*data_0_p1_p1 + + coeff_I_p1_p1_p1*data_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/interp-dx.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/interp-dx.compute.c new file mode 100644 index 0000000..452f263 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/interp-dx.compute.c @@ -0,0 +1,9 @@ +result = + coeff_dx_0_0_0*data_0_0_0 + + coeff_dx_p1_0_0*data_p1_0_0 + + coeff_dx_0_p1_0*data_0_p1_0 + + coeff_dx_p1_p1_0*data_p1_p1_0 + + coeff_dx_0_0_p1*data_0_0_p1 + + coeff_dx_p1_0_p1*data_p1_0_p1 + + coeff_dx_0_p1_p1*data_0_p1_p1 + + coeff_dx_p1_p1_p1*data_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/interp-dy.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/interp-dy.compute.c new file mode 100644 index 0000000..e659b18 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/interp-dy.compute.c @@ -0,0 +1,9 @@ +result = + coeff_dy_0_0_0*data_0_0_0 + + coeff_dy_p1_0_0*data_p1_0_0 + + coeff_dy_0_p1_0*data_0_p1_0 + + coeff_dy_p1_p1_0*data_p1_p1_0 + + coeff_dy_0_0_p1*data_0_0_p1 + + coeff_dy_p1_0_p1*data_p1_0_p1 + + coeff_dy_0_p1_p1*data_0_p1_p1 + + coeff_dy_p1_p1_p1*data_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/interp-dz.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/interp-dz.compute.c new file mode 100644 index 0000000..0074979 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size2/interp-dz.compute.c @@ -0,0 +1,9 @@ +result = + coeff_dz_0_0_0*data_0_0_0 + + coeff_dz_p1_0_0*data_p1_0_0 + + coeff_dz_0_p1_0*data_0_p1_0 + + coeff_dz_p1_p1_0*data_p1_p1_0 + + coeff_dz_0_0_p1*data_0_0_p1 + + coeff_dz_p1_0_p1*data_p1_0_p1 + + coeff_dz_0_p1_p1*data_0_p1_p1 + + coeff_dz_p1_p1_p1*data_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-I.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-I.dcl.c new file mode 100644 index 0000000..4cf0632 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-I.dcl.c @@ -0,0 +1,27 @@ +fp coeff_I_m1_m1_m1, + coeff_I_0_m1_m1, + coeff_I_p1_m1_m1, + coeff_I_m1_0_m1, + coeff_I_0_0_m1, + coeff_I_p1_0_m1, + coeff_I_m1_p1_m1, + coeff_I_0_p1_m1, + coeff_I_p1_p1_m1, + coeff_I_m1_m1_0, + coeff_I_0_m1_0, + coeff_I_p1_m1_0, + coeff_I_m1_0_0, + coeff_I_0_0_0, + coeff_I_p1_0_0, + coeff_I_m1_p1_0, + coeff_I_0_p1_0, + coeff_I_p1_p1_0, + coeff_I_m1_m1_p1, + coeff_I_0_m1_p1, + coeff_I_p1_m1_p1, + coeff_I_m1_0_p1, + coeff_I_0_0_p1, + coeff_I_p1_0_p1, + coeff_I_m1_p1_p1, + coeff_I_0_p1_p1, + coeff_I_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-I.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-I.store.c new file mode 100644 index 0000000..fd656b0 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-I.store.c @@ -0,0 +1,27 @@ +COEFF(-1,-1,-1) = coeff_I_m1_m1_m1; +COEFF(0,-1,-1) = coeff_I_0_m1_m1; +COEFF(1,-1,-1) = coeff_I_p1_m1_m1; +COEFF(-1,0,-1) = coeff_I_m1_0_m1; +COEFF(0,0,-1) = coeff_I_0_0_m1; +COEFF(1,0,-1) = coeff_I_p1_0_m1; +COEFF(-1,1,-1) = coeff_I_m1_p1_m1; +COEFF(0,1,-1) = coeff_I_0_p1_m1; +COEFF(1,1,-1) = coeff_I_p1_p1_m1; +COEFF(-1,-1,0) = coeff_I_m1_m1_0; +COEFF(0,-1,0) = coeff_I_0_m1_0; +COEFF(1,-1,0) = coeff_I_p1_m1_0; +COEFF(-1,0,0) = coeff_I_m1_0_0; +COEFF(0,0,0) = coeff_I_0_0_0; +COEFF(1,0,0) = coeff_I_p1_0_0; +COEFF(-1,1,0) = coeff_I_m1_p1_0; +COEFF(0,1,0) = coeff_I_0_p1_0; +COEFF(1,1,0) = coeff_I_p1_p1_0; +COEFF(-1,-1,1) = coeff_I_m1_m1_p1; +COEFF(0,-1,1) = coeff_I_0_m1_p1; +COEFF(1,-1,1) = coeff_I_p1_m1_p1; +COEFF(-1,0,1) = coeff_I_m1_0_p1; +COEFF(0,0,1) = coeff_I_0_0_p1; +COEFF(1,0,1) = coeff_I_p1_0_p1; +COEFF(-1,1,1) = coeff_I_m1_p1_p1; +COEFF(0,1,1) = coeff_I_0_p1_p1; +COEFF(1,1,1) = coeff_I_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dx.dcl.c new file mode 100644 index 0000000..9fc8711 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dx.dcl.c @@ -0,0 +1,27 @@ +fp coeff_dx_m1_m1_m1, + coeff_dx_0_m1_m1, + coeff_dx_p1_m1_m1, + coeff_dx_m1_0_m1, + coeff_dx_0_0_m1, + coeff_dx_p1_0_m1, + coeff_dx_m1_p1_m1, + coeff_dx_0_p1_m1, + coeff_dx_p1_p1_m1, + coeff_dx_m1_m1_0, + coeff_dx_0_m1_0, + coeff_dx_p1_m1_0, + coeff_dx_m1_0_0, + coeff_dx_0_0_0, + coeff_dx_p1_0_0, + coeff_dx_m1_p1_0, + coeff_dx_0_p1_0, + coeff_dx_p1_p1_0, + coeff_dx_m1_m1_p1, + coeff_dx_0_m1_p1, + coeff_dx_p1_m1_p1, + coeff_dx_m1_0_p1, + coeff_dx_0_0_p1, + coeff_dx_p1_0_p1, + coeff_dx_m1_p1_p1, + coeff_dx_0_p1_p1, + coeff_dx_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dx.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dx.store.c new file mode 100644 index 0000000..e6b27e8 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dx.store.c @@ -0,0 +1,27 @@ +COEFF(-1,-1,-1) = factor * coeff_dx_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dx_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dx_p1_m1_m1; +COEFF(-1,0,-1) = factor * coeff_dx_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dx_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dx_p1_0_m1; +COEFF(-1,1,-1) = factor * coeff_dx_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dx_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dx_p1_p1_m1; +COEFF(-1,-1,0) = factor * coeff_dx_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dx_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dx_p1_m1_0; +COEFF(-1,0,0) = factor * coeff_dx_m1_0_0; +COEFF(0,0,0) = factor * coeff_dx_0_0_0; +COEFF(1,0,0) = factor * coeff_dx_p1_0_0; +COEFF(-1,1,0) = factor * coeff_dx_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dx_0_p1_0; +COEFF(1,1,0) = factor * coeff_dx_p1_p1_0; +COEFF(-1,-1,1) = factor * coeff_dx_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dx_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dx_p1_m1_p1; +COEFF(-1,0,1) = factor * coeff_dx_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dx_0_0_p1; +COEFF(1,0,1) = factor * coeff_dx_p1_0_p1; +COEFF(-1,1,1) = factor * coeff_dx_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dx_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dx_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dxx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dxx.dcl.c new file mode 100644 index 0000000..27144ed --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dxx.dcl.c @@ -0,0 +1,27 @@ +fp coeff_dxx_m1_m1_m1, + coeff_dxx_0_m1_m1, + coeff_dxx_p1_m1_m1, + coeff_dxx_m1_0_m1, + coeff_dxx_0_0_m1, + coeff_dxx_p1_0_m1, + coeff_dxx_m1_p1_m1, + coeff_dxx_0_p1_m1, + coeff_dxx_p1_p1_m1, + coeff_dxx_m1_m1_0, + coeff_dxx_0_m1_0, + coeff_dxx_p1_m1_0, + coeff_dxx_m1_0_0, + coeff_dxx_0_0_0, + coeff_dxx_p1_0_0, + coeff_dxx_m1_p1_0, + coeff_dxx_0_p1_0, + coeff_dxx_p1_p1_0, + coeff_dxx_m1_m1_p1, + coeff_dxx_0_m1_p1, + coeff_dxx_p1_m1_p1, + coeff_dxx_m1_0_p1, + coeff_dxx_0_0_p1, + coeff_dxx_p1_0_p1, + coeff_dxx_m1_p1_p1, + coeff_dxx_0_p1_p1, + coeff_dxx_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dxx.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dxx.store.c new file mode 100644 index 0000000..83642b3 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dxx.store.c @@ -0,0 +1,27 @@ +COEFF(-1,-1,-1) = factor * coeff_dxx_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dxx_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dxx_p1_m1_m1; +COEFF(-1,0,-1) = factor * coeff_dxx_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dxx_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dxx_p1_0_m1; +COEFF(-1,1,-1) = factor * coeff_dxx_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dxx_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dxx_p1_p1_m1; +COEFF(-1,-1,0) = factor * coeff_dxx_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dxx_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dxx_p1_m1_0; +COEFF(-1,0,0) = factor * coeff_dxx_m1_0_0; +COEFF(0,0,0) = factor * coeff_dxx_0_0_0; +COEFF(1,0,0) = factor * coeff_dxx_p1_0_0; +COEFF(-1,1,0) = factor * coeff_dxx_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dxx_0_p1_0; +COEFF(1,1,0) = factor * coeff_dxx_p1_p1_0; +COEFF(-1,-1,1) = factor * coeff_dxx_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dxx_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dxx_p1_m1_p1; +COEFF(-1,0,1) = factor * coeff_dxx_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dxx_0_0_p1; +COEFF(1,0,1) = factor * coeff_dxx_p1_0_p1; +COEFF(-1,1,1) = factor * coeff_dxx_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dxx_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dxx_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dxy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dxy.dcl.c new file mode 100644 index 0000000..1707bad --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dxy.dcl.c @@ -0,0 +1,27 @@ +fp coeff_dxy_m1_m1_m1, + coeff_dxy_0_m1_m1, + coeff_dxy_p1_m1_m1, + coeff_dxy_m1_0_m1, + coeff_dxy_0_0_m1, + coeff_dxy_p1_0_m1, + coeff_dxy_m1_p1_m1, + coeff_dxy_0_p1_m1, + coeff_dxy_p1_p1_m1, + coeff_dxy_m1_m1_0, + coeff_dxy_0_m1_0, + coeff_dxy_p1_m1_0, + coeff_dxy_m1_0_0, + coeff_dxy_0_0_0, + coeff_dxy_p1_0_0, + coeff_dxy_m1_p1_0, + coeff_dxy_0_p1_0, + coeff_dxy_p1_p1_0, + coeff_dxy_m1_m1_p1, + coeff_dxy_0_m1_p1, + coeff_dxy_p1_m1_p1, + coeff_dxy_m1_0_p1, + coeff_dxy_0_0_p1, + coeff_dxy_p1_0_p1, + coeff_dxy_m1_p1_p1, + coeff_dxy_0_p1_p1, + coeff_dxy_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dxy.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dxy.store.c new file mode 100644 index 0000000..392d64f --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dxy.store.c @@ -0,0 +1,27 @@ +COEFF(-1,-1,-1) = factor * coeff_dxy_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dxy_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dxy_p1_m1_m1; +COEFF(-1,0,-1) = factor * coeff_dxy_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dxy_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dxy_p1_0_m1; +COEFF(-1,1,-1) = factor * coeff_dxy_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dxy_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dxy_p1_p1_m1; +COEFF(-1,-1,0) = factor * coeff_dxy_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dxy_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dxy_p1_m1_0; +COEFF(-1,0,0) = factor * coeff_dxy_m1_0_0; +COEFF(0,0,0) = factor * coeff_dxy_0_0_0; +COEFF(1,0,0) = factor * coeff_dxy_p1_0_0; +COEFF(-1,1,0) = factor * coeff_dxy_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dxy_0_p1_0; +COEFF(1,1,0) = factor * coeff_dxy_p1_p1_0; +COEFF(-1,-1,1) = factor * coeff_dxy_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dxy_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dxy_p1_m1_p1; +COEFF(-1,0,1) = factor * coeff_dxy_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dxy_0_0_p1; +COEFF(1,0,1) = factor * coeff_dxy_p1_0_p1; +COEFF(-1,1,1) = factor * coeff_dxy_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dxy_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dxy_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dxz.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dxz.dcl.c new file mode 100644 index 0000000..3ce552e --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dxz.dcl.c @@ -0,0 +1,27 @@ +fp coeff_dxz_m1_m1_m1, + coeff_dxz_0_m1_m1, + coeff_dxz_p1_m1_m1, + coeff_dxz_m1_0_m1, + coeff_dxz_0_0_m1, + coeff_dxz_p1_0_m1, + coeff_dxz_m1_p1_m1, + coeff_dxz_0_p1_m1, + coeff_dxz_p1_p1_m1, + coeff_dxz_m1_m1_0, + coeff_dxz_0_m1_0, + coeff_dxz_p1_m1_0, + coeff_dxz_m1_0_0, + coeff_dxz_0_0_0, + coeff_dxz_p1_0_0, + coeff_dxz_m1_p1_0, + coeff_dxz_0_p1_0, + coeff_dxz_p1_p1_0, + coeff_dxz_m1_m1_p1, + coeff_dxz_0_m1_p1, + coeff_dxz_p1_m1_p1, + coeff_dxz_m1_0_p1, + coeff_dxz_0_0_p1, + coeff_dxz_p1_0_p1, + coeff_dxz_m1_p1_p1, + coeff_dxz_0_p1_p1, + coeff_dxz_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dxz.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dxz.store.c new file mode 100644 index 0000000..add5624 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dxz.store.c @@ -0,0 +1,27 @@ +COEFF(-1,-1,-1) = factor * coeff_dxz_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dxz_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dxz_p1_m1_m1; +COEFF(-1,0,-1) = factor * coeff_dxz_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dxz_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dxz_p1_0_m1; +COEFF(-1,1,-1) = factor * coeff_dxz_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dxz_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dxz_p1_p1_m1; +COEFF(-1,-1,0) = factor * coeff_dxz_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dxz_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dxz_p1_m1_0; +COEFF(-1,0,0) = factor * coeff_dxz_m1_0_0; +COEFF(0,0,0) = factor * coeff_dxz_0_0_0; +COEFF(1,0,0) = factor * coeff_dxz_p1_0_0; +COEFF(-1,1,0) = factor * coeff_dxz_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dxz_0_p1_0; +COEFF(1,1,0) = factor * coeff_dxz_p1_p1_0; +COEFF(-1,-1,1) = factor * coeff_dxz_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dxz_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dxz_p1_m1_p1; +COEFF(-1,0,1) = factor * coeff_dxz_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dxz_0_0_p1; +COEFF(1,0,1) = factor * coeff_dxz_p1_0_p1; +COEFF(-1,1,1) = factor * coeff_dxz_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dxz_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dxz_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dy.dcl.c new file mode 100644 index 0000000..5c3f323 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dy.dcl.c @@ -0,0 +1,27 @@ +fp coeff_dy_m1_m1_m1, + coeff_dy_0_m1_m1, + coeff_dy_p1_m1_m1, + coeff_dy_m1_0_m1, + coeff_dy_0_0_m1, + coeff_dy_p1_0_m1, + coeff_dy_m1_p1_m1, + coeff_dy_0_p1_m1, + coeff_dy_p1_p1_m1, + coeff_dy_m1_m1_0, + coeff_dy_0_m1_0, + coeff_dy_p1_m1_0, + coeff_dy_m1_0_0, + coeff_dy_0_0_0, + coeff_dy_p1_0_0, + coeff_dy_m1_p1_0, + coeff_dy_0_p1_0, + coeff_dy_p1_p1_0, + coeff_dy_m1_m1_p1, + coeff_dy_0_m1_p1, + coeff_dy_p1_m1_p1, + coeff_dy_m1_0_p1, + coeff_dy_0_0_p1, + coeff_dy_p1_0_p1, + coeff_dy_m1_p1_p1, + coeff_dy_0_p1_p1, + coeff_dy_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dy.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dy.store.c new file mode 100644 index 0000000..1be220c --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dy.store.c @@ -0,0 +1,27 @@ +COEFF(-1,-1,-1) = factor * coeff_dy_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dy_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dy_p1_m1_m1; +COEFF(-1,0,-1) = factor * coeff_dy_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dy_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dy_p1_0_m1; +COEFF(-1,1,-1) = factor * coeff_dy_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dy_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dy_p1_p1_m1; +COEFF(-1,-1,0) = factor * coeff_dy_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dy_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dy_p1_m1_0; +COEFF(-1,0,0) = factor * coeff_dy_m1_0_0; +COEFF(0,0,0) = factor * coeff_dy_0_0_0; +COEFF(1,0,0) = factor * coeff_dy_p1_0_0; +COEFF(-1,1,0) = factor * coeff_dy_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dy_0_p1_0; +COEFF(1,1,0) = factor * coeff_dy_p1_p1_0; +COEFF(-1,-1,1) = factor * coeff_dy_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dy_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dy_p1_m1_p1; +COEFF(-1,0,1) = factor * coeff_dy_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dy_0_0_p1; +COEFF(1,0,1) = factor * coeff_dy_p1_0_p1; +COEFF(-1,1,1) = factor * coeff_dy_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dy_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dy_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dyy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dyy.dcl.c new file mode 100644 index 0000000..08b14b5 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dyy.dcl.c @@ -0,0 +1,27 @@ +fp coeff_dyy_m1_m1_m1, + coeff_dyy_0_m1_m1, + coeff_dyy_p1_m1_m1, + coeff_dyy_m1_0_m1, + coeff_dyy_0_0_m1, + coeff_dyy_p1_0_m1, + coeff_dyy_m1_p1_m1, + coeff_dyy_0_p1_m1, + coeff_dyy_p1_p1_m1, + coeff_dyy_m1_m1_0, + coeff_dyy_0_m1_0, + coeff_dyy_p1_m1_0, + coeff_dyy_m1_0_0, + coeff_dyy_0_0_0, + coeff_dyy_p1_0_0, + coeff_dyy_m1_p1_0, + coeff_dyy_0_p1_0, + coeff_dyy_p1_p1_0, + coeff_dyy_m1_m1_p1, + coeff_dyy_0_m1_p1, + coeff_dyy_p1_m1_p1, + coeff_dyy_m1_0_p1, + coeff_dyy_0_0_p1, + coeff_dyy_p1_0_p1, + coeff_dyy_m1_p1_p1, + coeff_dyy_0_p1_p1, + coeff_dyy_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dyy.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dyy.store.c new file mode 100644 index 0000000..28fba0b --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dyy.store.c @@ -0,0 +1,27 @@ +COEFF(-1,-1,-1) = factor * coeff_dyy_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dyy_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dyy_p1_m1_m1; +COEFF(-1,0,-1) = factor * coeff_dyy_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dyy_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dyy_p1_0_m1; +COEFF(-1,1,-1) = factor * coeff_dyy_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dyy_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dyy_p1_p1_m1; +COEFF(-1,-1,0) = factor * coeff_dyy_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dyy_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dyy_p1_m1_0; +COEFF(-1,0,0) = factor * coeff_dyy_m1_0_0; +COEFF(0,0,0) = factor * coeff_dyy_0_0_0; +COEFF(1,0,0) = factor * coeff_dyy_p1_0_0; +COEFF(-1,1,0) = factor * coeff_dyy_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dyy_0_p1_0; +COEFF(1,1,0) = factor * coeff_dyy_p1_p1_0; +COEFF(-1,-1,1) = factor * coeff_dyy_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dyy_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dyy_p1_m1_p1; +COEFF(-1,0,1) = factor * coeff_dyy_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dyy_0_0_p1; +COEFF(1,0,1) = factor * coeff_dyy_p1_0_p1; +COEFF(-1,1,1) = factor * coeff_dyy_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dyy_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dyy_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dyz.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dyz.dcl.c new file mode 100644 index 0000000..a3d0575 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dyz.dcl.c @@ -0,0 +1,27 @@ +fp coeff_dyz_m1_m1_m1, + coeff_dyz_0_m1_m1, + coeff_dyz_p1_m1_m1, + coeff_dyz_m1_0_m1, + coeff_dyz_0_0_m1, + coeff_dyz_p1_0_m1, + coeff_dyz_m1_p1_m1, + coeff_dyz_0_p1_m1, + coeff_dyz_p1_p1_m1, + coeff_dyz_m1_m1_0, + coeff_dyz_0_m1_0, + coeff_dyz_p1_m1_0, + coeff_dyz_m1_0_0, + coeff_dyz_0_0_0, + coeff_dyz_p1_0_0, + coeff_dyz_m1_p1_0, + coeff_dyz_0_p1_0, + coeff_dyz_p1_p1_0, + coeff_dyz_m1_m1_p1, + coeff_dyz_0_m1_p1, + coeff_dyz_p1_m1_p1, + coeff_dyz_m1_0_p1, + coeff_dyz_0_0_p1, + coeff_dyz_p1_0_p1, + coeff_dyz_m1_p1_p1, + coeff_dyz_0_p1_p1, + coeff_dyz_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dyz.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dyz.store.c new file mode 100644 index 0000000..5c27ea5 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dyz.store.c @@ -0,0 +1,27 @@ +COEFF(-1,-1,-1) = factor * coeff_dyz_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dyz_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dyz_p1_m1_m1; +COEFF(-1,0,-1) = factor * coeff_dyz_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dyz_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dyz_p1_0_m1; +COEFF(-1,1,-1) = factor * coeff_dyz_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dyz_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dyz_p1_p1_m1; +COEFF(-1,-1,0) = factor * coeff_dyz_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dyz_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dyz_p1_m1_0; +COEFF(-1,0,0) = factor * coeff_dyz_m1_0_0; +COEFF(0,0,0) = factor * coeff_dyz_0_0_0; +COEFF(1,0,0) = factor * coeff_dyz_p1_0_0; +COEFF(-1,1,0) = factor * coeff_dyz_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dyz_0_p1_0; +COEFF(1,1,0) = factor * coeff_dyz_p1_p1_0; +COEFF(-1,-1,1) = factor * coeff_dyz_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dyz_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dyz_p1_m1_p1; +COEFF(-1,0,1) = factor * coeff_dyz_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dyz_0_0_p1; +COEFF(1,0,1) = factor * coeff_dyz_p1_0_p1; +COEFF(-1,1,1) = factor * coeff_dyz_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dyz_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dyz_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dz.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dz.dcl.c new file mode 100644 index 0000000..e9cb0e9 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dz.dcl.c @@ -0,0 +1,27 @@ +fp coeff_dz_m1_m1_m1, + coeff_dz_0_m1_m1, + coeff_dz_p1_m1_m1, + coeff_dz_m1_0_m1, + coeff_dz_0_0_m1, + coeff_dz_p1_0_m1, + coeff_dz_m1_p1_m1, + coeff_dz_0_p1_m1, + coeff_dz_p1_p1_m1, + coeff_dz_m1_m1_0, + coeff_dz_0_m1_0, + coeff_dz_p1_m1_0, + coeff_dz_m1_0_0, + coeff_dz_0_0_0, + coeff_dz_p1_0_0, + coeff_dz_m1_p1_0, + coeff_dz_0_p1_0, + coeff_dz_p1_p1_0, + coeff_dz_m1_m1_p1, + coeff_dz_0_m1_p1, + coeff_dz_p1_m1_p1, + coeff_dz_m1_0_p1, + coeff_dz_0_0_p1, + coeff_dz_p1_0_p1, + coeff_dz_m1_p1_p1, + coeff_dz_0_p1_p1, + coeff_dz_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dz.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dz.store.c new file mode 100644 index 0000000..9024306 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dz.store.c @@ -0,0 +1,27 @@ +COEFF(-1,-1,-1) = factor * coeff_dz_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dz_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dz_p1_m1_m1; +COEFF(-1,0,-1) = factor * coeff_dz_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dz_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dz_p1_0_m1; +COEFF(-1,1,-1) = factor * coeff_dz_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dz_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dz_p1_p1_m1; +COEFF(-1,-1,0) = factor * coeff_dz_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dz_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dz_p1_m1_0; +COEFF(-1,0,0) = factor * coeff_dz_m1_0_0; +COEFF(0,0,0) = factor * coeff_dz_0_0_0; +COEFF(1,0,0) = factor * coeff_dz_p1_0_0; +COEFF(-1,1,0) = factor * coeff_dz_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dz_0_p1_0; +COEFF(1,1,0) = factor * coeff_dz_p1_p1_0; +COEFF(-1,-1,1) = factor * coeff_dz_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dz_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dz_p1_m1_p1; +COEFF(-1,0,1) = factor * coeff_dz_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dz_0_0_p1; +COEFF(1,0,1) = factor * coeff_dz_p1_0_p1; +COEFF(-1,1,1) = factor * coeff_dz_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dz_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dz_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dzz.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dzz.dcl.c new file mode 100644 index 0000000..e87aa91 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dzz.dcl.c @@ -0,0 +1,27 @@ +fp coeff_dzz_m1_m1_m1, + coeff_dzz_0_m1_m1, + coeff_dzz_p1_m1_m1, + coeff_dzz_m1_0_m1, + coeff_dzz_0_0_m1, + coeff_dzz_p1_0_m1, + coeff_dzz_m1_p1_m1, + coeff_dzz_0_p1_m1, + coeff_dzz_p1_p1_m1, + coeff_dzz_m1_m1_0, + coeff_dzz_0_m1_0, + coeff_dzz_p1_m1_0, + coeff_dzz_m1_0_0, + coeff_dzz_0_0_0, + coeff_dzz_p1_0_0, + coeff_dzz_m1_p1_0, + coeff_dzz_0_p1_0, + coeff_dzz_p1_p1_0, + coeff_dzz_m1_m1_p1, + coeff_dzz_0_m1_p1, + coeff_dzz_p1_m1_p1, + coeff_dzz_m1_0_p1, + coeff_dzz_0_0_p1, + coeff_dzz_p1_0_p1, + coeff_dzz_m1_p1_p1, + coeff_dzz_0_p1_p1, + coeff_dzz_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dzz.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dzz.store.c new file mode 100644 index 0000000..3743cb7 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/coeff-dzz.store.c @@ -0,0 +1,27 @@ +COEFF(-1,-1,-1) = factor * coeff_dzz_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dzz_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dzz_p1_m1_m1; +COEFF(-1,0,-1) = factor * coeff_dzz_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dzz_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dzz_p1_0_m1; +COEFF(-1,1,-1) = factor * coeff_dzz_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dzz_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dzz_p1_p1_m1; +COEFF(-1,-1,0) = factor * coeff_dzz_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dzz_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dzz_p1_m1_0; +COEFF(-1,0,0) = factor * coeff_dzz_m1_0_0; +COEFF(0,0,0) = factor * coeff_dzz_0_0_0; +COEFF(1,0,0) = factor * coeff_dzz_p1_0_0; +COEFF(-1,1,0) = factor * coeff_dzz_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dzz_0_p1_0; +COEFF(1,1,0) = factor * coeff_dzz_p1_p1_0; +COEFF(-1,-1,1) = factor * coeff_dzz_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dzz_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dzz_p1_m1_p1; +COEFF(-1,0,1) = factor * coeff_dzz_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dzz_0_0_p1; +COEFF(1,0,1) = factor * coeff_dzz_p1_0_p1; +COEFF(-1,1,1) = factor * coeff_dzz_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dzz_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dzz_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/data-var.assign.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/data-var.assign.c new file mode 100644 index 0000000..7ea5a98 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/data-var.assign.c @@ -0,0 +1,27 @@ +data_m1_m1_m1 = DATA(-1,-1,-1); +data_0_m1_m1 = DATA(0,-1,-1); +data_p1_m1_m1 = DATA(1,-1,-1); +data_m1_0_m1 = DATA(-1,0,-1); +data_0_0_m1 = DATA(0,0,-1); +data_p1_0_m1 = DATA(1,0,-1); +data_m1_p1_m1 = DATA(-1,1,-1); +data_0_p1_m1 = DATA(0,1,-1); +data_p1_p1_m1 = DATA(1,1,-1); +data_m1_m1_0 = DATA(-1,-1,0); +data_0_m1_0 = DATA(0,-1,0); +data_p1_m1_0 = DATA(1,-1,0); +data_m1_0_0 = DATA(-1,0,0); +data_0_0_0 = DATA(0,0,0); +data_p1_0_0 = DATA(1,0,0); +data_m1_p1_0 = DATA(-1,1,0); +data_0_p1_0 = DATA(0,1,0); +data_p1_p1_0 = DATA(1,1,0); +data_m1_m1_p1 = DATA(-1,-1,1); +data_0_m1_p1 = DATA(0,-1,1); +data_p1_m1_p1 = DATA(1,-1,1); +data_m1_0_p1 = DATA(-1,0,1); +data_0_0_p1 = DATA(0,0,1); +data_p1_0_p1 = DATA(1,0,1); +data_m1_p1_p1 = DATA(-1,1,1); +data_0_p1_p1 = DATA(0,1,1); +data_p1_p1_p1 = DATA(1,1,1); diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/data-var.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/data-var.dcl.c new file mode 100644 index 0000000..5128c77 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/data-var.dcl.c @@ -0,0 +1,27 @@ +fp data_m1_m1_m1, + data_0_m1_m1, + data_p1_m1_m1, + data_m1_0_m1, + data_0_0_m1, + data_p1_0_m1, + data_m1_p1_m1, + data_0_p1_m1, + data_p1_p1_m1, + data_m1_m1_0, + data_0_m1_0, + data_p1_m1_0, + data_m1_0_0, + data_0_0_0, + data_p1_0_0, + data_m1_p1_0, + data_0_p1_0, + data_p1_p1_0, + data_m1_m1_p1, + data_0_m1_p1, + data_p1_m1_p1, + data_m1_0_p1, + data_0_0_p1, + data_p1_0_p1, + data_m1_p1_p1, + data_0_p1_p1, + data_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-I.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-I.compute.c new file mode 100644 index 0000000..3a7cac2 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-I.compute.c @@ -0,0 +1,28 @@ +result = + coeff_I_m1_m1_m1*data_m1_m1_m1 + + coeff_I_0_m1_m1*data_0_m1_m1 + + coeff_I_p1_m1_m1*data_p1_m1_m1 + + coeff_I_m1_0_m1*data_m1_0_m1 + + coeff_I_0_0_m1*data_0_0_m1 + + coeff_I_p1_0_m1*data_p1_0_m1 + + coeff_I_m1_p1_m1*data_m1_p1_m1 + + coeff_I_0_p1_m1*data_0_p1_m1 + + coeff_I_p1_p1_m1*data_p1_p1_m1 + + coeff_I_m1_m1_0*data_m1_m1_0 + + coeff_I_0_m1_0*data_0_m1_0 + + coeff_I_p1_m1_0*data_p1_m1_0 + + coeff_I_m1_0_0*data_m1_0_0 + + coeff_I_0_0_0*data_0_0_0 + + coeff_I_p1_0_0*data_p1_0_0 + + coeff_I_m1_p1_0*data_m1_p1_0 + + coeff_I_0_p1_0*data_0_p1_0 + + coeff_I_p1_p1_0*data_p1_p1_0 + + coeff_I_m1_m1_p1*data_m1_m1_p1 + + coeff_I_0_m1_p1*data_0_m1_p1 + + coeff_I_p1_m1_p1*data_p1_m1_p1 + + coeff_I_m1_0_p1*data_m1_0_p1 + + coeff_I_0_0_p1*data_0_0_p1 + + coeff_I_p1_0_p1*data_p1_0_p1 + + coeff_I_m1_p1_p1*data_m1_p1_p1 + + coeff_I_0_p1_p1*data_0_p1_p1 + + coeff_I_p1_p1_p1*data_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dx.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dx.compute.c new file mode 100644 index 0000000..bd53de0 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dx.compute.c @@ -0,0 +1,28 @@ +result = + coeff_dx_m1_m1_m1*data_m1_m1_m1 + + coeff_dx_0_m1_m1*data_0_m1_m1 + + coeff_dx_p1_m1_m1*data_p1_m1_m1 + + coeff_dx_m1_0_m1*data_m1_0_m1 + + coeff_dx_0_0_m1*data_0_0_m1 + + coeff_dx_p1_0_m1*data_p1_0_m1 + + coeff_dx_m1_p1_m1*data_m1_p1_m1 + + coeff_dx_0_p1_m1*data_0_p1_m1 + + coeff_dx_p1_p1_m1*data_p1_p1_m1 + + coeff_dx_m1_m1_0*data_m1_m1_0 + + coeff_dx_0_m1_0*data_0_m1_0 + + coeff_dx_p1_m1_0*data_p1_m1_0 + + coeff_dx_m1_0_0*data_m1_0_0 + + coeff_dx_0_0_0*data_0_0_0 + + coeff_dx_p1_0_0*data_p1_0_0 + + coeff_dx_m1_p1_0*data_m1_p1_0 + + coeff_dx_0_p1_0*data_0_p1_0 + + coeff_dx_p1_p1_0*data_p1_p1_0 + + coeff_dx_m1_m1_p1*data_m1_m1_p1 + + coeff_dx_0_m1_p1*data_0_m1_p1 + + coeff_dx_p1_m1_p1*data_p1_m1_p1 + + coeff_dx_m1_0_p1*data_m1_0_p1 + + coeff_dx_0_0_p1*data_0_0_p1 + + coeff_dx_p1_0_p1*data_p1_0_p1 + + coeff_dx_m1_p1_p1*data_m1_p1_p1 + + coeff_dx_0_p1_p1*data_0_p1_p1 + + coeff_dx_p1_p1_p1*data_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dxx.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dxx.compute.c new file mode 100644 index 0000000..5ac4e94 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dxx.compute.c @@ -0,0 +1,28 @@ +result = + coeff_dxx_m1_m1_m1*data_m1_m1_m1 + + coeff_dxx_0_m1_m1*data_0_m1_m1 + + coeff_dxx_p1_m1_m1*data_p1_m1_m1 + + coeff_dxx_m1_0_m1*data_m1_0_m1 + + coeff_dxx_0_0_m1*data_0_0_m1 + + coeff_dxx_p1_0_m1*data_p1_0_m1 + + coeff_dxx_m1_p1_m1*data_m1_p1_m1 + + coeff_dxx_0_p1_m1*data_0_p1_m1 + + coeff_dxx_p1_p1_m1*data_p1_p1_m1 + + coeff_dxx_m1_m1_0*data_m1_m1_0 + + coeff_dxx_0_m1_0*data_0_m1_0 + + coeff_dxx_p1_m1_0*data_p1_m1_0 + + coeff_dxx_m1_0_0*data_m1_0_0 + + coeff_dxx_0_0_0*data_0_0_0 + + coeff_dxx_p1_0_0*data_p1_0_0 + + coeff_dxx_m1_p1_0*data_m1_p1_0 + + coeff_dxx_0_p1_0*data_0_p1_0 + + coeff_dxx_p1_p1_0*data_p1_p1_0 + + coeff_dxx_m1_m1_p1*data_m1_m1_p1 + + coeff_dxx_0_m1_p1*data_0_m1_p1 + + coeff_dxx_p1_m1_p1*data_p1_m1_p1 + + coeff_dxx_m1_0_p1*data_m1_0_p1 + + coeff_dxx_0_0_p1*data_0_0_p1 + + coeff_dxx_p1_0_p1*data_p1_0_p1 + + coeff_dxx_m1_p1_p1*data_m1_p1_p1 + + coeff_dxx_0_p1_p1*data_0_p1_p1 + + coeff_dxx_p1_p1_p1*data_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dxy.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dxy.compute.c new file mode 100644 index 0000000..d951b40 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dxy.compute.c @@ -0,0 +1,28 @@ +result = + coeff_dxy_m1_m1_m1*data_m1_m1_m1 + + coeff_dxy_0_m1_m1*data_0_m1_m1 + + coeff_dxy_p1_m1_m1*data_p1_m1_m1 + + coeff_dxy_m1_0_m1*data_m1_0_m1 + + coeff_dxy_0_0_m1*data_0_0_m1 + + coeff_dxy_p1_0_m1*data_p1_0_m1 + + coeff_dxy_m1_p1_m1*data_m1_p1_m1 + + coeff_dxy_0_p1_m1*data_0_p1_m1 + + coeff_dxy_p1_p1_m1*data_p1_p1_m1 + + coeff_dxy_m1_m1_0*data_m1_m1_0 + + coeff_dxy_0_m1_0*data_0_m1_0 + + coeff_dxy_p1_m1_0*data_p1_m1_0 + + coeff_dxy_m1_0_0*data_m1_0_0 + + coeff_dxy_0_0_0*data_0_0_0 + + coeff_dxy_p1_0_0*data_p1_0_0 + + coeff_dxy_m1_p1_0*data_m1_p1_0 + + coeff_dxy_0_p1_0*data_0_p1_0 + + coeff_dxy_p1_p1_0*data_p1_p1_0 + + coeff_dxy_m1_m1_p1*data_m1_m1_p1 + + coeff_dxy_0_m1_p1*data_0_m1_p1 + + coeff_dxy_p1_m1_p1*data_p1_m1_p1 + + coeff_dxy_m1_0_p1*data_m1_0_p1 + + coeff_dxy_0_0_p1*data_0_0_p1 + + coeff_dxy_p1_0_p1*data_p1_0_p1 + + coeff_dxy_m1_p1_p1*data_m1_p1_p1 + + coeff_dxy_0_p1_p1*data_0_p1_p1 + + coeff_dxy_p1_p1_p1*data_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dxz.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dxz.compute.c new file mode 100644 index 0000000..33e3969 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dxz.compute.c @@ -0,0 +1,28 @@ +result = + coeff_dxz_m1_m1_m1*data_m1_m1_m1 + + coeff_dxz_0_m1_m1*data_0_m1_m1 + + coeff_dxz_p1_m1_m1*data_p1_m1_m1 + + coeff_dxz_m1_0_m1*data_m1_0_m1 + + coeff_dxz_0_0_m1*data_0_0_m1 + + coeff_dxz_p1_0_m1*data_p1_0_m1 + + coeff_dxz_m1_p1_m1*data_m1_p1_m1 + + coeff_dxz_0_p1_m1*data_0_p1_m1 + + coeff_dxz_p1_p1_m1*data_p1_p1_m1 + + coeff_dxz_m1_m1_0*data_m1_m1_0 + + coeff_dxz_0_m1_0*data_0_m1_0 + + coeff_dxz_p1_m1_0*data_p1_m1_0 + + coeff_dxz_m1_0_0*data_m1_0_0 + + coeff_dxz_0_0_0*data_0_0_0 + + coeff_dxz_p1_0_0*data_p1_0_0 + + coeff_dxz_m1_p1_0*data_m1_p1_0 + + coeff_dxz_0_p1_0*data_0_p1_0 + + coeff_dxz_p1_p1_0*data_p1_p1_0 + + coeff_dxz_m1_m1_p1*data_m1_m1_p1 + + coeff_dxz_0_m1_p1*data_0_m1_p1 + + coeff_dxz_p1_m1_p1*data_p1_m1_p1 + + coeff_dxz_m1_0_p1*data_m1_0_p1 + + coeff_dxz_0_0_p1*data_0_0_p1 + + coeff_dxz_p1_0_p1*data_p1_0_p1 + + coeff_dxz_m1_p1_p1*data_m1_p1_p1 + + coeff_dxz_0_p1_p1*data_0_p1_p1 + + coeff_dxz_p1_p1_p1*data_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dy.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dy.compute.c new file mode 100644 index 0000000..59545ac --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dy.compute.c @@ -0,0 +1,28 @@ +result = + coeff_dy_m1_m1_m1*data_m1_m1_m1 + + coeff_dy_0_m1_m1*data_0_m1_m1 + + coeff_dy_p1_m1_m1*data_p1_m1_m1 + + coeff_dy_m1_0_m1*data_m1_0_m1 + + coeff_dy_0_0_m1*data_0_0_m1 + + coeff_dy_p1_0_m1*data_p1_0_m1 + + coeff_dy_m1_p1_m1*data_m1_p1_m1 + + coeff_dy_0_p1_m1*data_0_p1_m1 + + coeff_dy_p1_p1_m1*data_p1_p1_m1 + + coeff_dy_m1_m1_0*data_m1_m1_0 + + coeff_dy_0_m1_0*data_0_m1_0 + + coeff_dy_p1_m1_0*data_p1_m1_0 + + coeff_dy_m1_0_0*data_m1_0_0 + + coeff_dy_0_0_0*data_0_0_0 + + coeff_dy_p1_0_0*data_p1_0_0 + + coeff_dy_m1_p1_0*data_m1_p1_0 + + coeff_dy_0_p1_0*data_0_p1_0 + + coeff_dy_p1_p1_0*data_p1_p1_0 + + coeff_dy_m1_m1_p1*data_m1_m1_p1 + + coeff_dy_0_m1_p1*data_0_m1_p1 + + coeff_dy_p1_m1_p1*data_p1_m1_p1 + + coeff_dy_m1_0_p1*data_m1_0_p1 + + coeff_dy_0_0_p1*data_0_0_p1 + + coeff_dy_p1_0_p1*data_p1_0_p1 + + coeff_dy_m1_p1_p1*data_m1_p1_p1 + + coeff_dy_0_p1_p1*data_0_p1_p1 + + coeff_dy_p1_p1_p1*data_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dyy.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dyy.compute.c new file mode 100644 index 0000000..70ae839 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dyy.compute.c @@ -0,0 +1,28 @@ +result = + coeff_dyy_m1_m1_m1*data_m1_m1_m1 + + coeff_dyy_0_m1_m1*data_0_m1_m1 + + coeff_dyy_p1_m1_m1*data_p1_m1_m1 + + coeff_dyy_m1_0_m1*data_m1_0_m1 + + coeff_dyy_0_0_m1*data_0_0_m1 + + coeff_dyy_p1_0_m1*data_p1_0_m1 + + coeff_dyy_m1_p1_m1*data_m1_p1_m1 + + coeff_dyy_0_p1_m1*data_0_p1_m1 + + coeff_dyy_p1_p1_m1*data_p1_p1_m1 + + coeff_dyy_m1_m1_0*data_m1_m1_0 + + coeff_dyy_0_m1_0*data_0_m1_0 + + coeff_dyy_p1_m1_0*data_p1_m1_0 + + coeff_dyy_m1_0_0*data_m1_0_0 + + coeff_dyy_0_0_0*data_0_0_0 + + coeff_dyy_p1_0_0*data_p1_0_0 + + coeff_dyy_m1_p1_0*data_m1_p1_0 + + coeff_dyy_0_p1_0*data_0_p1_0 + + coeff_dyy_p1_p1_0*data_p1_p1_0 + + coeff_dyy_m1_m1_p1*data_m1_m1_p1 + + coeff_dyy_0_m1_p1*data_0_m1_p1 + + coeff_dyy_p1_m1_p1*data_p1_m1_p1 + + coeff_dyy_m1_0_p1*data_m1_0_p1 + + coeff_dyy_0_0_p1*data_0_0_p1 + + coeff_dyy_p1_0_p1*data_p1_0_p1 + + coeff_dyy_m1_p1_p1*data_m1_p1_p1 + + coeff_dyy_0_p1_p1*data_0_p1_p1 + + coeff_dyy_p1_p1_p1*data_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dyz.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dyz.compute.c new file mode 100644 index 0000000..87ba939 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dyz.compute.c @@ -0,0 +1,28 @@ +result = + coeff_dyz_m1_m1_m1*data_m1_m1_m1 + + coeff_dyz_0_m1_m1*data_0_m1_m1 + + coeff_dyz_p1_m1_m1*data_p1_m1_m1 + + coeff_dyz_m1_0_m1*data_m1_0_m1 + + coeff_dyz_0_0_m1*data_0_0_m1 + + coeff_dyz_p1_0_m1*data_p1_0_m1 + + coeff_dyz_m1_p1_m1*data_m1_p1_m1 + + coeff_dyz_0_p1_m1*data_0_p1_m1 + + coeff_dyz_p1_p1_m1*data_p1_p1_m1 + + coeff_dyz_m1_m1_0*data_m1_m1_0 + + coeff_dyz_0_m1_0*data_0_m1_0 + + coeff_dyz_p1_m1_0*data_p1_m1_0 + + coeff_dyz_m1_0_0*data_m1_0_0 + + coeff_dyz_0_0_0*data_0_0_0 + + coeff_dyz_p1_0_0*data_p1_0_0 + + coeff_dyz_m1_p1_0*data_m1_p1_0 + + coeff_dyz_0_p1_0*data_0_p1_0 + + coeff_dyz_p1_p1_0*data_p1_p1_0 + + coeff_dyz_m1_m1_p1*data_m1_m1_p1 + + coeff_dyz_0_m1_p1*data_0_m1_p1 + + coeff_dyz_p1_m1_p1*data_p1_m1_p1 + + coeff_dyz_m1_0_p1*data_m1_0_p1 + + coeff_dyz_0_0_p1*data_0_0_p1 + + coeff_dyz_p1_0_p1*data_p1_0_p1 + + coeff_dyz_m1_p1_p1*data_m1_p1_p1 + + coeff_dyz_0_p1_p1*data_0_p1_p1 + + coeff_dyz_p1_p1_p1*data_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dz.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dz.compute.c new file mode 100644 index 0000000..cd02ac9 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dz.compute.c @@ -0,0 +1,28 @@ +result = + coeff_dz_m1_m1_m1*data_m1_m1_m1 + + coeff_dz_0_m1_m1*data_0_m1_m1 + + coeff_dz_p1_m1_m1*data_p1_m1_m1 + + coeff_dz_m1_0_m1*data_m1_0_m1 + + coeff_dz_0_0_m1*data_0_0_m1 + + coeff_dz_p1_0_m1*data_p1_0_m1 + + coeff_dz_m1_p1_m1*data_m1_p1_m1 + + coeff_dz_0_p1_m1*data_0_p1_m1 + + coeff_dz_p1_p1_m1*data_p1_p1_m1 + + coeff_dz_m1_m1_0*data_m1_m1_0 + + coeff_dz_0_m1_0*data_0_m1_0 + + coeff_dz_p1_m1_0*data_p1_m1_0 + + coeff_dz_m1_0_0*data_m1_0_0 + + coeff_dz_0_0_0*data_0_0_0 + + coeff_dz_p1_0_0*data_p1_0_0 + + coeff_dz_m1_p1_0*data_m1_p1_0 + + coeff_dz_0_p1_0*data_0_p1_0 + + coeff_dz_p1_p1_0*data_p1_p1_0 + + coeff_dz_m1_m1_p1*data_m1_m1_p1 + + coeff_dz_0_m1_p1*data_0_m1_p1 + + coeff_dz_p1_m1_p1*data_p1_m1_p1 + + coeff_dz_m1_0_p1*data_m1_0_p1 + + coeff_dz_0_0_p1*data_0_0_p1 + + coeff_dz_p1_0_p1*data_p1_0_p1 + + coeff_dz_m1_p1_p1*data_m1_p1_p1 + + coeff_dz_0_p1_p1*data_0_p1_p1 + + coeff_dz_p1_p1_p1*data_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dzz.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dzz.compute.c new file mode 100644 index 0000000..4593efa --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size3/interp-dzz.compute.c @@ -0,0 +1,28 @@ +result = + coeff_dzz_m1_m1_m1*data_m1_m1_m1 + + coeff_dzz_0_m1_m1*data_0_m1_m1 + + coeff_dzz_p1_m1_m1*data_p1_m1_m1 + + coeff_dzz_m1_0_m1*data_m1_0_m1 + + coeff_dzz_0_0_m1*data_0_0_m1 + + coeff_dzz_p1_0_m1*data_p1_0_m1 + + coeff_dzz_m1_p1_m1*data_m1_p1_m1 + + coeff_dzz_0_p1_m1*data_0_p1_m1 + + coeff_dzz_p1_p1_m1*data_p1_p1_m1 + + coeff_dzz_m1_m1_0*data_m1_m1_0 + + coeff_dzz_0_m1_0*data_0_m1_0 + + coeff_dzz_p1_m1_0*data_p1_m1_0 + + coeff_dzz_m1_0_0*data_m1_0_0 + + coeff_dzz_0_0_0*data_0_0_0 + + coeff_dzz_p1_0_0*data_p1_0_0 + + coeff_dzz_m1_p1_0*data_m1_p1_0 + + coeff_dzz_0_p1_0*data_0_p1_0 + + coeff_dzz_p1_p1_0*data_p1_p1_0 + + coeff_dzz_m1_m1_p1*data_m1_m1_p1 + + coeff_dzz_0_m1_p1*data_0_m1_p1 + + coeff_dzz_p1_m1_p1*data_p1_m1_p1 + + coeff_dzz_m1_0_p1*data_m1_0_p1 + + coeff_dzz_0_0_p1*data_0_0_p1 + + coeff_dzz_p1_0_p1*data_p1_0_p1 + + coeff_dzz_m1_p1_p1*data_m1_p1_p1 + + coeff_dzz_0_p1_p1*data_0_p1_p1 + + coeff_dzz_p1_p1_p1*data_p1_p1_p1; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-I.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-I.dcl.c new file mode 100644 index 0000000..aed4eb3 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-I.dcl.c @@ -0,0 +1,64 @@ +fp coeff_I_m1_m1_m1, + coeff_I_0_m1_m1, + coeff_I_p1_m1_m1, + coeff_I_p2_m1_m1, + coeff_I_m1_0_m1, + coeff_I_0_0_m1, + coeff_I_p1_0_m1, + coeff_I_p2_0_m1, + coeff_I_m1_p1_m1, + coeff_I_0_p1_m1, + coeff_I_p1_p1_m1, + coeff_I_p2_p1_m1, + coeff_I_m1_p2_m1, + coeff_I_0_p2_m1, + coeff_I_p1_p2_m1, + coeff_I_p2_p2_m1, + coeff_I_m1_m1_0, + coeff_I_0_m1_0, + coeff_I_p1_m1_0, + coeff_I_p2_m1_0, + coeff_I_m1_0_0, + coeff_I_0_0_0, + coeff_I_p1_0_0, + coeff_I_p2_0_0, + coeff_I_m1_p1_0, + coeff_I_0_p1_0, + coeff_I_p1_p1_0, + coeff_I_p2_p1_0, + coeff_I_m1_p2_0, + coeff_I_0_p2_0, + coeff_I_p1_p2_0, + coeff_I_p2_p2_0, + coeff_I_m1_m1_p1, + coeff_I_0_m1_p1, + coeff_I_p1_m1_p1, + coeff_I_p2_m1_p1, + coeff_I_m1_0_p1, + coeff_I_0_0_p1, + coeff_I_p1_0_p1, + coeff_I_p2_0_p1, + coeff_I_m1_p1_p1, + coeff_I_0_p1_p1, + coeff_I_p1_p1_p1, + coeff_I_p2_p1_p1, + coeff_I_m1_p2_p1, + coeff_I_0_p2_p1, + coeff_I_p1_p2_p1, + coeff_I_p2_p2_p1, + coeff_I_m1_m1_p2, + coeff_I_0_m1_p2, + coeff_I_p1_m1_p2, + coeff_I_p2_m1_p2, + coeff_I_m1_0_p2, + coeff_I_0_0_p2, + coeff_I_p1_0_p2, + coeff_I_p2_0_p2, + coeff_I_m1_p1_p2, + coeff_I_0_p1_p2, + coeff_I_p1_p1_p2, + coeff_I_p2_p1_p2, + coeff_I_m1_p2_p2, + coeff_I_0_p2_p2, + coeff_I_p1_p2_p2, + coeff_I_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-I.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-I.store.c new file mode 100644 index 0000000..83c5b05 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-I.store.c @@ -0,0 +1,64 @@ +COEFF(-1,-1,-1) = coeff_I_m1_m1_m1; +COEFF(0,-1,-1) = coeff_I_0_m1_m1; +COEFF(1,-1,-1) = coeff_I_p1_m1_m1; +COEFF(2,-1,-1) = coeff_I_p2_m1_m1; +COEFF(-1,0,-1) = coeff_I_m1_0_m1; +COEFF(0,0,-1) = coeff_I_0_0_m1; +COEFF(1,0,-1) = coeff_I_p1_0_m1; +COEFF(2,0,-1) = coeff_I_p2_0_m1; +COEFF(-1,1,-1) = coeff_I_m1_p1_m1; +COEFF(0,1,-1) = coeff_I_0_p1_m1; +COEFF(1,1,-1) = coeff_I_p1_p1_m1; +COEFF(2,1,-1) = coeff_I_p2_p1_m1; +COEFF(-1,2,-1) = coeff_I_m1_p2_m1; +COEFF(0,2,-1) = coeff_I_0_p2_m1; +COEFF(1,2,-1) = coeff_I_p1_p2_m1; +COEFF(2,2,-1) = coeff_I_p2_p2_m1; +COEFF(-1,-1,0) = coeff_I_m1_m1_0; +COEFF(0,-1,0) = coeff_I_0_m1_0; +COEFF(1,-1,0) = coeff_I_p1_m1_0; +COEFF(2,-1,0) = coeff_I_p2_m1_0; +COEFF(-1,0,0) = coeff_I_m1_0_0; +COEFF(0,0,0) = coeff_I_0_0_0; +COEFF(1,0,0) = coeff_I_p1_0_0; +COEFF(2,0,0) = coeff_I_p2_0_0; +COEFF(-1,1,0) = coeff_I_m1_p1_0; +COEFF(0,1,0) = coeff_I_0_p1_0; +COEFF(1,1,0) = coeff_I_p1_p1_0; +COEFF(2,1,0) = coeff_I_p2_p1_0; +COEFF(-1,2,0) = coeff_I_m1_p2_0; +COEFF(0,2,0) = coeff_I_0_p2_0; +COEFF(1,2,0) = coeff_I_p1_p2_0; +COEFF(2,2,0) = coeff_I_p2_p2_0; +COEFF(-1,-1,1) = coeff_I_m1_m1_p1; +COEFF(0,-1,1) = coeff_I_0_m1_p1; +COEFF(1,-1,1) = coeff_I_p1_m1_p1; +COEFF(2,-1,1) = coeff_I_p2_m1_p1; +COEFF(-1,0,1) = coeff_I_m1_0_p1; +COEFF(0,0,1) = coeff_I_0_0_p1; +COEFF(1,0,1) = coeff_I_p1_0_p1; +COEFF(2,0,1) = coeff_I_p2_0_p1; +COEFF(-1,1,1) = coeff_I_m1_p1_p1; +COEFF(0,1,1) = coeff_I_0_p1_p1; +COEFF(1,1,1) = coeff_I_p1_p1_p1; +COEFF(2,1,1) = coeff_I_p2_p1_p1; +COEFF(-1,2,1) = coeff_I_m1_p2_p1; +COEFF(0,2,1) = coeff_I_0_p2_p1; +COEFF(1,2,1) = coeff_I_p1_p2_p1; +COEFF(2,2,1) = coeff_I_p2_p2_p1; +COEFF(-1,-1,2) = coeff_I_m1_m1_p2; +COEFF(0,-1,2) = coeff_I_0_m1_p2; +COEFF(1,-1,2) = coeff_I_p1_m1_p2; +COEFF(2,-1,2) = coeff_I_p2_m1_p2; +COEFF(-1,0,2) = coeff_I_m1_0_p2; +COEFF(0,0,2) = coeff_I_0_0_p2; +COEFF(1,0,2) = coeff_I_p1_0_p2; +COEFF(2,0,2) = coeff_I_p2_0_p2; +COEFF(-1,1,2) = coeff_I_m1_p1_p2; +COEFF(0,1,2) = coeff_I_0_p1_p2; +COEFF(1,1,2) = coeff_I_p1_p1_p2; +COEFF(2,1,2) = coeff_I_p2_p1_p2; +COEFF(-1,2,2) = coeff_I_m1_p2_p2; +COEFF(0,2,2) = coeff_I_0_p2_p2; +COEFF(1,2,2) = coeff_I_p1_p2_p2; +COEFF(2,2,2) = coeff_I_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dx.dcl.c new file mode 100644 index 0000000..2afb4a1 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dx.dcl.c @@ -0,0 +1,64 @@ +fp coeff_dx_m1_m1_m1, + coeff_dx_0_m1_m1, + coeff_dx_p1_m1_m1, + coeff_dx_p2_m1_m1, + coeff_dx_m1_0_m1, + coeff_dx_0_0_m1, + coeff_dx_p1_0_m1, + coeff_dx_p2_0_m1, + coeff_dx_m1_p1_m1, + coeff_dx_0_p1_m1, + coeff_dx_p1_p1_m1, + coeff_dx_p2_p1_m1, + coeff_dx_m1_p2_m1, + coeff_dx_0_p2_m1, + coeff_dx_p1_p2_m1, + coeff_dx_p2_p2_m1, + coeff_dx_m1_m1_0, + coeff_dx_0_m1_0, + coeff_dx_p1_m1_0, + coeff_dx_p2_m1_0, + coeff_dx_m1_0_0, + coeff_dx_0_0_0, + coeff_dx_p1_0_0, + coeff_dx_p2_0_0, + coeff_dx_m1_p1_0, + coeff_dx_0_p1_0, + coeff_dx_p1_p1_0, + coeff_dx_p2_p1_0, + coeff_dx_m1_p2_0, + coeff_dx_0_p2_0, + coeff_dx_p1_p2_0, + coeff_dx_p2_p2_0, + coeff_dx_m1_m1_p1, + coeff_dx_0_m1_p1, + coeff_dx_p1_m1_p1, + coeff_dx_p2_m1_p1, + coeff_dx_m1_0_p1, + coeff_dx_0_0_p1, + coeff_dx_p1_0_p1, + coeff_dx_p2_0_p1, + coeff_dx_m1_p1_p1, + coeff_dx_0_p1_p1, + coeff_dx_p1_p1_p1, + coeff_dx_p2_p1_p1, + coeff_dx_m1_p2_p1, + coeff_dx_0_p2_p1, + coeff_dx_p1_p2_p1, + coeff_dx_p2_p2_p1, + coeff_dx_m1_m1_p2, + coeff_dx_0_m1_p2, + coeff_dx_p1_m1_p2, + coeff_dx_p2_m1_p2, + coeff_dx_m1_0_p2, + coeff_dx_0_0_p2, + coeff_dx_p1_0_p2, + coeff_dx_p2_0_p2, + coeff_dx_m1_p1_p2, + coeff_dx_0_p1_p2, + coeff_dx_p1_p1_p2, + coeff_dx_p2_p1_p2, + coeff_dx_m1_p2_p2, + coeff_dx_0_p2_p2, + coeff_dx_p1_p2_p2, + coeff_dx_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dx.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dx.store.c new file mode 100644 index 0000000..6e0bfe6 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dx.store.c @@ -0,0 +1,64 @@ +COEFF(-1,-1,-1) = factor * coeff_dx_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dx_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dx_p1_m1_m1; +COEFF(2,-1,-1) = factor * coeff_dx_p2_m1_m1; +COEFF(-1,0,-1) = factor * coeff_dx_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dx_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dx_p1_0_m1; +COEFF(2,0,-1) = factor * coeff_dx_p2_0_m1; +COEFF(-1,1,-1) = factor * coeff_dx_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dx_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dx_p1_p1_m1; +COEFF(2,1,-1) = factor * coeff_dx_p2_p1_m1; +COEFF(-1,2,-1) = factor * coeff_dx_m1_p2_m1; +COEFF(0,2,-1) = factor * coeff_dx_0_p2_m1; +COEFF(1,2,-1) = factor * coeff_dx_p1_p2_m1; +COEFF(2,2,-1) = factor * coeff_dx_p2_p2_m1; +COEFF(-1,-1,0) = factor * coeff_dx_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dx_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dx_p1_m1_0; +COEFF(2,-1,0) = factor * coeff_dx_p2_m1_0; +COEFF(-1,0,0) = factor * coeff_dx_m1_0_0; +COEFF(0,0,0) = factor * coeff_dx_0_0_0; +COEFF(1,0,0) = factor * coeff_dx_p1_0_0; +COEFF(2,0,0) = factor * coeff_dx_p2_0_0; +COEFF(-1,1,0) = factor * coeff_dx_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dx_0_p1_0; +COEFF(1,1,0) = factor * coeff_dx_p1_p1_0; +COEFF(2,1,0) = factor * coeff_dx_p2_p1_0; +COEFF(-1,2,0) = factor * coeff_dx_m1_p2_0; +COEFF(0,2,0) = factor * coeff_dx_0_p2_0; +COEFF(1,2,0) = factor * coeff_dx_p1_p2_0; +COEFF(2,2,0) = factor * coeff_dx_p2_p2_0; +COEFF(-1,-1,1) = factor * coeff_dx_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dx_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dx_p1_m1_p1; +COEFF(2,-1,1) = factor * coeff_dx_p2_m1_p1; +COEFF(-1,0,1) = factor * coeff_dx_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dx_0_0_p1; +COEFF(1,0,1) = factor * coeff_dx_p1_0_p1; +COEFF(2,0,1) = factor * coeff_dx_p2_0_p1; +COEFF(-1,1,1) = factor * coeff_dx_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dx_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dx_p1_p1_p1; +COEFF(2,1,1) = factor * coeff_dx_p2_p1_p1; +COEFF(-1,2,1) = factor * coeff_dx_m1_p2_p1; +COEFF(0,2,1) = factor * coeff_dx_0_p2_p1; +COEFF(1,2,1) = factor * coeff_dx_p1_p2_p1; +COEFF(2,2,1) = factor * coeff_dx_p2_p2_p1; +COEFF(-1,-1,2) = factor * coeff_dx_m1_m1_p2; +COEFF(0,-1,2) = factor * coeff_dx_0_m1_p2; +COEFF(1,-1,2) = factor * coeff_dx_p1_m1_p2; +COEFF(2,-1,2) = factor * coeff_dx_p2_m1_p2; +COEFF(-1,0,2) = factor * coeff_dx_m1_0_p2; +COEFF(0,0,2) = factor * coeff_dx_0_0_p2; +COEFF(1,0,2) = factor * coeff_dx_p1_0_p2; +COEFF(2,0,2) = factor * coeff_dx_p2_0_p2; +COEFF(-1,1,2) = factor * coeff_dx_m1_p1_p2; +COEFF(0,1,2) = factor * coeff_dx_0_p1_p2; +COEFF(1,1,2) = factor * coeff_dx_p1_p1_p2; +COEFF(2,1,2) = factor * coeff_dx_p2_p1_p2; +COEFF(-1,2,2) = factor * coeff_dx_m1_p2_p2; +COEFF(0,2,2) = factor * coeff_dx_0_p2_p2; +COEFF(1,2,2) = factor * coeff_dx_p1_p2_p2; +COEFF(2,2,2) = factor * coeff_dx_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dxx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dxx.dcl.c new file mode 100644 index 0000000..7ccdd97 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dxx.dcl.c @@ -0,0 +1,64 @@ +fp coeff_dxx_m1_m1_m1, + coeff_dxx_0_m1_m1, + coeff_dxx_p1_m1_m1, + coeff_dxx_p2_m1_m1, + coeff_dxx_m1_0_m1, + coeff_dxx_0_0_m1, + coeff_dxx_p1_0_m1, + coeff_dxx_p2_0_m1, + coeff_dxx_m1_p1_m1, + coeff_dxx_0_p1_m1, + coeff_dxx_p1_p1_m1, + coeff_dxx_p2_p1_m1, + coeff_dxx_m1_p2_m1, + coeff_dxx_0_p2_m1, + coeff_dxx_p1_p2_m1, + coeff_dxx_p2_p2_m1, + coeff_dxx_m1_m1_0, + coeff_dxx_0_m1_0, + coeff_dxx_p1_m1_0, + coeff_dxx_p2_m1_0, + coeff_dxx_m1_0_0, + coeff_dxx_0_0_0, + coeff_dxx_p1_0_0, + coeff_dxx_p2_0_0, + coeff_dxx_m1_p1_0, + coeff_dxx_0_p1_0, + coeff_dxx_p1_p1_0, + coeff_dxx_p2_p1_0, + coeff_dxx_m1_p2_0, + coeff_dxx_0_p2_0, + coeff_dxx_p1_p2_0, + coeff_dxx_p2_p2_0, + coeff_dxx_m1_m1_p1, + coeff_dxx_0_m1_p1, + coeff_dxx_p1_m1_p1, + coeff_dxx_p2_m1_p1, + coeff_dxx_m1_0_p1, + coeff_dxx_0_0_p1, + coeff_dxx_p1_0_p1, + coeff_dxx_p2_0_p1, + coeff_dxx_m1_p1_p1, + coeff_dxx_0_p1_p1, + coeff_dxx_p1_p1_p1, + coeff_dxx_p2_p1_p1, + coeff_dxx_m1_p2_p1, + coeff_dxx_0_p2_p1, + coeff_dxx_p1_p2_p1, + coeff_dxx_p2_p2_p1, + coeff_dxx_m1_m1_p2, + coeff_dxx_0_m1_p2, + coeff_dxx_p1_m1_p2, + coeff_dxx_p2_m1_p2, + coeff_dxx_m1_0_p2, + coeff_dxx_0_0_p2, + coeff_dxx_p1_0_p2, + coeff_dxx_p2_0_p2, + coeff_dxx_m1_p1_p2, + coeff_dxx_0_p1_p2, + coeff_dxx_p1_p1_p2, + coeff_dxx_p2_p1_p2, + coeff_dxx_m1_p2_p2, + coeff_dxx_0_p2_p2, + coeff_dxx_p1_p2_p2, + coeff_dxx_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dxx.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dxx.store.c new file mode 100644 index 0000000..a41b6f1 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dxx.store.c @@ -0,0 +1,64 @@ +COEFF(-1,-1,-1) = factor * coeff_dxx_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dxx_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dxx_p1_m1_m1; +COEFF(2,-1,-1) = factor * coeff_dxx_p2_m1_m1; +COEFF(-1,0,-1) = factor * coeff_dxx_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dxx_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dxx_p1_0_m1; +COEFF(2,0,-1) = factor * coeff_dxx_p2_0_m1; +COEFF(-1,1,-1) = factor * coeff_dxx_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dxx_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dxx_p1_p1_m1; +COEFF(2,1,-1) = factor * coeff_dxx_p2_p1_m1; +COEFF(-1,2,-1) = factor * coeff_dxx_m1_p2_m1; +COEFF(0,2,-1) = factor * coeff_dxx_0_p2_m1; +COEFF(1,2,-1) = factor * coeff_dxx_p1_p2_m1; +COEFF(2,2,-1) = factor * coeff_dxx_p2_p2_m1; +COEFF(-1,-1,0) = factor * coeff_dxx_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dxx_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dxx_p1_m1_0; +COEFF(2,-1,0) = factor * coeff_dxx_p2_m1_0; +COEFF(-1,0,0) = factor * coeff_dxx_m1_0_0; +COEFF(0,0,0) = factor * coeff_dxx_0_0_0; +COEFF(1,0,0) = factor * coeff_dxx_p1_0_0; +COEFF(2,0,0) = factor * coeff_dxx_p2_0_0; +COEFF(-1,1,0) = factor * coeff_dxx_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dxx_0_p1_0; +COEFF(1,1,0) = factor * coeff_dxx_p1_p1_0; +COEFF(2,1,0) = factor * coeff_dxx_p2_p1_0; +COEFF(-1,2,0) = factor * coeff_dxx_m1_p2_0; +COEFF(0,2,0) = factor * coeff_dxx_0_p2_0; +COEFF(1,2,0) = factor * coeff_dxx_p1_p2_0; +COEFF(2,2,0) = factor * coeff_dxx_p2_p2_0; +COEFF(-1,-1,1) = factor * coeff_dxx_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dxx_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dxx_p1_m1_p1; +COEFF(2,-1,1) = factor * coeff_dxx_p2_m1_p1; +COEFF(-1,0,1) = factor * coeff_dxx_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dxx_0_0_p1; +COEFF(1,0,1) = factor * coeff_dxx_p1_0_p1; +COEFF(2,0,1) = factor * coeff_dxx_p2_0_p1; +COEFF(-1,1,1) = factor * coeff_dxx_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dxx_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dxx_p1_p1_p1; +COEFF(2,1,1) = factor * coeff_dxx_p2_p1_p1; +COEFF(-1,2,1) = factor * coeff_dxx_m1_p2_p1; +COEFF(0,2,1) = factor * coeff_dxx_0_p2_p1; +COEFF(1,2,1) = factor * coeff_dxx_p1_p2_p1; +COEFF(2,2,1) = factor * coeff_dxx_p2_p2_p1; +COEFF(-1,-1,2) = factor * coeff_dxx_m1_m1_p2; +COEFF(0,-1,2) = factor * coeff_dxx_0_m1_p2; +COEFF(1,-1,2) = factor * coeff_dxx_p1_m1_p2; +COEFF(2,-1,2) = factor * coeff_dxx_p2_m1_p2; +COEFF(-1,0,2) = factor * coeff_dxx_m1_0_p2; +COEFF(0,0,2) = factor * coeff_dxx_0_0_p2; +COEFF(1,0,2) = factor * coeff_dxx_p1_0_p2; +COEFF(2,0,2) = factor * coeff_dxx_p2_0_p2; +COEFF(-1,1,2) = factor * coeff_dxx_m1_p1_p2; +COEFF(0,1,2) = factor * coeff_dxx_0_p1_p2; +COEFF(1,1,2) = factor * coeff_dxx_p1_p1_p2; +COEFF(2,1,2) = factor * coeff_dxx_p2_p1_p2; +COEFF(-1,2,2) = factor * coeff_dxx_m1_p2_p2; +COEFF(0,2,2) = factor * coeff_dxx_0_p2_p2; +COEFF(1,2,2) = factor * coeff_dxx_p1_p2_p2; +COEFF(2,2,2) = factor * coeff_dxx_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dxy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dxy.dcl.c new file mode 100644 index 0000000..72e7a3e --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dxy.dcl.c @@ -0,0 +1,64 @@ +fp coeff_dxy_m1_m1_m1, + coeff_dxy_0_m1_m1, + coeff_dxy_p1_m1_m1, + coeff_dxy_p2_m1_m1, + coeff_dxy_m1_0_m1, + coeff_dxy_0_0_m1, + coeff_dxy_p1_0_m1, + coeff_dxy_p2_0_m1, + coeff_dxy_m1_p1_m1, + coeff_dxy_0_p1_m1, + coeff_dxy_p1_p1_m1, + coeff_dxy_p2_p1_m1, + coeff_dxy_m1_p2_m1, + coeff_dxy_0_p2_m1, + coeff_dxy_p1_p2_m1, + coeff_dxy_p2_p2_m1, + coeff_dxy_m1_m1_0, + coeff_dxy_0_m1_0, + coeff_dxy_p1_m1_0, + coeff_dxy_p2_m1_0, + coeff_dxy_m1_0_0, + coeff_dxy_0_0_0, + coeff_dxy_p1_0_0, + coeff_dxy_p2_0_0, + coeff_dxy_m1_p1_0, + coeff_dxy_0_p1_0, + coeff_dxy_p1_p1_0, + coeff_dxy_p2_p1_0, + coeff_dxy_m1_p2_0, + coeff_dxy_0_p2_0, + coeff_dxy_p1_p2_0, + coeff_dxy_p2_p2_0, + coeff_dxy_m1_m1_p1, + coeff_dxy_0_m1_p1, + coeff_dxy_p1_m1_p1, + coeff_dxy_p2_m1_p1, + coeff_dxy_m1_0_p1, + coeff_dxy_0_0_p1, + coeff_dxy_p1_0_p1, + coeff_dxy_p2_0_p1, + coeff_dxy_m1_p1_p1, + coeff_dxy_0_p1_p1, + coeff_dxy_p1_p1_p1, + coeff_dxy_p2_p1_p1, + coeff_dxy_m1_p2_p1, + coeff_dxy_0_p2_p1, + coeff_dxy_p1_p2_p1, + coeff_dxy_p2_p2_p1, + coeff_dxy_m1_m1_p2, + coeff_dxy_0_m1_p2, + coeff_dxy_p1_m1_p2, + coeff_dxy_p2_m1_p2, + coeff_dxy_m1_0_p2, + coeff_dxy_0_0_p2, + coeff_dxy_p1_0_p2, + coeff_dxy_p2_0_p2, + coeff_dxy_m1_p1_p2, + coeff_dxy_0_p1_p2, + coeff_dxy_p1_p1_p2, + coeff_dxy_p2_p1_p2, + coeff_dxy_m1_p2_p2, + coeff_dxy_0_p2_p2, + coeff_dxy_p1_p2_p2, + coeff_dxy_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dxy.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dxy.store.c new file mode 100644 index 0000000..3882463 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dxy.store.c @@ -0,0 +1,64 @@ +COEFF(-1,-1,-1) = factor * coeff_dxy_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dxy_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dxy_p1_m1_m1; +COEFF(2,-1,-1) = factor * coeff_dxy_p2_m1_m1; +COEFF(-1,0,-1) = factor * coeff_dxy_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dxy_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dxy_p1_0_m1; +COEFF(2,0,-1) = factor * coeff_dxy_p2_0_m1; +COEFF(-1,1,-1) = factor * coeff_dxy_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dxy_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dxy_p1_p1_m1; +COEFF(2,1,-1) = factor * coeff_dxy_p2_p1_m1; +COEFF(-1,2,-1) = factor * coeff_dxy_m1_p2_m1; +COEFF(0,2,-1) = factor * coeff_dxy_0_p2_m1; +COEFF(1,2,-1) = factor * coeff_dxy_p1_p2_m1; +COEFF(2,2,-1) = factor * coeff_dxy_p2_p2_m1; +COEFF(-1,-1,0) = factor * coeff_dxy_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dxy_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dxy_p1_m1_0; +COEFF(2,-1,0) = factor * coeff_dxy_p2_m1_0; +COEFF(-1,0,0) = factor * coeff_dxy_m1_0_0; +COEFF(0,0,0) = factor * coeff_dxy_0_0_0; +COEFF(1,0,0) = factor * coeff_dxy_p1_0_0; +COEFF(2,0,0) = factor * coeff_dxy_p2_0_0; +COEFF(-1,1,0) = factor * coeff_dxy_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dxy_0_p1_0; +COEFF(1,1,0) = factor * coeff_dxy_p1_p1_0; +COEFF(2,1,0) = factor * coeff_dxy_p2_p1_0; +COEFF(-1,2,0) = factor * coeff_dxy_m1_p2_0; +COEFF(0,2,0) = factor * coeff_dxy_0_p2_0; +COEFF(1,2,0) = factor * coeff_dxy_p1_p2_0; +COEFF(2,2,0) = factor * coeff_dxy_p2_p2_0; +COEFF(-1,-1,1) = factor * coeff_dxy_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dxy_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dxy_p1_m1_p1; +COEFF(2,-1,1) = factor * coeff_dxy_p2_m1_p1; +COEFF(-1,0,1) = factor * coeff_dxy_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dxy_0_0_p1; +COEFF(1,0,1) = factor * coeff_dxy_p1_0_p1; +COEFF(2,0,1) = factor * coeff_dxy_p2_0_p1; +COEFF(-1,1,1) = factor * coeff_dxy_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dxy_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dxy_p1_p1_p1; +COEFF(2,1,1) = factor * coeff_dxy_p2_p1_p1; +COEFF(-1,2,1) = factor * coeff_dxy_m1_p2_p1; +COEFF(0,2,1) = factor * coeff_dxy_0_p2_p1; +COEFF(1,2,1) = factor * coeff_dxy_p1_p2_p1; +COEFF(2,2,1) = factor * coeff_dxy_p2_p2_p1; +COEFF(-1,-1,2) = factor * coeff_dxy_m1_m1_p2; +COEFF(0,-1,2) = factor * coeff_dxy_0_m1_p2; +COEFF(1,-1,2) = factor * coeff_dxy_p1_m1_p2; +COEFF(2,-1,2) = factor * coeff_dxy_p2_m1_p2; +COEFF(-1,0,2) = factor * coeff_dxy_m1_0_p2; +COEFF(0,0,2) = factor * coeff_dxy_0_0_p2; +COEFF(1,0,2) = factor * coeff_dxy_p1_0_p2; +COEFF(2,0,2) = factor * coeff_dxy_p2_0_p2; +COEFF(-1,1,2) = factor * coeff_dxy_m1_p1_p2; +COEFF(0,1,2) = factor * coeff_dxy_0_p1_p2; +COEFF(1,1,2) = factor * coeff_dxy_p1_p1_p2; +COEFF(2,1,2) = factor * coeff_dxy_p2_p1_p2; +COEFF(-1,2,2) = factor * coeff_dxy_m1_p2_p2; +COEFF(0,2,2) = factor * coeff_dxy_0_p2_p2; +COEFF(1,2,2) = factor * coeff_dxy_p1_p2_p2; +COEFF(2,2,2) = factor * coeff_dxy_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dxz.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dxz.dcl.c new file mode 100644 index 0000000..0457c9a --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dxz.dcl.c @@ -0,0 +1,64 @@ +fp coeff_dxz_m1_m1_m1, + coeff_dxz_0_m1_m1, + coeff_dxz_p1_m1_m1, + coeff_dxz_p2_m1_m1, + coeff_dxz_m1_0_m1, + coeff_dxz_0_0_m1, + coeff_dxz_p1_0_m1, + coeff_dxz_p2_0_m1, + coeff_dxz_m1_p1_m1, + coeff_dxz_0_p1_m1, + coeff_dxz_p1_p1_m1, + coeff_dxz_p2_p1_m1, + coeff_dxz_m1_p2_m1, + coeff_dxz_0_p2_m1, + coeff_dxz_p1_p2_m1, + coeff_dxz_p2_p2_m1, + coeff_dxz_m1_m1_0, + coeff_dxz_0_m1_0, + coeff_dxz_p1_m1_0, + coeff_dxz_p2_m1_0, + coeff_dxz_m1_0_0, + coeff_dxz_0_0_0, + coeff_dxz_p1_0_0, + coeff_dxz_p2_0_0, + coeff_dxz_m1_p1_0, + coeff_dxz_0_p1_0, + coeff_dxz_p1_p1_0, + coeff_dxz_p2_p1_0, + coeff_dxz_m1_p2_0, + coeff_dxz_0_p2_0, + coeff_dxz_p1_p2_0, + coeff_dxz_p2_p2_0, + coeff_dxz_m1_m1_p1, + coeff_dxz_0_m1_p1, + coeff_dxz_p1_m1_p1, + coeff_dxz_p2_m1_p1, + coeff_dxz_m1_0_p1, + coeff_dxz_0_0_p1, + coeff_dxz_p1_0_p1, + coeff_dxz_p2_0_p1, + coeff_dxz_m1_p1_p1, + coeff_dxz_0_p1_p1, + coeff_dxz_p1_p1_p1, + coeff_dxz_p2_p1_p1, + coeff_dxz_m1_p2_p1, + coeff_dxz_0_p2_p1, + coeff_dxz_p1_p2_p1, + coeff_dxz_p2_p2_p1, + coeff_dxz_m1_m1_p2, + coeff_dxz_0_m1_p2, + coeff_dxz_p1_m1_p2, + coeff_dxz_p2_m1_p2, + coeff_dxz_m1_0_p2, + coeff_dxz_0_0_p2, + coeff_dxz_p1_0_p2, + coeff_dxz_p2_0_p2, + coeff_dxz_m1_p1_p2, + coeff_dxz_0_p1_p2, + coeff_dxz_p1_p1_p2, + coeff_dxz_p2_p1_p2, + coeff_dxz_m1_p2_p2, + coeff_dxz_0_p2_p2, + coeff_dxz_p1_p2_p2, + coeff_dxz_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dxz.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dxz.store.c new file mode 100644 index 0000000..d138c22 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dxz.store.c @@ -0,0 +1,64 @@ +COEFF(-1,-1,-1) = factor * coeff_dxz_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dxz_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dxz_p1_m1_m1; +COEFF(2,-1,-1) = factor * coeff_dxz_p2_m1_m1; +COEFF(-1,0,-1) = factor * coeff_dxz_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dxz_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dxz_p1_0_m1; +COEFF(2,0,-1) = factor * coeff_dxz_p2_0_m1; +COEFF(-1,1,-1) = factor * coeff_dxz_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dxz_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dxz_p1_p1_m1; +COEFF(2,1,-1) = factor * coeff_dxz_p2_p1_m1; +COEFF(-1,2,-1) = factor * coeff_dxz_m1_p2_m1; +COEFF(0,2,-1) = factor * coeff_dxz_0_p2_m1; +COEFF(1,2,-1) = factor * coeff_dxz_p1_p2_m1; +COEFF(2,2,-1) = factor * coeff_dxz_p2_p2_m1; +COEFF(-1,-1,0) = factor * coeff_dxz_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dxz_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dxz_p1_m1_0; +COEFF(2,-1,0) = factor * coeff_dxz_p2_m1_0; +COEFF(-1,0,0) = factor * coeff_dxz_m1_0_0; +COEFF(0,0,0) = factor * coeff_dxz_0_0_0; +COEFF(1,0,0) = factor * coeff_dxz_p1_0_0; +COEFF(2,0,0) = factor * coeff_dxz_p2_0_0; +COEFF(-1,1,0) = factor * coeff_dxz_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dxz_0_p1_0; +COEFF(1,1,0) = factor * coeff_dxz_p1_p1_0; +COEFF(2,1,0) = factor * coeff_dxz_p2_p1_0; +COEFF(-1,2,0) = factor * coeff_dxz_m1_p2_0; +COEFF(0,2,0) = factor * coeff_dxz_0_p2_0; +COEFF(1,2,0) = factor * coeff_dxz_p1_p2_0; +COEFF(2,2,0) = factor * coeff_dxz_p2_p2_0; +COEFF(-1,-1,1) = factor * coeff_dxz_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dxz_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dxz_p1_m1_p1; +COEFF(2,-1,1) = factor * coeff_dxz_p2_m1_p1; +COEFF(-1,0,1) = factor * coeff_dxz_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dxz_0_0_p1; +COEFF(1,0,1) = factor * coeff_dxz_p1_0_p1; +COEFF(2,0,1) = factor * coeff_dxz_p2_0_p1; +COEFF(-1,1,1) = factor * coeff_dxz_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dxz_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dxz_p1_p1_p1; +COEFF(2,1,1) = factor * coeff_dxz_p2_p1_p1; +COEFF(-1,2,1) = factor * coeff_dxz_m1_p2_p1; +COEFF(0,2,1) = factor * coeff_dxz_0_p2_p1; +COEFF(1,2,1) = factor * coeff_dxz_p1_p2_p1; +COEFF(2,2,1) = factor * coeff_dxz_p2_p2_p1; +COEFF(-1,-1,2) = factor * coeff_dxz_m1_m1_p2; +COEFF(0,-1,2) = factor * coeff_dxz_0_m1_p2; +COEFF(1,-1,2) = factor * coeff_dxz_p1_m1_p2; +COEFF(2,-1,2) = factor * coeff_dxz_p2_m1_p2; +COEFF(-1,0,2) = factor * coeff_dxz_m1_0_p2; +COEFF(0,0,2) = factor * coeff_dxz_0_0_p2; +COEFF(1,0,2) = factor * coeff_dxz_p1_0_p2; +COEFF(2,0,2) = factor * coeff_dxz_p2_0_p2; +COEFF(-1,1,2) = factor * coeff_dxz_m1_p1_p2; +COEFF(0,1,2) = factor * coeff_dxz_0_p1_p2; +COEFF(1,1,2) = factor * coeff_dxz_p1_p1_p2; +COEFF(2,1,2) = factor * coeff_dxz_p2_p1_p2; +COEFF(-1,2,2) = factor * coeff_dxz_m1_p2_p2; +COEFF(0,2,2) = factor * coeff_dxz_0_p2_p2; +COEFF(1,2,2) = factor * coeff_dxz_p1_p2_p2; +COEFF(2,2,2) = factor * coeff_dxz_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dy.dcl.c new file mode 100644 index 0000000..db377fb --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dy.dcl.c @@ -0,0 +1,64 @@ +fp coeff_dy_m1_m1_m1, + coeff_dy_0_m1_m1, + coeff_dy_p1_m1_m1, + coeff_dy_p2_m1_m1, + coeff_dy_m1_0_m1, + coeff_dy_0_0_m1, + coeff_dy_p1_0_m1, + coeff_dy_p2_0_m1, + coeff_dy_m1_p1_m1, + coeff_dy_0_p1_m1, + coeff_dy_p1_p1_m1, + coeff_dy_p2_p1_m1, + coeff_dy_m1_p2_m1, + coeff_dy_0_p2_m1, + coeff_dy_p1_p2_m1, + coeff_dy_p2_p2_m1, + coeff_dy_m1_m1_0, + coeff_dy_0_m1_0, + coeff_dy_p1_m1_0, + coeff_dy_p2_m1_0, + coeff_dy_m1_0_0, + coeff_dy_0_0_0, + coeff_dy_p1_0_0, + coeff_dy_p2_0_0, + coeff_dy_m1_p1_0, + coeff_dy_0_p1_0, + coeff_dy_p1_p1_0, + coeff_dy_p2_p1_0, + coeff_dy_m1_p2_0, + coeff_dy_0_p2_0, + coeff_dy_p1_p2_0, + coeff_dy_p2_p2_0, + coeff_dy_m1_m1_p1, + coeff_dy_0_m1_p1, + coeff_dy_p1_m1_p1, + coeff_dy_p2_m1_p1, + coeff_dy_m1_0_p1, + coeff_dy_0_0_p1, + coeff_dy_p1_0_p1, + coeff_dy_p2_0_p1, + coeff_dy_m1_p1_p1, + coeff_dy_0_p1_p1, + coeff_dy_p1_p1_p1, + coeff_dy_p2_p1_p1, + coeff_dy_m1_p2_p1, + coeff_dy_0_p2_p1, + coeff_dy_p1_p2_p1, + coeff_dy_p2_p2_p1, + coeff_dy_m1_m1_p2, + coeff_dy_0_m1_p2, + coeff_dy_p1_m1_p2, + coeff_dy_p2_m1_p2, + coeff_dy_m1_0_p2, + coeff_dy_0_0_p2, + coeff_dy_p1_0_p2, + coeff_dy_p2_0_p2, + coeff_dy_m1_p1_p2, + coeff_dy_0_p1_p2, + coeff_dy_p1_p1_p2, + coeff_dy_p2_p1_p2, + coeff_dy_m1_p2_p2, + coeff_dy_0_p2_p2, + coeff_dy_p1_p2_p2, + coeff_dy_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dy.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dy.store.c new file mode 100644 index 0000000..1db130f --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dy.store.c @@ -0,0 +1,64 @@ +COEFF(-1,-1,-1) = factor * coeff_dy_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dy_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dy_p1_m1_m1; +COEFF(2,-1,-1) = factor * coeff_dy_p2_m1_m1; +COEFF(-1,0,-1) = factor * coeff_dy_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dy_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dy_p1_0_m1; +COEFF(2,0,-1) = factor * coeff_dy_p2_0_m1; +COEFF(-1,1,-1) = factor * coeff_dy_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dy_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dy_p1_p1_m1; +COEFF(2,1,-1) = factor * coeff_dy_p2_p1_m1; +COEFF(-1,2,-1) = factor * coeff_dy_m1_p2_m1; +COEFF(0,2,-1) = factor * coeff_dy_0_p2_m1; +COEFF(1,2,-1) = factor * coeff_dy_p1_p2_m1; +COEFF(2,2,-1) = factor * coeff_dy_p2_p2_m1; +COEFF(-1,-1,0) = factor * coeff_dy_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dy_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dy_p1_m1_0; +COEFF(2,-1,0) = factor * coeff_dy_p2_m1_0; +COEFF(-1,0,0) = factor * coeff_dy_m1_0_0; +COEFF(0,0,0) = factor * coeff_dy_0_0_0; +COEFF(1,0,0) = factor * coeff_dy_p1_0_0; +COEFF(2,0,0) = factor * coeff_dy_p2_0_0; +COEFF(-1,1,0) = factor * coeff_dy_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dy_0_p1_0; +COEFF(1,1,0) = factor * coeff_dy_p1_p1_0; +COEFF(2,1,0) = factor * coeff_dy_p2_p1_0; +COEFF(-1,2,0) = factor * coeff_dy_m1_p2_0; +COEFF(0,2,0) = factor * coeff_dy_0_p2_0; +COEFF(1,2,0) = factor * coeff_dy_p1_p2_0; +COEFF(2,2,0) = factor * coeff_dy_p2_p2_0; +COEFF(-1,-1,1) = factor * coeff_dy_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dy_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dy_p1_m1_p1; +COEFF(2,-1,1) = factor * coeff_dy_p2_m1_p1; +COEFF(-1,0,1) = factor * coeff_dy_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dy_0_0_p1; +COEFF(1,0,1) = factor * coeff_dy_p1_0_p1; +COEFF(2,0,1) = factor * coeff_dy_p2_0_p1; +COEFF(-1,1,1) = factor * coeff_dy_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dy_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dy_p1_p1_p1; +COEFF(2,1,1) = factor * coeff_dy_p2_p1_p1; +COEFF(-1,2,1) = factor * coeff_dy_m1_p2_p1; +COEFF(0,2,1) = factor * coeff_dy_0_p2_p1; +COEFF(1,2,1) = factor * coeff_dy_p1_p2_p1; +COEFF(2,2,1) = factor * coeff_dy_p2_p2_p1; +COEFF(-1,-1,2) = factor * coeff_dy_m1_m1_p2; +COEFF(0,-1,2) = factor * coeff_dy_0_m1_p2; +COEFF(1,-1,2) = factor * coeff_dy_p1_m1_p2; +COEFF(2,-1,2) = factor * coeff_dy_p2_m1_p2; +COEFF(-1,0,2) = factor * coeff_dy_m1_0_p2; +COEFF(0,0,2) = factor * coeff_dy_0_0_p2; +COEFF(1,0,2) = factor * coeff_dy_p1_0_p2; +COEFF(2,0,2) = factor * coeff_dy_p2_0_p2; +COEFF(-1,1,2) = factor * coeff_dy_m1_p1_p2; +COEFF(0,1,2) = factor * coeff_dy_0_p1_p2; +COEFF(1,1,2) = factor * coeff_dy_p1_p1_p2; +COEFF(2,1,2) = factor * coeff_dy_p2_p1_p2; +COEFF(-1,2,2) = factor * coeff_dy_m1_p2_p2; +COEFF(0,2,2) = factor * coeff_dy_0_p2_p2; +COEFF(1,2,2) = factor * coeff_dy_p1_p2_p2; +COEFF(2,2,2) = factor * coeff_dy_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dyy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dyy.dcl.c new file mode 100644 index 0000000..93735d8 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dyy.dcl.c @@ -0,0 +1,64 @@ +fp coeff_dyy_m1_m1_m1, + coeff_dyy_0_m1_m1, + coeff_dyy_p1_m1_m1, + coeff_dyy_p2_m1_m1, + coeff_dyy_m1_0_m1, + coeff_dyy_0_0_m1, + coeff_dyy_p1_0_m1, + coeff_dyy_p2_0_m1, + coeff_dyy_m1_p1_m1, + coeff_dyy_0_p1_m1, + coeff_dyy_p1_p1_m1, + coeff_dyy_p2_p1_m1, + coeff_dyy_m1_p2_m1, + coeff_dyy_0_p2_m1, + coeff_dyy_p1_p2_m1, + coeff_dyy_p2_p2_m1, + coeff_dyy_m1_m1_0, + coeff_dyy_0_m1_0, + coeff_dyy_p1_m1_0, + coeff_dyy_p2_m1_0, + coeff_dyy_m1_0_0, + coeff_dyy_0_0_0, + coeff_dyy_p1_0_0, + coeff_dyy_p2_0_0, + coeff_dyy_m1_p1_0, + coeff_dyy_0_p1_0, + coeff_dyy_p1_p1_0, + coeff_dyy_p2_p1_0, + coeff_dyy_m1_p2_0, + coeff_dyy_0_p2_0, + coeff_dyy_p1_p2_0, + coeff_dyy_p2_p2_0, + coeff_dyy_m1_m1_p1, + coeff_dyy_0_m1_p1, + coeff_dyy_p1_m1_p1, + coeff_dyy_p2_m1_p1, + coeff_dyy_m1_0_p1, + coeff_dyy_0_0_p1, + coeff_dyy_p1_0_p1, + coeff_dyy_p2_0_p1, + coeff_dyy_m1_p1_p1, + coeff_dyy_0_p1_p1, + coeff_dyy_p1_p1_p1, + coeff_dyy_p2_p1_p1, + coeff_dyy_m1_p2_p1, + coeff_dyy_0_p2_p1, + coeff_dyy_p1_p2_p1, + coeff_dyy_p2_p2_p1, + coeff_dyy_m1_m1_p2, + coeff_dyy_0_m1_p2, + coeff_dyy_p1_m1_p2, + coeff_dyy_p2_m1_p2, + coeff_dyy_m1_0_p2, + coeff_dyy_0_0_p2, + coeff_dyy_p1_0_p2, + coeff_dyy_p2_0_p2, + coeff_dyy_m1_p1_p2, + coeff_dyy_0_p1_p2, + coeff_dyy_p1_p1_p2, + coeff_dyy_p2_p1_p2, + coeff_dyy_m1_p2_p2, + coeff_dyy_0_p2_p2, + coeff_dyy_p1_p2_p2, + coeff_dyy_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dyy.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dyy.store.c new file mode 100644 index 0000000..745c07a --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dyy.store.c @@ -0,0 +1,64 @@ +COEFF(-1,-1,-1) = factor * coeff_dyy_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dyy_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dyy_p1_m1_m1; +COEFF(2,-1,-1) = factor * coeff_dyy_p2_m1_m1; +COEFF(-1,0,-1) = factor * coeff_dyy_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dyy_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dyy_p1_0_m1; +COEFF(2,0,-1) = factor * coeff_dyy_p2_0_m1; +COEFF(-1,1,-1) = factor * coeff_dyy_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dyy_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dyy_p1_p1_m1; +COEFF(2,1,-1) = factor * coeff_dyy_p2_p1_m1; +COEFF(-1,2,-1) = factor * coeff_dyy_m1_p2_m1; +COEFF(0,2,-1) = factor * coeff_dyy_0_p2_m1; +COEFF(1,2,-1) = factor * coeff_dyy_p1_p2_m1; +COEFF(2,2,-1) = factor * coeff_dyy_p2_p2_m1; +COEFF(-1,-1,0) = factor * coeff_dyy_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dyy_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dyy_p1_m1_0; +COEFF(2,-1,0) = factor * coeff_dyy_p2_m1_0; +COEFF(-1,0,0) = factor * coeff_dyy_m1_0_0; +COEFF(0,0,0) = factor * coeff_dyy_0_0_0; +COEFF(1,0,0) = factor * coeff_dyy_p1_0_0; +COEFF(2,0,0) = factor * coeff_dyy_p2_0_0; +COEFF(-1,1,0) = factor * coeff_dyy_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dyy_0_p1_0; +COEFF(1,1,0) = factor * coeff_dyy_p1_p1_0; +COEFF(2,1,0) = factor * coeff_dyy_p2_p1_0; +COEFF(-1,2,0) = factor * coeff_dyy_m1_p2_0; +COEFF(0,2,0) = factor * coeff_dyy_0_p2_0; +COEFF(1,2,0) = factor * coeff_dyy_p1_p2_0; +COEFF(2,2,0) = factor * coeff_dyy_p2_p2_0; +COEFF(-1,-1,1) = factor * coeff_dyy_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dyy_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dyy_p1_m1_p1; +COEFF(2,-1,1) = factor * coeff_dyy_p2_m1_p1; +COEFF(-1,0,1) = factor * coeff_dyy_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dyy_0_0_p1; +COEFF(1,0,1) = factor * coeff_dyy_p1_0_p1; +COEFF(2,0,1) = factor * coeff_dyy_p2_0_p1; +COEFF(-1,1,1) = factor * coeff_dyy_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dyy_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dyy_p1_p1_p1; +COEFF(2,1,1) = factor * coeff_dyy_p2_p1_p1; +COEFF(-1,2,1) = factor * coeff_dyy_m1_p2_p1; +COEFF(0,2,1) = factor * coeff_dyy_0_p2_p1; +COEFF(1,2,1) = factor * coeff_dyy_p1_p2_p1; +COEFF(2,2,1) = factor * coeff_dyy_p2_p2_p1; +COEFF(-1,-1,2) = factor * coeff_dyy_m1_m1_p2; +COEFF(0,-1,2) = factor * coeff_dyy_0_m1_p2; +COEFF(1,-1,2) = factor * coeff_dyy_p1_m1_p2; +COEFF(2,-1,2) = factor * coeff_dyy_p2_m1_p2; +COEFF(-1,0,2) = factor * coeff_dyy_m1_0_p2; +COEFF(0,0,2) = factor * coeff_dyy_0_0_p2; +COEFF(1,0,2) = factor * coeff_dyy_p1_0_p2; +COEFF(2,0,2) = factor * coeff_dyy_p2_0_p2; +COEFF(-1,1,2) = factor * coeff_dyy_m1_p1_p2; +COEFF(0,1,2) = factor * coeff_dyy_0_p1_p2; +COEFF(1,1,2) = factor * coeff_dyy_p1_p1_p2; +COEFF(2,1,2) = factor * coeff_dyy_p2_p1_p2; +COEFF(-1,2,2) = factor * coeff_dyy_m1_p2_p2; +COEFF(0,2,2) = factor * coeff_dyy_0_p2_p2; +COEFF(1,2,2) = factor * coeff_dyy_p1_p2_p2; +COEFF(2,2,2) = factor * coeff_dyy_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dyz.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dyz.dcl.c new file mode 100644 index 0000000..c82c714 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dyz.dcl.c @@ -0,0 +1,64 @@ +fp coeff_dyz_m1_m1_m1, + coeff_dyz_0_m1_m1, + coeff_dyz_p1_m1_m1, + coeff_dyz_p2_m1_m1, + coeff_dyz_m1_0_m1, + coeff_dyz_0_0_m1, + coeff_dyz_p1_0_m1, + coeff_dyz_p2_0_m1, + coeff_dyz_m1_p1_m1, + coeff_dyz_0_p1_m1, + coeff_dyz_p1_p1_m1, + coeff_dyz_p2_p1_m1, + coeff_dyz_m1_p2_m1, + coeff_dyz_0_p2_m1, + coeff_dyz_p1_p2_m1, + coeff_dyz_p2_p2_m1, + coeff_dyz_m1_m1_0, + coeff_dyz_0_m1_0, + coeff_dyz_p1_m1_0, + coeff_dyz_p2_m1_0, + coeff_dyz_m1_0_0, + coeff_dyz_0_0_0, + coeff_dyz_p1_0_0, + coeff_dyz_p2_0_0, + coeff_dyz_m1_p1_0, + coeff_dyz_0_p1_0, + coeff_dyz_p1_p1_0, + coeff_dyz_p2_p1_0, + coeff_dyz_m1_p2_0, + coeff_dyz_0_p2_0, + coeff_dyz_p1_p2_0, + coeff_dyz_p2_p2_0, + coeff_dyz_m1_m1_p1, + coeff_dyz_0_m1_p1, + coeff_dyz_p1_m1_p1, + coeff_dyz_p2_m1_p1, + coeff_dyz_m1_0_p1, + coeff_dyz_0_0_p1, + coeff_dyz_p1_0_p1, + coeff_dyz_p2_0_p1, + coeff_dyz_m1_p1_p1, + coeff_dyz_0_p1_p1, + coeff_dyz_p1_p1_p1, + coeff_dyz_p2_p1_p1, + coeff_dyz_m1_p2_p1, + coeff_dyz_0_p2_p1, + coeff_dyz_p1_p2_p1, + coeff_dyz_p2_p2_p1, + coeff_dyz_m1_m1_p2, + coeff_dyz_0_m1_p2, + coeff_dyz_p1_m1_p2, + coeff_dyz_p2_m1_p2, + coeff_dyz_m1_0_p2, + coeff_dyz_0_0_p2, + coeff_dyz_p1_0_p2, + coeff_dyz_p2_0_p2, + coeff_dyz_m1_p1_p2, + coeff_dyz_0_p1_p2, + coeff_dyz_p1_p1_p2, + coeff_dyz_p2_p1_p2, + coeff_dyz_m1_p2_p2, + coeff_dyz_0_p2_p2, + coeff_dyz_p1_p2_p2, + coeff_dyz_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dyz.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dyz.store.c new file mode 100644 index 0000000..89dae4f --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dyz.store.c @@ -0,0 +1,64 @@ +COEFF(-1,-1,-1) = factor * coeff_dyz_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dyz_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dyz_p1_m1_m1; +COEFF(2,-1,-1) = factor * coeff_dyz_p2_m1_m1; +COEFF(-1,0,-1) = factor * coeff_dyz_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dyz_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dyz_p1_0_m1; +COEFF(2,0,-1) = factor * coeff_dyz_p2_0_m1; +COEFF(-1,1,-1) = factor * coeff_dyz_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dyz_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dyz_p1_p1_m1; +COEFF(2,1,-1) = factor * coeff_dyz_p2_p1_m1; +COEFF(-1,2,-1) = factor * coeff_dyz_m1_p2_m1; +COEFF(0,2,-1) = factor * coeff_dyz_0_p2_m1; +COEFF(1,2,-1) = factor * coeff_dyz_p1_p2_m1; +COEFF(2,2,-1) = factor * coeff_dyz_p2_p2_m1; +COEFF(-1,-1,0) = factor * coeff_dyz_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dyz_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dyz_p1_m1_0; +COEFF(2,-1,0) = factor * coeff_dyz_p2_m1_0; +COEFF(-1,0,0) = factor * coeff_dyz_m1_0_0; +COEFF(0,0,0) = factor * coeff_dyz_0_0_0; +COEFF(1,0,0) = factor * coeff_dyz_p1_0_0; +COEFF(2,0,0) = factor * coeff_dyz_p2_0_0; +COEFF(-1,1,0) = factor * coeff_dyz_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dyz_0_p1_0; +COEFF(1,1,0) = factor * coeff_dyz_p1_p1_0; +COEFF(2,1,0) = factor * coeff_dyz_p2_p1_0; +COEFF(-1,2,0) = factor * coeff_dyz_m1_p2_0; +COEFF(0,2,0) = factor * coeff_dyz_0_p2_0; +COEFF(1,2,0) = factor * coeff_dyz_p1_p2_0; +COEFF(2,2,0) = factor * coeff_dyz_p2_p2_0; +COEFF(-1,-1,1) = factor * coeff_dyz_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dyz_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dyz_p1_m1_p1; +COEFF(2,-1,1) = factor * coeff_dyz_p2_m1_p1; +COEFF(-1,0,1) = factor * coeff_dyz_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dyz_0_0_p1; +COEFF(1,0,1) = factor * coeff_dyz_p1_0_p1; +COEFF(2,0,1) = factor * coeff_dyz_p2_0_p1; +COEFF(-1,1,1) = factor * coeff_dyz_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dyz_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dyz_p1_p1_p1; +COEFF(2,1,1) = factor * coeff_dyz_p2_p1_p1; +COEFF(-1,2,1) = factor * coeff_dyz_m1_p2_p1; +COEFF(0,2,1) = factor * coeff_dyz_0_p2_p1; +COEFF(1,2,1) = factor * coeff_dyz_p1_p2_p1; +COEFF(2,2,1) = factor * coeff_dyz_p2_p2_p1; +COEFF(-1,-1,2) = factor * coeff_dyz_m1_m1_p2; +COEFF(0,-1,2) = factor * coeff_dyz_0_m1_p2; +COEFF(1,-1,2) = factor * coeff_dyz_p1_m1_p2; +COEFF(2,-1,2) = factor * coeff_dyz_p2_m1_p2; +COEFF(-1,0,2) = factor * coeff_dyz_m1_0_p2; +COEFF(0,0,2) = factor * coeff_dyz_0_0_p2; +COEFF(1,0,2) = factor * coeff_dyz_p1_0_p2; +COEFF(2,0,2) = factor * coeff_dyz_p2_0_p2; +COEFF(-1,1,2) = factor * coeff_dyz_m1_p1_p2; +COEFF(0,1,2) = factor * coeff_dyz_0_p1_p2; +COEFF(1,1,2) = factor * coeff_dyz_p1_p1_p2; +COEFF(2,1,2) = factor * coeff_dyz_p2_p1_p2; +COEFF(-1,2,2) = factor * coeff_dyz_m1_p2_p2; +COEFF(0,2,2) = factor * coeff_dyz_0_p2_p2; +COEFF(1,2,2) = factor * coeff_dyz_p1_p2_p2; +COEFF(2,2,2) = factor * coeff_dyz_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dz.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dz.dcl.c new file mode 100644 index 0000000..5d1e021 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dz.dcl.c @@ -0,0 +1,64 @@ +fp coeff_dz_m1_m1_m1, + coeff_dz_0_m1_m1, + coeff_dz_p1_m1_m1, + coeff_dz_p2_m1_m1, + coeff_dz_m1_0_m1, + coeff_dz_0_0_m1, + coeff_dz_p1_0_m1, + coeff_dz_p2_0_m1, + coeff_dz_m1_p1_m1, + coeff_dz_0_p1_m1, + coeff_dz_p1_p1_m1, + coeff_dz_p2_p1_m1, + coeff_dz_m1_p2_m1, + coeff_dz_0_p2_m1, + coeff_dz_p1_p2_m1, + coeff_dz_p2_p2_m1, + coeff_dz_m1_m1_0, + coeff_dz_0_m1_0, + coeff_dz_p1_m1_0, + coeff_dz_p2_m1_0, + coeff_dz_m1_0_0, + coeff_dz_0_0_0, + coeff_dz_p1_0_0, + coeff_dz_p2_0_0, + coeff_dz_m1_p1_0, + coeff_dz_0_p1_0, + coeff_dz_p1_p1_0, + coeff_dz_p2_p1_0, + coeff_dz_m1_p2_0, + coeff_dz_0_p2_0, + coeff_dz_p1_p2_0, + coeff_dz_p2_p2_0, + coeff_dz_m1_m1_p1, + coeff_dz_0_m1_p1, + coeff_dz_p1_m1_p1, + coeff_dz_p2_m1_p1, + coeff_dz_m1_0_p1, + coeff_dz_0_0_p1, + coeff_dz_p1_0_p1, + coeff_dz_p2_0_p1, + coeff_dz_m1_p1_p1, + coeff_dz_0_p1_p1, + coeff_dz_p1_p1_p1, + coeff_dz_p2_p1_p1, + coeff_dz_m1_p2_p1, + coeff_dz_0_p2_p1, + coeff_dz_p1_p2_p1, + coeff_dz_p2_p2_p1, + coeff_dz_m1_m1_p2, + coeff_dz_0_m1_p2, + coeff_dz_p1_m1_p2, + coeff_dz_p2_m1_p2, + coeff_dz_m1_0_p2, + coeff_dz_0_0_p2, + coeff_dz_p1_0_p2, + coeff_dz_p2_0_p2, + coeff_dz_m1_p1_p2, + coeff_dz_0_p1_p2, + coeff_dz_p1_p1_p2, + coeff_dz_p2_p1_p2, + coeff_dz_m1_p2_p2, + coeff_dz_0_p2_p2, + coeff_dz_p1_p2_p2, + coeff_dz_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dz.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dz.store.c new file mode 100644 index 0000000..8b4cc5b --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dz.store.c @@ -0,0 +1,64 @@ +COEFF(-1,-1,-1) = factor * coeff_dz_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dz_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dz_p1_m1_m1; +COEFF(2,-1,-1) = factor * coeff_dz_p2_m1_m1; +COEFF(-1,0,-1) = factor * coeff_dz_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dz_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dz_p1_0_m1; +COEFF(2,0,-1) = factor * coeff_dz_p2_0_m1; +COEFF(-1,1,-1) = factor * coeff_dz_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dz_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dz_p1_p1_m1; +COEFF(2,1,-1) = factor * coeff_dz_p2_p1_m1; +COEFF(-1,2,-1) = factor * coeff_dz_m1_p2_m1; +COEFF(0,2,-1) = factor * coeff_dz_0_p2_m1; +COEFF(1,2,-1) = factor * coeff_dz_p1_p2_m1; +COEFF(2,2,-1) = factor * coeff_dz_p2_p2_m1; +COEFF(-1,-1,0) = factor * coeff_dz_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dz_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dz_p1_m1_0; +COEFF(2,-1,0) = factor * coeff_dz_p2_m1_0; +COEFF(-1,0,0) = factor * coeff_dz_m1_0_0; +COEFF(0,0,0) = factor * coeff_dz_0_0_0; +COEFF(1,0,0) = factor * coeff_dz_p1_0_0; +COEFF(2,0,0) = factor * coeff_dz_p2_0_0; +COEFF(-1,1,0) = factor * coeff_dz_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dz_0_p1_0; +COEFF(1,1,0) = factor * coeff_dz_p1_p1_0; +COEFF(2,1,0) = factor * coeff_dz_p2_p1_0; +COEFF(-1,2,0) = factor * coeff_dz_m1_p2_0; +COEFF(0,2,0) = factor * coeff_dz_0_p2_0; +COEFF(1,2,0) = factor * coeff_dz_p1_p2_0; +COEFF(2,2,0) = factor * coeff_dz_p2_p2_0; +COEFF(-1,-1,1) = factor * coeff_dz_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dz_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dz_p1_m1_p1; +COEFF(2,-1,1) = factor * coeff_dz_p2_m1_p1; +COEFF(-1,0,1) = factor * coeff_dz_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dz_0_0_p1; +COEFF(1,0,1) = factor * coeff_dz_p1_0_p1; +COEFF(2,0,1) = factor * coeff_dz_p2_0_p1; +COEFF(-1,1,1) = factor * coeff_dz_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dz_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dz_p1_p1_p1; +COEFF(2,1,1) = factor * coeff_dz_p2_p1_p1; +COEFF(-1,2,1) = factor * coeff_dz_m1_p2_p1; +COEFF(0,2,1) = factor * coeff_dz_0_p2_p1; +COEFF(1,2,1) = factor * coeff_dz_p1_p2_p1; +COEFF(2,2,1) = factor * coeff_dz_p2_p2_p1; +COEFF(-1,-1,2) = factor * coeff_dz_m1_m1_p2; +COEFF(0,-1,2) = factor * coeff_dz_0_m1_p2; +COEFF(1,-1,2) = factor * coeff_dz_p1_m1_p2; +COEFF(2,-1,2) = factor * coeff_dz_p2_m1_p2; +COEFF(-1,0,2) = factor * coeff_dz_m1_0_p2; +COEFF(0,0,2) = factor * coeff_dz_0_0_p2; +COEFF(1,0,2) = factor * coeff_dz_p1_0_p2; +COEFF(2,0,2) = factor * coeff_dz_p2_0_p2; +COEFF(-1,1,2) = factor * coeff_dz_m1_p1_p2; +COEFF(0,1,2) = factor * coeff_dz_0_p1_p2; +COEFF(1,1,2) = factor * coeff_dz_p1_p1_p2; +COEFF(2,1,2) = factor * coeff_dz_p2_p1_p2; +COEFF(-1,2,2) = factor * coeff_dz_m1_p2_p2; +COEFF(0,2,2) = factor * coeff_dz_0_p2_p2; +COEFF(1,2,2) = factor * coeff_dz_p1_p2_p2; +COEFF(2,2,2) = factor * coeff_dz_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dzz.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dzz.dcl.c new file mode 100644 index 0000000..f6fb93d --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dzz.dcl.c @@ -0,0 +1,64 @@ +fp coeff_dzz_m1_m1_m1, + coeff_dzz_0_m1_m1, + coeff_dzz_p1_m1_m1, + coeff_dzz_p2_m1_m1, + coeff_dzz_m1_0_m1, + coeff_dzz_0_0_m1, + coeff_dzz_p1_0_m1, + coeff_dzz_p2_0_m1, + coeff_dzz_m1_p1_m1, + coeff_dzz_0_p1_m1, + coeff_dzz_p1_p1_m1, + coeff_dzz_p2_p1_m1, + coeff_dzz_m1_p2_m1, + coeff_dzz_0_p2_m1, + coeff_dzz_p1_p2_m1, + coeff_dzz_p2_p2_m1, + coeff_dzz_m1_m1_0, + coeff_dzz_0_m1_0, + coeff_dzz_p1_m1_0, + coeff_dzz_p2_m1_0, + coeff_dzz_m1_0_0, + coeff_dzz_0_0_0, + coeff_dzz_p1_0_0, + coeff_dzz_p2_0_0, + coeff_dzz_m1_p1_0, + coeff_dzz_0_p1_0, + coeff_dzz_p1_p1_0, + coeff_dzz_p2_p1_0, + coeff_dzz_m1_p2_0, + coeff_dzz_0_p2_0, + coeff_dzz_p1_p2_0, + coeff_dzz_p2_p2_0, + coeff_dzz_m1_m1_p1, + coeff_dzz_0_m1_p1, + coeff_dzz_p1_m1_p1, + coeff_dzz_p2_m1_p1, + coeff_dzz_m1_0_p1, + coeff_dzz_0_0_p1, + coeff_dzz_p1_0_p1, + coeff_dzz_p2_0_p1, + coeff_dzz_m1_p1_p1, + coeff_dzz_0_p1_p1, + coeff_dzz_p1_p1_p1, + coeff_dzz_p2_p1_p1, + coeff_dzz_m1_p2_p1, + coeff_dzz_0_p2_p1, + coeff_dzz_p1_p2_p1, + coeff_dzz_p2_p2_p1, + coeff_dzz_m1_m1_p2, + coeff_dzz_0_m1_p2, + coeff_dzz_p1_m1_p2, + coeff_dzz_p2_m1_p2, + coeff_dzz_m1_0_p2, + coeff_dzz_0_0_p2, + coeff_dzz_p1_0_p2, + coeff_dzz_p2_0_p2, + coeff_dzz_m1_p1_p2, + coeff_dzz_0_p1_p2, + coeff_dzz_p1_p1_p2, + coeff_dzz_p2_p1_p2, + coeff_dzz_m1_p2_p2, + coeff_dzz_0_p2_p2, + coeff_dzz_p1_p2_p2, + coeff_dzz_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dzz.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dzz.store.c new file mode 100644 index 0000000..ba3a2c0 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/coeff-dzz.store.c @@ -0,0 +1,64 @@ +COEFF(-1,-1,-1) = factor * coeff_dzz_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dzz_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dzz_p1_m1_m1; +COEFF(2,-1,-1) = factor * coeff_dzz_p2_m1_m1; +COEFF(-1,0,-1) = factor * coeff_dzz_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dzz_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dzz_p1_0_m1; +COEFF(2,0,-1) = factor * coeff_dzz_p2_0_m1; +COEFF(-1,1,-1) = factor * coeff_dzz_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dzz_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dzz_p1_p1_m1; +COEFF(2,1,-1) = factor * coeff_dzz_p2_p1_m1; +COEFF(-1,2,-1) = factor * coeff_dzz_m1_p2_m1; +COEFF(0,2,-1) = factor * coeff_dzz_0_p2_m1; +COEFF(1,2,-1) = factor * coeff_dzz_p1_p2_m1; +COEFF(2,2,-1) = factor * coeff_dzz_p2_p2_m1; +COEFF(-1,-1,0) = factor * coeff_dzz_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dzz_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dzz_p1_m1_0; +COEFF(2,-1,0) = factor * coeff_dzz_p2_m1_0; +COEFF(-1,0,0) = factor * coeff_dzz_m1_0_0; +COEFF(0,0,0) = factor * coeff_dzz_0_0_0; +COEFF(1,0,0) = factor * coeff_dzz_p1_0_0; +COEFF(2,0,0) = factor * coeff_dzz_p2_0_0; +COEFF(-1,1,0) = factor * coeff_dzz_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dzz_0_p1_0; +COEFF(1,1,0) = factor * coeff_dzz_p1_p1_0; +COEFF(2,1,0) = factor * coeff_dzz_p2_p1_0; +COEFF(-1,2,0) = factor * coeff_dzz_m1_p2_0; +COEFF(0,2,0) = factor * coeff_dzz_0_p2_0; +COEFF(1,2,0) = factor * coeff_dzz_p1_p2_0; +COEFF(2,2,0) = factor * coeff_dzz_p2_p2_0; +COEFF(-1,-1,1) = factor * coeff_dzz_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dzz_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dzz_p1_m1_p1; +COEFF(2,-1,1) = factor * coeff_dzz_p2_m1_p1; +COEFF(-1,0,1) = factor * coeff_dzz_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dzz_0_0_p1; +COEFF(1,0,1) = factor * coeff_dzz_p1_0_p1; +COEFF(2,0,1) = factor * coeff_dzz_p2_0_p1; +COEFF(-1,1,1) = factor * coeff_dzz_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dzz_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dzz_p1_p1_p1; +COEFF(2,1,1) = factor * coeff_dzz_p2_p1_p1; +COEFF(-1,2,1) = factor * coeff_dzz_m1_p2_p1; +COEFF(0,2,1) = factor * coeff_dzz_0_p2_p1; +COEFF(1,2,1) = factor * coeff_dzz_p1_p2_p1; +COEFF(2,2,1) = factor * coeff_dzz_p2_p2_p1; +COEFF(-1,-1,2) = factor * coeff_dzz_m1_m1_p2; +COEFF(0,-1,2) = factor * coeff_dzz_0_m1_p2; +COEFF(1,-1,2) = factor * coeff_dzz_p1_m1_p2; +COEFF(2,-1,2) = factor * coeff_dzz_p2_m1_p2; +COEFF(-1,0,2) = factor * coeff_dzz_m1_0_p2; +COEFF(0,0,2) = factor * coeff_dzz_0_0_p2; +COEFF(1,0,2) = factor * coeff_dzz_p1_0_p2; +COEFF(2,0,2) = factor * coeff_dzz_p2_0_p2; +COEFF(-1,1,2) = factor * coeff_dzz_m1_p1_p2; +COEFF(0,1,2) = factor * coeff_dzz_0_p1_p2; +COEFF(1,1,2) = factor * coeff_dzz_p1_p1_p2; +COEFF(2,1,2) = factor * coeff_dzz_p2_p1_p2; +COEFF(-1,2,2) = factor * coeff_dzz_m1_p2_p2; +COEFF(0,2,2) = factor * coeff_dzz_0_p2_p2; +COEFF(1,2,2) = factor * coeff_dzz_p1_p2_p2; +COEFF(2,2,2) = factor * coeff_dzz_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/data-var.assign.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/data-var.assign.c new file mode 100644 index 0000000..4613787 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/data-var.assign.c @@ -0,0 +1,64 @@ +data_m1_m1_m1 = DATA(-1,-1,-1); +data_0_m1_m1 = DATA(0,-1,-1); +data_p1_m1_m1 = DATA(1,-1,-1); +data_p2_m1_m1 = DATA(2,-1,-1); +data_m1_0_m1 = DATA(-1,0,-1); +data_0_0_m1 = DATA(0,0,-1); +data_p1_0_m1 = DATA(1,0,-1); +data_p2_0_m1 = DATA(2,0,-1); +data_m1_p1_m1 = DATA(-1,1,-1); +data_0_p1_m1 = DATA(0,1,-1); +data_p1_p1_m1 = DATA(1,1,-1); +data_p2_p1_m1 = DATA(2,1,-1); +data_m1_p2_m1 = DATA(-1,2,-1); +data_0_p2_m1 = DATA(0,2,-1); +data_p1_p2_m1 = DATA(1,2,-1); +data_p2_p2_m1 = DATA(2,2,-1); +data_m1_m1_0 = DATA(-1,-1,0); +data_0_m1_0 = DATA(0,-1,0); +data_p1_m1_0 = DATA(1,-1,0); +data_p2_m1_0 = DATA(2,-1,0); +data_m1_0_0 = DATA(-1,0,0); +data_0_0_0 = DATA(0,0,0); +data_p1_0_0 = DATA(1,0,0); +data_p2_0_0 = DATA(2,0,0); +data_m1_p1_0 = DATA(-1,1,0); +data_0_p1_0 = DATA(0,1,0); +data_p1_p1_0 = DATA(1,1,0); +data_p2_p1_0 = DATA(2,1,0); +data_m1_p2_0 = DATA(-1,2,0); +data_0_p2_0 = DATA(0,2,0); +data_p1_p2_0 = DATA(1,2,0); +data_p2_p2_0 = DATA(2,2,0); +data_m1_m1_p1 = DATA(-1,-1,1); +data_0_m1_p1 = DATA(0,-1,1); +data_p1_m1_p1 = DATA(1,-1,1); +data_p2_m1_p1 = DATA(2,-1,1); +data_m1_0_p1 = DATA(-1,0,1); +data_0_0_p1 = DATA(0,0,1); +data_p1_0_p1 = DATA(1,0,1); +data_p2_0_p1 = DATA(2,0,1); +data_m1_p1_p1 = DATA(-1,1,1); +data_0_p1_p1 = DATA(0,1,1); +data_p1_p1_p1 = DATA(1,1,1); +data_p2_p1_p1 = DATA(2,1,1); +data_m1_p2_p1 = DATA(-1,2,1); +data_0_p2_p1 = DATA(0,2,1); +data_p1_p2_p1 = DATA(1,2,1); +data_p2_p2_p1 = DATA(2,2,1); +data_m1_m1_p2 = DATA(-1,-1,2); +data_0_m1_p2 = DATA(0,-1,2); +data_p1_m1_p2 = DATA(1,-1,2); +data_p2_m1_p2 = DATA(2,-1,2); +data_m1_0_p2 = DATA(-1,0,2); +data_0_0_p2 = DATA(0,0,2); +data_p1_0_p2 = DATA(1,0,2); +data_p2_0_p2 = DATA(2,0,2); +data_m1_p1_p2 = DATA(-1,1,2); +data_0_p1_p2 = DATA(0,1,2); +data_p1_p1_p2 = DATA(1,1,2); +data_p2_p1_p2 = DATA(2,1,2); +data_m1_p2_p2 = DATA(-1,2,2); +data_0_p2_p2 = DATA(0,2,2); +data_p1_p2_p2 = DATA(1,2,2); +data_p2_p2_p2 = DATA(2,2,2); diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/data-var.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/data-var.dcl.c new file mode 100644 index 0000000..6c8b455 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/data-var.dcl.c @@ -0,0 +1,64 @@ +fp data_m1_m1_m1, + data_0_m1_m1, + data_p1_m1_m1, + data_p2_m1_m1, + data_m1_0_m1, + data_0_0_m1, + data_p1_0_m1, + data_p2_0_m1, + data_m1_p1_m1, + data_0_p1_m1, + data_p1_p1_m1, + data_p2_p1_m1, + data_m1_p2_m1, + data_0_p2_m1, + data_p1_p2_m1, + data_p2_p2_m1, + data_m1_m1_0, + data_0_m1_0, + data_p1_m1_0, + data_p2_m1_0, + data_m1_0_0, + data_0_0_0, + data_p1_0_0, + data_p2_0_0, + data_m1_p1_0, + data_0_p1_0, + data_p1_p1_0, + data_p2_p1_0, + data_m1_p2_0, + data_0_p2_0, + data_p1_p2_0, + data_p2_p2_0, + data_m1_m1_p1, + data_0_m1_p1, + data_p1_m1_p1, + data_p2_m1_p1, + data_m1_0_p1, + data_0_0_p1, + data_p1_0_p1, + data_p2_0_p1, + data_m1_p1_p1, + data_0_p1_p1, + data_p1_p1_p1, + data_p2_p1_p1, + data_m1_p2_p1, + data_0_p2_p1, + data_p1_p2_p1, + data_p2_p2_p1, + data_m1_m1_p2, + data_0_m1_p2, + data_p1_m1_p2, + data_p2_m1_p2, + data_m1_0_p2, + data_0_0_p2, + data_p1_0_p2, + data_p2_0_p2, + data_m1_p1_p2, + data_0_p1_p2, + data_p1_p1_p2, + data_p2_p1_p2, + data_m1_p2_p2, + data_0_p2_p2, + data_p1_p2_p2, + data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-I.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-I.compute.c new file mode 100644 index 0000000..4c1fdaa --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-I.compute.c @@ -0,0 +1,65 @@ +result = + coeff_I_m1_m1_m1*data_m1_m1_m1 + + coeff_I_0_m1_m1*data_0_m1_m1 + + coeff_I_p1_m1_m1*data_p1_m1_m1 + + coeff_I_p2_m1_m1*data_p2_m1_m1 + + coeff_I_m1_0_m1*data_m1_0_m1 + + coeff_I_0_0_m1*data_0_0_m1 + + coeff_I_p1_0_m1*data_p1_0_m1 + + coeff_I_p2_0_m1*data_p2_0_m1 + + coeff_I_m1_p1_m1*data_m1_p1_m1 + + coeff_I_0_p1_m1*data_0_p1_m1 + + coeff_I_p1_p1_m1*data_p1_p1_m1 + + coeff_I_p2_p1_m1*data_p2_p1_m1 + + coeff_I_m1_p2_m1*data_m1_p2_m1 + + coeff_I_0_p2_m1*data_0_p2_m1 + + coeff_I_p1_p2_m1*data_p1_p2_m1 + + coeff_I_p2_p2_m1*data_p2_p2_m1 + + coeff_I_m1_m1_0*data_m1_m1_0 + + coeff_I_0_m1_0*data_0_m1_0 + + coeff_I_p1_m1_0*data_p1_m1_0 + + coeff_I_p2_m1_0*data_p2_m1_0 + + coeff_I_m1_0_0*data_m1_0_0 + + coeff_I_0_0_0*data_0_0_0 + + coeff_I_p1_0_0*data_p1_0_0 + + coeff_I_p2_0_0*data_p2_0_0 + + coeff_I_m1_p1_0*data_m1_p1_0 + + coeff_I_0_p1_0*data_0_p1_0 + + coeff_I_p1_p1_0*data_p1_p1_0 + + coeff_I_p2_p1_0*data_p2_p1_0 + + coeff_I_m1_p2_0*data_m1_p2_0 + + coeff_I_0_p2_0*data_0_p2_0 + + coeff_I_p1_p2_0*data_p1_p2_0 + + coeff_I_p2_p2_0*data_p2_p2_0 + + coeff_I_m1_m1_p1*data_m1_m1_p1 + + coeff_I_0_m1_p1*data_0_m1_p1 + + coeff_I_p1_m1_p1*data_p1_m1_p1 + + coeff_I_p2_m1_p1*data_p2_m1_p1 + + coeff_I_m1_0_p1*data_m1_0_p1 + + coeff_I_0_0_p1*data_0_0_p1 + + coeff_I_p1_0_p1*data_p1_0_p1 + + coeff_I_p2_0_p1*data_p2_0_p1 + + coeff_I_m1_p1_p1*data_m1_p1_p1 + + coeff_I_0_p1_p1*data_0_p1_p1 + + coeff_I_p1_p1_p1*data_p1_p1_p1 + + coeff_I_p2_p1_p1*data_p2_p1_p1 + + coeff_I_m1_p2_p1*data_m1_p2_p1 + + coeff_I_0_p2_p1*data_0_p2_p1 + + coeff_I_p1_p2_p1*data_p1_p2_p1 + + coeff_I_p2_p2_p1*data_p2_p2_p1 + + coeff_I_m1_m1_p2*data_m1_m1_p2 + + coeff_I_0_m1_p2*data_0_m1_p2 + + coeff_I_p1_m1_p2*data_p1_m1_p2 + + coeff_I_p2_m1_p2*data_p2_m1_p2 + + coeff_I_m1_0_p2*data_m1_0_p2 + + coeff_I_0_0_p2*data_0_0_p2 + + coeff_I_p1_0_p2*data_p1_0_p2 + + coeff_I_p2_0_p2*data_p2_0_p2 + + coeff_I_m1_p1_p2*data_m1_p1_p2 + + coeff_I_0_p1_p2*data_0_p1_p2 + + coeff_I_p1_p1_p2*data_p1_p1_p2 + + coeff_I_p2_p1_p2*data_p2_p1_p2 + + coeff_I_m1_p2_p2*data_m1_p2_p2 + + coeff_I_0_p2_p2*data_0_p2_p2 + + coeff_I_p1_p2_p2*data_p1_p2_p2 + + coeff_I_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dx.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dx.compute.c new file mode 100644 index 0000000..51caa53 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dx.compute.c @@ -0,0 +1,65 @@ +result = + coeff_dx_m1_m1_m1*data_m1_m1_m1 + + coeff_dx_0_m1_m1*data_0_m1_m1 + + coeff_dx_p1_m1_m1*data_p1_m1_m1 + + coeff_dx_p2_m1_m1*data_p2_m1_m1 + + coeff_dx_m1_0_m1*data_m1_0_m1 + + coeff_dx_0_0_m1*data_0_0_m1 + + coeff_dx_p1_0_m1*data_p1_0_m1 + + coeff_dx_p2_0_m1*data_p2_0_m1 + + coeff_dx_m1_p1_m1*data_m1_p1_m1 + + coeff_dx_0_p1_m1*data_0_p1_m1 + + coeff_dx_p1_p1_m1*data_p1_p1_m1 + + coeff_dx_p2_p1_m1*data_p2_p1_m1 + + coeff_dx_m1_p2_m1*data_m1_p2_m1 + + coeff_dx_0_p2_m1*data_0_p2_m1 + + coeff_dx_p1_p2_m1*data_p1_p2_m1 + + coeff_dx_p2_p2_m1*data_p2_p2_m1 + + coeff_dx_m1_m1_0*data_m1_m1_0 + + coeff_dx_0_m1_0*data_0_m1_0 + + coeff_dx_p1_m1_0*data_p1_m1_0 + + coeff_dx_p2_m1_0*data_p2_m1_0 + + coeff_dx_m1_0_0*data_m1_0_0 + + coeff_dx_0_0_0*data_0_0_0 + + coeff_dx_p1_0_0*data_p1_0_0 + + coeff_dx_p2_0_0*data_p2_0_0 + + coeff_dx_m1_p1_0*data_m1_p1_0 + + coeff_dx_0_p1_0*data_0_p1_0 + + coeff_dx_p1_p1_0*data_p1_p1_0 + + coeff_dx_p2_p1_0*data_p2_p1_0 + + coeff_dx_m1_p2_0*data_m1_p2_0 + + coeff_dx_0_p2_0*data_0_p2_0 + + coeff_dx_p1_p2_0*data_p1_p2_0 + + coeff_dx_p2_p2_0*data_p2_p2_0 + + coeff_dx_m1_m1_p1*data_m1_m1_p1 + + coeff_dx_0_m1_p1*data_0_m1_p1 + + coeff_dx_p1_m1_p1*data_p1_m1_p1 + + coeff_dx_p2_m1_p1*data_p2_m1_p1 + + coeff_dx_m1_0_p1*data_m1_0_p1 + + coeff_dx_0_0_p1*data_0_0_p1 + + coeff_dx_p1_0_p1*data_p1_0_p1 + + coeff_dx_p2_0_p1*data_p2_0_p1 + + coeff_dx_m1_p1_p1*data_m1_p1_p1 + + coeff_dx_0_p1_p1*data_0_p1_p1 + + coeff_dx_p1_p1_p1*data_p1_p1_p1 + + coeff_dx_p2_p1_p1*data_p2_p1_p1 + + coeff_dx_m1_p2_p1*data_m1_p2_p1 + + coeff_dx_0_p2_p1*data_0_p2_p1 + + coeff_dx_p1_p2_p1*data_p1_p2_p1 + + coeff_dx_p2_p2_p1*data_p2_p2_p1 + + coeff_dx_m1_m1_p2*data_m1_m1_p2 + + coeff_dx_0_m1_p2*data_0_m1_p2 + + coeff_dx_p1_m1_p2*data_p1_m1_p2 + + coeff_dx_p2_m1_p2*data_p2_m1_p2 + + coeff_dx_m1_0_p2*data_m1_0_p2 + + coeff_dx_0_0_p2*data_0_0_p2 + + coeff_dx_p1_0_p2*data_p1_0_p2 + + coeff_dx_p2_0_p2*data_p2_0_p2 + + coeff_dx_m1_p1_p2*data_m1_p1_p2 + + coeff_dx_0_p1_p2*data_0_p1_p2 + + coeff_dx_p1_p1_p2*data_p1_p1_p2 + + coeff_dx_p2_p1_p2*data_p2_p1_p2 + + coeff_dx_m1_p2_p2*data_m1_p2_p2 + + coeff_dx_0_p2_p2*data_0_p2_p2 + + coeff_dx_p1_p2_p2*data_p1_p2_p2 + + coeff_dx_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dxx.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dxx.compute.c new file mode 100644 index 0000000..4d1c4fb --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dxx.compute.c @@ -0,0 +1,65 @@ +result = + coeff_dxx_m1_m1_m1*data_m1_m1_m1 + + coeff_dxx_0_m1_m1*data_0_m1_m1 + + coeff_dxx_p1_m1_m1*data_p1_m1_m1 + + coeff_dxx_p2_m1_m1*data_p2_m1_m1 + + coeff_dxx_m1_0_m1*data_m1_0_m1 + + coeff_dxx_0_0_m1*data_0_0_m1 + + coeff_dxx_p1_0_m1*data_p1_0_m1 + + coeff_dxx_p2_0_m1*data_p2_0_m1 + + coeff_dxx_m1_p1_m1*data_m1_p1_m1 + + coeff_dxx_0_p1_m1*data_0_p1_m1 + + coeff_dxx_p1_p1_m1*data_p1_p1_m1 + + coeff_dxx_p2_p1_m1*data_p2_p1_m1 + + coeff_dxx_m1_p2_m1*data_m1_p2_m1 + + coeff_dxx_0_p2_m1*data_0_p2_m1 + + coeff_dxx_p1_p2_m1*data_p1_p2_m1 + + coeff_dxx_p2_p2_m1*data_p2_p2_m1 + + coeff_dxx_m1_m1_0*data_m1_m1_0 + + coeff_dxx_0_m1_0*data_0_m1_0 + + coeff_dxx_p1_m1_0*data_p1_m1_0 + + coeff_dxx_p2_m1_0*data_p2_m1_0 + + coeff_dxx_m1_0_0*data_m1_0_0 + + coeff_dxx_0_0_0*data_0_0_0 + + coeff_dxx_p1_0_0*data_p1_0_0 + + coeff_dxx_p2_0_0*data_p2_0_0 + + coeff_dxx_m1_p1_0*data_m1_p1_0 + + coeff_dxx_0_p1_0*data_0_p1_0 + + coeff_dxx_p1_p1_0*data_p1_p1_0 + + coeff_dxx_p2_p1_0*data_p2_p1_0 + + coeff_dxx_m1_p2_0*data_m1_p2_0 + + coeff_dxx_0_p2_0*data_0_p2_0 + + coeff_dxx_p1_p2_0*data_p1_p2_0 + + coeff_dxx_p2_p2_0*data_p2_p2_0 + + coeff_dxx_m1_m1_p1*data_m1_m1_p1 + + coeff_dxx_0_m1_p1*data_0_m1_p1 + + coeff_dxx_p1_m1_p1*data_p1_m1_p1 + + coeff_dxx_p2_m1_p1*data_p2_m1_p1 + + coeff_dxx_m1_0_p1*data_m1_0_p1 + + coeff_dxx_0_0_p1*data_0_0_p1 + + coeff_dxx_p1_0_p1*data_p1_0_p1 + + coeff_dxx_p2_0_p1*data_p2_0_p1 + + coeff_dxx_m1_p1_p1*data_m1_p1_p1 + + coeff_dxx_0_p1_p1*data_0_p1_p1 + + coeff_dxx_p1_p1_p1*data_p1_p1_p1 + + coeff_dxx_p2_p1_p1*data_p2_p1_p1 + + coeff_dxx_m1_p2_p1*data_m1_p2_p1 + + coeff_dxx_0_p2_p1*data_0_p2_p1 + + coeff_dxx_p1_p2_p1*data_p1_p2_p1 + + coeff_dxx_p2_p2_p1*data_p2_p2_p1 + + coeff_dxx_m1_m1_p2*data_m1_m1_p2 + + coeff_dxx_0_m1_p2*data_0_m1_p2 + + coeff_dxx_p1_m1_p2*data_p1_m1_p2 + + coeff_dxx_p2_m1_p2*data_p2_m1_p2 + + coeff_dxx_m1_0_p2*data_m1_0_p2 + + coeff_dxx_0_0_p2*data_0_0_p2 + + coeff_dxx_p1_0_p2*data_p1_0_p2 + + coeff_dxx_p2_0_p2*data_p2_0_p2 + + coeff_dxx_m1_p1_p2*data_m1_p1_p2 + + coeff_dxx_0_p1_p2*data_0_p1_p2 + + coeff_dxx_p1_p1_p2*data_p1_p1_p2 + + coeff_dxx_p2_p1_p2*data_p2_p1_p2 + + coeff_dxx_m1_p2_p2*data_m1_p2_p2 + + coeff_dxx_0_p2_p2*data_0_p2_p2 + + coeff_dxx_p1_p2_p2*data_p1_p2_p2 + + coeff_dxx_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dxy.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dxy.compute.c new file mode 100644 index 0000000..16c2e90 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dxy.compute.c @@ -0,0 +1,65 @@ +result = + coeff_dxy_m1_m1_m1*data_m1_m1_m1 + + coeff_dxy_0_m1_m1*data_0_m1_m1 + + coeff_dxy_p1_m1_m1*data_p1_m1_m1 + + coeff_dxy_p2_m1_m1*data_p2_m1_m1 + + coeff_dxy_m1_0_m1*data_m1_0_m1 + + coeff_dxy_0_0_m1*data_0_0_m1 + + coeff_dxy_p1_0_m1*data_p1_0_m1 + + coeff_dxy_p2_0_m1*data_p2_0_m1 + + coeff_dxy_m1_p1_m1*data_m1_p1_m1 + + coeff_dxy_0_p1_m1*data_0_p1_m1 + + coeff_dxy_p1_p1_m1*data_p1_p1_m1 + + coeff_dxy_p2_p1_m1*data_p2_p1_m1 + + coeff_dxy_m1_p2_m1*data_m1_p2_m1 + + coeff_dxy_0_p2_m1*data_0_p2_m1 + + coeff_dxy_p1_p2_m1*data_p1_p2_m1 + + coeff_dxy_p2_p2_m1*data_p2_p2_m1 + + coeff_dxy_m1_m1_0*data_m1_m1_0 + + coeff_dxy_0_m1_0*data_0_m1_0 + + coeff_dxy_p1_m1_0*data_p1_m1_0 + + coeff_dxy_p2_m1_0*data_p2_m1_0 + + coeff_dxy_m1_0_0*data_m1_0_0 + + coeff_dxy_0_0_0*data_0_0_0 + + coeff_dxy_p1_0_0*data_p1_0_0 + + coeff_dxy_p2_0_0*data_p2_0_0 + + coeff_dxy_m1_p1_0*data_m1_p1_0 + + coeff_dxy_0_p1_0*data_0_p1_0 + + coeff_dxy_p1_p1_0*data_p1_p1_0 + + coeff_dxy_p2_p1_0*data_p2_p1_0 + + coeff_dxy_m1_p2_0*data_m1_p2_0 + + coeff_dxy_0_p2_0*data_0_p2_0 + + coeff_dxy_p1_p2_0*data_p1_p2_0 + + coeff_dxy_p2_p2_0*data_p2_p2_0 + + coeff_dxy_m1_m1_p1*data_m1_m1_p1 + + coeff_dxy_0_m1_p1*data_0_m1_p1 + + coeff_dxy_p1_m1_p1*data_p1_m1_p1 + + coeff_dxy_p2_m1_p1*data_p2_m1_p1 + + coeff_dxy_m1_0_p1*data_m1_0_p1 + + coeff_dxy_0_0_p1*data_0_0_p1 + + coeff_dxy_p1_0_p1*data_p1_0_p1 + + coeff_dxy_p2_0_p1*data_p2_0_p1 + + coeff_dxy_m1_p1_p1*data_m1_p1_p1 + + coeff_dxy_0_p1_p1*data_0_p1_p1 + + coeff_dxy_p1_p1_p1*data_p1_p1_p1 + + coeff_dxy_p2_p1_p1*data_p2_p1_p1 + + coeff_dxy_m1_p2_p1*data_m1_p2_p1 + + coeff_dxy_0_p2_p1*data_0_p2_p1 + + coeff_dxy_p1_p2_p1*data_p1_p2_p1 + + coeff_dxy_p2_p2_p1*data_p2_p2_p1 + + coeff_dxy_m1_m1_p2*data_m1_m1_p2 + + coeff_dxy_0_m1_p2*data_0_m1_p2 + + coeff_dxy_p1_m1_p2*data_p1_m1_p2 + + coeff_dxy_p2_m1_p2*data_p2_m1_p2 + + coeff_dxy_m1_0_p2*data_m1_0_p2 + + coeff_dxy_0_0_p2*data_0_0_p2 + + coeff_dxy_p1_0_p2*data_p1_0_p2 + + coeff_dxy_p2_0_p2*data_p2_0_p2 + + coeff_dxy_m1_p1_p2*data_m1_p1_p2 + + coeff_dxy_0_p1_p2*data_0_p1_p2 + + coeff_dxy_p1_p1_p2*data_p1_p1_p2 + + coeff_dxy_p2_p1_p2*data_p2_p1_p2 + + coeff_dxy_m1_p2_p2*data_m1_p2_p2 + + coeff_dxy_0_p2_p2*data_0_p2_p2 + + coeff_dxy_p1_p2_p2*data_p1_p2_p2 + + coeff_dxy_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dxz.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dxz.compute.c new file mode 100644 index 0000000..babbf0f --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dxz.compute.c @@ -0,0 +1,65 @@ +result = + coeff_dxz_m1_m1_m1*data_m1_m1_m1 + + coeff_dxz_0_m1_m1*data_0_m1_m1 + + coeff_dxz_p1_m1_m1*data_p1_m1_m1 + + coeff_dxz_p2_m1_m1*data_p2_m1_m1 + + coeff_dxz_m1_0_m1*data_m1_0_m1 + + coeff_dxz_0_0_m1*data_0_0_m1 + + coeff_dxz_p1_0_m1*data_p1_0_m1 + + coeff_dxz_p2_0_m1*data_p2_0_m1 + + coeff_dxz_m1_p1_m1*data_m1_p1_m1 + + coeff_dxz_0_p1_m1*data_0_p1_m1 + + coeff_dxz_p1_p1_m1*data_p1_p1_m1 + + coeff_dxz_p2_p1_m1*data_p2_p1_m1 + + coeff_dxz_m1_p2_m1*data_m1_p2_m1 + + coeff_dxz_0_p2_m1*data_0_p2_m1 + + coeff_dxz_p1_p2_m1*data_p1_p2_m1 + + coeff_dxz_p2_p2_m1*data_p2_p2_m1 + + coeff_dxz_m1_m1_0*data_m1_m1_0 + + coeff_dxz_0_m1_0*data_0_m1_0 + + coeff_dxz_p1_m1_0*data_p1_m1_0 + + coeff_dxz_p2_m1_0*data_p2_m1_0 + + coeff_dxz_m1_0_0*data_m1_0_0 + + coeff_dxz_0_0_0*data_0_0_0 + + coeff_dxz_p1_0_0*data_p1_0_0 + + coeff_dxz_p2_0_0*data_p2_0_0 + + coeff_dxz_m1_p1_0*data_m1_p1_0 + + coeff_dxz_0_p1_0*data_0_p1_0 + + coeff_dxz_p1_p1_0*data_p1_p1_0 + + coeff_dxz_p2_p1_0*data_p2_p1_0 + + coeff_dxz_m1_p2_0*data_m1_p2_0 + + coeff_dxz_0_p2_0*data_0_p2_0 + + coeff_dxz_p1_p2_0*data_p1_p2_0 + + coeff_dxz_p2_p2_0*data_p2_p2_0 + + coeff_dxz_m1_m1_p1*data_m1_m1_p1 + + coeff_dxz_0_m1_p1*data_0_m1_p1 + + coeff_dxz_p1_m1_p1*data_p1_m1_p1 + + coeff_dxz_p2_m1_p1*data_p2_m1_p1 + + coeff_dxz_m1_0_p1*data_m1_0_p1 + + coeff_dxz_0_0_p1*data_0_0_p1 + + coeff_dxz_p1_0_p1*data_p1_0_p1 + + coeff_dxz_p2_0_p1*data_p2_0_p1 + + coeff_dxz_m1_p1_p1*data_m1_p1_p1 + + coeff_dxz_0_p1_p1*data_0_p1_p1 + + coeff_dxz_p1_p1_p1*data_p1_p1_p1 + + coeff_dxz_p2_p1_p1*data_p2_p1_p1 + + coeff_dxz_m1_p2_p1*data_m1_p2_p1 + + coeff_dxz_0_p2_p1*data_0_p2_p1 + + coeff_dxz_p1_p2_p1*data_p1_p2_p1 + + coeff_dxz_p2_p2_p1*data_p2_p2_p1 + + coeff_dxz_m1_m1_p2*data_m1_m1_p2 + + coeff_dxz_0_m1_p2*data_0_m1_p2 + + coeff_dxz_p1_m1_p2*data_p1_m1_p2 + + coeff_dxz_p2_m1_p2*data_p2_m1_p2 + + coeff_dxz_m1_0_p2*data_m1_0_p2 + + coeff_dxz_0_0_p2*data_0_0_p2 + + coeff_dxz_p1_0_p2*data_p1_0_p2 + + coeff_dxz_p2_0_p2*data_p2_0_p2 + + coeff_dxz_m1_p1_p2*data_m1_p1_p2 + + coeff_dxz_0_p1_p2*data_0_p1_p2 + + coeff_dxz_p1_p1_p2*data_p1_p1_p2 + + coeff_dxz_p2_p1_p2*data_p2_p1_p2 + + coeff_dxz_m1_p2_p2*data_m1_p2_p2 + + coeff_dxz_0_p2_p2*data_0_p2_p2 + + coeff_dxz_p1_p2_p2*data_p1_p2_p2 + + coeff_dxz_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dy.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dy.compute.c new file mode 100644 index 0000000..4dd8505 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dy.compute.c @@ -0,0 +1,65 @@ +result = + coeff_dy_m1_m1_m1*data_m1_m1_m1 + + coeff_dy_0_m1_m1*data_0_m1_m1 + + coeff_dy_p1_m1_m1*data_p1_m1_m1 + + coeff_dy_p2_m1_m1*data_p2_m1_m1 + + coeff_dy_m1_0_m1*data_m1_0_m1 + + coeff_dy_0_0_m1*data_0_0_m1 + + coeff_dy_p1_0_m1*data_p1_0_m1 + + coeff_dy_p2_0_m1*data_p2_0_m1 + + coeff_dy_m1_p1_m1*data_m1_p1_m1 + + coeff_dy_0_p1_m1*data_0_p1_m1 + + coeff_dy_p1_p1_m1*data_p1_p1_m1 + + coeff_dy_p2_p1_m1*data_p2_p1_m1 + + coeff_dy_m1_p2_m1*data_m1_p2_m1 + + coeff_dy_0_p2_m1*data_0_p2_m1 + + coeff_dy_p1_p2_m1*data_p1_p2_m1 + + coeff_dy_p2_p2_m1*data_p2_p2_m1 + + coeff_dy_m1_m1_0*data_m1_m1_0 + + coeff_dy_0_m1_0*data_0_m1_0 + + coeff_dy_p1_m1_0*data_p1_m1_0 + + coeff_dy_p2_m1_0*data_p2_m1_0 + + coeff_dy_m1_0_0*data_m1_0_0 + + coeff_dy_0_0_0*data_0_0_0 + + coeff_dy_p1_0_0*data_p1_0_0 + + coeff_dy_p2_0_0*data_p2_0_0 + + coeff_dy_m1_p1_0*data_m1_p1_0 + + coeff_dy_0_p1_0*data_0_p1_0 + + coeff_dy_p1_p1_0*data_p1_p1_0 + + coeff_dy_p2_p1_0*data_p2_p1_0 + + coeff_dy_m1_p2_0*data_m1_p2_0 + + coeff_dy_0_p2_0*data_0_p2_0 + + coeff_dy_p1_p2_0*data_p1_p2_0 + + coeff_dy_p2_p2_0*data_p2_p2_0 + + coeff_dy_m1_m1_p1*data_m1_m1_p1 + + coeff_dy_0_m1_p1*data_0_m1_p1 + + coeff_dy_p1_m1_p1*data_p1_m1_p1 + + coeff_dy_p2_m1_p1*data_p2_m1_p1 + + coeff_dy_m1_0_p1*data_m1_0_p1 + + coeff_dy_0_0_p1*data_0_0_p1 + + coeff_dy_p1_0_p1*data_p1_0_p1 + + coeff_dy_p2_0_p1*data_p2_0_p1 + + coeff_dy_m1_p1_p1*data_m1_p1_p1 + + coeff_dy_0_p1_p1*data_0_p1_p1 + + coeff_dy_p1_p1_p1*data_p1_p1_p1 + + coeff_dy_p2_p1_p1*data_p2_p1_p1 + + coeff_dy_m1_p2_p1*data_m1_p2_p1 + + coeff_dy_0_p2_p1*data_0_p2_p1 + + coeff_dy_p1_p2_p1*data_p1_p2_p1 + + coeff_dy_p2_p2_p1*data_p2_p2_p1 + + coeff_dy_m1_m1_p2*data_m1_m1_p2 + + coeff_dy_0_m1_p2*data_0_m1_p2 + + coeff_dy_p1_m1_p2*data_p1_m1_p2 + + coeff_dy_p2_m1_p2*data_p2_m1_p2 + + coeff_dy_m1_0_p2*data_m1_0_p2 + + coeff_dy_0_0_p2*data_0_0_p2 + + coeff_dy_p1_0_p2*data_p1_0_p2 + + coeff_dy_p2_0_p2*data_p2_0_p2 + + coeff_dy_m1_p1_p2*data_m1_p1_p2 + + coeff_dy_0_p1_p2*data_0_p1_p2 + + coeff_dy_p1_p1_p2*data_p1_p1_p2 + + coeff_dy_p2_p1_p2*data_p2_p1_p2 + + coeff_dy_m1_p2_p2*data_m1_p2_p2 + + coeff_dy_0_p2_p2*data_0_p2_p2 + + coeff_dy_p1_p2_p2*data_p1_p2_p2 + + coeff_dy_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dyy.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dyy.compute.c new file mode 100644 index 0000000..75357b5 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dyy.compute.c @@ -0,0 +1,65 @@ +result = + coeff_dyy_m1_m1_m1*data_m1_m1_m1 + + coeff_dyy_0_m1_m1*data_0_m1_m1 + + coeff_dyy_p1_m1_m1*data_p1_m1_m1 + + coeff_dyy_p2_m1_m1*data_p2_m1_m1 + + coeff_dyy_m1_0_m1*data_m1_0_m1 + + coeff_dyy_0_0_m1*data_0_0_m1 + + coeff_dyy_p1_0_m1*data_p1_0_m1 + + coeff_dyy_p2_0_m1*data_p2_0_m1 + + coeff_dyy_m1_p1_m1*data_m1_p1_m1 + + coeff_dyy_0_p1_m1*data_0_p1_m1 + + coeff_dyy_p1_p1_m1*data_p1_p1_m1 + + coeff_dyy_p2_p1_m1*data_p2_p1_m1 + + coeff_dyy_m1_p2_m1*data_m1_p2_m1 + + coeff_dyy_0_p2_m1*data_0_p2_m1 + + coeff_dyy_p1_p2_m1*data_p1_p2_m1 + + coeff_dyy_p2_p2_m1*data_p2_p2_m1 + + coeff_dyy_m1_m1_0*data_m1_m1_0 + + coeff_dyy_0_m1_0*data_0_m1_0 + + coeff_dyy_p1_m1_0*data_p1_m1_0 + + coeff_dyy_p2_m1_0*data_p2_m1_0 + + coeff_dyy_m1_0_0*data_m1_0_0 + + coeff_dyy_0_0_0*data_0_0_0 + + coeff_dyy_p1_0_0*data_p1_0_0 + + coeff_dyy_p2_0_0*data_p2_0_0 + + coeff_dyy_m1_p1_0*data_m1_p1_0 + + coeff_dyy_0_p1_0*data_0_p1_0 + + coeff_dyy_p1_p1_0*data_p1_p1_0 + + coeff_dyy_p2_p1_0*data_p2_p1_0 + + coeff_dyy_m1_p2_0*data_m1_p2_0 + + coeff_dyy_0_p2_0*data_0_p2_0 + + coeff_dyy_p1_p2_0*data_p1_p2_0 + + coeff_dyy_p2_p2_0*data_p2_p2_0 + + coeff_dyy_m1_m1_p1*data_m1_m1_p1 + + coeff_dyy_0_m1_p1*data_0_m1_p1 + + coeff_dyy_p1_m1_p1*data_p1_m1_p1 + + coeff_dyy_p2_m1_p1*data_p2_m1_p1 + + coeff_dyy_m1_0_p1*data_m1_0_p1 + + coeff_dyy_0_0_p1*data_0_0_p1 + + coeff_dyy_p1_0_p1*data_p1_0_p1 + + coeff_dyy_p2_0_p1*data_p2_0_p1 + + coeff_dyy_m1_p1_p1*data_m1_p1_p1 + + coeff_dyy_0_p1_p1*data_0_p1_p1 + + coeff_dyy_p1_p1_p1*data_p1_p1_p1 + + coeff_dyy_p2_p1_p1*data_p2_p1_p1 + + coeff_dyy_m1_p2_p1*data_m1_p2_p1 + + coeff_dyy_0_p2_p1*data_0_p2_p1 + + coeff_dyy_p1_p2_p1*data_p1_p2_p1 + + coeff_dyy_p2_p2_p1*data_p2_p2_p1 + + coeff_dyy_m1_m1_p2*data_m1_m1_p2 + + coeff_dyy_0_m1_p2*data_0_m1_p2 + + coeff_dyy_p1_m1_p2*data_p1_m1_p2 + + coeff_dyy_p2_m1_p2*data_p2_m1_p2 + + coeff_dyy_m1_0_p2*data_m1_0_p2 + + coeff_dyy_0_0_p2*data_0_0_p2 + + coeff_dyy_p1_0_p2*data_p1_0_p2 + + coeff_dyy_p2_0_p2*data_p2_0_p2 + + coeff_dyy_m1_p1_p2*data_m1_p1_p2 + + coeff_dyy_0_p1_p2*data_0_p1_p2 + + coeff_dyy_p1_p1_p2*data_p1_p1_p2 + + coeff_dyy_p2_p1_p2*data_p2_p1_p2 + + coeff_dyy_m1_p2_p2*data_m1_p2_p2 + + coeff_dyy_0_p2_p2*data_0_p2_p2 + + coeff_dyy_p1_p2_p2*data_p1_p2_p2 + + coeff_dyy_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dyz.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dyz.compute.c new file mode 100644 index 0000000..247cd6e --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dyz.compute.c @@ -0,0 +1,65 @@ +result = + coeff_dyz_m1_m1_m1*data_m1_m1_m1 + + coeff_dyz_0_m1_m1*data_0_m1_m1 + + coeff_dyz_p1_m1_m1*data_p1_m1_m1 + + coeff_dyz_p2_m1_m1*data_p2_m1_m1 + + coeff_dyz_m1_0_m1*data_m1_0_m1 + + coeff_dyz_0_0_m1*data_0_0_m1 + + coeff_dyz_p1_0_m1*data_p1_0_m1 + + coeff_dyz_p2_0_m1*data_p2_0_m1 + + coeff_dyz_m1_p1_m1*data_m1_p1_m1 + + coeff_dyz_0_p1_m1*data_0_p1_m1 + + coeff_dyz_p1_p1_m1*data_p1_p1_m1 + + coeff_dyz_p2_p1_m1*data_p2_p1_m1 + + coeff_dyz_m1_p2_m1*data_m1_p2_m1 + + coeff_dyz_0_p2_m1*data_0_p2_m1 + + coeff_dyz_p1_p2_m1*data_p1_p2_m1 + + coeff_dyz_p2_p2_m1*data_p2_p2_m1 + + coeff_dyz_m1_m1_0*data_m1_m1_0 + + coeff_dyz_0_m1_0*data_0_m1_0 + + coeff_dyz_p1_m1_0*data_p1_m1_0 + + coeff_dyz_p2_m1_0*data_p2_m1_0 + + coeff_dyz_m1_0_0*data_m1_0_0 + + coeff_dyz_0_0_0*data_0_0_0 + + coeff_dyz_p1_0_0*data_p1_0_0 + + coeff_dyz_p2_0_0*data_p2_0_0 + + coeff_dyz_m1_p1_0*data_m1_p1_0 + + coeff_dyz_0_p1_0*data_0_p1_0 + + coeff_dyz_p1_p1_0*data_p1_p1_0 + + coeff_dyz_p2_p1_0*data_p2_p1_0 + + coeff_dyz_m1_p2_0*data_m1_p2_0 + + coeff_dyz_0_p2_0*data_0_p2_0 + + coeff_dyz_p1_p2_0*data_p1_p2_0 + + coeff_dyz_p2_p2_0*data_p2_p2_0 + + coeff_dyz_m1_m1_p1*data_m1_m1_p1 + + coeff_dyz_0_m1_p1*data_0_m1_p1 + + coeff_dyz_p1_m1_p1*data_p1_m1_p1 + + coeff_dyz_p2_m1_p1*data_p2_m1_p1 + + coeff_dyz_m1_0_p1*data_m1_0_p1 + + coeff_dyz_0_0_p1*data_0_0_p1 + + coeff_dyz_p1_0_p1*data_p1_0_p1 + + coeff_dyz_p2_0_p1*data_p2_0_p1 + + coeff_dyz_m1_p1_p1*data_m1_p1_p1 + + coeff_dyz_0_p1_p1*data_0_p1_p1 + + coeff_dyz_p1_p1_p1*data_p1_p1_p1 + + coeff_dyz_p2_p1_p1*data_p2_p1_p1 + + coeff_dyz_m1_p2_p1*data_m1_p2_p1 + + coeff_dyz_0_p2_p1*data_0_p2_p1 + + coeff_dyz_p1_p2_p1*data_p1_p2_p1 + + coeff_dyz_p2_p2_p1*data_p2_p2_p1 + + coeff_dyz_m1_m1_p2*data_m1_m1_p2 + + coeff_dyz_0_m1_p2*data_0_m1_p2 + + coeff_dyz_p1_m1_p2*data_p1_m1_p2 + + coeff_dyz_p2_m1_p2*data_p2_m1_p2 + + coeff_dyz_m1_0_p2*data_m1_0_p2 + + coeff_dyz_0_0_p2*data_0_0_p2 + + coeff_dyz_p1_0_p2*data_p1_0_p2 + + coeff_dyz_p2_0_p2*data_p2_0_p2 + + coeff_dyz_m1_p1_p2*data_m1_p1_p2 + + coeff_dyz_0_p1_p2*data_0_p1_p2 + + coeff_dyz_p1_p1_p2*data_p1_p1_p2 + + coeff_dyz_p2_p1_p2*data_p2_p1_p2 + + coeff_dyz_m1_p2_p2*data_m1_p2_p2 + + coeff_dyz_0_p2_p2*data_0_p2_p2 + + coeff_dyz_p1_p2_p2*data_p1_p2_p2 + + coeff_dyz_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dz.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dz.compute.c new file mode 100644 index 0000000..7bb7e24 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dz.compute.c @@ -0,0 +1,65 @@ +result = + coeff_dz_m1_m1_m1*data_m1_m1_m1 + + coeff_dz_0_m1_m1*data_0_m1_m1 + + coeff_dz_p1_m1_m1*data_p1_m1_m1 + + coeff_dz_p2_m1_m1*data_p2_m1_m1 + + coeff_dz_m1_0_m1*data_m1_0_m1 + + coeff_dz_0_0_m1*data_0_0_m1 + + coeff_dz_p1_0_m1*data_p1_0_m1 + + coeff_dz_p2_0_m1*data_p2_0_m1 + + coeff_dz_m1_p1_m1*data_m1_p1_m1 + + coeff_dz_0_p1_m1*data_0_p1_m1 + + coeff_dz_p1_p1_m1*data_p1_p1_m1 + + coeff_dz_p2_p1_m1*data_p2_p1_m1 + + coeff_dz_m1_p2_m1*data_m1_p2_m1 + + coeff_dz_0_p2_m1*data_0_p2_m1 + + coeff_dz_p1_p2_m1*data_p1_p2_m1 + + coeff_dz_p2_p2_m1*data_p2_p2_m1 + + coeff_dz_m1_m1_0*data_m1_m1_0 + + coeff_dz_0_m1_0*data_0_m1_0 + + coeff_dz_p1_m1_0*data_p1_m1_0 + + coeff_dz_p2_m1_0*data_p2_m1_0 + + coeff_dz_m1_0_0*data_m1_0_0 + + coeff_dz_0_0_0*data_0_0_0 + + coeff_dz_p1_0_0*data_p1_0_0 + + coeff_dz_p2_0_0*data_p2_0_0 + + coeff_dz_m1_p1_0*data_m1_p1_0 + + coeff_dz_0_p1_0*data_0_p1_0 + + coeff_dz_p1_p1_0*data_p1_p1_0 + + coeff_dz_p2_p1_0*data_p2_p1_0 + + coeff_dz_m1_p2_0*data_m1_p2_0 + + coeff_dz_0_p2_0*data_0_p2_0 + + coeff_dz_p1_p2_0*data_p1_p2_0 + + coeff_dz_p2_p2_0*data_p2_p2_0 + + coeff_dz_m1_m1_p1*data_m1_m1_p1 + + coeff_dz_0_m1_p1*data_0_m1_p1 + + coeff_dz_p1_m1_p1*data_p1_m1_p1 + + coeff_dz_p2_m1_p1*data_p2_m1_p1 + + coeff_dz_m1_0_p1*data_m1_0_p1 + + coeff_dz_0_0_p1*data_0_0_p1 + + coeff_dz_p1_0_p1*data_p1_0_p1 + + coeff_dz_p2_0_p1*data_p2_0_p1 + + coeff_dz_m1_p1_p1*data_m1_p1_p1 + + coeff_dz_0_p1_p1*data_0_p1_p1 + + coeff_dz_p1_p1_p1*data_p1_p1_p1 + + coeff_dz_p2_p1_p1*data_p2_p1_p1 + + coeff_dz_m1_p2_p1*data_m1_p2_p1 + + coeff_dz_0_p2_p1*data_0_p2_p1 + + coeff_dz_p1_p2_p1*data_p1_p2_p1 + + coeff_dz_p2_p2_p1*data_p2_p2_p1 + + coeff_dz_m1_m1_p2*data_m1_m1_p2 + + coeff_dz_0_m1_p2*data_0_m1_p2 + + coeff_dz_p1_m1_p2*data_p1_m1_p2 + + coeff_dz_p2_m1_p2*data_p2_m1_p2 + + coeff_dz_m1_0_p2*data_m1_0_p2 + + coeff_dz_0_0_p2*data_0_0_p2 + + coeff_dz_p1_0_p2*data_p1_0_p2 + + coeff_dz_p2_0_p2*data_p2_0_p2 + + coeff_dz_m1_p1_p2*data_m1_p1_p2 + + coeff_dz_0_p1_p2*data_0_p1_p2 + + coeff_dz_p1_p1_p2*data_p1_p1_p2 + + coeff_dz_p2_p1_p2*data_p2_p1_p2 + + coeff_dz_m1_p2_p2*data_m1_p2_p2 + + coeff_dz_0_p2_p2*data_0_p2_p2 + + coeff_dz_p1_p2_p2*data_p1_p2_p2 + + coeff_dz_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dzz.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dzz.compute.c new file mode 100644 index 0000000..523242a --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size4/interp-dzz.compute.c @@ -0,0 +1,65 @@ +result = + coeff_dzz_m1_m1_m1*data_m1_m1_m1 + + coeff_dzz_0_m1_m1*data_0_m1_m1 + + coeff_dzz_p1_m1_m1*data_p1_m1_m1 + + coeff_dzz_p2_m1_m1*data_p2_m1_m1 + + coeff_dzz_m1_0_m1*data_m1_0_m1 + + coeff_dzz_0_0_m1*data_0_0_m1 + + coeff_dzz_p1_0_m1*data_p1_0_m1 + + coeff_dzz_p2_0_m1*data_p2_0_m1 + + coeff_dzz_m1_p1_m1*data_m1_p1_m1 + + coeff_dzz_0_p1_m1*data_0_p1_m1 + + coeff_dzz_p1_p1_m1*data_p1_p1_m1 + + coeff_dzz_p2_p1_m1*data_p2_p1_m1 + + coeff_dzz_m1_p2_m1*data_m1_p2_m1 + + coeff_dzz_0_p2_m1*data_0_p2_m1 + + coeff_dzz_p1_p2_m1*data_p1_p2_m1 + + coeff_dzz_p2_p2_m1*data_p2_p2_m1 + + coeff_dzz_m1_m1_0*data_m1_m1_0 + + coeff_dzz_0_m1_0*data_0_m1_0 + + coeff_dzz_p1_m1_0*data_p1_m1_0 + + coeff_dzz_p2_m1_0*data_p2_m1_0 + + coeff_dzz_m1_0_0*data_m1_0_0 + + coeff_dzz_0_0_0*data_0_0_0 + + coeff_dzz_p1_0_0*data_p1_0_0 + + coeff_dzz_p2_0_0*data_p2_0_0 + + coeff_dzz_m1_p1_0*data_m1_p1_0 + + coeff_dzz_0_p1_0*data_0_p1_0 + + coeff_dzz_p1_p1_0*data_p1_p1_0 + + coeff_dzz_p2_p1_0*data_p2_p1_0 + + coeff_dzz_m1_p2_0*data_m1_p2_0 + + coeff_dzz_0_p2_0*data_0_p2_0 + + coeff_dzz_p1_p2_0*data_p1_p2_0 + + coeff_dzz_p2_p2_0*data_p2_p2_0 + + coeff_dzz_m1_m1_p1*data_m1_m1_p1 + + coeff_dzz_0_m1_p1*data_0_m1_p1 + + coeff_dzz_p1_m1_p1*data_p1_m1_p1 + + coeff_dzz_p2_m1_p1*data_p2_m1_p1 + + coeff_dzz_m1_0_p1*data_m1_0_p1 + + coeff_dzz_0_0_p1*data_0_0_p1 + + coeff_dzz_p1_0_p1*data_p1_0_p1 + + coeff_dzz_p2_0_p1*data_p2_0_p1 + + coeff_dzz_m1_p1_p1*data_m1_p1_p1 + + coeff_dzz_0_p1_p1*data_0_p1_p1 + + coeff_dzz_p1_p1_p1*data_p1_p1_p1 + + coeff_dzz_p2_p1_p1*data_p2_p1_p1 + + coeff_dzz_m1_p2_p1*data_m1_p2_p1 + + coeff_dzz_0_p2_p1*data_0_p2_p1 + + coeff_dzz_p1_p2_p1*data_p1_p2_p1 + + coeff_dzz_p2_p2_p1*data_p2_p2_p1 + + coeff_dzz_m1_m1_p2*data_m1_m1_p2 + + coeff_dzz_0_m1_p2*data_0_m1_p2 + + coeff_dzz_p1_m1_p2*data_p1_m1_p2 + + coeff_dzz_p2_m1_p2*data_p2_m1_p2 + + coeff_dzz_m1_0_p2*data_m1_0_p2 + + coeff_dzz_0_0_p2*data_0_0_p2 + + coeff_dzz_p1_0_p2*data_p1_0_p2 + + coeff_dzz_p2_0_p2*data_p2_0_p2 + + coeff_dzz_m1_p1_p2*data_m1_p1_p2 + + coeff_dzz_0_p1_p2*data_0_p1_p2 + + coeff_dzz_p1_p1_p2*data_p1_p1_p2 + + coeff_dzz_p2_p1_p2*data_p2_p1_p2 + + coeff_dzz_m1_p2_p2*data_m1_p2_p2 + + coeff_dzz_0_p2_p2*data_0_p2_p2 + + coeff_dzz_p1_p2_p2*data_p1_p2_p2 + + coeff_dzz_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-I.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-I.dcl.c new file mode 100644 index 0000000..f491306 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-I.dcl.c @@ -0,0 +1,125 @@ +fp coeff_I_m2_m2_m2, + coeff_I_m1_m2_m2, + coeff_I_0_m2_m2, + coeff_I_p1_m2_m2, + coeff_I_p2_m2_m2, + coeff_I_m2_m1_m2, + coeff_I_m1_m1_m2, + coeff_I_0_m1_m2, + coeff_I_p1_m1_m2, + coeff_I_p2_m1_m2, + coeff_I_m2_0_m2, + coeff_I_m1_0_m2, + coeff_I_0_0_m2, + coeff_I_p1_0_m2, + coeff_I_p2_0_m2, + coeff_I_m2_p1_m2, + coeff_I_m1_p1_m2, + coeff_I_0_p1_m2, + coeff_I_p1_p1_m2, + coeff_I_p2_p1_m2, + coeff_I_m2_p2_m2, + coeff_I_m1_p2_m2, + coeff_I_0_p2_m2, + coeff_I_p1_p2_m2, + coeff_I_p2_p2_m2, + coeff_I_m2_m2_m1, + coeff_I_m1_m2_m1, + coeff_I_0_m2_m1, + coeff_I_p1_m2_m1, + coeff_I_p2_m2_m1, + coeff_I_m2_m1_m1, + coeff_I_m1_m1_m1, + coeff_I_0_m1_m1, + coeff_I_p1_m1_m1, + coeff_I_p2_m1_m1, + coeff_I_m2_0_m1, + coeff_I_m1_0_m1, + coeff_I_0_0_m1, + coeff_I_p1_0_m1, + coeff_I_p2_0_m1, + coeff_I_m2_p1_m1, + coeff_I_m1_p1_m1, + coeff_I_0_p1_m1, + coeff_I_p1_p1_m1, + coeff_I_p2_p1_m1, + coeff_I_m2_p2_m1, + coeff_I_m1_p2_m1, + coeff_I_0_p2_m1, + coeff_I_p1_p2_m1, + coeff_I_p2_p2_m1, + coeff_I_m2_m2_0, + coeff_I_m1_m2_0, + coeff_I_0_m2_0, + coeff_I_p1_m2_0, + coeff_I_p2_m2_0, + coeff_I_m2_m1_0, + coeff_I_m1_m1_0, + coeff_I_0_m1_0, + coeff_I_p1_m1_0, + coeff_I_p2_m1_0, + coeff_I_m2_0_0, + coeff_I_m1_0_0, + coeff_I_0_0_0, + coeff_I_p1_0_0, + coeff_I_p2_0_0, + coeff_I_m2_p1_0, + coeff_I_m1_p1_0, + coeff_I_0_p1_0, + coeff_I_p1_p1_0, + coeff_I_p2_p1_0, + coeff_I_m2_p2_0, + coeff_I_m1_p2_0, + coeff_I_0_p2_0, + coeff_I_p1_p2_0, + coeff_I_p2_p2_0, + coeff_I_m2_m2_p1, + coeff_I_m1_m2_p1, + coeff_I_0_m2_p1, + coeff_I_p1_m2_p1, + coeff_I_p2_m2_p1, + coeff_I_m2_m1_p1, + coeff_I_m1_m1_p1, + coeff_I_0_m1_p1, + coeff_I_p1_m1_p1, + coeff_I_p2_m1_p1, + coeff_I_m2_0_p1, + coeff_I_m1_0_p1, + coeff_I_0_0_p1, + coeff_I_p1_0_p1, + coeff_I_p2_0_p1, + coeff_I_m2_p1_p1, + coeff_I_m1_p1_p1, + coeff_I_0_p1_p1, + coeff_I_p1_p1_p1, + coeff_I_p2_p1_p1, + coeff_I_m2_p2_p1, + coeff_I_m1_p2_p1, + coeff_I_0_p2_p1, + coeff_I_p1_p2_p1, + coeff_I_p2_p2_p1, + coeff_I_m2_m2_p2, + coeff_I_m1_m2_p2, + coeff_I_0_m2_p2, + coeff_I_p1_m2_p2, + coeff_I_p2_m2_p2, + coeff_I_m2_m1_p2, + coeff_I_m1_m1_p2, + coeff_I_0_m1_p2, + coeff_I_p1_m1_p2, + coeff_I_p2_m1_p2, + coeff_I_m2_0_p2, + coeff_I_m1_0_p2, + coeff_I_0_0_p2, + coeff_I_p1_0_p2, + coeff_I_p2_0_p2, + coeff_I_m2_p1_p2, + coeff_I_m1_p1_p2, + coeff_I_0_p1_p2, + coeff_I_p1_p1_p2, + coeff_I_p2_p1_p2, + coeff_I_m2_p2_p2, + coeff_I_m1_p2_p2, + coeff_I_0_p2_p2, + coeff_I_p1_p2_p2, + coeff_I_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-I.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-I.store.c new file mode 100644 index 0000000..cb80c36 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-I.store.c @@ -0,0 +1,125 @@ +COEFF(-2,-2,-2) = coeff_I_m2_m2_m2; +COEFF(-1,-2,-2) = coeff_I_m1_m2_m2; +COEFF(0,-2,-2) = coeff_I_0_m2_m2; +COEFF(1,-2,-2) = coeff_I_p1_m2_m2; +COEFF(2,-2,-2) = coeff_I_p2_m2_m2; +COEFF(-2,-1,-2) = coeff_I_m2_m1_m2; +COEFF(-1,-1,-2) = coeff_I_m1_m1_m2; +COEFF(0,-1,-2) = coeff_I_0_m1_m2; +COEFF(1,-1,-2) = coeff_I_p1_m1_m2; +COEFF(2,-1,-2) = coeff_I_p2_m1_m2; +COEFF(-2,0,-2) = coeff_I_m2_0_m2; +COEFF(-1,0,-2) = coeff_I_m1_0_m2; +COEFF(0,0,-2) = coeff_I_0_0_m2; +COEFF(1,0,-2) = coeff_I_p1_0_m2; +COEFF(2,0,-2) = coeff_I_p2_0_m2; +COEFF(-2,1,-2) = coeff_I_m2_p1_m2; +COEFF(-1,1,-2) = coeff_I_m1_p1_m2; +COEFF(0,1,-2) = coeff_I_0_p1_m2; +COEFF(1,1,-2) = coeff_I_p1_p1_m2; +COEFF(2,1,-2) = coeff_I_p2_p1_m2; +COEFF(-2,2,-2) = coeff_I_m2_p2_m2; +COEFF(-1,2,-2) = coeff_I_m1_p2_m2; +COEFF(0,2,-2) = coeff_I_0_p2_m2; +COEFF(1,2,-2) = coeff_I_p1_p2_m2; +COEFF(2,2,-2) = coeff_I_p2_p2_m2; +COEFF(-2,-2,-1) = coeff_I_m2_m2_m1; +COEFF(-1,-2,-1) = coeff_I_m1_m2_m1; +COEFF(0,-2,-1) = coeff_I_0_m2_m1; +COEFF(1,-2,-1) = coeff_I_p1_m2_m1; +COEFF(2,-2,-1) = coeff_I_p2_m2_m1; +COEFF(-2,-1,-1) = coeff_I_m2_m1_m1; +COEFF(-1,-1,-1) = coeff_I_m1_m1_m1; +COEFF(0,-1,-1) = coeff_I_0_m1_m1; +COEFF(1,-1,-1) = coeff_I_p1_m1_m1; +COEFF(2,-1,-1) = coeff_I_p2_m1_m1; +COEFF(-2,0,-1) = coeff_I_m2_0_m1; +COEFF(-1,0,-1) = coeff_I_m1_0_m1; +COEFF(0,0,-1) = coeff_I_0_0_m1; +COEFF(1,0,-1) = coeff_I_p1_0_m1; +COEFF(2,0,-1) = coeff_I_p2_0_m1; +COEFF(-2,1,-1) = coeff_I_m2_p1_m1; +COEFF(-1,1,-1) = coeff_I_m1_p1_m1; +COEFF(0,1,-1) = coeff_I_0_p1_m1; +COEFF(1,1,-1) = coeff_I_p1_p1_m1; +COEFF(2,1,-1) = coeff_I_p2_p1_m1; +COEFF(-2,2,-1) = coeff_I_m2_p2_m1; +COEFF(-1,2,-1) = coeff_I_m1_p2_m1; +COEFF(0,2,-1) = coeff_I_0_p2_m1; +COEFF(1,2,-1) = coeff_I_p1_p2_m1; +COEFF(2,2,-1) = coeff_I_p2_p2_m1; +COEFF(-2,-2,0) = coeff_I_m2_m2_0; +COEFF(-1,-2,0) = coeff_I_m1_m2_0; +COEFF(0,-2,0) = coeff_I_0_m2_0; +COEFF(1,-2,0) = coeff_I_p1_m2_0; +COEFF(2,-2,0) = coeff_I_p2_m2_0; +COEFF(-2,-1,0) = coeff_I_m2_m1_0; +COEFF(-1,-1,0) = coeff_I_m1_m1_0; +COEFF(0,-1,0) = coeff_I_0_m1_0; +COEFF(1,-1,0) = coeff_I_p1_m1_0; +COEFF(2,-1,0) = coeff_I_p2_m1_0; +COEFF(-2,0,0) = coeff_I_m2_0_0; +COEFF(-1,0,0) = coeff_I_m1_0_0; +COEFF(0,0,0) = coeff_I_0_0_0; +COEFF(1,0,0) = coeff_I_p1_0_0; +COEFF(2,0,0) = coeff_I_p2_0_0; +COEFF(-2,1,0) = coeff_I_m2_p1_0; +COEFF(-1,1,0) = coeff_I_m1_p1_0; +COEFF(0,1,0) = coeff_I_0_p1_0; +COEFF(1,1,0) = coeff_I_p1_p1_0; +COEFF(2,1,0) = coeff_I_p2_p1_0; +COEFF(-2,2,0) = coeff_I_m2_p2_0; +COEFF(-1,2,0) = coeff_I_m1_p2_0; +COEFF(0,2,0) = coeff_I_0_p2_0; +COEFF(1,2,0) = coeff_I_p1_p2_0; +COEFF(2,2,0) = coeff_I_p2_p2_0; +COEFF(-2,-2,1) = coeff_I_m2_m2_p1; +COEFF(-1,-2,1) = coeff_I_m1_m2_p1; +COEFF(0,-2,1) = coeff_I_0_m2_p1; +COEFF(1,-2,1) = coeff_I_p1_m2_p1; +COEFF(2,-2,1) = coeff_I_p2_m2_p1; +COEFF(-2,-1,1) = coeff_I_m2_m1_p1; +COEFF(-1,-1,1) = coeff_I_m1_m1_p1; +COEFF(0,-1,1) = coeff_I_0_m1_p1; +COEFF(1,-1,1) = coeff_I_p1_m1_p1; +COEFF(2,-1,1) = coeff_I_p2_m1_p1; +COEFF(-2,0,1) = coeff_I_m2_0_p1; +COEFF(-1,0,1) = coeff_I_m1_0_p1; +COEFF(0,0,1) = coeff_I_0_0_p1; +COEFF(1,0,1) = coeff_I_p1_0_p1; +COEFF(2,0,1) = coeff_I_p2_0_p1; +COEFF(-2,1,1) = coeff_I_m2_p1_p1; +COEFF(-1,1,1) = coeff_I_m1_p1_p1; +COEFF(0,1,1) = coeff_I_0_p1_p1; +COEFF(1,1,1) = coeff_I_p1_p1_p1; +COEFF(2,1,1) = coeff_I_p2_p1_p1; +COEFF(-2,2,1) = coeff_I_m2_p2_p1; +COEFF(-1,2,1) = coeff_I_m1_p2_p1; +COEFF(0,2,1) = coeff_I_0_p2_p1; +COEFF(1,2,1) = coeff_I_p1_p2_p1; +COEFF(2,2,1) = coeff_I_p2_p2_p1; +COEFF(-2,-2,2) = coeff_I_m2_m2_p2; +COEFF(-1,-2,2) = coeff_I_m1_m2_p2; +COEFF(0,-2,2) = coeff_I_0_m2_p2; +COEFF(1,-2,2) = coeff_I_p1_m2_p2; +COEFF(2,-2,2) = coeff_I_p2_m2_p2; +COEFF(-2,-1,2) = coeff_I_m2_m1_p2; +COEFF(-1,-1,2) = coeff_I_m1_m1_p2; +COEFF(0,-1,2) = coeff_I_0_m1_p2; +COEFF(1,-1,2) = coeff_I_p1_m1_p2; +COEFF(2,-1,2) = coeff_I_p2_m1_p2; +COEFF(-2,0,2) = coeff_I_m2_0_p2; +COEFF(-1,0,2) = coeff_I_m1_0_p2; +COEFF(0,0,2) = coeff_I_0_0_p2; +COEFF(1,0,2) = coeff_I_p1_0_p2; +COEFF(2,0,2) = coeff_I_p2_0_p2; +COEFF(-2,1,2) = coeff_I_m2_p1_p2; +COEFF(-1,1,2) = coeff_I_m1_p1_p2; +COEFF(0,1,2) = coeff_I_0_p1_p2; +COEFF(1,1,2) = coeff_I_p1_p1_p2; +COEFF(2,1,2) = coeff_I_p2_p1_p2; +COEFF(-2,2,2) = coeff_I_m2_p2_p2; +COEFF(-1,2,2) = coeff_I_m1_p2_p2; +COEFF(0,2,2) = coeff_I_0_p2_p2; +COEFF(1,2,2) = coeff_I_p1_p2_p2; +COEFF(2,2,2) = coeff_I_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dx.dcl.c new file mode 100644 index 0000000..0c923f3 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dx.dcl.c @@ -0,0 +1,125 @@ +fp coeff_dx_m2_m2_m2, + coeff_dx_m1_m2_m2, + coeff_dx_0_m2_m2, + coeff_dx_p1_m2_m2, + coeff_dx_p2_m2_m2, + coeff_dx_m2_m1_m2, + coeff_dx_m1_m1_m2, + coeff_dx_0_m1_m2, + coeff_dx_p1_m1_m2, + coeff_dx_p2_m1_m2, + coeff_dx_m2_0_m2, + coeff_dx_m1_0_m2, + coeff_dx_0_0_m2, + coeff_dx_p1_0_m2, + coeff_dx_p2_0_m2, + coeff_dx_m2_p1_m2, + coeff_dx_m1_p1_m2, + coeff_dx_0_p1_m2, + coeff_dx_p1_p1_m2, + coeff_dx_p2_p1_m2, + coeff_dx_m2_p2_m2, + coeff_dx_m1_p2_m2, + coeff_dx_0_p2_m2, + coeff_dx_p1_p2_m2, + coeff_dx_p2_p2_m2, + coeff_dx_m2_m2_m1, + coeff_dx_m1_m2_m1, + coeff_dx_0_m2_m1, + coeff_dx_p1_m2_m1, + coeff_dx_p2_m2_m1, + coeff_dx_m2_m1_m1, + coeff_dx_m1_m1_m1, + coeff_dx_0_m1_m1, + coeff_dx_p1_m1_m1, + coeff_dx_p2_m1_m1, + coeff_dx_m2_0_m1, + coeff_dx_m1_0_m1, + coeff_dx_0_0_m1, + coeff_dx_p1_0_m1, + coeff_dx_p2_0_m1, + coeff_dx_m2_p1_m1, + coeff_dx_m1_p1_m1, + coeff_dx_0_p1_m1, + coeff_dx_p1_p1_m1, + coeff_dx_p2_p1_m1, + coeff_dx_m2_p2_m1, + coeff_dx_m1_p2_m1, + coeff_dx_0_p2_m1, + coeff_dx_p1_p2_m1, + coeff_dx_p2_p2_m1, + coeff_dx_m2_m2_0, + coeff_dx_m1_m2_0, + coeff_dx_0_m2_0, + coeff_dx_p1_m2_0, + coeff_dx_p2_m2_0, + coeff_dx_m2_m1_0, + coeff_dx_m1_m1_0, + coeff_dx_0_m1_0, + coeff_dx_p1_m1_0, + coeff_dx_p2_m1_0, + coeff_dx_m2_0_0, + coeff_dx_m1_0_0, + coeff_dx_0_0_0, + coeff_dx_p1_0_0, + coeff_dx_p2_0_0, + coeff_dx_m2_p1_0, + coeff_dx_m1_p1_0, + coeff_dx_0_p1_0, + coeff_dx_p1_p1_0, + coeff_dx_p2_p1_0, + coeff_dx_m2_p2_0, + coeff_dx_m1_p2_0, + coeff_dx_0_p2_0, + coeff_dx_p1_p2_0, + coeff_dx_p2_p2_0, + coeff_dx_m2_m2_p1, + coeff_dx_m1_m2_p1, + coeff_dx_0_m2_p1, + coeff_dx_p1_m2_p1, + coeff_dx_p2_m2_p1, + coeff_dx_m2_m1_p1, + coeff_dx_m1_m1_p1, + coeff_dx_0_m1_p1, + coeff_dx_p1_m1_p1, + coeff_dx_p2_m1_p1, + coeff_dx_m2_0_p1, + coeff_dx_m1_0_p1, + coeff_dx_0_0_p1, + coeff_dx_p1_0_p1, + coeff_dx_p2_0_p1, + coeff_dx_m2_p1_p1, + coeff_dx_m1_p1_p1, + coeff_dx_0_p1_p1, + coeff_dx_p1_p1_p1, + coeff_dx_p2_p1_p1, + coeff_dx_m2_p2_p1, + coeff_dx_m1_p2_p1, + coeff_dx_0_p2_p1, + coeff_dx_p1_p2_p1, + coeff_dx_p2_p2_p1, + coeff_dx_m2_m2_p2, + coeff_dx_m1_m2_p2, + coeff_dx_0_m2_p2, + coeff_dx_p1_m2_p2, + coeff_dx_p2_m2_p2, + coeff_dx_m2_m1_p2, + coeff_dx_m1_m1_p2, + coeff_dx_0_m1_p2, + coeff_dx_p1_m1_p2, + coeff_dx_p2_m1_p2, + coeff_dx_m2_0_p2, + coeff_dx_m1_0_p2, + coeff_dx_0_0_p2, + coeff_dx_p1_0_p2, + coeff_dx_p2_0_p2, + coeff_dx_m2_p1_p2, + coeff_dx_m1_p1_p2, + coeff_dx_0_p1_p2, + coeff_dx_p1_p1_p2, + coeff_dx_p2_p1_p2, + coeff_dx_m2_p2_p2, + coeff_dx_m1_p2_p2, + coeff_dx_0_p2_p2, + coeff_dx_p1_p2_p2, + coeff_dx_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dx.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dx.store.c new file mode 100644 index 0000000..920f72d --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dx.store.c @@ -0,0 +1,125 @@ +COEFF(-2,-2,-2) = factor * coeff_dx_m2_m2_m2; +COEFF(-1,-2,-2) = factor * coeff_dx_m1_m2_m2; +COEFF(0,-2,-2) = factor * coeff_dx_0_m2_m2; +COEFF(1,-2,-2) = factor * coeff_dx_p1_m2_m2; +COEFF(2,-2,-2) = factor * coeff_dx_p2_m2_m2; +COEFF(-2,-1,-2) = factor * coeff_dx_m2_m1_m2; +COEFF(-1,-1,-2) = factor * coeff_dx_m1_m1_m2; +COEFF(0,-1,-2) = factor * coeff_dx_0_m1_m2; +COEFF(1,-1,-2) = factor * coeff_dx_p1_m1_m2; +COEFF(2,-1,-2) = factor * coeff_dx_p2_m1_m2; +COEFF(-2,0,-2) = factor * coeff_dx_m2_0_m2; +COEFF(-1,0,-2) = factor * coeff_dx_m1_0_m2; +COEFF(0,0,-2) = factor * coeff_dx_0_0_m2; +COEFF(1,0,-2) = factor * coeff_dx_p1_0_m2; +COEFF(2,0,-2) = factor * coeff_dx_p2_0_m2; +COEFF(-2,1,-2) = factor * coeff_dx_m2_p1_m2; +COEFF(-1,1,-2) = factor * coeff_dx_m1_p1_m2; +COEFF(0,1,-2) = factor * coeff_dx_0_p1_m2; +COEFF(1,1,-2) = factor * coeff_dx_p1_p1_m2; +COEFF(2,1,-2) = factor * coeff_dx_p2_p1_m2; +COEFF(-2,2,-2) = factor * coeff_dx_m2_p2_m2; +COEFF(-1,2,-2) = factor * coeff_dx_m1_p2_m2; +COEFF(0,2,-2) = factor * coeff_dx_0_p2_m2; +COEFF(1,2,-2) = factor * coeff_dx_p1_p2_m2; +COEFF(2,2,-2) = factor * coeff_dx_p2_p2_m2; +COEFF(-2,-2,-1) = factor * coeff_dx_m2_m2_m1; +COEFF(-1,-2,-1) = factor * coeff_dx_m1_m2_m1; +COEFF(0,-2,-1) = factor * coeff_dx_0_m2_m1; +COEFF(1,-2,-1) = factor * coeff_dx_p1_m2_m1; +COEFF(2,-2,-1) = factor * coeff_dx_p2_m2_m1; +COEFF(-2,-1,-1) = factor * coeff_dx_m2_m1_m1; +COEFF(-1,-1,-1) = factor * coeff_dx_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dx_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dx_p1_m1_m1; +COEFF(2,-1,-1) = factor * coeff_dx_p2_m1_m1; +COEFF(-2,0,-1) = factor * coeff_dx_m2_0_m1; +COEFF(-1,0,-1) = factor * coeff_dx_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dx_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dx_p1_0_m1; +COEFF(2,0,-1) = factor * coeff_dx_p2_0_m1; +COEFF(-2,1,-1) = factor * coeff_dx_m2_p1_m1; +COEFF(-1,1,-1) = factor * coeff_dx_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dx_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dx_p1_p1_m1; +COEFF(2,1,-1) = factor * coeff_dx_p2_p1_m1; +COEFF(-2,2,-1) = factor * coeff_dx_m2_p2_m1; +COEFF(-1,2,-1) = factor * coeff_dx_m1_p2_m1; +COEFF(0,2,-1) = factor * coeff_dx_0_p2_m1; +COEFF(1,2,-1) = factor * coeff_dx_p1_p2_m1; +COEFF(2,2,-1) = factor * coeff_dx_p2_p2_m1; +COEFF(-2,-2,0) = factor * coeff_dx_m2_m2_0; +COEFF(-1,-2,0) = factor * coeff_dx_m1_m2_0; +COEFF(0,-2,0) = factor * coeff_dx_0_m2_0; +COEFF(1,-2,0) = factor * coeff_dx_p1_m2_0; +COEFF(2,-2,0) = factor * coeff_dx_p2_m2_0; +COEFF(-2,-1,0) = factor * coeff_dx_m2_m1_0; +COEFF(-1,-1,0) = factor * coeff_dx_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dx_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dx_p1_m1_0; +COEFF(2,-1,0) = factor * coeff_dx_p2_m1_0; +COEFF(-2,0,0) = factor * coeff_dx_m2_0_0; +COEFF(-1,0,0) = factor * coeff_dx_m1_0_0; +COEFF(0,0,0) = factor * coeff_dx_0_0_0; +COEFF(1,0,0) = factor * coeff_dx_p1_0_0; +COEFF(2,0,0) = factor * coeff_dx_p2_0_0; +COEFF(-2,1,0) = factor * coeff_dx_m2_p1_0; +COEFF(-1,1,0) = factor * coeff_dx_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dx_0_p1_0; +COEFF(1,1,0) = factor * coeff_dx_p1_p1_0; +COEFF(2,1,0) = factor * coeff_dx_p2_p1_0; +COEFF(-2,2,0) = factor * coeff_dx_m2_p2_0; +COEFF(-1,2,0) = factor * coeff_dx_m1_p2_0; +COEFF(0,2,0) = factor * coeff_dx_0_p2_0; +COEFF(1,2,0) = factor * coeff_dx_p1_p2_0; +COEFF(2,2,0) = factor * coeff_dx_p2_p2_0; +COEFF(-2,-2,1) = factor * coeff_dx_m2_m2_p1; +COEFF(-1,-2,1) = factor * coeff_dx_m1_m2_p1; +COEFF(0,-2,1) = factor * coeff_dx_0_m2_p1; +COEFF(1,-2,1) = factor * coeff_dx_p1_m2_p1; +COEFF(2,-2,1) = factor * coeff_dx_p2_m2_p1; +COEFF(-2,-1,1) = factor * coeff_dx_m2_m1_p1; +COEFF(-1,-1,1) = factor * coeff_dx_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dx_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dx_p1_m1_p1; +COEFF(2,-1,1) = factor * coeff_dx_p2_m1_p1; +COEFF(-2,0,1) = factor * coeff_dx_m2_0_p1; +COEFF(-1,0,1) = factor * coeff_dx_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dx_0_0_p1; +COEFF(1,0,1) = factor * coeff_dx_p1_0_p1; +COEFF(2,0,1) = factor * coeff_dx_p2_0_p1; +COEFF(-2,1,1) = factor * coeff_dx_m2_p1_p1; +COEFF(-1,1,1) = factor * coeff_dx_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dx_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dx_p1_p1_p1; +COEFF(2,1,1) = factor * coeff_dx_p2_p1_p1; +COEFF(-2,2,1) = factor * coeff_dx_m2_p2_p1; +COEFF(-1,2,1) = factor * coeff_dx_m1_p2_p1; +COEFF(0,2,1) = factor * coeff_dx_0_p2_p1; +COEFF(1,2,1) = factor * coeff_dx_p1_p2_p1; +COEFF(2,2,1) = factor * coeff_dx_p2_p2_p1; +COEFF(-2,-2,2) = factor * coeff_dx_m2_m2_p2; +COEFF(-1,-2,2) = factor * coeff_dx_m1_m2_p2; +COEFF(0,-2,2) = factor * coeff_dx_0_m2_p2; +COEFF(1,-2,2) = factor * coeff_dx_p1_m2_p2; +COEFF(2,-2,2) = factor * coeff_dx_p2_m2_p2; +COEFF(-2,-1,2) = factor * coeff_dx_m2_m1_p2; +COEFF(-1,-1,2) = factor * coeff_dx_m1_m1_p2; +COEFF(0,-1,2) = factor * coeff_dx_0_m1_p2; +COEFF(1,-1,2) = factor * coeff_dx_p1_m1_p2; +COEFF(2,-1,2) = factor * coeff_dx_p2_m1_p2; +COEFF(-2,0,2) = factor * coeff_dx_m2_0_p2; +COEFF(-1,0,2) = factor * coeff_dx_m1_0_p2; +COEFF(0,0,2) = factor * coeff_dx_0_0_p2; +COEFF(1,0,2) = factor * coeff_dx_p1_0_p2; +COEFF(2,0,2) = factor * coeff_dx_p2_0_p2; +COEFF(-2,1,2) = factor * coeff_dx_m2_p1_p2; +COEFF(-1,1,2) = factor * coeff_dx_m1_p1_p2; +COEFF(0,1,2) = factor * coeff_dx_0_p1_p2; +COEFF(1,1,2) = factor * coeff_dx_p1_p1_p2; +COEFF(2,1,2) = factor * coeff_dx_p2_p1_p2; +COEFF(-2,2,2) = factor * coeff_dx_m2_p2_p2; +COEFF(-1,2,2) = factor * coeff_dx_m1_p2_p2; +COEFF(0,2,2) = factor * coeff_dx_0_p2_p2; +COEFF(1,2,2) = factor * coeff_dx_p1_p2_p2; +COEFF(2,2,2) = factor * coeff_dx_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxx.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxx.dcl.c new file mode 100644 index 0000000..e7cb52f --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxx.dcl.c @@ -0,0 +1,125 @@ +fp coeff_dxx_m2_m2_m2, + coeff_dxx_m1_m2_m2, + coeff_dxx_0_m2_m2, + coeff_dxx_p1_m2_m2, + coeff_dxx_p2_m2_m2, + coeff_dxx_m2_m1_m2, + coeff_dxx_m1_m1_m2, + coeff_dxx_0_m1_m2, + coeff_dxx_p1_m1_m2, + coeff_dxx_p2_m1_m2, + coeff_dxx_m2_0_m2, + coeff_dxx_m1_0_m2, + coeff_dxx_0_0_m2, + coeff_dxx_p1_0_m2, + coeff_dxx_p2_0_m2, + coeff_dxx_m2_p1_m2, + coeff_dxx_m1_p1_m2, + coeff_dxx_0_p1_m2, + coeff_dxx_p1_p1_m2, + coeff_dxx_p2_p1_m2, + coeff_dxx_m2_p2_m2, + coeff_dxx_m1_p2_m2, + coeff_dxx_0_p2_m2, + coeff_dxx_p1_p2_m2, + coeff_dxx_p2_p2_m2, + coeff_dxx_m2_m2_m1, + coeff_dxx_m1_m2_m1, + coeff_dxx_0_m2_m1, + coeff_dxx_p1_m2_m1, + coeff_dxx_p2_m2_m1, + coeff_dxx_m2_m1_m1, + coeff_dxx_m1_m1_m1, + coeff_dxx_0_m1_m1, + coeff_dxx_p1_m1_m1, + coeff_dxx_p2_m1_m1, + coeff_dxx_m2_0_m1, + coeff_dxx_m1_0_m1, + coeff_dxx_0_0_m1, + coeff_dxx_p1_0_m1, + coeff_dxx_p2_0_m1, + coeff_dxx_m2_p1_m1, + coeff_dxx_m1_p1_m1, + coeff_dxx_0_p1_m1, + coeff_dxx_p1_p1_m1, + coeff_dxx_p2_p1_m1, + coeff_dxx_m2_p2_m1, + coeff_dxx_m1_p2_m1, + coeff_dxx_0_p2_m1, + coeff_dxx_p1_p2_m1, + coeff_dxx_p2_p2_m1, + coeff_dxx_m2_m2_0, + coeff_dxx_m1_m2_0, + coeff_dxx_0_m2_0, + coeff_dxx_p1_m2_0, + coeff_dxx_p2_m2_0, + coeff_dxx_m2_m1_0, + coeff_dxx_m1_m1_0, + coeff_dxx_0_m1_0, + coeff_dxx_p1_m1_0, + coeff_dxx_p2_m1_0, + coeff_dxx_m2_0_0, + coeff_dxx_m1_0_0, + coeff_dxx_0_0_0, + coeff_dxx_p1_0_0, + coeff_dxx_p2_0_0, + coeff_dxx_m2_p1_0, + coeff_dxx_m1_p1_0, + coeff_dxx_0_p1_0, + coeff_dxx_p1_p1_0, + coeff_dxx_p2_p1_0, + coeff_dxx_m2_p2_0, + coeff_dxx_m1_p2_0, + coeff_dxx_0_p2_0, + coeff_dxx_p1_p2_0, + coeff_dxx_p2_p2_0, + coeff_dxx_m2_m2_p1, + coeff_dxx_m1_m2_p1, + coeff_dxx_0_m2_p1, + coeff_dxx_p1_m2_p1, + coeff_dxx_p2_m2_p1, + coeff_dxx_m2_m1_p1, + coeff_dxx_m1_m1_p1, + coeff_dxx_0_m1_p1, + coeff_dxx_p1_m1_p1, + coeff_dxx_p2_m1_p1, + coeff_dxx_m2_0_p1, + coeff_dxx_m1_0_p1, + coeff_dxx_0_0_p1, + coeff_dxx_p1_0_p1, + coeff_dxx_p2_0_p1, + coeff_dxx_m2_p1_p1, + coeff_dxx_m1_p1_p1, + coeff_dxx_0_p1_p1, + coeff_dxx_p1_p1_p1, + coeff_dxx_p2_p1_p1, + coeff_dxx_m2_p2_p1, + coeff_dxx_m1_p2_p1, + coeff_dxx_0_p2_p1, + coeff_dxx_p1_p2_p1, + coeff_dxx_p2_p2_p1, + coeff_dxx_m2_m2_p2, + coeff_dxx_m1_m2_p2, + coeff_dxx_0_m2_p2, + coeff_dxx_p1_m2_p2, + coeff_dxx_p2_m2_p2, + coeff_dxx_m2_m1_p2, + coeff_dxx_m1_m1_p2, + coeff_dxx_0_m1_p2, + coeff_dxx_p1_m1_p2, + coeff_dxx_p2_m1_p2, + coeff_dxx_m2_0_p2, + coeff_dxx_m1_0_p2, + coeff_dxx_0_0_p2, + coeff_dxx_p1_0_p2, + coeff_dxx_p2_0_p2, + coeff_dxx_m2_p1_p2, + coeff_dxx_m1_p1_p2, + coeff_dxx_0_p1_p2, + coeff_dxx_p1_p1_p2, + coeff_dxx_p2_p1_p2, + coeff_dxx_m2_p2_p2, + coeff_dxx_m1_p2_p2, + coeff_dxx_0_p2_p2, + coeff_dxx_p1_p2_p2, + coeff_dxx_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxx.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxx.store.c new file mode 100644 index 0000000..e9a81ff --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxx.store.c @@ -0,0 +1,125 @@ +COEFF(-2,-2,-2) = factor * coeff_dxx_m2_m2_m2; +COEFF(-1,-2,-2) = factor * coeff_dxx_m1_m2_m2; +COEFF(0,-2,-2) = factor * coeff_dxx_0_m2_m2; +COEFF(1,-2,-2) = factor * coeff_dxx_p1_m2_m2; +COEFF(2,-2,-2) = factor * coeff_dxx_p2_m2_m2; +COEFF(-2,-1,-2) = factor * coeff_dxx_m2_m1_m2; +COEFF(-1,-1,-2) = factor * coeff_dxx_m1_m1_m2; +COEFF(0,-1,-2) = factor * coeff_dxx_0_m1_m2; +COEFF(1,-1,-2) = factor * coeff_dxx_p1_m1_m2; +COEFF(2,-1,-2) = factor * coeff_dxx_p2_m1_m2; +COEFF(-2,0,-2) = factor * coeff_dxx_m2_0_m2; +COEFF(-1,0,-2) = factor * coeff_dxx_m1_0_m2; +COEFF(0,0,-2) = factor * coeff_dxx_0_0_m2; +COEFF(1,0,-2) = factor * coeff_dxx_p1_0_m2; +COEFF(2,0,-2) = factor * coeff_dxx_p2_0_m2; +COEFF(-2,1,-2) = factor * coeff_dxx_m2_p1_m2; +COEFF(-1,1,-2) = factor * coeff_dxx_m1_p1_m2; +COEFF(0,1,-2) = factor * coeff_dxx_0_p1_m2; +COEFF(1,1,-2) = factor * coeff_dxx_p1_p1_m2; +COEFF(2,1,-2) = factor * coeff_dxx_p2_p1_m2; +COEFF(-2,2,-2) = factor * coeff_dxx_m2_p2_m2; +COEFF(-1,2,-2) = factor * coeff_dxx_m1_p2_m2; +COEFF(0,2,-2) = factor * coeff_dxx_0_p2_m2; +COEFF(1,2,-2) = factor * coeff_dxx_p1_p2_m2; +COEFF(2,2,-2) = factor * coeff_dxx_p2_p2_m2; +COEFF(-2,-2,-1) = factor * coeff_dxx_m2_m2_m1; +COEFF(-1,-2,-1) = factor * coeff_dxx_m1_m2_m1; +COEFF(0,-2,-1) = factor * coeff_dxx_0_m2_m1; +COEFF(1,-2,-1) = factor * coeff_dxx_p1_m2_m1; +COEFF(2,-2,-1) = factor * coeff_dxx_p2_m2_m1; +COEFF(-2,-1,-1) = factor * coeff_dxx_m2_m1_m1; +COEFF(-1,-1,-1) = factor * coeff_dxx_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dxx_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dxx_p1_m1_m1; +COEFF(2,-1,-1) = factor * coeff_dxx_p2_m1_m1; +COEFF(-2,0,-1) = factor * coeff_dxx_m2_0_m1; +COEFF(-1,0,-1) = factor * coeff_dxx_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dxx_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dxx_p1_0_m1; +COEFF(2,0,-1) = factor * coeff_dxx_p2_0_m1; +COEFF(-2,1,-1) = factor * coeff_dxx_m2_p1_m1; +COEFF(-1,1,-1) = factor * coeff_dxx_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dxx_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dxx_p1_p1_m1; +COEFF(2,1,-1) = factor * coeff_dxx_p2_p1_m1; +COEFF(-2,2,-1) = factor * coeff_dxx_m2_p2_m1; +COEFF(-1,2,-1) = factor * coeff_dxx_m1_p2_m1; +COEFF(0,2,-1) = factor * coeff_dxx_0_p2_m1; +COEFF(1,2,-1) = factor * coeff_dxx_p1_p2_m1; +COEFF(2,2,-1) = factor * coeff_dxx_p2_p2_m1; +COEFF(-2,-2,0) = factor * coeff_dxx_m2_m2_0; +COEFF(-1,-2,0) = factor * coeff_dxx_m1_m2_0; +COEFF(0,-2,0) = factor * coeff_dxx_0_m2_0; +COEFF(1,-2,0) = factor * coeff_dxx_p1_m2_0; +COEFF(2,-2,0) = factor * coeff_dxx_p2_m2_0; +COEFF(-2,-1,0) = factor * coeff_dxx_m2_m1_0; +COEFF(-1,-1,0) = factor * coeff_dxx_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dxx_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dxx_p1_m1_0; +COEFF(2,-1,0) = factor * coeff_dxx_p2_m1_0; +COEFF(-2,0,0) = factor * coeff_dxx_m2_0_0; +COEFF(-1,0,0) = factor * coeff_dxx_m1_0_0; +COEFF(0,0,0) = factor * coeff_dxx_0_0_0; +COEFF(1,0,0) = factor * coeff_dxx_p1_0_0; +COEFF(2,0,0) = factor * coeff_dxx_p2_0_0; +COEFF(-2,1,0) = factor * coeff_dxx_m2_p1_0; +COEFF(-1,1,0) = factor * coeff_dxx_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dxx_0_p1_0; +COEFF(1,1,0) = factor * coeff_dxx_p1_p1_0; +COEFF(2,1,0) = factor * coeff_dxx_p2_p1_0; +COEFF(-2,2,0) = factor * coeff_dxx_m2_p2_0; +COEFF(-1,2,0) = factor * coeff_dxx_m1_p2_0; +COEFF(0,2,0) = factor * coeff_dxx_0_p2_0; +COEFF(1,2,0) = factor * coeff_dxx_p1_p2_0; +COEFF(2,2,0) = factor * coeff_dxx_p2_p2_0; +COEFF(-2,-2,1) = factor * coeff_dxx_m2_m2_p1; +COEFF(-1,-2,1) = factor * coeff_dxx_m1_m2_p1; +COEFF(0,-2,1) = factor * coeff_dxx_0_m2_p1; +COEFF(1,-2,1) = factor * coeff_dxx_p1_m2_p1; +COEFF(2,-2,1) = factor * coeff_dxx_p2_m2_p1; +COEFF(-2,-1,1) = factor * coeff_dxx_m2_m1_p1; +COEFF(-1,-1,1) = factor * coeff_dxx_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dxx_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dxx_p1_m1_p1; +COEFF(2,-1,1) = factor * coeff_dxx_p2_m1_p1; +COEFF(-2,0,1) = factor * coeff_dxx_m2_0_p1; +COEFF(-1,0,1) = factor * coeff_dxx_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dxx_0_0_p1; +COEFF(1,0,1) = factor * coeff_dxx_p1_0_p1; +COEFF(2,0,1) = factor * coeff_dxx_p2_0_p1; +COEFF(-2,1,1) = factor * coeff_dxx_m2_p1_p1; +COEFF(-1,1,1) = factor * coeff_dxx_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dxx_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dxx_p1_p1_p1; +COEFF(2,1,1) = factor * coeff_dxx_p2_p1_p1; +COEFF(-2,2,1) = factor * coeff_dxx_m2_p2_p1; +COEFF(-1,2,1) = factor * coeff_dxx_m1_p2_p1; +COEFF(0,2,1) = factor * coeff_dxx_0_p2_p1; +COEFF(1,2,1) = factor * coeff_dxx_p1_p2_p1; +COEFF(2,2,1) = factor * coeff_dxx_p2_p2_p1; +COEFF(-2,-2,2) = factor * coeff_dxx_m2_m2_p2; +COEFF(-1,-2,2) = factor * coeff_dxx_m1_m2_p2; +COEFF(0,-2,2) = factor * coeff_dxx_0_m2_p2; +COEFF(1,-2,2) = factor * coeff_dxx_p1_m2_p2; +COEFF(2,-2,2) = factor * coeff_dxx_p2_m2_p2; +COEFF(-2,-1,2) = factor * coeff_dxx_m2_m1_p2; +COEFF(-1,-1,2) = factor * coeff_dxx_m1_m1_p2; +COEFF(0,-1,2) = factor * coeff_dxx_0_m1_p2; +COEFF(1,-1,2) = factor * coeff_dxx_p1_m1_p2; +COEFF(2,-1,2) = factor * coeff_dxx_p2_m1_p2; +COEFF(-2,0,2) = factor * coeff_dxx_m2_0_p2; +COEFF(-1,0,2) = factor * coeff_dxx_m1_0_p2; +COEFF(0,0,2) = factor * coeff_dxx_0_0_p2; +COEFF(1,0,2) = factor * coeff_dxx_p1_0_p2; +COEFF(2,0,2) = factor * coeff_dxx_p2_0_p2; +COEFF(-2,1,2) = factor * coeff_dxx_m2_p1_p2; +COEFF(-1,1,2) = factor * coeff_dxx_m1_p1_p2; +COEFF(0,1,2) = factor * coeff_dxx_0_p1_p2; +COEFF(1,1,2) = factor * coeff_dxx_p1_p1_p2; +COEFF(2,1,2) = factor * coeff_dxx_p2_p1_p2; +COEFF(-2,2,2) = factor * coeff_dxx_m2_p2_p2; +COEFF(-1,2,2) = factor * coeff_dxx_m1_p2_p2; +COEFF(0,2,2) = factor * coeff_dxx_0_p2_p2; +COEFF(1,2,2) = factor * coeff_dxx_p1_p2_p2; +COEFF(2,2,2) = factor * coeff_dxx_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxy.dcl.c new file mode 100644 index 0000000..3b029c8 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxy.dcl.c @@ -0,0 +1,125 @@ +fp coeff_dxy_m2_m2_m2, + coeff_dxy_m1_m2_m2, + coeff_dxy_0_m2_m2, + coeff_dxy_p1_m2_m2, + coeff_dxy_p2_m2_m2, + coeff_dxy_m2_m1_m2, + coeff_dxy_m1_m1_m2, + coeff_dxy_0_m1_m2, + coeff_dxy_p1_m1_m2, + coeff_dxy_p2_m1_m2, + coeff_dxy_m2_0_m2, + coeff_dxy_m1_0_m2, + coeff_dxy_0_0_m2, + coeff_dxy_p1_0_m2, + coeff_dxy_p2_0_m2, + coeff_dxy_m2_p1_m2, + coeff_dxy_m1_p1_m2, + coeff_dxy_0_p1_m2, + coeff_dxy_p1_p1_m2, + coeff_dxy_p2_p1_m2, + coeff_dxy_m2_p2_m2, + coeff_dxy_m1_p2_m2, + coeff_dxy_0_p2_m2, + coeff_dxy_p1_p2_m2, + coeff_dxy_p2_p2_m2, + coeff_dxy_m2_m2_m1, + coeff_dxy_m1_m2_m1, + coeff_dxy_0_m2_m1, + coeff_dxy_p1_m2_m1, + coeff_dxy_p2_m2_m1, + coeff_dxy_m2_m1_m1, + coeff_dxy_m1_m1_m1, + coeff_dxy_0_m1_m1, + coeff_dxy_p1_m1_m1, + coeff_dxy_p2_m1_m1, + coeff_dxy_m2_0_m1, + coeff_dxy_m1_0_m1, + coeff_dxy_0_0_m1, + coeff_dxy_p1_0_m1, + coeff_dxy_p2_0_m1, + coeff_dxy_m2_p1_m1, + coeff_dxy_m1_p1_m1, + coeff_dxy_0_p1_m1, + coeff_dxy_p1_p1_m1, + coeff_dxy_p2_p1_m1, + coeff_dxy_m2_p2_m1, + coeff_dxy_m1_p2_m1, + coeff_dxy_0_p2_m1, + coeff_dxy_p1_p2_m1, + coeff_dxy_p2_p2_m1, + coeff_dxy_m2_m2_0, + coeff_dxy_m1_m2_0, + coeff_dxy_0_m2_0, + coeff_dxy_p1_m2_0, + coeff_dxy_p2_m2_0, + coeff_dxy_m2_m1_0, + coeff_dxy_m1_m1_0, + coeff_dxy_0_m1_0, + coeff_dxy_p1_m1_0, + coeff_dxy_p2_m1_0, + coeff_dxy_m2_0_0, + coeff_dxy_m1_0_0, + coeff_dxy_0_0_0, + coeff_dxy_p1_0_0, + coeff_dxy_p2_0_0, + coeff_dxy_m2_p1_0, + coeff_dxy_m1_p1_0, + coeff_dxy_0_p1_0, + coeff_dxy_p1_p1_0, + coeff_dxy_p2_p1_0, + coeff_dxy_m2_p2_0, + coeff_dxy_m1_p2_0, + coeff_dxy_0_p2_0, + coeff_dxy_p1_p2_0, + coeff_dxy_p2_p2_0, + coeff_dxy_m2_m2_p1, + coeff_dxy_m1_m2_p1, + coeff_dxy_0_m2_p1, + coeff_dxy_p1_m2_p1, + coeff_dxy_p2_m2_p1, + coeff_dxy_m2_m1_p1, + coeff_dxy_m1_m1_p1, + coeff_dxy_0_m1_p1, + coeff_dxy_p1_m1_p1, + coeff_dxy_p2_m1_p1, + coeff_dxy_m2_0_p1, + coeff_dxy_m1_0_p1, + coeff_dxy_0_0_p1, + coeff_dxy_p1_0_p1, + coeff_dxy_p2_0_p1, + coeff_dxy_m2_p1_p1, + coeff_dxy_m1_p1_p1, + coeff_dxy_0_p1_p1, + coeff_dxy_p1_p1_p1, + coeff_dxy_p2_p1_p1, + coeff_dxy_m2_p2_p1, + coeff_dxy_m1_p2_p1, + coeff_dxy_0_p2_p1, + coeff_dxy_p1_p2_p1, + coeff_dxy_p2_p2_p1, + coeff_dxy_m2_m2_p2, + coeff_dxy_m1_m2_p2, + coeff_dxy_0_m2_p2, + coeff_dxy_p1_m2_p2, + coeff_dxy_p2_m2_p2, + coeff_dxy_m2_m1_p2, + coeff_dxy_m1_m1_p2, + coeff_dxy_0_m1_p2, + coeff_dxy_p1_m1_p2, + coeff_dxy_p2_m1_p2, + coeff_dxy_m2_0_p2, + coeff_dxy_m1_0_p2, + coeff_dxy_0_0_p2, + coeff_dxy_p1_0_p2, + coeff_dxy_p2_0_p2, + coeff_dxy_m2_p1_p2, + coeff_dxy_m1_p1_p2, + coeff_dxy_0_p1_p2, + coeff_dxy_p1_p1_p2, + coeff_dxy_p2_p1_p2, + coeff_dxy_m2_p2_p2, + coeff_dxy_m1_p2_p2, + coeff_dxy_0_p2_p2, + coeff_dxy_p1_p2_p2, + coeff_dxy_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxy.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxy.store.c new file mode 100644 index 0000000..83fd574 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxy.store.c @@ -0,0 +1,125 @@ +COEFF(-2,-2,-2) = factor * coeff_dxy_m2_m2_m2; +COEFF(-1,-2,-2) = factor * coeff_dxy_m1_m2_m2; +COEFF(0,-2,-2) = factor * coeff_dxy_0_m2_m2; +COEFF(1,-2,-2) = factor * coeff_dxy_p1_m2_m2; +COEFF(2,-2,-2) = factor * coeff_dxy_p2_m2_m2; +COEFF(-2,-1,-2) = factor * coeff_dxy_m2_m1_m2; +COEFF(-1,-1,-2) = factor * coeff_dxy_m1_m1_m2; +COEFF(0,-1,-2) = factor * coeff_dxy_0_m1_m2; +COEFF(1,-1,-2) = factor * coeff_dxy_p1_m1_m2; +COEFF(2,-1,-2) = factor * coeff_dxy_p2_m1_m2; +COEFF(-2,0,-2) = factor * coeff_dxy_m2_0_m2; +COEFF(-1,0,-2) = factor * coeff_dxy_m1_0_m2; +COEFF(0,0,-2) = factor * coeff_dxy_0_0_m2; +COEFF(1,0,-2) = factor * coeff_dxy_p1_0_m2; +COEFF(2,0,-2) = factor * coeff_dxy_p2_0_m2; +COEFF(-2,1,-2) = factor * coeff_dxy_m2_p1_m2; +COEFF(-1,1,-2) = factor * coeff_dxy_m1_p1_m2; +COEFF(0,1,-2) = factor * coeff_dxy_0_p1_m2; +COEFF(1,1,-2) = factor * coeff_dxy_p1_p1_m2; +COEFF(2,1,-2) = factor * coeff_dxy_p2_p1_m2; +COEFF(-2,2,-2) = factor * coeff_dxy_m2_p2_m2; +COEFF(-1,2,-2) = factor * coeff_dxy_m1_p2_m2; +COEFF(0,2,-2) = factor * coeff_dxy_0_p2_m2; +COEFF(1,2,-2) = factor * coeff_dxy_p1_p2_m2; +COEFF(2,2,-2) = factor * coeff_dxy_p2_p2_m2; +COEFF(-2,-2,-1) = factor * coeff_dxy_m2_m2_m1; +COEFF(-1,-2,-1) = factor * coeff_dxy_m1_m2_m1; +COEFF(0,-2,-1) = factor * coeff_dxy_0_m2_m1; +COEFF(1,-2,-1) = factor * coeff_dxy_p1_m2_m1; +COEFF(2,-2,-1) = factor * coeff_dxy_p2_m2_m1; +COEFF(-2,-1,-1) = factor * coeff_dxy_m2_m1_m1; +COEFF(-1,-1,-1) = factor * coeff_dxy_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dxy_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dxy_p1_m1_m1; +COEFF(2,-1,-1) = factor * coeff_dxy_p2_m1_m1; +COEFF(-2,0,-1) = factor * coeff_dxy_m2_0_m1; +COEFF(-1,0,-1) = factor * coeff_dxy_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dxy_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dxy_p1_0_m1; +COEFF(2,0,-1) = factor * coeff_dxy_p2_0_m1; +COEFF(-2,1,-1) = factor * coeff_dxy_m2_p1_m1; +COEFF(-1,1,-1) = factor * coeff_dxy_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dxy_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dxy_p1_p1_m1; +COEFF(2,1,-1) = factor * coeff_dxy_p2_p1_m1; +COEFF(-2,2,-1) = factor * coeff_dxy_m2_p2_m1; +COEFF(-1,2,-1) = factor * coeff_dxy_m1_p2_m1; +COEFF(0,2,-1) = factor * coeff_dxy_0_p2_m1; +COEFF(1,2,-1) = factor * coeff_dxy_p1_p2_m1; +COEFF(2,2,-1) = factor * coeff_dxy_p2_p2_m1; +COEFF(-2,-2,0) = factor * coeff_dxy_m2_m2_0; +COEFF(-1,-2,0) = factor * coeff_dxy_m1_m2_0; +COEFF(0,-2,0) = factor * coeff_dxy_0_m2_0; +COEFF(1,-2,0) = factor * coeff_dxy_p1_m2_0; +COEFF(2,-2,0) = factor * coeff_dxy_p2_m2_0; +COEFF(-2,-1,0) = factor * coeff_dxy_m2_m1_0; +COEFF(-1,-1,0) = factor * coeff_dxy_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dxy_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dxy_p1_m1_0; +COEFF(2,-1,0) = factor * coeff_dxy_p2_m1_0; +COEFF(-2,0,0) = factor * coeff_dxy_m2_0_0; +COEFF(-1,0,0) = factor * coeff_dxy_m1_0_0; +COEFF(0,0,0) = factor * coeff_dxy_0_0_0; +COEFF(1,0,0) = factor * coeff_dxy_p1_0_0; +COEFF(2,0,0) = factor * coeff_dxy_p2_0_0; +COEFF(-2,1,0) = factor * coeff_dxy_m2_p1_0; +COEFF(-1,1,0) = factor * coeff_dxy_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dxy_0_p1_0; +COEFF(1,1,0) = factor * coeff_dxy_p1_p1_0; +COEFF(2,1,0) = factor * coeff_dxy_p2_p1_0; +COEFF(-2,2,0) = factor * coeff_dxy_m2_p2_0; +COEFF(-1,2,0) = factor * coeff_dxy_m1_p2_0; +COEFF(0,2,0) = factor * coeff_dxy_0_p2_0; +COEFF(1,2,0) = factor * coeff_dxy_p1_p2_0; +COEFF(2,2,0) = factor * coeff_dxy_p2_p2_0; +COEFF(-2,-2,1) = factor * coeff_dxy_m2_m2_p1; +COEFF(-1,-2,1) = factor * coeff_dxy_m1_m2_p1; +COEFF(0,-2,1) = factor * coeff_dxy_0_m2_p1; +COEFF(1,-2,1) = factor * coeff_dxy_p1_m2_p1; +COEFF(2,-2,1) = factor * coeff_dxy_p2_m2_p1; +COEFF(-2,-1,1) = factor * coeff_dxy_m2_m1_p1; +COEFF(-1,-1,1) = factor * coeff_dxy_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dxy_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dxy_p1_m1_p1; +COEFF(2,-1,1) = factor * coeff_dxy_p2_m1_p1; +COEFF(-2,0,1) = factor * coeff_dxy_m2_0_p1; +COEFF(-1,0,1) = factor * coeff_dxy_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dxy_0_0_p1; +COEFF(1,0,1) = factor * coeff_dxy_p1_0_p1; +COEFF(2,0,1) = factor * coeff_dxy_p2_0_p1; +COEFF(-2,1,1) = factor * coeff_dxy_m2_p1_p1; +COEFF(-1,1,1) = factor * coeff_dxy_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dxy_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dxy_p1_p1_p1; +COEFF(2,1,1) = factor * coeff_dxy_p2_p1_p1; +COEFF(-2,2,1) = factor * coeff_dxy_m2_p2_p1; +COEFF(-1,2,1) = factor * coeff_dxy_m1_p2_p1; +COEFF(0,2,1) = factor * coeff_dxy_0_p2_p1; +COEFF(1,2,1) = factor * coeff_dxy_p1_p2_p1; +COEFF(2,2,1) = factor * coeff_dxy_p2_p2_p1; +COEFF(-2,-2,2) = factor * coeff_dxy_m2_m2_p2; +COEFF(-1,-2,2) = factor * coeff_dxy_m1_m2_p2; +COEFF(0,-2,2) = factor * coeff_dxy_0_m2_p2; +COEFF(1,-2,2) = factor * coeff_dxy_p1_m2_p2; +COEFF(2,-2,2) = factor * coeff_dxy_p2_m2_p2; +COEFF(-2,-1,2) = factor * coeff_dxy_m2_m1_p2; +COEFF(-1,-1,2) = factor * coeff_dxy_m1_m1_p2; +COEFF(0,-1,2) = factor * coeff_dxy_0_m1_p2; +COEFF(1,-1,2) = factor * coeff_dxy_p1_m1_p2; +COEFF(2,-1,2) = factor * coeff_dxy_p2_m1_p2; +COEFF(-2,0,2) = factor * coeff_dxy_m2_0_p2; +COEFF(-1,0,2) = factor * coeff_dxy_m1_0_p2; +COEFF(0,0,2) = factor * coeff_dxy_0_0_p2; +COEFF(1,0,2) = factor * coeff_dxy_p1_0_p2; +COEFF(2,0,2) = factor * coeff_dxy_p2_0_p2; +COEFF(-2,1,2) = factor * coeff_dxy_m2_p1_p2; +COEFF(-1,1,2) = factor * coeff_dxy_m1_p1_p2; +COEFF(0,1,2) = factor * coeff_dxy_0_p1_p2; +COEFF(1,1,2) = factor * coeff_dxy_p1_p1_p2; +COEFF(2,1,2) = factor * coeff_dxy_p2_p1_p2; +COEFF(-2,2,2) = factor * coeff_dxy_m2_p2_p2; +COEFF(-1,2,2) = factor * coeff_dxy_m1_p2_p2; +COEFF(0,2,2) = factor * coeff_dxy_0_p2_p2; +COEFF(1,2,2) = factor * coeff_dxy_p1_p2_p2; +COEFF(2,2,2) = factor * coeff_dxy_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxz.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxz.dcl.c new file mode 100644 index 0000000..4db13a0 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxz.dcl.c @@ -0,0 +1,125 @@ +fp coeff_dxz_m2_m2_m2, + coeff_dxz_m1_m2_m2, + coeff_dxz_0_m2_m2, + coeff_dxz_p1_m2_m2, + coeff_dxz_p2_m2_m2, + coeff_dxz_m2_m1_m2, + coeff_dxz_m1_m1_m2, + coeff_dxz_0_m1_m2, + coeff_dxz_p1_m1_m2, + coeff_dxz_p2_m1_m2, + coeff_dxz_m2_0_m2, + coeff_dxz_m1_0_m2, + coeff_dxz_0_0_m2, + coeff_dxz_p1_0_m2, + coeff_dxz_p2_0_m2, + coeff_dxz_m2_p1_m2, + coeff_dxz_m1_p1_m2, + coeff_dxz_0_p1_m2, + coeff_dxz_p1_p1_m2, + coeff_dxz_p2_p1_m2, + coeff_dxz_m2_p2_m2, + coeff_dxz_m1_p2_m2, + coeff_dxz_0_p2_m2, + coeff_dxz_p1_p2_m2, + coeff_dxz_p2_p2_m2, + coeff_dxz_m2_m2_m1, + coeff_dxz_m1_m2_m1, + coeff_dxz_0_m2_m1, + coeff_dxz_p1_m2_m1, + coeff_dxz_p2_m2_m1, + coeff_dxz_m2_m1_m1, + coeff_dxz_m1_m1_m1, + coeff_dxz_0_m1_m1, + coeff_dxz_p1_m1_m1, + coeff_dxz_p2_m1_m1, + coeff_dxz_m2_0_m1, + coeff_dxz_m1_0_m1, + coeff_dxz_0_0_m1, + coeff_dxz_p1_0_m1, + coeff_dxz_p2_0_m1, + coeff_dxz_m2_p1_m1, + coeff_dxz_m1_p1_m1, + coeff_dxz_0_p1_m1, + coeff_dxz_p1_p1_m1, + coeff_dxz_p2_p1_m1, + coeff_dxz_m2_p2_m1, + coeff_dxz_m1_p2_m1, + coeff_dxz_0_p2_m1, + coeff_dxz_p1_p2_m1, + coeff_dxz_p2_p2_m1, + coeff_dxz_m2_m2_0, + coeff_dxz_m1_m2_0, + coeff_dxz_0_m2_0, + coeff_dxz_p1_m2_0, + coeff_dxz_p2_m2_0, + coeff_dxz_m2_m1_0, + coeff_dxz_m1_m1_0, + coeff_dxz_0_m1_0, + coeff_dxz_p1_m1_0, + coeff_dxz_p2_m1_0, + coeff_dxz_m2_0_0, + coeff_dxz_m1_0_0, + coeff_dxz_0_0_0, + coeff_dxz_p1_0_0, + coeff_dxz_p2_0_0, + coeff_dxz_m2_p1_0, + coeff_dxz_m1_p1_0, + coeff_dxz_0_p1_0, + coeff_dxz_p1_p1_0, + coeff_dxz_p2_p1_0, + coeff_dxz_m2_p2_0, + coeff_dxz_m1_p2_0, + coeff_dxz_0_p2_0, + coeff_dxz_p1_p2_0, + coeff_dxz_p2_p2_0, + coeff_dxz_m2_m2_p1, + coeff_dxz_m1_m2_p1, + coeff_dxz_0_m2_p1, + coeff_dxz_p1_m2_p1, + coeff_dxz_p2_m2_p1, + coeff_dxz_m2_m1_p1, + coeff_dxz_m1_m1_p1, + coeff_dxz_0_m1_p1, + coeff_dxz_p1_m1_p1, + coeff_dxz_p2_m1_p1, + coeff_dxz_m2_0_p1, + coeff_dxz_m1_0_p1, + coeff_dxz_0_0_p1, + coeff_dxz_p1_0_p1, + coeff_dxz_p2_0_p1, + coeff_dxz_m2_p1_p1, + coeff_dxz_m1_p1_p1, + coeff_dxz_0_p1_p1, + coeff_dxz_p1_p1_p1, + coeff_dxz_p2_p1_p1, + coeff_dxz_m2_p2_p1, + coeff_dxz_m1_p2_p1, + coeff_dxz_0_p2_p1, + coeff_dxz_p1_p2_p1, + coeff_dxz_p2_p2_p1, + coeff_dxz_m2_m2_p2, + coeff_dxz_m1_m2_p2, + coeff_dxz_0_m2_p2, + coeff_dxz_p1_m2_p2, + coeff_dxz_p2_m2_p2, + coeff_dxz_m2_m1_p2, + coeff_dxz_m1_m1_p2, + coeff_dxz_0_m1_p2, + coeff_dxz_p1_m1_p2, + coeff_dxz_p2_m1_p2, + coeff_dxz_m2_0_p2, + coeff_dxz_m1_0_p2, + coeff_dxz_0_0_p2, + coeff_dxz_p1_0_p2, + coeff_dxz_p2_0_p2, + coeff_dxz_m2_p1_p2, + coeff_dxz_m1_p1_p2, + coeff_dxz_0_p1_p2, + coeff_dxz_p1_p1_p2, + coeff_dxz_p2_p1_p2, + coeff_dxz_m2_p2_p2, + coeff_dxz_m1_p2_p2, + coeff_dxz_0_p2_p2, + coeff_dxz_p1_p2_p2, + coeff_dxz_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxz.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxz.store.c new file mode 100644 index 0000000..b8e4a5b --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxz.store.c @@ -0,0 +1,125 @@ +COEFF(-2,-2,-2) = factor * coeff_dxz_m2_m2_m2; +COEFF(-1,-2,-2) = factor * coeff_dxz_m1_m2_m2; +COEFF(0,-2,-2) = factor * coeff_dxz_0_m2_m2; +COEFF(1,-2,-2) = factor * coeff_dxz_p1_m2_m2; +COEFF(2,-2,-2) = factor * coeff_dxz_p2_m2_m2; +COEFF(-2,-1,-2) = factor * coeff_dxz_m2_m1_m2; +COEFF(-1,-1,-2) = factor * coeff_dxz_m1_m1_m2; +COEFF(0,-1,-2) = factor * coeff_dxz_0_m1_m2; +COEFF(1,-1,-2) = factor * coeff_dxz_p1_m1_m2; +COEFF(2,-1,-2) = factor * coeff_dxz_p2_m1_m2; +COEFF(-2,0,-2) = factor * coeff_dxz_m2_0_m2; +COEFF(-1,0,-2) = factor * coeff_dxz_m1_0_m2; +COEFF(0,0,-2) = factor * coeff_dxz_0_0_m2; +COEFF(1,0,-2) = factor * coeff_dxz_p1_0_m2; +COEFF(2,0,-2) = factor * coeff_dxz_p2_0_m2; +COEFF(-2,1,-2) = factor * coeff_dxz_m2_p1_m2; +COEFF(-1,1,-2) = factor * coeff_dxz_m1_p1_m2; +COEFF(0,1,-2) = factor * coeff_dxz_0_p1_m2; +COEFF(1,1,-2) = factor * coeff_dxz_p1_p1_m2; +COEFF(2,1,-2) = factor * coeff_dxz_p2_p1_m2; +COEFF(-2,2,-2) = factor * coeff_dxz_m2_p2_m2; +COEFF(-1,2,-2) = factor * coeff_dxz_m1_p2_m2; +COEFF(0,2,-2) = factor * coeff_dxz_0_p2_m2; +COEFF(1,2,-2) = factor * coeff_dxz_p1_p2_m2; +COEFF(2,2,-2) = factor * coeff_dxz_p2_p2_m2; +COEFF(-2,-2,-1) = factor * coeff_dxz_m2_m2_m1; +COEFF(-1,-2,-1) = factor * coeff_dxz_m1_m2_m1; +COEFF(0,-2,-1) = factor * coeff_dxz_0_m2_m1; +COEFF(1,-2,-1) = factor * coeff_dxz_p1_m2_m1; +COEFF(2,-2,-1) = factor * coeff_dxz_p2_m2_m1; +COEFF(-2,-1,-1) = factor * coeff_dxz_m2_m1_m1; +COEFF(-1,-1,-1) = factor * coeff_dxz_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dxz_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dxz_p1_m1_m1; +COEFF(2,-1,-1) = factor * coeff_dxz_p2_m1_m1; +COEFF(-2,0,-1) = factor * coeff_dxz_m2_0_m1; +COEFF(-1,0,-1) = factor * coeff_dxz_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dxz_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dxz_p1_0_m1; +COEFF(2,0,-1) = factor * coeff_dxz_p2_0_m1; +COEFF(-2,1,-1) = factor * coeff_dxz_m2_p1_m1; +COEFF(-1,1,-1) = factor * coeff_dxz_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dxz_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dxz_p1_p1_m1; +COEFF(2,1,-1) = factor * coeff_dxz_p2_p1_m1; +COEFF(-2,2,-1) = factor * coeff_dxz_m2_p2_m1; +COEFF(-1,2,-1) = factor * coeff_dxz_m1_p2_m1; +COEFF(0,2,-1) = factor * coeff_dxz_0_p2_m1; +COEFF(1,2,-1) = factor * coeff_dxz_p1_p2_m1; +COEFF(2,2,-1) = factor * coeff_dxz_p2_p2_m1; +COEFF(-2,-2,0) = factor * coeff_dxz_m2_m2_0; +COEFF(-1,-2,0) = factor * coeff_dxz_m1_m2_0; +COEFF(0,-2,0) = factor * coeff_dxz_0_m2_0; +COEFF(1,-2,0) = factor * coeff_dxz_p1_m2_0; +COEFF(2,-2,0) = factor * coeff_dxz_p2_m2_0; +COEFF(-2,-1,0) = factor * coeff_dxz_m2_m1_0; +COEFF(-1,-1,0) = factor * coeff_dxz_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dxz_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dxz_p1_m1_0; +COEFF(2,-1,0) = factor * coeff_dxz_p2_m1_0; +COEFF(-2,0,0) = factor * coeff_dxz_m2_0_0; +COEFF(-1,0,0) = factor * coeff_dxz_m1_0_0; +COEFF(0,0,0) = factor * coeff_dxz_0_0_0; +COEFF(1,0,0) = factor * coeff_dxz_p1_0_0; +COEFF(2,0,0) = factor * coeff_dxz_p2_0_0; +COEFF(-2,1,0) = factor * coeff_dxz_m2_p1_0; +COEFF(-1,1,0) = factor * coeff_dxz_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dxz_0_p1_0; +COEFF(1,1,0) = factor * coeff_dxz_p1_p1_0; +COEFF(2,1,0) = factor * coeff_dxz_p2_p1_0; +COEFF(-2,2,0) = factor * coeff_dxz_m2_p2_0; +COEFF(-1,2,0) = factor * coeff_dxz_m1_p2_0; +COEFF(0,2,0) = factor * coeff_dxz_0_p2_0; +COEFF(1,2,0) = factor * coeff_dxz_p1_p2_0; +COEFF(2,2,0) = factor * coeff_dxz_p2_p2_0; +COEFF(-2,-2,1) = factor * coeff_dxz_m2_m2_p1; +COEFF(-1,-2,1) = factor * coeff_dxz_m1_m2_p1; +COEFF(0,-2,1) = factor * coeff_dxz_0_m2_p1; +COEFF(1,-2,1) = factor * coeff_dxz_p1_m2_p1; +COEFF(2,-2,1) = factor * coeff_dxz_p2_m2_p1; +COEFF(-2,-1,1) = factor * coeff_dxz_m2_m1_p1; +COEFF(-1,-1,1) = factor * coeff_dxz_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dxz_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dxz_p1_m1_p1; +COEFF(2,-1,1) = factor * coeff_dxz_p2_m1_p1; +COEFF(-2,0,1) = factor * coeff_dxz_m2_0_p1; +COEFF(-1,0,1) = factor * coeff_dxz_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dxz_0_0_p1; +COEFF(1,0,1) = factor * coeff_dxz_p1_0_p1; +COEFF(2,0,1) = factor * coeff_dxz_p2_0_p1; +COEFF(-2,1,1) = factor * coeff_dxz_m2_p1_p1; +COEFF(-1,1,1) = factor * coeff_dxz_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dxz_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dxz_p1_p1_p1; +COEFF(2,1,1) = factor * coeff_dxz_p2_p1_p1; +COEFF(-2,2,1) = factor * coeff_dxz_m2_p2_p1; +COEFF(-1,2,1) = factor * coeff_dxz_m1_p2_p1; +COEFF(0,2,1) = factor * coeff_dxz_0_p2_p1; +COEFF(1,2,1) = factor * coeff_dxz_p1_p2_p1; +COEFF(2,2,1) = factor * coeff_dxz_p2_p2_p1; +COEFF(-2,-2,2) = factor * coeff_dxz_m2_m2_p2; +COEFF(-1,-2,2) = factor * coeff_dxz_m1_m2_p2; +COEFF(0,-2,2) = factor * coeff_dxz_0_m2_p2; +COEFF(1,-2,2) = factor * coeff_dxz_p1_m2_p2; +COEFF(2,-2,2) = factor * coeff_dxz_p2_m2_p2; +COEFF(-2,-1,2) = factor * coeff_dxz_m2_m1_p2; +COEFF(-1,-1,2) = factor * coeff_dxz_m1_m1_p2; +COEFF(0,-1,2) = factor * coeff_dxz_0_m1_p2; +COEFF(1,-1,2) = factor * coeff_dxz_p1_m1_p2; +COEFF(2,-1,2) = factor * coeff_dxz_p2_m1_p2; +COEFF(-2,0,2) = factor * coeff_dxz_m2_0_p2; +COEFF(-1,0,2) = factor * coeff_dxz_m1_0_p2; +COEFF(0,0,2) = factor * coeff_dxz_0_0_p2; +COEFF(1,0,2) = factor * coeff_dxz_p1_0_p2; +COEFF(2,0,2) = factor * coeff_dxz_p2_0_p2; +COEFF(-2,1,2) = factor * coeff_dxz_m2_p1_p2; +COEFF(-1,1,2) = factor * coeff_dxz_m1_p1_p2; +COEFF(0,1,2) = factor * coeff_dxz_0_p1_p2; +COEFF(1,1,2) = factor * coeff_dxz_p1_p1_p2; +COEFF(2,1,2) = factor * coeff_dxz_p2_p1_p2; +COEFF(-2,2,2) = factor * coeff_dxz_m2_p2_p2; +COEFF(-1,2,2) = factor * coeff_dxz_m1_p2_p2; +COEFF(0,2,2) = factor * coeff_dxz_0_p2_p2; +COEFF(1,2,2) = factor * coeff_dxz_p1_p2_p2; +COEFF(2,2,2) = factor * coeff_dxz_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dy.dcl.c new file mode 100644 index 0000000..a26ddf8 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dy.dcl.c @@ -0,0 +1,125 @@ +fp coeff_dy_m2_m2_m2, + coeff_dy_m1_m2_m2, + coeff_dy_0_m2_m2, + coeff_dy_p1_m2_m2, + coeff_dy_p2_m2_m2, + coeff_dy_m2_m1_m2, + coeff_dy_m1_m1_m2, + coeff_dy_0_m1_m2, + coeff_dy_p1_m1_m2, + coeff_dy_p2_m1_m2, + coeff_dy_m2_0_m2, + coeff_dy_m1_0_m2, + coeff_dy_0_0_m2, + coeff_dy_p1_0_m2, + coeff_dy_p2_0_m2, + coeff_dy_m2_p1_m2, + coeff_dy_m1_p1_m2, + coeff_dy_0_p1_m2, + coeff_dy_p1_p1_m2, + coeff_dy_p2_p1_m2, + coeff_dy_m2_p2_m2, + coeff_dy_m1_p2_m2, + coeff_dy_0_p2_m2, + coeff_dy_p1_p2_m2, + coeff_dy_p2_p2_m2, + coeff_dy_m2_m2_m1, + coeff_dy_m1_m2_m1, + coeff_dy_0_m2_m1, + coeff_dy_p1_m2_m1, + coeff_dy_p2_m2_m1, + coeff_dy_m2_m1_m1, + coeff_dy_m1_m1_m1, + coeff_dy_0_m1_m1, + coeff_dy_p1_m1_m1, + coeff_dy_p2_m1_m1, + coeff_dy_m2_0_m1, + coeff_dy_m1_0_m1, + coeff_dy_0_0_m1, + coeff_dy_p1_0_m1, + coeff_dy_p2_0_m1, + coeff_dy_m2_p1_m1, + coeff_dy_m1_p1_m1, + coeff_dy_0_p1_m1, + coeff_dy_p1_p1_m1, + coeff_dy_p2_p1_m1, + coeff_dy_m2_p2_m1, + coeff_dy_m1_p2_m1, + coeff_dy_0_p2_m1, + coeff_dy_p1_p2_m1, + coeff_dy_p2_p2_m1, + coeff_dy_m2_m2_0, + coeff_dy_m1_m2_0, + coeff_dy_0_m2_0, + coeff_dy_p1_m2_0, + coeff_dy_p2_m2_0, + coeff_dy_m2_m1_0, + coeff_dy_m1_m1_0, + coeff_dy_0_m1_0, + coeff_dy_p1_m1_0, + coeff_dy_p2_m1_0, + coeff_dy_m2_0_0, + coeff_dy_m1_0_0, + coeff_dy_0_0_0, + coeff_dy_p1_0_0, + coeff_dy_p2_0_0, + coeff_dy_m2_p1_0, + coeff_dy_m1_p1_0, + coeff_dy_0_p1_0, + coeff_dy_p1_p1_0, + coeff_dy_p2_p1_0, + coeff_dy_m2_p2_0, + coeff_dy_m1_p2_0, + coeff_dy_0_p2_0, + coeff_dy_p1_p2_0, + coeff_dy_p2_p2_0, + coeff_dy_m2_m2_p1, + coeff_dy_m1_m2_p1, + coeff_dy_0_m2_p1, + coeff_dy_p1_m2_p1, + coeff_dy_p2_m2_p1, + coeff_dy_m2_m1_p1, + coeff_dy_m1_m1_p1, + coeff_dy_0_m1_p1, + coeff_dy_p1_m1_p1, + coeff_dy_p2_m1_p1, + coeff_dy_m2_0_p1, + coeff_dy_m1_0_p1, + coeff_dy_0_0_p1, + coeff_dy_p1_0_p1, + coeff_dy_p2_0_p1, + coeff_dy_m2_p1_p1, + coeff_dy_m1_p1_p1, + coeff_dy_0_p1_p1, + coeff_dy_p1_p1_p1, + coeff_dy_p2_p1_p1, + coeff_dy_m2_p2_p1, + coeff_dy_m1_p2_p1, + coeff_dy_0_p2_p1, + coeff_dy_p1_p2_p1, + coeff_dy_p2_p2_p1, + coeff_dy_m2_m2_p2, + coeff_dy_m1_m2_p2, + coeff_dy_0_m2_p2, + coeff_dy_p1_m2_p2, + coeff_dy_p2_m2_p2, + coeff_dy_m2_m1_p2, + coeff_dy_m1_m1_p2, + coeff_dy_0_m1_p2, + coeff_dy_p1_m1_p2, + coeff_dy_p2_m1_p2, + coeff_dy_m2_0_p2, + coeff_dy_m1_0_p2, + coeff_dy_0_0_p2, + coeff_dy_p1_0_p2, + coeff_dy_p2_0_p2, + coeff_dy_m2_p1_p2, + coeff_dy_m1_p1_p2, + coeff_dy_0_p1_p2, + coeff_dy_p1_p1_p2, + coeff_dy_p2_p1_p2, + coeff_dy_m2_p2_p2, + coeff_dy_m1_p2_p2, + coeff_dy_0_p2_p2, + coeff_dy_p1_p2_p2, + coeff_dy_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dy.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dy.store.c new file mode 100644 index 0000000..596a34a --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dy.store.c @@ -0,0 +1,125 @@ +COEFF(-2,-2,-2) = factor * coeff_dy_m2_m2_m2; +COEFF(-1,-2,-2) = factor * coeff_dy_m1_m2_m2; +COEFF(0,-2,-2) = factor * coeff_dy_0_m2_m2; +COEFF(1,-2,-2) = factor * coeff_dy_p1_m2_m2; +COEFF(2,-2,-2) = factor * coeff_dy_p2_m2_m2; +COEFF(-2,-1,-2) = factor * coeff_dy_m2_m1_m2; +COEFF(-1,-1,-2) = factor * coeff_dy_m1_m1_m2; +COEFF(0,-1,-2) = factor * coeff_dy_0_m1_m2; +COEFF(1,-1,-2) = factor * coeff_dy_p1_m1_m2; +COEFF(2,-1,-2) = factor * coeff_dy_p2_m1_m2; +COEFF(-2,0,-2) = factor * coeff_dy_m2_0_m2; +COEFF(-1,0,-2) = factor * coeff_dy_m1_0_m2; +COEFF(0,0,-2) = factor * coeff_dy_0_0_m2; +COEFF(1,0,-2) = factor * coeff_dy_p1_0_m2; +COEFF(2,0,-2) = factor * coeff_dy_p2_0_m2; +COEFF(-2,1,-2) = factor * coeff_dy_m2_p1_m2; +COEFF(-1,1,-2) = factor * coeff_dy_m1_p1_m2; +COEFF(0,1,-2) = factor * coeff_dy_0_p1_m2; +COEFF(1,1,-2) = factor * coeff_dy_p1_p1_m2; +COEFF(2,1,-2) = factor * coeff_dy_p2_p1_m2; +COEFF(-2,2,-2) = factor * coeff_dy_m2_p2_m2; +COEFF(-1,2,-2) = factor * coeff_dy_m1_p2_m2; +COEFF(0,2,-2) = factor * coeff_dy_0_p2_m2; +COEFF(1,2,-2) = factor * coeff_dy_p1_p2_m2; +COEFF(2,2,-2) = factor * coeff_dy_p2_p2_m2; +COEFF(-2,-2,-1) = factor * coeff_dy_m2_m2_m1; +COEFF(-1,-2,-1) = factor * coeff_dy_m1_m2_m1; +COEFF(0,-2,-1) = factor * coeff_dy_0_m2_m1; +COEFF(1,-2,-1) = factor * coeff_dy_p1_m2_m1; +COEFF(2,-2,-1) = factor * coeff_dy_p2_m2_m1; +COEFF(-2,-1,-1) = factor * coeff_dy_m2_m1_m1; +COEFF(-1,-1,-1) = factor * coeff_dy_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dy_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dy_p1_m1_m1; +COEFF(2,-1,-1) = factor * coeff_dy_p2_m1_m1; +COEFF(-2,0,-1) = factor * coeff_dy_m2_0_m1; +COEFF(-1,0,-1) = factor * coeff_dy_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dy_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dy_p1_0_m1; +COEFF(2,0,-1) = factor * coeff_dy_p2_0_m1; +COEFF(-2,1,-1) = factor * coeff_dy_m2_p1_m1; +COEFF(-1,1,-1) = factor * coeff_dy_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dy_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dy_p1_p1_m1; +COEFF(2,1,-1) = factor * coeff_dy_p2_p1_m1; +COEFF(-2,2,-1) = factor * coeff_dy_m2_p2_m1; +COEFF(-1,2,-1) = factor * coeff_dy_m1_p2_m1; +COEFF(0,2,-1) = factor * coeff_dy_0_p2_m1; +COEFF(1,2,-1) = factor * coeff_dy_p1_p2_m1; +COEFF(2,2,-1) = factor * coeff_dy_p2_p2_m1; +COEFF(-2,-2,0) = factor * coeff_dy_m2_m2_0; +COEFF(-1,-2,0) = factor * coeff_dy_m1_m2_0; +COEFF(0,-2,0) = factor * coeff_dy_0_m2_0; +COEFF(1,-2,0) = factor * coeff_dy_p1_m2_0; +COEFF(2,-2,0) = factor * coeff_dy_p2_m2_0; +COEFF(-2,-1,0) = factor * coeff_dy_m2_m1_0; +COEFF(-1,-1,0) = factor * coeff_dy_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dy_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dy_p1_m1_0; +COEFF(2,-1,0) = factor * coeff_dy_p2_m1_0; +COEFF(-2,0,0) = factor * coeff_dy_m2_0_0; +COEFF(-1,0,0) = factor * coeff_dy_m1_0_0; +COEFF(0,0,0) = factor * coeff_dy_0_0_0; +COEFF(1,0,0) = factor * coeff_dy_p1_0_0; +COEFF(2,0,0) = factor * coeff_dy_p2_0_0; +COEFF(-2,1,0) = factor * coeff_dy_m2_p1_0; +COEFF(-1,1,0) = factor * coeff_dy_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dy_0_p1_0; +COEFF(1,1,0) = factor * coeff_dy_p1_p1_0; +COEFF(2,1,0) = factor * coeff_dy_p2_p1_0; +COEFF(-2,2,0) = factor * coeff_dy_m2_p2_0; +COEFF(-1,2,0) = factor * coeff_dy_m1_p2_0; +COEFF(0,2,0) = factor * coeff_dy_0_p2_0; +COEFF(1,2,0) = factor * coeff_dy_p1_p2_0; +COEFF(2,2,0) = factor * coeff_dy_p2_p2_0; +COEFF(-2,-2,1) = factor * coeff_dy_m2_m2_p1; +COEFF(-1,-2,1) = factor * coeff_dy_m1_m2_p1; +COEFF(0,-2,1) = factor * coeff_dy_0_m2_p1; +COEFF(1,-2,1) = factor * coeff_dy_p1_m2_p1; +COEFF(2,-2,1) = factor * coeff_dy_p2_m2_p1; +COEFF(-2,-1,1) = factor * coeff_dy_m2_m1_p1; +COEFF(-1,-1,1) = factor * coeff_dy_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dy_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dy_p1_m1_p1; +COEFF(2,-1,1) = factor * coeff_dy_p2_m1_p1; +COEFF(-2,0,1) = factor * coeff_dy_m2_0_p1; +COEFF(-1,0,1) = factor * coeff_dy_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dy_0_0_p1; +COEFF(1,0,1) = factor * coeff_dy_p1_0_p1; +COEFF(2,0,1) = factor * coeff_dy_p2_0_p1; +COEFF(-2,1,1) = factor * coeff_dy_m2_p1_p1; +COEFF(-1,1,1) = factor * coeff_dy_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dy_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dy_p1_p1_p1; +COEFF(2,1,1) = factor * coeff_dy_p2_p1_p1; +COEFF(-2,2,1) = factor * coeff_dy_m2_p2_p1; +COEFF(-1,2,1) = factor * coeff_dy_m1_p2_p1; +COEFF(0,2,1) = factor * coeff_dy_0_p2_p1; +COEFF(1,2,1) = factor * coeff_dy_p1_p2_p1; +COEFF(2,2,1) = factor * coeff_dy_p2_p2_p1; +COEFF(-2,-2,2) = factor * coeff_dy_m2_m2_p2; +COEFF(-1,-2,2) = factor * coeff_dy_m1_m2_p2; +COEFF(0,-2,2) = factor * coeff_dy_0_m2_p2; +COEFF(1,-2,2) = factor * coeff_dy_p1_m2_p2; +COEFF(2,-2,2) = factor * coeff_dy_p2_m2_p2; +COEFF(-2,-1,2) = factor * coeff_dy_m2_m1_p2; +COEFF(-1,-1,2) = factor * coeff_dy_m1_m1_p2; +COEFF(0,-1,2) = factor * coeff_dy_0_m1_p2; +COEFF(1,-1,2) = factor * coeff_dy_p1_m1_p2; +COEFF(2,-1,2) = factor * coeff_dy_p2_m1_p2; +COEFF(-2,0,2) = factor * coeff_dy_m2_0_p2; +COEFF(-1,0,2) = factor * coeff_dy_m1_0_p2; +COEFF(0,0,2) = factor * coeff_dy_0_0_p2; +COEFF(1,0,2) = factor * coeff_dy_p1_0_p2; +COEFF(2,0,2) = factor * coeff_dy_p2_0_p2; +COEFF(-2,1,2) = factor * coeff_dy_m2_p1_p2; +COEFF(-1,1,2) = factor * coeff_dy_m1_p1_p2; +COEFF(0,1,2) = factor * coeff_dy_0_p1_p2; +COEFF(1,1,2) = factor * coeff_dy_p1_p1_p2; +COEFF(2,1,2) = factor * coeff_dy_p2_p1_p2; +COEFF(-2,2,2) = factor * coeff_dy_m2_p2_p2; +COEFF(-1,2,2) = factor * coeff_dy_m1_p2_p2; +COEFF(0,2,2) = factor * coeff_dy_0_p2_p2; +COEFF(1,2,2) = factor * coeff_dy_p1_p2_p2; +COEFF(2,2,2) = factor * coeff_dy_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dyy.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dyy.dcl.c new file mode 100644 index 0000000..a78af2b --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dyy.dcl.c @@ -0,0 +1,125 @@ +fp coeff_dyy_m2_m2_m2, + coeff_dyy_m1_m2_m2, + coeff_dyy_0_m2_m2, + coeff_dyy_p1_m2_m2, + coeff_dyy_p2_m2_m2, + coeff_dyy_m2_m1_m2, + coeff_dyy_m1_m1_m2, + coeff_dyy_0_m1_m2, + coeff_dyy_p1_m1_m2, + coeff_dyy_p2_m1_m2, + coeff_dyy_m2_0_m2, + coeff_dyy_m1_0_m2, + coeff_dyy_0_0_m2, + coeff_dyy_p1_0_m2, + coeff_dyy_p2_0_m2, + coeff_dyy_m2_p1_m2, + coeff_dyy_m1_p1_m2, + coeff_dyy_0_p1_m2, + coeff_dyy_p1_p1_m2, + coeff_dyy_p2_p1_m2, + coeff_dyy_m2_p2_m2, + coeff_dyy_m1_p2_m2, + coeff_dyy_0_p2_m2, + coeff_dyy_p1_p2_m2, + coeff_dyy_p2_p2_m2, + coeff_dyy_m2_m2_m1, + coeff_dyy_m1_m2_m1, + coeff_dyy_0_m2_m1, + coeff_dyy_p1_m2_m1, + coeff_dyy_p2_m2_m1, + coeff_dyy_m2_m1_m1, + coeff_dyy_m1_m1_m1, + coeff_dyy_0_m1_m1, + coeff_dyy_p1_m1_m1, + coeff_dyy_p2_m1_m1, + coeff_dyy_m2_0_m1, + coeff_dyy_m1_0_m1, + coeff_dyy_0_0_m1, + coeff_dyy_p1_0_m1, + coeff_dyy_p2_0_m1, + coeff_dyy_m2_p1_m1, + coeff_dyy_m1_p1_m1, + coeff_dyy_0_p1_m1, + coeff_dyy_p1_p1_m1, + coeff_dyy_p2_p1_m1, + coeff_dyy_m2_p2_m1, + coeff_dyy_m1_p2_m1, + coeff_dyy_0_p2_m1, + coeff_dyy_p1_p2_m1, + coeff_dyy_p2_p2_m1, + coeff_dyy_m2_m2_0, + coeff_dyy_m1_m2_0, + coeff_dyy_0_m2_0, + coeff_dyy_p1_m2_0, + coeff_dyy_p2_m2_0, + coeff_dyy_m2_m1_0, + coeff_dyy_m1_m1_0, + coeff_dyy_0_m1_0, + coeff_dyy_p1_m1_0, + coeff_dyy_p2_m1_0, + coeff_dyy_m2_0_0, + coeff_dyy_m1_0_0, + coeff_dyy_0_0_0, + coeff_dyy_p1_0_0, + coeff_dyy_p2_0_0, + coeff_dyy_m2_p1_0, + coeff_dyy_m1_p1_0, + coeff_dyy_0_p1_0, + coeff_dyy_p1_p1_0, + coeff_dyy_p2_p1_0, + coeff_dyy_m2_p2_0, + coeff_dyy_m1_p2_0, + coeff_dyy_0_p2_0, + coeff_dyy_p1_p2_0, + coeff_dyy_p2_p2_0, + coeff_dyy_m2_m2_p1, + coeff_dyy_m1_m2_p1, + coeff_dyy_0_m2_p1, + coeff_dyy_p1_m2_p1, + coeff_dyy_p2_m2_p1, + coeff_dyy_m2_m1_p1, + coeff_dyy_m1_m1_p1, + coeff_dyy_0_m1_p1, + coeff_dyy_p1_m1_p1, + coeff_dyy_p2_m1_p1, + coeff_dyy_m2_0_p1, + coeff_dyy_m1_0_p1, + coeff_dyy_0_0_p1, + coeff_dyy_p1_0_p1, + coeff_dyy_p2_0_p1, + coeff_dyy_m2_p1_p1, + coeff_dyy_m1_p1_p1, + coeff_dyy_0_p1_p1, + coeff_dyy_p1_p1_p1, + coeff_dyy_p2_p1_p1, + coeff_dyy_m2_p2_p1, + coeff_dyy_m1_p2_p1, + coeff_dyy_0_p2_p1, + coeff_dyy_p1_p2_p1, + coeff_dyy_p2_p2_p1, + coeff_dyy_m2_m2_p2, + coeff_dyy_m1_m2_p2, + coeff_dyy_0_m2_p2, + coeff_dyy_p1_m2_p2, + coeff_dyy_p2_m2_p2, + coeff_dyy_m2_m1_p2, + coeff_dyy_m1_m1_p2, + coeff_dyy_0_m1_p2, + coeff_dyy_p1_m1_p2, + coeff_dyy_p2_m1_p2, + coeff_dyy_m2_0_p2, + coeff_dyy_m1_0_p2, + coeff_dyy_0_0_p2, + coeff_dyy_p1_0_p2, + coeff_dyy_p2_0_p2, + coeff_dyy_m2_p1_p2, + coeff_dyy_m1_p1_p2, + coeff_dyy_0_p1_p2, + coeff_dyy_p1_p1_p2, + coeff_dyy_p2_p1_p2, + coeff_dyy_m2_p2_p2, + coeff_dyy_m1_p2_p2, + coeff_dyy_0_p2_p2, + coeff_dyy_p1_p2_p2, + coeff_dyy_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dyy.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dyy.store.c new file mode 100644 index 0000000..3235bb4 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dyy.store.c @@ -0,0 +1,125 @@ +COEFF(-2,-2,-2) = factor * coeff_dyy_m2_m2_m2; +COEFF(-1,-2,-2) = factor * coeff_dyy_m1_m2_m2; +COEFF(0,-2,-2) = factor * coeff_dyy_0_m2_m2; +COEFF(1,-2,-2) = factor * coeff_dyy_p1_m2_m2; +COEFF(2,-2,-2) = factor * coeff_dyy_p2_m2_m2; +COEFF(-2,-1,-2) = factor * coeff_dyy_m2_m1_m2; +COEFF(-1,-1,-2) = factor * coeff_dyy_m1_m1_m2; +COEFF(0,-1,-2) = factor * coeff_dyy_0_m1_m2; +COEFF(1,-1,-2) = factor * coeff_dyy_p1_m1_m2; +COEFF(2,-1,-2) = factor * coeff_dyy_p2_m1_m2; +COEFF(-2,0,-2) = factor * coeff_dyy_m2_0_m2; +COEFF(-1,0,-2) = factor * coeff_dyy_m1_0_m2; +COEFF(0,0,-2) = factor * coeff_dyy_0_0_m2; +COEFF(1,0,-2) = factor * coeff_dyy_p1_0_m2; +COEFF(2,0,-2) = factor * coeff_dyy_p2_0_m2; +COEFF(-2,1,-2) = factor * coeff_dyy_m2_p1_m2; +COEFF(-1,1,-2) = factor * coeff_dyy_m1_p1_m2; +COEFF(0,1,-2) = factor * coeff_dyy_0_p1_m2; +COEFF(1,1,-2) = factor * coeff_dyy_p1_p1_m2; +COEFF(2,1,-2) = factor * coeff_dyy_p2_p1_m2; +COEFF(-2,2,-2) = factor * coeff_dyy_m2_p2_m2; +COEFF(-1,2,-2) = factor * coeff_dyy_m1_p2_m2; +COEFF(0,2,-2) = factor * coeff_dyy_0_p2_m2; +COEFF(1,2,-2) = factor * coeff_dyy_p1_p2_m2; +COEFF(2,2,-2) = factor * coeff_dyy_p2_p2_m2; +COEFF(-2,-2,-1) = factor * coeff_dyy_m2_m2_m1; +COEFF(-1,-2,-1) = factor * coeff_dyy_m1_m2_m1; +COEFF(0,-2,-1) = factor * coeff_dyy_0_m2_m1; +COEFF(1,-2,-1) = factor * coeff_dyy_p1_m2_m1; +COEFF(2,-2,-1) = factor * coeff_dyy_p2_m2_m1; +COEFF(-2,-1,-1) = factor * coeff_dyy_m2_m1_m1; +COEFF(-1,-1,-1) = factor * coeff_dyy_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dyy_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dyy_p1_m1_m1; +COEFF(2,-1,-1) = factor * coeff_dyy_p2_m1_m1; +COEFF(-2,0,-1) = factor * coeff_dyy_m2_0_m1; +COEFF(-1,0,-1) = factor * coeff_dyy_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dyy_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dyy_p1_0_m1; +COEFF(2,0,-1) = factor * coeff_dyy_p2_0_m1; +COEFF(-2,1,-1) = factor * coeff_dyy_m2_p1_m1; +COEFF(-1,1,-1) = factor * coeff_dyy_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dyy_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dyy_p1_p1_m1; +COEFF(2,1,-1) = factor * coeff_dyy_p2_p1_m1; +COEFF(-2,2,-1) = factor * coeff_dyy_m2_p2_m1; +COEFF(-1,2,-1) = factor * coeff_dyy_m1_p2_m1; +COEFF(0,2,-1) = factor * coeff_dyy_0_p2_m1; +COEFF(1,2,-1) = factor * coeff_dyy_p1_p2_m1; +COEFF(2,2,-1) = factor * coeff_dyy_p2_p2_m1; +COEFF(-2,-2,0) = factor * coeff_dyy_m2_m2_0; +COEFF(-1,-2,0) = factor * coeff_dyy_m1_m2_0; +COEFF(0,-2,0) = factor * coeff_dyy_0_m2_0; +COEFF(1,-2,0) = factor * coeff_dyy_p1_m2_0; +COEFF(2,-2,0) = factor * coeff_dyy_p2_m2_0; +COEFF(-2,-1,0) = factor * coeff_dyy_m2_m1_0; +COEFF(-1,-1,0) = factor * coeff_dyy_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dyy_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dyy_p1_m1_0; +COEFF(2,-1,0) = factor * coeff_dyy_p2_m1_0; +COEFF(-2,0,0) = factor * coeff_dyy_m2_0_0; +COEFF(-1,0,0) = factor * coeff_dyy_m1_0_0; +COEFF(0,0,0) = factor * coeff_dyy_0_0_0; +COEFF(1,0,0) = factor * coeff_dyy_p1_0_0; +COEFF(2,0,0) = factor * coeff_dyy_p2_0_0; +COEFF(-2,1,0) = factor * coeff_dyy_m2_p1_0; +COEFF(-1,1,0) = factor * coeff_dyy_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dyy_0_p1_0; +COEFF(1,1,0) = factor * coeff_dyy_p1_p1_0; +COEFF(2,1,0) = factor * coeff_dyy_p2_p1_0; +COEFF(-2,2,0) = factor * coeff_dyy_m2_p2_0; +COEFF(-1,2,0) = factor * coeff_dyy_m1_p2_0; +COEFF(0,2,0) = factor * coeff_dyy_0_p2_0; +COEFF(1,2,0) = factor * coeff_dyy_p1_p2_0; +COEFF(2,2,0) = factor * coeff_dyy_p2_p2_0; +COEFF(-2,-2,1) = factor * coeff_dyy_m2_m2_p1; +COEFF(-1,-2,1) = factor * coeff_dyy_m1_m2_p1; +COEFF(0,-2,1) = factor * coeff_dyy_0_m2_p1; +COEFF(1,-2,1) = factor * coeff_dyy_p1_m2_p1; +COEFF(2,-2,1) = factor * coeff_dyy_p2_m2_p1; +COEFF(-2,-1,1) = factor * coeff_dyy_m2_m1_p1; +COEFF(-1,-1,1) = factor * coeff_dyy_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dyy_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dyy_p1_m1_p1; +COEFF(2,-1,1) = factor * coeff_dyy_p2_m1_p1; +COEFF(-2,0,1) = factor * coeff_dyy_m2_0_p1; +COEFF(-1,0,1) = factor * coeff_dyy_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dyy_0_0_p1; +COEFF(1,0,1) = factor * coeff_dyy_p1_0_p1; +COEFF(2,0,1) = factor * coeff_dyy_p2_0_p1; +COEFF(-2,1,1) = factor * coeff_dyy_m2_p1_p1; +COEFF(-1,1,1) = factor * coeff_dyy_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dyy_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dyy_p1_p1_p1; +COEFF(2,1,1) = factor * coeff_dyy_p2_p1_p1; +COEFF(-2,2,1) = factor * coeff_dyy_m2_p2_p1; +COEFF(-1,2,1) = factor * coeff_dyy_m1_p2_p1; +COEFF(0,2,1) = factor * coeff_dyy_0_p2_p1; +COEFF(1,2,1) = factor * coeff_dyy_p1_p2_p1; +COEFF(2,2,1) = factor * coeff_dyy_p2_p2_p1; +COEFF(-2,-2,2) = factor * coeff_dyy_m2_m2_p2; +COEFF(-1,-2,2) = factor * coeff_dyy_m1_m2_p2; +COEFF(0,-2,2) = factor * coeff_dyy_0_m2_p2; +COEFF(1,-2,2) = factor * coeff_dyy_p1_m2_p2; +COEFF(2,-2,2) = factor * coeff_dyy_p2_m2_p2; +COEFF(-2,-1,2) = factor * coeff_dyy_m2_m1_p2; +COEFF(-1,-1,2) = factor * coeff_dyy_m1_m1_p2; +COEFF(0,-1,2) = factor * coeff_dyy_0_m1_p2; +COEFF(1,-1,2) = factor * coeff_dyy_p1_m1_p2; +COEFF(2,-1,2) = factor * coeff_dyy_p2_m1_p2; +COEFF(-2,0,2) = factor * coeff_dyy_m2_0_p2; +COEFF(-1,0,2) = factor * coeff_dyy_m1_0_p2; +COEFF(0,0,2) = factor * coeff_dyy_0_0_p2; +COEFF(1,0,2) = factor * coeff_dyy_p1_0_p2; +COEFF(2,0,2) = factor * coeff_dyy_p2_0_p2; +COEFF(-2,1,2) = factor * coeff_dyy_m2_p1_p2; +COEFF(-1,1,2) = factor * coeff_dyy_m1_p1_p2; +COEFF(0,1,2) = factor * coeff_dyy_0_p1_p2; +COEFF(1,1,2) = factor * coeff_dyy_p1_p1_p2; +COEFF(2,1,2) = factor * coeff_dyy_p2_p1_p2; +COEFF(-2,2,2) = factor * coeff_dyy_m2_p2_p2; +COEFF(-1,2,2) = factor * coeff_dyy_m1_p2_p2; +COEFF(0,2,2) = factor * coeff_dyy_0_p2_p2; +COEFF(1,2,2) = factor * coeff_dyy_p1_p2_p2; +COEFF(2,2,2) = factor * coeff_dyy_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dyz.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dyz.dcl.c new file mode 100644 index 0000000..f932782 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dyz.dcl.c @@ -0,0 +1,125 @@ +fp coeff_dyz_m2_m2_m2, + coeff_dyz_m1_m2_m2, + coeff_dyz_0_m2_m2, + coeff_dyz_p1_m2_m2, + coeff_dyz_p2_m2_m2, + coeff_dyz_m2_m1_m2, + coeff_dyz_m1_m1_m2, + coeff_dyz_0_m1_m2, + coeff_dyz_p1_m1_m2, + coeff_dyz_p2_m1_m2, + coeff_dyz_m2_0_m2, + coeff_dyz_m1_0_m2, + coeff_dyz_0_0_m2, + coeff_dyz_p1_0_m2, + coeff_dyz_p2_0_m2, + coeff_dyz_m2_p1_m2, + coeff_dyz_m1_p1_m2, + coeff_dyz_0_p1_m2, + coeff_dyz_p1_p1_m2, + coeff_dyz_p2_p1_m2, + coeff_dyz_m2_p2_m2, + coeff_dyz_m1_p2_m2, + coeff_dyz_0_p2_m2, + coeff_dyz_p1_p2_m2, + coeff_dyz_p2_p2_m2, + coeff_dyz_m2_m2_m1, + coeff_dyz_m1_m2_m1, + coeff_dyz_0_m2_m1, + coeff_dyz_p1_m2_m1, + coeff_dyz_p2_m2_m1, + coeff_dyz_m2_m1_m1, + coeff_dyz_m1_m1_m1, + coeff_dyz_0_m1_m1, + coeff_dyz_p1_m1_m1, + coeff_dyz_p2_m1_m1, + coeff_dyz_m2_0_m1, + coeff_dyz_m1_0_m1, + coeff_dyz_0_0_m1, + coeff_dyz_p1_0_m1, + coeff_dyz_p2_0_m1, + coeff_dyz_m2_p1_m1, + coeff_dyz_m1_p1_m1, + coeff_dyz_0_p1_m1, + coeff_dyz_p1_p1_m1, + coeff_dyz_p2_p1_m1, + coeff_dyz_m2_p2_m1, + coeff_dyz_m1_p2_m1, + coeff_dyz_0_p2_m1, + coeff_dyz_p1_p2_m1, + coeff_dyz_p2_p2_m1, + coeff_dyz_m2_m2_0, + coeff_dyz_m1_m2_0, + coeff_dyz_0_m2_0, + coeff_dyz_p1_m2_0, + coeff_dyz_p2_m2_0, + coeff_dyz_m2_m1_0, + coeff_dyz_m1_m1_0, + coeff_dyz_0_m1_0, + coeff_dyz_p1_m1_0, + coeff_dyz_p2_m1_0, + coeff_dyz_m2_0_0, + coeff_dyz_m1_0_0, + coeff_dyz_0_0_0, + coeff_dyz_p1_0_0, + coeff_dyz_p2_0_0, + coeff_dyz_m2_p1_0, + coeff_dyz_m1_p1_0, + coeff_dyz_0_p1_0, + coeff_dyz_p1_p1_0, + coeff_dyz_p2_p1_0, + coeff_dyz_m2_p2_0, + coeff_dyz_m1_p2_0, + coeff_dyz_0_p2_0, + coeff_dyz_p1_p2_0, + coeff_dyz_p2_p2_0, + coeff_dyz_m2_m2_p1, + coeff_dyz_m1_m2_p1, + coeff_dyz_0_m2_p1, + coeff_dyz_p1_m2_p1, + coeff_dyz_p2_m2_p1, + coeff_dyz_m2_m1_p1, + coeff_dyz_m1_m1_p1, + coeff_dyz_0_m1_p1, + coeff_dyz_p1_m1_p1, + coeff_dyz_p2_m1_p1, + coeff_dyz_m2_0_p1, + coeff_dyz_m1_0_p1, + coeff_dyz_0_0_p1, + coeff_dyz_p1_0_p1, + coeff_dyz_p2_0_p1, + coeff_dyz_m2_p1_p1, + coeff_dyz_m1_p1_p1, + coeff_dyz_0_p1_p1, + coeff_dyz_p1_p1_p1, + coeff_dyz_p2_p1_p1, + coeff_dyz_m2_p2_p1, + coeff_dyz_m1_p2_p1, + coeff_dyz_0_p2_p1, + coeff_dyz_p1_p2_p1, + coeff_dyz_p2_p2_p1, + coeff_dyz_m2_m2_p2, + coeff_dyz_m1_m2_p2, + coeff_dyz_0_m2_p2, + coeff_dyz_p1_m2_p2, + coeff_dyz_p2_m2_p2, + coeff_dyz_m2_m1_p2, + coeff_dyz_m1_m1_p2, + coeff_dyz_0_m1_p2, + coeff_dyz_p1_m1_p2, + coeff_dyz_p2_m1_p2, + coeff_dyz_m2_0_p2, + coeff_dyz_m1_0_p2, + coeff_dyz_0_0_p2, + coeff_dyz_p1_0_p2, + coeff_dyz_p2_0_p2, + coeff_dyz_m2_p1_p2, + coeff_dyz_m1_p1_p2, + coeff_dyz_0_p1_p2, + coeff_dyz_p1_p1_p2, + coeff_dyz_p2_p1_p2, + coeff_dyz_m2_p2_p2, + coeff_dyz_m1_p2_p2, + coeff_dyz_0_p2_p2, + coeff_dyz_p1_p2_p2, + coeff_dyz_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dyz.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dyz.store.c new file mode 100644 index 0000000..f764141 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dyz.store.c @@ -0,0 +1,125 @@ +COEFF(-2,-2,-2) = factor * coeff_dyz_m2_m2_m2; +COEFF(-1,-2,-2) = factor * coeff_dyz_m1_m2_m2; +COEFF(0,-2,-2) = factor * coeff_dyz_0_m2_m2; +COEFF(1,-2,-2) = factor * coeff_dyz_p1_m2_m2; +COEFF(2,-2,-2) = factor * coeff_dyz_p2_m2_m2; +COEFF(-2,-1,-2) = factor * coeff_dyz_m2_m1_m2; +COEFF(-1,-1,-2) = factor * coeff_dyz_m1_m1_m2; +COEFF(0,-1,-2) = factor * coeff_dyz_0_m1_m2; +COEFF(1,-1,-2) = factor * coeff_dyz_p1_m1_m2; +COEFF(2,-1,-2) = factor * coeff_dyz_p2_m1_m2; +COEFF(-2,0,-2) = factor * coeff_dyz_m2_0_m2; +COEFF(-1,0,-2) = factor * coeff_dyz_m1_0_m2; +COEFF(0,0,-2) = factor * coeff_dyz_0_0_m2; +COEFF(1,0,-2) = factor * coeff_dyz_p1_0_m2; +COEFF(2,0,-2) = factor * coeff_dyz_p2_0_m2; +COEFF(-2,1,-2) = factor * coeff_dyz_m2_p1_m2; +COEFF(-1,1,-2) = factor * coeff_dyz_m1_p1_m2; +COEFF(0,1,-2) = factor * coeff_dyz_0_p1_m2; +COEFF(1,1,-2) = factor * coeff_dyz_p1_p1_m2; +COEFF(2,1,-2) = factor * coeff_dyz_p2_p1_m2; +COEFF(-2,2,-2) = factor * coeff_dyz_m2_p2_m2; +COEFF(-1,2,-2) = factor * coeff_dyz_m1_p2_m2; +COEFF(0,2,-2) = factor * coeff_dyz_0_p2_m2; +COEFF(1,2,-2) = factor * coeff_dyz_p1_p2_m2; +COEFF(2,2,-2) = factor * coeff_dyz_p2_p2_m2; +COEFF(-2,-2,-1) = factor * coeff_dyz_m2_m2_m1; +COEFF(-1,-2,-1) = factor * coeff_dyz_m1_m2_m1; +COEFF(0,-2,-1) = factor * coeff_dyz_0_m2_m1; +COEFF(1,-2,-1) = factor * coeff_dyz_p1_m2_m1; +COEFF(2,-2,-1) = factor * coeff_dyz_p2_m2_m1; +COEFF(-2,-1,-1) = factor * coeff_dyz_m2_m1_m1; +COEFF(-1,-1,-1) = factor * coeff_dyz_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dyz_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dyz_p1_m1_m1; +COEFF(2,-1,-1) = factor * coeff_dyz_p2_m1_m1; +COEFF(-2,0,-1) = factor * coeff_dyz_m2_0_m1; +COEFF(-1,0,-1) = factor * coeff_dyz_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dyz_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dyz_p1_0_m1; +COEFF(2,0,-1) = factor * coeff_dyz_p2_0_m1; +COEFF(-2,1,-1) = factor * coeff_dyz_m2_p1_m1; +COEFF(-1,1,-1) = factor * coeff_dyz_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dyz_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dyz_p1_p1_m1; +COEFF(2,1,-1) = factor * coeff_dyz_p2_p1_m1; +COEFF(-2,2,-1) = factor * coeff_dyz_m2_p2_m1; +COEFF(-1,2,-1) = factor * coeff_dyz_m1_p2_m1; +COEFF(0,2,-1) = factor * coeff_dyz_0_p2_m1; +COEFF(1,2,-1) = factor * coeff_dyz_p1_p2_m1; +COEFF(2,2,-1) = factor * coeff_dyz_p2_p2_m1; +COEFF(-2,-2,0) = factor * coeff_dyz_m2_m2_0; +COEFF(-1,-2,0) = factor * coeff_dyz_m1_m2_0; +COEFF(0,-2,0) = factor * coeff_dyz_0_m2_0; +COEFF(1,-2,0) = factor * coeff_dyz_p1_m2_0; +COEFF(2,-2,0) = factor * coeff_dyz_p2_m2_0; +COEFF(-2,-1,0) = factor * coeff_dyz_m2_m1_0; +COEFF(-1,-1,0) = factor * coeff_dyz_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dyz_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dyz_p1_m1_0; +COEFF(2,-1,0) = factor * coeff_dyz_p2_m1_0; +COEFF(-2,0,0) = factor * coeff_dyz_m2_0_0; +COEFF(-1,0,0) = factor * coeff_dyz_m1_0_0; +COEFF(0,0,0) = factor * coeff_dyz_0_0_0; +COEFF(1,0,0) = factor * coeff_dyz_p1_0_0; +COEFF(2,0,0) = factor * coeff_dyz_p2_0_0; +COEFF(-2,1,0) = factor * coeff_dyz_m2_p1_0; +COEFF(-1,1,0) = factor * coeff_dyz_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dyz_0_p1_0; +COEFF(1,1,0) = factor * coeff_dyz_p1_p1_0; +COEFF(2,1,0) = factor * coeff_dyz_p2_p1_0; +COEFF(-2,2,0) = factor * coeff_dyz_m2_p2_0; +COEFF(-1,2,0) = factor * coeff_dyz_m1_p2_0; +COEFF(0,2,0) = factor * coeff_dyz_0_p2_0; +COEFF(1,2,0) = factor * coeff_dyz_p1_p2_0; +COEFF(2,2,0) = factor * coeff_dyz_p2_p2_0; +COEFF(-2,-2,1) = factor * coeff_dyz_m2_m2_p1; +COEFF(-1,-2,1) = factor * coeff_dyz_m1_m2_p1; +COEFF(0,-2,1) = factor * coeff_dyz_0_m2_p1; +COEFF(1,-2,1) = factor * coeff_dyz_p1_m2_p1; +COEFF(2,-2,1) = factor * coeff_dyz_p2_m2_p1; +COEFF(-2,-1,1) = factor * coeff_dyz_m2_m1_p1; +COEFF(-1,-1,1) = factor * coeff_dyz_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dyz_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dyz_p1_m1_p1; +COEFF(2,-1,1) = factor * coeff_dyz_p2_m1_p1; +COEFF(-2,0,1) = factor * coeff_dyz_m2_0_p1; +COEFF(-1,0,1) = factor * coeff_dyz_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dyz_0_0_p1; +COEFF(1,0,1) = factor * coeff_dyz_p1_0_p1; +COEFF(2,0,1) = factor * coeff_dyz_p2_0_p1; +COEFF(-2,1,1) = factor * coeff_dyz_m2_p1_p1; +COEFF(-1,1,1) = factor * coeff_dyz_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dyz_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dyz_p1_p1_p1; +COEFF(2,1,1) = factor * coeff_dyz_p2_p1_p1; +COEFF(-2,2,1) = factor * coeff_dyz_m2_p2_p1; +COEFF(-1,2,1) = factor * coeff_dyz_m1_p2_p1; +COEFF(0,2,1) = factor * coeff_dyz_0_p2_p1; +COEFF(1,2,1) = factor * coeff_dyz_p1_p2_p1; +COEFF(2,2,1) = factor * coeff_dyz_p2_p2_p1; +COEFF(-2,-2,2) = factor * coeff_dyz_m2_m2_p2; +COEFF(-1,-2,2) = factor * coeff_dyz_m1_m2_p2; +COEFF(0,-2,2) = factor * coeff_dyz_0_m2_p2; +COEFF(1,-2,2) = factor * coeff_dyz_p1_m2_p2; +COEFF(2,-2,2) = factor * coeff_dyz_p2_m2_p2; +COEFF(-2,-1,2) = factor * coeff_dyz_m2_m1_p2; +COEFF(-1,-1,2) = factor * coeff_dyz_m1_m1_p2; +COEFF(0,-1,2) = factor * coeff_dyz_0_m1_p2; +COEFF(1,-1,2) = factor * coeff_dyz_p1_m1_p2; +COEFF(2,-1,2) = factor * coeff_dyz_p2_m1_p2; +COEFF(-2,0,2) = factor * coeff_dyz_m2_0_p2; +COEFF(-1,0,2) = factor * coeff_dyz_m1_0_p2; +COEFF(0,0,2) = factor * coeff_dyz_0_0_p2; +COEFF(1,0,2) = factor * coeff_dyz_p1_0_p2; +COEFF(2,0,2) = factor * coeff_dyz_p2_0_p2; +COEFF(-2,1,2) = factor * coeff_dyz_m2_p1_p2; +COEFF(-1,1,2) = factor * coeff_dyz_m1_p1_p2; +COEFF(0,1,2) = factor * coeff_dyz_0_p1_p2; +COEFF(1,1,2) = factor * coeff_dyz_p1_p1_p2; +COEFF(2,1,2) = factor * coeff_dyz_p2_p1_p2; +COEFF(-2,2,2) = factor * coeff_dyz_m2_p2_p2; +COEFF(-1,2,2) = factor * coeff_dyz_m1_p2_p2; +COEFF(0,2,2) = factor * coeff_dyz_0_p2_p2; +COEFF(1,2,2) = factor * coeff_dyz_p1_p2_p2; +COEFF(2,2,2) = factor * coeff_dyz_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dz.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dz.dcl.c new file mode 100644 index 0000000..785a843 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dz.dcl.c @@ -0,0 +1,125 @@ +fp coeff_dz_m2_m2_m2, + coeff_dz_m1_m2_m2, + coeff_dz_0_m2_m2, + coeff_dz_p1_m2_m2, + coeff_dz_p2_m2_m2, + coeff_dz_m2_m1_m2, + coeff_dz_m1_m1_m2, + coeff_dz_0_m1_m2, + coeff_dz_p1_m1_m2, + coeff_dz_p2_m1_m2, + coeff_dz_m2_0_m2, + coeff_dz_m1_0_m2, + coeff_dz_0_0_m2, + coeff_dz_p1_0_m2, + coeff_dz_p2_0_m2, + coeff_dz_m2_p1_m2, + coeff_dz_m1_p1_m2, + coeff_dz_0_p1_m2, + coeff_dz_p1_p1_m2, + coeff_dz_p2_p1_m2, + coeff_dz_m2_p2_m2, + coeff_dz_m1_p2_m2, + coeff_dz_0_p2_m2, + coeff_dz_p1_p2_m2, + coeff_dz_p2_p2_m2, + coeff_dz_m2_m2_m1, + coeff_dz_m1_m2_m1, + coeff_dz_0_m2_m1, + coeff_dz_p1_m2_m1, + coeff_dz_p2_m2_m1, + coeff_dz_m2_m1_m1, + coeff_dz_m1_m1_m1, + coeff_dz_0_m1_m1, + coeff_dz_p1_m1_m1, + coeff_dz_p2_m1_m1, + coeff_dz_m2_0_m1, + coeff_dz_m1_0_m1, + coeff_dz_0_0_m1, + coeff_dz_p1_0_m1, + coeff_dz_p2_0_m1, + coeff_dz_m2_p1_m1, + coeff_dz_m1_p1_m1, + coeff_dz_0_p1_m1, + coeff_dz_p1_p1_m1, + coeff_dz_p2_p1_m1, + coeff_dz_m2_p2_m1, + coeff_dz_m1_p2_m1, + coeff_dz_0_p2_m1, + coeff_dz_p1_p2_m1, + coeff_dz_p2_p2_m1, + coeff_dz_m2_m2_0, + coeff_dz_m1_m2_0, + coeff_dz_0_m2_0, + coeff_dz_p1_m2_0, + coeff_dz_p2_m2_0, + coeff_dz_m2_m1_0, + coeff_dz_m1_m1_0, + coeff_dz_0_m1_0, + coeff_dz_p1_m1_0, + coeff_dz_p2_m1_0, + coeff_dz_m2_0_0, + coeff_dz_m1_0_0, + coeff_dz_0_0_0, + coeff_dz_p1_0_0, + coeff_dz_p2_0_0, + coeff_dz_m2_p1_0, + coeff_dz_m1_p1_0, + coeff_dz_0_p1_0, + coeff_dz_p1_p1_0, + coeff_dz_p2_p1_0, + coeff_dz_m2_p2_0, + coeff_dz_m1_p2_0, + coeff_dz_0_p2_0, + coeff_dz_p1_p2_0, + coeff_dz_p2_p2_0, + coeff_dz_m2_m2_p1, + coeff_dz_m1_m2_p1, + coeff_dz_0_m2_p1, + coeff_dz_p1_m2_p1, + coeff_dz_p2_m2_p1, + coeff_dz_m2_m1_p1, + coeff_dz_m1_m1_p1, + coeff_dz_0_m1_p1, + coeff_dz_p1_m1_p1, + coeff_dz_p2_m1_p1, + coeff_dz_m2_0_p1, + coeff_dz_m1_0_p1, + coeff_dz_0_0_p1, + coeff_dz_p1_0_p1, + coeff_dz_p2_0_p1, + coeff_dz_m2_p1_p1, + coeff_dz_m1_p1_p1, + coeff_dz_0_p1_p1, + coeff_dz_p1_p1_p1, + coeff_dz_p2_p1_p1, + coeff_dz_m2_p2_p1, + coeff_dz_m1_p2_p1, + coeff_dz_0_p2_p1, + coeff_dz_p1_p2_p1, + coeff_dz_p2_p2_p1, + coeff_dz_m2_m2_p2, + coeff_dz_m1_m2_p2, + coeff_dz_0_m2_p2, + coeff_dz_p1_m2_p2, + coeff_dz_p2_m2_p2, + coeff_dz_m2_m1_p2, + coeff_dz_m1_m1_p2, + coeff_dz_0_m1_p2, + coeff_dz_p1_m1_p2, + coeff_dz_p2_m1_p2, + coeff_dz_m2_0_p2, + coeff_dz_m1_0_p2, + coeff_dz_0_0_p2, + coeff_dz_p1_0_p2, + coeff_dz_p2_0_p2, + coeff_dz_m2_p1_p2, + coeff_dz_m1_p1_p2, + coeff_dz_0_p1_p2, + coeff_dz_p1_p1_p2, + coeff_dz_p2_p1_p2, + coeff_dz_m2_p2_p2, + coeff_dz_m1_p2_p2, + coeff_dz_0_p2_p2, + coeff_dz_p1_p2_p2, + coeff_dz_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dz.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dz.store.c new file mode 100644 index 0000000..7ff4470 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dz.store.c @@ -0,0 +1,125 @@ +COEFF(-2,-2,-2) = factor * coeff_dz_m2_m2_m2; +COEFF(-1,-2,-2) = factor * coeff_dz_m1_m2_m2; +COEFF(0,-2,-2) = factor * coeff_dz_0_m2_m2; +COEFF(1,-2,-2) = factor * coeff_dz_p1_m2_m2; +COEFF(2,-2,-2) = factor * coeff_dz_p2_m2_m2; +COEFF(-2,-1,-2) = factor * coeff_dz_m2_m1_m2; +COEFF(-1,-1,-2) = factor * coeff_dz_m1_m1_m2; +COEFF(0,-1,-2) = factor * coeff_dz_0_m1_m2; +COEFF(1,-1,-2) = factor * coeff_dz_p1_m1_m2; +COEFF(2,-1,-2) = factor * coeff_dz_p2_m1_m2; +COEFF(-2,0,-2) = factor * coeff_dz_m2_0_m2; +COEFF(-1,0,-2) = factor * coeff_dz_m1_0_m2; +COEFF(0,0,-2) = factor * coeff_dz_0_0_m2; +COEFF(1,0,-2) = factor * coeff_dz_p1_0_m2; +COEFF(2,0,-2) = factor * coeff_dz_p2_0_m2; +COEFF(-2,1,-2) = factor * coeff_dz_m2_p1_m2; +COEFF(-1,1,-2) = factor * coeff_dz_m1_p1_m2; +COEFF(0,1,-2) = factor * coeff_dz_0_p1_m2; +COEFF(1,1,-2) = factor * coeff_dz_p1_p1_m2; +COEFF(2,1,-2) = factor * coeff_dz_p2_p1_m2; +COEFF(-2,2,-2) = factor * coeff_dz_m2_p2_m2; +COEFF(-1,2,-2) = factor * coeff_dz_m1_p2_m2; +COEFF(0,2,-2) = factor * coeff_dz_0_p2_m2; +COEFF(1,2,-2) = factor * coeff_dz_p1_p2_m2; +COEFF(2,2,-2) = factor * coeff_dz_p2_p2_m2; +COEFF(-2,-2,-1) = factor * coeff_dz_m2_m2_m1; +COEFF(-1,-2,-1) = factor * coeff_dz_m1_m2_m1; +COEFF(0,-2,-1) = factor * coeff_dz_0_m2_m1; +COEFF(1,-2,-1) = factor * coeff_dz_p1_m2_m1; +COEFF(2,-2,-1) = factor * coeff_dz_p2_m2_m1; +COEFF(-2,-1,-1) = factor * coeff_dz_m2_m1_m1; +COEFF(-1,-1,-1) = factor * coeff_dz_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dz_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dz_p1_m1_m1; +COEFF(2,-1,-1) = factor * coeff_dz_p2_m1_m1; +COEFF(-2,0,-1) = factor * coeff_dz_m2_0_m1; +COEFF(-1,0,-1) = factor * coeff_dz_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dz_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dz_p1_0_m1; +COEFF(2,0,-1) = factor * coeff_dz_p2_0_m1; +COEFF(-2,1,-1) = factor * coeff_dz_m2_p1_m1; +COEFF(-1,1,-1) = factor * coeff_dz_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dz_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dz_p1_p1_m1; +COEFF(2,1,-1) = factor * coeff_dz_p2_p1_m1; +COEFF(-2,2,-1) = factor * coeff_dz_m2_p2_m1; +COEFF(-1,2,-1) = factor * coeff_dz_m1_p2_m1; +COEFF(0,2,-1) = factor * coeff_dz_0_p2_m1; +COEFF(1,2,-1) = factor * coeff_dz_p1_p2_m1; +COEFF(2,2,-1) = factor * coeff_dz_p2_p2_m1; +COEFF(-2,-2,0) = factor * coeff_dz_m2_m2_0; +COEFF(-1,-2,0) = factor * coeff_dz_m1_m2_0; +COEFF(0,-2,0) = factor * coeff_dz_0_m2_0; +COEFF(1,-2,0) = factor * coeff_dz_p1_m2_0; +COEFF(2,-2,0) = factor * coeff_dz_p2_m2_0; +COEFF(-2,-1,0) = factor * coeff_dz_m2_m1_0; +COEFF(-1,-1,0) = factor * coeff_dz_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dz_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dz_p1_m1_0; +COEFF(2,-1,0) = factor * coeff_dz_p2_m1_0; +COEFF(-2,0,0) = factor * coeff_dz_m2_0_0; +COEFF(-1,0,0) = factor * coeff_dz_m1_0_0; +COEFF(0,0,0) = factor * coeff_dz_0_0_0; +COEFF(1,0,0) = factor * coeff_dz_p1_0_0; +COEFF(2,0,0) = factor * coeff_dz_p2_0_0; +COEFF(-2,1,0) = factor * coeff_dz_m2_p1_0; +COEFF(-1,1,0) = factor * coeff_dz_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dz_0_p1_0; +COEFF(1,1,0) = factor * coeff_dz_p1_p1_0; +COEFF(2,1,0) = factor * coeff_dz_p2_p1_0; +COEFF(-2,2,0) = factor * coeff_dz_m2_p2_0; +COEFF(-1,2,0) = factor * coeff_dz_m1_p2_0; +COEFF(0,2,0) = factor * coeff_dz_0_p2_0; +COEFF(1,2,0) = factor * coeff_dz_p1_p2_0; +COEFF(2,2,0) = factor * coeff_dz_p2_p2_0; +COEFF(-2,-2,1) = factor * coeff_dz_m2_m2_p1; +COEFF(-1,-2,1) = factor * coeff_dz_m1_m2_p1; +COEFF(0,-2,1) = factor * coeff_dz_0_m2_p1; +COEFF(1,-2,1) = factor * coeff_dz_p1_m2_p1; +COEFF(2,-2,1) = factor * coeff_dz_p2_m2_p1; +COEFF(-2,-1,1) = factor * coeff_dz_m2_m1_p1; +COEFF(-1,-1,1) = factor * coeff_dz_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dz_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dz_p1_m1_p1; +COEFF(2,-1,1) = factor * coeff_dz_p2_m1_p1; +COEFF(-2,0,1) = factor * coeff_dz_m2_0_p1; +COEFF(-1,0,1) = factor * coeff_dz_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dz_0_0_p1; +COEFF(1,0,1) = factor * coeff_dz_p1_0_p1; +COEFF(2,0,1) = factor * coeff_dz_p2_0_p1; +COEFF(-2,1,1) = factor * coeff_dz_m2_p1_p1; +COEFF(-1,1,1) = factor * coeff_dz_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dz_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dz_p1_p1_p1; +COEFF(2,1,1) = factor * coeff_dz_p2_p1_p1; +COEFF(-2,2,1) = factor * coeff_dz_m2_p2_p1; +COEFF(-1,2,1) = factor * coeff_dz_m1_p2_p1; +COEFF(0,2,1) = factor * coeff_dz_0_p2_p1; +COEFF(1,2,1) = factor * coeff_dz_p1_p2_p1; +COEFF(2,2,1) = factor * coeff_dz_p2_p2_p1; +COEFF(-2,-2,2) = factor * coeff_dz_m2_m2_p2; +COEFF(-1,-2,2) = factor * coeff_dz_m1_m2_p2; +COEFF(0,-2,2) = factor * coeff_dz_0_m2_p2; +COEFF(1,-2,2) = factor * coeff_dz_p1_m2_p2; +COEFF(2,-2,2) = factor * coeff_dz_p2_m2_p2; +COEFF(-2,-1,2) = factor * coeff_dz_m2_m1_p2; +COEFF(-1,-1,2) = factor * coeff_dz_m1_m1_p2; +COEFF(0,-1,2) = factor * coeff_dz_0_m1_p2; +COEFF(1,-1,2) = factor * coeff_dz_p1_m1_p2; +COEFF(2,-1,2) = factor * coeff_dz_p2_m1_p2; +COEFF(-2,0,2) = factor * coeff_dz_m2_0_p2; +COEFF(-1,0,2) = factor * coeff_dz_m1_0_p2; +COEFF(0,0,2) = factor * coeff_dz_0_0_p2; +COEFF(1,0,2) = factor * coeff_dz_p1_0_p2; +COEFF(2,0,2) = factor * coeff_dz_p2_0_p2; +COEFF(-2,1,2) = factor * coeff_dz_m2_p1_p2; +COEFF(-1,1,2) = factor * coeff_dz_m1_p1_p2; +COEFF(0,1,2) = factor * coeff_dz_0_p1_p2; +COEFF(1,1,2) = factor * coeff_dz_p1_p1_p2; +COEFF(2,1,2) = factor * coeff_dz_p2_p1_p2; +COEFF(-2,2,2) = factor * coeff_dz_m2_p2_p2; +COEFF(-1,2,2) = factor * coeff_dz_m1_p2_p2; +COEFF(0,2,2) = factor * coeff_dz_0_p2_p2; +COEFF(1,2,2) = factor * coeff_dz_p1_p2_p2; +COEFF(2,2,2) = factor * coeff_dz_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dzz.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dzz.dcl.c new file mode 100644 index 0000000..baf56e5 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dzz.dcl.c @@ -0,0 +1,125 @@ +fp coeff_dzz_m2_m2_m2, + coeff_dzz_m1_m2_m2, + coeff_dzz_0_m2_m2, + coeff_dzz_p1_m2_m2, + coeff_dzz_p2_m2_m2, + coeff_dzz_m2_m1_m2, + coeff_dzz_m1_m1_m2, + coeff_dzz_0_m1_m2, + coeff_dzz_p1_m1_m2, + coeff_dzz_p2_m1_m2, + coeff_dzz_m2_0_m2, + coeff_dzz_m1_0_m2, + coeff_dzz_0_0_m2, + coeff_dzz_p1_0_m2, + coeff_dzz_p2_0_m2, + coeff_dzz_m2_p1_m2, + coeff_dzz_m1_p1_m2, + coeff_dzz_0_p1_m2, + coeff_dzz_p1_p1_m2, + coeff_dzz_p2_p1_m2, + coeff_dzz_m2_p2_m2, + coeff_dzz_m1_p2_m2, + coeff_dzz_0_p2_m2, + coeff_dzz_p1_p2_m2, + coeff_dzz_p2_p2_m2, + coeff_dzz_m2_m2_m1, + coeff_dzz_m1_m2_m1, + coeff_dzz_0_m2_m1, + coeff_dzz_p1_m2_m1, + coeff_dzz_p2_m2_m1, + coeff_dzz_m2_m1_m1, + coeff_dzz_m1_m1_m1, + coeff_dzz_0_m1_m1, + coeff_dzz_p1_m1_m1, + coeff_dzz_p2_m1_m1, + coeff_dzz_m2_0_m1, + coeff_dzz_m1_0_m1, + coeff_dzz_0_0_m1, + coeff_dzz_p1_0_m1, + coeff_dzz_p2_0_m1, + coeff_dzz_m2_p1_m1, + coeff_dzz_m1_p1_m1, + coeff_dzz_0_p1_m1, + coeff_dzz_p1_p1_m1, + coeff_dzz_p2_p1_m1, + coeff_dzz_m2_p2_m1, + coeff_dzz_m1_p2_m1, + coeff_dzz_0_p2_m1, + coeff_dzz_p1_p2_m1, + coeff_dzz_p2_p2_m1, + coeff_dzz_m2_m2_0, + coeff_dzz_m1_m2_0, + coeff_dzz_0_m2_0, + coeff_dzz_p1_m2_0, + coeff_dzz_p2_m2_0, + coeff_dzz_m2_m1_0, + coeff_dzz_m1_m1_0, + coeff_dzz_0_m1_0, + coeff_dzz_p1_m1_0, + coeff_dzz_p2_m1_0, + coeff_dzz_m2_0_0, + coeff_dzz_m1_0_0, + coeff_dzz_0_0_0, + coeff_dzz_p1_0_0, + coeff_dzz_p2_0_0, + coeff_dzz_m2_p1_0, + coeff_dzz_m1_p1_0, + coeff_dzz_0_p1_0, + coeff_dzz_p1_p1_0, + coeff_dzz_p2_p1_0, + coeff_dzz_m2_p2_0, + coeff_dzz_m1_p2_0, + coeff_dzz_0_p2_0, + coeff_dzz_p1_p2_0, + coeff_dzz_p2_p2_0, + coeff_dzz_m2_m2_p1, + coeff_dzz_m1_m2_p1, + coeff_dzz_0_m2_p1, + coeff_dzz_p1_m2_p1, + coeff_dzz_p2_m2_p1, + coeff_dzz_m2_m1_p1, + coeff_dzz_m1_m1_p1, + coeff_dzz_0_m1_p1, + coeff_dzz_p1_m1_p1, + coeff_dzz_p2_m1_p1, + coeff_dzz_m2_0_p1, + coeff_dzz_m1_0_p1, + coeff_dzz_0_0_p1, + coeff_dzz_p1_0_p1, + coeff_dzz_p2_0_p1, + coeff_dzz_m2_p1_p1, + coeff_dzz_m1_p1_p1, + coeff_dzz_0_p1_p1, + coeff_dzz_p1_p1_p1, + coeff_dzz_p2_p1_p1, + coeff_dzz_m2_p2_p1, + coeff_dzz_m1_p2_p1, + coeff_dzz_0_p2_p1, + coeff_dzz_p1_p2_p1, + coeff_dzz_p2_p2_p1, + coeff_dzz_m2_m2_p2, + coeff_dzz_m1_m2_p2, + coeff_dzz_0_m2_p2, + coeff_dzz_p1_m2_p2, + coeff_dzz_p2_m2_p2, + coeff_dzz_m2_m1_p2, + coeff_dzz_m1_m1_p2, + coeff_dzz_0_m1_p2, + coeff_dzz_p1_m1_p2, + coeff_dzz_p2_m1_p2, + coeff_dzz_m2_0_p2, + coeff_dzz_m1_0_p2, + coeff_dzz_0_0_p2, + coeff_dzz_p1_0_p2, + coeff_dzz_p2_0_p2, + coeff_dzz_m2_p1_p2, + coeff_dzz_m1_p1_p2, + coeff_dzz_0_p1_p2, + coeff_dzz_p1_p1_p2, + coeff_dzz_p2_p1_p2, + coeff_dzz_m2_p2_p2, + coeff_dzz_m1_p2_p2, + coeff_dzz_0_p2_p2, + coeff_dzz_p1_p2_p2, + coeff_dzz_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dzz.store.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dzz.store.c new file mode 100644 index 0000000..9343077 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dzz.store.c @@ -0,0 +1,125 @@ +COEFF(-2,-2,-2) = factor * coeff_dzz_m2_m2_m2; +COEFF(-1,-2,-2) = factor * coeff_dzz_m1_m2_m2; +COEFF(0,-2,-2) = factor * coeff_dzz_0_m2_m2; +COEFF(1,-2,-2) = factor * coeff_dzz_p1_m2_m2; +COEFF(2,-2,-2) = factor * coeff_dzz_p2_m2_m2; +COEFF(-2,-1,-2) = factor * coeff_dzz_m2_m1_m2; +COEFF(-1,-1,-2) = factor * coeff_dzz_m1_m1_m2; +COEFF(0,-1,-2) = factor * coeff_dzz_0_m1_m2; +COEFF(1,-1,-2) = factor * coeff_dzz_p1_m1_m2; +COEFF(2,-1,-2) = factor * coeff_dzz_p2_m1_m2; +COEFF(-2,0,-2) = factor * coeff_dzz_m2_0_m2; +COEFF(-1,0,-2) = factor * coeff_dzz_m1_0_m2; +COEFF(0,0,-2) = factor * coeff_dzz_0_0_m2; +COEFF(1,0,-2) = factor * coeff_dzz_p1_0_m2; +COEFF(2,0,-2) = factor * coeff_dzz_p2_0_m2; +COEFF(-2,1,-2) = factor * coeff_dzz_m2_p1_m2; +COEFF(-1,1,-2) = factor * coeff_dzz_m1_p1_m2; +COEFF(0,1,-2) = factor * coeff_dzz_0_p1_m2; +COEFF(1,1,-2) = factor * coeff_dzz_p1_p1_m2; +COEFF(2,1,-2) = factor * coeff_dzz_p2_p1_m2; +COEFF(-2,2,-2) = factor * coeff_dzz_m2_p2_m2; +COEFF(-1,2,-2) = factor * coeff_dzz_m1_p2_m2; +COEFF(0,2,-2) = factor * coeff_dzz_0_p2_m2; +COEFF(1,2,-2) = factor * coeff_dzz_p1_p2_m2; +COEFF(2,2,-2) = factor * coeff_dzz_p2_p2_m2; +COEFF(-2,-2,-1) = factor * coeff_dzz_m2_m2_m1; +COEFF(-1,-2,-1) = factor * coeff_dzz_m1_m2_m1; +COEFF(0,-2,-1) = factor * coeff_dzz_0_m2_m1; +COEFF(1,-2,-1) = factor * coeff_dzz_p1_m2_m1; +COEFF(2,-2,-1) = factor * coeff_dzz_p2_m2_m1; +COEFF(-2,-1,-1) = factor * coeff_dzz_m2_m1_m1; +COEFF(-1,-1,-1) = factor * coeff_dzz_m1_m1_m1; +COEFF(0,-1,-1) = factor * coeff_dzz_0_m1_m1; +COEFF(1,-1,-1) = factor * coeff_dzz_p1_m1_m1; +COEFF(2,-1,-1) = factor * coeff_dzz_p2_m1_m1; +COEFF(-2,0,-1) = factor * coeff_dzz_m2_0_m1; +COEFF(-1,0,-1) = factor * coeff_dzz_m1_0_m1; +COEFF(0,0,-1) = factor * coeff_dzz_0_0_m1; +COEFF(1,0,-1) = factor * coeff_dzz_p1_0_m1; +COEFF(2,0,-1) = factor * coeff_dzz_p2_0_m1; +COEFF(-2,1,-1) = factor * coeff_dzz_m2_p1_m1; +COEFF(-1,1,-1) = factor * coeff_dzz_m1_p1_m1; +COEFF(0,1,-1) = factor * coeff_dzz_0_p1_m1; +COEFF(1,1,-1) = factor * coeff_dzz_p1_p1_m1; +COEFF(2,1,-1) = factor * coeff_dzz_p2_p1_m1; +COEFF(-2,2,-1) = factor * coeff_dzz_m2_p2_m1; +COEFF(-1,2,-1) = factor * coeff_dzz_m1_p2_m1; +COEFF(0,2,-1) = factor * coeff_dzz_0_p2_m1; +COEFF(1,2,-1) = factor * coeff_dzz_p1_p2_m1; +COEFF(2,2,-1) = factor * coeff_dzz_p2_p2_m1; +COEFF(-2,-2,0) = factor * coeff_dzz_m2_m2_0; +COEFF(-1,-2,0) = factor * coeff_dzz_m1_m2_0; +COEFF(0,-2,0) = factor * coeff_dzz_0_m2_0; +COEFF(1,-2,0) = factor * coeff_dzz_p1_m2_0; +COEFF(2,-2,0) = factor * coeff_dzz_p2_m2_0; +COEFF(-2,-1,0) = factor * coeff_dzz_m2_m1_0; +COEFF(-1,-1,0) = factor * coeff_dzz_m1_m1_0; +COEFF(0,-1,0) = factor * coeff_dzz_0_m1_0; +COEFF(1,-1,0) = factor * coeff_dzz_p1_m1_0; +COEFF(2,-1,0) = factor * coeff_dzz_p2_m1_0; +COEFF(-2,0,0) = factor * coeff_dzz_m2_0_0; +COEFF(-1,0,0) = factor * coeff_dzz_m1_0_0; +COEFF(0,0,0) = factor * coeff_dzz_0_0_0; +COEFF(1,0,0) = factor * coeff_dzz_p1_0_0; +COEFF(2,0,0) = factor * coeff_dzz_p2_0_0; +COEFF(-2,1,0) = factor * coeff_dzz_m2_p1_0; +COEFF(-1,1,0) = factor * coeff_dzz_m1_p1_0; +COEFF(0,1,0) = factor * coeff_dzz_0_p1_0; +COEFF(1,1,0) = factor * coeff_dzz_p1_p1_0; +COEFF(2,1,0) = factor * coeff_dzz_p2_p1_0; +COEFF(-2,2,0) = factor * coeff_dzz_m2_p2_0; +COEFF(-1,2,0) = factor * coeff_dzz_m1_p2_0; +COEFF(0,2,0) = factor * coeff_dzz_0_p2_0; +COEFF(1,2,0) = factor * coeff_dzz_p1_p2_0; +COEFF(2,2,0) = factor * coeff_dzz_p2_p2_0; +COEFF(-2,-2,1) = factor * coeff_dzz_m2_m2_p1; +COEFF(-1,-2,1) = factor * coeff_dzz_m1_m2_p1; +COEFF(0,-2,1) = factor * coeff_dzz_0_m2_p1; +COEFF(1,-2,1) = factor * coeff_dzz_p1_m2_p1; +COEFF(2,-2,1) = factor * coeff_dzz_p2_m2_p1; +COEFF(-2,-1,1) = factor * coeff_dzz_m2_m1_p1; +COEFF(-1,-1,1) = factor * coeff_dzz_m1_m1_p1; +COEFF(0,-1,1) = factor * coeff_dzz_0_m1_p1; +COEFF(1,-1,1) = factor * coeff_dzz_p1_m1_p1; +COEFF(2,-1,1) = factor * coeff_dzz_p2_m1_p1; +COEFF(-2,0,1) = factor * coeff_dzz_m2_0_p1; +COEFF(-1,0,1) = factor * coeff_dzz_m1_0_p1; +COEFF(0,0,1) = factor * coeff_dzz_0_0_p1; +COEFF(1,0,1) = factor * coeff_dzz_p1_0_p1; +COEFF(2,0,1) = factor * coeff_dzz_p2_0_p1; +COEFF(-2,1,1) = factor * coeff_dzz_m2_p1_p1; +COEFF(-1,1,1) = factor * coeff_dzz_m1_p1_p1; +COEFF(0,1,1) = factor * coeff_dzz_0_p1_p1; +COEFF(1,1,1) = factor * coeff_dzz_p1_p1_p1; +COEFF(2,1,1) = factor * coeff_dzz_p2_p1_p1; +COEFF(-2,2,1) = factor * coeff_dzz_m2_p2_p1; +COEFF(-1,2,1) = factor * coeff_dzz_m1_p2_p1; +COEFF(0,2,1) = factor * coeff_dzz_0_p2_p1; +COEFF(1,2,1) = factor * coeff_dzz_p1_p2_p1; +COEFF(2,2,1) = factor * coeff_dzz_p2_p2_p1; +COEFF(-2,-2,2) = factor * coeff_dzz_m2_m2_p2; +COEFF(-1,-2,2) = factor * coeff_dzz_m1_m2_p2; +COEFF(0,-2,2) = factor * coeff_dzz_0_m2_p2; +COEFF(1,-2,2) = factor * coeff_dzz_p1_m2_p2; +COEFF(2,-2,2) = factor * coeff_dzz_p2_m2_p2; +COEFF(-2,-1,2) = factor * coeff_dzz_m2_m1_p2; +COEFF(-1,-1,2) = factor * coeff_dzz_m1_m1_p2; +COEFF(0,-1,2) = factor * coeff_dzz_0_m1_p2; +COEFF(1,-1,2) = factor * coeff_dzz_p1_m1_p2; +COEFF(2,-1,2) = factor * coeff_dzz_p2_m1_p2; +COEFF(-2,0,2) = factor * coeff_dzz_m2_0_p2; +COEFF(-1,0,2) = factor * coeff_dzz_m1_0_p2; +COEFF(0,0,2) = factor * coeff_dzz_0_0_p2; +COEFF(1,0,2) = factor * coeff_dzz_p1_0_p2; +COEFF(2,0,2) = factor * coeff_dzz_p2_0_p2; +COEFF(-2,1,2) = factor * coeff_dzz_m2_p1_p2; +COEFF(-1,1,2) = factor * coeff_dzz_m1_p1_p2; +COEFF(0,1,2) = factor * coeff_dzz_0_p1_p2; +COEFF(1,1,2) = factor * coeff_dzz_p1_p1_p2; +COEFF(2,1,2) = factor * coeff_dzz_p2_p1_p2; +COEFF(-2,2,2) = factor * coeff_dzz_m2_p2_p2; +COEFF(-1,2,2) = factor * coeff_dzz_m1_p2_p2; +COEFF(0,2,2) = factor * coeff_dzz_0_p2_p2; +COEFF(1,2,2) = factor * coeff_dzz_p1_p2_p2; +COEFF(2,2,2) = factor * coeff_dzz_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/data-var.assign.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/data-var.assign.c new file mode 100644 index 0000000..963fa1b --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/data-var.assign.c @@ -0,0 +1,125 @@ +data_m2_m2_m2 = DATA(-2,-2,-2); +data_m1_m2_m2 = DATA(-1,-2,-2); +data_0_m2_m2 = DATA(0,-2,-2); +data_p1_m2_m2 = DATA(1,-2,-2); +data_p2_m2_m2 = DATA(2,-2,-2); +data_m2_m1_m2 = DATA(-2,-1,-2); +data_m1_m1_m2 = DATA(-1,-1,-2); +data_0_m1_m2 = DATA(0,-1,-2); +data_p1_m1_m2 = DATA(1,-1,-2); +data_p2_m1_m2 = DATA(2,-1,-2); +data_m2_0_m2 = DATA(-2,0,-2); +data_m1_0_m2 = DATA(-1,0,-2); +data_0_0_m2 = DATA(0,0,-2); +data_p1_0_m2 = DATA(1,0,-2); +data_p2_0_m2 = DATA(2,0,-2); +data_m2_p1_m2 = DATA(-2,1,-2); +data_m1_p1_m2 = DATA(-1,1,-2); +data_0_p1_m2 = DATA(0,1,-2); +data_p1_p1_m2 = DATA(1,1,-2); +data_p2_p1_m2 = DATA(2,1,-2); +data_m2_p2_m2 = DATA(-2,2,-2); +data_m1_p2_m2 = DATA(-1,2,-2); +data_0_p2_m2 = DATA(0,2,-2); +data_p1_p2_m2 = DATA(1,2,-2); +data_p2_p2_m2 = DATA(2,2,-2); +data_m2_m2_m1 = DATA(-2,-2,-1); +data_m1_m2_m1 = DATA(-1,-2,-1); +data_0_m2_m1 = DATA(0,-2,-1); +data_p1_m2_m1 = DATA(1,-2,-1); +data_p2_m2_m1 = DATA(2,-2,-1); +data_m2_m1_m1 = DATA(-2,-1,-1); +data_m1_m1_m1 = DATA(-1,-1,-1); +data_0_m1_m1 = DATA(0,-1,-1); +data_p1_m1_m1 = DATA(1,-1,-1); +data_p2_m1_m1 = DATA(2,-1,-1); +data_m2_0_m1 = DATA(-2,0,-1); +data_m1_0_m1 = DATA(-1,0,-1); +data_0_0_m1 = DATA(0,0,-1); +data_p1_0_m1 = DATA(1,0,-1); +data_p2_0_m1 = DATA(2,0,-1); +data_m2_p1_m1 = DATA(-2,1,-1); +data_m1_p1_m1 = DATA(-1,1,-1); +data_0_p1_m1 = DATA(0,1,-1); +data_p1_p1_m1 = DATA(1,1,-1); +data_p2_p1_m1 = DATA(2,1,-1); +data_m2_p2_m1 = DATA(-2,2,-1); +data_m1_p2_m1 = DATA(-1,2,-1); +data_0_p2_m1 = DATA(0,2,-1); +data_p1_p2_m1 = DATA(1,2,-1); +data_p2_p2_m1 = DATA(2,2,-1); +data_m2_m2_0 = DATA(-2,-2,0); +data_m1_m2_0 = DATA(-1,-2,0); +data_0_m2_0 = DATA(0,-2,0); +data_p1_m2_0 = DATA(1,-2,0); +data_p2_m2_0 = DATA(2,-2,0); +data_m2_m1_0 = DATA(-2,-1,0); +data_m1_m1_0 = DATA(-1,-1,0); +data_0_m1_0 = DATA(0,-1,0); +data_p1_m1_0 = DATA(1,-1,0); +data_p2_m1_0 = DATA(2,-1,0); +data_m2_0_0 = DATA(-2,0,0); +data_m1_0_0 = DATA(-1,0,0); +data_0_0_0 = DATA(0,0,0); +data_p1_0_0 = DATA(1,0,0); +data_p2_0_0 = DATA(2,0,0); +data_m2_p1_0 = DATA(-2,1,0); +data_m1_p1_0 = DATA(-1,1,0); +data_0_p1_0 = DATA(0,1,0); +data_p1_p1_0 = DATA(1,1,0); +data_p2_p1_0 = DATA(2,1,0); +data_m2_p2_0 = DATA(-2,2,0); +data_m1_p2_0 = DATA(-1,2,0); +data_0_p2_0 = DATA(0,2,0); +data_p1_p2_0 = DATA(1,2,0); +data_p2_p2_0 = DATA(2,2,0); +data_m2_m2_p1 = DATA(-2,-2,1); +data_m1_m2_p1 = DATA(-1,-2,1); +data_0_m2_p1 = DATA(0,-2,1); +data_p1_m2_p1 = DATA(1,-2,1); +data_p2_m2_p1 = DATA(2,-2,1); +data_m2_m1_p1 = DATA(-2,-1,1); +data_m1_m1_p1 = DATA(-1,-1,1); +data_0_m1_p1 = DATA(0,-1,1); +data_p1_m1_p1 = DATA(1,-1,1); +data_p2_m1_p1 = DATA(2,-1,1); +data_m2_0_p1 = DATA(-2,0,1); +data_m1_0_p1 = DATA(-1,0,1); +data_0_0_p1 = DATA(0,0,1); +data_p1_0_p1 = DATA(1,0,1); +data_p2_0_p1 = DATA(2,0,1); +data_m2_p1_p1 = DATA(-2,1,1); +data_m1_p1_p1 = DATA(-1,1,1); +data_0_p1_p1 = DATA(0,1,1); +data_p1_p1_p1 = DATA(1,1,1); +data_p2_p1_p1 = DATA(2,1,1); +data_m2_p2_p1 = DATA(-2,2,1); +data_m1_p2_p1 = DATA(-1,2,1); +data_0_p2_p1 = DATA(0,2,1); +data_p1_p2_p1 = DATA(1,2,1); +data_p2_p2_p1 = DATA(2,2,1); +data_m2_m2_p2 = DATA(-2,-2,2); +data_m1_m2_p2 = DATA(-1,-2,2); +data_0_m2_p2 = DATA(0,-2,2); +data_p1_m2_p2 = DATA(1,-2,2); +data_p2_m2_p2 = DATA(2,-2,2); +data_m2_m1_p2 = DATA(-2,-1,2); +data_m1_m1_p2 = DATA(-1,-1,2); +data_0_m1_p2 = DATA(0,-1,2); +data_p1_m1_p2 = DATA(1,-1,2); +data_p2_m1_p2 = DATA(2,-1,2); +data_m2_0_p2 = DATA(-2,0,2); +data_m1_0_p2 = DATA(-1,0,2); +data_0_0_p2 = DATA(0,0,2); +data_p1_0_p2 = DATA(1,0,2); +data_p2_0_p2 = DATA(2,0,2); +data_m2_p1_p2 = DATA(-2,1,2); +data_m1_p1_p2 = DATA(-1,1,2); +data_0_p1_p2 = DATA(0,1,2); +data_p1_p1_p2 = DATA(1,1,2); +data_p2_p1_p2 = DATA(2,1,2); +data_m2_p2_p2 = DATA(-2,2,2); +data_m1_p2_p2 = DATA(-1,2,2); +data_0_p2_p2 = DATA(0,2,2); +data_p1_p2_p2 = DATA(1,2,2); +data_p2_p2_p2 = DATA(2,2,2); diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/data-var.dcl.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/data-var.dcl.c new file mode 100644 index 0000000..3f45b12 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/data-var.dcl.c @@ -0,0 +1,125 @@ +fp data_m2_m2_m2, + data_m1_m2_m2, + data_0_m2_m2, + data_p1_m2_m2, + data_p2_m2_m2, + data_m2_m1_m2, + data_m1_m1_m2, + data_0_m1_m2, + data_p1_m1_m2, + data_p2_m1_m2, + data_m2_0_m2, + data_m1_0_m2, + data_0_0_m2, + data_p1_0_m2, + data_p2_0_m2, + data_m2_p1_m2, + data_m1_p1_m2, + data_0_p1_m2, + data_p1_p1_m2, + data_p2_p1_m2, + data_m2_p2_m2, + data_m1_p2_m2, + data_0_p2_m2, + data_p1_p2_m2, + data_p2_p2_m2, + data_m2_m2_m1, + data_m1_m2_m1, + data_0_m2_m1, + data_p1_m2_m1, + data_p2_m2_m1, + data_m2_m1_m1, + data_m1_m1_m1, + data_0_m1_m1, + data_p1_m1_m1, + data_p2_m1_m1, + data_m2_0_m1, + data_m1_0_m1, + data_0_0_m1, + data_p1_0_m1, + data_p2_0_m1, + data_m2_p1_m1, + data_m1_p1_m1, + data_0_p1_m1, + data_p1_p1_m1, + data_p2_p1_m1, + data_m2_p2_m1, + data_m1_p2_m1, + data_0_p2_m1, + data_p1_p2_m1, + data_p2_p2_m1, + data_m2_m2_0, + data_m1_m2_0, + data_0_m2_0, + data_p1_m2_0, + data_p2_m2_0, + data_m2_m1_0, + data_m1_m1_0, + data_0_m1_0, + data_p1_m1_0, + data_p2_m1_0, + data_m2_0_0, + data_m1_0_0, + data_0_0_0, + data_p1_0_0, + data_p2_0_0, + data_m2_p1_0, + data_m1_p1_0, + data_0_p1_0, + data_p1_p1_0, + data_p2_p1_0, + data_m2_p2_0, + data_m1_p2_0, + data_0_p2_0, + data_p1_p2_0, + data_p2_p2_0, + data_m2_m2_p1, + data_m1_m2_p1, + data_0_m2_p1, + data_p1_m2_p1, + data_p2_m2_p1, + data_m2_m1_p1, + data_m1_m1_p1, + data_0_m1_p1, + data_p1_m1_p1, + data_p2_m1_p1, + data_m2_0_p1, + data_m1_0_p1, + data_0_0_p1, + data_p1_0_p1, + data_p2_0_p1, + data_m2_p1_p1, + data_m1_p1_p1, + data_0_p1_p1, + data_p1_p1_p1, + data_p2_p1_p1, + data_m2_p2_p1, + data_m1_p2_p1, + data_0_p2_p1, + data_p1_p2_p1, + data_p2_p2_p1, + data_m2_m2_p2, + data_m1_m2_p2, + data_0_m2_p2, + data_p1_m2_p2, + data_p2_m2_p2, + data_m2_m1_p2, + data_m1_m1_p2, + data_0_m1_p2, + data_p1_m1_p2, + data_p2_m1_p2, + data_m2_0_p2, + data_m1_0_p2, + data_0_0_p2, + data_p1_0_p2, + data_p2_0_p2, + data_m2_p1_p2, + data_m1_p1_p2, + data_0_p1_p2, + data_p1_p1_p2, + data_p2_p1_p2, + data_m2_p2_p2, + data_m1_p2_p2, + data_0_p2_p2, + data_p1_p2_p2, + data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-I.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-I.compute.c new file mode 100644 index 0000000..06a4bfa --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-I.compute.c @@ -0,0 +1,126 @@ +result = + coeff_I_m2_m2_m2*data_m2_m2_m2 + + coeff_I_m1_m2_m2*data_m1_m2_m2 + + coeff_I_0_m2_m2*data_0_m2_m2 + + coeff_I_p1_m2_m2*data_p1_m2_m2 + + coeff_I_p2_m2_m2*data_p2_m2_m2 + + coeff_I_m2_m1_m2*data_m2_m1_m2 + + coeff_I_m1_m1_m2*data_m1_m1_m2 + + coeff_I_0_m1_m2*data_0_m1_m2 + + coeff_I_p1_m1_m2*data_p1_m1_m2 + + coeff_I_p2_m1_m2*data_p2_m1_m2 + + coeff_I_m2_0_m2*data_m2_0_m2 + + coeff_I_m1_0_m2*data_m1_0_m2 + + coeff_I_0_0_m2*data_0_0_m2 + + coeff_I_p1_0_m2*data_p1_0_m2 + + coeff_I_p2_0_m2*data_p2_0_m2 + + coeff_I_m2_p1_m2*data_m2_p1_m2 + + coeff_I_m1_p1_m2*data_m1_p1_m2 + + coeff_I_0_p1_m2*data_0_p1_m2 + + coeff_I_p1_p1_m2*data_p1_p1_m2 + + coeff_I_p2_p1_m2*data_p2_p1_m2 + + coeff_I_m2_p2_m2*data_m2_p2_m2 + + coeff_I_m1_p2_m2*data_m1_p2_m2 + + coeff_I_0_p2_m2*data_0_p2_m2 + + coeff_I_p1_p2_m2*data_p1_p2_m2 + + coeff_I_p2_p2_m2*data_p2_p2_m2 + + coeff_I_m2_m2_m1*data_m2_m2_m1 + + coeff_I_m1_m2_m1*data_m1_m2_m1 + + coeff_I_0_m2_m1*data_0_m2_m1 + + coeff_I_p1_m2_m1*data_p1_m2_m1 + + coeff_I_p2_m2_m1*data_p2_m2_m1 + + coeff_I_m2_m1_m1*data_m2_m1_m1 + + coeff_I_m1_m1_m1*data_m1_m1_m1 + + coeff_I_0_m1_m1*data_0_m1_m1 + + coeff_I_p1_m1_m1*data_p1_m1_m1 + + coeff_I_p2_m1_m1*data_p2_m1_m1 + + coeff_I_m2_0_m1*data_m2_0_m1 + + coeff_I_m1_0_m1*data_m1_0_m1 + + coeff_I_0_0_m1*data_0_0_m1 + + coeff_I_p1_0_m1*data_p1_0_m1 + + coeff_I_p2_0_m1*data_p2_0_m1 + + coeff_I_m2_p1_m1*data_m2_p1_m1 + + coeff_I_m1_p1_m1*data_m1_p1_m1 + + coeff_I_0_p1_m1*data_0_p1_m1 + + coeff_I_p1_p1_m1*data_p1_p1_m1 + + coeff_I_p2_p1_m1*data_p2_p1_m1 + + coeff_I_m2_p2_m1*data_m2_p2_m1 + + coeff_I_m1_p2_m1*data_m1_p2_m1 + + coeff_I_0_p2_m1*data_0_p2_m1 + + coeff_I_p1_p2_m1*data_p1_p2_m1 + + coeff_I_p2_p2_m1*data_p2_p2_m1 + + coeff_I_m2_m2_0*data_m2_m2_0 + + coeff_I_m1_m2_0*data_m1_m2_0 + + coeff_I_0_m2_0*data_0_m2_0 + + coeff_I_p1_m2_0*data_p1_m2_0 + + coeff_I_p2_m2_0*data_p2_m2_0 + + coeff_I_m2_m1_0*data_m2_m1_0 + + coeff_I_m1_m1_0*data_m1_m1_0 + + coeff_I_0_m1_0*data_0_m1_0 + + coeff_I_p1_m1_0*data_p1_m1_0 + + coeff_I_p2_m1_0*data_p2_m1_0 + + coeff_I_m2_0_0*data_m2_0_0 + + coeff_I_m1_0_0*data_m1_0_0 + + coeff_I_0_0_0*data_0_0_0 + + coeff_I_p1_0_0*data_p1_0_0 + + coeff_I_p2_0_0*data_p2_0_0 + + coeff_I_m2_p1_0*data_m2_p1_0 + + coeff_I_m1_p1_0*data_m1_p1_0 + + coeff_I_0_p1_0*data_0_p1_0 + + coeff_I_p1_p1_0*data_p1_p1_0 + + coeff_I_p2_p1_0*data_p2_p1_0 + + coeff_I_m2_p2_0*data_m2_p2_0 + + coeff_I_m1_p2_0*data_m1_p2_0 + + coeff_I_0_p2_0*data_0_p2_0 + + coeff_I_p1_p2_0*data_p1_p2_0 + + coeff_I_p2_p2_0*data_p2_p2_0 + + coeff_I_m2_m2_p1*data_m2_m2_p1 + + coeff_I_m1_m2_p1*data_m1_m2_p1 + + coeff_I_0_m2_p1*data_0_m2_p1 + + coeff_I_p1_m2_p1*data_p1_m2_p1 + + coeff_I_p2_m2_p1*data_p2_m2_p1 + + coeff_I_m2_m1_p1*data_m2_m1_p1 + + coeff_I_m1_m1_p1*data_m1_m1_p1 + + coeff_I_0_m1_p1*data_0_m1_p1 + + coeff_I_p1_m1_p1*data_p1_m1_p1 + + coeff_I_p2_m1_p1*data_p2_m1_p1 + + coeff_I_m2_0_p1*data_m2_0_p1 + + coeff_I_m1_0_p1*data_m1_0_p1 + + coeff_I_0_0_p1*data_0_0_p1 + + coeff_I_p1_0_p1*data_p1_0_p1 + + coeff_I_p2_0_p1*data_p2_0_p1 + + coeff_I_m2_p1_p1*data_m2_p1_p1 + + coeff_I_m1_p1_p1*data_m1_p1_p1 + + coeff_I_0_p1_p1*data_0_p1_p1 + + coeff_I_p1_p1_p1*data_p1_p1_p1 + + coeff_I_p2_p1_p1*data_p2_p1_p1 + + coeff_I_m2_p2_p1*data_m2_p2_p1 + + coeff_I_m1_p2_p1*data_m1_p2_p1 + + coeff_I_0_p2_p1*data_0_p2_p1 + + coeff_I_p1_p2_p1*data_p1_p2_p1 + + coeff_I_p2_p2_p1*data_p2_p2_p1 + + coeff_I_m2_m2_p2*data_m2_m2_p2 + + coeff_I_m1_m2_p2*data_m1_m2_p2 + + coeff_I_0_m2_p2*data_0_m2_p2 + + coeff_I_p1_m2_p2*data_p1_m2_p2 + + coeff_I_p2_m2_p2*data_p2_m2_p2 + + coeff_I_m2_m1_p2*data_m2_m1_p2 + + coeff_I_m1_m1_p2*data_m1_m1_p2 + + coeff_I_0_m1_p2*data_0_m1_p2 + + coeff_I_p1_m1_p2*data_p1_m1_p2 + + coeff_I_p2_m1_p2*data_p2_m1_p2 + + coeff_I_m2_0_p2*data_m2_0_p2 + + coeff_I_m1_0_p2*data_m1_0_p2 + + coeff_I_0_0_p2*data_0_0_p2 + + coeff_I_p1_0_p2*data_p1_0_p2 + + coeff_I_p2_0_p2*data_p2_0_p2 + + coeff_I_m2_p1_p2*data_m2_p1_p2 + + coeff_I_m1_p1_p2*data_m1_p1_p2 + + coeff_I_0_p1_p2*data_0_p1_p2 + + coeff_I_p1_p1_p2*data_p1_p1_p2 + + coeff_I_p2_p1_p2*data_p2_p1_p2 + + coeff_I_m2_p2_p2*data_m2_p2_p2 + + coeff_I_m1_p2_p2*data_m1_p2_p2 + + coeff_I_0_p2_p2*data_0_p2_p2 + + coeff_I_p1_p2_p2*data_p1_p2_p2 + + coeff_I_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dx.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dx.compute.c new file mode 100644 index 0000000..013ae98 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dx.compute.c @@ -0,0 +1,126 @@ +result = + coeff_dx_m2_m2_m2*data_m2_m2_m2 + + coeff_dx_m1_m2_m2*data_m1_m2_m2 + + coeff_dx_0_m2_m2*data_0_m2_m2 + + coeff_dx_p1_m2_m2*data_p1_m2_m2 + + coeff_dx_p2_m2_m2*data_p2_m2_m2 + + coeff_dx_m2_m1_m2*data_m2_m1_m2 + + coeff_dx_m1_m1_m2*data_m1_m1_m2 + + coeff_dx_0_m1_m2*data_0_m1_m2 + + coeff_dx_p1_m1_m2*data_p1_m1_m2 + + coeff_dx_p2_m1_m2*data_p2_m1_m2 + + coeff_dx_m2_0_m2*data_m2_0_m2 + + coeff_dx_m1_0_m2*data_m1_0_m2 + + coeff_dx_0_0_m2*data_0_0_m2 + + coeff_dx_p1_0_m2*data_p1_0_m2 + + coeff_dx_p2_0_m2*data_p2_0_m2 + + coeff_dx_m2_p1_m2*data_m2_p1_m2 + + coeff_dx_m1_p1_m2*data_m1_p1_m2 + + coeff_dx_0_p1_m2*data_0_p1_m2 + + coeff_dx_p1_p1_m2*data_p1_p1_m2 + + coeff_dx_p2_p1_m2*data_p2_p1_m2 + + coeff_dx_m2_p2_m2*data_m2_p2_m2 + + coeff_dx_m1_p2_m2*data_m1_p2_m2 + + coeff_dx_0_p2_m2*data_0_p2_m2 + + coeff_dx_p1_p2_m2*data_p1_p2_m2 + + coeff_dx_p2_p2_m2*data_p2_p2_m2 + + coeff_dx_m2_m2_m1*data_m2_m2_m1 + + coeff_dx_m1_m2_m1*data_m1_m2_m1 + + coeff_dx_0_m2_m1*data_0_m2_m1 + + coeff_dx_p1_m2_m1*data_p1_m2_m1 + + coeff_dx_p2_m2_m1*data_p2_m2_m1 + + coeff_dx_m2_m1_m1*data_m2_m1_m1 + + coeff_dx_m1_m1_m1*data_m1_m1_m1 + + coeff_dx_0_m1_m1*data_0_m1_m1 + + coeff_dx_p1_m1_m1*data_p1_m1_m1 + + coeff_dx_p2_m1_m1*data_p2_m1_m1 + + coeff_dx_m2_0_m1*data_m2_0_m1 + + coeff_dx_m1_0_m1*data_m1_0_m1 + + coeff_dx_0_0_m1*data_0_0_m1 + + coeff_dx_p1_0_m1*data_p1_0_m1 + + coeff_dx_p2_0_m1*data_p2_0_m1 + + coeff_dx_m2_p1_m1*data_m2_p1_m1 + + coeff_dx_m1_p1_m1*data_m1_p1_m1 + + coeff_dx_0_p1_m1*data_0_p1_m1 + + coeff_dx_p1_p1_m1*data_p1_p1_m1 + + coeff_dx_p2_p1_m1*data_p2_p1_m1 + + coeff_dx_m2_p2_m1*data_m2_p2_m1 + + coeff_dx_m1_p2_m1*data_m1_p2_m1 + + coeff_dx_0_p2_m1*data_0_p2_m1 + + coeff_dx_p1_p2_m1*data_p1_p2_m1 + + coeff_dx_p2_p2_m1*data_p2_p2_m1 + + coeff_dx_m2_m2_0*data_m2_m2_0 + + coeff_dx_m1_m2_0*data_m1_m2_0 + + coeff_dx_0_m2_0*data_0_m2_0 + + coeff_dx_p1_m2_0*data_p1_m2_0 + + coeff_dx_p2_m2_0*data_p2_m2_0 + + coeff_dx_m2_m1_0*data_m2_m1_0 + + coeff_dx_m1_m1_0*data_m1_m1_0 + + coeff_dx_0_m1_0*data_0_m1_0 + + coeff_dx_p1_m1_0*data_p1_m1_0 + + coeff_dx_p2_m1_0*data_p2_m1_0 + + coeff_dx_m2_0_0*data_m2_0_0 + + coeff_dx_m1_0_0*data_m1_0_0 + + coeff_dx_0_0_0*data_0_0_0 + + coeff_dx_p1_0_0*data_p1_0_0 + + coeff_dx_p2_0_0*data_p2_0_0 + + coeff_dx_m2_p1_0*data_m2_p1_0 + + coeff_dx_m1_p1_0*data_m1_p1_0 + + coeff_dx_0_p1_0*data_0_p1_0 + + coeff_dx_p1_p1_0*data_p1_p1_0 + + coeff_dx_p2_p1_0*data_p2_p1_0 + + coeff_dx_m2_p2_0*data_m2_p2_0 + + coeff_dx_m1_p2_0*data_m1_p2_0 + + coeff_dx_0_p2_0*data_0_p2_0 + + coeff_dx_p1_p2_0*data_p1_p2_0 + + coeff_dx_p2_p2_0*data_p2_p2_0 + + coeff_dx_m2_m2_p1*data_m2_m2_p1 + + coeff_dx_m1_m2_p1*data_m1_m2_p1 + + coeff_dx_0_m2_p1*data_0_m2_p1 + + coeff_dx_p1_m2_p1*data_p1_m2_p1 + + coeff_dx_p2_m2_p1*data_p2_m2_p1 + + coeff_dx_m2_m1_p1*data_m2_m1_p1 + + coeff_dx_m1_m1_p1*data_m1_m1_p1 + + coeff_dx_0_m1_p1*data_0_m1_p1 + + coeff_dx_p1_m1_p1*data_p1_m1_p1 + + coeff_dx_p2_m1_p1*data_p2_m1_p1 + + coeff_dx_m2_0_p1*data_m2_0_p1 + + coeff_dx_m1_0_p1*data_m1_0_p1 + + coeff_dx_0_0_p1*data_0_0_p1 + + coeff_dx_p1_0_p1*data_p1_0_p1 + + coeff_dx_p2_0_p1*data_p2_0_p1 + + coeff_dx_m2_p1_p1*data_m2_p1_p1 + + coeff_dx_m1_p1_p1*data_m1_p1_p1 + + coeff_dx_0_p1_p1*data_0_p1_p1 + + coeff_dx_p1_p1_p1*data_p1_p1_p1 + + coeff_dx_p2_p1_p1*data_p2_p1_p1 + + coeff_dx_m2_p2_p1*data_m2_p2_p1 + + coeff_dx_m1_p2_p1*data_m1_p2_p1 + + coeff_dx_0_p2_p1*data_0_p2_p1 + + coeff_dx_p1_p2_p1*data_p1_p2_p1 + + coeff_dx_p2_p2_p1*data_p2_p2_p1 + + coeff_dx_m2_m2_p2*data_m2_m2_p2 + + coeff_dx_m1_m2_p2*data_m1_m2_p2 + + coeff_dx_0_m2_p2*data_0_m2_p2 + + coeff_dx_p1_m2_p2*data_p1_m2_p2 + + coeff_dx_p2_m2_p2*data_p2_m2_p2 + + coeff_dx_m2_m1_p2*data_m2_m1_p2 + + coeff_dx_m1_m1_p2*data_m1_m1_p2 + + coeff_dx_0_m1_p2*data_0_m1_p2 + + coeff_dx_p1_m1_p2*data_p1_m1_p2 + + coeff_dx_p2_m1_p2*data_p2_m1_p2 + + coeff_dx_m2_0_p2*data_m2_0_p2 + + coeff_dx_m1_0_p2*data_m1_0_p2 + + coeff_dx_0_0_p2*data_0_0_p2 + + coeff_dx_p1_0_p2*data_p1_0_p2 + + coeff_dx_p2_0_p2*data_p2_0_p2 + + coeff_dx_m2_p1_p2*data_m2_p1_p2 + + coeff_dx_m1_p1_p2*data_m1_p1_p2 + + coeff_dx_0_p1_p2*data_0_p1_p2 + + coeff_dx_p1_p1_p2*data_p1_p1_p2 + + coeff_dx_p2_p1_p2*data_p2_p1_p2 + + coeff_dx_m2_p2_p2*data_m2_p2_p2 + + coeff_dx_m1_p2_p2*data_m1_p2_p2 + + coeff_dx_0_p2_p2*data_0_p2_p2 + + coeff_dx_p1_p2_p2*data_p1_p2_p2 + + coeff_dx_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dxx.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dxx.compute.c new file mode 100644 index 0000000..bd0b7be --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dxx.compute.c @@ -0,0 +1,126 @@ +result = + coeff_dxx_m2_m2_m2*data_m2_m2_m2 + + coeff_dxx_m1_m2_m2*data_m1_m2_m2 + + coeff_dxx_0_m2_m2*data_0_m2_m2 + + coeff_dxx_p1_m2_m2*data_p1_m2_m2 + + coeff_dxx_p2_m2_m2*data_p2_m2_m2 + + coeff_dxx_m2_m1_m2*data_m2_m1_m2 + + coeff_dxx_m1_m1_m2*data_m1_m1_m2 + + coeff_dxx_0_m1_m2*data_0_m1_m2 + + coeff_dxx_p1_m1_m2*data_p1_m1_m2 + + coeff_dxx_p2_m1_m2*data_p2_m1_m2 + + coeff_dxx_m2_0_m2*data_m2_0_m2 + + coeff_dxx_m1_0_m2*data_m1_0_m2 + + coeff_dxx_0_0_m2*data_0_0_m2 + + coeff_dxx_p1_0_m2*data_p1_0_m2 + + coeff_dxx_p2_0_m2*data_p2_0_m2 + + coeff_dxx_m2_p1_m2*data_m2_p1_m2 + + coeff_dxx_m1_p1_m2*data_m1_p1_m2 + + coeff_dxx_0_p1_m2*data_0_p1_m2 + + coeff_dxx_p1_p1_m2*data_p1_p1_m2 + + coeff_dxx_p2_p1_m2*data_p2_p1_m2 + + coeff_dxx_m2_p2_m2*data_m2_p2_m2 + + coeff_dxx_m1_p2_m2*data_m1_p2_m2 + + coeff_dxx_0_p2_m2*data_0_p2_m2 + + coeff_dxx_p1_p2_m2*data_p1_p2_m2 + + coeff_dxx_p2_p2_m2*data_p2_p2_m2 + + coeff_dxx_m2_m2_m1*data_m2_m2_m1 + + coeff_dxx_m1_m2_m1*data_m1_m2_m1 + + coeff_dxx_0_m2_m1*data_0_m2_m1 + + coeff_dxx_p1_m2_m1*data_p1_m2_m1 + + coeff_dxx_p2_m2_m1*data_p2_m2_m1 + + coeff_dxx_m2_m1_m1*data_m2_m1_m1 + + coeff_dxx_m1_m1_m1*data_m1_m1_m1 + + coeff_dxx_0_m1_m1*data_0_m1_m1 + + coeff_dxx_p1_m1_m1*data_p1_m1_m1 + + coeff_dxx_p2_m1_m1*data_p2_m1_m1 + + coeff_dxx_m2_0_m1*data_m2_0_m1 + + coeff_dxx_m1_0_m1*data_m1_0_m1 + + coeff_dxx_0_0_m1*data_0_0_m1 + + coeff_dxx_p1_0_m1*data_p1_0_m1 + + coeff_dxx_p2_0_m1*data_p2_0_m1 + + coeff_dxx_m2_p1_m1*data_m2_p1_m1 + + coeff_dxx_m1_p1_m1*data_m1_p1_m1 + + coeff_dxx_0_p1_m1*data_0_p1_m1 + + coeff_dxx_p1_p1_m1*data_p1_p1_m1 + + coeff_dxx_p2_p1_m1*data_p2_p1_m1 + + coeff_dxx_m2_p2_m1*data_m2_p2_m1 + + coeff_dxx_m1_p2_m1*data_m1_p2_m1 + + coeff_dxx_0_p2_m1*data_0_p2_m1 + + coeff_dxx_p1_p2_m1*data_p1_p2_m1 + + coeff_dxx_p2_p2_m1*data_p2_p2_m1 + + coeff_dxx_m2_m2_0*data_m2_m2_0 + + coeff_dxx_m1_m2_0*data_m1_m2_0 + + coeff_dxx_0_m2_0*data_0_m2_0 + + coeff_dxx_p1_m2_0*data_p1_m2_0 + + coeff_dxx_p2_m2_0*data_p2_m2_0 + + coeff_dxx_m2_m1_0*data_m2_m1_0 + + coeff_dxx_m1_m1_0*data_m1_m1_0 + + coeff_dxx_0_m1_0*data_0_m1_0 + + coeff_dxx_p1_m1_0*data_p1_m1_0 + + coeff_dxx_p2_m1_0*data_p2_m1_0 + + coeff_dxx_m2_0_0*data_m2_0_0 + + coeff_dxx_m1_0_0*data_m1_0_0 + + coeff_dxx_0_0_0*data_0_0_0 + + coeff_dxx_p1_0_0*data_p1_0_0 + + coeff_dxx_p2_0_0*data_p2_0_0 + + coeff_dxx_m2_p1_0*data_m2_p1_0 + + coeff_dxx_m1_p1_0*data_m1_p1_0 + + coeff_dxx_0_p1_0*data_0_p1_0 + + coeff_dxx_p1_p1_0*data_p1_p1_0 + + coeff_dxx_p2_p1_0*data_p2_p1_0 + + coeff_dxx_m2_p2_0*data_m2_p2_0 + + coeff_dxx_m1_p2_0*data_m1_p2_0 + + coeff_dxx_0_p2_0*data_0_p2_0 + + coeff_dxx_p1_p2_0*data_p1_p2_0 + + coeff_dxx_p2_p2_0*data_p2_p2_0 + + coeff_dxx_m2_m2_p1*data_m2_m2_p1 + + coeff_dxx_m1_m2_p1*data_m1_m2_p1 + + coeff_dxx_0_m2_p1*data_0_m2_p1 + + coeff_dxx_p1_m2_p1*data_p1_m2_p1 + + coeff_dxx_p2_m2_p1*data_p2_m2_p1 + + coeff_dxx_m2_m1_p1*data_m2_m1_p1 + + coeff_dxx_m1_m1_p1*data_m1_m1_p1 + + coeff_dxx_0_m1_p1*data_0_m1_p1 + + coeff_dxx_p1_m1_p1*data_p1_m1_p1 + + coeff_dxx_p2_m1_p1*data_p2_m1_p1 + + coeff_dxx_m2_0_p1*data_m2_0_p1 + + coeff_dxx_m1_0_p1*data_m1_0_p1 + + coeff_dxx_0_0_p1*data_0_0_p1 + + coeff_dxx_p1_0_p1*data_p1_0_p1 + + coeff_dxx_p2_0_p1*data_p2_0_p1 + + coeff_dxx_m2_p1_p1*data_m2_p1_p1 + + coeff_dxx_m1_p1_p1*data_m1_p1_p1 + + coeff_dxx_0_p1_p1*data_0_p1_p1 + + coeff_dxx_p1_p1_p1*data_p1_p1_p1 + + coeff_dxx_p2_p1_p1*data_p2_p1_p1 + + coeff_dxx_m2_p2_p1*data_m2_p2_p1 + + coeff_dxx_m1_p2_p1*data_m1_p2_p1 + + coeff_dxx_0_p2_p1*data_0_p2_p1 + + coeff_dxx_p1_p2_p1*data_p1_p2_p1 + + coeff_dxx_p2_p2_p1*data_p2_p2_p1 + + coeff_dxx_m2_m2_p2*data_m2_m2_p2 + + coeff_dxx_m1_m2_p2*data_m1_m2_p2 + + coeff_dxx_0_m2_p2*data_0_m2_p2 + + coeff_dxx_p1_m2_p2*data_p1_m2_p2 + + coeff_dxx_p2_m2_p2*data_p2_m2_p2 + + coeff_dxx_m2_m1_p2*data_m2_m1_p2 + + coeff_dxx_m1_m1_p2*data_m1_m1_p2 + + coeff_dxx_0_m1_p2*data_0_m1_p2 + + coeff_dxx_p1_m1_p2*data_p1_m1_p2 + + coeff_dxx_p2_m1_p2*data_p2_m1_p2 + + coeff_dxx_m2_0_p2*data_m2_0_p2 + + coeff_dxx_m1_0_p2*data_m1_0_p2 + + coeff_dxx_0_0_p2*data_0_0_p2 + + coeff_dxx_p1_0_p2*data_p1_0_p2 + + coeff_dxx_p2_0_p2*data_p2_0_p2 + + coeff_dxx_m2_p1_p2*data_m2_p1_p2 + + coeff_dxx_m1_p1_p2*data_m1_p1_p2 + + coeff_dxx_0_p1_p2*data_0_p1_p2 + + coeff_dxx_p1_p1_p2*data_p1_p1_p2 + + coeff_dxx_p2_p1_p2*data_p2_p1_p2 + + coeff_dxx_m2_p2_p2*data_m2_p2_p2 + + coeff_dxx_m1_p2_p2*data_m1_p2_p2 + + coeff_dxx_0_p2_p2*data_0_p2_p2 + + coeff_dxx_p1_p2_p2*data_p1_p2_p2 + + coeff_dxx_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dxy.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dxy.compute.c new file mode 100644 index 0000000..8e202fd --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dxy.compute.c @@ -0,0 +1,126 @@ +result = + coeff_dxy_m2_m2_m2*data_m2_m2_m2 + + coeff_dxy_m1_m2_m2*data_m1_m2_m2 + + coeff_dxy_0_m2_m2*data_0_m2_m2 + + coeff_dxy_p1_m2_m2*data_p1_m2_m2 + + coeff_dxy_p2_m2_m2*data_p2_m2_m2 + + coeff_dxy_m2_m1_m2*data_m2_m1_m2 + + coeff_dxy_m1_m1_m2*data_m1_m1_m2 + + coeff_dxy_0_m1_m2*data_0_m1_m2 + + coeff_dxy_p1_m1_m2*data_p1_m1_m2 + + coeff_dxy_p2_m1_m2*data_p2_m1_m2 + + coeff_dxy_m2_0_m2*data_m2_0_m2 + + coeff_dxy_m1_0_m2*data_m1_0_m2 + + coeff_dxy_0_0_m2*data_0_0_m2 + + coeff_dxy_p1_0_m2*data_p1_0_m2 + + coeff_dxy_p2_0_m2*data_p2_0_m2 + + coeff_dxy_m2_p1_m2*data_m2_p1_m2 + + coeff_dxy_m1_p1_m2*data_m1_p1_m2 + + coeff_dxy_0_p1_m2*data_0_p1_m2 + + coeff_dxy_p1_p1_m2*data_p1_p1_m2 + + coeff_dxy_p2_p1_m2*data_p2_p1_m2 + + coeff_dxy_m2_p2_m2*data_m2_p2_m2 + + coeff_dxy_m1_p2_m2*data_m1_p2_m2 + + coeff_dxy_0_p2_m2*data_0_p2_m2 + + coeff_dxy_p1_p2_m2*data_p1_p2_m2 + + coeff_dxy_p2_p2_m2*data_p2_p2_m2 + + coeff_dxy_m2_m2_m1*data_m2_m2_m1 + + coeff_dxy_m1_m2_m1*data_m1_m2_m1 + + coeff_dxy_0_m2_m1*data_0_m2_m1 + + coeff_dxy_p1_m2_m1*data_p1_m2_m1 + + coeff_dxy_p2_m2_m1*data_p2_m2_m1 + + coeff_dxy_m2_m1_m1*data_m2_m1_m1 + + coeff_dxy_m1_m1_m1*data_m1_m1_m1 + + coeff_dxy_0_m1_m1*data_0_m1_m1 + + coeff_dxy_p1_m1_m1*data_p1_m1_m1 + + coeff_dxy_p2_m1_m1*data_p2_m1_m1 + + coeff_dxy_m2_0_m1*data_m2_0_m1 + + coeff_dxy_m1_0_m1*data_m1_0_m1 + + coeff_dxy_0_0_m1*data_0_0_m1 + + coeff_dxy_p1_0_m1*data_p1_0_m1 + + coeff_dxy_p2_0_m1*data_p2_0_m1 + + coeff_dxy_m2_p1_m1*data_m2_p1_m1 + + coeff_dxy_m1_p1_m1*data_m1_p1_m1 + + coeff_dxy_0_p1_m1*data_0_p1_m1 + + coeff_dxy_p1_p1_m1*data_p1_p1_m1 + + coeff_dxy_p2_p1_m1*data_p2_p1_m1 + + coeff_dxy_m2_p2_m1*data_m2_p2_m1 + + coeff_dxy_m1_p2_m1*data_m1_p2_m1 + + coeff_dxy_0_p2_m1*data_0_p2_m1 + + coeff_dxy_p1_p2_m1*data_p1_p2_m1 + + coeff_dxy_p2_p2_m1*data_p2_p2_m1 + + coeff_dxy_m2_m2_0*data_m2_m2_0 + + coeff_dxy_m1_m2_0*data_m1_m2_0 + + coeff_dxy_0_m2_0*data_0_m2_0 + + coeff_dxy_p1_m2_0*data_p1_m2_0 + + coeff_dxy_p2_m2_0*data_p2_m2_0 + + coeff_dxy_m2_m1_0*data_m2_m1_0 + + coeff_dxy_m1_m1_0*data_m1_m1_0 + + coeff_dxy_0_m1_0*data_0_m1_0 + + coeff_dxy_p1_m1_0*data_p1_m1_0 + + coeff_dxy_p2_m1_0*data_p2_m1_0 + + coeff_dxy_m2_0_0*data_m2_0_0 + + coeff_dxy_m1_0_0*data_m1_0_0 + + coeff_dxy_0_0_0*data_0_0_0 + + coeff_dxy_p1_0_0*data_p1_0_0 + + coeff_dxy_p2_0_0*data_p2_0_0 + + coeff_dxy_m2_p1_0*data_m2_p1_0 + + coeff_dxy_m1_p1_0*data_m1_p1_0 + + coeff_dxy_0_p1_0*data_0_p1_0 + + coeff_dxy_p1_p1_0*data_p1_p1_0 + + coeff_dxy_p2_p1_0*data_p2_p1_0 + + coeff_dxy_m2_p2_0*data_m2_p2_0 + + coeff_dxy_m1_p2_0*data_m1_p2_0 + + coeff_dxy_0_p2_0*data_0_p2_0 + + coeff_dxy_p1_p2_0*data_p1_p2_0 + + coeff_dxy_p2_p2_0*data_p2_p2_0 + + coeff_dxy_m2_m2_p1*data_m2_m2_p1 + + coeff_dxy_m1_m2_p1*data_m1_m2_p1 + + coeff_dxy_0_m2_p1*data_0_m2_p1 + + coeff_dxy_p1_m2_p1*data_p1_m2_p1 + + coeff_dxy_p2_m2_p1*data_p2_m2_p1 + + coeff_dxy_m2_m1_p1*data_m2_m1_p1 + + coeff_dxy_m1_m1_p1*data_m1_m1_p1 + + coeff_dxy_0_m1_p1*data_0_m1_p1 + + coeff_dxy_p1_m1_p1*data_p1_m1_p1 + + coeff_dxy_p2_m1_p1*data_p2_m1_p1 + + coeff_dxy_m2_0_p1*data_m2_0_p1 + + coeff_dxy_m1_0_p1*data_m1_0_p1 + + coeff_dxy_0_0_p1*data_0_0_p1 + + coeff_dxy_p1_0_p1*data_p1_0_p1 + + coeff_dxy_p2_0_p1*data_p2_0_p1 + + coeff_dxy_m2_p1_p1*data_m2_p1_p1 + + coeff_dxy_m1_p1_p1*data_m1_p1_p1 + + coeff_dxy_0_p1_p1*data_0_p1_p1 + + coeff_dxy_p1_p1_p1*data_p1_p1_p1 + + coeff_dxy_p2_p1_p1*data_p2_p1_p1 + + coeff_dxy_m2_p2_p1*data_m2_p2_p1 + + coeff_dxy_m1_p2_p1*data_m1_p2_p1 + + coeff_dxy_0_p2_p1*data_0_p2_p1 + + coeff_dxy_p1_p2_p1*data_p1_p2_p1 + + coeff_dxy_p2_p2_p1*data_p2_p2_p1 + + coeff_dxy_m2_m2_p2*data_m2_m2_p2 + + coeff_dxy_m1_m2_p2*data_m1_m2_p2 + + coeff_dxy_0_m2_p2*data_0_m2_p2 + + coeff_dxy_p1_m2_p2*data_p1_m2_p2 + + coeff_dxy_p2_m2_p2*data_p2_m2_p2 + + coeff_dxy_m2_m1_p2*data_m2_m1_p2 + + coeff_dxy_m1_m1_p2*data_m1_m1_p2 + + coeff_dxy_0_m1_p2*data_0_m1_p2 + + coeff_dxy_p1_m1_p2*data_p1_m1_p2 + + coeff_dxy_p2_m1_p2*data_p2_m1_p2 + + coeff_dxy_m2_0_p2*data_m2_0_p2 + + coeff_dxy_m1_0_p2*data_m1_0_p2 + + coeff_dxy_0_0_p2*data_0_0_p2 + + coeff_dxy_p1_0_p2*data_p1_0_p2 + + coeff_dxy_p2_0_p2*data_p2_0_p2 + + coeff_dxy_m2_p1_p2*data_m2_p1_p2 + + coeff_dxy_m1_p1_p2*data_m1_p1_p2 + + coeff_dxy_0_p1_p2*data_0_p1_p2 + + coeff_dxy_p1_p1_p2*data_p1_p1_p2 + + coeff_dxy_p2_p1_p2*data_p2_p1_p2 + + coeff_dxy_m2_p2_p2*data_m2_p2_p2 + + coeff_dxy_m1_p2_p2*data_m1_p2_p2 + + coeff_dxy_0_p2_p2*data_0_p2_p2 + + coeff_dxy_p1_p2_p2*data_p1_p2_p2 + + coeff_dxy_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dxz.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dxz.compute.c new file mode 100644 index 0000000..5789505 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dxz.compute.c @@ -0,0 +1,126 @@ +result = + coeff_dxz_m2_m2_m2*data_m2_m2_m2 + + coeff_dxz_m1_m2_m2*data_m1_m2_m2 + + coeff_dxz_0_m2_m2*data_0_m2_m2 + + coeff_dxz_p1_m2_m2*data_p1_m2_m2 + + coeff_dxz_p2_m2_m2*data_p2_m2_m2 + + coeff_dxz_m2_m1_m2*data_m2_m1_m2 + + coeff_dxz_m1_m1_m2*data_m1_m1_m2 + + coeff_dxz_0_m1_m2*data_0_m1_m2 + + coeff_dxz_p1_m1_m2*data_p1_m1_m2 + + coeff_dxz_p2_m1_m2*data_p2_m1_m2 + + coeff_dxz_m2_0_m2*data_m2_0_m2 + + coeff_dxz_m1_0_m2*data_m1_0_m2 + + coeff_dxz_0_0_m2*data_0_0_m2 + + coeff_dxz_p1_0_m2*data_p1_0_m2 + + coeff_dxz_p2_0_m2*data_p2_0_m2 + + coeff_dxz_m2_p1_m2*data_m2_p1_m2 + + coeff_dxz_m1_p1_m2*data_m1_p1_m2 + + coeff_dxz_0_p1_m2*data_0_p1_m2 + + coeff_dxz_p1_p1_m2*data_p1_p1_m2 + + coeff_dxz_p2_p1_m2*data_p2_p1_m2 + + coeff_dxz_m2_p2_m2*data_m2_p2_m2 + + coeff_dxz_m1_p2_m2*data_m1_p2_m2 + + coeff_dxz_0_p2_m2*data_0_p2_m2 + + coeff_dxz_p1_p2_m2*data_p1_p2_m2 + + coeff_dxz_p2_p2_m2*data_p2_p2_m2 + + coeff_dxz_m2_m2_m1*data_m2_m2_m1 + + coeff_dxz_m1_m2_m1*data_m1_m2_m1 + + coeff_dxz_0_m2_m1*data_0_m2_m1 + + coeff_dxz_p1_m2_m1*data_p1_m2_m1 + + coeff_dxz_p2_m2_m1*data_p2_m2_m1 + + coeff_dxz_m2_m1_m1*data_m2_m1_m1 + + coeff_dxz_m1_m1_m1*data_m1_m1_m1 + + coeff_dxz_0_m1_m1*data_0_m1_m1 + + coeff_dxz_p1_m1_m1*data_p1_m1_m1 + + coeff_dxz_p2_m1_m1*data_p2_m1_m1 + + coeff_dxz_m2_0_m1*data_m2_0_m1 + + coeff_dxz_m1_0_m1*data_m1_0_m1 + + coeff_dxz_0_0_m1*data_0_0_m1 + + coeff_dxz_p1_0_m1*data_p1_0_m1 + + coeff_dxz_p2_0_m1*data_p2_0_m1 + + coeff_dxz_m2_p1_m1*data_m2_p1_m1 + + coeff_dxz_m1_p1_m1*data_m1_p1_m1 + + coeff_dxz_0_p1_m1*data_0_p1_m1 + + coeff_dxz_p1_p1_m1*data_p1_p1_m1 + + coeff_dxz_p2_p1_m1*data_p2_p1_m1 + + coeff_dxz_m2_p2_m1*data_m2_p2_m1 + + coeff_dxz_m1_p2_m1*data_m1_p2_m1 + + coeff_dxz_0_p2_m1*data_0_p2_m1 + + coeff_dxz_p1_p2_m1*data_p1_p2_m1 + + coeff_dxz_p2_p2_m1*data_p2_p2_m1 + + coeff_dxz_m2_m2_0*data_m2_m2_0 + + coeff_dxz_m1_m2_0*data_m1_m2_0 + + coeff_dxz_0_m2_0*data_0_m2_0 + + coeff_dxz_p1_m2_0*data_p1_m2_0 + + coeff_dxz_p2_m2_0*data_p2_m2_0 + + coeff_dxz_m2_m1_0*data_m2_m1_0 + + coeff_dxz_m1_m1_0*data_m1_m1_0 + + coeff_dxz_0_m1_0*data_0_m1_0 + + coeff_dxz_p1_m1_0*data_p1_m1_0 + + coeff_dxz_p2_m1_0*data_p2_m1_0 + + coeff_dxz_m2_0_0*data_m2_0_0 + + coeff_dxz_m1_0_0*data_m1_0_0 + + coeff_dxz_0_0_0*data_0_0_0 + + coeff_dxz_p1_0_0*data_p1_0_0 + + coeff_dxz_p2_0_0*data_p2_0_0 + + coeff_dxz_m2_p1_0*data_m2_p1_0 + + coeff_dxz_m1_p1_0*data_m1_p1_0 + + coeff_dxz_0_p1_0*data_0_p1_0 + + coeff_dxz_p1_p1_0*data_p1_p1_0 + + coeff_dxz_p2_p1_0*data_p2_p1_0 + + coeff_dxz_m2_p2_0*data_m2_p2_0 + + coeff_dxz_m1_p2_0*data_m1_p2_0 + + coeff_dxz_0_p2_0*data_0_p2_0 + + coeff_dxz_p1_p2_0*data_p1_p2_0 + + coeff_dxz_p2_p2_0*data_p2_p2_0 + + coeff_dxz_m2_m2_p1*data_m2_m2_p1 + + coeff_dxz_m1_m2_p1*data_m1_m2_p1 + + coeff_dxz_0_m2_p1*data_0_m2_p1 + + coeff_dxz_p1_m2_p1*data_p1_m2_p1 + + coeff_dxz_p2_m2_p1*data_p2_m2_p1 + + coeff_dxz_m2_m1_p1*data_m2_m1_p1 + + coeff_dxz_m1_m1_p1*data_m1_m1_p1 + + coeff_dxz_0_m1_p1*data_0_m1_p1 + + coeff_dxz_p1_m1_p1*data_p1_m1_p1 + + coeff_dxz_p2_m1_p1*data_p2_m1_p1 + + coeff_dxz_m2_0_p1*data_m2_0_p1 + + coeff_dxz_m1_0_p1*data_m1_0_p1 + + coeff_dxz_0_0_p1*data_0_0_p1 + + coeff_dxz_p1_0_p1*data_p1_0_p1 + + coeff_dxz_p2_0_p1*data_p2_0_p1 + + coeff_dxz_m2_p1_p1*data_m2_p1_p1 + + coeff_dxz_m1_p1_p1*data_m1_p1_p1 + + coeff_dxz_0_p1_p1*data_0_p1_p1 + + coeff_dxz_p1_p1_p1*data_p1_p1_p1 + + coeff_dxz_p2_p1_p1*data_p2_p1_p1 + + coeff_dxz_m2_p2_p1*data_m2_p2_p1 + + coeff_dxz_m1_p2_p1*data_m1_p2_p1 + + coeff_dxz_0_p2_p1*data_0_p2_p1 + + coeff_dxz_p1_p2_p1*data_p1_p2_p1 + + coeff_dxz_p2_p2_p1*data_p2_p2_p1 + + coeff_dxz_m2_m2_p2*data_m2_m2_p2 + + coeff_dxz_m1_m2_p2*data_m1_m2_p2 + + coeff_dxz_0_m2_p2*data_0_m2_p2 + + coeff_dxz_p1_m2_p2*data_p1_m2_p2 + + coeff_dxz_p2_m2_p2*data_p2_m2_p2 + + coeff_dxz_m2_m1_p2*data_m2_m1_p2 + + coeff_dxz_m1_m1_p2*data_m1_m1_p2 + + coeff_dxz_0_m1_p2*data_0_m1_p2 + + coeff_dxz_p1_m1_p2*data_p1_m1_p2 + + coeff_dxz_p2_m1_p2*data_p2_m1_p2 + + coeff_dxz_m2_0_p2*data_m2_0_p2 + + coeff_dxz_m1_0_p2*data_m1_0_p2 + + coeff_dxz_0_0_p2*data_0_0_p2 + + coeff_dxz_p1_0_p2*data_p1_0_p2 + + coeff_dxz_p2_0_p2*data_p2_0_p2 + + coeff_dxz_m2_p1_p2*data_m2_p1_p2 + + coeff_dxz_m1_p1_p2*data_m1_p1_p2 + + coeff_dxz_0_p1_p2*data_0_p1_p2 + + coeff_dxz_p1_p1_p2*data_p1_p1_p2 + + coeff_dxz_p2_p1_p2*data_p2_p1_p2 + + coeff_dxz_m2_p2_p2*data_m2_p2_p2 + + coeff_dxz_m1_p2_p2*data_m1_p2_p2 + + coeff_dxz_0_p2_p2*data_0_p2_p2 + + coeff_dxz_p1_p2_p2*data_p1_p2_p2 + + coeff_dxz_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dy.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dy.compute.c new file mode 100644 index 0000000..af7007a --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dy.compute.c @@ -0,0 +1,126 @@ +result = + coeff_dy_m2_m2_m2*data_m2_m2_m2 + + coeff_dy_m1_m2_m2*data_m1_m2_m2 + + coeff_dy_0_m2_m2*data_0_m2_m2 + + coeff_dy_p1_m2_m2*data_p1_m2_m2 + + coeff_dy_p2_m2_m2*data_p2_m2_m2 + + coeff_dy_m2_m1_m2*data_m2_m1_m2 + + coeff_dy_m1_m1_m2*data_m1_m1_m2 + + coeff_dy_0_m1_m2*data_0_m1_m2 + + coeff_dy_p1_m1_m2*data_p1_m1_m2 + + coeff_dy_p2_m1_m2*data_p2_m1_m2 + + coeff_dy_m2_0_m2*data_m2_0_m2 + + coeff_dy_m1_0_m2*data_m1_0_m2 + + coeff_dy_0_0_m2*data_0_0_m2 + + coeff_dy_p1_0_m2*data_p1_0_m2 + + coeff_dy_p2_0_m2*data_p2_0_m2 + + coeff_dy_m2_p1_m2*data_m2_p1_m2 + + coeff_dy_m1_p1_m2*data_m1_p1_m2 + + coeff_dy_0_p1_m2*data_0_p1_m2 + + coeff_dy_p1_p1_m2*data_p1_p1_m2 + + coeff_dy_p2_p1_m2*data_p2_p1_m2 + + coeff_dy_m2_p2_m2*data_m2_p2_m2 + + coeff_dy_m1_p2_m2*data_m1_p2_m2 + + coeff_dy_0_p2_m2*data_0_p2_m2 + + coeff_dy_p1_p2_m2*data_p1_p2_m2 + + coeff_dy_p2_p2_m2*data_p2_p2_m2 + + coeff_dy_m2_m2_m1*data_m2_m2_m1 + + coeff_dy_m1_m2_m1*data_m1_m2_m1 + + coeff_dy_0_m2_m1*data_0_m2_m1 + + coeff_dy_p1_m2_m1*data_p1_m2_m1 + + coeff_dy_p2_m2_m1*data_p2_m2_m1 + + coeff_dy_m2_m1_m1*data_m2_m1_m1 + + coeff_dy_m1_m1_m1*data_m1_m1_m1 + + coeff_dy_0_m1_m1*data_0_m1_m1 + + coeff_dy_p1_m1_m1*data_p1_m1_m1 + + coeff_dy_p2_m1_m1*data_p2_m1_m1 + + coeff_dy_m2_0_m1*data_m2_0_m1 + + coeff_dy_m1_0_m1*data_m1_0_m1 + + coeff_dy_0_0_m1*data_0_0_m1 + + coeff_dy_p1_0_m1*data_p1_0_m1 + + coeff_dy_p2_0_m1*data_p2_0_m1 + + coeff_dy_m2_p1_m1*data_m2_p1_m1 + + coeff_dy_m1_p1_m1*data_m1_p1_m1 + + coeff_dy_0_p1_m1*data_0_p1_m1 + + coeff_dy_p1_p1_m1*data_p1_p1_m1 + + coeff_dy_p2_p1_m1*data_p2_p1_m1 + + coeff_dy_m2_p2_m1*data_m2_p2_m1 + + coeff_dy_m1_p2_m1*data_m1_p2_m1 + + coeff_dy_0_p2_m1*data_0_p2_m1 + + coeff_dy_p1_p2_m1*data_p1_p2_m1 + + coeff_dy_p2_p2_m1*data_p2_p2_m1 + + coeff_dy_m2_m2_0*data_m2_m2_0 + + coeff_dy_m1_m2_0*data_m1_m2_0 + + coeff_dy_0_m2_0*data_0_m2_0 + + coeff_dy_p1_m2_0*data_p1_m2_0 + + coeff_dy_p2_m2_0*data_p2_m2_0 + + coeff_dy_m2_m1_0*data_m2_m1_0 + + coeff_dy_m1_m1_0*data_m1_m1_0 + + coeff_dy_0_m1_0*data_0_m1_0 + + coeff_dy_p1_m1_0*data_p1_m1_0 + + coeff_dy_p2_m1_0*data_p2_m1_0 + + coeff_dy_m2_0_0*data_m2_0_0 + + coeff_dy_m1_0_0*data_m1_0_0 + + coeff_dy_0_0_0*data_0_0_0 + + coeff_dy_p1_0_0*data_p1_0_0 + + coeff_dy_p2_0_0*data_p2_0_0 + + coeff_dy_m2_p1_0*data_m2_p1_0 + + coeff_dy_m1_p1_0*data_m1_p1_0 + + coeff_dy_0_p1_0*data_0_p1_0 + + coeff_dy_p1_p1_0*data_p1_p1_0 + + coeff_dy_p2_p1_0*data_p2_p1_0 + + coeff_dy_m2_p2_0*data_m2_p2_0 + + coeff_dy_m1_p2_0*data_m1_p2_0 + + coeff_dy_0_p2_0*data_0_p2_0 + + coeff_dy_p1_p2_0*data_p1_p2_0 + + coeff_dy_p2_p2_0*data_p2_p2_0 + + coeff_dy_m2_m2_p1*data_m2_m2_p1 + + coeff_dy_m1_m2_p1*data_m1_m2_p1 + + coeff_dy_0_m2_p1*data_0_m2_p1 + + coeff_dy_p1_m2_p1*data_p1_m2_p1 + + coeff_dy_p2_m2_p1*data_p2_m2_p1 + + coeff_dy_m2_m1_p1*data_m2_m1_p1 + + coeff_dy_m1_m1_p1*data_m1_m1_p1 + + coeff_dy_0_m1_p1*data_0_m1_p1 + + coeff_dy_p1_m1_p1*data_p1_m1_p1 + + coeff_dy_p2_m1_p1*data_p2_m1_p1 + + coeff_dy_m2_0_p1*data_m2_0_p1 + + coeff_dy_m1_0_p1*data_m1_0_p1 + + coeff_dy_0_0_p1*data_0_0_p1 + + coeff_dy_p1_0_p1*data_p1_0_p1 + + coeff_dy_p2_0_p1*data_p2_0_p1 + + coeff_dy_m2_p1_p1*data_m2_p1_p1 + + coeff_dy_m1_p1_p1*data_m1_p1_p1 + + coeff_dy_0_p1_p1*data_0_p1_p1 + + coeff_dy_p1_p1_p1*data_p1_p1_p1 + + coeff_dy_p2_p1_p1*data_p2_p1_p1 + + coeff_dy_m2_p2_p1*data_m2_p2_p1 + + coeff_dy_m1_p2_p1*data_m1_p2_p1 + + coeff_dy_0_p2_p1*data_0_p2_p1 + + coeff_dy_p1_p2_p1*data_p1_p2_p1 + + coeff_dy_p2_p2_p1*data_p2_p2_p1 + + coeff_dy_m2_m2_p2*data_m2_m2_p2 + + coeff_dy_m1_m2_p2*data_m1_m2_p2 + + coeff_dy_0_m2_p2*data_0_m2_p2 + + coeff_dy_p1_m2_p2*data_p1_m2_p2 + + coeff_dy_p2_m2_p2*data_p2_m2_p2 + + coeff_dy_m2_m1_p2*data_m2_m1_p2 + + coeff_dy_m1_m1_p2*data_m1_m1_p2 + + coeff_dy_0_m1_p2*data_0_m1_p2 + + coeff_dy_p1_m1_p2*data_p1_m1_p2 + + coeff_dy_p2_m1_p2*data_p2_m1_p2 + + coeff_dy_m2_0_p2*data_m2_0_p2 + + coeff_dy_m1_0_p2*data_m1_0_p2 + + coeff_dy_0_0_p2*data_0_0_p2 + + coeff_dy_p1_0_p2*data_p1_0_p2 + + coeff_dy_p2_0_p2*data_p2_0_p2 + + coeff_dy_m2_p1_p2*data_m2_p1_p2 + + coeff_dy_m1_p1_p2*data_m1_p1_p2 + + coeff_dy_0_p1_p2*data_0_p1_p2 + + coeff_dy_p1_p1_p2*data_p1_p1_p2 + + coeff_dy_p2_p1_p2*data_p2_p1_p2 + + coeff_dy_m2_p2_p2*data_m2_p2_p2 + + coeff_dy_m1_p2_p2*data_m1_p2_p2 + + coeff_dy_0_p2_p2*data_0_p2_p2 + + coeff_dy_p1_p2_p2*data_p1_p2_p2 + + coeff_dy_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dyy.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dyy.compute.c new file mode 100644 index 0000000..55088e7 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dyy.compute.c @@ -0,0 +1,126 @@ +result = + coeff_dyy_m2_m2_m2*data_m2_m2_m2 + + coeff_dyy_m1_m2_m2*data_m1_m2_m2 + + coeff_dyy_0_m2_m2*data_0_m2_m2 + + coeff_dyy_p1_m2_m2*data_p1_m2_m2 + + coeff_dyy_p2_m2_m2*data_p2_m2_m2 + + coeff_dyy_m2_m1_m2*data_m2_m1_m2 + + coeff_dyy_m1_m1_m2*data_m1_m1_m2 + + coeff_dyy_0_m1_m2*data_0_m1_m2 + + coeff_dyy_p1_m1_m2*data_p1_m1_m2 + + coeff_dyy_p2_m1_m2*data_p2_m1_m2 + + coeff_dyy_m2_0_m2*data_m2_0_m2 + + coeff_dyy_m1_0_m2*data_m1_0_m2 + + coeff_dyy_0_0_m2*data_0_0_m2 + + coeff_dyy_p1_0_m2*data_p1_0_m2 + + coeff_dyy_p2_0_m2*data_p2_0_m2 + + coeff_dyy_m2_p1_m2*data_m2_p1_m2 + + coeff_dyy_m1_p1_m2*data_m1_p1_m2 + + coeff_dyy_0_p1_m2*data_0_p1_m2 + + coeff_dyy_p1_p1_m2*data_p1_p1_m2 + + coeff_dyy_p2_p1_m2*data_p2_p1_m2 + + coeff_dyy_m2_p2_m2*data_m2_p2_m2 + + coeff_dyy_m1_p2_m2*data_m1_p2_m2 + + coeff_dyy_0_p2_m2*data_0_p2_m2 + + coeff_dyy_p1_p2_m2*data_p1_p2_m2 + + coeff_dyy_p2_p2_m2*data_p2_p2_m2 + + coeff_dyy_m2_m2_m1*data_m2_m2_m1 + + coeff_dyy_m1_m2_m1*data_m1_m2_m1 + + coeff_dyy_0_m2_m1*data_0_m2_m1 + + coeff_dyy_p1_m2_m1*data_p1_m2_m1 + + coeff_dyy_p2_m2_m1*data_p2_m2_m1 + + coeff_dyy_m2_m1_m1*data_m2_m1_m1 + + coeff_dyy_m1_m1_m1*data_m1_m1_m1 + + coeff_dyy_0_m1_m1*data_0_m1_m1 + + coeff_dyy_p1_m1_m1*data_p1_m1_m1 + + coeff_dyy_p2_m1_m1*data_p2_m1_m1 + + coeff_dyy_m2_0_m1*data_m2_0_m1 + + coeff_dyy_m1_0_m1*data_m1_0_m1 + + coeff_dyy_0_0_m1*data_0_0_m1 + + coeff_dyy_p1_0_m1*data_p1_0_m1 + + coeff_dyy_p2_0_m1*data_p2_0_m1 + + coeff_dyy_m2_p1_m1*data_m2_p1_m1 + + coeff_dyy_m1_p1_m1*data_m1_p1_m1 + + coeff_dyy_0_p1_m1*data_0_p1_m1 + + coeff_dyy_p1_p1_m1*data_p1_p1_m1 + + coeff_dyy_p2_p1_m1*data_p2_p1_m1 + + coeff_dyy_m2_p2_m1*data_m2_p2_m1 + + coeff_dyy_m1_p2_m1*data_m1_p2_m1 + + coeff_dyy_0_p2_m1*data_0_p2_m1 + + coeff_dyy_p1_p2_m1*data_p1_p2_m1 + + coeff_dyy_p2_p2_m1*data_p2_p2_m1 + + coeff_dyy_m2_m2_0*data_m2_m2_0 + + coeff_dyy_m1_m2_0*data_m1_m2_0 + + coeff_dyy_0_m2_0*data_0_m2_0 + + coeff_dyy_p1_m2_0*data_p1_m2_0 + + coeff_dyy_p2_m2_0*data_p2_m2_0 + + coeff_dyy_m2_m1_0*data_m2_m1_0 + + coeff_dyy_m1_m1_0*data_m1_m1_0 + + coeff_dyy_0_m1_0*data_0_m1_0 + + coeff_dyy_p1_m1_0*data_p1_m1_0 + + coeff_dyy_p2_m1_0*data_p2_m1_0 + + coeff_dyy_m2_0_0*data_m2_0_0 + + coeff_dyy_m1_0_0*data_m1_0_0 + + coeff_dyy_0_0_0*data_0_0_0 + + coeff_dyy_p1_0_0*data_p1_0_0 + + coeff_dyy_p2_0_0*data_p2_0_0 + + coeff_dyy_m2_p1_0*data_m2_p1_0 + + coeff_dyy_m1_p1_0*data_m1_p1_0 + + coeff_dyy_0_p1_0*data_0_p1_0 + + coeff_dyy_p1_p1_0*data_p1_p1_0 + + coeff_dyy_p2_p1_0*data_p2_p1_0 + + coeff_dyy_m2_p2_0*data_m2_p2_0 + + coeff_dyy_m1_p2_0*data_m1_p2_0 + + coeff_dyy_0_p2_0*data_0_p2_0 + + coeff_dyy_p1_p2_0*data_p1_p2_0 + + coeff_dyy_p2_p2_0*data_p2_p2_0 + + coeff_dyy_m2_m2_p1*data_m2_m2_p1 + + coeff_dyy_m1_m2_p1*data_m1_m2_p1 + + coeff_dyy_0_m2_p1*data_0_m2_p1 + + coeff_dyy_p1_m2_p1*data_p1_m2_p1 + + coeff_dyy_p2_m2_p1*data_p2_m2_p1 + + coeff_dyy_m2_m1_p1*data_m2_m1_p1 + + coeff_dyy_m1_m1_p1*data_m1_m1_p1 + + coeff_dyy_0_m1_p1*data_0_m1_p1 + + coeff_dyy_p1_m1_p1*data_p1_m1_p1 + + coeff_dyy_p2_m1_p1*data_p2_m1_p1 + + coeff_dyy_m2_0_p1*data_m2_0_p1 + + coeff_dyy_m1_0_p1*data_m1_0_p1 + + coeff_dyy_0_0_p1*data_0_0_p1 + + coeff_dyy_p1_0_p1*data_p1_0_p1 + + coeff_dyy_p2_0_p1*data_p2_0_p1 + + coeff_dyy_m2_p1_p1*data_m2_p1_p1 + + coeff_dyy_m1_p1_p1*data_m1_p1_p1 + + coeff_dyy_0_p1_p1*data_0_p1_p1 + + coeff_dyy_p1_p1_p1*data_p1_p1_p1 + + coeff_dyy_p2_p1_p1*data_p2_p1_p1 + + coeff_dyy_m2_p2_p1*data_m2_p2_p1 + + coeff_dyy_m1_p2_p1*data_m1_p2_p1 + + coeff_dyy_0_p2_p1*data_0_p2_p1 + + coeff_dyy_p1_p2_p1*data_p1_p2_p1 + + coeff_dyy_p2_p2_p1*data_p2_p2_p1 + + coeff_dyy_m2_m2_p2*data_m2_m2_p2 + + coeff_dyy_m1_m2_p2*data_m1_m2_p2 + + coeff_dyy_0_m2_p2*data_0_m2_p2 + + coeff_dyy_p1_m2_p2*data_p1_m2_p2 + + coeff_dyy_p2_m2_p2*data_p2_m2_p2 + + coeff_dyy_m2_m1_p2*data_m2_m1_p2 + + coeff_dyy_m1_m1_p2*data_m1_m1_p2 + + coeff_dyy_0_m1_p2*data_0_m1_p2 + + coeff_dyy_p1_m1_p2*data_p1_m1_p2 + + coeff_dyy_p2_m1_p2*data_p2_m1_p2 + + coeff_dyy_m2_0_p2*data_m2_0_p2 + + coeff_dyy_m1_0_p2*data_m1_0_p2 + + coeff_dyy_0_0_p2*data_0_0_p2 + + coeff_dyy_p1_0_p2*data_p1_0_p2 + + coeff_dyy_p2_0_p2*data_p2_0_p2 + + coeff_dyy_m2_p1_p2*data_m2_p1_p2 + + coeff_dyy_m1_p1_p2*data_m1_p1_p2 + + coeff_dyy_0_p1_p2*data_0_p1_p2 + + coeff_dyy_p1_p1_p2*data_p1_p1_p2 + + coeff_dyy_p2_p1_p2*data_p2_p1_p2 + + coeff_dyy_m2_p2_p2*data_m2_p2_p2 + + coeff_dyy_m1_p2_p2*data_m1_p2_p2 + + coeff_dyy_0_p2_p2*data_0_p2_p2 + + coeff_dyy_p1_p2_p2*data_p1_p2_p2 + + coeff_dyy_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dyz.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dyz.compute.c new file mode 100644 index 0000000..9b8120b --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dyz.compute.c @@ -0,0 +1,126 @@ +result = + coeff_dyz_m2_m2_m2*data_m2_m2_m2 + + coeff_dyz_m1_m2_m2*data_m1_m2_m2 + + coeff_dyz_0_m2_m2*data_0_m2_m2 + + coeff_dyz_p1_m2_m2*data_p1_m2_m2 + + coeff_dyz_p2_m2_m2*data_p2_m2_m2 + + coeff_dyz_m2_m1_m2*data_m2_m1_m2 + + coeff_dyz_m1_m1_m2*data_m1_m1_m2 + + coeff_dyz_0_m1_m2*data_0_m1_m2 + + coeff_dyz_p1_m1_m2*data_p1_m1_m2 + + coeff_dyz_p2_m1_m2*data_p2_m1_m2 + + coeff_dyz_m2_0_m2*data_m2_0_m2 + + coeff_dyz_m1_0_m2*data_m1_0_m2 + + coeff_dyz_0_0_m2*data_0_0_m2 + + coeff_dyz_p1_0_m2*data_p1_0_m2 + + coeff_dyz_p2_0_m2*data_p2_0_m2 + + coeff_dyz_m2_p1_m2*data_m2_p1_m2 + + coeff_dyz_m1_p1_m2*data_m1_p1_m2 + + coeff_dyz_0_p1_m2*data_0_p1_m2 + + coeff_dyz_p1_p1_m2*data_p1_p1_m2 + + coeff_dyz_p2_p1_m2*data_p2_p1_m2 + + coeff_dyz_m2_p2_m2*data_m2_p2_m2 + + coeff_dyz_m1_p2_m2*data_m1_p2_m2 + + coeff_dyz_0_p2_m2*data_0_p2_m2 + + coeff_dyz_p1_p2_m2*data_p1_p2_m2 + + coeff_dyz_p2_p2_m2*data_p2_p2_m2 + + coeff_dyz_m2_m2_m1*data_m2_m2_m1 + + coeff_dyz_m1_m2_m1*data_m1_m2_m1 + + coeff_dyz_0_m2_m1*data_0_m2_m1 + + coeff_dyz_p1_m2_m1*data_p1_m2_m1 + + coeff_dyz_p2_m2_m1*data_p2_m2_m1 + + coeff_dyz_m2_m1_m1*data_m2_m1_m1 + + coeff_dyz_m1_m1_m1*data_m1_m1_m1 + + coeff_dyz_0_m1_m1*data_0_m1_m1 + + coeff_dyz_p1_m1_m1*data_p1_m1_m1 + + coeff_dyz_p2_m1_m1*data_p2_m1_m1 + + coeff_dyz_m2_0_m1*data_m2_0_m1 + + coeff_dyz_m1_0_m1*data_m1_0_m1 + + coeff_dyz_0_0_m1*data_0_0_m1 + + coeff_dyz_p1_0_m1*data_p1_0_m1 + + coeff_dyz_p2_0_m1*data_p2_0_m1 + + coeff_dyz_m2_p1_m1*data_m2_p1_m1 + + coeff_dyz_m1_p1_m1*data_m1_p1_m1 + + coeff_dyz_0_p1_m1*data_0_p1_m1 + + coeff_dyz_p1_p1_m1*data_p1_p1_m1 + + coeff_dyz_p2_p1_m1*data_p2_p1_m1 + + coeff_dyz_m2_p2_m1*data_m2_p2_m1 + + coeff_dyz_m1_p2_m1*data_m1_p2_m1 + + coeff_dyz_0_p2_m1*data_0_p2_m1 + + coeff_dyz_p1_p2_m1*data_p1_p2_m1 + + coeff_dyz_p2_p2_m1*data_p2_p2_m1 + + coeff_dyz_m2_m2_0*data_m2_m2_0 + + coeff_dyz_m1_m2_0*data_m1_m2_0 + + coeff_dyz_0_m2_0*data_0_m2_0 + + coeff_dyz_p1_m2_0*data_p1_m2_0 + + coeff_dyz_p2_m2_0*data_p2_m2_0 + + coeff_dyz_m2_m1_0*data_m2_m1_0 + + coeff_dyz_m1_m1_0*data_m1_m1_0 + + coeff_dyz_0_m1_0*data_0_m1_0 + + coeff_dyz_p1_m1_0*data_p1_m1_0 + + coeff_dyz_p2_m1_0*data_p2_m1_0 + + coeff_dyz_m2_0_0*data_m2_0_0 + + coeff_dyz_m1_0_0*data_m1_0_0 + + coeff_dyz_0_0_0*data_0_0_0 + + coeff_dyz_p1_0_0*data_p1_0_0 + + coeff_dyz_p2_0_0*data_p2_0_0 + + coeff_dyz_m2_p1_0*data_m2_p1_0 + + coeff_dyz_m1_p1_0*data_m1_p1_0 + + coeff_dyz_0_p1_0*data_0_p1_0 + + coeff_dyz_p1_p1_0*data_p1_p1_0 + + coeff_dyz_p2_p1_0*data_p2_p1_0 + + coeff_dyz_m2_p2_0*data_m2_p2_0 + + coeff_dyz_m1_p2_0*data_m1_p2_0 + + coeff_dyz_0_p2_0*data_0_p2_0 + + coeff_dyz_p1_p2_0*data_p1_p2_0 + + coeff_dyz_p2_p2_0*data_p2_p2_0 + + coeff_dyz_m2_m2_p1*data_m2_m2_p1 + + coeff_dyz_m1_m2_p1*data_m1_m2_p1 + + coeff_dyz_0_m2_p1*data_0_m2_p1 + + coeff_dyz_p1_m2_p1*data_p1_m2_p1 + + coeff_dyz_p2_m2_p1*data_p2_m2_p1 + + coeff_dyz_m2_m1_p1*data_m2_m1_p1 + + coeff_dyz_m1_m1_p1*data_m1_m1_p1 + + coeff_dyz_0_m1_p1*data_0_m1_p1 + + coeff_dyz_p1_m1_p1*data_p1_m1_p1 + + coeff_dyz_p2_m1_p1*data_p2_m1_p1 + + coeff_dyz_m2_0_p1*data_m2_0_p1 + + coeff_dyz_m1_0_p1*data_m1_0_p1 + + coeff_dyz_0_0_p1*data_0_0_p1 + + coeff_dyz_p1_0_p1*data_p1_0_p1 + + coeff_dyz_p2_0_p1*data_p2_0_p1 + + coeff_dyz_m2_p1_p1*data_m2_p1_p1 + + coeff_dyz_m1_p1_p1*data_m1_p1_p1 + + coeff_dyz_0_p1_p1*data_0_p1_p1 + + coeff_dyz_p1_p1_p1*data_p1_p1_p1 + + coeff_dyz_p2_p1_p1*data_p2_p1_p1 + + coeff_dyz_m2_p2_p1*data_m2_p2_p1 + + coeff_dyz_m1_p2_p1*data_m1_p2_p1 + + coeff_dyz_0_p2_p1*data_0_p2_p1 + + coeff_dyz_p1_p2_p1*data_p1_p2_p1 + + coeff_dyz_p2_p2_p1*data_p2_p2_p1 + + coeff_dyz_m2_m2_p2*data_m2_m2_p2 + + coeff_dyz_m1_m2_p2*data_m1_m2_p2 + + coeff_dyz_0_m2_p2*data_0_m2_p2 + + coeff_dyz_p1_m2_p2*data_p1_m2_p2 + + coeff_dyz_p2_m2_p2*data_p2_m2_p2 + + coeff_dyz_m2_m1_p2*data_m2_m1_p2 + + coeff_dyz_m1_m1_p2*data_m1_m1_p2 + + coeff_dyz_0_m1_p2*data_0_m1_p2 + + coeff_dyz_p1_m1_p2*data_p1_m1_p2 + + coeff_dyz_p2_m1_p2*data_p2_m1_p2 + + coeff_dyz_m2_0_p2*data_m2_0_p2 + + coeff_dyz_m1_0_p2*data_m1_0_p2 + + coeff_dyz_0_0_p2*data_0_0_p2 + + coeff_dyz_p1_0_p2*data_p1_0_p2 + + coeff_dyz_p2_0_p2*data_p2_0_p2 + + coeff_dyz_m2_p1_p2*data_m2_p1_p2 + + coeff_dyz_m1_p1_p2*data_m1_p1_p2 + + coeff_dyz_0_p1_p2*data_0_p1_p2 + + coeff_dyz_p1_p1_p2*data_p1_p1_p2 + + coeff_dyz_p2_p1_p2*data_p2_p1_p2 + + coeff_dyz_m2_p2_p2*data_m2_p2_p2 + + coeff_dyz_m1_p2_p2*data_m1_p2_p2 + + coeff_dyz_0_p2_p2*data_0_p2_p2 + + coeff_dyz_p1_p2_p2*data_p1_p2_p2 + + coeff_dyz_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dz.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dz.compute.c new file mode 100644 index 0000000..df21dcc --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dz.compute.c @@ -0,0 +1,126 @@ +result = + coeff_dz_m2_m2_m2*data_m2_m2_m2 + + coeff_dz_m1_m2_m2*data_m1_m2_m2 + + coeff_dz_0_m2_m2*data_0_m2_m2 + + coeff_dz_p1_m2_m2*data_p1_m2_m2 + + coeff_dz_p2_m2_m2*data_p2_m2_m2 + + coeff_dz_m2_m1_m2*data_m2_m1_m2 + + coeff_dz_m1_m1_m2*data_m1_m1_m2 + + coeff_dz_0_m1_m2*data_0_m1_m2 + + coeff_dz_p1_m1_m2*data_p1_m1_m2 + + coeff_dz_p2_m1_m2*data_p2_m1_m2 + + coeff_dz_m2_0_m2*data_m2_0_m2 + + coeff_dz_m1_0_m2*data_m1_0_m2 + + coeff_dz_0_0_m2*data_0_0_m2 + + coeff_dz_p1_0_m2*data_p1_0_m2 + + coeff_dz_p2_0_m2*data_p2_0_m2 + + coeff_dz_m2_p1_m2*data_m2_p1_m2 + + coeff_dz_m1_p1_m2*data_m1_p1_m2 + + coeff_dz_0_p1_m2*data_0_p1_m2 + + coeff_dz_p1_p1_m2*data_p1_p1_m2 + + coeff_dz_p2_p1_m2*data_p2_p1_m2 + + coeff_dz_m2_p2_m2*data_m2_p2_m2 + + coeff_dz_m1_p2_m2*data_m1_p2_m2 + + coeff_dz_0_p2_m2*data_0_p2_m2 + + coeff_dz_p1_p2_m2*data_p1_p2_m2 + + coeff_dz_p2_p2_m2*data_p2_p2_m2 + + coeff_dz_m2_m2_m1*data_m2_m2_m1 + + coeff_dz_m1_m2_m1*data_m1_m2_m1 + + coeff_dz_0_m2_m1*data_0_m2_m1 + + coeff_dz_p1_m2_m1*data_p1_m2_m1 + + coeff_dz_p2_m2_m1*data_p2_m2_m1 + + coeff_dz_m2_m1_m1*data_m2_m1_m1 + + coeff_dz_m1_m1_m1*data_m1_m1_m1 + + coeff_dz_0_m1_m1*data_0_m1_m1 + + coeff_dz_p1_m1_m1*data_p1_m1_m1 + + coeff_dz_p2_m1_m1*data_p2_m1_m1 + + coeff_dz_m2_0_m1*data_m2_0_m1 + + coeff_dz_m1_0_m1*data_m1_0_m1 + + coeff_dz_0_0_m1*data_0_0_m1 + + coeff_dz_p1_0_m1*data_p1_0_m1 + + coeff_dz_p2_0_m1*data_p2_0_m1 + + coeff_dz_m2_p1_m1*data_m2_p1_m1 + + coeff_dz_m1_p1_m1*data_m1_p1_m1 + + coeff_dz_0_p1_m1*data_0_p1_m1 + + coeff_dz_p1_p1_m1*data_p1_p1_m1 + + coeff_dz_p2_p1_m1*data_p2_p1_m1 + + coeff_dz_m2_p2_m1*data_m2_p2_m1 + + coeff_dz_m1_p2_m1*data_m1_p2_m1 + + coeff_dz_0_p2_m1*data_0_p2_m1 + + coeff_dz_p1_p2_m1*data_p1_p2_m1 + + coeff_dz_p2_p2_m1*data_p2_p2_m1 + + coeff_dz_m2_m2_0*data_m2_m2_0 + + coeff_dz_m1_m2_0*data_m1_m2_0 + + coeff_dz_0_m2_0*data_0_m2_0 + + coeff_dz_p1_m2_0*data_p1_m2_0 + + coeff_dz_p2_m2_0*data_p2_m2_0 + + coeff_dz_m2_m1_0*data_m2_m1_0 + + coeff_dz_m1_m1_0*data_m1_m1_0 + + coeff_dz_0_m1_0*data_0_m1_0 + + coeff_dz_p1_m1_0*data_p1_m1_0 + + coeff_dz_p2_m1_0*data_p2_m1_0 + + coeff_dz_m2_0_0*data_m2_0_0 + + coeff_dz_m1_0_0*data_m1_0_0 + + coeff_dz_0_0_0*data_0_0_0 + + coeff_dz_p1_0_0*data_p1_0_0 + + coeff_dz_p2_0_0*data_p2_0_0 + + coeff_dz_m2_p1_0*data_m2_p1_0 + + coeff_dz_m1_p1_0*data_m1_p1_0 + + coeff_dz_0_p1_0*data_0_p1_0 + + coeff_dz_p1_p1_0*data_p1_p1_0 + + coeff_dz_p2_p1_0*data_p2_p1_0 + + coeff_dz_m2_p2_0*data_m2_p2_0 + + coeff_dz_m1_p2_0*data_m1_p2_0 + + coeff_dz_0_p2_0*data_0_p2_0 + + coeff_dz_p1_p2_0*data_p1_p2_0 + + coeff_dz_p2_p2_0*data_p2_p2_0 + + coeff_dz_m2_m2_p1*data_m2_m2_p1 + + coeff_dz_m1_m2_p1*data_m1_m2_p1 + + coeff_dz_0_m2_p1*data_0_m2_p1 + + coeff_dz_p1_m2_p1*data_p1_m2_p1 + + coeff_dz_p2_m2_p1*data_p2_m2_p1 + + coeff_dz_m2_m1_p1*data_m2_m1_p1 + + coeff_dz_m1_m1_p1*data_m1_m1_p1 + + coeff_dz_0_m1_p1*data_0_m1_p1 + + coeff_dz_p1_m1_p1*data_p1_m1_p1 + + coeff_dz_p2_m1_p1*data_p2_m1_p1 + + coeff_dz_m2_0_p1*data_m2_0_p1 + + coeff_dz_m1_0_p1*data_m1_0_p1 + + coeff_dz_0_0_p1*data_0_0_p1 + + coeff_dz_p1_0_p1*data_p1_0_p1 + + coeff_dz_p2_0_p1*data_p2_0_p1 + + coeff_dz_m2_p1_p1*data_m2_p1_p1 + + coeff_dz_m1_p1_p1*data_m1_p1_p1 + + coeff_dz_0_p1_p1*data_0_p1_p1 + + coeff_dz_p1_p1_p1*data_p1_p1_p1 + + coeff_dz_p2_p1_p1*data_p2_p1_p1 + + coeff_dz_m2_p2_p1*data_m2_p2_p1 + + coeff_dz_m1_p2_p1*data_m1_p2_p1 + + coeff_dz_0_p2_p1*data_0_p2_p1 + + coeff_dz_p1_p2_p1*data_p1_p2_p1 + + coeff_dz_p2_p2_p1*data_p2_p2_p1 + + coeff_dz_m2_m2_p2*data_m2_m2_p2 + + coeff_dz_m1_m2_p2*data_m1_m2_p2 + + coeff_dz_0_m2_p2*data_0_m2_p2 + + coeff_dz_p1_m2_p2*data_p1_m2_p2 + + coeff_dz_p2_m2_p2*data_p2_m2_p2 + + coeff_dz_m2_m1_p2*data_m2_m1_p2 + + coeff_dz_m1_m1_p2*data_m1_m1_p2 + + coeff_dz_0_m1_p2*data_0_m1_p2 + + coeff_dz_p1_m1_p2*data_p1_m1_p2 + + coeff_dz_p2_m1_p2*data_p2_m1_p2 + + coeff_dz_m2_0_p2*data_m2_0_p2 + + coeff_dz_m1_0_p2*data_m1_0_p2 + + coeff_dz_0_0_p2*data_0_0_p2 + + coeff_dz_p1_0_p2*data_p1_0_p2 + + coeff_dz_p2_0_p2*data_p2_0_p2 + + coeff_dz_m2_p1_p2*data_m2_p1_p2 + + coeff_dz_m1_p1_p2*data_m1_p1_p2 + + coeff_dz_0_p1_p2*data_0_p1_p2 + + coeff_dz_p1_p1_p2*data_p1_p1_p2 + + coeff_dz_p2_p1_p2*data_p2_p1_p2 + + coeff_dz_m2_p2_p2*data_m2_p2_p2 + + coeff_dz_m1_p2_p2*data_m1_p2_p2 + + coeff_dz_0_p2_p2*data_0_p2_p2 + + coeff_dz_p1_p2_p2*data_p1_p2_p2 + + coeff_dz_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dzz.compute.c b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dzz.compute.c new file mode 100644 index 0000000..c085ef6 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dzz.compute.c @@ -0,0 +1,126 @@ +result = + coeff_dzz_m2_m2_m2*data_m2_m2_m2 + + coeff_dzz_m1_m2_m2*data_m1_m2_m2 + + coeff_dzz_0_m2_m2*data_0_m2_m2 + + coeff_dzz_p1_m2_m2*data_p1_m2_m2 + + coeff_dzz_p2_m2_m2*data_p2_m2_m2 + + coeff_dzz_m2_m1_m2*data_m2_m1_m2 + + coeff_dzz_m1_m1_m2*data_m1_m1_m2 + + coeff_dzz_0_m1_m2*data_0_m1_m2 + + coeff_dzz_p1_m1_m2*data_p1_m1_m2 + + coeff_dzz_p2_m1_m2*data_p2_m1_m2 + + coeff_dzz_m2_0_m2*data_m2_0_m2 + + coeff_dzz_m1_0_m2*data_m1_0_m2 + + coeff_dzz_0_0_m2*data_0_0_m2 + + coeff_dzz_p1_0_m2*data_p1_0_m2 + + coeff_dzz_p2_0_m2*data_p2_0_m2 + + coeff_dzz_m2_p1_m2*data_m2_p1_m2 + + coeff_dzz_m1_p1_m2*data_m1_p1_m2 + + coeff_dzz_0_p1_m2*data_0_p1_m2 + + coeff_dzz_p1_p1_m2*data_p1_p1_m2 + + coeff_dzz_p2_p1_m2*data_p2_p1_m2 + + coeff_dzz_m2_p2_m2*data_m2_p2_m2 + + coeff_dzz_m1_p2_m2*data_m1_p2_m2 + + coeff_dzz_0_p2_m2*data_0_p2_m2 + + coeff_dzz_p1_p2_m2*data_p1_p2_m2 + + coeff_dzz_p2_p2_m2*data_p2_p2_m2 + + coeff_dzz_m2_m2_m1*data_m2_m2_m1 + + coeff_dzz_m1_m2_m1*data_m1_m2_m1 + + coeff_dzz_0_m2_m1*data_0_m2_m1 + + coeff_dzz_p1_m2_m1*data_p1_m2_m1 + + coeff_dzz_p2_m2_m1*data_p2_m2_m1 + + coeff_dzz_m2_m1_m1*data_m2_m1_m1 + + coeff_dzz_m1_m1_m1*data_m1_m1_m1 + + coeff_dzz_0_m1_m1*data_0_m1_m1 + + coeff_dzz_p1_m1_m1*data_p1_m1_m1 + + coeff_dzz_p2_m1_m1*data_p2_m1_m1 + + coeff_dzz_m2_0_m1*data_m2_0_m1 + + coeff_dzz_m1_0_m1*data_m1_0_m1 + + coeff_dzz_0_0_m1*data_0_0_m1 + + coeff_dzz_p1_0_m1*data_p1_0_m1 + + coeff_dzz_p2_0_m1*data_p2_0_m1 + + coeff_dzz_m2_p1_m1*data_m2_p1_m1 + + coeff_dzz_m1_p1_m1*data_m1_p1_m1 + + coeff_dzz_0_p1_m1*data_0_p1_m1 + + coeff_dzz_p1_p1_m1*data_p1_p1_m1 + + coeff_dzz_p2_p1_m1*data_p2_p1_m1 + + coeff_dzz_m2_p2_m1*data_m2_p2_m1 + + coeff_dzz_m1_p2_m1*data_m1_p2_m1 + + coeff_dzz_0_p2_m1*data_0_p2_m1 + + coeff_dzz_p1_p2_m1*data_p1_p2_m1 + + coeff_dzz_p2_p2_m1*data_p2_p2_m1 + + coeff_dzz_m2_m2_0*data_m2_m2_0 + + coeff_dzz_m1_m2_0*data_m1_m2_0 + + coeff_dzz_0_m2_0*data_0_m2_0 + + coeff_dzz_p1_m2_0*data_p1_m2_0 + + coeff_dzz_p2_m2_0*data_p2_m2_0 + + coeff_dzz_m2_m1_0*data_m2_m1_0 + + coeff_dzz_m1_m1_0*data_m1_m1_0 + + coeff_dzz_0_m1_0*data_0_m1_0 + + coeff_dzz_p1_m1_0*data_p1_m1_0 + + coeff_dzz_p2_m1_0*data_p2_m1_0 + + coeff_dzz_m2_0_0*data_m2_0_0 + + coeff_dzz_m1_0_0*data_m1_0_0 + + coeff_dzz_0_0_0*data_0_0_0 + + coeff_dzz_p1_0_0*data_p1_0_0 + + coeff_dzz_p2_0_0*data_p2_0_0 + + coeff_dzz_m2_p1_0*data_m2_p1_0 + + coeff_dzz_m1_p1_0*data_m1_p1_0 + + coeff_dzz_0_p1_0*data_0_p1_0 + + coeff_dzz_p1_p1_0*data_p1_p1_0 + + coeff_dzz_p2_p1_0*data_p2_p1_0 + + coeff_dzz_m2_p2_0*data_m2_p2_0 + + coeff_dzz_m1_p2_0*data_m1_p2_0 + + coeff_dzz_0_p2_0*data_0_p2_0 + + coeff_dzz_p1_p2_0*data_p1_p2_0 + + coeff_dzz_p2_p2_0*data_p2_p2_0 + + coeff_dzz_m2_m2_p1*data_m2_m2_p1 + + coeff_dzz_m1_m2_p1*data_m1_m2_p1 + + coeff_dzz_0_m2_p1*data_0_m2_p1 + + coeff_dzz_p1_m2_p1*data_p1_m2_p1 + + coeff_dzz_p2_m2_p1*data_p2_m2_p1 + + coeff_dzz_m2_m1_p1*data_m2_m1_p1 + + coeff_dzz_m1_m1_p1*data_m1_m1_p1 + + coeff_dzz_0_m1_p1*data_0_m1_p1 + + coeff_dzz_p1_m1_p1*data_p1_m1_p1 + + coeff_dzz_p2_m1_p1*data_p2_m1_p1 + + coeff_dzz_m2_0_p1*data_m2_0_p1 + + coeff_dzz_m1_0_p1*data_m1_0_p1 + + coeff_dzz_0_0_p1*data_0_0_p1 + + coeff_dzz_p1_0_p1*data_p1_0_p1 + + coeff_dzz_p2_0_p1*data_p2_0_p1 + + coeff_dzz_m2_p1_p1*data_m2_p1_p1 + + coeff_dzz_m1_p1_p1*data_m1_p1_p1 + + coeff_dzz_0_p1_p1*data_0_p1_p1 + + coeff_dzz_p1_p1_p1*data_p1_p1_p1 + + coeff_dzz_p2_p1_p1*data_p2_p1_p1 + + coeff_dzz_m2_p2_p1*data_m2_p2_p1 + + coeff_dzz_m1_p2_p1*data_m1_p2_p1 + + coeff_dzz_0_p2_p1*data_0_p2_p1 + + coeff_dzz_p1_p2_p1*data_p1_p2_p1 + + coeff_dzz_p2_p2_p1*data_p2_p2_p1 + + coeff_dzz_m2_m2_p2*data_m2_m2_p2 + + coeff_dzz_m1_m2_p2*data_m1_m2_p2 + + coeff_dzz_0_m2_p2*data_0_m2_p2 + + coeff_dzz_p1_m2_p2*data_p1_m2_p2 + + coeff_dzz_p2_m2_p2*data_p2_m2_p2 + + coeff_dzz_m2_m1_p2*data_m2_m1_p2 + + coeff_dzz_m1_m1_p2*data_m1_m1_p2 + + coeff_dzz_0_m1_p2*data_0_m1_p2 + + coeff_dzz_p1_m1_p2*data_p1_m1_p2 + + coeff_dzz_p2_m1_p2*data_p2_m1_p2 + + coeff_dzz_m2_0_p2*data_m2_0_p2 + + coeff_dzz_m1_0_p2*data_m1_0_p2 + + coeff_dzz_0_0_p2*data_0_0_p2 + + coeff_dzz_p1_0_p2*data_p1_0_p2 + + coeff_dzz_p2_0_p2*data_p2_0_p2 + + coeff_dzz_m2_p1_p2*data_m2_p1_p2 + + coeff_dzz_m1_p1_p2*data_m1_p1_p2 + + coeff_dzz_0_p1_p2*data_0_p1_p2 + + coeff_dzz_p1_p1_p2*data_p1_p1_p2 + + coeff_dzz_p2_p1_p2*data_p2_p1_p2 + + coeff_dzz_m2_p2_p2*data_m2_p2_p2 + + coeff_dzz_m1_p2_p2*data_m1_p2_p2 + + coeff_dzz_0_p2_p2*data_0_p2_p2 + + coeff_dzz_p1_p2_p2*data_p1_p2_p2 + + coeff_dzz_p2_p2_p2*data_p2_p2_p2; diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.log b/src/GeneralizedPolynomial-Uniform/common/3d.log new file mode 100644 index 0000000..2fed690 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.log @@ -0,0 +1,1504 @@ + |\^/| Maple 7 (IBM INTEL LINUX) +._|\| |/|_. Copyright (c) 2001 by Waterloo Maple Inc. + \ MAPLE / All rights reserved. Maple is a registered trademark of + <____ ____> Waterloo Maple Inc. + | Type ? for help. +# util.maple -- misc utility routines +# $Id: util.maple,v 1.3 2002/05/19 13:12:18 jthorn Exp $ +> +# +# fix_rationals - convert numbers to RATIONAL() calls +# nonmatching_names - find names in a list which *don't* have a specified prefix +# sprint_numeric_list - convert a numeric list to a valid C identifier suffix +# print_name_list_dcl - print a C declaration for a list of names +# +# hypercube_points - compute all (integer) points in an N-dimensional hypercube +# +# ftruncate - truncate a file to zero length +# +> +################################################################################ +################################################################################ +################################################################################ +> +# +# This function converts all {integer, rational} subexpressions of its +# input except integer exponents and -1 factors in products, into function +# calls +# RATIONAL(num,den) +# This is useful in conjunction with the C() library function, since +# +# C( (1/3) * foo * bar ) +# t0 = foo*bar/3; +# +# generates a (slow) division (and runs the risk of mixed-mode-arithmetic +# problems), while +# +# C((1.0/3.0) * foo * bar); +# t0 = 0.3333333333*foo*bar; +# +# suffers from roundoff error. With this function, +# +# fix_rationals((1/3) * foo * bar); +# RATIONAL(1,3) foo bar +# C(%); +# t0 = RATIONAL(1.0,3.0)*foo*bar; +# +# which a C preprocessor macro can easily convert to the desired +# +# t0 = (1.0/3.0)*foo*bar; +# +# Additionally, this function can be told to leave certain types of +# subexpressions unconverged. For example, +# fix_rationals(expr, type, specfunc(integer, DATA)); +# will leave all subexpressions of the form DATA(integer arguments) +# unconverted. +# +# Arguments: +# expr = (in) The expression to be converted. +# inert_fn = (optional in) +# If specified, this argument should be a Boolean procedure +# or the name of a Boolean procedure. This procedure should +# take one or more argument, and return true if and only if +# the first argument should *not* be converted, i.e. if we +# should leave this expression unchanged. See the last +# example above. +# ... = (optional in) +# Any further arguments are passed as additional arguments to +# the inert_fn procedure. +# +> fix_rationals := +> proc( +> expr::{ +> algebraic, name = algebraic, +> list({algebraic, name = algebraic}), +> set ({algebraic, name = algebraic}) +> }, +> inert_fn::{name, procedure} +> ) +> local nn, k, +> base, power, fbase, fpower, +> fn, fn_args_list, +> num, den, mult; +> +# do we want to convert this expression? +> if ((nargs >= 2) and inert_fn(expr, args[3..nargs])) +> then return expr; +> end if; +> +# recurse over lists and sets +> if (type(expr, {list,set})) +> then return map(fix_rationals, expr, args[2..nargs]); +> end if; +> +# recurse over equation right hand sides +> if (type(expr, name = algebraic)) +> then return ( lhs(expr) = fix_rationals(rhs(expr), args[2..nargs]) ); +> end if; +> +# recurse over functions other than RATIONAL() +> if (type(expr, function)) +> then +> fn := op(0, expr); +> if (fn <> 'RATIONAL') +> then +> fn_args_list := [op(expr)]; +> fn_args_list := map(fix_rationals, fn_args_list, args[2..nargs]); +> fn; return '%'( op(fn_args_list) ); +> end if; +> end if; +> +> nn := nops(expr); +> +# recurse over sums +> if (type(expr, `+`)) +> then return sum('fix_rationals(op(k,expr), args[2..nargs])', 'k'=1..nn); +> end if; +> +# recurse over products +# ... leaving leading -1 factors intact, i.e. not converted to RATIONAL(-1,1) +> if (type(expr, `*`)) +> then +> if (op(1, expr) = -1) +> then return -1*fix_rationals(remove(type, expr, 'identical(-1)'), +> args[2..nargs]); +> else return product('fix_rationals(op(k,expr), args[2..nargs])', +> 'k'=1..nn); +> end if; +> end if; +> +# recurse over powers +# ... leaving integer exponents intact +> if (type(expr, `^`)) +> then +> base := op(1, expr); +> power := op(2, expr); +> +> fbase := fix_rationals(base, args[2..nargs]); +> if (type(power, integer)) +> then fpower := power; +> else fpower := fix_rationals(power, args[2..nargs]); +> end if; +> return fbase ^ fpower; +> end if; +> +# fix integers and fractions +> if (type(expr, integer)) +> then return 'RATIONAL'(expr, 1); +> end if; +> if (type(expr, fraction)) +> then +> num := op(1, expr); +> den := op(2, expr); +> +> return 'RATIONAL'(num, den); +> end if; +> +# turn Maple floating-point into integer fraction, then recursively fix that +> if (type(expr, float)) +> then +> mult := op(1, expr); +> power := op(2, expr); +> return fix_rationals(mult * 10^power, args[2..nargs]); +> end if; +> +# identity op on names +> if (type(expr, name)) +> then return expr; +> end if; +> +# unknown type +> error "%0", +> "unknown type for expr!", +> " whattype(expr) = ", whattype(expr), +> " expr = ", expr; +> end proc; +fix_rationals := proc(expr::{algebraic, name = algebraic, +list({algebraic, name = algebraic}), set({algebraic, name = algebraic})}, +inert_fn::{procedure, name}) +local nn, k, base, power, fbase, fpower, fn, fn_args_list, num, den, mult; + if 2 <= nargs and inert_fn(expr, args[3 .. nargs]) then return expr + end if; + if type(expr, {set, list}) then + return map(fix_rationals, expr, args[2 .. nargs]) + end if; + if type(expr, name = algebraic) then + return lhs(expr) = fix_rationals(rhs(expr), args[2 .. nargs]) + end if; + if type(expr, function) then + fn := op(0, expr); + if fn <> 'RATIONAL' then + fn_args_list := [op(expr)]; + fn_args_list := + map(fix_rationals, fn_args_list, args[2 .. nargs]); + fn; + return '%'(op(fn_args_list)) + end if + end if; + nn := nops(expr); + if type(expr, `+`) then return + sum('fix_rationals(op(k, expr), args[2 .. nargs])', 'k' = 1 .. nn) + end if; + if type(expr, `*`) then + if op(1, expr) = -1 then return -fix_rationals( + remove(type, expr, 'identical(-1)'), args[2 .. nargs]) + else return product('fix_rationals(op(k, expr), args[2 .. nargs])', + 'k' = 1 .. nn) + end if + end if; + if type(expr, `^`) then + base := op(1, expr); + power := op(2, expr); + fbase := fix_rationals(base, args[2 .. nargs]); + if type(power, integer) then fpower := power + else fpower := fix_rationals(power, args[2 .. nargs]) + end if; + return fbase^fpower + end if; + if type(expr, integer) then return 'RATIONAL'(expr, 1) end if; + if type(expr, fraction) then + num := op(1, expr); den := op(2, expr); return 'RATIONAL'(num, den) + end if; + if type(expr, float) then + mult := op(1, expr); + power := op(2, expr); + return fix_rationals(mult*10^power, args[2 .. nargs]) + end if; + if type(expr, name) then return expr end if; + error "%0", "unknown type for expr!", " whattype(expr) = ", + whattype(expr), " expr = ", expr +end proc + +> +################################################################################ +> +# +# This function finds names in a list which *don't* have a specified prefix. +# +# Arguments: +# name_list = A list of the names. +# prefix = The prefix we want to filter out. +# +# Results: +# This function returns the subset list of names which don't have the +# specified prefix. +# +> nonmatching_names := +> proc( name_list::list({name,string}), prefix::{name,string} ) +> +> select( proc(n) +> evalb(not StringTools[IsPrefix](prefix,n)); +> end proc +> , +> name_list +> ); +> end proc; +nonmatching_names := proc( +name_list::list({name, string}), prefix::{name, string}) + select(proc(n) evalb(not StringTools[IsPrefix](prefix, n)) end proc, + name_list) +end proc + +> +################################################################################ +> +# +# This function converts a numeric list to a string which is a valid +# C identifier suffix: elements are separated by "_", decimal points are +# replaced by "x", and all nonzero values have explicit +/- signs, which +# are replaced by "p"/"m". +# +# For example, [0,-3.5,+4] --> "0_m3x5_p4". +# +> sprint_numeric_list := +> proc(nlist::list(numeric)) +> +# generate preliminary string, eg "+0_-3.5_+4" +> map2(sprintf, "%+a", nlist); +> ListTools[Join](%, "_"); +> cat(op(%)); +> +# fixup bad characters +> StringTools[SubstituteAll](%, "+0", "0"); +> StringTools[CharacterMap](".+-", "xpm", %); +> +> return %; +> end proc; +sprint_numeric_list := proc(nlist::list(numeric)) + map2(sprintf, "%+a", nlist); + ListTools[Join](%, "_"); + cat(op(%)); + StringTools[SubstituteAll](%, "+0", "0"); + StringTools[CharacterMap](".+-", "xpm", %); + return % +end proc + +> +################################################################################ +> +# +# This function prints a C declaration for a list of names. +# +# Argument: +# name_list = A list of the names. +# name_type = The C type of the names, eg. "double". +# file_name = The file name to write the declaration to. This is +# truncated before writing. +# +> print_name_list_dcl := +> proc( name_list::list({name,string}), +> name_type::string, +> file_name::string ) +> local blanks, separator_string; +> +> ftruncate(file_name); +> +# a sequence of blanks with the same length as name_type +> seq(" ", i=1..length(name_type)); +> +# string to separate names +> separator_string := cat(",\n", %, " "); +> +> map(convert, name_list, string); +> ListTools[Join](%, separator_string); +> cat(op(%)); +> +> fprintf(file_name, +> "%s %s;\n", +> name_type, %); +> +> fclose(file_name); +> NULL; +> end proc; +print_name_list_dcl := proc( +name_list::list({name, string}), name_type::string, file_name::string) +local blanks, separator_string; + ftruncate(file_name); + seq(" ", i = 1 .. length(name_type)); + separator_string := cat(",\n", %, " "); + map(convert, name_list, string); + ListTools[Join](%, separator_string); + cat(op(%)); + fprintf(file_name, "%s %s;\n", name_type, %); + fclose(file_name); + NULL +end proc + +> +################################################################################ +################################################################################ +################################################################################ +> +# +# This function computes a list of all the (integer) points in an +# N-dimensional hypercube, in lexicographic order. The present +# implementation requires N <= 4. +# +# Arguments: +# cmin,cmax = N-element lists of cube minimum/maximum coordinates. +# +# Results: +# The function returns a set of d-element lists giving the coordinates. +# For example, +# hypercube([0,0], [2,1] +# returns +# { [0,0], [0,1], [1,0], [1,1], [2,0], [2,1] } +> hypercube_points := +> proc(cmin::list(integer), cmax::list(integer)) +> local N, i,j,k,l; +> +> N := nops(cmin); +> if (nops(cmax) <> N) +> then error +> "must have same number of dimensions for min and max coordinates!"; +> fi; +> +> if (N = 1) +> then return [seq([i], i=cmin[1]..cmax[1])]; +> elif (N = 2) +> then return [ +> seq( +> seq([i,j], j=cmin[2]..cmax[2]), +> i=cmin[1]..cmax[1]) +> ]; +> elif (N = 3) +> then return [ +> seq( +> seq( +> seq([i,j,k], k=cmin[3]..cmax[3]), +> j=cmin[2]..cmax[2] ), +> i=cmin[1]..cmax[1]) +> ]; +> elif (N = 4) +> then return [ +> seq( +> seq( +> seq( +> seq([i,j,k,l], l=cmin[4]..cmax[4]), +> k=cmin[3]..cmax[3] ), +> j=cmin[2]..cmax[2]), +> i=cmin[1]..cmax[1]) +> ]; +> else +> error "implementation restriction: must have N <= 4, got %1!", N; +> fi; +> end proc; +hypercube_points := proc(cmin::list(integer), cmax::list(integer)) +local N, i, j, k, l; + N := nops(cmin); + if nops(cmax) <> N then error + "must have same number of dimensions for min and max coordinates!" + end if; + if N = 1 then return [seq([i], i = cmin[1] .. cmax[1])] + elif N = 2 then return + [seq(seq([i, j], j = cmin[2] .. cmax[2]), i = cmin[1] .. cmax[1])] + elif N = 3 then return [seq( + seq(seq([i, j, k], k = cmin[3] .. cmax[3]), j = cmin[2] .. cmax[2]) + , i = cmin[1] .. cmax[1])] + elif N = 4 then return [seq(seq(seq( + seq([i, j, k, l], l = cmin[4] .. cmax[4]), k = cmin[3] .. cmax[3]), + j = cmin[2] .. cmax[2]), i = cmin[1] .. cmax[1])] + else error "implementation restriction: must have N <= 4, got %1!", N + end if +end proc + +> +################################################################################ +################################################################################ +################################################################################ +> +# +# This function truncates a file to 0 length if it exists, or creates +# it at that length if it doesn't exist. +# +# Arguments: +# file_name = (in) The name of the file. +# +> ftruncate := +> proc(file_name::string) +> fopen(file_name, 'WRITE'); +> fclose(%); +> NULL; +> end proc; +ftruncate := + + proc(file_name::string) fopen(file_name, 'WRITE'); fclose(%); NULL end proc + +# interpolate.maple -- compute generalized interpolation formulas/coefficients +# $Id: interpolate.maple,v 1.4 2002/05/14 15:52:50 jthorn Exp $ +> +# +# <<<representation of numbers, data values, etc>>> +# polynomial_interpolant - compute polynomial interpolant +# coeff_as_lc_of_data - coefficients of ... (linear combination of data) +# +# print_coeff__lc_of_data - print C code to compute coefficients +# print_data_var_assign - print C code to assign data-value variables +# print_interp_coeff_var_store - print C code to store coeff vars "somewhere" +# print_interp_cmpt__lc_of_data - print C code for computation of interpolant +# +# coeff_name - name of coefficient of data at a given [m] coordinate +# data_var_name - name of variable storing data value at a given [m] coordinate +# +> +################################################################################ +> +# +# ***** representation of numbers, data values, etc ***** +# +# We use RATIONAL(p.0,q.0) to denote the rational number p/q. +# +# We use DATA(...) to represent the data values being interpolated at a +# specified [m] coordinate, where the arguments are the [m] coordinates. +# +# We use COEFF(...) to represent the molecule coefficient at a specified +# [m] coordinate, where the arguments are the [m] coordinates. +# +# For example, the usual 1-D centered 2nd order 1st derivative molecule +# would be written +# RATIONAL(-1.0,2.0)*DATA(-1) + RATIONA(1.0,2.0)*DATA(1) +# and its coefficients as +# COEFF(-1) = RATIONAL(-1.0,2.0) +# COEFF(1) = RATIONAL(1.0,2.0) +# +> +################################################################################ +################################################################################ +################################################################################ +> +# +# This function computes a polynomial interpolant in any number of dimensions. +# +# Arguments: +# fn = The interpolation function. This should be a procedure in the +# coordinates, having the coefficients as global variables. For +# example, +# proc(x,y) c00 + c10*x + c01*y end proc +# coeff_list = A set of the interpolation coefficients (coefficients in +# the interpolation function), for example [c00, c10, c01]. +# coord_list = A list of the coordinates (independent variables in the +# interpolation function), for example [x,y]. +# posn_list = A list of positions (each a list of numeric values) where the +# interpolant is to use data, for example hypercube([0,0], [1,1]). +# Any positions may be used; if they're redundant (as in the +# example) the least-squares interpolant is computed. +# +# Results: +# This function returns the interpolating polynomial, in the form of +# an algebraic expression in the coordinates and the data values. +# +> polynomial_interpolant := +> proc( +> fn::procedure, coeff_list::list(name), +> coord_list::list(name), posn_list::list(list(numeric)) +> ) +> local posn, data_eqns, coeff_eqns; +> +# coefficients of interpolating polynomial +> data_eqns := { seq( fn(op(posn))='DATA'(op(posn)) , posn=posn_list ) }; +> coeff_eqns := linalg[leastsqrs](data_eqns, {op(coeff_list)}); +> if (has(coeff_eqns, '_t')) +> then error "interpolation coefficients aren't uniquely determined!"; +> end if; +> +# interpolant as a polynomial in the coordinates +> return subs(coeff_eqns, eval(fn))(op(coord_list)); +> end proc; +polynomial_interpolant := proc(fn::procedure, coeff_list::list(name), +coord_list::list(name), posn_list::list(list(numeric))) +local posn, data_eqns, coeff_eqns; + data_eqns := {seq(fn(op(posn)) = 'DATA'(op(posn)), posn = posn_list)}; + coeff_eqns := linalg[leastsqrs](data_eqns, {op(coeff_list)}); + if has(coeff_eqns, '_t') then + error "interpolation coefficients aren't uniquely determined!" + end if; + return subs(coeff_eqns, eval(fn))(op(coord_list)) +end proc + +> +################################################################################ +> +# +# This function takes as input an interpolating polynomial, expresses +# it as a linear combination of the data values, and returns the coefficeints +# of that form. +# +# Arguments: +# interpolant = The interpolating polynomial (an algebraic expression +# in the coordinates and the data values). +# posn_list = The same list of positions as was used to compute the +# interpolating polynomial. +# +# Results: +# This function returns the coefficients, as a list of equations of the +# form COEFF(...) = value , where each value is a polynomial in the +# coordinates. The order of the list matches that of posn_list. +# +> coeff_as_lc_of_data := +> proc( +> interpolant::algebraic, +> posn_list::list(list(numeric)) +> ) +> local data_list, interpolant_as_lc_of_data; +> +# interpolant as a linear combination of the data values +> data_list := [ seq( 'DATA'(op(posn)) , posn=posn_list ) ]; +> interpolant_as_lc_of_data := collect(interpolant, data_list); +> +# coefficients of the data values in the linear combination +> return map( +> proc(posn::list(numeric)) +> coeff(interpolant_as_lc_of_data, DATA(op(posn))); +> 'COEFF'(op(posn)) = %; +> end proc +> , +> posn_list +> ); +> end proc; +coeff_as_lc_of_data := proc( +interpolant::algebraic, posn_list::list(list(numeric))) +local data_list, interpolant_as_lc_of_data; + data_list := [seq('DATA'(op(posn)), posn = posn_list)]; + interpolant_as_lc_of_data := collect(interpolant, data_list); + return map(proc(posn::list(numeric)) + coeff(interpolant_as_lc_of_data, DATA(op(posn))); + 'COEFF'(op(posn)) = % + end proc, posn_list) +end proc + +> +################################################################################ +################################################################################ +################################################################################ +> +# +# This function prints C expressions for the coefficients of an +# interpolating polynomial. (The polynomial is expressed as linear +# combinations of the data values with coefficients which are +# RATIONAL(p,q) calls.) +# +# Arguments: +# coeff_list = A list of the coefficients, as returned from +# coeff_as_lc_of_data() . +# coeff_name_prefix = A prefix string for the coefficient names. +# temp_name_type = The C type to be used for Maple-introduced temporary +# names, eg. "double". +# file_name = The file name to write the coefficients to. This is +# truncated before writing. +# +> print_coeff__lc_of_data := +> proc( coeff_list::list(specfunc(numeric,COEFF) = algebraic), +> coeff_name_prefix::string, +> temp_name_type::string, +> file_name::string ) +> global `codegen/C/function/informed`; +> local coeff_list2, cmpt_list, temp_name_list; +> +# convert LHS of each equation from a COEFF() call (eg COEFF(-1,+1)) +# to a Maple/C variable name (eg coeff_I_m1_p1) +> coeff_list2 := map( +> proc(coeff_eqn::specfunc(numeric,COEFF) = algebraic) +> local posn; +> posn := [op(lhs(coeff_eqn))]; +> coeff_name(posn,coeff_name_prefix); +> convert(%, name); # codegen[C] wants LHS +> # to be an actual Maple *name* +> % = fix_rationals(rhs(coeff_eqn)); +> end proc +> , +> coeff_list +> ); +> +# +# generate the C code +# +> +# tell codegen[C] not to warn about unknown RATIONAL() and DATA() "fn calls" +# via undocumented :( global table +> `codegen/C/function/informed`['RATIONAL'] := true; +> `codegen/C/function/informed`['DATA'] := true; +> +> ftruncate(file_name); +> +# optimized computation sequence for all the coefficients +# (may use local variables t0,t1,t2,...) +> cmpt_list := [codegen[optimize](coeff_list2, tryhard)]; +> +# list of the t0,t1,t2,... local variables +> temp_name_list := nonmatching_names(map(lhs,cmpt_list), coeff_name_prefix); +> +# declare the t0,t1,t2,... local variables (if there are any) +> if (nops(temp_name_list) > 0) +> then print_name_list_dcl(%, temp_name_type, file_name); +> fi; +> +# now print the optimized computation sequence +> codegen[C](cmpt_list, filename=file_name); +> +> fclose(file_name); +> +> NULL; +> end proc; +print_coeff__lc_of_data := proc( +coeff_list::list(specfunc(numeric, COEFF) = algebraic), +coeff_name_prefix::string, temp_name_type::string, file_name::string) +local coeff_list2, cmpt_list, temp_name_list; +global `codegen/C/function/informed`; + coeff_list2 := map(proc( + coeff_eqn::(specfunc(numeric, COEFF) = algebraic)) + local posn; + posn := [op(lhs(coeff_eqn))]; + coeff_name(posn, coeff_name_prefix); + convert(%, name); + % = fix_rationals(rhs(coeff_eqn)) + end proc, coeff_list); + `codegen/C/function/informed`['RATIONAL'] := true; + `codegen/C/function/informed`['DATA'] := true; + ftruncate(file_name); + cmpt_list := [codegen[optimize](coeff_list2, tryhard)]; + temp_name_list := + nonmatching_names(map(lhs, cmpt_list), coeff_name_prefix); + if 0 < nops(temp_name_list) then + print_name_list_dcl(%, temp_name_type, file_name) + end if; + codegen[C](cmpt_list, filename = file_name); + fclose(file_name); + NULL +end proc + +> +################################################################################ +> +# +# This function prints a sequence of C expression to assign the data-value +# variables, eg +# data_m1_p1 = DATA(-1,1); +# +# Arguments: +# posn_list = The same list of positions as was used to compute the +# interpolating polynomial. +# data_var_name_prefix = A prefix string for the data variable names. +# file_name = The file name to write the coefficients to. This is +# truncated before writing. +# +> print_data_var_assign := +> proc( +> posn_list::list(list(numeric)), +> data_var_name_prefix::string, +> file_name::string +> ) +> +> ftruncate(file_name); +> map( +> proc(posn::list(numeric)) +> fprintf(file_name, +> "%s = %a;\n", +> data_var_name(posn,data_var_name_prefix), +> DATA(op(posn))); +> end proc +> , +> posn_list +> ); +> fclose(file_name); +> +> NULL; +> end proc; +print_data_var_assign := proc(posn_list::list(list(numeric)), +data_var_name_prefix::string, file_name::string) + ftruncate(file_name); + map(proc(posn::list(numeric)) + fprintf(file_name, "%s = %a;\n", + data_var_name(posn, data_var_name_prefix), DATA(op(posn))) + end proc, posn_list); + fclose(file_name); + NULL +end proc + +> +################################################################################ +> +# +# This function prints a sequence of C expression to store the interpolation +# coefficients in COEFF(...) expressions, eg +# COEFF(1,-1) = factor * coeff_dx_p1_m1; +# +# Arguments: +# posn_list = The same list of positions as was used to compute the +# interpolating polynomial. +# RHS_factor_name = If this string is non-empty, then the coefficient is +# multiplied by this factor before being stored, eg +# setting this to "factor" would give the example above. +# If this string is empty (""), the multiplication is +# omitted, eg +# COEFF(1,-1) = coeff_dx_p1_m1; +# coeff_name_prefix = A prefix string for the coefficient names. +# file_name = The file name to write the coefficients to. This is +# truncated before writing. +# +> print_interp_coeff_var_store := +> proc( +> posn_list::list(list(numeric)), +> RHS_factor_name::string, +> coeff_name_prefix::string, +> file_name::string +> ) +> +> ftruncate(file_name); +> map( +> proc(posn::list(numeric)) +> if (length(RHS_factor_name) > 0) +> then fprintf(file_name, +> "%a = %s * %s;\n", +> 'COEFF'(op(posn)), +> RHS_factor_name, +> coeff_name(posn,coeff_name_prefix)); +> else fprintf(file_name, +> "%a = %s;\n", +> 'COEFF'(op(posn)), +> coeff_name(posn,coeff_name_prefix)); +> end if; +> end proc +> , +> posn_list +> ); +> fclose(file_name); +> +> NULL; +> end proc; +print_interp_coeff_var_store := proc(posn_list::list(list(numeric)), +RHS_factor_name::string, coeff_name_prefix::string, file_name::string) + ftruncate(file_name); + map(proc(posn::list(numeric)) + if 0 < length(RHS_factor_name) then fprintf(file_name, + "%a = %s * %s;\n", 'COEFF'(op(posn)), RHS_factor_name, + coeff_name(posn, coeff_name_prefix)) + else fprintf(file_name, "%a = %s;\n", 'COEFF'(op(posn)), + coeff_name(posn, coeff_name_prefix)) + end if + end proc, posn_list); + fclose(file_name); + NULL +end proc + +> +################################################################################ +> +# +# This function prints a C expression to compute the interpolant, +# using the coefficients computed by print_coeff__lc_of_data() +# (i.e. expressing the interpolant as a linear combination of the +# data values). +# +# Arguments: +# posn_list = The same list of positions as was used to compute the +# interpolating polynomial. +# result_var_name = The (string) name of the variable to which the +# result is to be assigned. +# coeff_name_prefix = A prefix string for the coefficient names. +# data_var_name_prefix = A prefix string for the data variable names. +# file_name = The file name to write the coefficients to. This is +# truncated before writing. +# +> print_interp_cmpt__lc_of_data := +> proc( +> posn_list::list(list(numeric)), +> result_var_name::string, +> coeff_name_prefix::string, +> data_var_name_prefix::string, +> file_name::string +> ) +> +> ftruncate(file_name); +> +> fprintf(file_name, "%s =\n", result_var_name); +> +# list of "coeff*data_var" terms +> map( +> proc(posn::list(numeric)) +> sprintf("%s*%s", +> coeff_name(posn,coeff_name_prefix), +> data_var_name(posn,data_var_name_prefix)); +> end proc +> , +> posn_list +> ); +> +> ListTools[Join](%, "\n\t+ "); +> cat(op(%)); +> fprintf(file_name, "\t%s;\n", %); +> +> fclose(file_name); +> +> NULL; +> end proc; +print_interp_cmpt__lc_of_data := proc(posn_list::list(list(numeric)), +result_var_name::string, coeff_name_prefix::string, +data_var_name_prefix::string, file_name::string) + ftruncate(file_name); + fprintf(file_name, "%s =\n", result_var_name); + map(proc(posn::list(numeric)) + sprintf("%s*%s", coeff_name(posn, coeff_name_prefix), + data_var_name(posn, data_var_name_prefix)) + end proc, posn_list); + ListTools[Join](%, "\n\t+ "); + cat(op(%)); + fprintf(file_name, "\t%s;\n", %); + fclose(file_name); + NULL +end proc + +> +################################################################################ +################################################################################ +################################################################################ +> +# +# This function computes the name of the coefficient of the data at a +# given [m] position, i.e. it encapsulates our naming convention for this. +# +# Arguments: +# posn = (in) The [m] coordinates. +# name_prefix = A prefix string for the coefficient name. +# +# Results: +# The function returns the coefficient, as a Maple string. +# +> coeff_name := +> proc(posn::list(numeric), name_prefix::string) +> cat(name_prefix, sprint_numeric_list(posn)); +> end proc; +coeff_name := proc(posn::list(numeric), name_prefix::string) + cat(name_prefix, sprint_numeric_list(posn)) +end proc + +> +################################################################################ +> +# +# This function computes the name of the variable in which the C code +# will store the input data at a given [m] position, i.e. it encapsulates +# our naming convention for this. +# +# Arguments: +# posn = (in) The [m] coordinates. +# name_prefix = A prefix string for the variable name. +# +# Results: +# The function returns the variable name, as a Maple string. +# +> data_var_name := +> proc(posn::list(numeric), name_prefix::string) +> cat(name_prefix, sprint_numeric_list(posn)); +> end proc; +data_var_name := proc(posn::list(numeric), name_prefix::string) + cat(name_prefix, sprint_numeric_list(posn)) +end proc + +# Maple code to compute lists of point positions in hypercube-shaped molecules +# $Id: $ +> +################################################################################ +> +# +# 1D interpolation points +# +> posn_list_1d_size2 := hypercube_points([ 0], [+1]); + posn_list_1d_size2 := [[0], [1]] + +> posn_list_1d_size3 := hypercube_points([-1], [+1]); + posn_list_1d_size3 := [[-1], [0], [1]] + +> posn_list_1d_size4 := hypercube_points([-1], [+2]); + posn_list_1d_size4 := [[-1], [0], [1], [2]] + +> posn_list_1d_size5 := hypercube_points([-2], [+2]); + posn_list_1d_size5 := [[-2], [-1], [0], [1], [2]] + +> posn_list_1d_size6 := hypercube_points([-2], [+3]); + posn_list_1d_size6 := [[-2], [-1], [0], [1], [2], [3]] + +> posn_list_1d_size7 := hypercube_points([-3], [+3]); + posn_list_1d_size7 := [[-3], [-2], [-1], [0], [1], [2], [3]] + +> +################################################################################ +> +# +# 2D interpolation points (Fortran ordering) +# +> posn_list_2d_size2 := map(ListTools[Reverse], +> hypercube_points([ 0, 0], [+1,+1])); + posn_list_2d_size2 := [[0, 0], [1, 0], [0, 1], [1, 1]] + +> posn_list_2d_size3 := map(ListTools[Reverse], +> hypercube_points([-1,-1], [+1,+1])); +posn_list_2d_size3 := [[-1, -1], [0, -1], [1, -1], [-1, 0], [0, 0], [1, 0], + + [-1, 1], [0, 1], [1, 1]] + +> posn_list_2d_size4 := map(ListTools[Reverse], +> hypercube_points([-1,-1], [+2,+2])); +posn_list_2d_size4 := [[-1, -1], [0, -1], [1, -1], [2, -1], [-1, 0], [0, 0], + + [1, 0], [2, 0], [-1, 1], [0, 1], [1, 1], [2, 1], [-1, 2], [0, 2], [1, 2], + + [2, 2]] + +> posn_list_2d_size5 := map(ListTools[Reverse], +> hypercube_points([-2,-2], [+2,+2])); +posn_list_2d_size5 := [[-2, -2], [-1, -2], [0, -2], [1, -2], [2, -2], [-2, -1], + + [-1, -1], [0, -1], [1, -1], [2, -1], [-2, 0], [-1, 0], [0, 0], [1, 0], + + [2, 0], [-2, 1], [-1, 1], [0, 1], [1, 1], [2, 1], [-2, 2], [-1, 2], [0, 2], + + [1, 2], [2, 2]] + +> +################################################################################ +> +# +# 3D interpolation points (Fortran ordering) +# +> posn_list_3d_size2 := map(ListTools[Reverse], +> hypercube_points([ 0, 0, 0], [+1,+1,+1])); +posn_list_3d_size2 := [[0, 0, 0], [1, 0, 0], [0, 1, 0], [1, 1, 0], [0, 0, 1], + + [1, 0, 1], [0, 1, 1], [1, 1, 1]] + +> posn_list_3d_size3 := map(ListTools[Reverse], +> hypercube_points([-1,-1,-1], [+1,+1,+1])); +posn_list_3d_size3 := [[-1, -1, -1], [0, -1, -1], [1, -1, -1], [-1, 0, -1], + + [0, 0, -1], [1, 0, -1], [-1, 1, -1], [0, 1, -1], [1, 1, -1], [-1, -1, 0], + + [0, -1, 0], [1, -1, 0], [-1, 0, 0], [0, 0, 0], [1, 0, 0], [-1, 1, 0], + + [0, 1, 0], [1, 1, 0], [-1, -1, 1], [0, -1, 1], [1, -1, 1], [-1, 0, 1], + + [0, 0, 1], [1, 0, 1], [-1, 1, 1], [0, 1, 1], [1, 1, 1]] + +> posn_list_3d_size4 := map(ListTools[Reverse], +> hypercube_points([-1,-1,-1], [+2,+2,+2])); +posn_list_3d_size4 := [[-1, -1, -1], [0, -1, -1], [1, -1, -1], [2, -1, -1], + + [-1, 0, -1], [0, 0, -1], [1, 0, -1], [2, 0, -1], [-1, 1, -1], [0, 1, -1], + + [1, 1, -1], [2, 1, -1], [-1, 2, -1], [0, 2, -1], [1, 2, -1], [2, 2, -1], + + [-1, -1, 0], [0, -1, 0], [1, -1, 0], [2, -1, 0], [-1, 0, 0], [0, 0, 0], + + [1, 0, 0], [2, 0, 0], [-1, 1, 0], [0, 1, 0], [1, 1, 0], [2, 1, 0], + + [-1, 2, 0], [0, 2, 0], [1, 2, 0], [2, 2, 0], [-1, -1, 1], [0, -1, 1], + + [1, -1, 1], [2, -1, 1], [-1, 0, 1], [0, 0, 1], [1, 0, 1], [2, 0, 1], + + [-1, 1, 1], [0, 1, 1], [1, 1, 1], [2, 1, 1], [-1, 2, 1], [0, 2, 1], + + [1, 2, 1], [2, 2, 1], [-1, -1, 2], [0, -1, 2], [1, -1, 2], [2, -1, 2], + + [-1, 0, 2], [0, 0, 2], [1, 0, 2], [2, 0, 2], [-1, 1, 2], [0, 1, 2], + + [1, 1, 2], [2, 1, 2], [-1, 2, 2], [0, 2, 2], [1, 2, 2], [2, 2, 2]] + +> posn_list_3d_size5 := map(ListTools[Reverse], +> hypercube_points([-2,-2,-2], [+2,+2,+2])); +posn_list_3d_size5 := [[-2, -2, -2], [-1, -2, -2], [0, -2, -2], [1, -2, -2], + + [2, -2, -2], [-2, -1, -2], [-1, -1, -2], [0, -1, -2], [1, -1, -2], + + [2, -1, -2], [-2, 0, -2], [-1, 0, -2], [0, 0, -2], [1, 0, -2], [2, 0, -2], + + [-2, 1, -2], [-1, 1, -2], [0, 1, -2], [1, 1, -2], [2, 1, -2], [-2, 2, -2], + + [-1, 2, -2], [0, 2, -2], [1, 2, -2], [2, 2, -2], [-2, -2, -1], [-1, -2, -1], + + [0, -2, -1], [1, -2, -1], [2, -2, -1], [-2, -1, -1], [-1, -1, -1], + + [0, -1, -1], [1, -1, -1], [2, -1, -1], [-2, 0, -1], [-1, 0, -1], [0, 0, -1], + + [1, 0, -1], [2, 0, -1], [-2, 1, -1], [-1, 1, -1], [0, 1, -1], [1, 1, -1], + + [2, 1, -1], [-2, 2, -1], [-1, 2, -1], [0, 2, -1], [1, 2, -1], [2, 2, -1], + + [-2, -2, 0], [-1, -2, 0], [0, -2, 0], [1, -2, 0], [2, -2, 0], [-2, -1, 0], + + [-1, -1, 0], [0, -1, 0], [1, -1, 0], [2, -1, 0], [-2, 0, 0], [-1, 0, 0], + + [0, 0, 0], [1, 0, 0], [2, 0, 0], [-2, 1, 0], [-1, 1, 0], [0, 1, 0], + + [1, 1, 0], [2, 1, 0], [-2, 2, 0], [-1, 2, 0], [0, 2, 0], [1, 2, 0], + + [2, 2, 0], [-2, -2, 1], [-1, -2, 1], [0, -2, 1], [1, -2, 1], [2, -2, 1], + + [-2, -1, 1], [-1, -1, 1], [0, -1, 1], [1, -1, 1], [2, -1, 1], [-2, 0, 1], + + [-1, 0, 1], [0, 0, 1], [1, 0, 1], [2, 0, 1], [-2, 1, 1], [-1, 1, 1], + + [0, 1, 1], [1, 1, 1], [2, 1, 1], [-2, 2, 1], [-1, 2, 1], [0, 2, 1], + + [1, 2, 1], [2, 2, 1], [-2, -2, 2], [-1, -2, 2], [0, -2, 2], [1, -2, 2], + + [2, -2, 2], [-2, -1, 2], [-1, -1, 2], [0, -1, 2], [1, -1, 2], [2, -1, 2], + + [-2, 0, 2], [-1, 0, 2], [0, 0, 2], [1, 0, 2], [2, 0, 2], [-2, 1, 2], + + [-1, 1, 2], [0, 1, 2], [1, 1, 2], [2, 1, 2], [-2, 2, 2], [-1, 2, 2], + + [0, 2, 2], [1, 2, 2], [2, 2, 2]] + +# Maple code to compute common coefficients for all 3d interpolation schemes +# $Id: 3d.maple,v 1.3 2002/05/14 15:54:01 jthorn Exp $ +> +################################################################################ +> +# +# generic stuff for 3d, cube, size=2 +# +> +> data_var_list_3d_size2 := map(data_var_name, posn_list_3d_size2, "data_"); +data_var_list_3d_size2 := ["data_0_0_0", "data_p1_0_0", "data_0_p1_0", + + "data_p1_p1_0", "data_0_0_p1", "data_p1_0_p1", "data_0_p1_p1", + + "data_p1_p1_p1"] + +> +> print_name_list_dcl(data_var_list_3d_size2, "fp", +> "3d.cube.size2/data-var.dcl.c"); +> print_data_var_assign(posn_list_3d_size2, "data_", +> "3d.cube.size2/data-var.assign.c"); +> +> print_interp_coeff_var_store(posn_list_3d_size2, "", "coeff_I_", +> "3d.cube.size2/coeff-I.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size2, "factor", "coeff_dx_", +> "3d.cube.size2/coeff-dx.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size2, "factor", "coeff_dy_", +> "3d.cube.size2/coeff-dy.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size2, "factor", "coeff_dz_", +> "3d.cube.size2/coeff-dz.store.c"); +> +> print_name_list_dcl(map(coeff_name, posn_list_3d_size2, "coeff_I_"), "fp", +> "3d.cube.size2/coeff-I.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size2, "coeff_dx_"), "fp", +> "3d.cube.size2/coeff-dx.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size2, "coeff_dy_"), "fp", +> "3d.cube.size2/coeff-dy.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size2, "coeff_dz_"), "fp", +> "3d.cube.size2/coeff-dz.dcl.c"); +> +> print_interp_cmpt__lc_of_data(posn_list_3d_size2, +> "result", "coeff_I_", "data_", +> "3d.cube.size2/interp-I.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size2, +> "result", "coeff_dx_", "data_", +> "3d.cube.size2/interp-dx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size2, +> "result", "coeff_dy_", "data_", +> "3d.cube.size2/interp-dy.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size2, +> "result", "coeff_dz_", "data_", +> "3d.cube.size2/interp-dz.compute.c"); +> +######################################## +> +# +# generic stuff for 3d, cube, size=3 +# +> +> data_var_list_3d_size3 := map(data_var_name, posn_list_3d_size3, "data_"); +data_var_list_3d_size3 := ["data_m1_m1_m1", "data_0_m1_m1", "data_p1_m1_m1", + + "data_m1_0_m1", "data_0_0_m1", "data_p1_0_m1", "data_m1_p1_m1", + + "data_0_p1_m1", "data_p1_p1_m1", "data_m1_m1_0", "data_0_m1_0", + + "data_p1_m1_0", "data_m1_0_0", "data_0_0_0", "data_p1_0_0", "data_m1_p1_0", + + "data_0_p1_0", "data_p1_p1_0", "data_m1_m1_p1", "data_0_m1_p1", + + "data_p1_m1_p1", "data_m1_0_p1", "data_0_0_p1", "data_p1_0_p1", + + "data_m1_p1_p1", "data_0_p1_p1", "data_p1_p1_p1"] + +> +> print_name_list_dcl(data_var_list_3d_size3, "fp", +> "3d.cube.size3/data-var.dcl.c"); +> print_data_var_assign(posn_list_3d_size3, "data_", +> "3d.cube.size3/data-var.assign.c"); +> +> print_interp_coeff_var_store(posn_list_3d_size3, "", "coeff_I_", +> "3d.cube.size3/coeff-I.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size3, "factor", "coeff_dx_", +> "3d.cube.size3/coeff-dx.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size3, "factor", "coeff_dy_", +> "3d.cube.size3/coeff-dy.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size3, "factor", "coeff_dz_", +> "3d.cube.size3/coeff-dz.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size3, "factor", "coeff_dxx_", +> "3d.cube.size3/coeff-dxx.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size3, "factor", "coeff_dxy_", +> "3d.cube.size3/coeff-dxy.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size3, "factor", "coeff_dxz_", +> "3d.cube.size3/coeff-dxz.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size3, "factor", "coeff_dyy_", +> "3d.cube.size3/coeff-dyy.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size3, "factor", "coeff_dyz_", +> "3d.cube.size3/coeff-dyz.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size3, "factor", "coeff_dzz_", +> "3d.cube.size3/coeff-dzz.store.c"); +> +> print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_I_"), "fp", +> "3d.cube.size3/coeff-I.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_dx_"), "fp", +> "3d.cube.size3/coeff-dx.dcl.c"); +bytes used=1000120, alloc=917336, time=0.18 +> print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_dy_"), "fp", +> "3d.cube.size3/coeff-dy.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_dz_"), "fp", +> "3d.cube.size3/coeff-dz.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_dxx_"), "fp", +> "3d.cube.size3/coeff-dxx.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_dxy_"), "fp", +> "3d.cube.size3/coeff-dxy.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_dxz_"), "fp", +> "3d.cube.size3/coeff-dxz.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_dyy_"), "fp", +> "3d.cube.size3/coeff-dyy.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_dyz_"), "fp", +> "3d.cube.size3/coeff-dyz.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_dzz_"), "fp", +> "3d.cube.size3/coeff-dzz.dcl.c"); +> +> print_interp_cmpt__lc_of_data(posn_list_3d_size3, +> "result", "coeff_I_", "data_", +> "3d.cube.size3/interp-I.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size3, +> "result", "coeff_dx_", "data_", +> "3d.cube.size3/interp-dx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size3, +> "result", "coeff_dy_", "data_", +> "3d.cube.size3/interp-dy.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size3, +> "result", "coeff_dz_", "data_", +> "3d.cube.size3/interp-dz.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size3, +> "result", "coeff_dxx_", "data_", +> "3d.cube.size3/interp-dxx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size3, +> "result", "coeff_dxy_", "data_", +> "3d.cube.size3/interp-dxy.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size3, +> "result", "coeff_dxz_", "data_", +> "3d.cube.size3/interp-dxz.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size3, +> "result", "coeff_dyy_", "data_", +> "3d.cube.size3/interp-dyy.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size3, +> "result", "coeff_dyz_", "data_", +> "3d.cube.size3/interp-dyz.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size3, +> "result", "coeff_dzz_", "data_", +> "3d.cube.size3/interp-dzz.compute.c"); +> +######################################## +> +# +# generic stuff for 3d, cube, size=4 +# +> +> data_var_list_3d_size4 := map(data_var_name, posn_list_3d_size4, "data_"); +data_var_list_3d_size4 := ["data_m1_m1_m1", "data_0_m1_m1", "data_p1_m1_m1", + + "data_p2_m1_m1", "data_m1_0_m1", "data_0_0_m1", "data_p1_0_m1", + + "data_p2_0_m1", "data_m1_p1_m1", "data_0_p1_m1", "data_p1_p1_m1", + + "data_p2_p1_m1", "data_m1_p2_m1", "data_0_p2_m1", "data_p1_p2_m1", + + "data_p2_p2_m1", "data_m1_m1_0", "data_0_m1_0", "data_p1_m1_0", + + "data_p2_m1_0", "data_m1_0_0", "data_0_0_0", "data_p1_0_0", "data_p2_0_0", + + "data_m1_p1_0", "data_0_p1_0", "data_p1_p1_0", "data_p2_p1_0", + + "data_m1_p2_0", "data_0_p2_0", "data_p1_p2_0", "data_p2_p2_0", + + "data_m1_m1_p1", "data_0_m1_p1", "data_p1_m1_p1", "data_p2_m1_p1", + + "data_m1_0_p1", "data_0_0_p1", "data_p1_0_p1", "data_p2_0_p1", + + "data_m1_p1_p1", "data_0_p1_p1", "data_p1_p1_p1", "data_p2_p1_p1", + + "data_m1_p2_p1", "data_0_p2_p1", "data_p1_p2_p1", "data_p2_p2_p1", + + "data_m1_m1_p2", "data_0_m1_p2", "data_p1_m1_p2", "data_p2_m1_p2", + + "data_m1_0_p2", "data_0_0_p2", "data_p1_0_p2", "data_p2_0_p2", + + "data_m1_p1_p2", "data_0_p1_p2", "data_p1_p1_p2", "data_p2_p1_p2", + + "data_m1_p2_p2", "data_0_p2_p2", "data_p1_p2_p2", "data_p2_p2_p2"] + +> +> print_name_list_dcl(data_var_list_3d_size4, "fp", +> "3d.cube.size4/data-var.dcl.c"); +> print_data_var_assign(posn_list_3d_size4, "data_", +> "3d.cube.size4/data-var.assign.c"); +bytes used=2000380, alloc=1179432, time=0.28 +> +> print_interp_coeff_var_store(posn_list_3d_size4, "", "coeff_I_", +> "3d.cube.size4/coeff-I.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size4, "factor", "coeff_dx_", +> "3d.cube.size4/coeff-dx.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size4, "factor", "coeff_dy_", +> "3d.cube.size4/coeff-dy.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size4, "factor", "coeff_dz_", +> "3d.cube.size4/coeff-dz.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size4, "factor", "coeff_dxx_", +> "3d.cube.size4/coeff-dxx.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size4, "factor", "coeff_dxy_", +> "3d.cube.size4/coeff-dxy.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size4, "factor", "coeff_dxz_", +> "3d.cube.size4/coeff-dxz.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size4, "factor", "coeff_dyy_", +> "3d.cube.size4/coeff-dyy.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size4, "factor", "coeff_dyz_", +> "3d.cube.size4/coeff-dyz.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size4, "factor", "coeff_dzz_", +> "3d.cube.size4/coeff-dzz.store.c"); +> +> print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_I_"), "fp", +> "3d.cube.size4/coeff-I.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_dx_"), "fp", +> "3d.cube.size4/coeff-dx.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_dy_"), "fp", +> "3d.cube.size4/coeff-dy.dcl.c"); +bytes used=3000632, alloc=1244956, time=0.40 +> print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_dz_"), "fp", +> "3d.cube.size4/coeff-dz.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_dxx_"), "fp", +> "3d.cube.size4/coeff-dxx.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_dxy_"), "fp", +> "3d.cube.size4/coeff-dxy.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_dxz_"), "fp", +> "3d.cube.size4/coeff-dxz.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_dyy_"), "fp", +> "3d.cube.size4/coeff-dyy.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_dyz_"), "fp", +> "3d.cube.size4/coeff-dyz.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_dzz_"), "fp", +> "3d.cube.size4/coeff-dzz.dcl.c"); +> +> print_interp_cmpt__lc_of_data(posn_list_3d_size4, +> "result", "coeff_I_", "data_", +> "3d.cube.size4/interp-I.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size4, +> "result", "coeff_dx_", "data_", +> "3d.cube.size4/interp-dx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size4, +> "result", "coeff_dy_", "data_", +> "3d.cube.size4/interp-dy.compute.c"); +bytes used=4000828, alloc=1310480, time=0.49 +> print_interp_cmpt__lc_of_data(posn_list_3d_size4, +> "result", "coeff_dz_", "data_", +> "3d.cube.size4/interp-dz.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size4, +> "result", "coeff_dxx_", "data_", +> "3d.cube.size4/interp-dxx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size4, +> "result", "coeff_dxy_", "data_", +> "3d.cube.size4/interp-dxy.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size4, +> "result", "coeff_dxz_", "data_", +> "3d.cube.size4/interp-dxz.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size4, +> "result", "coeff_dyy_", "data_", +> "3d.cube.size4/interp-dyy.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size4, +> "result", "coeff_dyz_", "data_", +> "3d.cube.size4/interp-dyz.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size4, +> "result", "coeff_dzz_", "data_", +> "3d.cube.size4/interp-dzz.compute.c"); +> +######################################## +> +# +# generic stuff for 3d, cube, size=5 +# +> +> data_var_list_3d_size5 := map(data_var_name, posn_list_3d_size5, "data_"); +bytes used=5001008, alloc=1310480, time=0.63 +data_var_list_3d_size5 := ["data_m2_m2_m2", "data_m1_m2_m2", "data_0_m2_m2", + + "data_p1_m2_m2", "data_p2_m2_m2", "data_m2_m1_m2", "data_m1_m1_m2", + + "data_0_m1_m2", "data_p1_m1_m2", "data_p2_m1_m2", "data_m2_0_m2", + + "data_m1_0_m2", "data_0_0_m2", "data_p1_0_m2", "data_p2_0_m2", + + "data_m2_p1_m2", "data_m1_p1_m2", "data_0_p1_m2", "data_p1_p1_m2", + + "data_p2_p1_m2", "data_m2_p2_m2", "data_m1_p2_m2", "data_0_p2_m2", + + "data_p1_p2_m2", "data_p2_p2_m2", "data_m2_m2_m1", "data_m1_m2_m1", + + "data_0_m2_m1", "data_p1_m2_m1", "data_p2_m2_m1", "data_m2_m1_m1", + + "data_m1_m1_m1", "data_0_m1_m1", "data_p1_m1_m1", "data_p2_m1_m1", + + "data_m2_0_m1", "data_m1_0_m1", "data_0_0_m1", "data_p1_0_m1", + + "data_p2_0_m1", "data_m2_p1_m1", "data_m1_p1_m1", "data_0_p1_m1", + + "data_p1_p1_m1", "data_p2_p1_m1", "data_m2_p2_m1", "data_m1_p2_m1", + + "data_0_p2_m1", "data_p1_p2_m1", "data_p2_p2_m1", "data_m2_m2_0", + + "data_m1_m2_0", "data_0_m2_0", "data_p1_m2_0", "data_p2_m2_0", + + "data_m2_m1_0", "data_m1_m1_0", "data_0_m1_0", "data_p1_m1_0", + + "data_p2_m1_0", "data_m2_0_0", "data_m1_0_0", "data_0_0_0", "data_p1_0_0", + + "data_p2_0_0", "data_m2_p1_0", "data_m1_p1_0", "data_0_p1_0", + + "data_p1_p1_0", "data_p2_p1_0", "data_m2_p2_0", "data_m1_p2_0", + + "data_0_p2_0", "data_p1_p2_0", "data_p2_p2_0", "data_m2_m2_p1", + + "data_m1_m2_p1", "data_0_m2_p1", "data_p1_m2_p1", "data_p2_m2_p1", + + "data_m2_m1_p1", "data_m1_m1_p1", "data_0_m1_p1", "data_p1_m1_p1", + + "data_p2_m1_p1", "data_m2_0_p1", "data_m1_0_p1", "data_0_0_p1", + + "data_p1_0_p1", "data_p2_0_p1", "data_m2_p1_p1", "data_m1_p1_p1", + + "data_0_p1_p1", "data_p1_p1_p1", "data_p2_p1_p1", "data_m2_p2_p1", + + "data_m1_p2_p1", "data_0_p2_p1", "data_p1_p2_p1", "data_p2_p2_p1", + + "data_m2_m2_p2", "data_m1_m2_p2", "data_0_m2_p2", "data_p1_m2_p2", + + "data_p2_m2_p2", "data_m2_m1_p2", "data_m1_m1_p2", "data_0_m1_p2", + + "data_p1_m1_p2", "data_p2_m1_p2", "data_m2_0_p2", "data_m1_0_p2", + + "data_0_0_p2", "data_p1_0_p2", "data_p2_0_p2", "data_m2_p1_p2", + + "data_m1_p1_p2", "data_0_p1_p2", "data_p1_p1_p2", "data_p2_p1_p2", + + "data_m2_p2_p2", "data_m1_p2_p2", "data_0_p2_p2", "data_p1_p2_p2", + + "data_p2_p2_p2"] + +> +> print_name_list_dcl(data_var_list_3d_size5, "fp", +> "3d.cube.size5/data-var.dcl.c"); +> print_data_var_assign(posn_list_3d_size5, "data_", +> "3d.cube.size5/data-var.assign.c"); +> +> print_interp_coeff_var_store(posn_list_3d_size5, "", "coeff_I_", +> "3d.cube.size5/coeff-I.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size5, "factor", "coeff_dx_", +> "3d.cube.size5/coeff-dx.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size5, "factor", "coeff_dy_", +> "3d.cube.size5/coeff-dy.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size5, "factor", "coeff_dz_", +> "3d.cube.size5/coeff-dz.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size5, "factor", "coeff_dxx_", +> "3d.cube.size5/coeff-dxx.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size5, "factor", "coeff_dxy_", +> "3d.cube.size5/coeff-dxy.store.c"); +bytes used=6001252, alloc=1310480, time=0.77 +> print_interp_coeff_var_store(posn_list_3d_size5, "factor", "coeff_dxz_", +> "3d.cube.size5/coeff-dxz.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size5, "factor", "coeff_dyy_", +> "3d.cube.size5/coeff-dyy.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size5, "factor", "coeff_dyz_", +> "3d.cube.size5/coeff-dyz.store.c"); +> print_interp_coeff_var_store(posn_list_3d_size5, "factor", "coeff_dzz_", +> "3d.cube.size5/coeff-dzz.store.c"); +> +> print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_I_"), "fp", +> "3d.cube.size5/coeff-I.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_dx_"), "fp", +> "3d.cube.size5/coeff-dx.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_dy_"), "fp", +> "3d.cube.size5/coeff-dy.dcl.c"); +bytes used=7001440, alloc=1376004, time=0.89 +> print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_dz_"), "fp", +> "3d.cube.size5/coeff-dz.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_dxx_"), "fp", +> "3d.cube.size5/coeff-dxx.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_dxy_"), "fp", +> "3d.cube.size5/coeff-dxy.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_dxz_"), "fp", +> "3d.cube.size5/coeff-dxz.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_dyy_"), "fp", +> "3d.cube.size5/coeff-dyy.dcl.c"); +> print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_dyz_"), "fp", +> "3d.cube.size5/coeff-dyz.dcl.c"); +bytes used=8001776, alloc=1441528, time=0.98 +> print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_dzz_"), "fp", +> "3d.cube.size5/coeff-dzz.dcl.c"); +> +> print_interp_cmpt__lc_of_data(posn_list_3d_size5, +> "result", "coeff_I_", "data_", +> "3d.cube.size5/interp-I.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size5, +> "result", "coeff_dx_", "data_", +> "3d.cube.size5/interp-dx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size5, +> "result", "coeff_dy_", "data_", +> "3d.cube.size5/interp-dy.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size5, +> "result", "coeff_dz_", "data_", +> "3d.cube.size5/interp-dz.compute.c"); +bytes used=9001948, alloc=1441528, time=1.09 +> print_interp_cmpt__lc_of_data(posn_list_3d_size5, +> "result", "coeff_dxx_", "data_", +> "3d.cube.size5/interp-dxx.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size5, +> "result", "coeff_dxy_", "data_", +> "3d.cube.size5/interp-dxy.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size5, +> "result", "coeff_dxz_", "data_", +> "3d.cube.size5/interp-dxz.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size5, +> "result", "coeff_dyy_", "data_", +> "3d.cube.size5/interp-dyy.compute.c"); +bytes used=10002200, alloc=1441528, time=1.21 +> print_interp_cmpt__lc_of_data(posn_list_3d_size5, +> "result", "coeff_dyz_", "data_", +> "3d.cube.size5/interp-dyz.compute.c"); +> print_interp_cmpt__lc_of_data(posn_list_3d_size5, +> "result", "coeff_dzz_", "data_", +> "3d.cube.size5/interp-dzz.compute.c"); +> +################################################################################ +> quit +bytes used=10722536, alloc=1441528, time=1.29 diff --git a/src/GeneralizedPolynomial-Uniform/common/3d.maple b/src/GeneralizedPolynomial-Uniform/common/3d.maple new file mode 100644 index 0000000..45a913c --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/3d.maple @@ -0,0 +1,306 @@ +# Maple code to compute common coefficients for all 3d interpolation schemes +# $Id$ + +################################################################################ + +# +# generic stuff for 3d, cube, size=2 +# + +data_var_list_3d_size2 := map(data_var_name, posn_list_3d_size2, "data_"); + +print_name_list_dcl(data_var_list_3d_size2, "fp", + "3d.cube.size2/data-var.dcl.c"); +print_data_var_assign(posn_list_3d_size2, "data_", + "3d.cube.size2/data-var.assign.c"); + +print_interp_coeff_var_store(posn_list_3d_size2, "", "coeff_I_", + "3d.cube.size2/coeff-I.store.c"); +print_interp_coeff_var_store(posn_list_3d_size2, "factor", "coeff_dx_", + "3d.cube.size2/coeff-dx.store.c"); +print_interp_coeff_var_store(posn_list_3d_size2, "factor", "coeff_dy_", + "3d.cube.size2/coeff-dy.store.c"); +print_interp_coeff_var_store(posn_list_3d_size2, "factor", "coeff_dz_", + "3d.cube.size2/coeff-dz.store.c"); + +print_name_list_dcl(map(coeff_name, posn_list_3d_size2, "coeff_I_"), "fp", + "3d.cube.size2/coeff-I.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size2, "coeff_dx_"), "fp", + "3d.cube.size2/coeff-dx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size2, "coeff_dy_"), "fp", + "3d.cube.size2/coeff-dy.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size2, "coeff_dz_"), "fp", + "3d.cube.size2/coeff-dz.dcl.c"); + +print_interp_cmpt__lc_of_data(posn_list_3d_size2, + "result", "coeff_I_", "data_", + "3d.cube.size2/interp-I.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size2, + "result", "coeff_dx_", "data_", + "3d.cube.size2/interp-dx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size2, + "result", "coeff_dy_", "data_", + "3d.cube.size2/interp-dy.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size2, + "result", "coeff_dz_", "data_", + "3d.cube.size2/interp-dz.compute.c"); + +######################################## + +# +# generic stuff for 3d, cube, size=3 +# + +data_var_list_3d_size3 := map(data_var_name, posn_list_3d_size3, "data_"); + +print_name_list_dcl(data_var_list_3d_size3, "fp", + "3d.cube.size3/data-var.dcl.c"); +print_data_var_assign(posn_list_3d_size3, "data_", + "3d.cube.size3/data-var.assign.c"); + +print_interp_coeff_var_store(posn_list_3d_size3, "", "coeff_I_", + "3d.cube.size3/coeff-I.store.c"); +print_interp_coeff_var_store(posn_list_3d_size3, "factor", "coeff_dx_", + "3d.cube.size3/coeff-dx.store.c"); +print_interp_coeff_var_store(posn_list_3d_size3, "factor", "coeff_dy_", + "3d.cube.size3/coeff-dy.store.c"); +print_interp_coeff_var_store(posn_list_3d_size3, "factor", "coeff_dz_", + "3d.cube.size3/coeff-dz.store.c"); +print_interp_coeff_var_store(posn_list_3d_size3, "factor", "coeff_dxx_", + "3d.cube.size3/coeff-dxx.store.c"); +print_interp_coeff_var_store(posn_list_3d_size3, "factor", "coeff_dxy_", + "3d.cube.size3/coeff-dxy.store.c"); +print_interp_coeff_var_store(posn_list_3d_size3, "factor", "coeff_dxz_", + "3d.cube.size3/coeff-dxz.store.c"); +print_interp_coeff_var_store(posn_list_3d_size3, "factor", "coeff_dyy_", + "3d.cube.size3/coeff-dyy.store.c"); +print_interp_coeff_var_store(posn_list_3d_size3, "factor", "coeff_dyz_", + "3d.cube.size3/coeff-dyz.store.c"); +print_interp_coeff_var_store(posn_list_3d_size3, "factor", "coeff_dzz_", + "3d.cube.size3/coeff-dzz.store.c"); + +print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_I_"), "fp", + "3d.cube.size3/coeff-I.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_dx_"), "fp", + "3d.cube.size3/coeff-dx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_dy_"), "fp", + "3d.cube.size3/coeff-dy.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_dz_"), "fp", + "3d.cube.size3/coeff-dz.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_dxx_"), "fp", + "3d.cube.size3/coeff-dxx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_dxy_"), "fp", + "3d.cube.size3/coeff-dxy.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_dxz_"), "fp", + "3d.cube.size3/coeff-dxz.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_dyy_"), "fp", + "3d.cube.size3/coeff-dyy.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_dyz_"), "fp", + "3d.cube.size3/coeff-dyz.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size3, "coeff_dzz_"), "fp", + "3d.cube.size3/coeff-dzz.dcl.c"); + +print_interp_cmpt__lc_of_data(posn_list_3d_size3, + "result", "coeff_I_", "data_", + "3d.cube.size3/interp-I.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size3, + "result", "coeff_dx_", "data_", + "3d.cube.size3/interp-dx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size3, + "result", "coeff_dy_", "data_", + "3d.cube.size3/interp-dy.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size3, + "result", "coeff_dz_", "data_", + "3d.cube.size3/interp-dz.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size3, + "result", "coeff_dxx_", "data_", + "3d.cube.size3/interp-dxx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size3, + "result", "coeff_dxy_", "data_", + "3d.cube.size3/interp-dxy.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size3, + "result", "coeff_dxz_", "data_", + "3d.cube.size3/interp-dxz.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size3, + "result", "coeff_dyy_", "data_", + "3d.cube.size3/interp-dyy.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size3, + "result", "coeff_dyz_", "data_", + "3d.cube.size3/interp-dyz.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size3, + "result", "coeff_dzz_", "data_", + "3d.cube.size3/interp-dzz.compute.c"); + +######################################## + +# +# generic stuff for 3d, cube, size=4 +# + +data_var_list_3d_size4 := map(data_var_name, posn_list_3d_size4, "data_"); + +print_name_list_dcl(data_var_list_3d_size4, "fp", + "3d.cube.size4/data-var.dcl.c"); +print_data_var_assign(posn_list_3d_size4, "data_", + "3d.cube.size4/data-var.assign.c"); + +print_interp_coeff_var_store(posn_list_3d_size4, "", "coeff_I_", + "3d.cube.size4/coeff-I.store.c"); +print_interp_coeff_var_store(posn_list_3d_size4, "factor", "coeff_dx_", + "3d.cube.size4/coeff-dx.store.c"); +print_interp_coeff_var_store(posn_list_3d_size4, "factor", "coeff_dy_", + "3d.cube.size4/coeff-dy.store.c"); +print_interp_coeff_var_store(posn_list_3d_size4, "factor", "coeff_dz_", + "3d.cube.size4/coeff-dz.store.c"); +print_interp_coeff_var_store(posn_list_3d_size4, "factor", "coeff_dxx_", + "3d.cube.size4/coeff-dxx.store.c"); +print_interp_coeff_var_store(posn_list_3d_size4, "factor", "coeff_dxy_", + "3d.cube.size4/coeff-dxy.store.c"); +print_interp_coeff_var_store(posn_list_3d_size4, "factor", "coeff_dxz_", + "3d.cube.size4/coeff-dxz.store.c"); +print_interp_coeff_var_store(posn_list_3d_size4, "factor", "coeff_dyy_", + "3d.cube.size4/coeff-dyy.store.c"); +print_interp_coeff_var_store(posn_list_3d_size4, "factor", "coeff_dyz_", + "3d.cube.size4/coeff-dyz.store.c"); +print_interp_coeff_var_store(posn_list_3d_size4, "factor", "coeff_dzz_", + "3d.cube.size4/coeff-dzz.store.c"); + +print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_I_"), "fp", + "3d.cube.size4/coeff-I.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_dx_"), "fp", + "3d.cube.size4/coeff-dx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_dy_"), "fp", + "3d.cube.size4/coeff-dy.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_dz_"), "fp", + "3d.cube.size4/coeff-dz.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_dxx_"), "fp", + "3d.cube.size4/coeff-dxx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_dxy_"), "fp", + "3d.cube.size4/coeff-dxy.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_dxz_"), "fp", + "3d.cube.size4/coeff-dxz.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_dyy_"), "fp", + "3d.cube.size4/coeff-dyy.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_dyz_"), "fp", + "3d.cube.size4/coeff-dyz.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size4, "coeff_dzz_"), "fp", + "3d.cube.size4/coeff-dzz.dcl.c"); + +print_interp_cmpt__lc_of_data(posn_list_3d_size4, + "result", "coeff_I_", "data_", + "3d.cube.size4/interp-I.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size4, + "result", "coeff_dx_", "data_", + "3d.cube.size4/interp-dx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size4, + "result", "coeff_dy_", "data_", + "3d.cube.size4/interp-dy.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size4, + "result", "coeff_dz_", "data_", + "3d.cube.size4/interp-dz.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size4, + "result", "coeff_dxx_", "data_", + "3d.cube.size4/interp-dxx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size4, + "result", "coeff_dxy_", "data_", + "3d.cube.size4/interp-dxy.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size4, + "result", "coeff_dxz_", "data_", + "3d.cube.size4/interp-dxz.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size4, + "result", "coeff_dyy_", "data_", + "3d.cube.size4/interp-dyy.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size4, + "result", "coeff_dyz_", "data_", + "3d.cube.size4/interp-dyz.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size4, + "result", "coeff_dzz_", "data_", + "3d.cube.size4/interp-dzz.compute.c"); + +######################################## + +# +# generic stuff for 3d, cube, size=5 +# + +data_var_list_3d_size5 := map(data_var_name, posn_list_3d_size5, "data_"); + +print_name_list_dcl(data_var_list_3d_size5, "fp", + "3d.cube.size5/data-var.dcl.c"); +print_data_var_assign(posn_list_3d_size5, "data_", + "3d.cube.size5/data-var.assign.c"); + +print_interp_coeff_var_store(posn_list_3d_size5, "", "coeff_I_", + "3d.cube.size5/coeff-I.store.c"); +print_interp_coeff_var_store(posn_list_3d_size5, "factor", "coeff_dx_", + "3d.cube.size5/coeff-dx.store.c"); +print_interp_coeff_var_store(posn_list_3d_size5, "factor", "coeff_dy_", + "3d.cube.size5/coeff-dy.store.c"); +print_interp_coeff_var_store(posn_list_3d_size5, "factor", "coeff_dz_", + "3d.cube.size5/coeff-dz.store.c"); +print_interp_coeff_var_store(posn_list_3d_size5, "factor", "coeff_dxx_", + "3d.cube.size5/coeff-dxx.store.c"); +print_interp_coeff_var_store(posn_list_3d_size5, "factor", "coeff_dxy_", + "3d.cube.size5/coeff-dxy.store.c"); +print_interp_coeff_var_store(posn_list_3d_size5, "factor", "coeff_dxz_", + "3d.cube.size5/coeff-dxz.store.c"); +print_interp_coeff_var_store(posn_list_3d_size5, "factor", "coeff_dyy_", + "3d.cube.size5/coeff-dyy.store.c"); +print_interp_coeff_var_store(posn_list_3d_size5, "factor", "coeff_dyz_", + "3d.cube.size5/coeff-dyz.store.c"); +print_interp_coeff_var_store(posn_list_3d_size5, "factor", "coeff_dzz_", + "3d.cube.size5/coeff-dzz.store.c"); + +print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_I_"), "fp", + "3d.cube.size5/coeff-I.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_dx_"), "fp", + "3d.cube.size5/coeff-dx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_dy_"), "fp", + "3d.cube.size5/coeff-dy.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_dz_"), "fp", + "3d.cube.size5/coeff-dz.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_dxx_"), "fp", + "3d.cube.size5/coeff-dxx.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_dxy_"), "fp", + "3d.cube.size5/coeff-dxy.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_dxz_"), "fp", + "3d.cube.size5/coeff-dxz.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_dyy_"), "fp", + "3d.cube.size5/coeff-dyy.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_dyz_"), "fp", + "3d.cube.size5/coeff-dyz.dcl.c"); +print_name_list_dcl(map(coeff_name, posn_list_3d_size5, "coeff_dzz_"), "fp", + "3d.cube.size5/coeff-dzz.dcl.c"); + +print_interp_cmpt__lc_of_data(posn_list_3d_size5, + "result", "coeff_I_", "data_", + "3d.cube.size5/interp-I.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size5, + "result", "coeff_dx_", "data_", + "3d.cube.size5/interp-dx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size5, + "result", "coeff_dy_", "data_", + "3d.cube.size5/interp-dy.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size5, + "result", "coeff_dz_", "data_", + "3d.cube.size5/interp-dz.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size5, + "result", "coeff_dxx_", "data_", + "3d.cube.size5/interp-dxx.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size5, + "result", "coeff_dxy_", "data_", + "3d.cube.size5/interp-dxy.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size5, + "result", "coeff_dxz_", "data_", + "3d.cube.size5/interp-dxz.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size5, + "result", "coeff_dyy_", "data_", + "3d.cube.size5/interp-dyy.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size5, + "result", "coeff_dyz_", "data_", + "3d.cube.size5/interp-dyz.compute.c"); +print_interp_cmpt__lc_of_data(posn_list_3d_size5, + "result", "coeff_dzz_", "data_", + "3d.cube.size5/interp-dzz.compute.c"); + +################################################################################ diff --git a/src/GeneralizedPolynomial-Uniform/common/README b/src/GeneralizedPolynomial-Uniform/common/README new file mode 100644 index 0000000..cf22912 --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/README @@ -0,0 +1,6 @@ +This directory contains Maple code to generate machine-generated coefficient +files which are common to multiple interpolation operators. In practice +these files depend only on the dimensionality and the molecule size/shape +(eg 3d, cube, size 4). + +The subdirectories contain the actual machine-generated files. diff --git a/src/GeneralizedPolynomial-Uniform/common/cube_posns.maple b/src/GeneralizedPolynomial-Uniform/common/cube_posns.maple new file mode 100644 index 0000000..0d23e1c --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/cube_posns.maple @@ -0,0 +1,42 @@ +# Maple code to compute lists of point positions in hypercube-shaped molecules +# $Id$ + +################################################################################ + +# +# 1D interpolation points +# +posn_list_1d_size2 := hypercube_points([ 0], [+1]); +posn_list_1d_size3 := hypercube_points([-1], [+1]); +posn_list_1d_size4 := hypercube_points([-1], [+2]); +posn_list_1d_size5 := hypercube_points([-2], [+2]); +posn_list_1d_size6 := hypercube_points([-2], [+3]); +posn_list_1d_size7 := hypercube_points([-3], [+3]); + +################################################################################ + +# +# 2D interpolation points (Fortran ordering) +# +posn_list_2d_size2 := map(ListTools[Reverse], + hypercube_points([ 0, 0], [+1,+1])); +posn_list_2d_size3 := map(ListTools[Reverse], + hypercube_points([-1,-1], [+1,+1])); +posn_list_2d_size4 := map(ListTools[Reverse], + hypercube_points([-1,-1], [+2,+2])); +posn_list_2d_size5 := map(ListTools[Reverse], + hypercube_points([-2,-2], [+2,+2])); + +################################################################################ + +# +# 3D interpolation points (Fortran ordering) +# +posn_list_3d_size2 := map(ListTools[Reverse], + hypercube_points([ 0, 0, 0], [+1,+1,+1])); +posn_list_3d_size3 := map(ListTools[Reverse], + hypercube_points([-1,-1,-1], [+1,+1,+1])); +posn_list_3d_size4 := map(ListTools[Reverse], + hypercube_points([-1,-1,-1], [+2,+2,+2])); +posn_list_3d_size5 := map(ListTools[Reverse], + hypercube_points([-2,-2,-2], [+2,+2,+2])); diff --git a/src/GeneralizedPolynomial-Uniform/common/makefile b/src/GeneralizedPolynomial-Uniform/common/makefile new file mode 100644 index 0000000..c34120b --- /dev/null +++ b/src/GeneralizedPolynomial-Uniform/common/makefile @@ -0,0 +1,62 @@ +# +# main targets: rebuild machine-generated coefficient files +# + +default : 1d 2d 3d +dirs : 1d.dirs 2d.dirs 3d.dirs + +.PHONY : 1d +1d : + -rm 1d.cube.size*/*.c + cat ../util.maple ../interpolate.maple \ + cube_posns.maple 1d.maple \ + | maple 2>&1 >1d.log + +.PHONY : 2d +2d : + -rm 2d.cube.size*/*.c + cat ../util.maple ../interpolate.maple \ + cube_posns.maple 2d.maple \ + | maple 2>&2 >2d.log + +.PHONY : 3d +3d : + -rm 3d.cube.size*/*.c + cat ../util.maple ../interpolate.maple \ + cube_posns.maple 3d.maple \ + | maple 2>&2 >3d.log + +################################################################################ + +# +# targets to initially create directories for machine-generated coefficients +# these only need to be run if you're setting up a new interpolator, +# i.e. if you don't already have the directories in cvs +# (you still have to add them to cvs by hand) +# + +.PHONY : 1d.dirs +1d.dirs: + -rm -rf 1d.cube.size* + mkdir 1d.cube.size2 + mkdir 1d.cube.size3 + mkdir 1d.cube.size4 + mkdir 1d.cube.size5 + mkdir 1d.cube.size6 + mkdir 1d.cube.size7 + +.PHONY : 2d.dirs +2d.dirs: + -rm -rf 2d.cube.size* + mkdir 2d.cube.size2 + mkdir 2d.cube.size3 + mkdir 2d.cube.size4 + mkdir 2d.cube.size5 + +.PHONY : 3d.dirs +3d.dirs: + -rm -rf 3d.cube.size* + mkdir 3d.cube.size2 + mkdir 3d.cube.size3 + mkdir 3d.cube.size4 + mkdir 3d.cube.size5 |