ENH: vector mag(), magSqr() methods - complementary to dist(), distSqr()

ENH: use direct access to pointHit as point(), use dist(), distSqr()

- if the pointHit has already been checked for hit(), can/should
  simply use point() noexcept access subsequently to avoid redundant
  checks. Using vector distSqr() methods provides a minor optimization
  (no itermediate temporary), but can also make for clearer code.

ENH: copy construct pointIndexHit with different index

- symmetric with constructing from a pointHit with an index

STYLE: prefer pointHit point() instead of rawPoint()
This commit is contained in:
Mark Olesen
2022-11-01 12:15:08 +01:00
committed by Andrew Heather
parent 5ec435aca3
commit 27c2cdc040
112 changed files with 669 additions and 674 deletions

View File

@ -5,7 +5,7 @@
\\ / A nd | www.openfoam.com
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2019-2020 OpenCFD Ltd.
Copyright (C) 2019-2022 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -135,7 +135,7 @@ bool Foam::functionObjects::surfaceDistance::execute()
scalarField dist(fc.size());
forAll(nearestInfo, i)
{
dist[i] = mag(nearestInfo[i].hitPoint()-fc[i]);
dist[i] = nearestInfo[i].hitPoint().dist(fc[i]);
}
bfld[patchi] == dist;
}
@ -157,7 +157,7 @@ bool Foam::functionObjects::surfaceDistance::execute()
forAll(nearestInfo, celli)
{
distance[celli] = mag(nearestInfo[celli].hitPoint()-cc[celli]);
distance[celli] = nearestInfo[celli].hitPoint().dist(cc[celli]);
}
}
distance.correctBoundaryConditions();
@ -194,7 +194,7 @@ bool Foam::functionObjects::surfaceDistance::write()
// scalarField dist(fc.size());
// forAll(nearestInfo, i)
// {
// dist[i] = mag(nearestInfo[i].hitPoint()-fc[i]);
// dist[i] = nearestInfo[i].hitPoint().dist(fc[i]);
// }
// bfld[patchi] == dist;
// }
@ -216,7 +216,7 @@ bool Foam::functionObjects::surfaceDistance::write()
//
// forAll(nearestInfo, celli)
// {
// distance[celli] = mag(nearestInfo[celli].hitPoint()-cc[celli]);
// distance[celli] = nearestInfo[celli].hitPoint().dist(cc[celli]);
// }
// }
// distance.correctBoundaryConditions();