Merge branch 'master' of /home/dm4/OpenFOAM/OpenFOAM-dev

This commit is contained in:
andy
2013-08-29 16:00:42 +01:00

View File

@ -121,7 +121,7 @@ List<Vb::Point> rayShooting::initialPoints() const
geometryToConformTo().findSurfaceNearest geometryToConformTo().findSurfaceNearest
( (
fC, fC,
sqr(SMALL), sqr(pert),
surfHitStart, surfHitStart,
hitSurfaceStart hitSurfaceStart
); );
@ -145,63 +145,62 @@ List<Vb::Point> rayShooting::initialPoints() const
hitSurfaceEnd hitSurfaceEnd
); );
vectorField normEnd(1, vector::min); if (surfHitEnd.hit())
geometryToConformTo().getNormal
(
hitSurfaceEnd,
List<pointIndexHit>(1, surfHitEnd),
normEnd
);
if
(
surfHitEnd.hit()
&& ((normStart[0] & normEnd[0]) < 0)
)
{ {
line<point, point> l(fC, surfHitEnd.hitPoint()); vectorField normEnd(1, vector::min);
geometryToConformTo().getNormal
if (Pstream::parRun())
{
// Clip the line in parallel
pointIndexHit procIntersection =
decomposition().findLine
(
l.start() + l.vec()*SMALL,
l.end() - l.vec()*maxRayLength_
);
if (procIntersection.hit())
{
l =
line<point, point>
(
l.start(),
procIntersection.hitPoint()
);
}
}
Foam::point midPoint(l.centre());
const scalar minDistFromSurfaceSqr =
minimumSurfaceDistanceCoeffSqr_
*sqr(cellShapeControls().cellSize(midPoint));
if
( (
magSqr(midPoint - l.start()) > minDistFromSurfaceSqr hitSurfaceEnd,
&& magSqr(midPoint - l.end()) > minDistFromSurfaceSqr List<pointIndexHit>(1, surfHitEnd),
) normEnd
);
if ((normStart[0] & normEnd[0]) < 0)
{ {
if (randomiseInitialGrid_) line<point, point> l(fC, surfHitEnd.hitPoint());
if (Pstream::parRun())
{ {
midPoint.x() += pert*(rndGen().scalar01() - 0.5); // Clip the line in parallel
midPoint.y() += pert*(rndGen().scalar01() - 0.5); pointIndexHit procIntersection =
midPoint.z() += pert*(rndGen().scalar01() - 0.5); decomposition().findLine
(
l.start() + l.vec()*SMALL,
l.end() - l.vec()*maxRayLength_
);
if (procIntersection.hit())
{
l =
line<point, point>
(
l.start(),
procIntersection.hitPoint()
);
}
} }
initialPoints.append(toPoint(midPoint)); Foam::point midPoint(l.centre());
const scalar minDistFromSurfaceSqr =
minimumSurfaceDistanceCoeffSqr_
*sqr(cellShapeControls().cellSize(midPoint));
if
(
magSqr(midPoint - l.start()) > minDistFromSurfaceSqr
&& magSqr(midPoint - l.end()) > minDistFromSurfaceSqr
)
{
if (randomiseInitialGrid_)
{
midPoint.x() += pert*(rndGen().scalar01() - 0.5);
midPoint.y() += pert*(rndGen().scalar01() - 0.5);
midPoint.z() += pert*(rndGen().scalar01() - 0.5);
}
initialPoints.append(toPoint(midPoint));
}
} }
} }
} }