36 namespace solidBodyMotionFunctions
41 solidBodyMotionFunction,
42 oscillatingRotatingMotion,
51 Foam::solidBodyMotionFunctions::oscillatingRotatingMotion::
52 oscillatingRotatingMotion
77 scalar t = time_.value();
79 vector eulerAngles = amplitude_*
sin(omega_*t);
82 eulerAngles *=
pi/180.0;
87 Info<<
"solidBodyMotionFunctions::oscillatingRotatingMotion::" 88 <<
"transformation(): " 89 <<
"Time = " << t <<
" transformation: " << TR <<
endl;
102 SBMFCoeffs_.lookup(
"origin") >> origin_;
103 SBMFCoeffs_.lookup(
"amplitude") >> amplitude_;
104 SBMFCoeffs_.lookup(
"omega") >> omega_;
virtual bool read(const dictionary &SBMFCoeffs)=0
Update properties from given dictionary.
virtual ~oscillatingRotatingMotion()
Destructor.
Base class for defining solid-body motions.
virtual septernion transformation() const
Return the solid-body motion transformation septernion.
#define R(A, B, C, D, E, F, K, M)
virtual bool read(const dictionary &SBMFCoeffs)
Update properties from given dictionary.
Quaternion class used to perform rotations in 3D space.
A list of keyword definitions, which are a keyword followed by any number of values (e...
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.
Ostream & endl(Ostream &os)
Add newline and flush stream.
Macros for easy insertion into run-time selection tables.
bool read(const char *, int32_t &)
addToRunTimeSelectionTable(ensightPart, ensightPartCells, istream)
defineTypeNameAndDebug(combustionModel, 0)
dimensionedScalar sin(const dimensionedScalar &ds)