BUG: Managing topoBitSet as source in haloToCell. See issue #2137

This commit is contained in:
sergio
2021-06-22 11:07:26 -07:00
committed by Mattijs Janssens
parent 6101272133
commit acd8e53310

View File

@ -28,6 +28,7 @@ License
#include "haloToCell.H"
#include "polyMesh.H"
#include "cellSet.H"
#include "topoBitSet.H"
#include "syncTools.H"
#include "addToRunTimeSelectionTable.H"
@ -82,9 +83,16 @@ void Foam::haloToCell::combine(topoSet& set, const bool add) const
// The starting set of cells
bitSet current(cells.size());
for (const label celli : set)
if (isA<topoBitSet>(set))
{
current.set(celli);
current |= refCast<const topoBitSet>(set).addressing();
}
else
{
for (const label celli : set)
{
current.set(celli);
}
}
// The perimeter faces of the cell set