BUG: snappyHexMesh: attraction distance mapping. Fixes #941.

This commit is contained in:
mattijs
2019-04-10 10:34:50 +01:00
parent 0db59d392e
commit b4f1092b3a
2 changed files with 26 additions and 2 deletions

View File

@ -306,7 +306,7 @@ void Foam::snappySnapDriver::calcNearestFace
( (
labelList(1, zoneSurfi), labelList(1, zoneSurfi),
fc, fc,
sqr(faceSnapDist),// sqr of attract dist sqr(scalarField(faceSnapDist, ppFaces)),// sqr of attract dist
hitSurface, hitSurface,
hitInfo, hitInfo,
hitRegion, hitRegion,
@ -382,7 +382,7 @@ void Foam::snappySnapDriver::calcNearestFace
( (
unzonedSurfaces, unzonedSurfaces,
fc, fc,
sqr(faceSnapDist),// sqr of attract dist sqr(scalarField(faceSnapDist, ppFaces)),// sqr of attract dist
hitSurface, hitSurface,
hitInfo, hitInfo,
hitRegion, hitRegion,

View File

@ -354,6 +354,13 @@ void Foam::searchableSurfacesQueries::findNearest
{ {
// Find nearest. Return -1 or nearest point // Find nearest. Return -1 or nearest point
if (samples.size() != nearestDistSqr.size())
{
FatalErrorInFunction << "Inconsistent sizes. samples:" << samples.size()
<< " search-radius:" << nearestDistSqr.size()
<< exit(FatalError);
}
// Initialise // Initialise
nearestSurfaces.setSize(samples.size()); nearestSurfaces.setSize(samples.size());
nearestSurfaces = -1; nearestSurfaces = -1;
@ -405,6 +412,14 @@ void Foam::searchableSurfacesQueries::findNearest
{ {
// Find nearest. Return -1 or nearest point // Find nearest. Return -1 or nearest point
if (samples.size() != nearestDistSqr.size())
{
FatalErrorInFunction << "Inconsistent sizes. samples:" << samples.size()
<< " search-radius:" << nearestDistSqr.size()
<< exit(FatalError);
}
if (regionIndices.empty()) if (regionIndices.empty())
{ {
findNearest findNearest
@ -468,6 +483,15 @@ void Foam::searchableSurfacesQueries::findNearest
{ {
// Multi-surface findNearest // Multi-surface findNearest
if (start.size() != distSqr.size())
{
FatalErrorInFunction << "Inconsistent sizes. samples:" << start.size()
<< " search-radius:" << distSqr.size()
<< exit(FatalError);
}
vectorField normal; vectorField normal;
List<pointIndexHit> info; List<pointIndexHit> info;