sixDoFRigidBodyMotion Class Reference

Single rigid body mesh motion in which movement of the bodies is generated by Foam::sixDoFRigidBodyMotion. More...

Inheritance diagram for sixDoFRigidBodyMotion:
Collaboration diagram for sixDoFRigidBodyMotion:

Public Member Functions

 TypeName ("sixDoFRigidBodyMotion")
 Runtime type information. More...
 
 sixDoFRigidBodyMotion (const polyMesh &, const dictionary &dict)
 Construct from polyMesh and dictionary. More...
 
 sixDoFRigidBodyMotion (const sixDoFRigidBodyMotion &)=delete
 Disallow default bitwise copy construction. More...
 
 ~sixDoFRigidBodyMotion ()
 Destructor. More...
 
virtual bool write () const
 Write motion state information for restart. More...
 
void operator= (const sixDoFRigidBodyMotion &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from multiRigidBody
 TypeName ("multiRigidBody")
 Runtime type information. More...
 
 multiRigidBody (const polyMesh &, const dictionary &dict)
 Construct from polyMesh and dictionary. More...
 
 multiRigidBody (const multiRigidBody &)=delete
 Disallow default bitwise copy construction. More...
 
 ~multiRigidBody ()
 Destructor. More...
 
virtual tmp< pointFieldnewPoints ()
 Return point location obtained from the current motion field. More...
 
virtual void topoChange (const polyTopoChangeMap &)
 Update local data for topology changes. More...
 
virtual void mapMesh (const polyMeshMap &)
 Update from another mesh using the given map. More...
 
void operator= (const multiRigidBody &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from displacementPoints0
 TypeName ("displacementPoints0")
 Runtime type information. More...
 
 displacementPoints0 (const polyMesh &, const dictionary &, const word &type)
 Construct from mesh and dictionary. More...
 
 displacementPoints0 (const displacementPoints0 &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~displacementPoints0 ()
 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 distribute (const polyDistributionMap &)
 Update corresponding to the given distribution map. More...
 
void operator= (const displacementPoints0 &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from pointMeshMover
 TypeName ("pointMeshMover")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, pointMeshMover, dictionary,(const polyMesh &mesh, const dictionary &dict),(mesh, dict))
 
 pointMeshMover (const polyMesh &mesh, const word &type)
 Construct from polyMesh and dictionary and type. More...
 
virtual autoPtr< pointMeshMoverclone () const
 Clone function. More...
 
virtual ~pointMeshMover ()
 Destructor. More...
 
const polyMeshpoly () const
 Return reference to mesh. More...
 
virtual void twoDCorrectPoints (pointField &) const
 Correct point field for reduced-dimensionality cases. More...
 
virtual bool solidBodyMotion () 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...
 
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...
 
septernion transform0 () const
 Return the transformation relative to the initial time. More...
 
point transform (const point &initialPoint) 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...
 
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 displacementPoints0
static pointVectorField readPoints0 (const polyMesh &mesh)
 
- Static Public Member Functions inherited from pointMeshMover
static autoPtr< pointMeshMoverNew (const polyMesh &, const dictionary &)
 Select constructed from polyMesh and dictionary. More...
 
- Protected Attributes inherited from multiRigidBody
PtrList< bodyMeshbodyMeshes_
 List of the bodyMeshes containing the patches and point motion. More...
 
- Protected Attributes inherited from displacementPoints0
pointVectorField points0_
 Starting points. More...
 

Detailed Description

Single rigid body mesh motion in which movement of the bodies is generated by Foam::sixDoFRigidBodyMotion.

Applies distance weighted SLERP interpolation between the septernion transformations of the body returned provided by the Foam::sixDoFRigidBodyMotion solution and the static exterior of the region.

The mesh patches for body must be specified and optionally pointZones that move with the body. The motion of the mesh around the body may be constrained by the optional innerDistance and outerDistance, the mesh within the innerDistance moves with the body without distortion and the mesh beyond the outerDistance does not move.

See also
Foam::sixDoFRigidBodyMotion Foam::pointMeshMovers::multiRigidBody
Source files

Definition at line 66 of file sixDoFRigidBodyMotion_pointMeshMover.H.

Constructor & Destructor Documentation

◆ sixDoFRigidBodyMotion() [1/2]

sixDoFRigidBodyMotion ( const polyMesh mesh,
const dictionary dict 
)

Construct from polyMesh and dictionary.

Definition at line 142 of file sixDoFRigidBodyMotion_pointMeshMover.C.

References dict.

◆ sixDoFRigidBodyMotion() [2/2]

Disallow default bitwise copy construction.

◆ ~sixDoFRigidBodyMotion()

~sixDoFRigidBodyMotion ( )
virtual

Destructor.

Reimplemented from sixDoFRigidBodyMotion.

Definition at line 189 of file sixDoFRigidBodyMotion_pointMeshMover.C.

Member Function Documentation

◆ TypeName()

TypeName ( "sixDoFRigidBodyMotion"  )

Runtime type information.

◆ write()

bool write ( ) const
virtual

Write motion state information for restart.

Reimplemented from displacementPoints0.

Definition at line 195 of file sixDoFRigidBodyMotion_pointMeshMover.C.

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

Here is the call graph for this function:

◆ operator=()

void operator= ( const sixDoFRigidBodyMotion )
delete

Disallow default bitwise assignment.


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