53 aXiHat( 0, 0 ) = -1.000000; aXiHat( 1, 0 ) = -1.000000; aXiHat( 2, 0 ) = -1.000000;
54 aXiHat( 0, 1 ) = 1.000000; aXiHat( 1, 1 ) = -1.000000; aXiHat( 2, 1 ) = -1.000000;
55 aXiHat( 0, 2 ) = 1.000000; aXiHat( 1, 2 ) = 1.000000; aXiHat( 2, 2 ) = -1.000000;
56 aXiHat( 0, 3 ) = -1.000000; aXiHat( 1, 3 ) = 1.000000; aXiHat( 2, 3 ) = -1.000000;
57 aXiHat( 0, 4 ) = -1.000000; aXiHat( 1, 4 ) = -1.000000; aXiHat( 2, 4 ) = 1.000000;
58 aXiHat( 0, 5 ) = 1.000000; aXiHat( 1, 5 ) = -1.000000; aXiHat( 2, 5 ) = 1.000000;
59 aXiHat( 0, 6 ) = 1.000000; aXiHat( 1, 6 ) = 1.000000; aXiHat( 2, 6 ) = 1.000000;
60 aXiHat( 0, 7 ) = -1.000000; aXiHat( 1, 7 ) = 1.000000; aXiHat( 2, 7 ) = 1.000000;
62 aXiHat( 0, 8 ) = 0.000000; aXiHat( 1, 8 ) = -1.000000; aXiHat( 2, 8 ) = -1.000000;
63 aXiHat( 0, 9 ) = 1.000000; aXiHat( 1, 9 ) = 0.000000; aXiHat( 2, 9 ) = -1.000000;
64 aXiHat( 0, 10 ) = 0.000000; aXiHat( 1, 10 ) = 1.000000; aXiHat( 2, 10 ) = -1.000000;
65 aXiHat( 0, 11 ) = -1.000000; aXiHat( 1, 11 ) = 0.000000; aXiHat( 2, 11 ) = -1.000000;
67 aXiHat( 0, 12 ) = -1.000000; aXiHat( 1, 12 ) = -1.000000; aXiHat( 2, 12 ) = 0.000000;
68 aXiHat( 0, 13 ) = 1.000000; aXiHat( 1, 13 ) = -1.000000; aXiHat( 2, 13 ) = 0.000000;
69 aXiHat( 0, 14 ) = 1.000000; aXiHat( 1, 14 ) = 1.000000; aXiHat( 2, 14 ) = 0.000000;
70 aXiHat( 0, 15 ) = -1.000000; aXiHat( 1, 15 ) = 1.000000; aXiHat( 2, 15 ) = 0.000000;
72 aXiHat( 0, 16 ) = 0.000000; aXiHat( 1, 16 ) = -1.000000; aXiHat( 2, 16 ) = 1.000000;
73 aXiHat( 0, 17 ) = 1.000000; aXiHat( 1, 17 ) = 0.000000; aXiHat( 2, 17 ) = 1.000000;
74 aXiHat( 0, 18 ) = 0.000000; aXiHat( 1, 18 ) = 1.000000; aXiHat( 2, 18 ) = 1.000000;
75 aXiHat( 0, 19 ) = -1.000000; aXiHat( 1, 19 ) = 0.000000; aXiHat( 2, 19 ) = 1.000000;
77 aXiHat( 0, 20 ) = 0.000000; aXiHat( 1, 20 ) = 0.000000; aXiHat( 2, 20 ) = 0.000000;
78 aXiHat( 0, 21 ) = 0.000000; aXiHat( 1, 21 ) = 0.000000; aXiHat( 2, 21 ) = -1.000000;
79 aXiHat( 0, 22 ) = 0.000000; aXiHat( 1, 22 ) = 0.000000; aXiHat( 2, 22 ) = 1.000000;
80 aXiHat( 0, 23 ) = -1.000000; aXiHat( 1, 23 ) = 0.000000; aXiHat( 2, 23 ) = 0.000000;
81 aXiHat( 0, 24 ) = 1.000000; aXiHat( 1, 24 ) = 0.000000; aXiHat( 2, 24 ) = 0.000000;
82 aXiHat( 0, 25 ) = 0.000000; aXiHat( 1, 25 ) = -1.000000; aXiHat( 2, 25 ) = 0.000000;
83 aXiHat( 0, 26 ) = 0.000000; aXiHat( 1, 26 ) = 1.000000; aXiHat( 2, 26 ) = 0.000000;
149 const real xi = aXi( 0 );
150 const real eta = aXi( 1 );
151 const real zeta = aXi( 2 );
153 const real xi2 = xi*xi;
154 const real eta2 = eta*eta;
155 const real zeta2 = zeta*zeta;
157 const real a = 0.125*eta*zeta;
158 const real b = 0.125*xi*zeta;
159 const real c = 0.125*xi*eta;
160 const real d = -0.5*xi*eta*zeta;
164 adNdXi( 0, 0 ) = a * ( 2.0 * xi - 1.0 ) * ( eta - 1.0 ) * ( zeta - 1.0 );
165 adNdXi( 1, 0 ) = b * ( 2.0 * eta - 1.0 ) * ( xi - 1.0 ) * ( zeta - 1.0 );
166 adNdXi( 2, 0 ) = c * ( 2.0 * zeta - 1.0 ) * ( eta - 1.0 ) * ( xi - 1.0 );
168 adNdXi( 0, 1 ) = a * ( 2.0 * xi + 1.0 ) * ( eta - 1.0 ) * ( zeta - 1.0 );
169 adNdXi( 1, 1 ) = b * ( 2.0 * eta - 1.0 ) * ( xi + 1.0 ) * ( zeta - 1.0 );
170 adNdXi( 2, 1 ) = c * ( 2.0 * zeta - 1.0 ) * ( eta - 1.0 ) * ( xi + 1.0 );
172 adNdXi( 0, 2 ) = a * ( 2.0 * xi + 1.0 ) * ( eta + 1.0 ) * ( zeta - 1.0 );
173 adNdXi( 1, 2 ) = b * ( 2.0 * eta + 1.0 ) * ( xi + 1.0 ) * ( zeta - 1.0 );
174 adNdXi( 2, 2 ) = c * ( 2.0 * zeta - 1.0 ) * ( eta + 1.0 ) * ( xi + 1.0 );
176 adNdXi( 0, 3 ) = a * ( 2.0 * xi - 1.0 ) * ( eta + 1.0 ) * ( zeta - 1.0 );
177 adNdXi( 1, 3 ) = b * ( 2.0 * eta + 1.0 ) * ( xi - 1.0 ) * ( zeta - 1.0 );
178 adNdXi( 2, 3 ) = c * ( 2.0 * zeta - 1.0 ) * ( eta + 1.0 ) * ( xi - 1.0 );
180 adNdXi( 0, 4 ) = a * ( 2.0 * xi - 1.0 ) * ( eta - 1.0 ) * ( zeta + 1.0 );
181 adNdXi( 1, 4 ) = b * ( 2.0 * eta - 1.0 ) * ( xi - 1.0 ) * ( zeta + 1.0 );
182 adNdXi( 2, 4 ) = c * ( 2.0 * zeta + 1.0 ) * ( eta - 1.0 ) * ( xi - 1.0 );
184 adNdXi( 0, 5 ) = a * ( 2.0 * xi + 1.0 ) * ( eta - 1.0 ) * ( zeta + 1.0 );
185 adNdXi( 1, 5 ) = b * ( 2.0 * eta - 1.0 ) * ( xi + 1.0 ) * ( zeta + 1.0 );
186 adNdXi( 2, 5 ) = c * ( 2.0 * zeta + 1.0 ) * ( eta - 1.0 ) * ( xi + 1.0 );
188 adNdXi( 0, 6 ) = a * ( 2.0 * xi + 1.0 ) * ( eta + 1.0 ) * ( zeta + 1.0 );
189 adNdXi( 1, 6 ) = b * ( 2.0 * eta + 1.0 ) * ( xi + 1.0 ) * ( zeta + 1.0 );
190 adNdXi( 2, 6 ) = c * ( 2.0 * zeta + 1.0 ) * ( eta + 1.0 ) * ( xi + 1.0 );
192 adNdXi( 0, 7 ) = a * ( 2.0 * xi - 1.0 ) * ( eta + 1.0 ) * ( zeta + 1.0 );
193 adNdXi( 1, 7 ) = b * ( 2.0 * eta + 1.0 ) * ( xi - 1.0 ) * ( zeta + 1.0 );
194 adNdXi( 2, 7 ) = c * ( 2.0 * zeta + 1.0 ) * ( eta + 1.0 ) * ( xi - 1.0 );
196 adNdXi( 0, 8 ) = d * ( eta - 1.0 ) * ( zeta - 1.0 );
197 adNdXi( 1, 8 ) = - ( zeta * ( 2.0 * eta - 1.0 ) * ( xi2 - 1.0 ) * ( zeta - 1.0 ) ) * 0.25;
198 adNdXi( 2, 8 ) = - ( eta * ( xi2 - 1.0 ) * ( 2.0 * zeta - 1.0 ) * ( eta - 1.0 ) ) * 0.25;
200 adNdXi( 0, 9 ) = - ( zeta * ( eta2 - 1.0 ) * ( 2.0 * xi + 1.0 ) * ( zeta - 1.0 ) ) * 0.25;
201 adNdXi( 1, 9 ) = d * ( xi + 1.0 ) * ( zeta - 1.0 );
202 adNdXi( 2, 9 ) = - ( xi * ( eta2 - 1.0 ) * ( 2.0 * zeta - 1.0 ) * ( xi + 1.0 ) ) * 0.25;
204 adNdXi( 0, 10 ) = d * ( eta + 1.0 ) * ( zeta - 1.0 );
205 adNdXi( 1, 10 ) = - ( zeta * ( 2.0 * eta + 1.0 ) * ( xi2 - 1.0 ) * ( zeta - 1.0 ) ) * 0.25;
206 adNdXi( 2, 10 ) = - ( eta * ( xi2 - 1.0 ) * ( 2.0 * zeta - 1.0 ) * ( eta + 1.0 ) ) * 0.25;
208 adNdXi( 0, 11 ) = - ( zeta * ( eta2 - 1.0 ) * ( 2.0 * xi - 1.0 ) * ( zeta - 1.0 ) ) * 0.25;
209 adNdXi( 1, 11 ) = d * ( xi - 1.0 ) * ( zeta - 1.0 );
210 adNdXi( 2, 11 ) = - ( xi * ( eta2 - 1.0 ) * ( 2.0 * zeta - 1.0 ) * ( xi - 1.0 ) ) * 0.25;
212 adNdXi( 0, 12 ) = - ( eta * ( 2.0 * xi - 1.0 ) * ( zeta2 - 1.0 ) * ( eta - 1.0 ) ) * 0.25;
213 adNdXi( 1, 12 ) = - ( xi * ( 2.0 * eta - 1.0 ) * ( zeta2 - 1.0 ) * ( xi - 1.0 ) ) * 0.25;
214 adNdXi( 2, 12 ) = d * ( eta - 1.0 ) * ( xi - 1.0 );
216 adNdXi( 0, 13 ) = - ( eta * ( 2.0 * xi + 1.0 ) * ( zeta2 - 1.0 ) * ( eta - 1.0 ) ) * 0.25;
217 adNdXi( 1, 13 ) = - ( xi * ( 2.0 * eta - 1.0 ) * ( zeta2 - 1.0 ) * ( xi + 1.0 ) ) * 0.25;
218 adNdXi( 2, 13 ) = d * ( eta - 1.0 ) * ( xi + 1.0 );
220 adNdXi( 0, 14 ) = - ( eta * ( 2.0 * xi + 1.0 ) * ( zeta2 - 1.0 ) * ( eta + 1.0 ) ) * 0.25;
221 adNdXi( 1, 14 ) = - ( xi * ( 2.0 * eta + 1.0 ) * ( zeta2 - 1.0 ) * ( xi + 1.0 ) ) * 0.25;
222 adNdXi( 2, 14 ) = d * ( eta + 1.0 ) * ( xi + 1.0 );
224 adNdXi( 0, 15 ) = - ( eta * ( 2.0 * xi - 1.0 ) * ( zeta2 - 1.0 ) * ( eta + 1.0 ) ) * 0.25;
225 adNdXi( 1, 15 ) = - ( xi * ( 2.0 * eta + 1.0 ) * ( zeta2 - 1.0 ) * ( xi - 1.0 ) ) * 0.25;
226 adNdXi( 2, 15 ) = d * ( eta + 1.0 ) * ( xi - 1.0 );
228 adNdXi( 0, 16 ) = d * ( eta - 1.0 ) * ( zeta + 1.0 );
229 adNdXi( 1, 16 ) = - ( zeta * ( 2.0 * eta - 1.0 ) * ( xi2 - 1.0 ) * ( zeta + 1.0 ) ) * 0.25;
230 adNdXi( 2, 16 ) = - ( eta * ( xi2 - 1.0 ) * ( 2.0 * zeta + 1.0 ) * ( eta - 1.0 ) ) * 0.25;
232 adNdXi( 0, 17 ) = - ( zeta * ( eta2 - 1.0 ) * ( 2.0 * xi + 1.0 ) * ( zeta + 1.0 ) ) * 0.25;
233 adNdXi( 1, 17 ) = d * ( xi + 1.0 ) * ( zeta + 1.0 );
234 adNdXi( 2, 17 ) = - ( xi * ( eta2 - 1.0 ) * ( 2.0 * zeta + 1.0 ) * ( xi + 1.0 ) ) * 0.25;
236 adNdXi( 0, 18 ) = d * ( eta + 1.0 ) * ( zeta + 1.0 );
237 adNdXi( 1, 18 ) = - ( zeta * ( 2.0 * eta + 1.0 ) * ( xi2 - 1.0 ) * ( zeta + 1.0 ) ) * 0.25;
238 adNdXi( 2, 18 ) = - ( eta * ( xi2 - 1.0 ) * ( 2.0 * zeta + 1.0 ) * ( eta + 1.0 ) ) * 0.25;
240 adNdXi( 0, 19 ) = - ( zeta * ( eta2 - 1.0 ) * ( 2.0 * xi - 1.0 ) * ( zeta + 1.0 ) ) * 0.25;
241 adNdXi( 1, 19 ) = d * ( xi - 1.0 ) * ( zeta + 1.0 );
242 adNdXi( 2, 19 ) = - ( xi * ( eta2 - 1.0 ) * ( 2.0 * zeta + 1.0 ) * ( xi - 1.0 ) ) * 0.25;
244 adNdXi( 0, 20 ) = - 2.0 * xi * ( eta2 - 1.0 ) * ( zeta2 - 1.0 );
245 adNdXi( 1, 20 ) = - 2.0 * eta * ( xi2 - 1.0 ) * ( zeta2 - 1.0 );
246 adNdXi( 2, 20 ) = - 2.0 * zeta * ( eta2 - 1.0 ) * ( xi2 - 1.0 );
248 adNdXi( 0, 21 ) = 8.0 * b * ( eta2 - 1.0 ) * ( zeta - 1.0 );
249 adNdXi( 1, 21 ) = 8.0 * a * ( xi2 - 1.0 ) * ( zeta - 1.0 );
250 adNdXi( 2, 21 ) = ( ( eta2 - 1.0 ) * ( xi2 - 1.0 ) * ( 2.0 * zeta - 1.0 ) ) * 0.5;
252 adNdXi( 0, 22 ) = 8.0 * b * ( eta2 - 1.0 ) * ( zeta + 1.0 );
253 adNdXi( 1, 22 ) = 8.0 * a * ( xi2 - 1.0 ) * ( zeta + 1.0 );
254 adNdXi( 2, 22 ) = ( ( eta2 - 1.0 ) * ( xi2 - 1.0 ) * ( 2.0 * zeta + 1.0 ) ) * 0.5;
256 adNdXi( 0, 23 ) =( ( eta2 - 1.0 ) * ( 2.0 * xi - 1.0 ) * ( zeta2 - 1.0 ) ) * 0.5;
257 adNdXi( 1, 23 ) = 8.0 * c * ( zeta2 - 1.0 ) * ( xi - 1.0 );
258 adNdXi( 2, 23 ) = 8.0 * b * ( eta2 - 1.0 ) * ( xi - 1.0 );
260 adNdXi( 0, 24 ) =( ( eta2 - 1.0 ) * ( 2.0 * xi + 1.0 ) * ( zeta2 - 1.0 ) ) * 0.5;
261 adNdXi( 1, 24 ) = 8.0 * c * ( zeta2 - 1.0 ) * ( xi + 1.0 );
262 adNdXi( 2, 24 ) = 8.0 * b * ( eta2 - 1.0 ) * ( xi + 1.0 );
264 adNdXi( 0, 25 ) = 8.0 * c * ( zeta2 - 1.0 ) * ( eta - 1.0 );
265 adNdXi( 1, 25 ) = ( ( 2.0 * eta - 1.0 ) * ( xi2 - 1.0 ) * ( zeta2 - 1.0 ) ) * 0.5;
266 adNdXi( 2, 25 ) = 8.0 * a * ( xi2 - 1.0 ) * ( eta - 1.0 );
268 adNdXi( 0, 26 ) = 8.0 * c * ( zeta2 - 1.0 ) * ( eta + 1.0 );
269 adNdXi( 1, 26 ) = ( ( 2.0 * eta + 1.0 ) * ( xi2 - 1.0 ) * ( zeta2 - 1.0 ) ) * 0.5;
270 adNdXi( 2, 26 ) = 8.0 * a * ( xi2 - 1.0 ) * ( eta + 1.0 );
282 const real xi = aXi( 0 );
283 const real eta = aXi( 1 );
284 const real zeta = aXi( 2 );
286 const real xi2 = xi*xi;
287 const real eta2 = eta*eta;
288 const real zeta2 = zeta*zeta;
290 const real a = eta * zeta;
291 const real b = xi * zeta;
292 const real c = xi * eta;
293 const real d = 2.0 * xi* eta * zeta;
297 ad2NdXi2( 0, 0 ) = ( a * ( eta - 1.0 ) * ( zeta - 1.0 ) ) * 0.25;
298 ad2NdXi2( 1, 0 ) = ( b * ( xi - 1.0 ) * ( zeta - 1.0 ) ) * 0.25;
299 ad2NdXi2( 2, 0 ) = ( c * ( eta - 1.0 ) * ( xi - 1.0 ) ) * 0.25;
300 ad2NdXi2( 3, 0 ) = ( xi * ( 2.0 * eta - 1.0 ) * ( 2.0 * zeta - 1.0 ) * ( xi - 1.0 ) ) * 0.125;
301 ad2NdXi2( 4, 0 ) = ( eta * ( 2.0 * xi - 1.0 ) * ( 2.0 * zeta - 1.0 ) * ( eta - 1.0 ) ) * 0.125;
302 ad2NdXi2( 5, 0 ) = ( zeta * ( 2.0 * eta - 1.0 ) * ( 2.0 * xi - 1.0 ) * ( zeta - 1.0 ) ) * 0.125;
304 ad2NdXi2( 0, 1 ) = ( a * ( eta - 1.0 ) * ( zeta - 1.0 ) ) * 0.25;
305 ad2NdXi2( 1, 1 ) = ( b * ( xi + 1.0 ) * ( zeta - 1.0 ) ) * 0.25;
306 ad2NdXi2( 2, 1 ) = ( c * ( eta - 1.0 ) * ( xi + 1.0 ) ) * 0.25;
307 ad2NdXi2( 3, 1 ) = ( xi * ( 2.0 * eta - 1.0 ) * ( 2.0 * zeta - 1.0 ) * ( xi + 1.0 ) ) * 0.125;
308 ad2NdXi2( 4, 1 ) = ( eta * ( 2.0 * xi + 1.0 ) * ( 2.0 * zeta - 1.0 ) * ( eta - 1.0 ) ) * 0.125;
309 ad2NdXi2( 5, 1 ) = ( zeta * ( 2.0 * eta - 1.0 ) * ( 2.0 * xi + 1.0 ) * ( zeta - 1.0 ) ) * 0.125;
311 ad2NdXi2( 0, 2 ) = ( a * ( eta + 1.0 ) * ( zeta - 1.0 ) ) * 0.25;
312 ad2NdXi2( 1, 2 ) = ( b * ( xi + 1.0 ) * ( zeta - 1.0 ) ) * 0.25;
313 ad2NdXi2( 2, 2 ) = ( c * ( eta + 1.0 ) * ( xi + 1.0 ) ) * 0.25;
314 ad2NdXi2( 3, 2 ) = ( xi * ( 2.0 * eta + 1.0 ) * ( 2.0 * zeta - 1.0 ) * ( xi + 1.0 ) ) * 0.125;
315 ad2NdXi2( 4, 2 ) = ( eta * ( 2.0 * xi + 1.0 ) * ( 2.0 * zeta - 1.0 ) * ( eta + 1.0 ) ) * 0.125;
316 ad2NdXi2( 5, 2 ) = ( zeta * ( 2.0 * eta + 1.0 ) * ( 2.0 * xi + 1.0 ) * ( zeta - 1.0 ) ) * 0.125;
318 ad2NdXi2( 0, 3 ) = ( a * ( eta + 1.0 ) * ( zeta - 1.0 ) ) * 0.25;
319 ad2NdXi2( 1, 3 ) = ( b * ( xi - 1.0 ) * ( zeta - 1.0 ) ) * 0.25;
320 ad2NdXi2( 2, 3 ) = ( c * ( eta + 1.0 ) * ( xi - 1.0 ) ) * 0.25;
321 ad2NdXi2( 3, 3 ) = ( xi * ( 2.0 * eta + 1.0 ) * ( 2.0 * zeta - 1.0 ) * ( xi - 1.0 ) ) * 0.125;
322 ad2NdXi2( 4, 3 ) = ( eta * ( 2.0 * xi - 1.0 ) * ( 2.0 * zeta - 1.0 ) * ( eta + 1.0 ) ) * 0.125;
323 ad2NdXi2( 5, 3 ) = ( zeta * ( 2.0 * eta + 1.0 ) * ( 2.0 * xi - 1.0 ) * ( zeta - 1.0 ) ) * 0.125;
325 ad2NdXi2( 0, 4 ) = ( a * ( eta - 1.0 ) * ( zeta + 1.0 ) ) * 0.25;
326 ad2NdXi2( 1, 4 ) = ( b * ( xi - 1.0 ) * ( zeta + 1.0 ) ) * 0.25;
327 ad2NdXi2( 2, 4 ) = ( c * ( eta - 1.0 ) * ( xi - 1.0 ) ) * 0.25;
328 ad2NdXi2( 3, 4 ) = ( xi * ( 2.0 * eta - 1.0 ) * ( 2.0 * zeta + 1.0 ) * ( xi - 1.0 ) ) * 0.125;
329 ad2NdXi2( 4, 4 ) = ( eta * ( 2.0 * xi - 1.0 ) * ( 2.0 * zeta + 1.0 ) * ( eta - 1.0 ) ) * 0.125;
330 ad2NdXi2( 5, 4 ) = ( zeta * ( 2.0 * eta - 1.0 ) * ( 2.0 * xi - 1.0 ) * ( zeta + 1.0 ) ) * 0.125;
332 ad2NdXi2( 0, 5 ) = ( a * ( eta - 1.0 ) * ( zeta + 1.0 ) ) * 0.25;
333 ad2NdXi2( 1, 5 ) = ( b * ( xi + 1.0 ) * ( zeta + 1.0 ) ) * 0.25;
334 ad2NdXi2( 2, 5 ) = ( c * ( eta - 1.0 ) * ( xi + 1.0 ) ) * 0.25;
335 ad2NdXi2( 3, 5 ) = ( xi * ( 2.0 * eta - 1.0 ) * ( 2.0 * zeta + 1.0 ) * ( xi + 1.0 ) ) * 0.125;
336 ad2NdXi2( 4, 5 ) = ( eta * ( 2.0 * xi + 1.0 ) * ( 2.0 * zeta + 1.0 ) * ( eta - 1.0 ) ) * 0.125;
337 ad2NdXi2( 5, 5 ) = ( zeta * ( 2.0 * eta - 1.0 ) * ( 2.0 * xi + 1.0 ) * ( zeta + 1.0 ) ) * 0.125;
339 ad2NdXi2( 0, 6 ) = ( a * ( eta + 1.0 ) * ( zeta + 1.0 ) ) * 0.25;
340 ad2NdXi2( 1, 6 ) = ( b * ( xi + 1.0 ) * ( zeta + 1.0 ) ) * 0.25;
341 ad2NdXi2( 2, 6 ) = ( c * ( eta + 1.0 ) * ( xi + 1.0 ) ) * 0.25;
342 ad2NdXi2( 3, 6 ) = ( xi * ( 2.0 * eta + 1.0 ) * ( 2.0 * zeta + 1.0 ) * ( xi + 1.0 ) ) * 0.125;
343 ad2NdXi2( 4, 6 ) = ( eta * ( 2.0 * xi + 1.0 ) * ( 2.0 * zeta + 1.0 ) * ( eta + 1.0 ) ) * 0.125;
344 ad2NdXi2( 5, 6 ) = ( zeta * ( 2.0 * eta + 1.0 ) * ( 2.0 * xi + 1.0 ) * ( zeta + 1.0 ) ) * 0.125;
346 ad2NdXi2( 0, 7 ) = ( a * ( eta + 1.0 ) * ( zeta + 1.0 ) ) * 0.25;
347 ad2NdXi2( 1, 7 ) = ( b * ( xi - 1.0 ) * ( zeta + 1.0 ) ) * 0.25;
348 ad2NdXi2( 2, 7 ) = ( c * ( eta + 1.0 ) * ( xi - 1.0 ) ) * 0.25;
349 ad2NdXi2( 3, 7 ) = ( xi * ( 2.0 * eta + 1.0 ) * ( 2.0 * zeta + 1.0 ) * ( xi - 1.0 ) ) * 0.125;
350 ad2NdXi2( 4, 7 ) = ( eta * ( 2.0 * xi - 1.0 ) * ( 2.0 * zeta + 1.0 ) * ( eta + 1.0 ) ) * 0.125;
351 ad2NdXi2( 5, 7 ) = ( zeta * ( 2.0 * eta + 1.0 ) * ( 2.0 * xi - 1.0 ) * ( zeta + 1.0 ) ) * 0.125;
353 ad2NdXi2( 0, 8 ) = - ( a * ( eta - 1.0 ) * ( zeta - 1.0 ) ) * 0.5;
354 ad2NdXi2( 1, 8 ) = - ( zeta * ( xi2 - 1.0 ) * ( zeta - 1.0 ) ) * 0.5;
355 ad2NdXi2( 2, 8 ) = - ( eta * ( xi2 - 1.0 ) * ( eta - 1.0 ) ) * 0.5;
356 ad2NdXi2( 3, 8 ) = - ( ( 2.0 * eta - 1.0 ) * ( xi2 - 1.0 ) * ( 2.0 * zeta - 1.0 ) ) * 0.25;
357 ad2NdXi2( 4, 8 ) = - ( c * ( 2.0 * zeta - 1.0 ) * ( eta - 1.0 ) ) * 0.5;
358 ad2NdXi2( 5, 8 ) = - ( b * ( 2.0 * eta - 1.0 ) * ( zeta - 1.0 ) ) * 0.5;
360 ad2NdXi2( 0, 9 ) = - ( zeta * ( eta2 - 1.0 ) * ( zeta - 1.0 ) ) * 0.5;
361 ad2NdXi2( 1, 9 ) = - ( b * ( xi + 1.0 ) * ( zeta - 1.0 ) ) * 0.5;
362 ad2NdXi2( 2, 9 ) = - ( xi * ( eta2 - 1.0 ) * ( xi + 1.0 ) ) * 0.5;
363 ad2NdXi2( 3, 9 ) = - ( c * ( 2.0 * zeta - 1.0 ) * ( xi + 1.0 ) ) * 0.5;
364 ad2NdXi2( 4, 9 ) = - ( ( eta2 - 1.0 ) * ( 2.0 * xi + 1.0 ) * ( 2.0 * zeta - 1.0 ) ) * 0.25;
365 ad2NdXi2( 5, 9 ) = - ( a * ( 2.0 * xi + 1.0 ) * ( zeta - 1.0 ) ) * 0.5;
367 ad2NdXi2( 0, 10 ) = - ( a * ( eta + 1.0 ) * ( zeta - 1.0 ) ) * 0.5;
368 ad2NdXi2( 1, 10 ) = - ( zeta * ( xi2 - 1.0 ) * ( zeta - 1.0 ) ) * 0.5;
369 ad2NdXi2( 2, 10 ) = - ( eta * ( xi2 - 1.0 ) * ( eta + 1.0 ) ) * 0.5;
370 ad2NdXi2( 3, 10 ) = - ( ( 2.0 * eta + 1.0 ) * ( xi2 - 1.0 ) * ( 2.0 * zeta - 1.0 ) ) * 0.25;
371 ad2NdXi2( 4, 10 ) = - ( c * ( 2.0 * zeta - 1.0 ) * ( eta + 1.0 ) ) * 0.5;
372 ad2NdXi2( 5, 10 ) = - ( b * ( 2.0 * eta + 1.0 ) * ( zeta - 1.0 ) ) * 0.5;
374 ad2NdXi2( 0, 11 ) = - ( zeta * ( eta2 - 1.0 ) * ( zeta - 1.0 ) ) * 0.5;
375 ad2NdXi2( 1, 11 ) = - ( b * ( xi - 1.0 ) * ( zeta - 1.0 ) ) * 0.5;
376 ad2NdXi2( 2, 11 ) = - ( xi * ( eta2 - 1.0 ) * ( xi - 1.0 ) ) * 0.5;
377 ad2NdXi2( 3, 11 ) = - ( c * ( 2.0 * zeta - 1.0 ) * ( xi - 1.0 ) ) * 0.5;
378 ad2NdXi2( 4, 11 ) = - ( ( eta2 - 1.0 ) * ( 2.0 * xi - 1.0 ) * ( 2.0 * zeta - 1.0 ) ) * 0.25;
379 ad2NdXi2( 5, 11 ) = - ( a * ( 2.0 * xi - 1.0 ) * ( zeta - 1.0 ) ) * 0.5;
381 ad2NdXi2( 0, 12 ) = - ( eta * ( zeta2 - 1.0 ) * ( eta - 1.0 ) ) * 0.5;
382 ad2NdXi2( 1, 12 ) = - ( xi * ( zeta2 - 1.0 ) * ( xi - 1.0 ) ) * 0.5;
383 ad2NdXi2( 2, 12 ) = - ( c * ( eta - 1.0 ) * ( xi - 1.0 ) ) * 0.5;
384 ad2NdXi2( 3, 12 ) = - ( b * ( 2.0 * eta - 1.0 ) * ( xi - 1.0 ) ) * 0.5;
385 ad2NdXi2( 4, 12 ) = - ( a * ( 2.0 * xi - 1.0 ) * ( eta - 1.0 ) ) * 0.5;
386 ad2NdXi2( 5, 12 ) = - ( ( 2.0 * eta - 1.0 ) * ( 2.0 * xi - 1.0 ) * ( zeta2 - 1.0 ) ) * 0.25;
388 ad2NdXi2( 0, 13 ) = - ( eta * ( zeta2 - 1.0 ) * ( eta - 1.0 ) ) * 0.5;
389 ad2NdXi2( 1, 13 ) = - ( xi * ( zeta2 - 1.0 ) * ( xi + 1.0 ) ) * 0.5;
390 ad2NdXi2( 2, 13 ) = - ( c * ( eta - 1.0 ) * ( xi + 1.0 ) ) * 0.5;
391 ad2NdXi2( 3, 13 ) = - ( b * ( 2.0 * eta - 1.0 ) * ( xi + 1.0 ) ) * 0.5;
392 ad2NdXi2( 4, 13 ) = - ( a * ( 2.0 * xi + 1.0 ) * ( eta - 1.0 ) ) * 0.5;
393 ad2NdXi2( 5, 13 ) = - ( ( 2.0 * eta - 1.0 ) * ( 2.0 * xi + 1.0 ) * ( zeta2 - 1.0 ) ) * 0.25;
395 ad2NdXi2( 0, 14 ) = - ( eta * ( zeta2 - 1.0 ) * ( eta + 1.0 ) ) * 0.5;
396 ad2NdXi2( 1, 14 ) = - ( xi * ( zeta2 - 1.0 ) * ( xi + 1.0 ) ) * 0.5;
397 ad2NdXi2( 2, 14 ) = - ( c * ( eta + 1.0 ) * ( xi + 1.0 ) ) * 0.5;
398 ad2NdXi2( 3, 14 ) = - ( b * ( 2.0 * eta + 1.0 ) * ( xi + 1.0 ) ) * 0.5;
399 ad2NdXi2( 4, 14 ) = - ( a * ( 2.0 * xi + 1.0 ) * ( eta + 1.0 ) ) * 0.5;
400 ad2NdXi2( 5, 14 ) = - ( ( 2.0 * eta + 1.0 ) * ( 2.0 * xi + 1.0 ) * ( zeta2 - 1.0 ) ) * 0.25;
402 ad2NdXi2( 0, 15 ) = - ( eta * ( zeta2 - 1.0 ) * ( eta + 1.0 ) ) * 0.5;
403 ad2NdXi2( 1, 15 ) = - ( xi * ( zeta2 - 1.0 ) * ( xi - 1.0 ) ) * 0.5;
404 ad2NdXi2( 2, 15 ) = - ( c * ( eta + 1.0 ) * ( xi - 1.0 ) ) * 0.5;
405 ad2NdXi2( 3, 15 ) = - ( b * ( 2.0 * eta + 1.0 ) * ( xi - 1.0 ) ) * 0.5;
406 ad2NdXi2( 4, 15 ) = - ( a * ( 2.0 * xi - 1.0 ) * ( eta + 1.0 ) ) * 0.5;
407 ad2NdXi2( 5, 15 ) = - ( ( 2.0 * eta + 1.0 ) * ( 2.0 * xi - 1.0 ) * ( zeta2 - 1.0 ) ) * 0.25;
409 ad2NdXi2( 0, 16 ) = - ( a * ( eta - 1.0 ) * ( zeta + 1.0 ) ) * 0.5;
410 ad2NdXi2( 1, 16 ) = - ( zeta * ( xi2 - 1.0 ) * ( zeta + 1.0 ) ) * 0.5;
411 ad2NdXi2( 2, 16 ) = - ( eta * ( xi2 - 1.0 ) * ( eta - 1.0 ) ) * 0.5;
412 ad2NdXi2( 3, 16 ) = - ( ( 2.0 * eta - 1.0 ) * ( xi2 - 1.0 ) * ( 2.0 * zeta + 1.0 ) ) * 0.25;
413 ad2NdXi2( 4, 16 ) = - ( c * ( 2.0 * zeta + 1.0 ) * ( eta - 1.0 ) ) * 0.5;
414 ad2NdXi2( 5, 16 ) = - ( b * ( 2.0 * eta - 1.0 ) * ( zeta + 1.0 ) ) * 0.5;
416 ad2NdXi2( 0, 17 ) = - ( zeta * ( eta2 - 1.0 ) * ( zeta + 1.0 ) ) * 0.5;
417 ad2NdXi2( 1, 17 ) = - ( b * ( xi + 1.0 ) * ( zeta + 1.0 ) ) * 0.5;
418 ad2NdXi2( 2, 17 ) = - ( xi * ( eta2 - 1.0 ) * ( xi + 1.0 ) ) * 0.5;
419 ad2NdXi2( 3, 17 ) = - ( c * ( 2.0 * zeta + 1.0 ) * ( xi + 1.0 ) ) * 0.5;
420 ad2NdXi2( 4, 17 ) = - ( ( eta2 - 1.0 ) * ( 2.0 * xi + 1.0 ) * ( 2.0 * zeta + 1.0 ) ) * 0.25;
421 ad2NdXi2( 5, 17 ) = - ( a * ( 2.0 * xi + 1.0 ) * ( zeta + 1.0 ) ) * 0.5;
423 ad2NdXi2( 0, 18 ) = - ( a * ( eta + 1.0 ) * ( zeta + 1.0 ) ) * 0.5;
424 ad2NdXi2( 1, 18 ) = - ( zeta * ( xi2 - 1.0 ) * ( zeta + 1.0 ) ) * 0.5;
425 ad2NdXi2( 2, 18 ) = - ( eta * ( xi2 - 1.0 ) * ( eta + 1.0 ) ) * 0.5;
426 ad2NdXi2( 3, 18 ) = - ( ( 2.0 * eta + 1.0 ) * ( xi2 - 1.0 ) * ( 2.0 * zeta + 1.0 ) ) * 0.25;
427 ad2NdXi2( 4, 18 ) = - ( c * ( 2.0 * zeta + 1.0 ) * ( eta + 1.0 ) ) * 0.5;
428 ad2NdXi2( 5, 18 ) = - ( b * ( 2.0 * eta + 1.0 ) * ( zeta + 1.0 ) ) * 0.5;
430 ad2NdXi2( 0, 19 ) = - ( zeta * ( eta2 - 1.0 ) * ( zeta + 1.0 ) ) * 0.5;
431 ad2NdXi2( 1, 19 ) = - ( b * ( xi - 1.0 ) * ( zeta + 1.0 ) ) * 0.5;
432 ad2NdXi2( 2, 19 ) = - ( xi * ( eta2 - 1.0 ) * ( xi - 1.0 ) ) * 0.5;
433 ad2NdXi2( 3, 19 ) = - ( c * ( 2.0 * zeta + 1.0 ) * ( xi - 1.0 ) ) * 0.5;
434 ad2NdXi2( 4, 19 ) = - ( ( eta2 - 1.0 ) * ( 2.0 * xi - 1.0 ) * ( 2.0 * zeta + 1.0 ) ) * 0.25;
435 ad2NdXi2( 5, 19 ) = - ( a * ( 2.0 * xi - 1.0 ) * ( zeta + 1.0 ) ) * 0.5;
437 ad2NdXi2( 0, 20 ) = - 2.0 * ( eta2 - 1.0 ) * ( zeta2 - 1.0 );
438 ad2NdXi2( 1, 20 ) = - 2.0 * ( xi2 - 1.0 ) * ( zeta2 - 1.0 );
439 ad2NdXi2( 2, 20 ) = - 2.0 * ( eta2 - 1.0 ) * ( xi2 - 1.0 );
440 ad2NdXi2( 3, 20 ) = - 4.0 * a * ( xi2 - 1.0 );
441 ad2NdXi2( 4, 20 ) = - 4.0 * b * ( eta2 - 1.0 );
442 ad2NdXi2( 5, 20 ) = - 4.0 * c * ( zeta2 - 1.0 );
444 ad2NdXi2( 0, 21 ) = zeta * ( eta2 - 1.0 ) * ( zeta - 1.0 );
445 ad2NdXi2( 1, 21 ) = zeta * ( xi2 - 1.0 ) * ( zeta - 1.0 );
446 ad2NdXi2( 2, 21 ) = ( eta2 - 1.0 ) * ( xi2 - 1.0 );
447 ad2NdXi2( 3, 21 ) = eta * ( xi2 - 1.0 ) * ( 2.0 * zeta - 1.0 );
448 ad2NdXi2( 4, 21 ) = xi * ( eta2 - 1.0 ) * ( 2.0 * zeta - 1.0 );
449 ad2NdXi2( 5, 21 ) = d * ( zeta - 1.0 );
451 ad2NdXi2( 0, 22 ) = zeta * ( eta2 - 1.0 ) * ( zeta + 1.0 );
452 ad2NdXi2( 1, 22 ) = zeta * ( xi2 - 1.0 ) * ( zeta + 1.0 );
453 ad2NdXi2( 2, 22 ) = ( eta2 - 1.0 ) * ( xi2 - 1.0 );
454 ad2NdXi2( 3, 22 ) = eta * ( xi2 - 1.0 ) * ( 2.0 * zeta + 1.0 );
455 ad2NdXi2( 4, 22 ) = xi * ( eta2 - 1.0 ) * ( 2.0 * zeta + 1.0 );
456 ad2NdXi2( 5, 22 ) = d * ( zeta + 1.0 );
458 ad2NdXi2( 0, 23 ) = ( eta2 - 1.0 ) * ( zeta2 - 1.0 );
459 ad2NdXi2( 1, 23 ) = xi * ( zeta2 - 1.0 ) * ( xi - 1.0 );
460 ad2NdXi2( 2, 23 ) = xi * ( eta2 - 1.0 ) * ( xi - 1.0 );
461 ad2NdXi2( 3, 23 ) = d * ( xi - 1.0 );
462 ad2NdXi2( 4, 23 ) = zeta * ( eta2 - 1.0 ) * ( 2.0 * xi - 1.0 );
463 ad2NdXi2( 5, 23 ) = eta * ( 2.0 * xi - 1.0 ) * ( zeta2 - 1.0 );
465 ad2NdXi2( 0, 24 ) = ( eta2 - 1.0 ) * ( zeta2 - 1.0 );
466 ad2NdXi2( 1, 24 ) = xi * ( zeta2 - 1.0 ) * ( xi + 1.0 );
467 ad2NdXi2( 2, 24 ) = xi * ( eta2 - 1.0 ) * ( xi + 1.0 );
468 ad2NdXi2( 3, 24 ) = d * ( xi + 1.0 );
469 ad2NdXi2( 4, 24 ) = zeta * ( eta2 - 1.0 ) * ( 2.0 * xi + 1.0 );
470 ad2NdXi2( 5, 24 ) = eta * ( 2.0 * xi + 1.0 ) * ( zeta2 - 1.0 );
472 ad2NdXi2( 0, 25 ) = eta * ( zeta2 - 1.0 ) * ( eta - 1.0 );
473 ad2NdXi2( 1, 25 ) = ( xi2 - 1.0 ) * ( zeta2 - 1.0 );
474 ad2NdXi2( 2, 25 ) = eta * ( xi2 - 1.0 ) * ( eta - 1.0 );
475 ad2NdXi2( 3, 25 ) = zeta * ( 2.0 * eta - 1.0 ) * ( xi2 - 1.0 );
476 ad2NdXi2( 4, 25 ) = d * ( eta - 1.0 );
477 ad2NdXi2( 5, 25 ) = xi * ( 2.0 * eta - 1.0 ) * ( zeta2 - 1.0 );
479 ad2NdXi2( 0, 26 ) = eta * ( zeta2 - 1.0 ) * ( eta + 1.0 );
480 ad2NdXi2( 1, 26 ) = ( xi2 - 1.0 ) * ( zeta2 - 1.0 );
481 ad2NdXi2( 2, 26 ) = eta * ( xi2 - 1.0 ) * ( eta + 1.0 );
482 ad2NdXi2( 3, 26 ) = zeta * ( 2.0 * eta + 1.0 ) * ( xi2 - 1.0 );
483 ad2NdXi2( 4, 26 ) = d * ( eta + 1.0 );
484 ad2NdXi2( 5, 26 ) = xi * ( 2.0 * eta + 1.0 ) * ( zeta2 - 1.0 );