7void q_0_basis_value_1d(
const int local_index,
const Eigen::MatrixXd &uv, Eigen::MatrixXd &result_0){
9auto x=uv.col(0).array();
11result_0.resize(
x.size(),1);
13 case 0: {result_0.setOnes();}
break;
14 default: assert(
false);
16void q_1_basis_value_1d(
const int local_index,
const Eigen::MatrixXd &uv, Eigen::MatrixXd &result_0){
18auto x=uv.col(0).array();
21 case 0: {result_0 = 1.0*(1 -
x);}
break;
22 case 1: {result_0 = 1.0*
x;}
break;
23 default: assert(
false);
25void q_2_basis_value_1d(
const int local_index,
const Eigen::MatrixXd &uv, Eigen::MatrixXd &result_0){
27auto x=uv.col(0).array();
30 case 0: {result_0 = 1.0*(
x - 1)*(2.0*
x - 1.0);}
break;
31 case 1: {result_0 = -4.0*
x*(
x - 1);}
break;
32 case 2: {result_0 =
x*(2.0*
x - 1.0);}
break;
33 default: assert(
false);
35void q_3_basis_value_1d(
const int local_index,
const Eigen::MatrixXd &uv, Eigen::MatrixXd &result_0){
37auto x=uv.col(0).array();
40 case 0: {result_0 = -4.5*pow(
x, 3) + 9.0*pow(
x, 2) - 5.5*
x + 1.0;}
break;
41 case 1: {result_0 = 4.4999999999999991*
x*(
x - 1)*(3.0*
x - 2.0);}
break;
42 case 2: {result_0 = -
x*(13.499999999999996*pow(
x, 2) - 17.999999999999996*
x + 4.4999999999999991);}
break;
43 case 3: {result_0 =
x*(4.4999999999999991*pow(
x, 2) - 4.4999999999999982*
x + 0.99999999999999956);}
break;
44 default: assert(
false);
46void q_m2_basis_value_1d(
const int local_index,
const Eigen::MatrixXd &uv, Eigen::MatrixXd &result_0){
48auto x=uv.col(0).array();
51 case 0: {result_0 = 1.0*(
x - 1)*(2.0*
x - 1.0);}
break;
52 case 1: {result_0 = -4.0*
x*(
x - 1);}
break;
53 case 2: {result_0 =
x*(2.0*
x - 1.0);}
break;
54 default: assert(
false);
56void q_4_basis_value_1d(
const int local_index,
const Eigen::MatrixXd &uv, Eigen::MatrixXd &result_0){
58auto x=uv.col(0).array();
61 case 0: {result_0 = 1.0*(
x - 1)*(1.3333333333333333*
x - 1.0)*(2.0*
x - 1.0)*(4.0*
x - 1.0);}
break;
62 case 1: {result_0 = -
x*(42.666666666666664*pow(
x, 3) - 96.0*pow(
x, 2) + 69.333333333333329*
x - 16.0);}
break;
63 case 2: {
const auto helper_0 = 4.0*
x;
64result_0 = helper_0*(helper_0 - 3.0)*(helper_0 - 1.0)*(
x - 1);}
break;
65 case 3: {result_0 = -
x*(42.666666666666664*pow(
x, 3) - 74.666666666666657*pow(
x, 2) + 37.333333333333329*
x - 5.333333333333333);}
break;
66 case 4: {result_0 =
x*(10.666666666666666*pow(
x, 3) - 16.0*pow(
x, 2) + 7.333333333333333*
x - 1.0);}
break;
67 default: assert(
false);
69void q_5_basis_value_1d(
const int local_index,
const Eigen::MatrixXd &uv, Eigen::MatrixXd &result_0){
71auto x=uv.col(0).array();
74 case 0: {result_0 = -26.041666666666671*pow(
x, 5) + 78.125*pow(
x, 4) - 88.541666666666671*pow(
x, 3) + 46.875*pow(
x, 2) - 11.416666666666668*
x + 1.0;}
break;
75 case 1: {result_0 = 6.25*
x*(
x - 1)*(1.6666666666666665*
x - 1.3333333333333333)*(2.5*
x - 1.5)*(5.0*
x - 2.0);}
break;
76 case 2: {result_0 = -
x*(260.41666666666674*pow(
x, 4) - 677.08333333333348*pow(
x, 3) + 614.58333333333348*pow(
x, 2) - 222.91666666666674*
x + 25.000000000000007);}
break;
77 case 3: {result_0 = 4.166666666666667*
x*(
x - 1)*(2.5*
x - 0.5)*(4.9999999999999982*
x - 3.9999999999999987)*(5.0000000000000009*
x - 2.0000000000000004);}
break;
78 case 4: {result_0 = -
x*(130.20833333333329*pow(
x, 4) - 286.45833333333326*pow(
x, 3) + 213.5416666666666*pow(
x, 2) - 63.541666666666636*
x + 6.2499999999999982);}
break;
79 case 5: {result_0 =
x*(26.041666666666675*pow(
x, 4) - 52.08333333333335*pow(
x, 3) + 36.458333333333343*pow(
x, 2) - 10.41666666666667*
x + 1.0000000000000002);}
break;
80 default: assert(
false);
82void q_6_basis_value_1d(
const int local_index,
const Eigen::MatrixXd &uv, Eigen::MatrixXd &result_0){
84auto x=uv.col(0).array();
87 case 0: {result_0 = 1.0*(
x - 1)*(1.2*
x - 1.0)*(1.5*
x - 1.0)*(2.0*
x - 1.0)*(3.0*
x - 1.0)*(6.0*
x - 1.0);}
break;
88 case 1: {result_0 = -
x*(388.79999999999984*pow(
x, 5) - 1295.9999999999995*pow(
x, 4) + 1673.9999999999993*pow(
x, 3) - 1043.9999999999995*pow(
x, 2) + 313.19999999999987*
x - 35.999999999999986);}
break;
89 case 2: {result_0 = 4.4999999999999991*
x*(
x - 1)*(2.0*
x - 1.6666666666666667)*(3.0*
x - 2.0)*(5.9999999999999991*
x - 2.9999999999999996)*(6.0*
x - 1.0);}
break;
90 case 3: {result_0 = -
x*(1295.9999999999998*pow(
x, 5) - 3887.9999999999991*pow(
x, 4) + 4355.9999999999982*pow(
x, 3) - 2231.9999999999991*pow(
x, 2) + 507.99999999999983*
x - 39.999999999999986);}
break;
91 case 4: {result_0 = 4.4999999999999991*
x*(
x - 1)*(2.0*
x - 0.33333333333333331)*(3.0*
x - 1.0)*(5.9999999999999973*
x - 4.9999999999999982)*(6.0000000000000018*
x - 3.0000000000000009);}
break;
92 case 5: {result_0 = -
x*(388.79999999999984*pow(
x, 5) - 1036.7999999999997*pow(
x, 4) + 1025.9999999999995*pow(
x, 3) - 467.99999999999983*pow(
x, 2) + 97.199999999999946*
x - 7.1999999999999957);}
break;
93 case 6: {result_0 =
x*(64.799999999999997*pow(
x, 5) - 162.0*pow(
x, 4) + 153.0*pow(
x, 3) - 67.5*pow(
x, 2) + 13.699999999999998*
x - 0.99999999999999967);}
break;
94 default: assert(
false);
98void q_basis_value_1d(
const int q,
const int local_index,
const Eigen::MatrixXd &uv, Eigen::MatrixXd &
val){
100 case 0: q_0_basis_value_1d(local_index, uv,
val);
break;
101 case 1: q_1_basis_value_1d(local_index, uv,
val);
break;
102 case 2: q_2_basis_value_1d(local_index, uv,
val);
break;
103 case 3: q_3_basis_value_1d(local_index, uv,
val);
break;
104 case -2: q_m2_basis_value_1d(local_index, uv,
val);
break;
105 case 4: q_4_basis_value_1d(local_index, uv,
val);
break;
106 case 5: q_5_basis_value_1d(local_index, uv,
val);
break;
107 case 6: q_6_basis_value_1d(local_index, uv,
val);
break;
108 default: assert(
false);
void q_basis_value_1d(const int q, const int local_index, const Eigen::MatrixXd &uv, Eigen::MatrixXd &val)