MCPcopy Create free account
hub / github.com/OpenFOAM/OpenFOAM-dev / update

Method update

src/dynamicMesh/pointPatchDist/externalPointEdgePointI.H:32–72  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

30
31template<class TrackingData>
32inline bool Foam::externalPointEdgePoint::update
33(
34 const point& pt,
35 const externalPointEdgePoint& w2,
36 const scalar tol,
37 TrackingData& td
38)
39{
40 scalar dist2 = magSqr(pt - w2.origin());
41
42 if (!valid(td))
43 {
44 // current not yet set so use any value
45 distSqr_ = dist2;
46 origin_ = w2.origin();
47
48 return true;
49 }
50
51 scalar diff = distSqr_ - dist2;
52
53 if (diff < 0)
54 {
55 // already nearer to pt
56 return false;
57 }
58
59 if ((diff < SMALL) || ((distSqr_ > SMALL) && (diff/distSqr_ < tol)))
60 {
61 // don't propagate small changes
62 return false;
63 }
64 else
65 {
66 // update with new values
67 distSqr_ = dist2;
68 origin_ = w2.origin();
69
70 return true;
71 }
72}
73
74
75template<class TrackingData>

Callers 4

updateMeshFunction · 0.45
updateMeshFunction · 0.45
updateMeshFunction · 0.45
updateMeshFunction · 0.45

Calls 3

validFunction · 0.85
magSqrFunction · 0.50
distSqrMethod · 0.45

Tested by

no test coverage detected