mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
coupled edges did not get combined upon removal of faces on other procs
This commit is contained in:
@ -807,7 +807,7 @@ void Foam::removeFaces::setRefinement
|
||||
// Edges to remove
|
||||
labelHashSet edgesToRemove(faceLabels.size());
|
||||
|
||||
// Per face the region it is. -1 for removed faces, -2 for regions
|
||||
// Per face the region it is in. -1 for removed faces, -2 for regions
|
||||
// consisting of single face only.
|
||||
labelList faceRegion(mesh_.nFaces(), -1);
|
||||
|
||||
@ -1258,10 +1258,15 @@ void Foam::removeFaces::setRefinement
|
||||
// are only used by 2 unremoved edges.
|
||||
{
|
||||
// Usage of points by non-removed edges.
|
||||
labelList nEdgesPerPoint(mesh_.nPoints(), labelMax);
|
||||
labelList nEdgesPerPoint(mesh_.nPoints());
|
||||
|
||||
const labelListList& pointEdges = mesh_.pointEdges();
|
||||
|
||||
forAll(pointEdges, pointI)
|
||||
{
|
||||
nEdgesPerPoint[pointI] = pointEdges[pointI].size();
|
||||
}
|
||||
|
||||
forAllConstIter(labelHashSet, edgesToRemove, iter)
|
||||
{
|
||||
// Edge will get removed.
|
||||
@ -1269,16 +1274,7 @@ void Foam::removeFaces::setRefinement
|
||||
|
||||
forAll(e, i)
|
||||
{
|
||||
label pointI = e[i];
|
||||
|
||||
if (nEdgesPerPoint[pointI] == labelMax)
|
||||
{
|
||||
nEdgesPerPoint[pointI] = pointEdges[pointI].size()-1;
|
||||
}
|
||||
else
|
||||
{
|
||||
nEdgesPerPoint[pointI]--;
|
||||
}
|
||||
nEdgesPerPoint[e[i]]--;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user