From ef19832a783045426cf73a8a0bb6b7fa81504a05 Mon Sep 17 00:00:00 2001 From: graham Date: Wed, 26 May 2010 10:44:45 +0100 Subject: [PATCH] ENH. Looser tolerance on wall match error trigger. --- .../WallCollisionRecord/WallCollisionRecord.C | 6 ++++++ .../WallCollisionRecord/WallCollisionRecord.H | 6 ++++++ .../WallCollisionRecord/WallCollisionRecordI.H | 2 +- 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecord.C b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecord.C index d3141e660d..da116c4992 100644 --- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecord.C +++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecord.C @@ -25,6 +25,12 @@ License #include "WallCollisionRecord.H" +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +template +const Foam::scalar Foam::WallCollisionRecord::errorCosAngle(1.0 + 1e-6); + + // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // template diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecord.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecord.H index 96d605dd4a..f70d2045b6 100644 --- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecord.H +++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecord.H @@ -92,6 +92,12 @@ class WallCollisionRecord public: + // Static data members + + //- Tolerance for detecting seriously erroneous wall matches + static const scalar errorCosAngle; + + // Constructors //- Construct null diff --git a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecordI.H b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecordI.H index 42f5b4f421..afb855cb33 100644 --- a/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecordI.H +++ b/src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/WallCollisionRecord/WallCollisionRecordI.H @@ -39,7 +39,7 @@ inline bool Foam::WallCollisionRecord::match // Using the new data as the acceptance criterion scalar cosAcceptanceAngle = magpRel/radius; - if (cosAcceptanceAngle > 1.0 + SMALL) + if (cosAcceptanceAngle > errorCosAngle) { Info<< "pRel_ " << pRel_ << " " << magpRel_ << nl << "pRel " << pRel << " " << magpRel << nl