86{
87 const double r = rst[0];
88 const double s = rst[1];
89 const double t = rst[2];
90 const static double sign1[] = {-1.0, 1.0, 1.0};
91 const static double sign2[] = {1.0, -1.0, 1.0};
92 const static double sign3[] = {1.0, 1.0, -1.0};
93 for (int i = 0; i < 3; i++)
94 {
97 dN[20 * i + 2] =
101 dN[20 * i + 5] =
103 dN[20 * i + 6] = sign1[i] * sign2[i] * sign3[i] *
105 dN[20 * i + 7] =
107
110 dN[20 * i + 14] =
113
114 {
115 int const co = (i + 2) % 3;
117 dN[20 * i + 15] =
119 dN[20 * i + 13] =
121 dN[20 * i + 9] =
123 }
124
125 {
126 int const co = (i + 1) % 3;
128 dN[20 * i + 17] =
130 dN[20 * i + 18] =
132 dN[20 * i + 19] =
134 }
135 }
136}
double dShapeFunctionHexHQ_Corner(const double r, const double s, const double t, const int ty)
double dShapeFunctionHexHQ_Middle(const double r, const double s, const double t, const int ty)