From ef20aaa6e8ed892063aeb2904bc21d4d78c6102f Mon Sep 17 00:00:00 2001 From: Peter Munch Date: Sat, 5 Dec 2020 12:37:42 +0100 Subject: [PATCH] Impelment ReferenceCell::internal::Info::Pyramid::standard_to_real_face_line --- include/deal.II/grid/reference_cell.h | 31 ++++++++++++++++----------- 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/include/deal.II/grid/reference_cell.h b/include/deal.II/grid/reference_cell.h index 5402c73267..87a4cc6c84 100644 --- a/include/deal.II/grid/reference_cell.h +++ b/include/deal.II/grid/reference_cell.h @@ -834,19 +834,26 @@ namespace ReferenceCell const unsigned int face, const unsigned char face_orientation) const override { - Assert(false, ExcNotImplemented()); - - (void)face; - - static const std::array, 6> table = { - {{{2, 1, 0}}, - {{0, 1, 2}}, - {{1, 2, 0}}, - {{0, 2, 1}}, - {{1, 0, 2}}, - {{2, 0, 1}}}}; + if (face == 0) // QUAD + { + return GeometryInfo<3>::standard_to_real_face_line( + line, + get_bit(face_orientation, 0), + get_bit(face_orientation, 2), + get_bit(face_orientation, 1)); + } + else // TRI + { + static const std::array, 6> table = { + {{{2, 1, 0}}, + {{0, 1, 2}}, + {{1, 2, 0}}, + {{0, 2, 1}}, + {{1, 0, 2}}, + {{2, 0, 1}}}}; - return table[face_orientation][line]; + return table[face_orientation][line]; + } } bool -- 2.39.5