diff --git a/src/fvMotionSolver/fvMotionSolvers/displacement/interpolation/displacementInterpolationFvMotionSolver.C b/src/fvMotionSolver/fvMotionSolvers/displacement/interpolation/displacementInterpolationFvMotionSolver.C index 8dc0dc5db056b548826fa664211bb9beccfa1e46..8a487e60487faedc33383dd2b8d831d42f1f5291 100644 --- a/src/fvMotionSolver/fvMotionSolvers/displacement/interpolation/displacementInterpolationFvMotionSolver.C +++ b/src/fvMotionSolver/fvMotionSolvers/displacement/interpolation/displacementInterpolationFvMotionSolver.C @@ -168,10 +168,28 @@ displacementInterpolationFvMotionSolver label zoneI = fZones.findZoneID(zoneName); const faceZone& fz = fZones[zoneI]; - scalarField fzCoords = fz().localPoints().component(dir); + scalar minCoord = VGREAT; + scalar maxCoord = -VGREAT; - zoneCoordinates[2*i] = gMin(fzCoords); - zoneCoordinates[2*i+1] = gMax(fzCoords); + forAll(fz().meshPoints(), localI) + { + label pointI = fz().meshPoints()[localI]; + const scalar coord = points0_[pointI][dir]; + minCoord = min(minCoord, coord); + maxCoord = max(maxCoord, coord); + } + + zoneCoordinates[2*i] = returnReduce(minCoord, minOp<scalar>()); + zoneCoordinates[2*i+1] = returnReduce(maxCoord, maxOp<scalar>()); + + if (debug) + { + Pout<< "direction " << dir << " : " + << "zone " << zoneName + << " ranges from coordinate " << zoneCoordinates[2*i] + << " to " << zoneCoordinates[2*i+1] + << endl; + } } zoneCoordinates.sort();