33 namespace solidBodyMotionFunctions
38 solidBodyMotionFunction,
71 scalar t = time_.value();
75 for (
label i = 1; i < SBMFs_.size(); i++)
77 TR *= SBMFs_[i].transformation();
94 SBMFs_.setSize(SBMFCoeffs_.size());
106 Info<<
"Constructed SBMF " << i <<
" : " 107 << iter().keyword() <<
" of type " 108 << SBMFs_[i].type() <<
endl;
Template class for intrusive linked lists.
A list of keyword definitions, which are a keyword followed by any number of values (e...
#define forAllConstIter(Container, container, iter)
Iterate across all elements in the container object of type.
Ostream & endl(Ostream &os)
Add newline and flush stream.
Septernion class used to perform translations and rotations in 3D space.
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
Macros for easy insertion into run-time selection tables.
defineTypeNameAndDebug(axisRotationMotion, 0)
virtual septernion transformation() const
Return the solid-body motion transformation septernion.
bool read(const char *, int32_t &)
Base class for defining solid-body motions.
#define DebugInFunction
Report an information message using Foam::Info.
static autoPtr< solidBodyMotionFunction > New(const dictionary &SBMFCoeffs, const Time &runTime)
Select constructed from the SBMFCoeffs dictionary and Time.
virtual bool read(const dictionary &SBMFCoeffs)=0
Update properties from given dictionary.
virtual bool read(const dictionary &SBMFCoeffs)
Update properties from given dictionary.
multiMotion(const dictionary &SBMFCoeffs, const Time &runTime)
Construct from components.
addToRunTimeSelectionTable(solidBodyMotionFunction, axisRotationMotion, dictionary)
virtual ~multiMotion()
Destructor.