34 namespace sixDoFRigidBodyMotionConstraints
76 CofR = centreOfRotation_;
103 centreOfRotation_ = sDoFRBMCCoeffs_.lookupOrDefault
106 motion_.initialCentreOfMass()
109 sDoFRBMCCoeffs_.lookup(
"direction") >> direction_;
111 scalar magDir(
mag(direction_));
115 direction_ /= magDir;
120 <<
"line direction has zero length"
133 writeEntry(os,
"centreOfRotation", centreOfRotation_);
Macros for easy insertion into run-time selection tables.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
A list of keyword definitions, which are a keyword followed by any number of values (e....
Accumulates point constraints through successive applications of the applyConstraint function.
void combine(const pointConstraint &)
Combine constraints.
Base class for defining constraints for sixDoF motions.
virtual bool read(const dictionary &sDoFRBMCDict)
Update properties from given dictionary.
Translation constraint on the centre of rotation: may only move along a line.
virtual void write(Ostream &) const
Write.
virtual void setCentreOfRotation(point &) const
Set the centre of rotation to the projection of the.
virtual void constrainRotation(pointConstraint &) const
Apply and accumulate rotational constraints.
virtual ~line()
Destructor.
virtual bool read(const dictionary &sDoFRBMCCoeff)
Update properties from given dictionary.
virtual void constrainTranslation(pointConstraint &) const
Apply and accumulate translational constraints.
line(const word &name, const dictionary &sDoFRBMCDict, const sixDoFRigidBodyMotion &motion)
Construct from components.
Translation constraint on the centre of rotation: fixed in space.
Six degree of freedom motion for a rigid body.
A class for handling words, derived from string.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
defineTypeNameAndDebug(axis, 0)
addToRunTimeSelectionTable(sixDoFRigidBodyMotionConstraint, axis, dictionary)
word name(const bool)
Return a word representation of a bool.
errorManip< error > abort(error &err)
void writeEntry(Ostream &os, const HashTable< T, Key, Hash > &ht)
dimensioned< scalar > mag(const dimensioned< Type > &)