Go to the documentation of this file.
36 namespace sixDoFRigidBodyMotionConstraints
97 sDoFRBMCCoeffs_.readEntry(
"axis", axis_);
99 scalar magFixedAxis(
mag(axis_));
101 if (magFixedAxis > VSMALL)
103 axis_ /= magFixedAxis;
108 <<
"axis has zero length"
121 os.writeEntry(
"axis", axis_);
Orientation constraint: may only rotate around a fixed axis.
A class for handling words, derived from Foam::string.
Accumulates point constraints through successive applications of the applyConstraint function.
Base class for defining constraints for sixDoF motions.
addToRunTimeSelectionTable(sixDoFRigidBodyMotionConstraint, axis, dictionary)
virtual bool read(const dictionary &sDoFRBMCCoeff)
Update properties from given dictionary.
virtual void write(Ostream &) const
Write.
virtual ~axis()
Destructor.
void combine(const pointConstraint &)
Combine constraints.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
OBJstream os(runTime.globalPath()/outputName)
Macros for easy insertion into run-time selection tables.
errorManip< error > abort(error &err)
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
Six degree of freedom motion for a rigid body.
axis(const word &name, const dictionary &sDoFRBMCDict, const sixDoFRigidBodyMotion &motion)
Construct from components.
virtual bool read(const dictionary &sDoFRBMCDict)
Update properties from given dictionary.
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
defineTypeNameAndDebug(axis, 0)
virtual void constrainRotation(pointConstraint &) const
Apply and accumulate rotational constraints.
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for INVALID.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
virtual void constrainTranslation(pointConstraint &) const
Apply and accumulate translational constraints.