aboutsummaryrefslogtreecommitdiff
path: root/src/GeneralizedPolynomial-Uniform/common/3d.cube.size5
diff options
context:
space:
mode:
Diffstat (limited to 'src/GeneralizedPolynomial-Uniform/common/3d.cube.size5')
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-I.dcl.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-I.store.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dx.dcl.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dx.store.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxx.dcl.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxx.store.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxy.dcl.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxy.store.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxz.dcl.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dxz.store.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dy.dcl.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dy.store.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dyy.dcl.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dyy.store.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dyz.dcl.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dyz.store.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dz.dcl.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dz.store.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dzz.dcl.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/coeff-dzz.store.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/data-var.assign.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/data-var.dcl.c125
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-I.compute.c126
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dx.compute.c126
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dxx.compute.c126
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dxy.compute.c126
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dxz.compute.c126
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dy.compute.c126
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dyy.compute.c126
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dyz.compute.c126
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dz.compute.c126
-rw-r--r--src/GeneralizedPolynomial-Uniform/common/3d.cube.size5/interp-dzz.compute.c126
32 files changed, 4010 insertions, 0 deletions
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;