From 82befccada32dd2a8d8a836278c9a925879fb1ba Mon Sep 17 00:00:00 2001 From: Matthias Hochsteger Date: Thu, 27 Feb 2025 19:44:36 +0100 Subject: [PATCH] Fix excessive hashtable size if meshpoints are close together (happens with boundary layers) --- libsrc/meshing/geomsearch.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/libsrc/meshing/geomsearch.cpp b/libsrc/meshing/geomsearch.cpp index 65717753..e1f6fdd7 100644 --- a/libsrc/meshing/geomsearch.cpp +++ b/libsrc/meshing/geomsearch.cpp @@ -106,6 +106,12 @@ namespace netgen size.i1 = int (boxext.X()/midext.X()/hashelemsizefactor+1); size.i2 = int (boxext.Y()/midext.Y()/hashelemsizefactor+1); size.i3 = int (boxext.Z()/midext.Z()/hashelemsizefactor+1); + + int nfaces = faces->Size(); + size.i1 = min(size.i1, nfaces); + size.i2 = min(size.i2, nfaces); + size.i3 = min(size.i3, nfaces); + // PrintMessage (5, "hashsizes = ", size.i1, ", ", size.i2, ", ", size.i3); elemsize.X()=boxext.X()/size.i1;