sixDoFRigidBodyMotionSolver Class Reference

6-DoF solid-body mesh motion solver for an fvMesh. More...

Inheritance diagram for sixDoFRigidBodyMotionSolver:
Collaboration diagram for sixDoFRigidBodyMotionSolver:

Public Member Functions

 TypeName ("sixDoFRigidBodyMotion")
 Runtime type information. More...
 
 sixDoFRigidBodyMotionSolver (const word &name, const polyMesh &, const dictionary &dict)
 Construct from polyMesh and dictionary. More...
 
 sixDoFRigidBodyMotionSolver (const sixDoFRigidBodyMotionSolver &)=delete
 Disallow default bitwise copy construction. More...
 
 ~sixDoFRigidBodyMotionSolver ()
 Destructor. More...
 
const sixDoFRigidBodyMotionmotion () const
 Return the six DoF motion object. More...
 
virtual tmp< pointFieldcurPoints () const
 Return point location obtained from the current motion field. More...
 
virtual void solve ()
 Solve for motion. More...
 
virtual bool write () const
 Write motion state information for restart. More...
 
void operator= (const sixDoFRigidBodyMotionSolver &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from displacementMotionSolver
 TypeName ("displacementMotionSolver")
 Runtime type information. More...
 
 displacementMotionSolver (const word &name, const polyMesh &, const dictionary &, const word &type)
 Construct from mesh and dictionary. More...
 
 displacementMotionSolver (const displacementMotionSolver &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~displacementMotionSolver ()
 Destructor. More...
 
pointVectorFieldpointDisplacement ()
 Return reference to the point motion displacement field. More...
 
const pointVectorFieldpointDisplacement () const
 Return const reference to the point motion displacement field. More...
 
virtual void mapMesh (const polyMeshMap &)
 Update from another mesh using the given map. More...
 
void operator= (const displacementMotionSolver &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from points0MotionSolver
 TypeName ("points0MotionSolver")
 Runtime type information. More...
 
 points0MotionSolver (const word &name, const polyMesh &, const dictionary &, const word &type)
 Construct from mesh and dictionary. More...
 
 points0MotionSolver (const points0MotionSolver &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~points0MotionSolver ()
 Destructor. More...
 
pointFieldpoints0 ()
 Return reference to the reference field. More...
 
const pointFieldpoints0 () const
 Return reference to the reference field. More...
 
virtual void movePoints (const pointField &)
 Update local data for geometry changes. More...
 
virtual void topoChange (const polyTopoChangeMap &)
 Update local data for topology changes. More...
 
virtual void distribute (const polyDistributionMap &)
 Update corresponding to the given distribution map. More...
 
void operator= (const points0MotionSolver &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from motionSolver
 TypeName ("motionSolver")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, motionSolver, dictionary,(const word &name, const polyMesh &mesh, const dictionary &dict),(name, mesh, dict))
 
 motionSolver (const word &name, const polyMesh &mesh, const dictionary &, const word &type)
 Construct from polyMesh and dictionary and type. More...
 
virtual autoPtr< motionSolverclone () const
 Clone function. More...
 
virtual ~motionSolver ()
 Destructor. More...
 
const wordname () const
 Return name. More...
 
const wordkeyword () const
 Return keyword. More...
 
const polyMeshmesh () const
 Return reference to mesh. More...
 
const dictionarycoeffDict () const
 Const access to the coefficients dictionary. More...
 
virtual tmp< pointFieldnewPoints ()
 Provide new points for motion. Solves for motion. More...
 
virtual void twoDCorrectPoints (pointField &) const
 Correct point field for reduced-dimensionality cases. More...
 
virtual bool solidBody () const
 Is the motion solid body? I.e., are the volumes and area magnitudes. More...
 
- Public Member Functions inherited from sixDoFRigidBodyMotion
 TypeName ("sixDoFRigidBodyMotion")
 Runtime type information. More...
 
 sixDoFRigidBodyMotion ()
 Construct null. More...
 
 sixDoFRigidBodyMotion (const dictionary &dict, const dictionary &stateDict)
 Construct from constant and state dictionaries. More...
 
 sixDoFRigidBodyMotion (const sixDoFRigidBodyMotion &)
 Copy constructor. More...
 
virtual ~sixDoFRigidBodyMotion ()
 Destructor. More...
 
scalar mass () const
 Return the mass. More...
 
const diagTensormomentOfInertia () const
 Return the inertia tensor. More...
 
const sixDoFRigidBodyMotionStatestate () const
 Return the motion state. More...
 
const pointcentreOfRotation () const
 Return the current centre of rotation. More...
 
const pointinitialCentreOfMass () const
 Return the initial centre of mass. More...
 
point centreOfMass () const
 Return the current centre of mass. More...
 
const tensororientation () const
 Return the orientation tensor, Q. More...
 
vector omega () const
 Return the angular velocity in the global frame. More...
 
const vectorv () const
 Return the current velocity. More...
 
vector momentArm () const
 
bool report () const
 Return the report Switch. More...
 
void newTime ()
 Store the motion state at the beginning of the time-step. More...
 
pointcentreOfRotation ()
 Return non-const access to the centre of rotation. More...
 
void addRestraints (const dictionary &dict)
 Add restraints to the motion, public to allow external. More...
 
void addConstraints (const dictionary &dict)
 Add restraints to the motion, public to allow external. More...
 
void update (bool firstIter, const vector &fGlobal, const vector &tauGlobal, scalar deltaT, scalar deltaT0)
 Symplectic integration of velocities, orientation and position. More...
 
void status () const
 Report the status of the motion. More...
 
point velocity (const point &pt) const
 Return the velocity of a position. More...
 
point transform (const point &initialPoints) const
 Transform the given initial state point by the current motion. More...
 
tmp< pointFieldtransform (const pointField &initialPoints) const
 Transform the given initial state pointField by the current. More...
 
tmp< pointFieldtransform (const pointField &initialPoints, const scalarField &scale) const
 Transform the given initial state pointField by the current. More...
 
void write (Ostream &) const
 Write. More...
 
bool read (const dictionary &dict)
 Read coefficients dictionary and update system parameters,. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from points0MotionSolver
static pointVectorField readPoints0 (const polyMesh &mesh)
 
- Static Public Member Functions inherited from motionSolver
static autoPtr< motionSolverNew (const word &name, const polyMesh &, const dictionary &)
 Select constructed from polyMesh and dictionary. More...
 
- Protected Attributes inherited from displacementMotionSolver
pointVectorField pointDisplacement_
 Point motion field. More...
 
- Protected Attributes inherited from points0MotionSolver
pointVectorField points0_
 Starting points. More...
 

Detailed Description

6-DoF solid-body mesh motion solver for an fvMesh.

Applies SLERP interpolation of movement as function of distance to the object surface.

Source files

Definition at line 52 of file sixDoFRigidBodyMotionSolver.H.

Constructor & Destructor Documentation

◆ sixDoFRigidBodyMotionSolver() [1/2]

◆ sixDoFRigidBodyMotionSolver() [2/2]

Disallow default bitwise copy construction.

◆ ~sixDoFRigidBodyMotionSolver()

Destructor.

Definition at line 157 of file sixDoFRigidBodyMotionSolver.C.

Member Function Documentation

◆ TypeName()

TypeName ( "sixDoFRigidBodyMotion"  )

Runtime type information.

◆ motion()

const sixDoFRigidBodyMotion& motion ( ) const

Return the six DoF motion object.

◆ curPoints()

Foam::tmp< Foam::pointField > curPoints ( ) const
virtual

Return point location obtained from the current motion field.

Implements motionSolver.

Definition at line 164 of file sixDoFRigidBodyMotionSolver.C.

◆ solve()

◆ write()

bool write ( ) const
virtual

Write motion state information for restart.

Reimplemented from points0MotionSolver.

Definition at line 257 of file sixDoFRigidBodyMotionSolver.C.

References IOstream::ASCII, IOstream::currentVersion, dict, Foam::name(), IOobject::NO_READ, IOobject::NO_WRITE, and points0MotionSolver::write().

Here is the call graph for this function:

◆ operator=()

void operator= ( const sixDoFRigidBodyMotionSolver )
delete

Disallow default bitwise assignment.


The documentation for this class was generated from the following files: