Bugfix: adjusted handling of coupled interfaces on decomposition and reconstruction

This commit is contained in:
Hrvoje Jasak 2016-09-05 16:16:16 +01:00
parent c113c6b774
commit b19ac91318
4 changed files with 31 additions and 4 deletions

View file

@ -62,6 +62,15 @@ bool Foam::ggiPolyPatch::active() const
polyPatchID shadow(shadowName_, boundaryMesh());
faceZoneID zone(zoneName_, boundaryMesh().mesh().faceZones());
// For decomposition and reconstruction
// If not runing in parallel and the patch is not local, this is a serial
// operation on a piece of a parallel decomposition and is therefore
// inactive. HJ, 5/Spe/2016
if (!Pstream::parRun() && !localParallel())
{
return false;
}
return shadow.active() && zone.active();
}

View file

@ -58,6 +58,15 @@ bool Foam::mixingPlanePolyPatch::active() const
polyPatchID shadow(shadowName_, boundaryMesh());
faceZoneID zone(zoneName_, boundaryMesh().mesh().faceZones());
// For decomposition and reconstruction
// If not runing in parallel and the patch is not local, this is a serial
// operation on a piece of a parallel decomposition and is therefore
// inactive. HJ, 5/Sep/2016
if (!Pstream::parRun() && !localParallel())
{
return false;
}
return shadow.active() && zone.active();
}

View file

@ -53,6 +53,15 @@ bool Foam::overlapGgiPolyPatch::active() const
polyPatchID shadow(shadowName_, boundaryMesh());
faceZoneID zone(zoneName_, boundaryMesh().mesh().faceZones());
// For decomposition and reconstruction
// If not runing in parallel and the patch is not local, this is a serial
// operation on a piece of a parallel decomposition and is therefore
// inactive. HJ, 5/Sep/2016
if (!Pstream::parRun() && !localParallel())
{
return false;
}
return shadow.active() && zone.active();
}

View file

@ -70,10 +70,10 @@ bool Foam::regionCouplePolyPatch::active() const
{
// Shadow region present
const polyMesh& sr = boundaryMesh().mesh().db().parent().
objectRegistry::lookupObject<polyMesh>
(
shadowRegionName_
);
objectRegistry::lookupObject<polyMesh>
(
shadowRegionName_
);
polyPatchID shadowPatch(shadowPatchName_, sr.boundaryMesh());