Go to the documentation of this file.
49 #ifndef rigidBodyMotion_H
50 #define rigidBodyMotion_H
70 class rigidBodySolver;
150 inline bool report()
const;
void solve(const scalar t, const scalar deltaT, const scalarField &tau, const Field< spatialVector > &fx)
Integrate velocities, orientation and position.
const vector cCofR(const label bodyID) const
Report CofR of the given body.
A simple wrapper around bool so that it can be read as a word: true/false, on/off,...
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
Holds the motion state of rigid-body model.
A class for managing temporary objects.
void status(const label bodyID) const
Report the status of the motion of the given body.
Six degree of freedom motion for a rigid body.
const rigidBodyModelState & state() const
Return the motion state.
void write(Ostream &) const
Write.
bool read(const dictionary &dict)
Read coefficients dictionary and update system parameters,.
const Time & time() const
Return the time.
const vector vCofR(const label bodyID) const
Report linear velocity of the given body.
Basic rigid-body model representing a system of rigid-bodies connected by 1-6 DoF joints.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
spatialTransform X00(const label bodyId) const
Return the initial transform to the global frame for the.
bool report() const
Return the report Switch.
label bodyID(const word &name) const
Return the ID of the body with the given name.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
~rigidBodyMotion()
Destructor.
void newTime()
Store the motion state at the beginning of the time-step.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
tmp< pointField > transformPoints(const label bodyID, const pointField &initialPoints) const
Transform the given initial pointField of the specified body.
void forwardDynamics(rigidBodyModelState &state, const scalarField &tau, const Field< spatialVector > &fx) const
Calculate and optionally relax the joint acceleration qDdot from.