From d9c06910bc96fd10348795663a6543384730a984 Mon Sep 17 00:00:00 2001 From: Henry <Henry> Date: Tue, 17 Dec 2013 17:40:45 +0000 Subject: [PATCH] sixDoFRigidBodyMotion/restraints: rationalise reporting --- src/sixDoFRigidBodyMotion/Make/files | 2 ++ .../linearAxialAngularSpring.C | 2 -- .../restraints/linearSpring/linearSpring.C | 7 ------- .../sphericalAngularSpring/sphericalAngularSpring.C | 11 ++--------- .../tabulatedAxialAngularSpring.C | 1 - .../sixDoFRigidBodyMotion/sixDoFRigidBodyMotion.H | 9 ++++----- 6 files changed, 8 insertions(+), 24 deletions(-) diff --git a/src/sixDoFRigidBodyMotion/Make/files b/src/sixDoFRigidBodyMotion/Make/files index 02ef85eaa16..8e825f0a010 100644 --- a/src/sixDoFRigidBodyMotion/Make/files +++ b/src/sixDoFRigidBodyMotion/Make/files @@ -11,6 +11,8 @@ $(restraints)/linearAxialAngularSpring/linearAxialAngularSpring.C $(restraints)/linearSpring/linearSpring.C $(restraints)/sphericalAngularSpring/sphericalAngularSpring.C $(restraints)/tabulatedAxialAngularSpring/tabulatedAxialAngularSpring.C +$(restraints)/linearDamper/linearDamper.C +$(restraints)/sphericalAngularDamper/sphericalAngularDamper.C constraints = sixDoFRigidBodyMotion/constraints diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearAxialAngularSpring/linearAxialAngularSpring.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearAxialAngularSpring/linearAxialAngularSpring.C index 3701dd8bf95..504944bb29a 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearAxialAngularSpring/linearAxialAngularSpring.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearAxialAngularSpring/linearAxialAngularSpring.C @@ -135,7 +135,6 @@ Foam::sixDoFRigidBodyMotionRestraints::linearAxialAngularSpring::restrain if (motion.report()) { Info<< " angle " << theta*sign(a & axis_) - << " force " << restraintForce << " moment " << restraintMoment << endl; } @@ -190,7 +189,6 @@ bool Foam::sixDoFRigidBodyMotionRestraints::linearAxialAngularSpring::read } sDoFRBMRCoeffs_.lookup("stiffness") >> stiffness_; - sDoFRBMRCoeffs_.lookup("damping") >> damping_; return true; diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearSpring/linearSpring.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearSpring/linearSpring.C index a9ed4ce7a3f..a26660caf87 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearSpring/linearSpring.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearSpring/linearSpring.C @@ -85,8 +85,6 @@ void Foam::sixDoFRigidBodyMotionRestraints::linearSpring::restrain vector r = restraintPosition - anchor_; scalar magR = mag(r); - - // r is now the r unit vector r /= (magR + VSMALL); vector v = motion.currentVelocity(restraintPosition); @@ -100,7 +98,6 @@ void Foam::sixDoFRigidBodyMotionRestraints::linearSpring::restrain Info<< " attachmentPt - anchor " << r*magR << " spring length " << magR << " force " << restraintForce - << " moment " << restraintMoment << endl; } } @@ -114,13 +111,9 @@ bool Foam::sixDoFRigidBodyMotionRestraints::linearSpring::read sixDoFRigidBodyMotionRestraint::read(sDoFRBMRDict); sDoFRBMRCoeffs_.lookup("anchor") >> anchor_; - sDoFRBMRCoeffs_.lookup("refAttachmentPt") >> refAttachmentPt_; - sDoFRBMRCoeffs_.lookup("stiffness") >> stiffness_; - sDoFRBMRCoeffs_.lookup("damping") >> damping_; - sDoFRBMRCoeffs_.lookup("restLength") >> restLength_; return true; diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularSpring/sphericalAngularSpring.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularSpring/sphericalAngularSpring.C index f3dab425d7c..a0525a19e66 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularSpring/sphericalAngularSpring.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularSpring/sphericalAngularSpring.C @@ -72,8 +72,7 @@ Foam::sixDoFRigidBodyMotionRestraints::sphericalAngularSpring:: // * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * // -void -Foam::sixDoFRigidBodyMotionRestraints::sphericalAngularSpring::restrain +void Foam::sixDoFRigidBodyMotionRestraints::sphericalAngularSpring::restrain ( const sixDoFRigidBodyMotion& motion, vector& restraintPosition, @@ -86,19 +85,15 @@ Foam::sixDoFRigidBodyMotionRestraints::sphericalAngularSpring::restrain for (direction cmpt=0; cmpt<vector::nComponents; cmpt++) { vector axis = vector::zero; - axis[cmpt] = 1; vector refDir = vector::zero; - refDir[(cmpt + 1) % 3] = 1; vector newDir = motion.orientation() & refDir; axis = (refQ_ & axis); - refDir = (refQ_ & refDir); - newDir -= (axis & newDir)*axis; restraintMoment += -stiffness_*(refDir ^ newDir); @@ -114,8 +109,7 @@ Foam::sixDoFRigidBodyMotionRestraints::sphericalAngularSpring::restrain if (motion.report()) { - Info<< " force " << restraintForce - << " moment " << restraintMoment + Info<< " moment " << restraintMoment << endl; } } @@ -147,7 +141,6 @@ bool Foam::sixDoFRigidBodyMotionRestraints::sphericalAngularSpring::read } sDoFRBMRCoeffs_.lookup("stiffness") >> stiffness_; - sDoFRBMRCoeffs_.lookup("damping") >> damping_; return true; diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/tabulatedAxialAngularSpring/tabulatedAxialAngularSpring.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/tabulatedAxialAngularSpring/tabulatedAxialAngularSpring.C index 037639dde85..1bf86e3b19c 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/tabulatedAxialAngularSpring/tabulatedAxialAngularSpring.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/tabulatedAxialAngularSpring/tabulatedAxialAngularSpring.C @@ -136,7 +136,6 @@ Foam::sixDoFRigidBodyMotionRestraints::tabulatedAxialAngularSpring::restrain if (motion.report()) { Info<< " angle " << theta - << " force " << restraintForce << " moment " << restraintMoment << endl; } diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion.H b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion.H index a2d4c3236ff..c7b4bd7c30a 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion.H +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion.H @@ -174,9 +174,6 @@ class sixDoFRigidBodyMotion //- Return access to the orientation inline const tensor& Q() const; - //- Return access to velocity - inline const vector& v() const; - //- Return access to acceleration inline const vector& a() const; @@ -356,8 +353,7 @@ public: //- Return the angular velocity in the global frame inline vector omega() const; - //- Return the velocity of a position given by the current - // motion state + //- Return the velocity of a position inline point currentVelocity(const point& pt) const; //- Report the status of the motion @@ -384,6 +380,9 @@ public: //- Return the report Switch inline bool report() const; + //- Return access to velocity + inline const vector& v() const; + // Edit -- GitLab