20 #include "libmesh/cell_hex20.h" 21 #include "libmesh/edge_edge3.h" 22 #include "libmesh/face_quad8.h" 23 #include "libmesh/enum_io_package.h" 24 #include "libmesh/enum_order.h" 39 {0, 3, 2, 1, 11, 10, 9, 8},
40 {0, 1, 5, 4, 8, 13, 16, 12},
41 {1, 2, 6, 5, 9, 14, 17, 13},
42 {2, 3, 7, 6, 10, 15, 18, 14},
43 {3, 0, 4, 7, 11, 12, 19, 15},
44 {4, 5, 6, 7, 16, 17, 18, 19}
86 const unsigned int s)
const 88 libmesh_assert_less (s,
n_sides());
97 libmesh_assert_less(s,
n_sides());
101 std::vector<unsigned>
104 libmesh_assert_less(e,
n_edges());
109 const unsigned int e)
const 111 libmesh_assert_less (e,
n_edges());
166 return this->simple_build_side_ptr<Quad8, Hex20>(i);
172 const unsigned int i)
174 this->simple_build_side_ptr<Hex20>(side, i,
QUAD8);
180 unsigned int side_node)
const 182 libmesh_assert_less (side, this->
n_sides());
191 unsigned int edge_node)
const 193 libmesh_assert_less (edge, this->
n_edges());
203 return this->simple_build_edge_ptr<Edge3,Hex20>(i);
210 this->simple_build_edge_ptr<Hex20>(edge, i,
EDGE3);
217 std::vector<dof_id_type> & conn)
const 244 libmesh_error_msg(
"Unknown sc = " << sc);
277 libmesh_error_msg(
"Unknown sc = " << sc);
282 libmesh_error_msg(
"Unsupported IO package " << iop);
290 const unsigned int v)
const 292 libmesh_assert_greater_equal (n, this->
n_vertices());
293 libmesh_assert_less (n, this->
n_nodes());
294 libmesh_assert_less (v, 2);
305 std::pair<unsigned short int, unsigned short int>
308 libmesh_assert_greater_equal (n, this->
n_vertices());
309 libmesh_assert_less (n, this->
n_nodes());
315 return std::pair<unsigned short int, unsigned short int>
343 x0/8 - x1/8 - x11/4 - x12/4 + x13/4 + x14/4 - x15/4 + x17/4 - x19/4 - x2/8 + x3/8 + x4/8 - x5/8 - x6/8 + x7/8 + x9/4,
344 x11/4 + x17/4 - x19/4 - x9/4,
345 -x0/8 + x1/8 + x12/4 - x13/4 - x14/4 + x15/4 + x2/8 - x3/8 - x4/8 + x5/8 + x6/8 - x7/8,
346 x12/4 - x13/4 + x14/4 - x15/4,
347 -x0/8 + x1/8 - x2/8 + x3/8 + x4/8 - x5/8 + x6/8 - x7/8,
348 x0/8 - x1/8 - x12/4 + x13/4 - x14/4 + x15/4 + x2/8 - x3/8 + x4/8 - x5/8 + x6/8 - x7/8,
349 -x0/8 + x1/8 + x11/4 - x17/4 + x19/4 + x2/8 - x3/8 - x4/8 + x5/8 + x6/8 - x7/8 - x9/4,
350 x0/8 - x1/8 - x11/4 - x17/4 + x19/4 - x2/8 + x3/8 - x4/8 + x5/8 + x6/8 - x7/8 + x9/4,
351 x0/4 + x1/4 - x10/2 - x16/2 - x18/2 + x2/4 + x3/4 + x4/4 + x5/4 + x6/4 + x7/4 - x8/2,
352 -x0/4 - x1/4 + x10/2 - x16/2 - x18/2 - x2/4 - x3/4 + x4/4 + x5/4 + x6/4 + x7/4 + x8/2,
354 -x0/4 - x1/4 - x10/2 + x16/2 - x18/2 + x2/4 + x3/4 - x4/4 - x5/4 + x6/4 + x7/4 + x8/2,
355 x0/4 + x1/4 + x10/2 + x16/2 - x18/2 - x2/4 - x3/4 - x4/4 - x5/4 + x6/4 + x7/4 - x8/2,
368 x0/8 + x1/8 + x10/4 - x12/4 - x13/4 + x14/4 + x15/4 - x16/4 + x18/4 - x2/8 - x3/8 + x4/8 + x5/8 - x6/8 - x7/8 - x8/4,
369 -x10/4 - x16/4 + x18/4 + x8/4,
370 -x0/8 - x1/8 + x12/4 + x13/4 - x14/4 - x15/4 + x2/8 + x3/8 - x4/8 - x5/8 + x6/8 + x7/8,
371 x0/4 + x1/4 - x11/2 - x17/2 - x19/2 + x2/4 + x3/4 + x4/4 + x5/4 + x6/4 + x7/4 - x9/2,
372 -x0/4 - x1/4 + x11/2 - x17/2 - x19/2 - x2/4 - x3/4 + x4/4 + x5/4 + x6/4 + x7/4 + x9/2,
376 x12/4 - x13/4 + x14/4 - x15/4,
377 -x0/8 + x1/8 - x2/8 + x3/8 + x4/8 - x5/8 + x6/8 - x7/8,
378 x0/8 - x1/8 - x12/4 + x13/4 - x14/4 + x15/4 + x2/8 - x3/8 + x4/8 - x5/8 + x6/8 - x7/8,
379 -x0/4 + x1/4 + x11/2 - x17/2 + x19/2 + x2/4 - x3/4 - x4/4 + x5/4 + x6/4 - x7/4 - x9/2,
380 x0/4 - x1/4 - x11/2 - x17/2 + x19/2 - x2/4 + x3/4 - x4/4 + x5/4 + x6/4 - x7/4 + x9/2,
382 -x0/8 - x1/8 - x10/4 + x16/4 - x18/4 + x2/8 + x3/8 - x4/8 - x5/8 + x6/8 + x7/8 + x8/4,
383 x0/8 + x1/8 + x10/4 + x16/4 - x18/4 - x2/8 - x3/8 - x4/8 - x5/8 + x6/8 + x7/8 - x8/4,
393 x0/8 + x1/8 - x10/4 - x11/4 + x16/4 + x17/4 + x18/4 + x19/4 + x2/8 + x3/8 - x4/8 - x5/8 - x6/8 - x7/8 - x8/4 - x9/4,
394 x0/4 + x1/4 - x12/2 - x13/2 - x14/2 - x15/2 + x2/4 + x3/4 + x4/4 + x5/4 + x6/4 + x7/4,
396 -x10/4 - x16/4 + x18/4 + x8/4,
397 -x0/4 - x1/4 + x12/2 + x13/2 - x14/2 - x15/2 + x2/4 + x3/4 - x4/4 - x5/4 + x6/4 + x7/4,
399 -x0/8 - x1/8 + x11/4 - x17/4 - x19/4 - x2/8 - x3/8 + x4/8 + x5/8 + x6/8 + x7/8 + x9/4,
401 x11/4 + x17/4 - x19/4 - x9/4,
402 -x0/4 + x1/4 + x12/2 - x13/2 - x14/2 + x15/2 + x2/4 - x3/4 - x4/4 + x5/4 + x6/4 - x7/4,
404 -x0/8 + x1/8 - x2/8 + x3/8 + x4/8 - x5/8 + x6/8 - x7/8,
405 x0/4 - x1/4 - x12/2 + x13/2 - x14/2 + x15/2 + x2/4 - x3/4 + x4/4 - x5/4 + x6/4 - x7/4,
406 x0/8 - x1/8 - x11/4 - x17/4 + x19/4 - x2/8 + x3/8 - x4/8 + x5/8 + x6/8 - x7/8 + x9/4,
407 -x0/8 - x1/8 + x10/4 - x16/4 - x18/4 - x2/8 - x3/8 + x4/8 + x5/8 + x6/8 + x7/8 + x8/4,
409 x0/8 + x1/8 + x10/4 + x16/4 - x18/4 - x2/8 - x3/8 - x4/8 - x5/8 + x6/8 + x7/8 - x8/4,
413 static const int exponents[17][3] =
437 const Real w[N] = {5./9, 8./9, 5./9};
445 { 1., -std::sqrt(15)/5., 15./25},
447 { 1., std::sqrt(15)/5., 15./25}
452 for (
int i=0; i<N; ++i)
453 for (
int j=0; j<N; ++j)
454 for (
int k=0; k<N; ++k)
457 Point dx_dxi_q, dx_deta_q, dx_dzeta_q;
458 for (
int c=0; c<17; ++c)
461 q[i][exponents[c][0]] *
462 q[j][exponents[c][1]] *
463 q[k][exponents[c][2]];
465 dx_dxi_q += coeff * dx_dxi[c];
466 dx_deta_q += coeff * dx_deta[c];
467 dx_dzeta_q += coeff * dx_dzeta[c];
471 vol += w[i] * w[j] * w[k] *
triple_product(dx_dxi_q, dx_deta_q, dx_dzeta_q);
480 #ifdef LIBMESH_ENABLE_AMR 487 { 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
488 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
489 { -0.250000, -0.250000, -0.250000, -0.250000, 0.00000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.500000, 0.500000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
490 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
491 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
492 { -0.250000, -0.250000, 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000 },
493 { -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000 },
494 { -0.250000, 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, -0.250000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000, 0.500000 },
495 { 0.375000, -0.125000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
496 { -0.187500, -0.187500, -0.187500, -0.187500, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.375000, 0.250000, 0.375000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
497 { -0.187500, -0.187500, -0.187500, -0.187500, 0.00000, 0.00000, 0.00000, 0.00000, 0.375000, 0.250000, 0.375000, 0.750000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
498 { 0.375000, 0.00000, 0.00000, -0.125000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
499 { 0.375000, 0.00000, 0.00000, 0.00000, -0.125000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
500 { -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.375000, 0.375000, 0.00000, 0.00000, 0.250000, 0.00000, 0.00000, 0.00000 },
501 { -0.281250, -0.281250, -0.281250, -0.281250, -0.156250, -0.156250, -0.156250, -0.156250, 0.375000, 0.375000, 0.375000, 0.375000, 0.187500, 0.187500, 0.187500, 0.187500, 0.125000, 0.125000, 0.125000, 0.125000 },
502 { -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, 0.00000, 0.00000, 0.00000, 0.750000, 0.375000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.250000 },
503 { -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.750000, 0.250000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000 },
504 { -0.281250, -0.281250, -0.156250, -0.156250, -0.281250, -0.281250, -0.156250, -0.156250, 0.375000, 0.187500, 0.125000, 0.187500, 0.375000, 0.375000, 0.125000, 0.125000, 0.375000, 0.187500, 0.125000, 0.187500 },
505 { -0.281250, -0.156250, -0.156250, -0.281250, -0.281250, -0.156250, -0.156250, -0.281250, 0.187500, 0.125000, 0.187500, 0.375000, 0.375000, 0.125000, 0.125000, 0.375000, 0.187500, 0.125000, 0.187500, 0.375000 },
506 { -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, 0.00000, 0.00000, 0.00000, 0.375000, 0.750000, 0.00000, 0.00000, 0.250000, 0.00000, 0.00000, 0.00000, 0.375000 }
512 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
513 { 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
514 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
515 { -0.250000, -0.250000, -0.250000, -0.250000, 0.00000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.500000, 0.500000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
516 { -0.250000, -0.250000, 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000 },
517 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
518 { 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000 },
519 { -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000 },
520 { -0.125000, 0.375000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
521 { 0.00000, 0.375000, -0.125000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
522 { -0.187500, -0.187500, -0.187500, -0.187500, 0.00000, 0.00000, 0.00000, 0.00000, 0.375000, 0.750000, 0.375000, 0.250000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
523 { -0.187500, -0.187500, -0.187500, -0.187500, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.375000, 0.250000, 0.375000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
524 { -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.375000, 0.375000, 0.00000, 0.00000, 0.250000, 0.00000, 0.00000, 0.00000 },
525 { 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, -0.125000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
526 { 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.375000, 0.375000, 0.00000, 0.00000, 0.250000, 0.00000, 0.00000 },
527 { -0.281250, -0.281250, -0.281250, -0.281250, -0.156250, -0.156250, -0.156250, -0.156250, 0.375000, 0.375000, 0.375000, 0.375000, 0.187500, 0.187500, 0.187500, 0.187500, 0.125000, 0.125000, 0.125000, 0.125000 },
528 { -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.250000, 0.750000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000 },
529 { 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.750000, 0.250000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000 },
530 { -0.156250, -0.281250, -0.281250, -0.156250, -0.156250, -0.281250, -0.281250, -0.156250, 0.187500, 0.375000, 0.187500, 0.125000, 0.125000, 0.375000, 0.375000, 0.125000, 0.187500, 0.375000, 0.187500, 0.125000 },
531 { -0.281250, -0.281250, -0.156250, -0.156250, -0.281250, -0.281250, -0.156250, -0.156250, 0.375000, 0.187500, 0.125000, 0.187500, 0.375000, 0.375000, 0.125000, 0.125000, 0.375000, 0.187500, 0.125000, 0.187500 }
537 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
538 { -0.250000, -0.250000, -0.250000, -0.250000, 0.00000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.500000, 0.500000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
539 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
540 { 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
541 { -0.250000, 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, -0.250000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000, 0.500000 },
542 { -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000 },
543 { 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.00000, 0.00000, 0.500000, 0.00000 },
544 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
545 { -0.187500, -0.187500, -0.187500, -0.187500, 0.00000, 0.00000, 0.00000, 0.00000, 0.375000, 0.250000, 0.375000, 0.750000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
546 { -0.187500, -0.187500, -0.187500, -0.187500, 0.00000, 0.00000, 0.00000, 0.00000, 0.250000, 0.375000, 0.750000, 0.375000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
547 { 0.00000, 0.00000, -0.125000, 0.375000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
548 { -0.125000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
549 { -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, 0.00000, 0.00000, 0.00000, 0.750000, 0.375000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.250000 },
550 { -0.281250, -0.281250, -0.281250, -0.281250, -0.156250, -0.156250, -0.156250, -0.156250, 0.375000, 0.375000, 0.375000, 0.375000, 0.187500, 0.187500, 0.187500, 0.187500, 0.125000, 0.125000, 0.125000, 0.125000 },
551 { 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.375000, 0.375000, 0.00000, 0.00000, 0.250000, 0.00000 },
552 { 0.00000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, -0.125000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.00000 },
553 { -0.281250, -0.156250, -0.156250, -0.281250, -0.281250, -0.156250, -0.156250, -0.281250, 0.187500, 0.125000, 0.187500, 0.375000, 0.375000, 0.125000, 0.125000, 0.375000, 0.187500, 0.125000, 0.187500, 0.375000 },
554 { -0.156250, -0.156250, -0.281250, -0.281250, -0.156250, -0.156250, -0.281250, -0.281250, 0.125000, 0.187500, 0.375000, 0.187500, 0.125000, 0.125000, 0.375000, 0.375000, 0.125000, 0.187500, 0.375000, 0.187500 },
555 { 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.250000, 0.750000, 0.00000, 0.00000, 0.375000, 0.00000 },
556 { -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, 0.00000, 0.00000, 0.00000, 0.375000, 0.250000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.375000 }
562 { -0.250000, -0.250000, -0.250000, -0.250000, 0.00000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.500000, 0.500000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
563 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
564 { 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
565 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
566 { -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000 },
567 { 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000 },
568 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
569 { 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.00000, 0.00000, 0.500000, 0.00000 },
570 { -0.187500, -0.187500, -0.187500, -0.187500, 0.00000, 0.00000, 0.00000, 0.00000, 0.375000, 0.750000, 0.375000, 0.250000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
571 { 0.00000, -0.125000, 0.375000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
572 { 0.00000, 0.00000, 0.375000, -0.125000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
573 { -0.187500, -0.187500, -0.187500, -0.187500, 0.00000, 0.00000, 0.00000, 0.00000, 0.250000, 0.375000, 0.750000, 0.375000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
574 { -0.281250, -0.281250, -0.281250, -0.281250, -0.156250, -0.156250, -0.156250, -0.156250, 0.375000, 0.375000, 0.375000, 0.375000, 0.187500, 0.187500, 0.187500, 0.187500, 0.125000, 0.125000, 0.125000, 0.125000 },
575 { 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.375000, 0.375000, 0.00000, 0.00000, 0.250000, 0.00000, 0.00000 },
576 { 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, -0.125000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
577 { 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.375000, 0.375000, 0.00000, 0.00000, 0.250000, 0.00000 },
578 { -0.156250, -0.281250, -0.281250, -0.156250, -0.156250, -0.281250, -0.281250, -0.156250, 0.187500, 0.375000, 0.187500, 0.125000, 0.125000, 0.375000, 0.375000, 0.125000, 0.187500, 0.375000, 0.187500, 0.125000 },
579 { 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.250000, 0.750000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000 },
580 { 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.750000, 0.250000, 0.00000, 0.00000, 0.375000, 0.00000 },
581 { -0.156250, -0.156250, -0.281250, -0.281250, -0.156250, -0.156250, -0.281250, -0.281250, 0.125000, 0.187500, 0.375000, 0.187500, 0.125000, 0.125000, 0.375000, 0.375000, 0.125000, 0.187500, 0.375000, 0.187500 }
587 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
588 { -0.250000, -0.250000, 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000 },
589 { -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000 },
590 { -0.250000, 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, -0.250000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000, 0.500000 },
591 { 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
592 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000 },
593 { 0.00000, 0.00000, 0.00000, 0.00000, -0.250000, -0.250000, -0.250000, -0.250000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.500000, 0.500000 },
594 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000 },
595 { -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.750000, 0.250000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000 },
596 { -0.281250, -0.281250, -0.156250, -0.156250, -0.281250, -0.281250, -0.156250, -0.156250, 0.375000, 0.187500, 0.125000, 0.187500, 0.375000, 0.375000, 0.125000, 0.125000, 0.375000, 0.187500, 0.125000, 0.187500 },
597 { -0.281250, -0.156250, -0.156250, -0.281250, -0.281250, -0.156250, -0.156250, -0.281250, 0.187500, 0.125000, 0.187500, 0.375000, 0.375000, 0.125000, 0.125000, 0.375000, 0.187500, 0.125000, 0.187500, 0.375000 },
598 { -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, 0.00000, 0.00000, 0.00000, 0.375000, 0.750000, 0.00000, 0.00000, 0.250000, 0.00000, 0.00000, 0.00000, 0.375000 },
599 { -0.125000, 0.00000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
600 { -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.250000, 0.00000, 0.00000, 0.00000, 0.375000, 0.375000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000 },
601 { -0.156250, -0.156250, -0.156250, -0.156250, -0.281250, -0.281250, -0.281250, -0.281250, 0.125000, 0.125000, 0.125000, 0.125000, 0.187500, 0.187500, 0.187500, 0.187500, 0.375000, 0.375000, 0.375000, 0.375000 },
602 { -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, 0.00000, 0.00000, 0.00000, 0.250000, 0.375000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.750000 },
603 { 0.00000, 0.00000, 0.00000, 0.00000, 0.375000, -0.125000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000 },
604 { 0.00000, 0.00000, 0.00000, 0.00000, -0.187500, -0.187500, -0.187500, -0.187500, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.375000, 0.250000, 0.375000 },
605 { 0.00000, 0.00000, 0.00000, 0.00000, -0.187500, -0.187500, -0.187500, -0.187500, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.375000, 0.250000, 0.375000, 0.750000 },
606 { 0.00000, 0.00000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, -0.125000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000 }
612 { -0.250000, -0.250000, 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000 },
613 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
614 { 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000 },
615 { -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000 },
616 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000 },
617 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
618 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000 },
619 { 0.00000, 0.00000, 0.00000, 0.00000, -0.250000, -0.250000, -0.250000, -0.250000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.500000, 0.500000 },
620 { -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.250000, 0.750000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000 },
621 { 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.750000, 0.250000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000 },
622 { -0.156250, -0.281250, -0.281250, -0.156250, -0.156250, -0.281250, -0.281250, -0.156250, 0.187500, 0.375000, 0.187500, 0.125000, 0.125000, 0.375000, 0.375000, 0.125000, 0.187500, 0.375000, 0.187500, 0.125000 },
623 { -0.281250, -0.281250, -0.156250, -0.156250, -0.281250, -0.281250, -0.156250, -0.156250, 0.375000, 0.187500, 0.125000, 0.187500, 0.375000, 0.375000, 0.125000, 0.125000, 0.375000, 0.187500, 0.125000, 0.187500 },
624 { -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.250000, 0.00000, 0.00000, 0.00000, 0.375000, 0.375000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000 },
625 { 0.00000, -0.125000, 0.00000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
626 { 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.250000, 0.00000, 0.00000, 0.00000, 0.375000, 0.375000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000 },
627 { -0.156250, -0.156250, -0.156250, -0.156250, -0.281250, -0.281250, -0.281250, -0.281250, 0.125000, 0.125000, 0.125000, 0.125000, 0.187500, 0.187500, 0.187500, 0.187500, 0.375000, 0.375000, 0.375000, 0.375000 },
628 { 0.00000, 0.00000, 0.00000, 0.00000, -0.125000, 0.375000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000 },
629 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.375000, -0.125000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000 },
630 { 0.00000, 0.00000, 0.00000, 0.00000, -0.187500, -0.187500, -0.187500, -0.187500, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.375000, 0.750000, 0.375000, 0.250000 },
631 { 0.00000, 0.00000, 0.00000, 0.00000, -0.187500, -0.187500, -0.187500, -0.187500, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.375000, 0.250000, 0.375000 }
637 { -0.250000, 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, -0.250000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000, 0.500000 },
638 { -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000 },
639 { 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.00000, 0.00000, 0.500000, 0.00000 },
640 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
641 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000 },
642 { 0.00000, 0.00000, 0.00000, 0.00000, -0.250000, -0.250000, -0.250000, -0.250000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.500000, 0.500000 },
643 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000 },
644 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
645 { -0.281250, -0.156250, -0.156250, -0.281250, -0.281250, -0.156250, -0.156250, -0.281250, 0.187500, 0.125000, 0.187500, 0.375000, 0.375000, 0.125000, 0.125000, 0.375000, 0.187500, 0.125000, 0.187500, 0.375000 },
646 { -0.156250, -0.156250, -0.281250, -0.281250, -0.156250, -0.156250, -0.281250, -0.281250, 0.125000, 0.187500, 0.375000, 0.187500, 0.125000, 0.125000, 0.375000, 0.375000, 0.125000, 0.187500, 0.375000, 0.187500 },
647 { 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.250000, 0.750000, 0.00000, 0.00000, 0.375000, 0.00000 },
648 { -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, 0.00000, 0.00000, 0.00000, 0.375000, 0.250000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.375000 },
649 { -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, 0.00000, 0.00000, 0.00000, 0.250000, 0.375000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.750000 },
650 { -0.156250, -0.156250, -0.156250, -0.156250, -0.281250, -0.281250, -0.281250, -0.281250, 0.125000, 0.125000, 0.125000, 0.125000, 0.187500, 0.187500, 0.187500, 0.187500, 0.375000, 0.375000, 0.375000, 0.375000 },
651 { 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.250000, 0.00000, 0.00000, 0.00000, 0.375000, 0.375000, 0.00000, 0.00000, 0.750000, 0.00000 },
652 { 0.00000, 0.00000, 0.00000, -0.125000, 0.00000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.00000 },
653 { 0.00000, 0.00000, 0.00000, 0.00000, -0.187500, -0.187500, -0.187500, -0.187500, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.375000, 0.250000, 0.375000, 0.750000 },
654 { 0.00000, 0.00000, 0.00000, 0.00000, -0.187500, -0.187500, -0.187500, -0.187500, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.250000, 0.375000, 0.750000, 0.375000 },
655 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, -0.125000, 0.375000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000 },
656 { 0.00000, 0.00000, 0.00000, 0.00000, -0.125000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000 }
662 { -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, -0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000, 0.250000 },
663 { 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000 },
664 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
665 { 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, -0.250000, -0.250000, 0.00000, 0.00000, 0.500000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.00000, 0.00000, 0.500000, 0.00000 },
666 { 0.00000, 0.00000, 0.00000, 0.00000, -0.250000, -0.250000, -0.250000, -0.250000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.500000, 0.500000, 0.500000, 0.500000 },
667 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000 },
668 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
669 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 1.00000, 0.00000 },
670 { -0.156250, -0.281250, -0.281250, -0.156250, -0.156250, -0.281250, -0.281250, -0.156250, 0.187500, 0.375000, 0.187500, 0.125000, 0.125000, 0.375000, 0.375000, 0.125000, 0.187500, 0.375000, 0.187500, 0.125000 },
671 { 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.250000, 0.750000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000 },
672 { 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.750000, 0.250000, 0.00000, 0.00000, 0.375000, 0.00000 },
673 { -0.156250, -0.156250, -0.281250, -0.281250, -0.156250, -0.156250, -0.281250, -0.281250, 0.125000, 0.187500, 0.375000, 0.187500, 0.125000, 0.125000, 0.375000, 0.375000, 0.125000, 0.187500, 0.375000, 0.187500 },
674 { -0.156250, -0.156250, -0.156250, -0.156250, -0.281250, -0.281250, -0.281250, -0.281250, 0.125000, 0.125000, 0.125000, 0.125000, 0.187500, 0.187500, 0.187500, 0.187500, 0.375000, 0.375000, 0.375000, 0.375000 },
675 { 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.250000, 0.00000, 0.00000, 0.00000, 0.375000, 0.375000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000 },
676 { 0.00000, 0.00000, -0.125000, 0.00000, 0.00000, 0.00000, 0.375000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000 },
677 { 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, -0.187500, -0.187500, 0.00000, 0.00000, 0.250000, 0.00000, 0.00000, 0.00000, 0.375000, 0.375000, 0.00000, 0.00000, 0.750000, 0.00000 },
678 { 0.00000, 0.00000, 0.00000, 0.00000, -0.187500, -0.187500, -0.187500, -0.187500, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.375000, 0.750000, 0.375000, 0.250000 },
679 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, -0.125000, 0.375000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000, 0.00000 },
680 { 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.375000, -0.125000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.750000, 0.00000 },
681 { 0.00000, 0.00000, 0.00000, 0.00000, -0.187500, -0.187500, -0.187500, -0.187500, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.00000, 0.250000, 0.375000, 0.750000, 0.375000 }
690 libmesh_assert_less (perm_num, 24);
691 const unsigned int side = perm_num % 6;
692 const unsigned int rotate = perm_num / 6;
694 for (
unsigned int i = 0; i !=
rotate; ++i)
784 libmesh_assert_less (s, 6);
virtual std::unique_ptr< Elem > build_edge_ptr(const unsigned int i) override
Builds a EDGE3 built coincident with edge i.
ElemType
Defines an enum for geometric element types.
void swap2boundaryedges(unsigned short e1, unsigned short e2, BoundaryInfo *boundary_info) const
Swaps two edges in boundary_info, if it is non-null.
Order
defines an enum for polynomial orders.
Node ** _nodes
Pointers to the nodes we are connected to.
virtual void flip(BoundaryInfo *) override final
Flips the element (by swapping node and neighbor pointers) to have a mapping Jacobian of opposite sig...
virtual Real volume() const override
A specialization for computing the volume of a Hex20.
virtual std::pair< unsigned short int, unsigned short int > second_order_child_vertex(const unsigned int n) const override
virtual bool is_edge(const unsigned int i) const override
virtual bool has_affine_map() const override
static const unsigned short int _second_order_adjacent_vertices[12][2]
Matrix that tells which vertices define the location of mid-side (or second-order) nodes...
IOPackage
libMesh interfaces with several different software packages for the purposes of creating, reading, and writing mesh files.
virtual std::vector< unsigned int > nodes_on_edge(const unsigned int e) const override
void swap2boundarysides(unsigned short s1, unsigned short s2, BoundaryInfo *boundary_info) const
Swaps two sides in boundary_info, if it is non-null.
static const Real _embedding_matrix[num_children][num_nodes][num_nodes]
Matrix that computes new nodal locations/solution values from current nodes/solution.
The libMesh namespace provides an interface to certain functionality in the library.
virtual void permute(unsigned int perm_num) override final
Permutes the element (by swapping node and neighbor pointers) according to the specified index...
virtual unsigned int n_nodes() const override
static const unsigned int edge_nodes_map[num_edges][nodes_per_edge]
This maps the node of the edge to element node numbers.
T triple_product(const TypeVector< T > &a, const TypeVector< T > &b, const TypeVector< T > &c)
void swap4nodes(unsigned int n1, unsigned int n2, unsigned int n3, unsigned int n4)
Swaps four node_ptrs, "rotating" them.
virtual void connectivity(const unsigned int sc, const IOPackage iop, std::vector< dof_id_type > &conn) const override
ElemMappingType mapping_type() const
void swap2nodes(unsigned int n1, unsigned int n2)
Swaps two node_ptrs.
virtual bool is_node_on_side(const unsigned int n, const unsigned int s) const override
static const int num_edges
virtual Order default_order() const override
static const int num_children
The BoundaryInfo class contains information relevant to boundary conditions including storing faces...
static const int num_nodes
Geometric constants for Hex20.
virtual std::unique_ptr< Elem > build_side_ptr(const unsigned int i) override
Builds a QUAD8 built coincident with face i.
virtual unsigned int local_edge_node(unsigned int edge, unsigned int edge_node) const override
static constexpr Real affine_tol
Default tolerance to use in has_affine_map().
virtual unsigned int n_edges() const override final
virtual std::vector< unsigned int > nodes_on_side(const unsigned int s) const override
void swap2neighbors(unsigned int n1, unsigned int n2)
Swaps two neighbor_ptrs.
virtual unsigned short int second_order_adjacent_vertex(const unsigned int n, const unsigned int v) const override
virtual unsigned int n_vertices() const override final
virtual bool is_vertex(const unsigned int i) const override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual unsigned int n_sides() const override final
virtual unsigned int local_side_node(unsigned int side, unsigned int side_node) const override
virtual unsigned int n_sub_elem() const override
ElemType side_type(const unsigned int s) const override final
virtual Real volume() const
void swap4neighbors(unsigned int n1, unsigned int n2, unsigned int n3, unsigned int n4)
Swaps four neighbor_ptrs, "rotating" them.
static const int num_sides
Geometric constants for all Hexes.
static const unsigned short int _second_order_vertex_child_number[27]
Vector that names a child sharing each second order node.
static const int nodes_per_edge
static const unsigned short int _second_order_vertex_child_index[27]
Vector that names the child vertex index for each second order node.
virtual bool is_face(const unsigned int i) const override
static const unsigned int side_nodes_map[num_sides][nodes_per_side]
This maps the node of the side to element node numbers.
A Point defines a location in LIBMESH_DIM dimensional Real space.
dof_id_type node_id(const unsigned int i) const
const Point & point(const unsigned int i) const
bool relative_fuzzy_equals(const TypeVector< T > &rhs, Real tol=TOLERANCE) const
virtual bool is_node_on_edge(const unsigned int n, const unsigned int e) const override
static const int nodes_per_side