From dffac4d887bffa2f6a52a5c9ac4969e2dedba430 Mon Sep 17 00:00:00 2001 From: mattijs Date: Thu, 13 Oct 2022 11:57:27 +0100 Subject: [PATCH 1/3] BUG: distributedTriSurfaceMesh: locally empty surface. Fixes #2612 --- .../distributedTriSurfaceMesh.C | 33 ++++++++++++------- 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/src/parallel/distributed/distributedTriSurfaceMesh/distributedTriSurfaceMesh.C b/src/parallel/distributed/distributedTriSurfaceMesh/distributedTriSurfaceMesh.C index 6fd7b09e87..6c2b3cbe60 100644 --- a/src/parallel/distributed/distributedTriSurfaceMesh/distributedTriSurfaceMesh.C +++ b/src/parallel/distributed/distributedTriSurfaceMesh/distributedTriSurfaceMesh.C @@ -1650,8 +1650,8 @@ Foam::volumeType Foam::distributedTriSurfaceMesh::cachedVolumeType // Recurse volumeType subType = cachedVolumeType ( - indexedOctree::getNode(index), - sample + indexedOctree::getNode(index), + sample ); return subType; @@ -4162,7 +4162,10 @@ void Foam::distributedTriSurfaceMesh::getVolumeType // Collect midpoints DynamicField midPoints(label(0.5*nodes.size())); - collectLeafMids(0, midPoints); + if (nodes.size()) + { + collectLeafMids(0, midPoints); + } if (debug) { @@ -4190,14 +4193,17 @@ void Foam::distributedTriSurfaceMesh::getVolumeType } // Cache on local tree - label index = 0; - calcVolumeType - ( - midVolTypes, - index, - nt, - 0 // nodeI - ); + if (nodes.size()) + { + label index = 0; + calcVolumeType + ( + midVolTypes, + index, + nt, + 0 // nodeI + ); + } if (debug) { Pout<< "distributedTriSurfaceMesh::getVolumeType :" @@ -4294,7 +4300,10 @@ void Foam::distributedTriSurfaceMesh::getVolumeType DynamicList