BUG: GeometricBoundaryField: handle patch groups

This commit is contained in:
mattijs
2011-12-06 21:16:12 +00:00
parent 7ad19bfba7
commit 523f8d6915
3 changed files with 31 additions and 23 deletions

View File

@ -249,7 +249,7 @@ GeometricBoundaryField
} }
// Check for groups first. (using non-wild card entries of dictionaries) // Patch or patch-groups. (using non-wild card entries of dictionaries)
forAllConstIter(dictionary, dict, iter) forAllConstIter(dictionary, dict, iter)
{ {
if (iter().isDict()) if (iter().isDict())
@ -277,12 +277,12 @@ GeometricBoundaryField
} }
} }
// Check for explicit patch overrides // Check for wildcard patch overrides
forAll(bmesh_, patchi) forAll(bmesh_, patchi)
{
if (bmesh_[patchi].type() == emptyPolyPatch::typeName)
{ {
if (!this->set(patchi)) if (!this->set(patchi))
{
if (bmesh_[patchi].type() == emptyPolyPatch::typeName)
{ {
this->set this->set
( (
@ -295,7 +295,6 @@ GeometricBoundaryField
) )
); );
} }
}
else else
{ {
bool found = dict.found(bmesh_[patchi].name()); bool found = dict.found(bmesh_[patchi].name());
@ -315,6 +314,7 @@ GeometricBoundaryField
} }
} }
} }
}
// Check for any unset patches // Check for any unset patches

View File

@ -703,11 +703,11 @@ void Foam::polyMesh::resetPrimitives
{ {
boundary_[patchI] = polyPatch boundary_[patchI] = polyPatch
( (
boundary_[patchI].name(), boundary_[patchI],
patchSizes[patchI], boundary_,
patchStarts[patchI],
patchI, patchI,
boundary_ patchSizes[patchI],
patchStarts[patchI]
); );
} }

View File

@ -113,6 +113,14 @@ castellatedMeshControls
{ {
// Surface-wise min and max refinement level // Surface-wise min and max refinement level
level (5 6); level (5 6);
// Optional specification of patch type (default is wall). No
// constraint types (cyclic, symmetry) etc. are allowed.
patchInfo
{
type wall;
inGroups (motorBike);
}
} }
} }