7void q_0_basis_value_3d(
const int local_index,
const Eigen::MatrixXd &uv, Eigen::MatrixXd &result_0){
9auto x=uv.col(0).array();
10auto y=uv.col(1).array();
11auto z=uv.col(2).array();
13result_0.resize(
x.size(),1);
15 case 0: {result_0.setOnes();}
break;
16 default: assert(
false);
18void q_1_basis_value_3d(
const int local_index,
const Eigen::MatrixXd &uv, Eigen::MatrixXd &result_0){
20auto x=uv.col(0).array();
21auto y=uv.col(1).array();
22auto z=uv.col(2).array();
25 case 0: {result_0 = -1.0*(
x - 1)*(
y - 1)*(
z - 1);}
break;
26 case 1: {result_0 = 1.0*
x*(
y - 1)*(
z - 1);}
break;
27 case 2: {result_0 = -1.0*
x*
y*(
z - 1);}
break;
28 case 3: {result_0 = 1.0*
y*(
x - 1)*(
z - 1);}
break;
29 case 4: {result_0 = 1.0*
z*(
x - 1)*(
y - 1);}
break;
30 case 5: {result_0 = -1.0*
x*
z*(
y - 1);}
break;
31 case 6: {result_0 = 1.0*
x*
y*
z;}
break;
32 case 7: {result_0 = -1.0*
y*
z*(
x - 1);}
break;
33 default: assert(
false);
35void q_2_basis_value_3d(
const int local_index,
const Eigen::MatrixXd &uv, Eigen::MatrixXd &result_0){
37auto x=uv.col(0).array();
38auto y=uv.col(1).array();
39auto z=uv.col(2).array();
42 case 0: {result_0 = 1.0*(
x - 1)*(2.0*
x - 1.0)*(
y - 1)*(2.0*
y - 1.0)*(
z - 1)*(2.0*
z - 1.0);}
break;
43 case 1: {result_0 = 1.0*
x*(2.0*
x - 1.0)*(
y - 1)*(2.0*
y - 1.0)*(
z - 1)*(2.0*
z - 1.0);}
break;
44 case 2: {result_0 = 1.0*
x*
y*(2.0*
x - 1.0)*(2.0*
y - 1.0)*(
z - 1)*(2.0*
z - 1.0);}
break;
45 case 3: {result_0 = 1.0*
y*(
x - 1)*(2.0*
x - 1.0)*(2.0*
y - 1.0)*(
z - 1)*(2.0*
z - 1.0);}
break;
46 case 4: {result_0 = 1.0*
z*(
x - 1)*(2.0*
x - 1.0)*(
y - 1)*(2.0*
y - 1.0)*(2.0*
z - 1.0);}
break;
47 case 5: {result_0 = 1.0*
x*
z*(2.0*
x - 1.0)*(
y - 1)*(2.0*
y - 1.0)*(2.0*
z - 1.0);}
break;
48 case 6: {result_0 = 1.0*
x*
y*
z*(2.0*
x - 1.0)*(2.0*
y - 1.0)*(2.0*
z - 1.0);}
break;
49 case 7: {result_0 = 1.0*
y*
z*(
x - 1)*(2.0*
x - 1.0)*(2.0*
y - 1.0)*(2.0*
z - 1.0);}
break;
50 case 8: {result_0 = -4.0*
x*(
x - 1)*(
y - 1)*(2.0*
y - 1.0)*(
z - 1)*(2.0*
z - 1.0);}
break;
51 case 9: {result_0 = -4.0*
x*
y*(2.0*
x - 1.0)*(
y - 1)*(
z - 1)*(2.0*
z - 1.0);}
break;
52 case 10: {result_0 = -4.0*
x*
y*(
x - 1)*(2.0*
y - 1.0)*(
z - 1)*(2.0*
z - 1.0);}
break;
53 case 11: {result_0 = -4.0*
y*(
x - 1)*(2.0*
x - 1.0)*(
y - 1)*(
z - 1)*(2.0*
z - 1.0);}
break;
54 case 12: {result_0 = -4.0*
z*(
x - 1)*(2.0*
x - 1.0)*(
y - 1)*(2.0*
y - 1.0)*(
z - 1);}
break;
55 case 13: {result_0 = -4.0*
x*
z*(2.0*
x - 1.0)*(
y - 1)*(2.0*
y - 1.0)*(
z - 1);}
break;
56 case 14: {result_0 = -4.0*
x*
y*
z*(2.0*
x - 1.0)*(2.0*
y - 1.0)*(
z - 1);}
break;
57 case 15: {result_0 = -4.0*
y*
z*(
x - 1)*(2.0*
x - 1.0)*(2.0*
y - 1.0)*(
z - 1);}
break;
58 case 16: {result_0 = -4.0*
x*
z*(
x - 1)*(
y - 1)*(2.0*
y - 1.0)*(2.0*
z - 1.0);}
break;
59 case 17: {result_0 = -4.0*
x*
y*
z*(2.0*
x - 1.0)*(
y - 1)*(2.0*
z - 1.0);}
break;
60 case 18: {result_0 = -4.0*
x*
y*
z*(
x - 1)*(2.0*
y - 1.0)*(2.0*
z - 1.0);}
break;
61 case 19: {result_0 = -4.0*
y*
z*(
x - 1)*(2.0*
x - 1.0)*(
y - 1)*(2.0*
z - 1.0);}
break;
62 case 20: {result_0 = 16.0*
y*
z*(
x - 1)*(2.0*
x - 1.0)*(
y - 1)*(
z - 1);}
break;
63 case 21: {result_0 = 16.0*
x*
y*
z*(2.0*
x - 1.0)*(
y - 1)*(
z - 1);}
break;
64 case 22: {result_0 = 16.0*
x*
z*(
x - 1)*(
y - 1)*(2.0*
y - 1.0)*(
z - 1);}
break;
65 case 23: {result_0 = 16.0*
x*
y*
z*(
x - 1)*(2.0*
y - 1.0)*(
z - 1);}
break;
66 case 24: {result_0 = 16.0*
x*
y*(
x - 1)*(
y - 1)*(
z - 1)*(2.0*
z - 1.0);}
break;
67 case 25: {result_0 = 16.0*
x*
y*
z*(
x - 1)*(
y - 1)*(2.0*
z - 1.0);}
break;
68 case 26: {result_0 = -64.0*
x*
y*
z*(
x - 1)*(
y - 1)*(
z - 1);}
break;
69 default: assert(
false);
71void q_3_basis_value_3d(
const int local_index,
const Eigen::MatrixXd &uv, Eigen::MatrixXd &result_0){
73auto x=uv.col(0).array();
74auto y=uv.col(1).array();
75auto z=uv.col(2).array();
78 case 0: {result_0 = -1.0*(
x - 1)*(1.5*
x - 1.0)*(3.0*
x - 1.0)*(
y - 1)*(1.5*
y - 1.0)*(3.0*
y - 1.0)*(
z - 1)*(1.5*
z - 1.0)*(3.0*
z - 1.0);}
break;
79 case 1: {result_0 = 1.0*
x*(1.4999999999999998*
x - 0.49999999999999989)*(2.9999999999999996*
x - 1.9999999999999996)*(
y - 1)*(1.5*
y - 1.0)*(3.0*
y - 1.0)*(
z - 1)*(1.5*
z - 1.0)*(3.0*
z - 1.0);}
break;
80 case 2: {result_0 = -1.0*
x*
y*(1.4999999999999998*
x - 0.49999999999999989)*(2.9999999999999996*
x - 1.9999999999999996)*(1.4999999999999998*
y - 0.49999999999999989)*(2.9999999999999996*
y - 1.9999999999999996)*(
z - 1)*(1.5*
z - 1.0)*(3.0*
z - 1.0);}
break;
81 case 3: {result_0 = 1.0*
y*(
x - 1)*(1.5*
x - 1.0)*(3.0*
x - 1.0)*(1.4999999999999998*
y - 0.49999999999999989)*(2.9999999999999996*
y - 1.9999999999999996)*(
z - 1)*(1.5*
z - 1.0)*(3.0*
z - 1.0);}
break;
82 case 4: {result_0 = 1.0*
z*(
x - 1)*(1.5*
x - 1.0)*(3.0*
x - 1.0)*(
y - 1)*(1.5*
y - 1.0)*(3.0*
y - 1.0)*(1.4999999999999998*
z - 0.49999999999999989)*(2.9999999999999996*
z - 1.9999999999999996);}
break;
83 case 5: {result_0 = -1.0*
x*
z*(1.4999999999999998*
x - 0.49999999999999989)*(2.9999999999999996*
x - 1.9999999999999996)*(
y - 1)*(1.5*
y - 1.0)*(3.0*
y - 1.0)*(1.4999999999999998*
z - 0.49999999999999989)*(2.9999999999999996*
z - 1.9999999999999996);}
break;
84 case 6: {result_0 = 1.0*
x*
y*
z*(1.4999999999999998*
x - 0.49999999999999989)*(2.9999999999999996*
x - 1.9999999999999996)*(1.4999999999999998*
y - 0.49999999999999989)*(2.9999999999999996*
y - 1.9999999999999996)*(1.4999999999999998*
z - 0.49999999999999989)*(2.9999999999999996*
z - 1.9999999999999996);}
break;
85 case 7: {result_0 = -1.0*
y*
z*(
x - 1)*(1.5*
x - 1.0)*(3.0*
x - 1.0)*(1.4999999999999998*
y - 0.49999999999999989)*(2.9999999999999996*
y - 1.9999999999999996)*(1.4999999999999998*
z - 0.49999999999999989)*(2.9999999999999996*
z - 1.9999999999999996);}
break;
86 case 8: {result_0 = 4.4999999999999991*
x*(
x - 1)*(3.0*
x - 2.0)*(
y - 1)*(1.5*
y - 1.0)*(3.0*
y - 1.0)*(
z - 1)*(1.5*
z - 1.0)*(3.0*
z - 1.0);}
break;
87 case 9: {result_0 = -4.4999999999999991*
x*(
x - 1)*(3.0*
x - 1.0)*(
y - 1)*(1.5*
y - 1.0)*(3.0*
y - 1.0)*(
z - 1)*(1.5*
z - 1.0)*(3.0*
z - 1.0);}
break;
88 case 10: {result_0 = -4.4999999999999991*
x*
y*(1.4999999999999998*
x - 0.49999999999999989)*(2.9999999999999996*
x - 1.9999999999999996)*(
y - 1)*(3.0*
y - 2.0)*(
z - 1)*(1.5*
z - 1.0)*(3.0*
z - 1.0);}
break;
89 case 11: {result_0 = 4.4999999999999991*
x*
y*(1.4999999999999998*
x - 0.49999999999999989)*(2.9999999999999996*
x - 1.9999999999999996)*(
y - 1)*(3.0*
y - 1.0)*(
z - 1)*(1.5*
z - 1.0)*(3.0*
z - 1.0);}
break;
90 case 12: {result_0 = 4.4999999999999991*
x*
y*(
x - 1)*(3.0*
x - 1.0)*(1.4999999999999998*
y - 0.49999999999999989)*(2.9999999999999996*
y - 1.9999999999999996)*(
z - 1)*(1.5*
z - 1.0)*(3.0*
z - 1.0);}
break;
91 case 13: {result_0 = -4.4999999999999991*
x*
y*(
x - 1)*(3.0*
x - 2.0)*(1.4999999999999998*
y - 0.49999999999999989)*(2.9999999999999996*
y - 1.9999999999999996)*(
z - 1)*(1.5*
z - 1.0)*(3.0*
z - 1.0);}
break;
92 case 14: {result_0 = -4.4999999999999991*
y*(
x - 1)*(1.5*
x - 1.0)*(3.0*
x - 1.0)*(
y - 1)*(3.0*
y - 1.0)*(
z - 1)*(1.5*
z - 1.0)*(3.0*
z - 1.0);}
break;
93 case 15: {result_0 = 4.4999999999999991*
y*(
x - 1)*(1.5*
x - 1.0)*(3.0*
x - 1.0)*(
y - 1)*(3.0*
y - 2.0)*(
z - 1)*(1.5*
z - 1.0)*(3.0*
z - 1.0);}
break;
94 case 16: {result_0 = 4.4999999999999991*
z*(
x - 1)*(1.5*
x - 1.0)*(3.0*
x - 1.0)*(
y - 1)*(1.5*
y - 1.0)*(3.0*
y - 1.0)*(
z - 1)*(3.0*
z - 2.0);}
break;
95 case 17: {result_0 = -4.4999999999999991*
z*(
x - 1)*(1.5*
x - 1.0)*(3.0*
x - 1.0)*(
y - 1)*(1.5*
y - 1.0)*(3.0*
y - 1.0)*(
z - 1)*(3.0*
z - 1.0);}
break;
96 case 18: {result_0 = 4.4999999999999991*
x*
z*(1.4999999999999998*
x - 0.49999999999999989)*(2.9999999999999996*
x - 1.9999999999999996)*(
y - 1)*(1.5*
y - 1.0)*(3.0*
y - 1.0)*(
z - 1)*(3.0*
z - 1.0);}
break;
97 case 19: {result_0 = -4.4999999999999991*
x*
z*(1.4999999999999998*
x - 0.49999999999999989)*(2.9999999999999996*
x - 1.9999999999999996)*(
y - 1)*(1.5*
y - 1.0)*(3.0*
y - 1.0)*(
z - 1)*(3.0*
z - 2.0);}
break;
98 case 20: {result_0 = -4.4999999999999991*
x*
y*
z*(1.4999999999999998*
x - 0.49999999999999989)*(2.9999999999999996*
x - 1.9999999999999996)*(1.4999999999999998*
y - 0.49999999999999989)*(2.9999999999999996*
y - 1.9999999999999996)*(
z - 1)*(3.0*
z - 1.0);}
break;
99 case 21: {result_0 = 4.4999999999999991*
x*
y*
z*(1.4999999999999998*
x - 0.49999999999999989)*(2.9999999999999996*
x - 1.9999999999999996)*(1.4999999999999998*
y - 0.49999999999999989)*(2.9999999999999996*
y - 1.9999999999999996)*(
z - 1)*(3.0*
z - 2.0);}
break;
100 case 22: {result_0 = 4.4999999999999991*
y*
z*(
x - 1)*(1.5*
x - 1.0)*(3.0*
x - 1.0)*(1.4999999999999998*
y - 0.49999999999999989)*(2.9999999999999996*
y - 1.9999999999999996)*(
z - 1)*(3.0*
z - 1.0);}
break;
101 case 23: {result_0 = -4.4999999999999991*
y*
z*(
x - 1)*(1.5*
x - 1.0)*(3.0*
x - 1.0)*(1.4999999999999998*
y - 0.49999999999999989)*(2.9999999999999996*
y - 1.9999999999999996)*(
z - 1)*(3.0*
z - 2.0);}
break;
102 case 24: {result_0 = -4.4999999999999991*
x*
z*(
x - 1)*(3.0*
x - 2.0)*(
y - 1)*(1.5*
y - 1.0)*(3.0*
y - 1.0)*(1.4999999999999998*
z - 0.49999999999999989)*(2.9999999999999996*
z - 1.9999999999999996);}
break;
103 case 25: {result_0 = 4.4999999999999991*
x*
z*(
x - 1)*(3.0*
x - 1.0)*(
y - 1)*(1.5*
y - 1.0)*(3.0*
y - 1.0)*(1.4999999999999998*
z - 0.49999999999999989)*(2.9999999999999996*
z - 1.9999999999999996);}
break;
104 case 26: {result_0 = 4.4999999999999991*
x*
y*
z*(1.4999999999999998*
x - 0.49999999999999989)*(2.9999999999999996*
x - 1.9999999999999996)*(
y - 1)*(3.0*
y - 2.0)*(1.4999999999999998*
z - 0.49999999999999989)*(2.9999999999999996*
z - 1.9999999999999996);}
break;
105 case 27: {result_0 = -4.4999999999999991*
x*
y*
z*(1.4999999999999998*
x - 0.49999999999999989)*(2.9999999999999996*
x - 1.9999999999999996)*(
y - 1)*(3.0*
y - 1.0)*(1.4999999999999998*
z - 0.49999999999999989)*(2.9999999999999996*
z - 1.9999999999999996);}
break;
106 case 28: {result_0 = -4.4999999999999991*
x*
y*
z*(
x - 1)*(3.0*
x - 1.0)*(1.4999999999999998*
y - 0.49999999999999989)*(2.9999999999999996*
y - 1.9999999999999996)*(1.4999999999999998*
z - 0.49999999999999989)*(2.9999999999999996*
z - 1.9999999999999996);}
break;
107 case 29: {result_0 = 4.4999999999999991*
x*
y*
z*(
x - 1)*(3.0*
x - 2.0)*(1.4999999999999998*
y - 0.49999999999999989)*(2.9999999999999996*
y - 1.9999999999999996)*(1.4999999999999998*
z - 0.49999999999999989)*(2.9999999999999996*
z - 1.9999999999999996);}
break;
108 case 30: {result_0 = 4.4999999999999991*
y*
z*(
x - 1)*(1.5*
x - 1.0)*(3.0*
x - 1.0)*(
y - 1)*(3.0*
y - 1.0)*(1.4999999999999998*
z - 0.49999999999999989)*(2.9999999999999996*
z - 1.9999999999999996);}
break;
109 case 31: {result_0 = -4.4999999999999991*
y*
z*(
x - 1)*(1.5*
x - 1.0)*(3.0*
x - 1.0)*(
y - 1)*(3.0*
y - 2.0)*(1.4999999999999998*
z - 0.49999999999999989)*(2.9999999999999996*
z - 1.9999999999999996);}
break;
110 case 32: {result_0 = -20.249999999999993*
y*
z*(
x - 1)*(1.5*
x - 1.0)*(3.0*
x - 1.0)*(
y - 1)*(3.0*
y - 1.0)*(
z - 1)*(3.0*
z - 1.0);}
break;
111 case 33: {result_0 = 20.249999999999993*
y*
z*(
x - 1)*(1.5*
x - 1.0)*(3.0*
x - 1.0)*(
y - 1)*(3.0*
y - 1.0)*(
z - 1)*(3.0*
z - 2.0);}
break;
112 case 34: {result_0 = 20.249999999999993*
y*
z*(
x - 1)*(1.5*
x - 1.0)*(3.0*
x - 1.0)*(
y - 1)*(3.0*
y - 2.0)*(
z - 1)*(3.0*
z - 1.0);}
break;
113 case 35: {result_0 = -20.249999999999993*
y*
z*(
x - 1)*(1.5*
x - 1.0)*(3.0*
x - 1.0)*(
y - 1)*(3.0*
y - 2.0)*(
z - 1)*(3.0*
z - 2.0);}
break;
114 case 36: {result_0 = 20.249999999999993*
x*
y*
z*(1.4999999999999998*
x - 0.49999999999999989)*(2.9999999999999996*
x - 1.9999999999999996)*(
y - 1)*(3.0*
y - 2.0)*(
z - 1)*(3.0*
z - 2.0);}
break;
115 case 37: {result_0 = -20.249999999999993*
x*
y*
z*(1.4999999999999998*
x - 0.49999999999999989)*(2.9999999999999996*
x - 1.9999999999999996)*(
y - 1)*(3.0*
y - 2.0)*(
z - 1)*(3.0*
z - 1.0);}
break;
116 case 38: {result_0 = -20.249999999999993*
x*
y*
z*(1.4999999999999998*
x - 0.49999999999999989)*(2.9999999999999996*
x - 1.9999999999999996)*(
y - 1)*(3.0*
y - 1.0)*(
z - 1)*(3.0*
z - 2.0);}
break;
117 case 39: {result_0 = 20.249999999999993*
x*
y*
z*(1.4999999999999998*
x - 0.49999999999999989)*(2.9999999999999996*
x - 1.9999999999999996)*(
y - 1)*(3.0*
y - 1.0)*(
z - 1)*(3.0*
z - 1.0);}
break;
118 case 40: {result_0 = -20.249999999999993*
x*
z*(
x - 1)*(3.0*
x - 2.0)*(
y - 1)*(1.5*
y - 1.0)*(3.0*
y - 1.0)*(
z - 1)*(3.0*
z - 2.0);}
break;
119 case 41: {result_0 = 20.249999999999993*
x*
z*(
x - 1)*(3.0*
x - 2.0)*(
y - 1)*(1.5*
y - 1.0)*(3.0*
y - 1.0)*(
z - 1)*(3.0*
z - 1.0);}
break;
120 case 42: {result_0 = 20.249999999999993*
x*
z*(
x - 1)*(3.0*
x - 1.0)*(
y - 1)*(1.5*
y - 1.0)*(3.0*
y - 1.0)*(
z - 1)*(3.0*
z - 2.0);}
break;
121 case 43: {result_0 = -20.249999999999993*
x*
z*(
x - 1)*(3.0*
x - 1.0)*(
y - 1)*(1.5*
y - 1.0)*(3.0*
y - 1.0)*(
z - 1)*(3.0*
z - 1.0);}
break;
122 case 44: {result_0 = 20.249999999999993*
x*
y*
z*(
x - 1)*(3.0*
x - 2.0)*(1.4999999999999998*
y - 0.49999999999999989)*(2.9999999999999996*
y - 1.9999999999999996)*(
z - 1)*(3.0*
z - 2.0);}
break;
123 case 45: {result_0 = -20.249999999999993*
x*
y*
z*(
x - 1)*(3.0*
x - 2.0)*(1.4999999999999998*
y - 0.49999999999999989)*(2.9999999999999996*
y - 1.9999999999999996)*(
z - 1)*(3.0*
z - 1.0);}
break;
124 case 46: {result_0 = -20.249999999999993*
x*
y*
z*(
x - 1)*(3.0*
x - 1.0)*(1.4999999999999998*
y - 0.49999999999999989)*(2.9999999999999996*
y - 1.9999999999999996)*(
z - 1)*(3.0*
z - 2.0);}
break;
125 case 47: {result_0 = 20.249999999999993*
x*
y*
z*(
x - 1)*(3.0*
x - 1.0)*(1.4999999999999998*
y - 0.49999999999999989)*(2.9999999999999996*
y - 1.9999999999999996)*(
z - 1)*(3.0*
z - 1.0);}
break;
126 case 48: {result_0 = -20.249999999999993*
x*
y*(
x - 1)*(3.0*
x - 2.0)*(
y - 1)*(3.0*
y - 2.0)*(
z - 1)*(1.5*
z - 1.0)*(3.0*
z - 1.0);}
break;
127 case 49: {result_0 = 20.249999999999993*
x*
y*(
x - 1)*(3.0*
x - 2.0)*(
y - 1)*(3.0*
y - 1.0)*(
z - 1)*(1.5*
z - 1.0)*(3.0*
z - 1.0);}
break;
128 case 50: {result_0 = 20.249999999999993*
x*
y*(
x - 1)*(3.0*
x - 1.0)*(
y - 1)*(3.0*
y - 2.0)*(
z - 1)*(1.5*
z - 1.0)*(3.0*
z - 1.0);}
break;
129 case 51: {result_0 = -20.249999999999993*
x*
y*(
x - 1)*(3.0*
x - 1.0)*(
y - 1)*(3.0*
y - 1.0)*(
z - 1)*(1.5*
z - 1.0)*(3.0*
z - 1.0);}
break;
130 case 52: {result_0 = 20.249999999999993*
x*
y*
z*(
x - 1)*(3.0*
x - 2.0)*(
y - 1)*(3.0*
y - 2.0)*(1.4999999999999998*
z - 0.49999999999999989)*(2.9999999999999996*
z - 1.9999999999999996);}
break;
131 case 53: {result_0 = -20.249999999999993*
x*
y*
z*(
x - 1)*(3.0*
x - 2.0)*(
y - 1)*(3.0*
y - 1.0)*(1.4999999999999998*
z - 0.49999999999999989)*(2.9999999999999996*
z - 1.9999999999999996);}
break;
132 case 54: {result_0 = -20.249999999999993*
x*
y*
z*(
x - 1)*(3.0*
x - 1.0)*(
y - 1)*(3.0*
y - 2.0)*(1.4999999999999998*
z - 0.49999999999999989)*(2.9999999999999996*
z - 1.9999999999999996);}
break;
133 case 55: {result_0 = 20.249999999999993*
x*
y*
z*(
x - 1)*(3.0*
x - 1.0)*(
y - 1)*(3.0*
y - 1.0)*(1.4999999999999998*
z - 0.49999999999999989)*(2.9999999999999996*
z - 1.9999999999999996);}
break;
134 case 56: {result_0 = 91.124999999999957*
x*
y*
z*(
x - 1)*(3.0*
x - 2.0)*(
y - 1)*(3.0*
y - 2.0)*(
z - 1)*(3.0*
z - 2.0);}
break;
135 case 57: {result_0 = -91.124999999999957*
x*
y*
z*(
x - 1)*(3.0*
x - 2.0)*(
y - 1)*(3.0*
y - 2.0)*(
z - 1)*(3.0*
z - 1.0);}
break;
136 case 58: {result_0 = -91.124999999999957*
x*
y*
z*(
x - 1)*(3.0*
x - 2.0)*(
y - 1)*(3.0*
y - 1.0)*(
z - 1)*(3.0*
z - 2.0);}
break;
137 case 59: {result_0 = 91.124999999999957*
x*
y*
z*(
x - 1)*(3.0*
x - 2.0)*(
y - 1)*(3.0*
y - 1.0)*(
z - 1)*(3.0*
z - 1.0);}
break;
138 case 60: {result_0 = -91.124999999999957*
x*
y*
z*(
x - 1)*(3.0*
x - 1.0)*(
y - 1)*(3.0*
y - 2.0)*(
z - 1)*(3.0*
z - 2.0);}
break;
139 case 61: {result_0 = 91.124999999999957*
x*
y*
z*(
x - 1)*(3.0*
x - 1.0)*(
y - 1)*(3.0*
y - 2.0)*(
z - 1)*(3.0*
z - 1.0);}
break;
140 case 62: {result_0 = 91.124999999999957*
x*
y*
z*(
x - 1)*(3.0*
x - 1.0)*(
y - 1)*(3.0*
y - 1.0)*(
z - 1)*(3.0*
z - 2.0);}
break;
141 case 63: {result_0 = -91.124999999999957*
x*
y*
z*(
x - 1)*(3.0*
x - 1.0)*(
y - 1)*(3.0*
y - 1.0)*(
z - 1)*(3.0*
z - 1.0);}
break;
142 default: assert(
false);
144void q_m2_basis_value_3d(
const int local_index,
const Eigen::MatrixXd &uv, Eigen::MatrixXd &result_0){
146auto x=uv.col(0).array();
147auto y=uv.col(1).array();
148auto z=uv.col(2).array();
151 case 0: {result_0 = 1.0*(
x - 1)*(
y - 1)*(
z - 1)*(2*
x + 2*
y + 2*
z - 1);}
break;
152 case 1: {result_0 = -1.0*
x*(
y - 1)*(
z - 1)*(-2*
x + 2*
y + 2*
z + 1);}
break;
153 case 2: {result_0 = -1.0*
x*
y*(
z - 1)*(2*
x + 2*
y - 2*
z - 3);}
break;
154 case 3: {result_0 = -1.0*
y*(
x - 1)*(
z - 1)*(2*
x - 2*
y + 2*
z + 1);}
break;
155 case 4: {result_0 = -1.0*
z*(
x - 1)*(
y - 1)*(2*
x + 2*
y - 2*
z + 1);}
break;
156 case 5: {result_0 = -1.0*
x*
z*(
y - 1)*(2*
x - 2*
y + 2*
z - 3);}
break;
157 case 6: {result_0 =
x*
y*
z*(2.0*
x + 2.0*
y + 2.0*
z - 5.0);}
break;
158 case 7: {result_0 = 1.0*
y*
z*(
x - 1)*(2*
x - 2*
y - 2*
z + 3);}
break;
159 case 8: {result_0 = -4*
x*(
x - 1)*(
y - 1)*(
z - 1);}
break;
160 case 9: {result_0 = 4*
x*
y*(
y - 1)*(
z - 1);}
break;
161 case 10: {result_0 = 4*
x*
y*(
x - 1)*(
z - 1);}
break;
162 case 11: {result_0 = -4*
y*(
x - 1)*(
y - 1)*(
z - 1);}
break;
163 case 12: {result_0 = -4*
z*(
x - 1)*(
y - 1)*(
z - 1);}
break;
164 case 13: {result_0 = 4*
x*
z*(
y - 1)*(
z - 1);}
break;
165 case 14: {result_0 = -4*
x*
y*
z*(
z - 1);}
break;
166 case 15: {result_0 = 4*
y*
z*(
x - 1)*(
z - 1);}
break;
167 case 16: {result_0 = 4*
x*
z*(
x - 1)*(
y - 1);}
break;
168 case 17: {result_0 = -4*
x*
y*
z*(
y - 1);}
break;
169 case 18: {result_0 = -4*
x*
y*
z*(
x - 1);}
break;
170 case 19: {result_0 = 4*
y*
z*(
x - 1)*(
y - 1);}
break;
171 default: assert(
false);
175void q_basis_value_3d(
const int q,
const int local_index,
const Eigen::MatrixXd &uv, Eigen::MatrixXd &
val){
177 case 0: q_0_basis_value_3d(local_index, uv,
val);
break;
178 case 1: q_1_basis_value_3d(local_index, uv,
val);
break;
179 case 2: q_2_basis_value_3d(local_index, uv,
val);
break;
180 case 3: q_3_basis_value_3d(local_index, uv,
val);
break;
181 case -2: q_m2_basis_value_3d(local_index, uv,
val);
break;
182 default: assert(
false);
void q_basis_value_3d(const int q, const int local_index, const Eigen::MatrixXd &uv, Eigen::MatrixXd &val)