ENH: autoHexMesh: added helper for stopping regionSplit across cyclics

This commit is contained in:
mattijs
2013-07-18 13:08:46 +01:00
parent ca3bde9f20
commit 6e1eb0633a
2 changed files with 31 additions and 0 deletions

View File

@ -1895,6 +1895,34 @@ Foam::labelList Foam::meshRefinement::meshedPatches() const
}
void Foam::meshRefinement::selectSeparatedCoupledFaces(boolList& selected) const
{
const polyBoundaryMesh& patches = mesh_.boundaryMesh();
forAll(patches, patchI)
{
const polyPatch& pp = patches[patchI];
// Check all coupled. Avoid using .coupled() so we also pick up AMI.
if (isA<coupledPolyPatch>(patches[patchI]))
{
const coupledPolyPatch& cpp = refCast<const coupledPolyPatch>
(
patches[patchI]
);
if (cpp.separated() || !cpp.parallel())
{
forAll(pp, i)
{
selected[pp.start()+i] = true;
}
}
}
}
}
Foam::autoPtr<Foam::mapPolyMesh> Foam::meshRefinement::splitMeshRegions
(
const point& keepPoint

View File

@ -864,6 +864,9 @@ public:
//- Get patchIDs for patches added in addMeshedPatch.
labelList meshedPatches() const;
//- Select coupled faces that are not collocated
void selectSeparatedCoupledFaces(boolList&) const;
//- Split mesh. Keep part containing point.
autoPtr<mapPolyMesh> splitMeshRegions(const point& keepPoint);