From ee0cfc0b32d9877edef88fd133171ae82720e615 Mon Sep 17 00:00:00 2001 From: Hugh Carson Date: Fri, 17 Jan 2025 17:02:46 -0500 Subject: [PATCH] Make multiple boundary element erro report attributes of the two elements --- palace/utils/geodata.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/palace/utils/geodata.cpp b/palace/utils/geodata.cpp index 10d330165..c6d026fd0 100644 --- a/palace/utils/geodata.cpp +++ b/palace/utils/geodata.cpp @@ -2627,9 +2627,9 @@ std::unordered_map GetFaceToBdrElementMap(const mfem::Mesh &mesh, { int f, o, e1 = -1, e2 = -1; mesh.GetBdrElementFace(be, &f, &o); + int attr = mesh.GetBdrAttribute(be); if (!boundaries.periodic.empty()) { - int attr = mesh.GetBdrAttribute(be); for (const auto &data : boundaries.periodic) { const auto &da = data.donor_attributes, &ra = data.receiver_attributes; @@ -2644,7 +2644,9 @@ std::unordered_map GetFaceToBdrElementMap(const mfem::Mesh &mesh, } } MFEM_VERIFY((e1 >= 0 && e2 >= 0) || face_to_be.find(f) == face_to_be.end(), - "A non-periodic face (" << f << ") cannot have multiple boundary elements"); + "A non-periodic face (" + << f << ") cannot have multiple boundary elements! Attributes: " << attr + << ' ' << mesh.GetBdrAttribute(face_to_be[f])); face_to_be[f] = be; } return face_to_be;