From 20c792bf0d99e2776fe6380db3c1002dba606a4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9s=20Rueda-Ram=C3=ADrez?= Date: Tue, 16 Jun 2026 12:12:37 +0200 Subject: [PATCH] Added support for elements of higher order with GMSH MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --------- Co-authored-by: Mateo Guamán Cueva --- pyhope/mesh/reader/reader_gmsh.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pyhope/mesh/reader/reader_gmsh.py b/pyhope/mesh/reader/reader_gmsh.py index a48e5bb..987312f 100644 --- a/pyhope/mesh/reader/reader_gmsh.py +++ b/pyhope/mesh/reader/reader_gmsh.py @@ -516,10 +516,11 @@ def BCCGNS_Unstructured( mesh: meshio.Mesh, # For high-order elements, we only consider the 3/4 corner nodes for the centroid match len(BCpoints): - case 3 | 6: # triangle, triangle6 + case 3 | 6 | 10 | 15: # triangle (NGeo=1), triangle6 (NGeo=2), triangle10 (NGeo=3), triangle15 (NGeo=4) triaCenters.append(np.mean(BCpoints[:3], axis=0)) - case 4 | 8 | 9: # quad, quad8, quad9 + case 4 | 8 | 9 | 16 | 25: # quad (NGeo=1), quad8 (NGeo=2), quad9 (NGeo=2), quad16 (NGeo=3), quad25 (NGeo=4) quadCenters.append(np.mean(BCpoints[:4], axis=0)) + # Higher orders case _: hopout.error('Unsupported number of corners for shell elements, exiting...')